Park
Snapshot the current session's work on a project/area before switching context. This is NOT end-of-day — just a context switch.
Uses $JOURNAL_PATH (defaults to ~/dev/status) for the daily log journal, and ~/.whisper/ for accumulated operational knowledge. The log subdirectory defaults to log/; set $JOURNAL_LOG_SUBDIR to override (e.g. areas/log for the JORNAL layout).
Steps
Get today's date and current time (
date +%Y-%m-%d,date +%H:%M).JOURNAL="${JOURNAL_PATH:-$HOME/dev/status}" LOG_SUBDIR="${JOURNAL_LOG_SUBDIR:-log}"Read today's log:
$JOURNAL/$LOG_SUBDIR/YYYY/YYYY-MM/YYYY-MM-DD.mdIf it doesn't exist, create it with the daily log template.Review the conversation history to determine:
- What project/area was being worked on
- What was accomplished in this session
- What the logical next step is
- Any new tasks, decisions, or blockers discovered
Append a session entry to today's log under
## Log:### Session:HH:MM (<project/area context>) - what was done - decisions made - **Next:** what to do when resumingUpdate the relevant project/area file if needed:
- Mark completed tasks
[x] - Add new tasks discovered during the session
- Add/update
[~]waiting items with context - Update
## Noteswith any decisions
- Mark completed tasks
If there are uncommitted changes in the project's git worktree, note them in the log entry.
Release any in-progress ticket claim if leaving mid-work. Check whether a ticket was claimed for this session:
BRANCH=$(git branch --show-current 2>/dev/null) bd list --status in_progress --label branch:$BRANCH 2>/dev/nullFor each in-progress ticket that is NOT complete:
- If meaningful work was committed: keep the claim and append a progress note:
bd note <id> "Session parked $(date +%H:%M). Done: <brief>. Safe to resume from: <last commit>." - If nothing was committed: release the claim so another agent can pick it up:
bd update <id> --assignee "" --status open
- If meaningful work was committed: keep the claim and append a progress note:
Record snapshot to
~/.whisper/. If~/.whisper/exists and a beads-epic is linked, append a note to the epic:repo_url=$(git remote get-url origin 2>/dev/null | sed 's|https://||;s|git@||;s|\.git$||') branch_slug=$(git rev-parse --abbrev-ref HEAD | sed 's|/|--|g') context_path=~/.whisper/repos/"${repo_url}"/branches/"${branch_slug}"/context.md beads_epic=$(grep '^beads-epic:' "$context_path" 2>/dev/null | sed 's/^beads-epic: *//') if [ -n "$beads_epic" ]; then bd note "$beads_epic" "Parked $(date +%H:%M). Done: <what was accomplished>. Next: <the logical continuation>." fiDo NOT commit/push the journal repo yet — that happens at
/close. Just write the files.
Output format
---
**Parked: <project/area name>**
**Session summary**
- what was accomplished
**Next step** *(for when you /renew)*
- the logical continuation
**Updated**
- files modified in status repo (log, project file, etc.)
*Ready to switch context. Use `/renew <slug>` to pick up something else.*
Rules
- Do NOT ask questions — summarize automatically from conversation context.
- Keep it brief — this is a quick snapshot, not a full report.
- Do NOT commit or push the journal repo.
- Do NOT run
/clear— the user may continue working in this session.