On this page
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:
Or install directly:
Full setup instructions at /setup/vscode.