vibe-coding-tracker 0.12.1__tar.gz → 0.13.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: 0.12.1
3
+ Version: 0.13.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
@@ -169,6 +169,7 @@ vct <COMMAND> [OPTIONS]
169
169
  Commands:
170
170
  analysis Analyze JSONL conversation files (single file or all sessions)
171
171
  usage Display token usage statistics
172
+ statusline Cache Claude Code rate limits from a statusLine hook (stdin JSON)
172
173
  version Display version information
173
174
  update Update to the latest version from GitHub releases
174
175
  help Print this message or the help of the given subcommand(s)
@@ -260,6 +261,24 @@ The tool automatically scans these directories:
260
261
  - `~/.gemini/tmp/<project_hash>/chats/*.jsonl` (Gemini CLI)
261
262
  - `~/.local/share/opencode/opencode.db` (OpenCode — SQLite database; honors `$XDG_DATA_HOME`)
262
263
 
264
+ ### Live Quota Panels
265
+
266
+ At the bottom of the interactive dashboard, the per-provider stats sit on the left and two live quota panels sit on the right:
267
+
268
+ ```
269
+ ┌ Provider/Tokens/Cost/Days ┬ Claude ────────┬ Codex (API) ────┐
270
+ │ Claude 1.2M $3.00 4d │ 5h ▰▰▱▱▱ 16% │ Plan: plus │
271
+ │ Codex 800K $0.00 6d │ ↻ 4h13m │ 5h ▰▰▱▱▱ 27% │
272
+ │ ... │ 7d ▰▰▰▱▱ 28% │ 7d ▱▱▱▱▱ 4% │
273
+ │ │ updated 2m ago │ Credits: 0 +2 │
274
+ └───────────────────────────┴────────────────┴─────────────────┘
275
+ ```
276
+
277
+ - **Claude** — 5-hour and weekly rate-limit usage. Claude Code only exposes these limits through its `statusLine` hook, so wire `vct statusline ingest` into your statusLine (see [Statusline Command](#statusline-command)) for this panel to populate.
278
+ - **Codex** — plan tier, 5-hour and weekly usage, and credit balance. Pulled live from the ChatGPT backend (`wham/usage`) using the token in `~/.codex/auth.json` on a background thread; when unavailable it falls back to the newest `rate_limits` in your Codex session logs (the title shows `(API)` vs `(session)`).
279
+
280
+ Quota panels appear only in the interactive TUI; `--table`, `--text`, and `--json` are unchanged.
281
+
263
282
  ---
264
283
 
265
284
  ## Analysis Command
@@ -337,6 +356,35 @@ vct analysis --output today.json --daily
337
356
 
338
357
  ---
339
358
 
359
+ ## Statusline Command
360
+
361
+ **Feed Claude Code rate limits into the `usage` dashboard.**
362
+
363
+ Claude Code only exposes its 5-hour / weekly rate limits through the `statusLine` hook's stdin JSON, so `vct` captures them from there and caches them to `~/.vibe_coding_tracker/claude_rate_limits.json` for the Claude quota panel.
364
+
365
+ ### If you already have a statusLine
366
+
367
+ Add one backgrounded line to your existing statusLine script. It has zero impact on your current display and is isolated, so a vct error can never disturb the statusLine:
368
+
369
+ ```bash
370
+ printf '%s' "$input" | vct statusline ingest >/dev/null 2>&1 &
371
+ ```
372
+
373
+ ### If you do not have a statusLine yet
374
+
375
+ Point Claude Code's `~/.claude/settings.json` straight at vct, which caches the limits and prints a compact one-line status:
376
+
377
+ ```json
378
+ {
379
+ "statusLine": {
380
+ "type": "command",
381
+ "command": "vct statusline"
382
+ }
383
+ }
384
+ ```
385
+
386
+ ---
387
+
340
388
  ## Update Command
341
389
 
342
390
  **Keep your installation up-to-date automatically.**
@@ -143,6 +143,7 @@ vct <COMMAND> [OPTIONS]
143
143
  Commands:
144
144
  analysis Analyze JSONL conversation files (single file or all sessions)
145
145
  usage Display token usage statistics
146
+ statusline Cache Claude Code rate limits from a statusLine hook (stdin JSON)
146
147
  version Display version information
147
148
  update Update to the latest version from GitHub releases
148
149
  help Print this message or the help of the given subcommand(s)
@@ -234,6 +235,24 @@ The tool automatically scans these directories:
234
235
  - `~/.gemini/tmp/<project_hash>/chats/*.jsonl` (Gemini CLI)
235
236
  - `~/.local/share/opencode/opencode.db` (OpenCode — SQLite database; honors `$XDG_DATA_HOME`)
236
237
 
238
+ ### Live Quota Panels
239
+
240
+ At the bottom of the interactive dashboard, the per-provider stats sit on the left and two live quota panels sit on the right:
241
+
242
+ ```
243
+ ┌ Provider/Tokens/Cost/Days ┬ Claude ────────┬ Codex (API) ────┐
244
+ │ Claude 1.2M $3.00 4d │ 5h ▰▰▱▱▱ 16% │ Plan: plus │
245
+ │ Codex 800K $0.00 6d │ ↻ 4h13m │ 5h ▰▰▱▱▱ 27% │
246
+ │ ... │ 7d ▰▰▰▱▱ 28% │ 7d ▱▱▱▱▱ 4% │
247
+ │ │ updated 2m ago │ Credits: 0 +2 │
248
+ └───────────────────────────┴────────────────┴─────────────────┘
249
+ ```
250
+
251
+ - **Claude** — 5-hour and weekly rate-limit usage. Claude Code only exposes these limits through its `statusLine` hook, so wire `vct statusline ingest` into your statusLine (see [Statusline Command](#statusline-command)) for this panel to populate.
252
+ - **Codex** — plan tier, 5-hour and weekly usage, and credit balance. Pulled live from the ChatGPT backend (`wham/usage`) using the token in `~/.codex/auth.json` on a background thread; when unavailable it falls back to the newest `rate_limits` in your Codex session logs (the title shows `(API)` vs `(session)`).
253
+
254
+ Quota panels appear only in the interactive TUI; `--table`, `--text`, and `--json` are unchanged.
255
+
237
256
  ---
238
257
 
239
258
  ## Analysis Command
@@ -311,6 +330,35 @@ vct analysis --output today.json --daily
311
330
 
312
331
  ---
313
332
 
333
+ ## Statusline Command
334
+
335
+ **Feed Claude Code rate limits into the `usage` dashboard.**
336
+
337
+ Claude Code only exposes its 5-hour / weekly rate limits through the `statusLine` hook's stdin JSON, so `vct` captures them from there and caches them to `~/.vibe_coding_tracker/claude_rate_limits.json` for the Claude quota panel.
338
+
339
+ ### If you already have a statusLine
340
+
341
+ Add one backgrounded line to your existing statusLine script. It has zero impact on your current display and is isolated, so a vct error can never disturb the statusLine:
342
+
343
+ ```bash
344
+ printf '%s' "$input" | vct statusline ingest >/dev/null 2>&1 &
345
+ ```
346
+
347
+ ### If you do not have a statusLine yet
348
+
349
+ Point Claude Code's `~/.claude/settings.json` straight at vct, which caches the limits and prints a compact one-line status:
350
+
351
+ ```json
352
+ {
353
+ "statusLine": {
354
+ "type": "command",
355
+ "command": "vct statusline"
356
+ }
357
+ }
358
+ ```
359
+
360
+ ---
361
+
314
362
  ## Update Command
315
363
 
316
364
  **Keep your installation up-to-date automatically.**
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "vibe_coding_tracker"
3
- version = "0.12.1"
3
+ version = "0.13.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" }