vibe-coding-tracker 1.9.0__tar.gz → 1.11.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: vibe-coding-tracker
3
- Version: 1.9.0
3
+ Version: 1.11.0
4
4
  Summary: Vibe Coding Tracker - AI coding assistant telemetry/usage parser, aggregate JSONL events into CodeAnalysis results
5
5
  Keywords: cli,ai,coding-assistant,telemetry,claude,codex,gemini,usage-tracker,analytics
6
6
  Author: Wei Lee
@@ -45,7 +45,7 @@ Description-Content-Type: text/markdown
45
45
 
46
46
  </div>
47
47
 
48
- **Track your AI coding costs in real-time.** Vibe Coding Tracker is a lightweight, high-performance CLI tool built in Rust that monitors and analyzes your Claude Code, Codex, Copilot, Gemini, OpenCode, and Cursor usage — with detailed cost breakdowns, token statistics, and code operation insights, all while keeping the memory footprint minimal.
48
+ **Track your AI coding costs in real-time.** Vibe Coding Tracker is a lightweight, high-performance CLI tool built in Rust that monitors and analyzes your Claude Code, Codex, Copilot, Gemini, OpenCode, Cursor, and Hermes usage — with detailed cost breakdowns, token statistics, and code operation insights, all while keeping the memory footprint minimal.
49
49
 
50
50
  [English](README.md) | [繁體中文](README.zh-TW.md) | [简体中文](README.zh-CN.md)
51
51
 
@@ -74,7 +74,7 @@ Choose your preferred view:
74
74
 
75
75
  ### Zero Configuration
76
76
 
77
- Automatically detects and processes logs from Claude Code, Codex, Copilot, Gemini, OpenCode, and Cursor. No setup required — just run and analyze. A `~/.vct/config.toml` is created with sensible defaults on first run if you ever want to tweak behavior (see [Configuration](#configuration)).
77
+ Automatically detects and processes logs from Claude Code, Codex, Copilot, Gemini, OpenCode, Cursor, and Hermes. No setup required — just run and analyze. A `~/.vct/config.toml` is created with sensible defaults on first run if you ever want to tweak behavior (see [Configuration](#configuration)).
78
78
 
79
79
  ### Rich Insights
80
80
 
@@ -88,15 +88,15 @@ Automatically detects and processes logs from Claude Code, Codex, Copilot, Gemin
88
88
 
89
89
  ## Key Features
90
90
 
91
- | Feature | Description |
92
- | --------------------- | ---------------------------------------------------------------------------- |
93
- | **Multi-Provider** | Claude Code, Codex, Copilot, Gemini, OpenCode, and Cursor — all in one place |
94
- | **Smart Pricing** | Fuzzy model matching + daily cache from LiteLLM |
95
- | **4 Display Modes** | Interactive TUI, static table, plain text, and JSON |
96
- | **Dual Analysis** | Token/cost stats (`usage`) + code operation stats (`analysis`) |
97
- | **Live Quota Panels** | Live remaining quota for Claude, Codex, Copilot, and Cursor |
98
- | **Ultra-Lightweight** | Under ~50 MB RSS in the TUI, streaming JSONL parse — built with Rust |
99
- | **Live Updates** | Auto-refreshing dashboard (every 10s) with change highlighting |
91
+ | Feature | Description |
92
+ | --------------------- | ------------------------------------------------------------------------------------ |
93
+ | **Multi-Provider** | Claude Code, Codex, Copilot, Gemini, OpenCode, Cursor, and Hermes — all in one place |
94
+ | **Smart Pricing** | Fuzzy model matching + daily cache from LiteLLM |
95
+ | **4 Display Modes** | Interactive TUI, static table, plain text, and JSON |
96
+ | **Dual Analysis** | Token/cost stats (`usage`) + code operation stats (`analysis`) |
97
+ | **Live Quota Panels** | Live remaining quota for Claude, Codex, Copilot, and Cursor |
98
+ | **Ultra-Lightweight** | Under ~50 MB RSS in the TUI, streaming JSONL parse — built with Rust |
99
+ | **Live Updates** | Auto-refreshing dashboard (every 10s) with change highlighting |
100
100
 
101
101
  ---
102
102
 
@@ -259,7 +259,7 @@ vct usage --table --merge-providers
259
259
  ┌─────────────────────────────────────────────────────────────────────────────────────────────┐
260
260
  │ Total Cost: $79.33 | Total Tokens: 49.3M | Models: 3 | Memory: 42.8 MB │
261
261
  └─────────────────────────────────────────────────────────────────────────────────────────────┘
262
- ↑/↓ scroll m merge r refresh q quit | github.com/Mai0313/VibeCodingTracker
262
+ ↑/↓ scroll m merge r refresh q quit | Star on GitHub
263
263
  ```
264
264
 
265
265
  ### Preview: Table & JSON (`vct usage`)
@@ -317,6 +317,7 @@ The tool automatically scans these directories:
317
317
  - `~/.gemini/tmp/<project_hash>/chats/*.jsonl` (Gemini CLI)
318
318
  - `~/.local/share/opencode/opencode.db` (OpenCode — SQLite database; honors `$XDG_DATA_HOME`)
319
319
  - `~/.cursor/chats/*/*/store.db` (Cursor — SQLite chat stores, used for `analysis` and a local `usage` estimate consistent with the other providers)
320
+ - `~/.hermes/state.db` (Hermes — SQLite database, honors `$HERMES_HOME`; `usage` only)
320
321
 
321
322
  ### Live Quota Panels
322
323
 
@@ -410,7 +411,7 @@ vct analysis --output today.json --daily
410
411
  ┌─────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
411
412
  │ Total Lines: 16.1K | Total Tools: 619 | Models: 3 | Memory: 41.2 MB │
412
413
  └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
413
- ↑/↓ scroll r refresh q quit | github.com/Mai0313/VibeCodingTracker
414
+ ↑/↓ scroll r refresh q quit | Star on GitHub
414
415
  ```
415
416
 
416
417
  ### Preview: Table & JSON (`vct analysis`)
@@ -537,7 +538,7 @@ vct fetch copilot --table
537
538
 
538
539
  ## Configuration
539
540
 
540
- vct keeps its user settings in `~/.vct/config.toml`. The file is **created with defaults on first run**, so you never have to write it by hand — edit it only when you want to change a default. It is generated from vct's typed settings and carries a `#:schema` directive on the first line, so a schema-aware TOML editor (taplo / VS Code "Even Better TOML") gives you autocomplete and validation. Print the schema yourself with `vct config schema`.
541
+ vct keeps its user settings in `~/.vct/config.toml`. The file is **created with defaults on first run**, so you never have to write it by hand — edit it only when you want to change a default. It is generated from vct's typed settings and carries a `#:schema` directive on the first line, so a schema-aware TOML editor (taplo / VS Code "Even Better TOML") gives you autocomplete and validation. Print the schema yourself with `vct config schema`. A file written by an older vct is upgraded to the current layout in place the next time vct reads it (or on demand with `vct config migrate`), so an upgrade never leaves you on a stale format.
541
542
 
542
543
  ```toml
543
544
  #:schema https://raw.githubusercontent.com/Mai0313/VibeCodingTracker/main/vct.schema.json
@@ -603,6 +604,9 @@ vct config edit
603
604
 
604
605
  # Print the JSON schema (regenerate with: vct config schema > vct.schema.json)
605
606
  vct config schema
607
+
608
+ # Upgrade a legacy-format file to the current layout in place
609
+ vct config migrate
606
610
  ```
607
611
 
608
612
  ---
@@ -630,6 +634,7 @@ vct config schema
630
634
 
631
635
  - **Beyond tokens**: Claude web-search tool calls (`server_tool_use.web_search_requests`) are billed per query on top of the token cost; every other model's per-query charge is $0.
632
636
  - **OpenCode**: a novel model name is priced from its tokens only on an **exact** LiteLLM match; with no exact match, vct trusts the assistant message's own stored cost instead of guessing from a loosely-similar name.
637
+ - **Hermes**: priced the same way as OpenCode — an **exact** LiteLLM match prices from tokens, otherwise vct uses Hermes's own stored cost.
633
638
  - **Cache is raw**: the daily cache stores the filtered upstream LiteLLM JSON (not a derived shape), so tiered / batch pricing stays available without re-fetching, and a small in-process LRU keeps repeated lookups cheap during a TUI refresh.
634
639
 
635
640
  ---
@@ -19,7 +19,7 @@
19
19
 
20
20
  </div>
21
21
 
22
- **Track your AI coding costs in real-time.** Vibe Coding Tracker is a lightweight, high-performance CLI tool built in Rust that monitors and analyzes your Claude Code, Codex, Copilot, Gemini, OpenCode, and Cursor usage — with detailed cost breakdowns, token statistics, and code operation insights, all while keeping the memory footprint minimal.
22
+ **Track your AI coding costs in real-time.** Vibe Coding Tracker is a lightweight, high-performance CLI tool built in Rust that monitors and analyzes your Claude Code, Codex, Copilot, Gemini, OpenCode, Cursor, and Hermes usage — with detailed cost breakdowns, token statistics, and code operation insights, all while keeping the memory footprint minimal.
23
23
 
24
24
  [English](README.md) | [繁體中文](README.zh-TW.md) | [简体中文](README.zh-CN.md)
25
25
 
@@ -48,7 +48,7 @@ Choose your preferred view:
48
48
 
49
49
  ### Zero Configuration
50
50
 
51
- Automatically detects and processes logs from Claude Code, Codex, Copilot, Gemini, OpenCode, and Cursor. No setup required — just run and analyze. A `~/.vct/config.toml` is created with sensible defaults on first run if you ever want to tweak behavior (see [Configuration](#configuration)).
51
+ Automatically detects and processes logs from Claude Code, Codex, Copilot, Gemini, OpenCode, Cursor, and Hermes. No setup required — just run and analyze. A `~/.vct/config.toml` is created with sensible defaults on first run if you ever want to tweak behavior (see [Configuration](#configuration)).
52
52
 
53
53
  ### Rich Insights
54
54
 
@@ -62,15 +62,15 @@ Automatically detects and processes logs from Claude Code, Codex, Copilot, Gemin
62
62
 
63
63
  ## Key Features
64
64
 
65
- | Feature | Description |
66
- | --------------------- | ---------------------------------------------------------------------------- |
67
- | **Multi-Provider** | Claude Code, Codex, Copilot, Gemini, OpenCode, and Cursor — all in one place |
68
- | **Smart Pricing** | Fuzzy model matching + daily cache from LiteLLM |
69
- | **4 Display Modes** | Interactive TUI, static table, plain text, and JSON |
70
- | **Dual Analysis** | Token/cost stats (`usage`) + code operation stats (`analysis`) |
71
- | **Live Quota Panels** | Live remaining quota for Claude, Codex, Copilot, and Cursor |
72
- | **Ultra-Lightweight** | Under ~50 MB RSS in the TUI, streaming JSONL parse — built with Rust |
73
- | **Live Updates** | Auto-refreshing dashboard (every 10s) with change highlighting |
65
+ | Feature | Description |
66
+ | --------------------- | ------------------------------------------------------------------------------------ |
67
+ | **Multi-Provider** | Claude Code, Codex, Copilot, Gemini, OpenCode, Cursor, and Hermes — all in one place |
68
+ | **Smart Pricing** | Fuzzy model matching + daily cache from LiteLLM |
69
+ | **4 Display Modes** | Interactive TUI, static table, plain text, and JSON |
70
+ | **Dual Analysis** | Token/cost stats (`usage`) + code operation stats (`analysis`) |
71
+ | **Live Quota Panels** | Live remaining quota for Claude, Codex, Copilot, and Cursor |
72
+ | **Ultra-Lightweight** | Under ~50 MB RSS in the TUI, streaming JSONL parse — built with Rust |
73
+ | **Live Updates** | Auto-refreshing dashboard (every 10s) with change highlighting |
74
74
 
75
75
  ---
76
76
 
@@ -233,7 +233,7 @@ vct usage --table --merge-providers
233
233
  ┌─────────────────────────────────────────────────────────────────────────────────────────────┐
234
234
  │ Total Cost: $79.33 | Total Tokens: 49.3M | Models: 3 | Memory: 42.8 MB │
235
235
  └─────────────────────────────────────────────────────────────────────────────────────────────┘
236
- ↑/↓ scroll m merge r refresh q quit | github.com/Mai0313/VibeCodingTracker
236
+ ↑/↓ scroll m merge r refresh q quit | Star on GitHub
237
237
  ```
238
238
 
239
239
  ### Preview: Table & JSON (`vct usage`)
@@ -291,6 +291,7 @@ The tool automatically scans these directories:
291
291
  - `~/.gemini/tmp/<project_hash>/chats/*.jsonl` (Gemini CLI)
292
292
  - `~/.local/share/opencode/opencode.db` (OpenCode — SQLite database; honors `$XDG_DATA_HOME`)
293
293
  - `~/.cursor/chats/*/*/store.db` (Cursor — SQLite chat stores, used for `analysis` and a local `usage` estimate consistent with the other providers)
294
+ - `~/.hermes/state.db` (Hermes — SQLite database, honors `$HERMES_HOME`; `usage` only)
294
295
 
295
296
  ### Live Quota Panels
296
297
 
@@ -384,7 +385,7 @@ vct analysis --output today.json --daily
384
385
  ┌─────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
385
386
  │ Total Lines: 16.1K | Total Tools: 619 | Models: 3 | Memory: 41.2 MB │
386
387
  └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
387
- ↑/↓ scroll r refresh q quit | github.com/Mai0313/VibeCodingTracker
388
+ ↑/↓ scroll r refresh q quit | Star on GitHub
388
389
  ```
389
390
 
390
391
  ### Preview: Table & JSON (`vct analysis`)
@@ -511,7 +512,7 @@ vct fetch copilot --table
511
512
 
512
513
  ## Configuration
513
514
 
514
- vct keeps its user settings in `~/.vct/config.toml`. The file is **created with defaults on first run**, so you never have to write it by hand — edit it only when you want to change a default. It is generated from vct's typed settings and carries a `#:schema` directive on the first line, so a schema-aware TOML editor (taplo / VS Code "Even Better TOML") gives you autocomplete and validation. Print the schema yourself with `vct config schema`.
515
+ vct keeps its user settings in `~/.vct/config.toml`. The file is **created with defaults on first run**, so you never have to write it by hand — edit it only when you want to change a default. It is generated from vct's typed settings and carries a `#:schema` directive on the first line, so a schema-aware TOML editor (taplo / VS Code "Even Better TOML") gives you autocomplete and validation. Print the schema yourself with `vct config schema`. A file written by an older vct is upgraded to the current layout in place the next time vct reads it (or on demand with `vct config migrate`), so an upgrade never leaves you on a stale format.
515
516
 
516
517
  ```toml
517
518
  #:schema https://raw.githubusercontent.com/Mai0313/VibeCodingTracker/main/vct.schema.json
@@ -577,6 +578,9 @@ vct config edit
577
578
 
578
579
  # Print the JSON schema (regenerate with: vct config schema > vct.schema.json)
579
580
  vct config schema
581
+
582
+ # Upgrade a legacy-format file to the current layout in place
583
+ vct config migrate
580
584
  ```
581
585
 
582
586
  ---
@@ -604,6 +608,7 @@ vct config schema
604
608
 
605
609
  - **Beyond tokens**: Claude web-search tool calls (`server_tool_use.web_search_requests`) are billed per query on top of the token cost; every other model's per-query charge is $0.
606
610
  - **OpenCode**: a novel model name is priced from its tokens only on an **exact** LiteLLM match; with no exact match, vct trusts the assistant message's own stored cost instead of guessing from a loosely-similar name.
611
+ - **Hermes**: priced the same way as OpenCode — an **exact** LiteLLM match prices from tokens, otherwise vct uses Hermes's own stored cost.
607
612
  - **Cache is raw**: the daily cache stores the filtered upstream LiteLLM JSON (not a derived shape), so tiered / batch pricing stays available without re-fetching, and a small in-process LRU keeps repeated lookups cheap during a TUI refresh.
608
613
 
609
614
  ---
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "vibe_coding_tracker"
3
- version = "1.9.0"
3
+ version = "1.11.0"
4
4
  description = "Vibe Coding Tracker - AI coding assistant telemetry/usage parser, aggregate JSONL events into CodeAnalysis results"
5
5
  authors = [
6
6
  { name = "Wei Lee", email = "mai@mai0313.com" }