Claude Code Monitor
A VSCode status-bar monitor for Claude Code sessions — shows the current session's context occupancy, model + thinking state, and effort level without leaving the editor.
Not affiliated with or endorsed by Anthropic.
What it shows
$(pulse) CTX 18% (182.4k/1.00M) · opus 4.7+think · effort:medium
| Segment |
Meaning |
CTX 18% (182.4k/1.00M) |
Context occupancy of the current session vs the model's window |
opus 4.7+think |
Model family + version; +think = last turn used thinking |
effort:medium |
From effortLevel in the merged Claude Code settings chain (user → project → local) |
Hover the status-bar item for a detailed tooltip; click to force refresh.
How it works
Reads Claude Code's JSONL transcripts from ~/.claude/projects/<workspace-hash>/*.jsonl:
- Current session: newest jsonl under the directory derived from the active workspace path. Parses the latest assistant turn to extract model, usage and thinking state.
- Effort level: reads
effortLevel from the merged settings chain ~/.claude/settings.json → <ws>/.claude/settings.json → <ws>/.claude/settings.local.json.
All data comes from local transcript files.
Privacy
- No telemetry.
- No network calls.
- All reads are local-only.
- No data ever leaves your machine.
Why no 5h / weekly usage window?
An earlier version tried to show 5h / 7-day rolling token usage as a percentage of a "plan cap". It was removed because Anthropic's real /usage limits are weighted per-request and not documented, so a pure token-count proxy produced misleading percentages (e.g. status bar showing 118% while /usage said 28%). For accurate numbers, run /usage inside Claude Code.
Settings
| Setting |
Default |
Description |
ccMonitor.projectsDir |
"" (auto) |
Override path to ~/.claude/projects |
ccMonitor.refreshIntervalSec |
15 |
Periodic refresh interval |
ccMonitor.contextWindow |
0 (auto by model) |
Override model context window in tokens |
Commands
Claude Code Monitor: Refresh — force re-scan
Claude Code Monitor: Show Details — open a JSON dump of the current session snapshot
Development
npm install
npx tsc -w -p . # watch mode
# press F5 in VSCode to launch an extension-dev host
NODE_OPTIONS="--require $PWD/scripts/vsce-preload.js" npx @vscode/vsce package
On Node < 20, vsce's transitive undici needs a File polyfill — see scripts/vsce-preload.js.
License
MIT