* feat: add uncommitted planning mode Add config option to keep planning docs local-only (not committed to git). Useful for OSS contributions, client projects, or keeping planning private. Config options in .planning/config.json: - planning.commit_docs: true/false (default: true) - planning.search_gitignored: true/false (default: false) When commit_docs=false: - All git operations for .planning/ files are skipped - User should add .planning/ to .gitignore - Planning system works normally, just not tracked Updated files: - config.json template: added planning section - execute-plan.md: conditional git commits - execute-phase.md: conditional git commits - create-roadmap.md: conditional git commits - help.md: documented new config options - planning-config.md: reference doc for config behavior Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * feat: extend commit_docs check to all agents/commands/workflows Add COMMIT_PLANNING_DOCS config check to all files that commit .planning/ artifacts, ensuring consistent behavior when commit_docs=false is set in config.json. Updated: - 5 agents (planner, executor, debugger, phase-researcher, synthesizer) - 8 commands (add-todo, check-todos, execute-phase, new-milestone, pause-work, plan-milestone-gaps, remove-phase, research-project) - 7 workflows (complete-milestone, create-milestone, define-requirements, diagnose-issues, discuss-phase, map-codebase, verify-work) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * fix(progress): use Bash instead of Glob for .planning/ check Glob respects .gitignore, so projects with gitignored .planning/ directories would fail with "No planning structure found." Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * fix(new-milestone): integrate full research/requirements/roadmap flow Previously routed to non-existent /gsd:research-project and /gsd:define-requirements commands. Now handles the full flow inline like new-project does: - Phase 7: Research Decision (spawns 4 milestone-aware researchers) - Phase 8: Define Requirements (scopes features, creates REQUIREMENTS.md) - Phase 9: Create Roadmap (continues phase numbering from previous milestone) - Phase 10: Done Key adaptations for milestones: - Research focuses on NEW features only - Requirements add to existing, don't start fresh - Phase numbering continues from previous milestone Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
135 lines
2.8 KiB
Markdown
135 lines
2.8 KiB
Markdown
---
|
|
name: gsd:pause-work
|
|
description: Create context handoff when pausing work mid-phase
|
|
allowed-tools:
|
|
- Read
|
|
- Write
|
|
- Bash
|
|
---
|
|
|
|
<objective>
|
|
Create `.continue-here.md` handoff file to preserve complete work state across sessions.
|
|
|
|
Enables seamless resumption in fresh session with full context restoration.
|
|
</objective>
|
|
|
|
<context>
|
|
@.planning/STATE.md
|
|
</context>
|
|
|
|
<process>
|
|
|
|
<step name="detect">
|
|
Find current phase directory from most recently modified files.
|
|
</step>
|
|
|
|
<step name="gather">
|
|
**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.
|
|
</step>
|
|
|
|
<step name="write">
|
|
**Write handoff to `.planning/phases/XX-name/.continue-here.md`:**
|
|
|
|
```markdown
|
|
---
|
|
phase: XX-name
|
|
task: 3
|
|
total_tasks: 7
|
|
status: in_progress
|
|
last_updated: [timestamp]
|
|
---
|
|
|
|
<current_state>
|
|
[Where exactly are we? Immediate context]
|
|
</current_state>
|
|
|
|
<completed_work>
|
|
|
|
- Task 1: [name] - Done
|
|
- Task 2: [name] - Done
|
|
- Task 3: [name] - In progress, [what's done]
|
|
</completed_work>
|
|
|
|
<remaining_work>
|
|
|
|
- Task 3: [what's left]
|
|
- Task 4: Not started
|
|
- Task 5: Not started
|
|
</remaining_work>
|
|
|
|
<decisions_made>
|
|
|
|
- Decided to use [X] because [reason]
|
|
- Chose [approach] over [alternative] because [reason]
|
|
</decisions_made>
|
|
|
|
<blockers>
|
|
- [Blocker 1]: [status/workaround]
|
|
</blockers>
|
|
|
|
<context>
|
|
[Mental state, what were you thinking, the plan]
|
|
</context>
|
|
|
|
<next_action>
|
|
Start with: [specific first action when resuming]
|
|
</next_action>
|
|
```
|
|
|
|
Be specific enough for a fresh Claude to understand immediately.
|
|
</step>
|
|
|
|
<step name="commit">
|
|
**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 .planning/phases/*/.continue-here.md
|
|
git commit -m "wip: [phase-name] paused at task [X]/[Y]"
|
|
```
|
|
</step>
|
|
|
|
<step name="confirm">
|
|
```
|
|
✓ Handoff created: .planning/phases/[XX-name]/.continue-here.md
|
|
|
|
Current state:
|
|
|
|
- Phase: [XX-name]
|
|
- Task: [X] of [Y]
|
|
- Status: [in_progress/blocked]
|
|
- Committed as WIP
|
|
|
|
To resume: /gsd:resume-work
|
|
|
|
```
|
|
</step>
|
|
|
|
</process>
|
|
|
|
<success_criteria>
|
|
- [ ] .continue-here.md created in correct phase directory
|
|
- [ ] All sections filled with specific content
|
|
- [ ] Committed as WIP
|
|
- [ ] User knows location and how to resume
|
|
</success_criteria>
|
|
```
|