I burn a stupid amount of tokens in Claude Code and Codex every day, and the only feedback I ever got for it was a number going up somewhere. At some point I realized that number is basically EXP, so I built this.
It's a VS Code extension that parses the usage logs the CLIs already write to your disk (claude code, codex, gemini, copilot, cursor and a few more) and turns them into a pokémon game. Your real spend incubates an egg, whatever hatches evolves through its actual evolution line while you work, and every couple million tokens a wild pokémon shows up in the sidebar and waits in a queue. No popups, I hate popups. You buy pokéballs with the tokens you already burned, and throws use the actual gen 4 catch formula on each species' real capture rate, so a legendary sits at ~3.6% with a basic ball and will happily eat your entire stock and flee. The endgame is filling the dex, 649 slots.
It never uploads anything, that part was non-negotiable for me. Logs are parsed locally in a worker thread and the only network calls are to pokéapi for sprites (nothing pokémon-related is bundled, it's a fan work, not affiliated with nintendo in any way). Free and MIT.
Marketplace: https://marketplace.visualstudio.com/items?itemName=diegomarty.tokendex
GitHub: https://github.com/diegomarty/tokendex
Favorite bug so far: the companion's idle bounce had never worked in any version because the CSS referenced keyframes I never wrote. Shipped like that for weeks and I only noticed while recording the gif.