--- name: kata-pause-work description: Create a context handoff file, pausing work mid-phase, stopping work temporarily, or creating a checkpoint for session resumption. Triggers include "pause work", "stop work", "create handoff", "save progress", and "pause session". metadata: version: "1.6.1" --- Create `.continue-here.md` handoff file to preserve complete work state across sessions. Enables seamless resumption in fresh session with full context restoration. @.planning/STATE.md Find current phase directory using universal discovery: ```bash # Get current phase from STATE.md CURRENT_PHASE=$(grep -oP 'Phase: \K[0-9]+' .planning/STATE.md 2>/dev/null | head -1) PADDED=$(printf "%02d" "$CURRENT_PHASE" 2>/dev/null || echo "$CURRENT_PHASE") PHASE_DIR="" for state in active pending completed; do PHASE_DIR=$(find .planning/phases/${state} -maxdepth 1 -type d -name "${PADDED}-*" 2>/dev/null | head -1) [ -z "$PHASE_DIR" ] && PHASE_DIR=$(find .planning/phases/${state} -maxdepth 1 -type d -name "${CURRENT_PHASE}-*" 2>/dev/null | head -1) [ -n "$PHASE_DIR" ] && break done # Fallback: flat directory (backward compatibility) if [ -z "$PHASE_DIR" ]; then PHASE_DIR=$(find .planning/phases -maxdepth 1 -type d -name "${PADDED}-*" 2>/dev/null | head -1) [ -z "$PHASE_DIR" ] && PHASE_DIR=$(find .planning/phases -maxdepth 1 -type d -name "${CURRENT_PHASE}-*" 2>/dev/null | head -1) fi ``` If universal discovery fails, fall back to most recently modified files. **Collect complete state for handoff:** 1. **Current position**: Which phase, which plan, which task 2. **Work completed**: What got done this session 3. **Work remaining**: What's left in current plan/phase 4. **Decisions made**: Key decisions and rationale 5. **Blockers/issues**: Anything stuck 6. **Mental context**: The approach, next steps, "vibe" 7. **Files modified**: What's changed but not committed Ask user for clarifications if needed. **Write handoff to `${PHASE_DIR}/.continue-here.md`:** ```markdown --- phase: XX-name task: 3 total_tasks: 7 status: in_progress last_updated: [timestamp] --- [Where exactly are we? Immediate context] - Task 1: [name] - Done - Task 2: [name] - Done - Task 3: [name] - In progress, [what's done] - Task 3: [what's left] - Task 4: Not started - Task 5: Not started - Decided to use [X] because [reason] - Chose [approach] over [alternative] because [reason] - [Blocker 1]: [status/workaround] [Mental state, what were you thinking, the plan] Start with: [specific first action when resuming] ``` Be specific enough for a fresh Claude to understand immediately. **Check planning config:** ```bash COMMIT_PLANNING_DOCS=$(cat .planning/config.json 2>/dev/null | grep -o '"commit_docs"[[:space:]]*:[[:space:]]*[^,}]*' | grep -o 'true\|false' || echo "true") git check-ignore -q .planning 2>/dev/null && COMMIT_PLANNING_DOCS=false ``` **If `COMMIT_PLANNING_DOCS=false`:** Skip git operations **If `COMMIT_PLANNING_DOCS=true` (default):** ```bash git add ${PHASE_DIR}/.continue-here.md git commit -m "wip: [phase-name] paused at task [X]/[Y]" ``` ``` ✓ Handoff created: ${PHASE_DIR}/.continue-here.md Current state: - Phase: [XX-name] - Task: [X] of [Y] - Status: [in_progress/blocked] - Committed as WIP To resume: /kata-resume-work ``` - [ ] .continue-here.md created in correct phase directory - [ ] All sections filled with specific content - [ ] Committed as WIP - [ ] User knows location and how to resume ```