Releases: getagentseal/codeburn
v0.9.9
What's New
Added (CLI)
- Multi-provider subscription plans.
codeburn plan setnow stores plans per provider, so setting a Codex plan no longer overwrites your Claude plan.plan reset --provider <name>removes only that provider. Existing single-plan configs auto-migrate. Closes #299. Thanks @ozymandiashh. (#300) - Mistral Vibe provider. Reads session folders from
~/.vibe/logs/session/with subagent support. Closes #283. Thanks @ozymandiashh. (#301) - Kimi Code CLI provider. Reads
~/.kimi/sessions/including subagent wire files and Kimi K2 model alias mapping. Thanks @ozymandiashh. (#306) - Codebuff provider. Reads Codebuff session data from
~/.codebuff/. Closes #124. Thanks @anandghegde. (#124) - IBM Bob provider. Discovers IBM Bob IDE task history, reuses the Cline-family parser for token/cost records, extracts model tags and workspace-based project names. Closes #248. (#316)
- Cline provider. Reads Cline task usage from VS Code globalStorage and
~/.cline/data. Thanks @ozymandiashh. (#312)
Fixed (CLI)
- Claude parser OOM risk reduced. Large JSONL sessions now compact entries immediately after parse, keeping only fields needed for cost aggregation. (#335)
- Eager daily-cache hydration caused OOM. Eight commands called
hydrateCache()which parses a 365-day backfill even though onlystatus --format menubar-jsonuses it. Removed from all paths that parse their own date ranges. - Session cache retained between status parses. The
status --format jsonpath parsed today and month ranges without clearing the session cache between them. Cache is now cleared after each period. - Claude 1-hour cache write pricing. 1-hour cache writes now priced at 2x base input (previously used the 5-minute 1.25x rate). Daily cache bumped to v6. Closes #276. (#317)
- OpenCode MCP usage now counted. OpenCode stores MCP tool calls as
<server>_<tool>names. Now normalized tomcp__<server>__<tool>. Closes #308. (#318) - Antigravity Windows discovery. Supports Windows process discovery,
--extension_server_port, CSRF token, and--flag=valuesyntax. Closes #249. Thanks @ozymandiashh. (#324) - Mangled project names in dashboard. Slug decoding broke directory names with dashes or dots. Now uses the real project path. Closes #320. (#320)
- Cursor undated bubble rows misattributed to Today. Bubble rows without
createdAtwere defaulting to the current date. Now skipped. (#321) - Node version guard. Running on Node < 22.13.0 now prints a clear upgrade message instead of crashing with a
node:sqliteerror. Closes #319. (#319) - Windows test fix. cli-plan test no longer fails on Windows. Thanks @brunoleemann-code. (#252)
Fixed (macOS menubar)
- Keychain prompt deferred. The menubar no longer prompts for keychain access on launch. Only triggers when you navigate to the Plan tab and click "Load Quota" or "Connect". (#338)
- All-provider refresh OOM. Refreshing with provider set to "All" could exhaust the V8 heap on heavy session history.
- Tab refresh recovery. Switching tabs during a refresh no longer leaves the panel in a stale loading state. (#315, #328)
- Stale cache recovery. Detects and discards a corrupt or outdated on-disk cache instead of rendering zeroes. (#315)
- Refresh timer hardening. Auto-refresh timer cancelled on sleep/wake, restarted cleanly. (#310, #311)
- Provider strip scrollable. Provider tabs now reachable and mouse-wheel scrollable. Thanks @vaibhavarora14. (#334)
- Version display. Settings panel shows version without the
vprefix. (#315) - Wake recovery. Menubar recovers cleanly after lid-open. (#310)
- PATH discovery. Fixed for nvm/volta/asdf/npm-global installs.
Tests
60 files, 860 tests (was 661). New suites: Kimi provider, Mistral Vibe provider, Codebuff provider, multi-provider plans, Cline provider, IBM Bob provider.
The macOS menubar is published separately as mac-v0.9.9.
Full Changelog: v0.9.8...v0.9.9
Menubar v0.9.9
Install with:
npm install -g codeburn
codeburn menubar
That command drops the app into ~/Applications, records the persistent
codeburn CLI path used by the menubar, verifies the downloaded checksum,
clears quarantine after bundle verification, and launches it. If you download
the zip from this page directly and macOS shows "cannot verify developer",
right-click the app in Finder and pick Open to whitelist it once.
v0.9.8
What's New
Added
codeburn modelscommand. Per-model breakdown across all providers — one row per (provider, model), sorted by cost. Columns: Input, Output, Cache Write, Cache Read, Total, Cost, plus a Top Task cell (e.g.Coding (42%)). Pass--by-taskto explode per task type. Filters:--period,--from/--to,--provider,--task,--top,--min-cost. Formats:table(Unicode box-drawn),markdown,json,csv. Auto-sizes columns and responsively drops cache/token columns on narrow terminals. (#287)- Crush provider support. Charmbracelet Crush agent metrics now tracked — walks
~/.local/share/crush/projects.json, reads each project's SQLite DB. Closes #278. Thanks @Jelloeater for the request and schema reference. - Multiple Claude config directories. Set
CLAUDE_CONFIG_DIRS(:on POSIX,;on Windows) to scan multiple Claude data dirs in one run.~expansion, dedup, and graceful skip on unreadable dirs. Closes #208. Thanks @ccrvlh for the feature request. - Per-day one-shot data in
--format json. Eachdaily[]entry now carriesturns,editTurns,oneShotTurns, andoneShotRate. Closes #279. Thanks @eugene-eee-hongkyu for the feature request. - CONTRIBUTING.md, architecture docs, and per-provider docs. 19 new doc files for contributors. (#284)
- Provider icons in README. Each provider row links to its doc with an icon column. (#285, #286)
Fixed
- Cursor sessions break down by project, not one "cursor" row. Walks
workspaceStorage/*/workspace.jsonandcomposer.composerDatato attribute bubbles per workspace. Composers without a workspace stay under a catch-allcursorrow. Cursor cache version bumped to 3. Closes the per-project half of #196. Thanks @cwikio for the detailed report. (#296) - Cursor cost shown for every model, not just Auto. Expanded alias map to cover all Cursor model variants (
claude-4.x-*,composer-1/1.5/2, etc.) with regression tests. Closes #159. Thanks @CarlvinceTan for reporting. (#290) - Activity classifier no longer mislabels feature work as debugging. Earliest keyword match wins — "add error handling" → Feature, not Debugging. Fixes the misattribution half of #196. (#289)
- Optimize suggestions declare their destination. Every fix now labels where it goes:
claude-md,session-opener,prompt, orshell-config. Closes #277. Thanks @chimon2000 for the suggestion. (#281) - Daily cache discards pre-v5 caches. Prevents stale single-bucket "cursor" provider totals from persisting after the per-project upgrade. (#297)
- node:sqlite V8 crash on invalid UTF-8. Text columns containing raw blobs no longer crash the parser. (#272)
Fixed (macOS menubar)
- Stuck loading after sleep. Non-blocking pipe I/O + watchdog timer recover from hung CLI subprocesses. (#266, #293)
- System sleep blocked. Menubar no longer prevents macOS from sleeping. (#270)
- Double-click on pill tabs and oversized disconnected tabs. (#274)
- Old process cleanup. Installer waits for old menubar to exit before launching new one. (#275)
- Node 22.x buggy patch guard. Refuses to load
node:sqliteon known-crashy Node 22 builds. (#265)
Tests
47 files, 661 tests (was 555). New suites: Crush provider, Claude multi-dir, Cursor workspace breakdown, models report, classifier keyword priority, Cursor model alias identity, blob-to-text.
The macOS menubar is published separately as mac-v0.9.8.
Menubar v0.9.8
Install with:
npx codeburn menubar
That command drops the app into ~/Applications, clears the download
quarantine, and launches it. If you download the zip from this page directly
and macOS shows "cannot verify developer", right-click the app in Finder and
pick Open to whitelist it once.
v0.9.7
What's New
Added
- Live Claude + Codex quota tracking in the macOS menubar with hover popovers and a Plan tab per provider
- Multi-provider warning row in the popover header, color-shifting flame icon at 70/90/100% across the worst-affected provider
- Settings window (right-click → Settings…) with General / Claude / Codex / About tabs and configurable refresh cadence
- Per-model efficiency metrics (
feat(report)) - Custom date range exports with
--from/--to - Optimize subsystem detectors: low-worth, context-heavy, MCP coverage, session outliers
- Codex stream parsing for 250 MB+ rollouts via
readline
Fixed
parseLocalDaterejects month/day overflow —--from 2026-02-31no longer silently rolls to Mar 3 and drops sessions- Currency-aware export rounding — JPY/KRW/CLP exports come out as whole numbers (matching the dashboard)
- Copilot legacy parser hardened against malformed
toolRequests(string/null shapes no longer abort the file's parse) - Codex token_count dedup uses a null sentinel for
prevCumulativeTotalso the first event is never confused with a duplicate - Cursor SQLite parse — index-pointer queue (was O(n)
Array.shift()) + real ROWID cap for multi-GB DBs - Dashboard period switch — clears projects + flips to loading synchronously, eliminating the stale-data flash
- Optimize findings tab — paginates 3-at-a-time with j/k scroll
- Custom date ranges hide the period tab strip and disable 1-5 keys so a stray press doesn't abandon the range
- Stricter CLI validation — invalid
--formatand--periodvalues exit loudly instead of silently falling back - OpenCode storage warning is per-table-set, rate-limited, and actionable
Security
- LiteLLM pricing values clamped to
[0, 1]per token inparseLiteLLMEntry - Token redaction in
sanitizeForUIextends to OpenAI sk-* keys, JWTs, and Bearer headers (not justsk-ant-*) - TypeScript strict typecheck —
tsc --noEmitis now zero errors
Tests
16 new (now 555 total): date-range overflow, currency rounding, copilot toolRequests, cursor bubble dedup, codex zero-cumulative dedup.
The macOS menubar is published separately as mac-v0.9.7.
Menubar v0.9.7
Install with:
npx codeburn menubar
That command drops the app into ~/Applications, clears the download
quarantine, and launches it. If you download the zip from this page directly
and macOS shows "cannot verify developer", right-click the app in Finder and
pick Open to whitelist it once.
v0.9.6
What's New
Added
- Goose provider — Block's Goose AI coding assistant
- Antigravity provider — Antigravity IDE sessions
- Antigravity model aliases — gemini-3-pro, flash-image, flash-lite
- GPT-5.5 display name for Codex
- Deno support —
deno dxas a run method
Fixed
- Streaming dedup — Claude Code streams each
message.idmultiple times. The old keep-first strategy lost tool_use blocks and understated output tokens by ~6.3%. Now keeps last occurrence content with first occurrence timestamp. $0.0000display — near-zero costs showed four decimal places instead of$0.00(#205)- ANSI escape stripping — shell commands with color codes now cleaned across all providers
- Antigravity dedup collision + Codex ChatGPT Plus token estimation
- Codex large session validation — reads full first line; caps read size and handles torn writes
- Codex fork dedup — deduplicates forked sessions
- Windows dashboard hang — fixed
ExperimentalWarningand freeze - Hardcoded
$in forecast — now uses configured currency symbol
Full changelog: https://github.com/getagentseal/codeburn/blob/main/CHANGELOG.md
Menubar v0.9.6
macOS Menubar v0.9.6
Fixed
- Provider tabs showing $0.00 after idle - CLI timeout increased from 20s to 45s for cold file-cache latency
- Refresh button blocked by in-flight requests - manual refresh now bypasses the in-flight guard
- Tab strip vs hero cost mismatch - tab strip prefers provider-specific payload cost when available
- Ghost status item on macOS Tahoe
Install
Download CodeBurnMenubar-0.9.6.zip, unzip, and move to /Applications. Requires macOS 14+.
Or run codeburn menubar --force to install automatically.
Menubar v0.9.5
Install with:
npx codeburn menubar
That command drops the app into ~/Applications, clears the download
quarantine, and launches it. If you download the zip from this page directly
and macOS shows "cannot verify developer", right-click the app in Finder and
pick Open to whitelist it once.
v0.9.5
Added (CLI)
- Homebrew tap:
brew tap getagentseal/codeburn && brew install codeburn - GPT-5.3 and DeepSeek model display names
Fixed (macOS menubar)
- Refresh loop never repeated — now proper 30s interval
- Loading overlay flicker on concurrent fetches
- Rapid tab switching race condition
- Tab strip vs hero cost desync
- Stale menubar icon after wake
- Accent color propagation via @observable
- Currency flash on first switch
- Export UI freeze + filename collision
- CurrencyState concurrency (Swift 6 strict)
- Streak count bug (calendar-day iteration)
- TrendBar chart flicker (stable identity)