Skip to main content

Your Claude Code dashboard — track burn, YOLO mode, score cards. 100% local.

Project description

MyBurn 🔥

Your Claude Code Dashboard — track your burn, tokens, YOLO mode, and flex your score cards. 100% local, zero telemetry, open source.

MyBurn dashboard

Status: Beta. Core features are stable; APIs and CLI may shift before 1.0. Backup your ~/.myburn/data/usage.db.

Install

macOS — via Homebrew:

brew install Gekko-dot-ETH/myburn/myburn

Linux, Windows, or macOS without Homebrew — via pipx (recommended) or pip:

pipx install myburn   # recommended (PEP 668-safe, isolated)
# or
pip install myburn    # works, but PEP 668 systems will warn

Don't have pipx?

  • macOS: brew install pipx && pipx ensurepath
  • Debian / Ubuntu: sudo apt install pipx && pipx ensurepath (Debian < 12 / Ubuntu < 23.04: python3 -m pip install --user pipx instead)
  • Fedora / Arch: sudo dnf install pipx / sudo pacman -S python-pipx
  • Windows: python -m pip install --user pipx then python -m pipx ensurepath

We recommend pipx because it handles its own venv bootstrap; plain pip install on Debian/Ubuntu often fails with ensurepip errors unless you install python3-venv first.

Then run it:

myburn

Your browser opens at localhost:7734/dashboard with all your stats. That's it.

Requirements

  • Python 3.9+ (3.10+ recommended)
  • Claude Code installed and used at least once. MyBurn reads your session logs from ~/.claude/projects/. If you've never opened a Claude Code session, the dashboard will show a welcome screen instead of charts.
  • A modern browser (Chrome, Firefox, Safari, Edge — current versions).

Supported platforms

OS Status
Linux ✅ Tested
macOS 🟡 Expected to work — not yet verified
Windows (WSL2) ✅ Works as Linux
Windows (native) 🟡 Experimental (tracked in issues)

Features

  • Burn Tracking — real-time cost tracking with daily, monthly, and per-project breakdowns
  • Score Cards — share your stats in style (Clean, Epic, Roast, Trading Card, Wrapped, more)
  • YOLO Stats — track how much of your burn happens with bypass permissions
  • Live VU Meter — 32-segment LED bar with 3-second polling
  • Hourly Patterns — see when you code most
  • Session Details — per-session cost, duration, and tool breakdown
  • Project Breakdown — which projects burn the most

How it works

  1. Installpipx install myburn, one command.
  2. Reads your local logs — parses ~/.claude/projects/ JSONL files into a local SQLite DB.
  3. Dashboard opens — your browser opens at localhost:7734 with all your stats.

Nothing leaves your machine — ever. No accounts, no telemetry, no cloud calls.

CLI options

myburn                    # Start dashboard, open browser
myburn --port 8080        # Custom port
myburn --no-browser       # Don't auto-open browser
myburn --host 0.0.0.0     # Bind to all interfaces (LAN/Tailscale access)
myburn --version          # Show version

myburn backup [--out PATH]   # Snapshot the DB
myburn restore <path>        # Restore from a snapshot

Data directory

By default, MyBurn stores its SQLite database in ~/.myburn/data/. Override with:

MYBURN_DATA_DIR=/path/to/data myburn

If your Claude Code logs live in a non-standard location:

MYBURN_CLAUDE_DIR=/path/to/.claude/projects myburn

Your data, your responsibility

Claude Code purges JSONL session logs from ~/.claude/projects/ after roughly 30 days. MyBurn's SQLite database is the only permanent copy of your usage history after that — once a JSONL file is gone, only your DB remembers what was in it.

This means: back it up.

MyBurn keeps an automatic rolling snapshot in ~/.myburn/backups/ (every 6h while the dashboard is running, last 7 always kept + everything from the last 30 days). You can also trigger one anytime:

myburn backup                    # writes ~/.myburn/backups/usage_YYYYMMDD_HHMMSS.db
myburn backup --out ~/dropbox/   # custom destination
myburn backup --compress         # gzip the result

To restore:

myburn restore ~/.myburn/backups/usage_20260501_120000.db

The current DB is auto-saved to usage.db.pre-restore-TIMESTAMP before being replaced, so a wrong restore is reversible.

Disable the periodic snapshot with MYBURN_BACKUP_DISABLE=1. Override location with MYBURN_BACKUP_DIR. Frequency with MYBURN_BACKUP_INTERVAL_HOURS.

Troubleshooting

The dashboard shows "Welcome — no Claude Code logs detected". You either don't have Claude Code installed, or it's been installed but never run. Open a Claude Code session and refresh.

Port 7734 is already in use.

myburn --port 17734

My logs live in a non-default location.

MYBURN_CLAUDE_DIR=/where/your/logs/are myburn

The "Live VU Meter" looks frozen. Refresh the page. If it persists, check localhost:7734/api/healthlive_entries should be > 0 and sync_alive should be true.

Costs look wrong / banner says "approximate pricing". A model name was emitted by Claude Code that isn't in the PRICING table yet (typically right after Anthropic releases a new model). MyBurn falls back to default rates and shows a banner. File an issue so we can update.

More problems? Run curl localhost:7734/api/health and include the JSON in your bug report. It tells us your DB state, sync state, and which models you're using.

Running from source

git clone https://github.com/Gekko-dot-ETH/myburn.git
cd myburn
pip install -e .
myburn

Tests:

python3 -m pytest tests/ -q

Privacy

MyBurn extracts only aggregate metrics from your Claude Code logs:

  • Token counts and model names
  • Timestamps and session durations
  • Cost calculations (API-equivalent pricing)
  • Tool usage counts
  • Permission mode (YOLO detection)

It never reads, logs, or transmits your code, prompts, file paths, or any conversation content. The dashboard front-end loads Chart.js, html2canvas, and Inter/JetBrains Mono fonts; the JS libs ship bundled in the wheel, fonts come from Google Fonts (a single GET to fonts.googleapis.com per page load — disable with browser policy if you need fully offline).

Reporting bugs / contributing

Acknowledgements

MyBurn originally used ccusage as an external CLI tool for log parsing. It has since been fully replaced by a native Python parser — no ccusage code was used or forked.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

myburn-0.2.0.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

myburn-0.2.0-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file myburn-0.2.0.tar.gz.

File metadata

  • Download URL: myburn-0.2.0.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.2

File hashes

Hashes for myburn-0.2.0.tar.gz
Algorithm Hash digest
SHA256 3e89a82c6b4a170d262e80bf0fe6f677cd54af37af8312b758550f0674212f8f
MD5 3af1aa27333ac3f64455f59a30729b8e
BLAKE2b-256 fe647c4b7c84bf987ed0561a6c0742bbc7cbe32d385771151da80f82bbd15c98

See more details on using hashes here.

File details

Details for the file myburn-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: myburn-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.2

File hashes

Hashes for myburn-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 49f19c92ddb4ff6a82395feebfdb1eb9430cd3ded8dad3220c0f7e574496b2aa
MD5 c1126cc0bbf17b4416d33ed014ca58ad
BLAKE2b-256 aa990a8cec8f82746949aa815c2bc64689722e86144364b0f60ee55d54aecef4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page