Where Claude Code, Codex and Antigravity Hide Your Remaining Usage A developer published `baton-agents` to npm on September 14, four days after Sophia Myang's September 10 request for a cross-platform agent orchestration harness drew 1,024 bookmarks and 340 replies. The tool addresses the hard part of agent handoff — detecting usage limits before a session is lost — by reading Claude Code's 5-hour and 7-day utilization from the `api.anthropic.com/api/oauth/usage` endpoint (since Claude Code 2.1.268 ignores a custom `statusLine` command passed via `--settings`) and by tailing Codex's JSONL rollout file for `event_msg.token_count.rate_limits`, observed live on codex-cli 0.153.4. The author notes a third agent provides no usage signal at all, and warns that bearer tokens from `~/.claude/.credentials.json` should never be logged. On September 10 someone posted this: Someone please tell me this exists: a meta-harness + kanban board to orchestrate my agents across platforms Claude, Codex, Grok, Muse, etc. tracking progress and handing off projects to each other cleanly when one hits its limits. What's the best way to do this? That's Sophia Myang. It picked up 1,024 bookmarks and 340 replies. Bookmarks are the interesting number there. A like means someone agreed. A bookmark means someone wants to come back and use the thing. She wasn't asking me. She was asking the internet, and a thousand people bookmarked the question instead of answering it. So I built it. Four days later baton-agents is on npm. This post isn't really about my thing though. It's about the part of that request nobody mentions, which is that "hands off cleanly when one hits its limits" requires you to know a limit is coming, and every agent tells you in a completely different way. One of them doesn't tell you at all. The part that sounds easy and isn't The handoff itself is a solved problem. You write the state to a file and the next agent reads it. Fine. The trigger is the hard part. If you wait until the agent says "you've hit your limit" you've already lost the session, and on Claude Code you've lost it mid-tool-call. You want to move at 90%, not at 100%. Which means you need a number, continuously, from a tool that wasn't built to give you one. Three agents, three taps, and they don't resemble each other even slightly. Claude Code: the number is there, just not where the docs point you Claude Code has a status line that shows your 5-hour and 7-day usage. The obvious move is to pass your own statusLine command through --settings and read what it prints. That doesn't work. On 2.1.268 Claude Code renders its own built-in status line and ignores a custom statusLine command passed via --settings or a project settings file. I verified it with a plain echo at both levels. Hooks from that exact same settings file do run, which is what makes it confusing. You get half the file honored and half ignored, with no error. So you skip the status line and ask the source directly: GET https://api.anthropic.com/api/oauth/usage Authorization: Bearer