Problem
I run three AI coding subscriptions with three separate rolling usage windows, and no vendor pushes a usage signal. Checking headroom meant opening three dashboards or running a CLI by hand — usually right after a long build had already eaten a weekly limit. A local HTML dashboard on a timer answered the question, but only as often as the timer fired, and it was one more surface to keep alive.
Approach
A menu-bar app that reads a local quota CLI and refreshes when there is a reason to. No vendor offers a push channel for subscription quota, so “live” means polling at the right moments: file-level watchers on the local agent session directories treat agent activity as the trigger, refreshing on the leading edge of a burst and once more after it settles. The watchers see path metadata only — no session file is ever opened or read.
Two rules kept it honest. A coalescing floor, so a two-hundred-write burst produces one refresh instead of two hundred. And no invented numbers: vendor figures lag local writes, so a single delayed trailing read closes the gap at fifteen seconds — three times the longest settle time I measured — and a pool whose vendor exposes no session window contributes no session figure at all, rather than a zero that would read as full headroom.
Stack
Swift and SwiftUI on SwiftPM, MenuBarExtra for the bar item, FSEvents for the activity watchers, swift-testing for the suite. It compiles with the Command Line Tools alone — no Xcode install — so the build reproduces from a shell.
What shipped
Running in my own menu bar. The bar carries one number plus a gauge glyph rendering that same figure; the panel holds per-pool windows, reset times, staleness, and sign-in rows for pools that aren’t authenticated. 80 unit tests cover the refresh state machine, the coalescing guarantee (verified with synthetic two-hundred-event bursts), and the rendering rules.
It was built by an agent crew rather than by hand: a Claude lead planning and orchestrating, a Codex executor writing the diffs, a Grok reviewer checking them. Every change had to pass review by a model from a different vendor than the one that wrote it — cross-vendor review caught real defects that a same-model pass waved through.
What’s next
Auto-start as a login item, a notification at a headroom threshold, and non-AI pools once the shape generalizes.