LOCAL-FIRST · NO TELEMETRY · LIVE OR OFFLINE

See where your
AI coding tokens go.

tokens reads the Claude Code, Gemini CLI, and Codex logs already on your machine, then turns them into terminal summaries, a loopback-only live dashboard, or a self-contained offline snapshot.

Python 3.9+ · macOS, Linux, Windows · no account · no telemetry · no upload

synthetic://usage-overview
Total tokens
Calls
Models3
Cache share68%

Last 12 periods

Model mix

Atlas Code54%
Nova Reasoner31%
Swift Mini15%

This demo uses invented model names and synthetic values. It never reads a local report.

01 · Inspect
tokens doctor

Check log locations, timezone, output, and permissions without reading message content.

02 · Open
Four outputs

Use terminal, static HTML, a loopback-only live view, or a self-contained archive.

03 · Explore
Your data

Filter models, inspect periods, projects, sessions, and standardized token composition.

Built for a private local workflow

No hosted service

There is no account, backend, telemetry collector, CDN, or external runtime request. Live mode binds only to 127.0.0.1; offline exports remain one HTML file.

Useful across tools

One interface normalizes the local formats exposed by Claude Code, Gemini CLI, and Codex while preserving source-specific totals.

Safe defaults, explicit limits

The default source is Claude, output goes to ./out, cache lives in the user cache directory, and sharing risks are documented rather than hidden.

Deep when you need it

Start with trends and model mix, then open Data Trail, project and session views, context reuse, rhythm, achievements, or Token Almanac.

Local does not mean anonymousA generated dashboard can contain paths, session identifiers, exact dates, models, and behavior patterns. Use --anonymize, restrict the date range, and inspect any file before sharing it.