get-shit-done-cc 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +192 -0
- package/bin/install.js +53 -0
- package/commands/gsd/add-phase.md +201 -0
- package/commands/gsd/complete-milestone.md +105 -0
- package/commands/gsd/discuss-milestone.md +45 -0
- package/commands/gsd/discuss-phase.md +47 -0
- package/commands/gsd/execute-plan.md +108 -0
- package/commands/gsd/help.md +252 -0
- package/commands/gsd/insert-phase.md +218 -0
- package/commands/gsd/list-phase-assumptions.md +49 -0
- package/commands/gsd/new-milestone.md +58 -0
- package/commands/gsd/new-project.md +177 -0
- package/commands/gsd/pause-work.md +123 -0
- package/commands/gsd/plan-phase.md +60 -0
- package/commands/gsd/progress.md +182 -0
- package/commands/gsd/resume-work.md +50 -0
- package/get-shit-done/references/checkpoints.md +594 -0
- package/get-shit-done/references/cli-automation.md +527 -0
- package/get-shit-done/references/git-integration.md +126 -0
- package/get-shit-done/references/plan-format.md +397 -0
- package/get-shit-done/references/principles.md +97 -0
- package/get-shit-done/references/questioning.md +138 -0
- package/get-shit-done/references/research-pitfalls.md +215 -0
- package/get-shit-done/references/scope-estimation.md +451 -0
- package/get-shit-done/templates/config.json +17 -0
- package/get-shit-done/templates/context.md +385 -0
- package/get-shit-done/templates/continue-here.md +78 -0
- package/get-shit-done/templates/issues.md +32 -0
- package/get-shit-done/templates/milestone-archive.md +123 -0
- package/get-shit-done/templates/milestone.md +115 -0
- package/get-shit-done/templates/phase-prompt.md +290 -0
- package/get-shit-done/templates/project.md +207 -0
- package/get-shit-done/templates/research-prompt.md +133 -0
- package/get-shit-done/templates/roadmap.md +196 -0
- package/get-shit-done/templates/state.md +226 -0
- package/get-shit-done/templates/summary.md +200 -0
- package/get-shit-done/workflows/complete-milestone.md +490 -0
- package/get-shit-done/workflows/create-milestone.md +379 -0
- package/get-shit-done/workflows/create-roadmap.md +443 -0
- package/get-shit-done/workflows/discuss-milestone.md +144 -0
- package/get-shit-done/workflows/discuss-phase.md +254 -0
- package/get-shit-done/workflows/execute-phase.md +1261 -0
- package/get-shit-done/workflows/list-phase-assumptions.md +178 -0
- package/get-shit-done/workflows/plan-phase.md +783 -0
- package/get-shit-done/workflows/research-phase.md +293 -0
- package/get-shit-done/workflows/resume-project.md +248 -0
- package/get-shit-done/workflows/transition.md +488 -0
- package/package.json +30 -0
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Initialize a new project with deep context gathering, PROJECT.md, roadmap, and state tracking
|
|
3
|
+
allowed-tools:
|
|
4
|
+
- Read
|
|
5
|
+
- Bash
|
|
6
|
+
- Write
|
|
7
|
+
- AskUserQuestion
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
<!--
|
|
11
|
+
DESIGN NOTE: Command + Workflow Pattern
|
|
12
|
+
|
|
13
|
+
This command handles the questioning phase directly (user interaction intensive),
|
|
14
|
+
then delegates roadmap/state creation to the create-roadmap workflow.
|
|
15
|
+
|
|
16
|
+
Architecture:
|
|
17
|
+
- Command: new-project.md - questioning, PROJECT.md, config.json
|
|
18
|
+
- Workflow: create-roadmap.md - domain detection, research flags, ROADMAP.md, STATE.md
|
|
19
|
+
-->
|
|
20
|
+
|
|
21
|
+
<objective>
|
|
22
|
+
Initialize a new project through comprehensive context gathering.
|
|
23
|
+
|
|
24
|
+
This is the most leveraged moment in any project. Deep questioning here means better plans, better execution, better outcomes.
|
|
25
|
+
|
|
26
|
+
Creates `.planning/` with PROJECT.md, ROADMAP.md, STATE.md, and config.json.
|
|
27
|
+
</objective>
|
|
28
|
+
|
|
29
|
+
<execution_context>
|
|
30
|
+
@~/.claude/get-shit-done/workflows/create-roadmap.md
|
|
31
|
+
@~/.claude/get-shit-done/references/principles.md
|
|
32
|
+
@~/.claude/get-shit-done/references/questioning.md
|
|
33
|
+
@~/.claude/get-shit-done/templates/project.md
|
|
34
|
+
@~/.claude/get-shit-done/templates/config.json
|
|
35
|
+
</execution_context>
|
|
36
|
+
|
|
37
|
+
<context>
|
|
38
|
+
!`[ -d .planning ] && echo "PLANNING_EXISTS" || echo "NO_PLANNING"`
|
|
39
|
+
!`[ -d .git ] && echo "GIT_EXISTS" || echo "NO_GIT"`
|
|
40
|
+
</context>
|
|
41
|
+
|
|
42
|
+
<process>
|
|
43
|
+
|
|
44
|
+
<step name="setup" silent="true">
|
|
45
|
+
Silent setup - execute before any user output:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
# Abort if project exists
|
|
49
|
+
[ -d .planning ] && echo "Project already initialized. Use /gsd:progress" && exit 1
|
|
50
|
+
|
|
51
|
+
# Initialize git
|
|
52
|
+
[ -d .git ] || git init
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
</step>
|
|
56
|
+
|
|
57
|
+
<step name="question">
|
|
58
|
+
Start: "What do you want to build?"
|
|
59
|
+
|
|
60
|
+
Then use AskUserQuestion to cover the 9 domains (project type, problem, audience, success, constraints, scope, current state, decisions, open questions).
|
|
61
|
+
|
|
62
|
+
Skip domains already clear from user input. Probe for specifics on vague answers.
|
|
63
|
+
|
|
64
|
+
**Decision gate (MUST have all 3 options):**
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
Header: "Ready?"
|
|
68
|
+
Options:
|
|
69
|
+
1. "Create PROJECT.md" - Finalize
|
|
70
|
+
2. "Ask more questions" - Dig into uncovered domains
|
|
71
|
+
3. "Let me add context" - User shares more
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
If "Ask more questions" → ask about 2-3 uncovered domains → return to gate.
|
|
75
|
+
Loop until "Create PROJECT.md" selected.
|
|
76
|
+
</step>
|
|
77
|
+
|
|
78
|
+
<step name="project">
|
|
79
|
+
Synthesize all context into `.planning/PROJECT.md` using the template from `templates/project.md`.
|
|
80
|
+
|
|
81
|
+
Do not compress. Capture everything gathered.
|
|
82
|
+
</step>
|
|
83
|
+
|
|
84
|
+
<step name="mode">
|
|
85
|
+
Ask workflow mode preference:
|
|
86
|
+
|
|
87
|
+
Use AskUserQuestion:
|
|
88
|
+
|
|
89
|
+
- header: "Mode"
|
|
90
|
+
- question: "How do you want to work?"
|
|
91
|
+
- options:
|
|
92
|
+
- "Interactive" - Confirm at each step
|
|
93
|
+
- "YOLO" - Auto-approve, just execute
|
|
94
|
+
|
|
95
|
+
Create `.planning/config.json` with chosen mode using `templates/config.json` structure.
|
|
96
|
+
</step>
|
|
97
|
+
|
|
98
|
+
<step name="roadmap_and_state">
|
|
99
|
+
**Follow the create-roadmap workflow** from `@~/.claude/get-shit-done/workflows/create-roadmap.md`.
|
|
100
|
+
|
|
101
|
+
This handles:
|
|
102
|
+
|
|
103
|
+
1. Domain expertise detection (scan for applicable skills)
|
|
104
|
+
2. Phase identification (3-6 phases based on PROJECT.md)
|
|
105
|
+
3. Research needs detection (flag phases needing investigation)
|
|
106
|
+
4. Phase confirmation (respects yolo/interactive mode)
|
|
107
|
+
5. ROADMAP.md creation with research flags
|
|
108
|
+
6. STATE.md initialization
|
|
109
|
+
7. Phase directory creation
|
|
110
|
+
|
|
111
|
+
The workflow will create:
|
|
112
|
+
|
|
113
|
+
- `.planning/ROADMAP.md`
|
|
114
|
+
- `.planning/STATE.md`
|
|
115
|
+
- `.planning/phases/XX-name/` directories
|
|
116
|
+
</step>
|
|
117
|
+
|
|
118
|
+
<step name="commit">
|
|
119
|
+
```bash
|
|
120
|
+
git add .planning/
|
|
121
|
+
git commit -m "$(cat <<'EOF'
|
|
122
|
+
docs: initialize [project-name] ([N] phases)
|
|
123
|
+
|
|
124
|
+
[One-liner from PROJECT.md]
|
|
125
|
+
|
|
126
|
+
Phases:
|
|
127
|
+
|
|
128
|
+
1. [phase-name]: [goal]
|
|
129
|
+
2. [phase-name]: [goal]
|
|
130
|
+
3. [phase-name]: [goal]
|
|
131
|
+
EOF
|
|
132
|
+
)"
|
|
133
|
+
|
|
134
|
+
```
|
|
135
|
+
</step>
|
|
136
|
+
|
|
137
|
+
<step name="done">
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
Project initialized:
|
|
141
|
+
|
|
142
|
+
- Project: .planning/PROJECT.md
|
|
143
|
+
- Roadmap: .planning/ROADMAP.md ([N] phases)
|
|
144
|
+
- State: .planning/STATE.md
|
|
145
|
+
- Config: .planning/config.json (mode: [chosen mode])
|
|
146
|
+
|
|
147
|
+
What's next?
|
|
148
|
+
|
|
149
|
+
1. Plan Phase 1 (/gsd:plan-phase 01)
|
|
150
|
+
2. Review project setup
|
|
151
|
+
3. Done for now
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
If user selects "Plan Phase 1" → invoke `/gsd:plan-phase 01`
|
|
156
|
+
</step>
|
|
157
|
+
|
|
158
|
+
</process>
|
|
159
|
+
|
|
160
|
+
<output>
|
|
161
|
+
- `.planning/PROJECT.md`
|
|
162
|
+
- `.planning/ROADMAP.md`
|
|
163
|
+
- `.planning/STATE.md`
|
|
164
|
+
- `.planning/config.json`
|
|
165
|
+
- `.planning/phases/XX-name/` directories
|
|
166
|
+
</output>
|
|
167
|
+
|
|
168
|
+
<success_criteria>
|
|
169
|
+
- [ ] Deep questioning completed (not rushed)
|
|
170
|
+
- [ ] PROJECT.md captures full context
|
|
171
|
+
- [ ] config.json has workflow mode
|
|
172
|
+
- [ ] ROADMAP.md has 3-6 phases with research flags
|
|
173
|
+
- [ ] STATE.md initialized with project summary
|
|
174
|
+
- [ ] Phase directories created
|
|
175
|
+
- [ ] All committed to git
|
|
176
|
+
</success_criteria>
|
|
177
|
+
```
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Create context handoff when pausing work mid-phase
|
|
3
|
+
allowed-tools:
|
|
4
|
+
- Read
|
|
5
|
+
- Write
|
|
6
|
+
- Bash
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
<objective>
|
|
10
|
+
Create `.continue-here.md` handoff file to preserve complete work state across sessions.
|
|
11
|
+
|
|
12
|
+
Enables seamless resumption in fresh session with full context restoration.
|
|
13
|
+
</objective>
|
|
14
|
+
|
|
15
|
+
<context>
|
|
16
|
+
@.planning/STATE.md
|
|
17
|
+
Current phase: !`ls -lt .planning/phases/*/*.md 2>/dev/null | head -1`
|
|
18
|
+
</context>
|
|
19
|
+
|
|
20
|
+
<process>
|
|
21
|
+
|
|
22
|
+
<step name="detect">
|
|
23
|
+
Find current phase directory from most recently modified files.
|
|
24
|
+
</step>
|
|
25
|
+
|
|
26
|
+
<step name="gather">
|
|
27
|
+
**Collect complete state for handoff:**
|
|
28
|
+
|
|
29
|
+
1. **Current position**: Which phase, which plan, which task
|
|
30
|
+
2. **Work completed**: What got done this session
|
|
31
|
+
3. **Work remaining**: What's left in current plan/phase
|
|
32
|
+
4. **Decisions made**: Key decisions and rationale
|
|
33
|
+
5. **Blockers/issues**: Anything stuck
|
|
34
|
+
6. **Mental context**: The approach, next steps, "vibe"
|
|
35
|
+
7. **Files modified**: What's changed but not committed
|
|
36
|
+
|
|
37
|
+
Ask user for clarifications if needed.
|
|
38
|
+
</step>
|
|
39
|
+
|
|
40
|
+
<step name="write">
|
|
41
|
+
**Write handoff to `.planning/phases/XX-name/.continue-here.md`:**
|
|
42
|
+
|
|
43
|
+
```markdown
|
|
44
|
+
---
|
|
45
|
+
phase: XX-name
|
|
46
|
+
task: 3
|
|
47
|
+
total_tasks: 7
|
|
48
|
+
status: in_progress
|
|
49
|
+
last_updated: [timestamp]
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
<current_state>
|
|
53
|
+
[Where exactly are we? Immediate context]
|
|
54
|
+
</current_state>
|
|
55
|
+
|
|
56
|
+
<completed_work>
|
|
57
|
+
|
|
58
|
+
- Task 1: [name] - Done
|
|
59
|
+
- Task 2: [name] - Done
|
|
60
|
+
- Task 3: [name] - In progress, [what's done]
|
|
61
|
+
</completed_work>
|
|
62
|
+
|
|
63
|
+
<remaining_work>
|
|
64
|
+
|
|
65
|
+
- Task 3: [what's left]
|
|
66
|
+
- Task 4: Not started
|
|
67
|
+
- Task 5: Not started
|
|
68
|
+
</remaining_work>
|
|
69
|
+
|
|
70
|
+
<decisions_made>
|
|
71
|
+
|
|
72
|
+
- Decided to use [X] because [reason]
|
|
73
|
+
- Chose [approach] over [alternative] because [reason]
|
|
74
|
+
</decisions_made>
|
|
75
|
+
|
|
76
|
+
<blockers>
|
|
77
|
+
- [Blocker 1]: [status/workaround]
|
|
78
|
+
</blockers>
|
|
79
|
+
|
|
80
|
+
<context>
|
|
81
|
+
[Mental state, what were you thinking, the plan]
|
|
82
|
+
</context>
|
|
83
|
+
|
|
84
|
+
<next_action>
|
|
85
|
+
Start with: [specific first action when resuming]
|
|
86
|
+
</next_action>
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Be specific enough for a fresh Claude to understand immediately.
|
|
90
|
+
</step>
|
|
91
|
+
|
|
92
|
+
<step name="commit">
|
|
93
|
+
```bash
|
|
94
|
+
git add .planning/phases/*/.continue-here.md
|
|
95
|
+
git commit -m "wip: [phase-name] paused at task [X]/[Y]"
|
|
96
|
+
```
|
|
97
|
+
</step>
|
|
98
|
+
|
|
99
|
+
<step name="confirm">
|
|
100
|
+
```
|
|
101
|
+
✓ Handoff created: .planning/phases/[XX-name]/.continue-here.md
|
|
102
|
+
|
|
103
|
+
Current state:
|
|
104
|
+
|
|
105
|
+
- Phase: [XX-name]
|
|
106
|
+
- Task: [X] of [Y]
|
|
107
|
+
- Status: [in_progress/blocked]
|
|
108
|
+
- Committed as WIP
|
|
109
|
+
|
|
110
|
+
To resume: /gsd:resume-work
|
|
111
|
+
|
|
112
|
+
```
|
|
113
|
+
</step>
|
|
114
|
+
|
|
115
|
+
</process>
|
|
116
|
+
|
|
117
|
+
<success_criteria>
|
|
118
|
+
- [ ] .continue-here.md created in correct phase directory
|
|
119
|
+
- [ ] All sections filled with specific content
|
|
120
|
+
- [ ] Committed as WIP
|
|
121
|
+
- [ ] User knows location and how to resume
|
|
122
|
+
</success_criteria>
|
|
123
|
+
```
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Create detailed execution plan for a phase (PLAN.md)
|
|
3
|
+
argument-hint: "[phase]"
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Bash
|
|
7
|
+
- Write
|
|
8
|
+
- Glob
|
|
9
|
+
- Grep
|
|
10
|
+
- AskUserQuestion
|
|
11
|
+
- WebFetch
|
|
12
|
+
- mcp__context7__*
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
<objective>
|
|
16
|
+
Create executable phase prompt with discovery, context injection, and task breakdown.
|
|
17
|
+
|
|
18
|
+
Purpose: Break down roadmap phases into concrete, executable PLAN.md files that Claude can execute.
|
|
19
|
+
Output: One or more PLAN.md files in the phase directory (.planning/phases/XX-name/{phase}-{plan}-PLAN.md)
|
|
20
|
+
</objective>
|
|
21
|
+
|
|
22
|
+
<execution_context>
|
|
23
|
+
@~/.claude/get-shit-done/workflows/plan-phase.md
|
|
24
|
+
@~/.claude/get-shit-done/templates/phase-prompt.md
|
|
25
|
+
@~/.claude/get-shit-done/references/plan-format.md
|
|
26
|
+
@~/.claude/get-shit-done/references/scope-estimation.md
|
|
27
|
+
@~/.claude/get-shit-done/references/checkpoints.md
|
|
28
|
+
@~/.claude/get-shit-done/references/cli-automation.md
|
|
29
|
+
</execution_context>
|
|
30
|
+
|
|
31
|
+
<context>
|
|
32
|
+
Phase number: $ARGUMENTS (optional - auto-detects next unplanned phase if not provided)
|
|
33
|
+
|
|
34
|
+
**Load project state first:**
|
|
35
|
+
@.planning/STATE.md
|
|
36
|
+
|
|
37
|
+
**Load roadmap:**
|
|
38
|
+
@.planning/ROADMAP.md
|
|
39
|
+
</context>
|
|
40
|
+
|
|
41
|
+
<process>
|
|
42
|
+
1. Check .planning/ directory exists (error if not - user should run /gsd:new-project)
|
|
43
|
+
2. If phase number provided via $ARGUMENTS, validate it exists in roadmap
|
|
44
|
+
3. If no phase number, detect next unplanned phase from roadmap
|
|
45
|
+
4. Follow plan-phase.md workflow:
|
|
46
|
+
- Load project state and accumulated decisions
|
|
47
|
+
- Perform mandatory discovery (Level 0-3 as appropriate)
|
|
48
|
+
- Read project history (prior decisions, issues, concerns)
|
|
49
|
+
- Break phase into tasks
|
|
50
|
+
- Estimate scope and split into multiple plans if needed
|
|
51
|
+
- Create PLAN.md file(s) with executable structure
|
|
52
|
+
</process>
|
|
53
|
+
|
|
54
|
+
<success_criteria>
|
|
55
|
+
|
|
56
|
+
- One or more PLAN.md files created in .planning/phases/XX-name/
|
|
57
|
+
- Each plan has: objective, execution_context, context, tasks, verification, success_criteria, output
|
|
58
|
+
- Tasks are specific enough for Claude to execute
|
|
59
|
+
- User knows next steps (execute plan or review/adjust)
|
|
60
|
+
</success_criteria>
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Check project progress, show context, and route to next action (execute or plan)
|
|
3
|
+
allowed-tools:
|
|
4
|
+
- Read
|
|
5
|
+
- Bash
|
|
6
|
+
- Grep
|
|
7
|
+
- Glob
|
|
8
|
+
- SlashCommand
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
<objective>
|
|
12
|
+
Check project progress, summarize recent work and what's ahead, then intelligently route to the next action - either executing an existing plan or creating the next one.
|
|
13
|
+
|
|
14
|
+
Provides situational awareness before continuing work.
|
|
15
|
+
</objective>
|
|
16
|
+
|
|
17
|
+
<context>
|
|
18
|
+
Planning structure: !`ls -la .planning/ 2>/dev/null || echo "NO_PLANNING_STRUCTURE"`
|
|
19
|
+
Phases: !`ls .planning/phases/ 2>/dev/null || echo "NO_PHASES"`
|
|
20
|
+
State exists: !`[ -f .planning/STATE.md ] && echo "EXISTS" || echo "MISSING"`
|
|
21
|
+
Roadmap exists: !`[ -f .planning/ROADMAP.md ] && echo "EXISTS" || echo "MISSING"`
|
|
22
|
+
Recent summaries: !`find .planning/phases -name "*-SUMMARY.md" -type f 2>/dev/null | sort | tail -3`
|
|
23
|
+
All plans: !`find .planning/phases -name "*-PLAN.md" -type f 2>/dev/null | sort`
|
|
24
|
+
All summaries: !`find .planning/phases -name "*-SUMMARY.md" -type f 2>/dev/null | sort`
|
|
25
|
+
</context>
|
|
26
|
+
|
|
27
|
+
<process>
|
|
28
|
+
|
|
29
|
+
<step name="verify">
|
|
30
|
+
**Verify planning structure exists:**
|
|
31
|
+
|
|
32
|
+
If no `.planning/` directory:
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
No planning structure found.
|
|
36
|
+
|
|
37
|
+
Run /gsd:new-project to start a new project.
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Exit.
|
|
41
|
+
|
|
42
|
+
If missing STATE.md or ROADMAP.md: inform what's missing, suggest running `/gsd:new-project`.
|
|
43
|
+
</step>
|
|
44
|
+
|
|
45
|
+
<step name="load">
|
|
46
|
+
**Load full project context:**
|
|
47
|
+
|
|
48
|
+
- Read `.planning/STATE.md` for living memory (position, decisions, issues)
|
|
49
|
+
- Read `.planning/ROADMAP.md` for phase structure and objectives
|
|
50
|
+
- Read `.planning/PROJECT.md` for project vision (brief summary only)
|
|
51
|
+
</step>
|
|
52
|
+
|
|
53
|
+
<step name="recent">
|
|
54
|
+
**Gather recent work context:**
|
|
55
|
+
|
|
56
|
+
- Find the 2-3 most recent SUMMARY.md files
|
|
57
|
+
- Extract from each: what was accomplished, key decisions, any issues logged
|
|
58
|
+
- This shows "what we've been working on"
|
|
59
|
+
</step>
|
|
60
|
+
|
|
61
|
+
<step name="position">
|
|
62
|
+
**Parse current position:**
|
|
63
|
+
|
|
64
|
+
- From STATE.md: current phase, plan number, status
|
|
65
|
+
- Calculate: total plans, completed plans, remaining plans
|
|
66
|
+
- Note any blockers, concerns, or deferred issues
|
|
67
|
+
- Check for CONTEXT.md: For phases without PLAN.md files, check if `{phase}-CONTEXT.md` exists in phase directory
|
|
68
|
+
</step>
|
|
69
|
+
|
|
70
|
+
<step name="report">
|
|
71
|
+
**Present rich status report:**
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
# [Project Name]
|
|
75
|
+
|
|
76
|
+
**Progress:** [████████░░] 8/10 plans complete
|
|
77
|
+
|
|
78
|
+
## Recent Work
|
|
79
|
+
- [Phase X, Plan Y]: [what was accomplished - 1 line]
|
|
80
|
+
- [Phase X, Plan Z]: [what was accomplished - 1 line]
|
|
81
|
+
|
|
82
|
+
## Current Position
|
|
83
|
+
Phase [N] of [total]: [phase-name]
|
|
84
|
+
Plan [M] of [phase-total]: [status]
|
|
85
|
+
CONTEXT: [✓ if CONTEXT.md exists | - if not]
|
|
86
|
+
|
|
87
|
+
## Key Decisions Made
|
|
88
|
+
- [decision 1 from STATE.md]
|
|
89
|
+
- [decision 2]
|
|
90
|
+
|
|
91
|
+
## Open Issues
|
|
92
|
+
- [any deferred issues or blockers]
|
|
93
|
+
|
|
94
|
+
## What's Next
|
|
95
|
+
[Next phase/plan objective from ROADMAP]
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
</step>
|
|
99
|
+
|
|
100
|
+
<step name="route">
|
|
101
|
+
**Determine next action:**
|
|
102
|
+
|
|
103
|
+
Find the next plan number that needs work.
|
|
104
|
+
Check if `{phase}-{plan}-PLAN.md` exists for that number.
|
|
105
|
+
|
|
106
|
+
**If PLAN.md exists (unexecuted):**
|
|
107
|
+
|
|
108
|
+
- Read its `<objective>` section
|
|
109
|
+
- Show: "Ready to execute: [path] - [objective summary]"
|
|
110
|
+
- Ask: "Execute? (y/n)"
|
|
111
|
+
- **CRITICAL: If user responds "y", "yes", or affirmatively, immediately invoke:**
|
|
112
|
+
```
|
|
113
|
+
SlashCommand("/gsd:execute-plan [full-path-to-PLAN.md]")
|
|
114
|
+
```
|
|
115
|
+
Do NOT describe what you would do. INVOKE THE TOOL.
|
|
116
|
+
|
|
117
|
+
**If PLAN.md does NOT exist:**
|
|
118
|
+
|
|
119
|
+
- Check if `{phase}-CONTEXT.md` exists in phase directory
|
|
120
|
+
- Show: "Next plan not yet created: [expected path]"
|
|
121
|
+
- Show phase objective from ROADMAP
|
|
122
|
+
|
|
123
|
+
**If CONTEXT.md exists:**
|
|
124
|
+
|
|
125
|
+
- Display: "✓ Context gathered, ready to plan"
|
|
126
|
+
- Ask: "Create this plan? (y/n)"
|
|
127
|
+
- **CRITICAL: If user responds "y", "yes", or affirmatively, immediately invoke:**
|
|
128
|
+
```
|
|
129
|
+
SlashCommand("/gsd:plan-phase [phase-number]")
|
|
130
|
+
```
|
|
131
|
+
Do NOT describe what you would do. INVOKE THE TOOL.
|
|
132
|
+
|
|
133
|
+
**If CONTEXT.md does NOT exist:**
|
|
134
|
+
|
|
135
|
+
- Display options:
|
|
136
|
+
```
|
|
137
|
+
Options for Phase [N]:
|
|
138
|
+
1. See assumptions (/gsd:list-phase-assumptions [phase]) - What Claude thinks about this phase
|
|
139
|
+
2. Discuss context (/gsd:discuss-phase [phase]) - Gather your context through questions
|
|
140
|
+
3. Plan directly (/gsd:plan-phase [phase]) - Skip to planning
|
|
141
|
+
```
|
|
142
|
+
- Ask: "Which approach? (assumptions/discuss/plan)"
|
|
143
|
+
- **If user responds "assumptions":**
|
|
144
|
+
```
|
|
145
|
+
SlashCommand("/gsd:list-phase-assumptions [phase-number]")
|
|
146
|
+
```
|
|
147
|
+
- **If user responds "discuss":**
|
|
148
|
+
```
|
|
149
|
+
SlashCommand("/gsd:discuss-phase [phase-number]")
|
|
150
|
+
```
|
|
151
|
+
- **If user responds "plan":**
|
|
152
|
+
```
|
|
153
|
+
SlashCommand("/gsd:plan-phase [phase-number]")
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
**If all plans complete for current phase:**
|
|
157
|
+
|
|
158
|
+
- Check if more phases exist in ROADMAP
|
|
159
|
+
- If yes: Offer to plan next phase with `/gsd:plan-phase [next-phase]`
|
|
160
|
+
- If no (milestone 100% complete): Offer to complete milestone
|
|
161
|
+
</step>
|
|
162
|
+
|
|
163
|
+
<step name="edge_cases">
|
|
164
|
+
**Handle edge cases:**
|
|
165
|
+
|
|
166
|
+
- Phase complete but next phase not planned → offer `/gsd:plan-phase [next]`
|
|
167
|
+
- All work complete → offer milestone completion
|
|
168
|
+
- Blockers present → highlight before offering to continue
|
|
169
|
+
- Handoff file exists → mention it, offer `/gsd:resume-work`
|
|
170
|
+
</step>
|
|
171
|
+
|
|
172
|
+
</process>
|
|
173
|
+
|
|
174
|
+
<success_criteria>
|
|
175
|
+
|
|
176
|
+
- [ ] Rich context provided (recent work, decisions, issues)
|
|
177
|
+
- [ ] Current position clear with visual progress
|
|
178
|
+
- [ ] What's next clearly explained
|
|
179
|
+
- [ ] Smart routing: /gsd:execute-plan if plan exists, /gsd:plan-phase if not
|
|
180
|
+
- [ ] User confirms before any action
|
|
181
|
+
- [ ] Seamless handoff to appropriate gsd command
|
|
182
|
+
</success_criteria>
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Resume work from previous session with full context restoration
|
|
3
|
+
allowed-tools:
|
|
4
|
+
- Read
|
|
5
|
+
- Bash
|
|
6
|
+
- Write
|
|
7
|
+
- AskUserQuestion
|
|
8
|
+
- SlashCommand
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
<!--
|
|
12
|
+
DESIGN NOTE: Command + Workflow Pattern
|
|
13
|
+
|
|
14
|
+
This command is a thin wrapper that routes to the resume-project workflow.
|
|
15
|
+
All resumption logic lives in the workflow for maintainability.
|
|
16
|
+
|
|
17
|
+
Architecture:
|
|
18
|
+
- Command: resume-work.md - entry point only
|
|
19
|
+
- Workflow: resume-project.md - all resumption logic
|
|
20
|
+
-->
|
|
21
|
+
|
|
22
|
+
<objective>
|
|
23
|
+
Restore complete project context and resume work seamlessly from previous session.
|
|
24
|
+
|
|
25
|
+
Routes to the resume-project workflow which handles:
|
|
26
|
+
|
|
27
|
+
- STATE.md loading (or reconstruction if missing)
|
|
28
|
+
- Checkpoint detection (.continue-here files)
|
|
29
|
+
- Incomplete work detection (PLAN without SUMMARY)
|
|
30
|
+
- Status presentation
|
|
31
|
+
- Context-aware next action routing
|
|
32
|
+
</objective>
|
|
33
|
+
|
|
34
|
+
<execution_context>
|
|
35
|
+
@~/.claude/get-shit-done/workflows/resume-project.md
|
|
36
|
+
</execution_context>
|
|
37
|
+
|
|
38
|
+
<process>
|
|
39
|
+
**Follow the resume-project workflow** from `@~/.claude/get-shit-done/workflows/resume-project.md`.
|
|
40
|
+
|
|
41
|
+
The workflow handles all resumption logic including:
|
|
42
|
+
|
|
43
|
+
1. Project existence verification
|
|
44
|
+
2. STATE.md loading or reconstruction
|
|
45
|
+
3. Checkpoint and incomplete work detection
|
|
46
|
+
4. Visual status presentation
|
|
47
|
+
5. Context-aware option offering (checks CONTEXT.md before suggesting plan vs discuss)
|
|
48
|
+
6. Routing to appropriate next command
|
|
49
|
+
7. Session continuity updates
|
|
50
|
+
</process>
|