tiletopia/src-tauri
megaproxy 1df8c3181b Add per-session claude token/cost usage panel (WSL, v1)
Reads ~/.claude/projects/*.jsonl transcripts from the open WSL panes'
distros and shows per-session token counts + estimated USD cost, with a
running total in the titlebar.

Backend (src-tauri/src/usage.rs): new get_claude_usage command. For each
distro it probes $HOME once via wsl.exe, reaches the transcripts over the
\\wsl.localhost UNC share, and tallies message.usage per model per
session (summed by each line's model, since a session can switch models).
Results cached by (path,size,mtime) so polling only re-parses the file
that grew; recency-capped (30d / 50 sessions) to bound scan cost.
Windows-only; returns [] elsewhere. quiet_command made pub(crate).

Frontend: src/lib/usage.ts holds the pricing table (per-MTok rates,
matched by model-family substring) + cost/format helpers, so rates are
editable without recompiling Rust. UsagePanel.tsx mirrors the MCP panel
modal; rows whose transcript cwd matches an open pane are highlighted
with a [pane: label] tag. App polls every 20s (visible windows) for the
titlebar 💰 total and every 5s while the panel is open. Ctrl+Shift+U
opens it; added to shortcuts.ts + regenerated README.

tsc clean. Rust builds on the Windows host; needs runtime verification.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-28 22:15:51 +01:00
..
capabilities Fix detached-window IPC scoping and pane-transfer session loss 2026-05-28 19:46:30 +01:00
icons M5 ship infrastructure: icon, version, release script, README 2026-05-22 13:38:29 +01:00
src Add per-session claude token/cost usage panel (WSL, v1) 2026-05-28 22:15:51 +01:00
build.rs Initial scaffold from M1 spike (tiletopia) 2026-05-22 12:31:29 +01:00
Cargo.lock Bump version to 0.4.0 2026-05-28 20:36:22 +01:00
Cargo.toml Bump version to 0.4.0 2026-05-28 20:36:22 +01:00
tauri.conf.json Bump version to 0.4.0 2026-05-28 20:36:22 +01:00