Context Handoff
Park your mental context — open files, cursor positions, and a note — then restore it exactly where you left off.
The Problem
It's 5pm. You're mid-refactor on UserService.ts. You have 7 files open, your cursor is at line 247, and you know exactly what needs to happen next. Tomorrow morning: blank screen. You spend 20 minutes just figuring out where you were.
Or: a teammate asks you to context-switch to review their PR. You lose your entire train of thought.
What It Does
Context Handoff lets you "park" your current state: open editors, cursor positions, and a freeform note about what you were doing and what's next. When you return, one command restores everything exactly as you left it.
Features
- Park context — saves all open files + cursor positions + your note in one action
- Restore context — reopens all your files at exactly the right positions
- Quick picker — shows all saved contexts with labels and timestamps
- Panel view — browse, read notes from, and delete saved contexts
- Auto-eviction — keeps only the last N contexts (configurable) to avoid clutter
- Keyboard shortcuts — park and restore without touching the mouse
- Shareable — context files are plain JSON in
.vscode/context-handoffs/
Getting Started
To park your context:
- Press
Cmd+Shift+P Cmd+Shift+S (or run Context Handoff: Park Context)
- Enter a label:
"Fixing auth bug — mid-refactor"
- Enter a note (optional):
"Next: extract TokenValidator into its own class, then update tests"
- Done — your context is saved
To restore your context:
- Press
Cmd+Shift+P Cmd+Shift+R (or run Context Handoff: Restore Context)
- Select your context from the list
- All your files reopen at the right positions
Commands
| Command |
Shortcut |
Description |
Context Handoff: Park Context |
Cmd+Shift+P Cmd+Shift+S |
Save current editors + note |
Context Handoff: Restore Context |
Cmd+Shift+P Cmd+Shift+R |
Pick a saved context to restore |
Context Handoff: List Saved Contexts |
— |
Open the panel to browse all contexts |
Context Handoff: Delete Context |
— |
Delete a context by ID |
Configuration
| Setting |
Default |
Description |
contextHandoff.storageFolder |
.vscode/context-handoffs |
Where context snapshots are stored |
contextHandoff.maxSaved |
20 |
Maximum saved contexts (oldest evicted when exceeded) |
What Gets Saved
{
"id": "uuid",
"label": "Fixing auth bug — mid-refactor",
"note": "Next: extract TokenValidator into its own class, then update tests",
"savedAt": "2026-07-12T17:30:00.000Z",
"editors": [
{ "filePath": "/project/src/auth/UserService.ts", "line": 247, "character": 8 },
{ "filePath": "/project/src/auth/TokenService.ts", "line": 89, "character": 0 },
{ "filePath": "/project/src/auth/auth.test.ts", "line": 12, "character": 0 }
]
}
Tips
- End-of-day ritual: Park your context before you close VS Code
- Task switching: Park → switch to the urgent task → restore when done
- Team handoffs: Share the
.vscode/context-handoffs/ folder for pair programming or async handoffs
- The note is the key feature — write exactly what you were about to do next, not just what you were doing