TOKSEAL

token + seal · v0.1

SEAL YOUR
AI CODING
USAGE.

tokseal reads your local Claude Code, Codex, Gemini CLI, opencode, Copilot CLI and more, grades how hard you lean on AI (S → C), and mints a card for your GitHub profile. Parsing happens on your machine. Nothing is uploaded unless you opt in.

1 · insert coin (local only)
$ npx tokseal
2 · badge + hi-scores, one step (totals only)
$ npx tokseal login
GRADE: A-

STAGE 1

RUN IT. NO INSTALL.

~ zsh
$ ▌

Live SVG at /api/card?user=…&theme=pixel|dark|light. Real 5×7 bitmap glyphs, so it renders pixel-perfect in any README.

NEW · AI CONTRIBUTIONS

GREEN SQUARES, BUT FOR TOKENS.

Commits measured effort when humans typed every line. Now the honest signal is how much you build with AI. tokseal keeps a per-day token history on the server (aggregate counts only), so your record survives Claude Code's 30-day log cleanup, and a Claude Code hook re-submits after every session, so the README graph is minutes behind reality.

2025-11-09: 0 tokens 2025-11-10: 0 tokens 2025-11-11: 0 tokens 2025-11-12: 0 tokens 2025-11-13: 0 tokens 2025-11-14: 0 tokens 2025-11-15: 0 tokens 2025-11-16: 0 tokens 2025-11-17: 0 tokens 2025-11-18: 0 tokens 2025-11-19: 0 tokens 2025-11-20: 0 tokens 2025-11-21: 0 tokens 2025-11-22: 0 tokens 2025-11-23: 0 tokens 2025-11-24: 0 tokens 2025-11-25: 0 tokens 2025-11-26: 0 tokens 2025-11-27: 0 tokens 2025-11-28: 0 tokens 2025-11-29: 0 tokens 2025-11-30: 0 tokens 2025-12-01: 0 tokens 2025-12-02: 0 tokens 2025-12-03: 0 tokens 2025-12-04: 0 tokens 2025-12-05: 0 tokens 2025-12-06: 0 tokens 2025-12-07: 0 tokens 2025-12-08: 110.2K tokens 2025-12-09: 0 tokens 2025-12-10: 0 tokens 2025-12-11: 0 tokens 2025-12-12: 0 tokens 2025-12-13: 0 tokens 2025-12-14: 0 tokens 2025-12-15: 0 tokens 2025-12-16: 0 tokens 2025-12-17: 0 tokens 2025-12-18: 0 tokens 2025-12-19: 0 tokens 2025-12-20: 0 tokens 2025-12-21: 0 tokens 2025-12-22: 0 tokens 2025-12-23: 0 tokens 2025-12-24: 0 tokens 2025-12-25: 0 tokens 2025-12-26: 0 tokens 2025-12-27: 0 tokens 2025-12-28: 0 tokens 2025-12-29: 0 tokens 2025-12-30: 0 tokens 2025-12-31: 0 tokens 2026-01-01: 0 tokens 2026-01-02: 0 tokens 2026-01-03: 0 tokens 2026-01-04: 0 tokens 2026-01-05: 0 tokens 2026-01-06: 0 tokens 2026-01-07: 0 tokens 2026-01-08: 0 tokens 2026-01-09: 0 tokens 2026-01-10: 0 tokens 2026-01-11: 0 tokens 2026-01-12: 0 tokens 2026-01-13: 0 tokens 2026-01-14: 0 tokens 2026-01-15: 0 tokens 2026-01-16: 0 tokens 2026-01-17: 0 tokens 2026-01-18: 0 tokens 2026-01-19: 0 tokens 2026-01-20: 0 tokens 2026-01-21: 0 tokens 2026-01-22: 0 tokens 2026-01-23: 0 tokens 2026-01-24: 0 tokens 2026-01-25: 0 tokens 2026-01-26: 0 tokens 2026-01-27: 0 tokens 2026-01-28: 0 tokens 2026-01-29: 0 tokens 2026-01-30: 0 tokens 2026-01-31: 0 tokens 2026-02-01: 0 tokens 2026-02-02: 0 tokens 2026-02-03: 4.5M tokens 2026-02-04: 0 tokens 2026-02-05: 0 tokens 2026-02-06: 0 tokens 2026-02-07: 0 tokens 2026-02-08: 0 tokens 2026-02-09: 0 tokens 2026-02-10: 0 tokens 2026-02-11: 0 tokens 2026-02-12: 0 tokens 2026-02-13: 0 tokens 2026-02-14: 0 tokens 2026-02-15: 0 tokens 2026-02-16: 0 tokens 2026-02-17: 0 tokens 2026-02-18: 0 tokens 2026-02-19: 0 tokens 2026-02-20: 0 tokens 2026-02-21: 0 tokens 2026-02-22: 0 tokens 2026-02-23: 0 tokens 2026-02-24: 0 tokens 2026-02-25: 0 tokens 2026-02-26: 0 tokens 2026-02-27: 0 tokens 2026-02-28: 0 tokens 2026-03-01: 0 tokens 2026-03-02: 0 tokens 2026-03-03: 0 tokens 2026-03-04: 0 tokens 2026-03-05: 0 tokens 2026-03-06: 0 tokens 2026-03-07: 0 tokens 2026-03-08: 0 tokens 2026-03-09: 0 tokens 2026-03-10: 0 tokens 2026-03-11: 0 tokens 2026-03-12: 0 tokens 2026-03-13: 0 tokens 2026-03-14: 0 tokens 2026-03-15: 0 tokens 2026-03-16: 0 tokens 2026-03-17: 0 tokens 2026-03-18: 0 tokens 2026-03-19: 0 tokens 2026-03-20: 0 tokens 2026-03-21: 0 tokens 2026-03-22: 0 tokens 2026-03-23: 0 tokens 2026-03-24: 0 tokens 2026-03-25: 0 tokens 2026-03-26: 0 tokens 2026-03-27: 0 tokens 2026-03-28: 0 tokens 2026-03-29: 0 tokens 2026-03-30: 0 tokens 2026-03-31: 0 tokens 2026-04-01: 0 tokens 2026-04-02: 0 tokens 2026-04-03: 0 tokens 2026-04-04: 0 tokens 2026-04-05: 0 tokens 2026-04-06: 0 tokens 2026-04-07: 0 tokens 2026-04-08: 0 tokens 2026-04-09: 0 tokens 2026-04-10: 24.7K tokens 2026-04-11: 0 tokens 2026-04-12: 0 tokens 2026-04-13: 0 tokens 2026-04-14: 0 tokens 2026-04-15: 0 tokens 2026-04-16: 0 tokens 2026-04-17: 0 tokens 2026-04-18: 0 tokens 2026-04-19: 0 tokens 2026-04-20: 0 tokens 2026-04-21: 0 tokens 2026-04-22: 2.6M tokens 2026-04-23: 47.9M tokens 2026-04-24: 82.2M tokens 2026-04-25: 0 tokens 2026-04-26: 0 tokens 2026-04-27: 56.5M tokens 2026-04-28: 0 tokens 2026-04-29: 0 tokens 2026-04-30: 0 tokens 2026-05-01: 0 tokens 2026-05-02: 0 tokens 2026-05-03: 0 tokens 2026-05-04: 0 tokens 2026-05-05: 0 tokens 2026-05-06: 0 tokens 2026-05-07: 0 tokens 2026-05-08: 0 tokens 2026-05-09: 0 tokens 2026-05-10: 0 tokens 2026-05-11: 0 tokens 2026-05-12: 0 tokens 2026-05-13: 0 tokens 2026-05-14: 0 tokens 2026-05-15: 0 tokens 2026-05-16: 0 tokens 2026-05-17: 0 tokens 2026-05-18: 0 tokens 2026-05-19: 0 tokens 2026-05-20: 0 tokens 2026-05-21: 0 tokens 2026-05-22: 90.2K tokens 2026-05-23: 0 tokens 2026-05-24: 0 tokens 2026-05-25: 5.0M tokens 2026-05-26: 8.1M tokens 2026-05-27: 0 tokens 2026-05-28: 0 tokens 2026-05-29: 0 tokens 2026-05-30: 0 tokens 2026-05-31: 0 tokens 2026-06-01: 0 tokens 2026-06-02: 0 tokens 2026-06-03: 0 tokens 2026-06-04: 0 tokens 2026-06-05: 0 tokens 2026-06-06: 0 tokens 2026-06-07: 0 tokens 2026-06-08: 0 tokens 2026-06-09: 0 tokens 2026-06-10: 0 tokens 2026-06-11: 0 tokens 2026-06-12: 0 tokens 2026-06-13: 0 tokens 2026-06-14: 0 tokens 2026-06-15: 0 tokens 2026-06-16: 0 tokens 2026-06-17: 0 tokens 2026-06-18: 0 tokens 2026-06-19: 0 tokens 2026-06-20: 0 tokens 2026-06-21: 0 tokens 2026-06-22: 0 tokens 2026-06-23: 0 tokens 2026-06-24: 0 tokens 2026-06-25: 0 tokens 2026-06-26: 0 tokens 2026-06-27: 0 tokens 2026-06-28: 0 tokens 2026-06-29: 0 tokens 2026-06-30: 0 tokens 2026-07-01: 0 tokens 2026-07-02: 0 tokens 2026-07-03: 22.8M tokens 2026-07-04: 0 tokens 2026-07-05: 0 tokens 2026-07-06: 68.3M tokens 2026-07-07: 11.5M tokens 2026-07-08: 430.9K tokens 2026-07-09: 4.5M tokens 2026-07-10: 45.2M tokens 2026-07-11: 0 tokens 2026-07-12: 16.6M tokens 2026-07-13: 376.5M tokens 2026-07-14: 0 tokens 2026-07-15: 312.5M tokens 2026-07-16: 616.4M tokens 2026-07-17: 982.5M tokens 2026-07-18: 1.93B tokens 2026-07-19: 0 tokens 2026-07-20: 39.2M tokens 2026-07-21: 0 tokens 2026-07-22: 171.8M tokens 2026-07-23: 0 tokens 2026-07-24: 0 tokens 2026-07-25: 0 tokens 2026-07-26: 0 tokens 2026-07-27: 0 tokens 2026-07-28: 0 tokens 2026-07-29: 0 tokens 2026-07-30: 35.3M tokens 2026-07-31: 358.4M tokens 2026-08-01: 49.5M tokens 2026-08-02: 0 tokens 2026-08-03: 0 tokens 2026-08-04: 0 tokens 2026-08-05: 0 tokens 2026-08-06: 0 tokens 2026-08-07: 146.1M tokens 2026-08-08: 0 tokens 2026-08-09: 44.8M tokens 2026-08-10: 2.9M tokens 2026-08-11: 0 tokens 2026-08-12: 233.4K tokens 2026-08-13: 0 tokens 2026-08-14: 4.0M tokens 2026-08-15: 0 tokens 2026-08-16: 0 tokens 2026-08-17: 0 tokens 2026-08-18: 0 tokens 2026-08-19: 0 tokens 2026-08-20: 18.5M tokens 2026-08-21: 0 tokens 2026-08-22: 0 tokens 2026-08-23: 0 tokens 2026-08-24: 5.8M tokens 2026-08-25: 0 tokens 2026-08-26: 0 tokens 2026-08-27: 0 tokens 2026-08-28: 0 tokens 2026-08-29: 0 tokens 2026-08-30: 73.5M tokens 2026-08-31: 0 tokens 2026-09-01: 0 tokens 2026-09-02: 127.2M tokens 2026-09-03: 148.2M tokens 2026-09-04: 173.5M tokens 2026-09-05: 271.3M tokens 2026-09-06: 248.5M tokens 2026-09-07: 162.0M tokens 2026-09-08: 240.3M tokens 2026-09-09: 286.4M tokens 2026-09-10: 604.4M tokens 2026-09-11: 136.6M tokens 2026-09-12: 24.6M tokens 2026-09-13: 34.2M tokens 2026-09-14: 551.4M tokens 2026-09-15: 329.5M tokens 2026-09-16: 337.7M tokens 2026-09-17: 0 tokens 2026-09-18: 233.8M tokens 2026-09-19: 0 tokens 2026-09-20: 67.7M tokens 2026-09-21: 728.0M tokens 2026-09-22: 399.6M tokens 2026-09-23: 174.9M tokens 2026-09-24: 0 tokens 2026-09-25: 227.0M tokens 2026-09-26: 0 tokens 2026-09-27: 37.1M tokens 2026-09-28: 1.29B tokens 2026-09-29: 1.73B tokens 2026-09-30: 865.9M tokens 2026-10-01: 1.98B tokens 2026-10-02: 957.7M tokens 2026-10-03: 0 tokens 2026-10-04: 166.4M tokens 2026-10-05: 200.4M tokens 2026-10-06: 381.2M tokens 2026-10-07: 484.9M tokens 2026-10-08: 249.3M tokens 2026-10-09: 0 tokens 2026-10-10: 2.25B tokens 2026-10-11: 1.09B tokens 2026-10-12: 1.10B tokens 2026-10-13: 298.8M tokens 2026-10-14: 2.89B tokens 2026-10-15: 3.39B tokens 2026-10-16: 2.01B tokens 2026-10-17: 533.8M tokens 2026-10-18: 671.2M tokens 2026-10-19: 765.4M tokens 2026-10-20: 2.38B tokens 2026-10-21: 1.27B tokens 2026-10-22: 2.13B tokens 2026-10-23: 0 tokens 2026-10-24: 90.4M tokens 2026-10-25: 847.8M tokens 2026-10-26: 1.55B tokens 2026-10-27: 1.35B tokens 2026-10-28: 934.0M tokens 2026-10-29: 654.7M tokens 2026-10-30: 23.2M tokens 2026-10-31: 0 tokens 2026-11-01: 90.5M tokens 2026-11-02: 167.7M tokens 2026-11-03: 497.3M tokens 2026-11-04: 436.7M tokens 2026-11-05: 528.6M tokens 2026-11-06: 226.2M tokens

ALL-TIME

Every day you ever submitted, merged by date. Yours to put on a résumé.

30-DAY GRADE

The letter is computed over a rolling 30-day window so everyone is comparable.

STREAK

Consecutive active days. The graph shows it. The hi-score board ranks it.

HI-SCORES

TOP PLAYERS

1 sealed · see all →
RankPlayerGrade30d tokensAll-time
★01LenChoiA+top 1%28.4B56.2B · $32.2K

STAGE 2

HOW THE GRADE WORKS

01

PARSE

Reads token counts, model ids and timestamps from 12 agents’ local logs. Sources without usage blocks are estimated from text and marked ~. Never message content, never file paths.

02

GRADE

Four signals: tokens, active days, messages, sessions. Smoothed with an exponential CDF, the curve github-readme-stats uses for rank. No cliffs, no single-metric farming.

03

SEAL

Renders a static SVG card + contribution graph. tokseal login installs a Claude Code SessionEnd hook that re-submits aggregate totals after every session.

SA+AA-B+BB-C+C← top 1% … top 100%

STAGE 3

PRIVACY IS THE BOSS FIGHT

  • ✓Parsing runs entirely on your machine, in a few hundred lines of dependency-light TypeScript.
  • ✓Individual messages and code are never read for content.
  • ✓The leaderboard is opt-in: one command, tokseal login.
  • ✓The upload is exactly toSubmission(): totals, per-model totals, grade, date range. Read it in the repo.
  • ✗No message content. No file paths. No project names. No session ids.
  • !Self-reported, like commit graphs. The server reprices from tokens, rejects impossible days, and marks implausible jumps UNVERIFIED.
Opt in (totals only)
$ npx tokseal login
README badge
$ [![tokseal](https://tokseal.vercel.app/badge/YOU)](https://tokseal.vercel.app/u/YOU)
README card + graph
$ ![tokseal graph](https://tokseal.vercel.app/api/graph?user=YOU)
![tokseal](https://tokseal.vercel.app/api/card?user=YOU&theme=pixel)

PRESS START

One command. Your grade in two seconds. Your data stays home.

$ npx tokseal