$ account phuryn
A well-crafted, self-contained application for analyzing and visualizing Claude Code usage logs. The system reads local JSONL transcript files (written by Claude Code regardless of subscription plan), parses them into a local SQLite database, and surfaces token counts, cost estimates, session histories, and subagent attribution through both a terminal CLI (`python cli.py today` / `stats` / `week`) and a rich single-page web dashboard (`python cli.py dashboard`). The dashboard is served by a stdlib-only Python HTTP server and bundles all HTML/JS/CSS inline, using Chart.js from CDN for visualizations. A companion VS Code extension embeds the same dashboard as a sidebar webview, auto-discovering the Python runtime via a flexible install-mode resolution chain (bundled `.py` sources, Homebrew shim, workspace clone, or explicit path). Architecturally, the code is split into three top-level Python modulesβ`scanner.py` (JSONL parsing, SQLite schema management, incremental scanning with deduplication by message ID), `cli.py` (CLI dispatch with per-turn cost calculation using a tiered pricing lookup), and `dashboard.py` (HTTP server with an embedded SPA). There are no third-party Python runtime dependencies; the VS Code extension uses TypeScript with minimal Node.js dependencies (only `@vscode/vsce` for packaging). The test suite is comprehensive, covering unit, integration, and HTTP-level scenarios across all three Python modules plus the entire TypeScript extension. A strict version parity test (`test_version.py`) enforces lockstep between the Python constant, the CHANGELOG heading, and the extension's `package.json`. Notable craftsmanship includes: the incremental scan engine that tracks file mtimes and line counts, processes only new/changed lines, and deduplicates streaming events via a conditional unique index on `message_id`; the one-time topic backfill mechanism for schema upgrades that re-reads only title records without touching token totals; and the VS Code extension's server-manager with configurable readiness probes that distinguishes the dashboard's JSON response shape from arbitrary HTTP 200s. The project is actively maintained with frequent releases, a weekly triage automation, and a detailed AGENTS.md that documents non-obvious invariants (streaming dedup, session model priority, cost calculation per-turn).