Live in the tray
A menu-bar icon rotates between percentage and cost. Thirty-second refresh, no cold-start flash — it behaves the way a tray app is meant to.
A quiet tray app for Claude Code. It reads the files the CLI already writes — and shows you, right on the menu bar, how much of the current window you've spent.
Three ideas shape it: live on the tray, keep the UI calm, and carry a second CLI if you want it to.
A menu-bar icon rotates between percentage and cost. Thirty-second refresh, no cold-start flash — it behaves the way a tray app is meant to.
Two thousand JSONL rows shouldn't freeze anything. ccusage runs in a worker thread with parallel I/O and a local LiteLLM cache — cold start is four times faster than upstream.
Opt in and the same tray watches Codex CLI too — 5-hour and weekly rate windows, right alongside Claude. One icon, two budgets.
Four ink strokes and one terracotta slash — the gesture you scratch on a napkin when you're counting. Tokens are units, and units want to be tallied.
Parchment and ivory instead of cold grey. Terracotta earns its place on one button per screen. Ring shadows stand in for drop shadows — a warm hairline, not a bruise.
Dark mode is one stop warmer than usual — a bound volume under a reading lamp. Theme transitions without the midnight-flash most Electron apps ship with.
Mini HUD — 220×64 always-on-top. Optional.
Binaries are unsigned — each card says what first run asks of you. After that, updates happen quietly in the background.
NSIS installer or portable .exe — both x64. If SmartScreen blocks the first run, click More info → Run anyway.
Two dmgs — Apple Silicon and Intel. If Gatekeeper flags the first run, run xattr -cr /Applications/TokenWatch.app once, or click Open Anyway in System Settings.
Self-contained AppImage — x64. Make it executable with chmod +x TokenWatch.AppImage, then double-click to launch.