Park and Pickup
How I solved the 'where was I?' problem with Claude Code
Session continuity for Claude Code + Obsidian. Park captures open loops, pickup restores context. No more 'where was I?'
The Problem: Mental Residue
You’re deep in a session. Making progress. Then you have to stop - dinner, meeting, bedtime. “I’ll pick this up tomorrow.”
Tomorrow comes. You open your terminal. “Where was I?”
You scan recent files. Check git history. Try to reconstruct where you were. 5-10 minutes wasted. Sometimes longer if you were mid-something complex.
Worse: if you don’t trust you’ll remember, you keep working past optimal stopping time. Just one more thing. The work expands because the handoff is broken.
Cal Newport calls this mental residue โ the cognitive load of incomplete tasks your mind keeps running in the background. You can’t truly rest because some part of your brain is holding onto “remember to…”
The Solution: Park and Pickup
The core insight: separate parking from pickup.
Parking (/park)
When you type /park, Claude:
- Detects overhead tier - quick sessions get a one-line log, deep sessions get full documentation
- Auto-lints modified files (spelling, broken links, inconsistent terminology)
- Generates session summary - what was accomplished, key decisions, open loops
- Archives to a dated session file
- Updates Works in Progress with project status
- Displays “Shutdown complete. You can rest.”
The session summary follows a structured format:
## Session 2 - Feature Implementation (9:40am-10:30am)
### Summary
[2-4 sentence narrative]
### Next Steps / Open Loops
- [ ] Specific actionable item 1
- [ ] Specific actionable item 2
### Pickup Context
**For next session:** [One sentence about where to start]
That “Shutdown complete. You can rest.” line does something psychologically. It’s permission to let go. The system has it. Your brain can release the mental residue.
Pickup (/pickup)
When you type /pickup, you see:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Recent Sessions (By Project) โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฃ
โ 1. Claude Code Learning (3 sessions, 2 loops) โ
โ 2. NAS Migration (2 sessions, 1 loop) โ ๏ธโ
โ 3. Tab Management - Thu 16 Jan 7:23pm โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Sessions sharing a project are grouped together. Aged loop warnings surface stale items (โ ๏ธ = 7+ days, no emoji means fresh). Select one, get full context, open loops, and immediately know where to start.
Zero “where was I?” friction.
Daily Rhythm and Extended Breaks
/park handles individual sessions. These commands build on top:
/morning - surface the landscape, catch gaps, set intention for the day. /afternoon - zoom out, check drift, reprioritise remaining time. /goodnight - inventory all open loops, set tomorrow’s queue, close the day cleanly.
/hibernate - comprehensive state snapshot before extended breaks (travel, sabbatical). /awaken - interactive context restoration when you return. Bridges the gap between sessions and months-long breaks.
/complete-project - formally close and archive a project. Prevents zombie projects lingering in Works in Progress.
This creates nested temporal structure: sessions โ days โ weeks. Park and pickup is the foundation layer.
Implementation notes
Command Structure
Commands live in .claude/commands/ as markdown files with YAML frontmatter:
---
name: park
aliases: [shutdown-complete]
description: End session with shutdown complete
---
The command file contains instructions to Claude about what to do when invoked.
Session File Location
Sessions archive to 06 Archive/Claude Sessions/YYYY-MM-DD.md. Multiple sessions per day stack chronologically. Sessions link forward and backward - “What led to this?” click back, “What came after?” click forward.
Tiered Overhead
Quick (< 5 min, no file changes): one-line log, ~5 seconds. Standard (5-45 min, few files): summary + open loops, ~30 seconds. Full (45+ min, many files): comprehensive documentation, ~90 seconds.
Cue Word Detection
Natural language triggers: “bedtime”, “wrapping up”, “done for tonight”, “park”. You don’t have to remember the slash command.
Safety
- NAS mount verification before writing
- File locking for concurrent Claude instances
- Bidirectional session linking (forward + backward)
- Idempotent - won’t add duplicate links on re-park
Shell Alias
alias claudesidian='cd /path/to/vault && claude'
One command, zero navigation.
Series: Claude Code + Obsidian
- Introduction โ the concept and why it matters
- Vault and Structure โ organising your files
- Context Navigation โ how the AI finds what it needs
- Park and Pickup (this post) โ session continuity