VS Code Extension

Passive context capture for VS Code. Install it and forget about it - it builds a picture of your coding sessions automatically as you work.

What it is

The extension runs silently in the background whenever VS Code is open. It doesn't require any manual checkpoint saving - it observes what you're doing and writes activity signals to the local SQLite database. These signals make re-entry briefings richer and more accurate.

The extension is purely an input - it writes data but doesn't display UI by itself. The data it captures is consumed by the MCP server (for Claude Code), the CLI (for terminal commands), and the desktop tray.

What it captures

File activity

Which files you open, edit, and how often. This builds a list of "touched files" that appears in briefings.

Session timing

When your coding session starts and ends, and how long you actively edit. Used to calculate session duration and detect long gaps.

Active project

Which workspace is open and which git branch you're on. Used to scope checkpoint data correctly across worktrees.

Activity signals

Low-frequency heartbeat signals that indicate "this session is still active". Used by the daemon to track real-time momentum.

All data stays local. Nothing is sent to any server. The extension only writes to .keepgoing/ inside your project.

How it works

The extension uses VS Code's workspace and editor change APIs to observe activity. It debounces writes to avoid hammering disk on every keystroke. The activity is written to the same activity_signals table that Claude Code hooks and the CLI use - so all tools see a unified picture.

When you close VS Code, the extension writes a final session log entry marking the session end. This is what allows the briefing to say "last session: 2h 14m, ended 3 days ago".

Install

The easiest way is via the setup wizard:

keepgoing setup vscode

Or install directly:

code --install-extension keepgoing-dev.keepgoing

Full setup instructions at /setup/vscode.