Measure your AI coding operator token efficiency (Yield/Υ) inline in VS Code.
SigRank reads token counts only (never prompt content) from AI coding tools used inside VS Code, computes your token cascade efficiency, and displays it in the status bar + a dashboard panel. You can submit your session to the SigRank leaderboard with one click.
The metric: Yield (Υ) = (cache_read × output) / input² — rewards cache reuse + output per unit of input, not gross consumption. Two operators can spend the same and get wildly different leverage.
| Tool | Token counts read from | Status |
|---|---|---|
| Claude Code | ~/.claude/projects/*/*.jsonl |
✅ Supported |
| Roo Code | ~/.roo/usage-tracking.json |
✅ Supported |
| Cline | ~/.cline/data/tasks/ |
⏳ Blocked (cache tokens not persisted to disk) |
| Continue | ~/.continue/ |
⏳ Blocked (VS Code extension doesn't write prompt.log) |
| GitHub Copilot Chat | workspace storage debug logs | ⏳ Investigation pending (cache_create missing) |
This extension reads token COUNTS only — never prompt content, code, or transcripts.
- Token counts (input, output, cache_read, cache_create) are read from local log files.
- No prompt text, code, or conversation content is read, stored, or transmitted.
- Submission to the leaderboard is opt-in (manual button click) unless
sigrank.autoSubmitis explicitly enabled. - ed25519 device keys are stored locally at
~/.sigrank/keypair.json. The private key never leaves your machine. - The only data sent to the server is: token counts, your codename, your device ID, and the ed25519 signature.
- Install the extension from the VS Code Marketplace.
- Enroll your device: run
SigRank: Enroll Devicefrom the command palette. You'll need a sign-in code from signalaf.com. - Start coding with Claude Code (in the integrated terminal) or Roo Code. The status bar will show your live Υ once token data is available.
- Submit to the leaderboard: run
SigRank: Submit Session to Leaderboardor click the submit button in the dashboard.
| Command | Description |
|---|---|
SigRank: Show Dashboard |
Open the dashboard panel with full metrics + submit button |
SigRank: Submit Session to Leaderboard |
Submit your current token counts to the SigRank board |
SigRank: Enroll Device |
Link this device to your operator account (one-time) |
| Setting | Default | Description |
|---|---|---|
sigrank.autoSubmit |
false |
Automatically submit token counts at session end (off by default — privacy-first) |
sigrank.tools.claudeCode |
true |
Read Claude Code session logs |
sigrank.tools.rooCode |
true |
Read Roo Code usage tracking |
sigrank.statusBar.showLeverage |
true |
Show leverage alongside Υ in the status bar |
sigrank.apiBaseUrl |
https://signalaf.com |
SigRank API base URL (change for self-hosted instances) |
VS Code Extension
├─ reads local AI-tool logs (Claude Code JSONL, Roo Code JSON) → token counts only
├─ computes Υ = (cache_read × output) / input² → same cascade engine as the web app
├─ status bar shows live score → zero context-switch
├─ webview dashboard shows full breakdown + leaderboard link
└─ submit → ed25519-signed POST to /api/v1/snapshots → same endpoint as the Python agent
The extension is a thin UI + log-reading shell over the existing SigRank architecture. The cascade engine, the ingest endpoint, and the leaderboard all already exist — the extension just reads local logs + renders the score inline + submits.
- ccusage — the token-usage reader that SigRank builds on (the extension reads the same Claude Code logs ccusage reads)
- @noble/ed25519 — pure-JS ed25519 signing (no native modules)
- Leaderboard: signalaf.com
- Source: github.com/SunrisesIllNeverSee/sigrank-vscode
- MCP server:
npm install -g sigrank(bundles ccusage + tokscale + tokendash) - Python agent:
pip install sigrank-agent
See LICENSE.