Each open session self-reports every ~10 seconds. Ticking figures are extrapolated from that session's measured pace; they re-anchor to truth on each refresh.
seven_day, seven_day_opus, seven_day_sonnet, seven_day_cowork — all are null here; the single surviving entry is weekly_scoped named for Fable. There is nowhere else for a week's spend to land, so an Opus implementer's tokens land there too. Measured: over a 1h45m stretch in which Fable emitted zero tokens, the tank still climbed 4 points at 2.07%/h — its normal rate — while 5.8M cost-weighted tokens of other models ran beneath it. So a foreman that spends a long-horizon task idle, waiting on implementers, still empties this tank at close to full speed: the 39 subagents are the spend, and the card names their share of the drain for exactly that reason. Read it as "how long this operation can keep running", never as "how hard the foreman is thinking".… marks extrapolation).max(now + 1h, …), and the step ETA read a constant 59 minutes for as long as it was wrong.HANDOFF-META: model= is the attribution record.docs/evidence/ states its own test and assert totals, so that folder was already a time series nobody had to keep; docs/DECISIONS.md is parsed the same way for the register count and the three newest rulings.docs/GOALS.md names each rung's gate legs, every capture under docs/evidence/ records which legs came back green, and HANDOFF-META names the open rung. Nothing here costs a token to keep current, and the squares only move when a gate runs./rc in a session, scan the QR with the Claude app: live streaming + steering, push notifications when a session needs input or finishes a long turn (both toggles enabled).npm i -g happy, then happy claude: full E2E-encrypted mirroring on iOS/Android. Third-party relay — a deliberate trust decision.Stop/PermissionRequest hooks; claude-ntfy-hook supports Windows.5h + weekly bars embedded in the taskbar with live countdowns. Rust, 386★. winget install CodeZeno.ClaudeCodeUsageMonitor
Tray app, portable EXE, zero config, 238★. Warns when usage outpaces elapsed time; threshold alerts.
Always-on-top floating card, shrinks to a 156×44 px pill; burn-rate pace marker.
Lowest footprint if Rainmeter already runs; 5h + weekly + per-model bars.
~/.claude/.credentials.json to query the official usage API — installing one is a trust decision to take knowingly.npx -y ccstatusline@latest. Would replace the custom line; the custom line's runs-out ETA is what it lacks.uv tool install claude-monitor.claude agents — built-in fleet view of background sessions (working / needs input / done / failed).A threshold alert at ~85–90% of the 5h block (widget alert, or a scheduled script pushing ntfy) turns "hit the cap mid-op" into "told ten minutes ahead" — feeds the two-account switch runbook.
End a long-op prompt with "push a notification when the gate verdict lands or you go BLOCKED" — sessions carry a push tool; zero infrastructure.
Ask any working session to run /watchtower at phase boundaries and this page becomes the op's live mission board — same URL all week.
The Build tab's rung panel reads it straight off the repo — GOALS names each rung's gate legs, docs/evidence/ says which are green, HANDOFF-META says which rung is open. Gates advance it, so it cannot drift optimistic. A foreman adds judgment with watchtower-forecast.mjs; the page keeps it below the rule and scores it later.
Gates stream -CaptureTo logs; a monitor tailing for the final verdict line tells the session — and the phone — the moment a soak settles.
SessionStart/SubagentStop/Stop hooks appending one JSON line each gives a machine-readable fleet feed — food for widgets or a morning digest.