Dinoradar  /  About

About Dinoradar

Dinoradar is built by one person. Here's who, why it exists, and what it does with your data.

Who builds this

My name is Dat Nguyen — dinoboy in most places online. I'm a solo developer, and Dinoradar is mine: I write the Rust and the TypeScript, the guides on this blog, and the replies to your emails. There is no team behind this, which I mention because it's the honest framing for both the good parts and the rough edges.

Why it exists

I use Claude Code most of the working day, and two things kept costing me.

The first is small and constant: I'd send Claude off on a task, switch to something else, and come back to find it had been sitting on a permission prompt the whole time. The built-in notification is easy to miss once you have a few terminals open. Minutes at a time, several times a day.

The second is the one that actually made me build something. On API billing, Claude Code has no per-session spending cap. If a session gets stuck in a loop — retrying the same failing edit, re-reading the same files — it keeps going, and it keeps charging, for as long as nobody is looking. I found that out the way you'd expect to.

Everything in Dinoradar comes from one of those two problems: an overlay that goes red the moment a session is genuinely blocked on you, guards that watch for a runaway loop or a spend threshold, and — since it's already parsing the transcripts — a clear read on where the money goes.

How it handles your data

Dinoradar reads the JSONL session transcripts that Claude Code already writes to ~/.claude/projects/, read-only. Everything — cost, tokens, loop detection, the secret scan — is computed on your Mac.

Your prompts, your code, and your usage are never uploaded. The only things that leave your machine are anonymous product analytics (which screen was opened — no content) and a license activation call if you buy Pro. You're welcome to verify that with Little Snitch or lsof; I'd rather you checked than took my word for it.

The secret scanner never sends a matched value anywhere — it redacts on the way into the UI.

What I write about

The guides on this blog come out of running into these problems myself: what Claude Code actually costs, how prompt caching quietly saves you money, how to cut your bill without cutting output quality, and how to write a CLAUDE.md that sticks.

Where another tool is the better answer, I say so — there's an honest comparison with ccusage, which is free, open source, and genuinely good at what it does.

Get in touch

Email me at dinoboy.dev@gmail.com — bug reports, refund requests, and "this part of your site is wrong" all reach the same inbox, and I read them.

Elsewhere: GitHub and X.

Dinoradar is not affiliated with Anthropic. Claude and Claude Code are trademarks of Anthropic.