Supported agent
Your Codex usage, as a file in your repo.
tokenchit reads the Codex logs already on your machine and renders one embeddable card straight into your repository. The card is a file you commit, not a URL you depend on — nothing to rate-limit, nothing to go down.
$ npx -y @tokenchit/cli@latest generate --no-publishFree and MIT · Node.js 22+ · Local stats need no account.
This command sends nothing: --no-publish returns before any networking code loads. Bare generate ends by publishing — at a terminal it asks first, in a script or CI it does not. Publishing sends daily totals by agent and model, plus your handle, and never prompts, replies or file paths.
What it reads
Codex writes one rollout file per session, under a dated directory tree. Token counts come from the same usage records the API returned.
~/.codex/sessions/**/rollout-*.jsonlNothing else is read. tokenchit sync and tokenchit recap send nothing — they make no network request at all, and five tests in the repo fail on every push if that stops being true. tokenchit publish holds the only code that uploads, and tokenchit generate ends by calling it: at a terminal it asks first, in a script or CI it does not. That is what --no-publish is for.
What it cannot tell you
There is no cumulative cache to fall back on
Unlike Claude Code, Codex keeps no running total outside the transcripts. That makes the figure straightforward while the files are there, and unrecoverable once they are gone: a number derived from logs cannot include logs that no longer exist. tokenchit banks each day it sees in a local ledger so a later rotation does not erase history it has already read.
Equivalent cost is not what you paid either. It is what these tokens would cost at list API rates, and most agent usage runs under a subscription where no per-token charge ever happens.
On the board, by codex
Developers who chose to publish, ranked by codex tokens over the last year. Figures are self-reported and bounded for plausibility, not audited.
| Rank | Developer | codex tokens | Equiv. cost |
|---|---|---|---|
| 1 | @Rupam-M | 139B | $64,573 |
| 2 | @VinayakRai5 | 51.2B | $58,296 |
| 3 | @veerLakshya | 20.5B | $4,849 |
| 4 | @bucharitesh | 19.6B | $5,709 |
| 5 | @Parth080 | 16.4B | $11,848 |
| 6 | @manishreddy123 | 9.84B | $4,541 |
| 7 | @iyashjayesh | 7.09B | $10,671 |
| 8 | @NVJKKartik | 2.26B | $505 |
| 9 | @crazyparadox | 1.61B | $365 |
| 10 | @MridulaSivanandan | 1.39B | $687 |
The other agents
One command covers all of them at once, and the card shows the mix.
- Claude Code
~/.claude*/projects/**/*.jsonl - OpenCode
~/.local/share/opencode/opencode.db - Gemini CLI
~/.gemini/tmp/*/chats/*.jsonl
Detected and deliberately unsupported: Copilot CLI records only a live context gauge, so there is no per-call token count to read.
Read your own numbers
One command. It finds your agents, shows your stats and writes the card. The command shown cannot publish. Bare generate can, and in a script or CI it does so without asking, so keep the flag for a guaranteed local run.
$ npx -y @tokenchit/cli@latest generate --no-publishOr tokenchit sync on its own to see the figures without writing anything. Source at github.com/iyashjayesh/tokenchit.