Skip to content
| Marketplace
Sign in
Visual Studio Code>Visualization>Context Watch for Claude CodeNew to Visual Studio Code? Get it now.
Context Watch for Claude Code

Context Watch for Claude Code

Tai Nguyen Xuan

| (0) | Free
See the context window of every Claude Code session on your machine, plus the quota they burn together, in a sidebar panel and the status bar.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Context Watch for Claude Code

See the context window and the token burn of every Claude Code session on your machine, in one VS Code sidebar panel.

Unofficial community extension. Not affiliated with or endorsed by Anthropic.

Context Watch panel beside a Claude Code session

Why it exists

The desktop app loads its own tool surface into every session, and you pay for that before you type a word. Measured on this machine across 11 sessions (18–20 Sep 2026), the context floor — what is already in the window at the first assistant turn — ran 107,452 to 124,902 tokens, median 117,737. A floor is not paid once. It sits underneath every later turn of that session as cache read, so it is the one number that multiplies by everything else you do.

Opening the same project through the VS Code extension instead: 70,623. Same repo, same CLAUDE.md, same day, only the client changed — 36,829 tokens lighter, a third of the floor gone, on every turn of the session.

That move has a price, and this repo is the price. The app's context view stays in the app, and the custom statusline does not render inside the extension pane — so the number you switched clients to lower is exactly the number you can no longer see. Context Watch gives it back from outside any client, and gives back more than was lost: not one window, but every session on the machine.

  • Which window is about to run out of context. /context answers for the window you are typing in, and only when you stop and ask it. The others say nothing until one of them silently auto-compacts in the middle of a task you cared about.
  • What all of them together are doing to your quota. Claude Code never adds spend up across sessions. A subagent fan-out in a window you are not watching can drain a 5-hour quota while you are away from the keyboard — and afterwards nothing tells you which window did it.

Both, refreshed every 5 seconds, in a panel you park beside your work.

What you get

  • A Context Watch panel with its own icon on the Activity Bar. One card per session: the name the Claude Code tab shows, tokens in context, % of the model's window, and whether the session is busy, live or closed. Drag the panel to the secondary sidebar to keep it beside your editor.
  • A status bar item with the % context of the live session in the current workspace. It turns yellow at 75% and red at 90%. Click it to open the panel. The panel opens by itself after install; later, run Context Watch: Show Sessions from the Command Palette if the Activity Bar is hidden.
  • A burn line: quota used on this machine in the last 5 hours and 10 minutes, across all sessions and their subagents, deduplicated per API request.

Privacy

Context Watch reads local files only and sends nothing over the network. It has no telemetry and no network code. It reads, without modifying:

  • ~/.claude/projects/**/*.jsonl (session transcripts: token usage and tab titles only)
  • ~/.claude/sessions/*.json (which sessions are running)

It works in Claude Code from the VS Code extension, the CLI, and the desktop app, since they all write these files. In a Remote (SSH / WSL / container) window it reads the remote machine's files, which is where Claude Code runs.

Settings

Setting Default
ctxWatch.refreshSeconds 5 How often to re-read session files.
ctxWatch.recentMinutes 30 How long closed sessions stay listed. Live sessions are always shown.
ctxWatch.contextWindows {} Window size per model, prefix match, e.g. { "claude-sonnet-5": 1000000 }.
ctxWatch.showBurn true Show the burn line.
ctxWatch.statusBar true Show the status bar item.
ctxWatch.claudeDir "" Data directory. Empty = $CLAUDE_CONFIG_DIR, else ~/.claude.

Context window sizes

Built in: claude-opus-5* = 1M, claude-haiku-4-5* = 200k. Any other model shows window ? instead of a guessed percentage; add it to ctxWatch.contextWindows to get a bar.

How burn is counted

Tokens are weighted as input-equivalents: input ×1, cache write ×2, cache read ×0.1, output ×5. The line turns yellow above 1M in 10 minutes and red above 3M.

Limits

Context Watch reads Claude Code's internal file formats, which are undocumented and can change in any Claude Code release. If the panel goes empty after an update, please open an issue. Errors are logged to the Context Watch output channel.

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft