Local dashboard for tracking Claude Code token usage and costs
Project description
Symbolon
Know what Claude Code is costing you. A local dashboard that turns your session history into clear answers — what you spent today, where the tokens went, and where you can save.
Everything runs on your computer. Nothing leaves your machine — no telemetry, no login, no API calls for your data.
What you'll see
- What Claude Code cost you today, this week, this month — at a glance.
- Which prompts were expensive, and why (usually: a tool that returned a lot of data).
- How your usage compares across projects you've worked on.
- Which patterns are wasting tokens — the same file read twenty times, oversized tool results.
- If you're on Pro or Max: what your usage would have cost on pay-as-you-go, so you can tell whether the subscription is paying off.
Install and run
We use uv — a small modern tool that handles Python, virtual environments, and packaging in one step, with the same UX on macOS, Linux, and Windows. Two of the three options below need it; one doesn't.
Install uv — optional, but recommended
If you don't have uv yet, pick the one for your system.
On Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
On macOS:
brew install uv
On Windows:
winget install astral-sh.uv
See astral.sh/uv for other options.
Try it (no install)
uvx --from git+https://github.com/ChristianLemer/symbolon symbolon open
uvx fetches, runs, and discards in one step — nothing left behind on your machine. Good for trying it once before deciding.
Install it
uv tool install git+https://github.com/ChristianLemer/symbolon
symbolon open
uv tool puts symbolon on your PATH as a global command — run it from anywhere, upgrade later with uv tool upgrade symbolon.
From source (no uv needed)
If you already have Python 3.11+ and would rather not add another tool:
git clone https://github.com/ChristianLemer/symbolon.git
cd symbolon
python3 cli.py open
On Windows, use
py -3in place ofpython3.
See Install without uv for trade-offs and how to translate the rest of the docs' commands.
Once it runs:
- Your browser opens to the dashboard.
- The Today tab shows what you've spent so far.
- Use the range bar at the top to switch to Yesterday, the last 7 days, etc.
- Stop the dashboard with the ⏻ button in the top bar — or just close the browser tab. It shuts itself down 30 seconds later.
Privacy
Your usage data stays on your machine. No telemetry, no analytics, no remote calls for anything you see in the dashboard. The browser fetches everything from 127.0.0.1, including charts and fonts.
The one exception: on startup, if ~/.claude/symbolon.db is older than a week, Symbolon fetches the latest model pricing from LiteLLM's public catalog (a JSON file on GitHub). This keeps Opus/Sonnet/Haiku rates accurate as Anthropic ships new models. No usage data is sent. Pass --no-auto-sync (or stay offline) to skip this fetch entirely; Symbolon falls back to the rates bundled with your install.
Going further
| Topic | What's there |
|---|---|
| Getting started | A walkthrough of each tab — what to look at first, what each number means |
| Raycast integration | A hotkey that opens the dashboard, daemon and all |
| nushell integration | Query your usage from the shell |
| CLI reference | Every command and flag |
| Configuration | Environment variables, pricing tweaks |
| Troubleshooting | When something doesn't work |
| Concepts | Tokens, caching, accuracy — the things you'll wonder about eventually |
| Known limitations | Where the data is partial, and why |
| Lineage | Where this fork comes from, and what's been added |
Contributing
See CONTRIBUTING.md. Short version: fork, run the tests before opening a PR.
License
MIT. Built on top of nateherkai/token-dashboard — see lineage for the full story.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file symbolon-0.1.0.tar.gz.
File metadata
- Download URL: symbolon-0.1.0.tar.gz
- Upload date:
- Size: 2.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08a28b1ecadb99f6bfc5aedf465cfe53e7555df3fbd0eb891dcd01c7e61583b3
|
|
| MD5 |
8a5df21ac4d5ce4aba163371189e7f20
|
|
| BLAKE2b-256 |
5565ac813c3311ed9be8115ac12016855bd7fded2a323f321fa8b8c45538eee4
|
File details
Details for the file symbolon-0.1.0-py3-none-any.whl.
File metadata
- Download URL: symbolon-0.1.0-py3-none-any.whl
- Upload date:
- Size: 390.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dd1f5ff9b59cc13daffbab7d37a1e40fa5a84f88286d89145e39ad5da5622764
|
|
| MD5 |
13840805a18b48d94853d70fede0cbae
|
|
| BLAKE2b-256 |
1a32c7fb9bc144a3d57d9cc7359d4374c3fb2facefba06cb5d615ea4f19e895d
|