Capture unfinished work, list parked items, or resume parked work. Use when the user says "park this", "save remaining tasks", "handoff", "what's parked", "resume parked work", "park done", "what's left to do", "save progress before clearing", or invokes /park.
Persist structured parked files so any future agent (in any session or worktree) can discover and resume work.
Inspect the subcommand argument and run the matching flow:
| Argument | Flow |
|---|---|
| (none) | Park — infer from context, draft, confirm, write |
"quoted text" or any text that isn't list/resume/done | Park — use text as title |
list | List — show all parked items |
resume | Resume — pick an item, create tasks, mark in-progress |
done or done <slug> | Done — mark a parked item completed |
This is often the last action before the user clears the session. Be aggressive about inferring — do not ask open-ended questions. One confirmation round max.
Run in parallel: git log --oneline -20, git diff --stat HEAD, git branch --show-current
Also:
parked_*.md files to avoid duplicates.claude/plans/*.md for recently modified files)Using the gathered context + conversation history, draft a complete parked file. If the user provided a summary string, use it as the title. Otherwise, infer a title from the work done.
Critical — capture things that won't survive context clear:
Present the draft to the user. If they say "yes", "looks good", "lgtm", or similar — write immediately. If they give corrections, apply and write. One round only.
Location: The project's memory directory (find it by looking for MEMORY.md in the .claude/projects/ tree).
Filename: parked_<slug>_<YYYYMMDD>.md where <slug> is a kebab-case version of the title.
If a file with a matching slug already exists (ignoring the date suffix), update it by default. Create a new one only if the user explicitly requests it.
File format:
---