feat: add Claude Code usage dashboard tab - #106
Open
twentyTwo wants to merge 3 commits into
Open
Conversation
Adds a "Claude Code" tab to the summary dashboard showing token usage read from Claude Code's local session transcripts: token breakdown, estimated API-equivalent cost, per-model/project/day trends, tool usage and recent sessions, with an all-projects / this-workspace scope toggle. Only usage metadata is read (token counts, model names, timestamps, tool names, cwd, git branch). Message content is never parsed, stored or transmitted, and all processing is local. New modules keep a clean seam so the data layer and renderer stay independently reusable: - claudeTypes.ts: types only, zero imports - the contract between the two - claudeUsage.ts: discovery, streamed JSONL parsing, dedupe by message id, mtime/size cache in globalStorageUri, pricing, aggregation - claudeTab.ts: markup, styles and client script, rendering purely from a summary object Wiring into summaryView.ts is 29 insertions: import, style/markup/script interpolation, and one message handler. The tab loads lazily on first activation so the coding-time dashboard never waits on disk I/O. Cost is labelled an estimate throughout - Claude Code does not record cost and subscription plans do not bill per token. Unpriced models fall back to a default rate and are surfaced in the UI rather than silently mispriced. Also fixes two pre-existing stray </div> closers that left the heatmap, search form and results markup outside .container, and syncs the stale version in package-lock.json. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RnNwuZC8UXvpKTvQPgCU8M
Adds a Kilo Code tab alongside the Claude Code tab, reading Kilo Code's local task logs for token usage, cost, tool calls and recent tasks (grouped by API protocol, since Kilo Code records no per-request model id or workspace locally). Both tabs are individually toggleable from Settings, and a shared tab-panel/tabActivated mechanism now drives lazy loading for any dashboard tab, not just Claude Code's. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…Code support Rename the extension from "Simple Coding Time Tracker" to "Simple Coding Insights" to better reflect its expanded functionality, which now includes AI assistant usage tracking. As part of this rebranding and simplification, support for Kilo Code has been removed. - Rename extension display name and commands from SCTT to SCI - Update all documentation (README, CONTRIBUTING, TECHNICAL, and web docs) - Remove Kilo Code usage tab, types, reader, and related settings - Update package.json keywords and description - Update status bar and settings view titles - Refactor dashboard tab switching logic to support dynamic titles
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a "Claude Code" tab to the summary dashboard showing token usage read
from Claude Code's local session transcripts: token breakdown, estimated
API-equivalent cost, per-model/project/day trends, tool usage and recent
sessions, with an all-projects / this-workspace scope toggle.
Only usage metadata is read (token counts, model names, timestamps, tool
names, cwd, git branch). Message content is never parsed, stored or
transmitted, and all processing is local.
New modules keep a clean seam so the data layer and renderer stay
independently reusable:
mtime/size cache in globalStorageUri, pricing, aggregation
summary object
Wiring into summaryView.ts is 29 insertions: import, style/markup/script
interpolation, and one message handler. The tab loads lazily on first
activation so the coding-time dashboard never waits on disk I/O.
Cost is labelled an estimate throughout - Claude Code does not record cost
and subscription plans do not bill per token. Unpriced models fall back to
a default rate and are surfaced in the UI rather than silently mispriced.
Also fixes two pre-existing stray closers that left the heatmap,
search form and results markup outside .container, and syncs the stale
version in package-lock.json.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01RnNwuZC8UXvpKTvQPgCU8M