11<h1 align =" center " >codeburn-rs</h1 >
22
3- like codeburn, but in rust and a lot faster.
4-
5- ## Performance
6-
7- Benchmarked against the published JS version (` npx codeburn ` ) with hyperfine
8- (20 runs / 10 warmup) on Apple Silicon. Command: ` report --provider all --period week ` .
9-
10- | Scenario | Rust (` cburn ` ) | JS (` npx codeburn ` ) | Speedup |
11- | ----------------- | -------------- | ------------------- | ------- |
12- | Tier 1 cache hit | 6.5 ms | 3.63 s | ~ 557× |
13- | Tier 2 cache hit | 11.1 ms | 4.33 s | ~ 390× |
14- | Cold (no cache) | 162 ms | 7.22 s | ~ 44× |
15-
16- ** Tier 1** is the output cache — replays the prebuilt rendered report.
17- ** Tier 2** is the parse cache — skips the JSONL parse and classification step
18- but rebuilds the output. ** Cold** wipes cursor disk caches and forces a full
19- SQLite scan through the parse pipeline.
20-
21- ### Data corpus on the test machine
22-
23- | Provider | Storage | Size | Notes |
24- | -------------- | -------------------- | ------- | ------------------------------------ |
25- | Claude Code | 1,106 JSONL files | 439 MB | 71 projects, ~ 111k total lines |
26- | Codex | 247 JSONL files | 98 MB | ~ 43k total lines |
27- | Cursor | SQLite (` state.vscdb ` )| 1.5 GB | full IDE state — selective scan |
28- | OpenCode | SQLite (` opencode.db ` )| 80 MB | (1.1 GB including blobs/attachments) |
29- | Claude Desktop | session files | 3.9 MB | |
30- | Pi | session files | 2.8 MB | |
31-
32- The "Cold" run scans all of this from disk. The 154 ms total includes parsing
33- ~ 150k JSONL lines plus a targeted SQLite query against the 1.5 GB Cursor DB.
3+ See where your AI coding tokens go but ** 600x faster**
344
355## Install
366
@@ -71,18 +41,22 @@ cburn report --period 30days
7141Filter to one provider:
7242
7343``` sh
74- cburn report --provider cursor
44+ cburn report --provider claude
7545```
7646
77- Supported providers: ` all ` , ` claude ` , ` codex ` , ` cursor ` , ` opencode ` .
47+ Supported providers: ` all ` , ` claude ` , ` codex ` , ` opencode ` .
48+
49+ > Cursor support is currently disabled: Cursor stopped writing per-call token
50+ > counts to its local ` state.vscdb ` in early 2026, so any parse of that DB
51+ > now reports $0 regardless of actual usage. The parser code is retained in
52+ > case the data layout is restored upstream.
7853
7954### Other commands
8055
8156``` sh
8257cburn status # compact terminal snapshot (today + week + month)
8358cburn export --format csv # export usage data to CSV or JSON
8459cburn currency GBP # change display currency
85- cburn install-menubar # macOS menu bar widget (SwiftBar)
8660```
8761
8862For full options, see ` cburn --help ` or ` cburn <subcommand> --help ` .
@@ -93,3 +67,15 @@ If you don't have the npm version installed and prefer the full name, alias it:
9367``` sh
9468alias codeburn=cburn
9569```
70+
71+ ## Performance
72+
73+ Benchmarked against the published JS version (` npx codeburn ` ) with hyperfine on MacBook Pro (M1 Pro, 16GB, 1TB).
74+
75+ | Rust Scenario | JS Scenario | Rust (` cburn ` ) | JS (` npx codeburn ` ) | Speedup |
76+ | ------------- | ----------- | -------------- | ------------------- | ------- |
77+ | fully cached | cache on | 6.0 ms | 3.66 s | ~ 610× |
78+ | normal cache | cache on | 10.9 ms | 3.66 s | ~ 335× |
79+ | cold | cold | 76 ms | 7.71 s | ~ 101× |
80+
81+ Original JS version: (https://github.com/AgentSeal/codeburn ).
0 commit comments