The worst moment in a coding session is hitting a rate limit mid-task.
You're deep in a refactor. Claude Code stops. Or Codex resets. And you spend the next 20 minutes switching tools, losing context, or just waiting. The "Codex Resets" thread on Hacker News got 270 points and 175 comments. The pain is widespread.
The problem isn't the limit β it's that you don't know how close you are until you hit it.
I built quota to fix that.
$ quota
quota β your ai usage, at a glance
Claude Code ββββββββββββββ 3h 12m of 5h reset in 2h 48m
Codex ββββββββββββββ 3 of 40 reqs reset in 4h 12m
Cursor ββββββββββββββ not connected
One command. Shows remaining usage for every AI coding tool you have connected, along with reset times.
You can also run it in watch mode:
quota watch 30 # re-check every 30 seconds
Or pipe it into scripts:
quota --json | jq '.providers.claude_code.percent_remaining'
quota
reads provider state locally β no API calls, no accounts, no telemetry. It reads from ~/.claude
and ~/.codex
directly, the same files the tools themselves write. Everything stays on your machine.
npm install -g @ozperium/quota
quota
Claude Code and Codex don't surface remaining quota prominently. You either have to open a browser dashboard or wait for the error. Neither is useful when you're mid-task in a terminal.
quota
lives where you work β in the terminal, right next to your code.
GitHub: https://github.com/Ozperium/quota
npm: https://www.npmjs.com/package/@ozperium/quota
Also in the stack: AgentSpec for testing AI agent behavior, and AICostTracker for tracking what you're spending on AI APIs.