Quick reference
Compatibility, timings, file paths and network calls at a glance.
System compatibility
macOS 14 (Sonoma) or later, Apple Silicon or Intel. No other dependency.
Supported plans
| Claude | OpenAI Codex | |
|---|---|---|
| Plans | Pro, Max or Team. Free exposes no usage data. | A ChatGPT account. The plan badge recognizes Free, Plus, Pro, Pro Lite, Team, Business, Enterprise and Edu. |
| Sign-in | Claude Code (claude, then /login) | Codex CLI with ChatGPT (codex login). API-key accounts have no usage windows. |
| Windows | 5h session and weekly, plus Opus, Fable, Cowork and Sonnet when your plan reports them, and Extra Credits when enabled | The ones your plan declares, labelled by duration (5h, 7d or another length) |
What each provider supports: Claude and Codex, or Settings -> Providers in the app.
Frequencies and timings
| Value | Details | |
|---|---|---|
| Usage polling | 5 min | 3 to 15 min in Settings -> General -> Refresh. After a rate limit: 30 min, 1 h, 2 h, 4 h, then 6 h. |
| Menu bar countdown | 1 min | Computed locally, no API call |
| Service Status | 5 min | Claude only. 1 to 30 min in Settings -> General -> Service Status, faster during an outage. |
| Agent Watchers scan | 2 s | Claude only. 2, 5 or 10 s. |
| Claude 5h session | 5 h | Sliding, from the first session |
| Claude weekly | 7 days | Sliding, aligned to your account |
Agent Watchers (Claude only)
- Launchers: native installer, npm (NVM, fnm, volta), Homebrew, Claude Desktop's embedded CLI, IDE extension
- Terminals: Terminal.app, iTerm2, Kitty, WezTerm, Warp, Ghostty, Alacritty
- Editors: VS Code, Cursor and Windsurf (integrated terminal or Claude Code extension), Zed, Sublime Text, JetBrains IDEs
- Multiplexers: tmux and screen, in any terminal
- Click to focus: the exact tab or pane in Terminal, iTerm2, Kitty, WezTerm and tmux (Kitty, WezTerm and tmux need the snippet from Settings -> Watchers -> Terminal setup). Elsewhere it brings the app forward.
- Not detected: the old 2.0.x Claude Code extension. Update it.
Important paths
- Keychain item
Claude Code-credentials: Claude Code's token (see Keychain access) ~/.claude/.credentials.json: Claude Code credentials, fallback for older installs~/.claude/projects/**/*.jsonl: Claude Code sessions (History, Agent Watchers)~/.codex/auth.json(or$CODEX_HOME/auth.json): Codex CLI login, read only~/.codex/sessions/and~/.codex/archived_sessions/: Codex sessions (History)~/Library/Application Support/com.tokeneater.shared/: data shared with the widgets, History caches, watcher scripts, downloaded updates~/Library/Preferences/com.tokeneater.app.plist: app preferences
Network calls
GET api.anthropic.com/api/oauth/usageand/api/oauth/profile: Claude usage and plan (Claude Code token)GET chatgpt.com/backend-api/wham/usage: Codex usage and credits (Codex CLI token)GET status.claude.com/api/v2/summary.json: Claude service status, no tokenraw.githubusercontent.com/AThevon/TokenEater/main/docs/appcast.xmlandapi.github.com/repos/AThevon/TokenEater/releases/tags/<version>: update check and release notes, no tokengithub.com/AThevon/TokenEater/releases/download/<version>/TokenEater.dmg: the update, only when you click Download, no token
Each token goes only to its own provider, every call is read-only, and a provider you switch off is never polled.