A local-first Claude Code usage dashboard for macOS. Single Rust binary, no database, no telemetry — usage data stays on your machine.
- Usage totals — today, this week, all-time tokens and estimated cost
- Model & project breakdowns — see which models and projects consume the most
- Activity chart — tokens or cost view with 7-day, 4-week, and 6-month ranges
- Recent sessions — sortable table with project, model, tokens, turns, cost, and time
- Usage analytics page — detailed breakdowns with daily/weekly comparisons, token type breakdown, cost by model, cost optimization tips, and two-column panel layout
- AI Engineering Health Dashboard — quality, reliability, cost, and productivity metrics
- Animated cat — mood reacts to your daily token usage (sleeping → calm → curious → focus → busy → tired → overload)
- Cat speech bubbles — idle commentary and milestone alerts
- World clock — Thailand, UK, Hong Kong, Canada
- Themes — Paper Light, Cozy Warm, Matcha Calm, Graphite Focus, Ember Night
ClaudeSignal scans local JSONL transcripts that Claude Code writes automatically:
~/.claude/projects/~/Library/Developer/Xcode/CodingAssistant/ClaudeAgentConfig/projects/
No API calls, no account access. It reads the files Claude Code already creates on your Mac and aggregates the token usage.
# Build
cargo build
# Run
cargo run -- --port 3004 serve
# Open
open http://localhost:3004The terminal also prints a network URL for access from other devices on the same Wi-Fi.
./scripts/install-claude-wrapper.shThis configures Claude Code to POST live session data to the dashboard while Claude is actively running.
| Mood | Trigger | Behavior |
|---|---|---|
| Sleeping | 0 tokens today | Eyes closed, slow tail |
| Calm | < 1M tokens | Relaxed breathing |
| Curious | 1M+ tokens | Head tilt, perked ears |
| Focus | 6M+ tokens | Narrowed eyes, tapping paw |
| Busy | 15M+ tokens | Alert ears, active paw |
| Tired | 25M+ tokens | Droopy eyes, yawning |
| Overload | 45M+ tokens | Wide eyes, jitter |
| Sleeping | Calm | Curious |
|---|---|---|
![]() |
![]() |
![]() |
| Focus | Tired | Overload |
|---|---|---|
![]() |
![]() |
![]() |
Rust, Axum, Tokio, static HTML/CSS/JS (no build step)
ClaudeSignal follows a structured AI-assisted engineering workflow defined in AGENT-WORKFLOW.md. Every agent session uses acceptance criteria, quality gates, failure recovery, and parallel reviews — code goes through engineering processes, not around them.
Everything runs locally. No hosted backend, no telemetry, no uploads. Bind to 0.0.0.0 for LAN access — use only on trusted networks.







