gsd-opencode 1.5.2 → 1.6.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.
Files changed (108) hide show
  1. package/agents/gsd-codebase-mapper.md +743 -0
  2. package/agents/gsd-debugger.md +1191 -0
  3. package/agents/gsd-executor.md +759 -0
  4. package/agents/gsd-integration-checker.md +427 -0
  5. package/agents/gsd-phase-researcher.md +637 -0
  6. package/agents/gsd-plan-checker.md +749 -0
  7. package/agents/gsd-planner.md +1373 -0
  8. package/agents/gsd-project-researcher.md +877 -0
  9. package/agents/gsd-research-synthesizer.md +250 -0
  10. package/agents/gsd-roadmapper.md +610 -0
  11. package/agents/gsd-verifier.md +782 -0
  12. package/bin/install.js +11 -1
  13. package/command/gsd/add-phase.md +5 -7
  14. package/command/gsd/add-todo.md +4 -6
  15. package/command/gsd/audit-milestone.md +257 -0
  16. package/command/gsd/check-todos.md +2 -4
  17. package/command/gsd/complete-milestone.md +53 -23
  18. package/command/gsd/debug.md +120 -30
  19. package/command/gsd/discuss-phase.md +51 -30
  20. package/command/gsd/execute-phase.md +192 -26
  21. package/command/gsd/help.md +66 -75
  22. package/command/gsd/insert-phase.md +6 -6
  23. package/command/gsd/list-phase-assumptions.md +1 -1
  24. package/command/gsd/map-codebase.md +15 -28
  25. package/command/gsd/new-milestone.md +693 -36
  26. package/command/gsd/new-project.md +668 -108
  27. package/command/gsd/pause-work.md +2 -2
  28. package/command/gsd/plan-milestone-gaps.md +284 -0
  29. package/command/gsd/plan-phase.md +449 -42
  30. package/command/gsd/progress.md +66 -36
  31. package/command/gsd/remove-phase.md +17 -19
  32. package/command/gsd/research-phase.md +155 -67
  33. package/command/gsd/resume-work.md +3 -3
  34. package/command/gsd/update.md +172 -0
  35. package/command/gsd/verify-work.md +186 -38
  36. package/command/gsd/whats-new.md +124 -0
  37. package/get-shit-done/references/checkpoints.md +599 -98
  38. package/get-shit-done/references/continuation-format.md +5 -11
  39. package/get-shit-done/references/questioning.md +87 -108
  40. package/get-shit-done/references/tdd.md +3 -3
  41. package/get-shit-done/references/ui-brand.md +160 -0
  42. package/get-shit-done/references/verification-patterns.md +595 -0
  43. package/get-shit-done/templates/DEBUG.md +3 -3
  44. package/get-shit-done/templates/UAT.md +247 -0
  45. package/get-shit-done/templates/codebase/architecture.md +5 -5
  46. package/get-shit-done/templates/codebase/concerns.md +1 -1
  47. package/get-shit-done/templates/codebase/conventions.md +1 -1
  48. package/get-shit-done/templates/codebase/structure.md +8 -8
  49. package/get-shit-done/templates/codebase/testing.md +2 -2
  50. package/get-shit-done/templates/context.md +221 -70
  51. package/get-shit-done/templates/debug-subagent-prompt.md +91 -0
  52. package/get-shit-done/templates/discovery.md +5 -5
  53. package/get-shit-done/templates/phase-prompt.md +115 -2
  54. package/get-shit-done/templates/planner-subagent-prompt.md +117 -0
  55. package/get-shit-done/templates/requirements.md +231 -0
  56. package/get-shit-done/templates/research-project/ARCHITECTURE.md +204 -0
  57. package/get-shit-done/templates/research-project/FEATURES.md +147 -0
  58. package/get-shit-done/templates/research-project/PITFALLS.md +200 -0
  59. package/get-shit-done/templates/research-project/STACK.md +120 -0
  60. package/get-shit-done/templates/research-project/SUMMARY.md +170 -0
  61. package/get-shit-done/templates/research.md +2 -2
  62. package/get-shit-done/templates/roadmap.md +26 -20
  63. package/get-shit-done/templates/state.md +2 -17
  64. package/get-shit-done/templates/summary.md +13 -17
  65. package/get-shit-done/templates/user-setup.md +323 -0
  66. package/get-shit-done/templates/verification-report.md +322 -0
  67. package/get-shit-done/workflows/complete-milestone.md +152 -45
  68. package/get-shit-done/workflows/diagnose-issues.md +233 -0
  69. package/get-shit-done/workflows/discovery-phase.md +12 -17
  70. package/get-shit-done/workflows/discuss-phase.md +309 -124
  71. package/get-shit-done/workflows/execute-phase.md +177 -18
  72. package/get-shit-done/workflows/execute-plan.md +163 -145
  73. package/get-shit-done/workflows/map-codebase.md +86 -231
  74. package/get-shit-done/workflows/resume-project.md +18 -20
  75. package/get-shit-done/workflows/transition.md +7 -23
  76. package/get-shit-done/workflows/verify-phase.md +629 -0
  77. package/get-shit-done/workflows/verify-work.md +495 -134
  78. package/package.json +2 -1
  79. package/command/gsd/consider-issues.md +0 -201
  80. package/command/gsd/create-roadmap.md +0 -115
  81. package/command/gsd/discuss-milestone.md +0 -47
  82. package/command/gsd/execute-plan.md +0 -103
  83. package/command/gsd/plan-fix.md +0 -205
  84. package/command/gsd/status.md +0 -127
  85. package/get-shit-done/references/debugging/debugging-mindset.md +0 -253
  86. package/get-shit-done/references/debugging/hypothesis-testing.md +0 -373
  87. package/get-shit-done/references/debugging/investigation-techniques.md +0 -337
  88. package/get-shit-done/references/debugging/verification-patterns.md +0 -425
  89. package/get-shit-done/references/debugging/when-to-research.md +0 -361
  90. package/get-shit-done/references/plan-format.md +0 -475
  91. package/get-shit-done/references/principles.md +0 -157
  92. package/get-shit-done/references/research-pitfalls.md +0 -215
  93. package/get-shit-done/references/scope-estimation.md +0 -256
  94. package/get-shit-done/templates/agent-history.md +0 -263
  95. package/get-shit-done/templates/checkpoint-return.md +0 -204
  96. package/get-shit-done/templates/config.json +0 -26
  97. package/get-shit-done/templates/continuation-prompt.md +0 -235
  98. package/get-shit-done/templates/issues.md +0 -32
  99. package/get-shit-done/templates/milestone-context.md +0 -93
  100. package/get-shit-done/templates/subagent-task-prompt.md +0 -95
  101. package/get-shit-done/templates/uat-issues.md +0 -143
  102. package/get-shit-done/workflows/_archive/execute-phase.md +0 -899
  103. package/get-shit-done/workflows/create-milestone.md +0 -416
  104. package/get-shit-done/workflows/create-roadmap.md +0 -481
  105. package/get-shit-done/workflows/debug.md +0 -426
  106. package/get-shit-done/workflows/discuss-milestone.md +0 -236
  107. package/get-shit-done/workflows/plan-phase.md +0 -701
  108. package/get-shit-done/workflows/research-phase.md +0 -436
@@ -1,426 +0,0 @@
1
- <purpose>
2
- Systematic debugging with persistent state that survives context resets. The debug file IS the debugging brain - create it immediately and update it continuously.
3
-
4
- You are the debugger. The user knows what's wrong (behavior), not why (root cause). Gather symptoms, then investigate autonomously.
5
- </purpose>
6
-
7
- <philosophy>
8
- **User = reporter. OpenCode = investigator.**
9
-
10
- The user knows:
11
- - What they expected to happen
12
- - What actually happened
13
- - Any error messages they saw
14
- - When it started / if it ever worked
15
-
16
- The user does NOT know (and shouldn't be asked):
17
- - What's causing the bug
18
- - Which file has the problem
19
- - What the fix should be
20
-
21
- Ask about experience. Investigate the cause yourself.
22
- </philosophy>
23
-
24
- <references>
25
- @~/.config/opencode/get-shit-done/references/debugging/debugging-mindset.md
26
- @~/.config/opencode/get-shit-done/references/debugging/hypothesis-testing.md
27
- @~/.config/opencode/get-shit-done/references/debugging/investigation-techniques.md
28
- @~/.config/opencode/get-shit-done/references/debugging/verification-patterns.md
29
- @~/.config/opencode/get-shit-done/references/debugging/when-to-research.md
30
- </references>
31
-
32
- <template>
33
- @~/.config/opencode/get-shit-done/templates/DEBUG.md
34
- </template>
35
-
36
- <process>
37
-
38
- <step name="check_active_session">
39
- **First: Check for active debug sessions**
40
-
41
- ```bash
42
- ls .planning/debug/*.md 2>/dev/null | grep -v resolved
43
- ```
44
-
45
- **If active sessions exist AND no $ARGUMENTS provided:**
46
-
47
- Read each file's frontmatter (status, trigger) and Current Focus (hypothesis, next_action).
48
-
49
- Display inline:
50
-
51
- ```
52
- ## Active Debug Sessions
53
-
54
- | # | Slug | Status | Hypothesis | Next Action |
55
- |---|------|--------|------------|-------------|
56
- | 1 | auth-logout | investigating | Token refresh not called | Check console output |
57
- | 2 | api-timeout | gathering | - | Gather symptoms |
58
- | 3 | cart-bug | fixing | Null reference in context | Apply fix |
59
-
60
- Reply with a number to resume, or describe a new issue to start fresh.
61
- ```
62
-
63
- Wait for user response.
64
-
65
- - If user replies with number (1, 2, 3) → Load that file, go to `resume_from_file`
66
- - If user replies with text → Treat as new issue trigger, go to `create_debug_file`
67
-
68
- **If active sessions exist AND $ARGUMENTS provided:**
69
-
70
- User wants to start a new debug session. Continue to `create_debug_file`.
71
-
72
- **If no active sessions AND no $ARGUMENTS:**
73
-
74
- ```
75
- No active debug sessions.
76
-
77
- Describe the issue to start debugging.
78
- ```
79
-
80
- Wait for user to describe the issue, then use their response as the trigger.
81
-
82
- **If no active sessions AND $ARGUMENTS provided:**
83
-
84
- Continue to `create_debug_file` with $ARGUMENTS as trigger.
85
- </step>
86
-
87
- <step name="create_debug_file">
88
- **Create debug file IMMEDIATELY**
89
-
90
- Generate slug from user input (lowercase, hyphens, max 30 chars).
91
-
92
- ```bash
93
- mkdir -p .planning/debug
94
- ```
95
-
96
- Create file with initial state:
97
-
98
- ```markdown
99
- ---
100
- status: gathering
101
- trigger: "[verbatim $ARGUMENTS]"
102
- created: [ISO timestamp]
103
- updated: [ISO timestamp]
104
- ---
105
-
106
- ## Current Focus
107
-
108
- hypothesis: none yet
109
- test: none
110
- expecting: none
111
- next_action: gather symptoms from user
112
-
113
- ## Symptoms
114
-
115
- expected:
116
- actual:
117
- errors:
118
- reproduction:
119
- started:
120
-
121
- ## Eliminated
122
-
123
- [none yet]
124
-
125
- ## Evidence
126
-
127
- [none yet]
128
-
129
- ## Resolution
130
-
131
- root_cause:
132
- fix:
133
- verification:
134
- files_changed: []
135
- ```
136
-
137
- Write to `.planning/debug/[slug].md`
138
-
139
- Now proceed to `symptom_gathering`.
140
- </step>
141
-
142
- <step name="symptom_gathering">
143
- **Gather symptoms through questioning - update file after EACH answer**
144
-
145
- CRITICAL: Update the debug file after each piece of information gathered.
146
-
147
- **1. Expected behavior:**
148
-
149
- Use question:
150
- - header: "Expected"
151
- - question: "What should happen?"
152
- - options: Contextual interpretations + "Let me describe"
153
-
154
- After answer → Update Symptoms.expected in debug file
155
-
156
- **2. Actual behavior:**
157
-
158
- Use question:
159
- - header: "Actual"
160
- - question: "What actually happens instead?"
161
- - options: Common failure modes + "Let me describe"
162
-
163
- After answer → Update Symptoms.actual in debug file
164
-
165
- **3. Error messages:**
166
-
167
- Use question:
168
- - header: "Errors"
169
- - question: "Any error messages?"
170
- - options:
171
- - "Yes, I'll paste them"
172
- - "Yes, but I don't have them handy"
173
- - "No errors - fails silently"
174
- - "Not sure"
175
-
176
- After answer → Update Symptoms.errors in debug file
177
-
178
- **4. When it started:**
179
-
180
- Use question:
181
- - header: "Timeline"
182
- - question: "When did this start?"
183
- - options:
184
- - "Never worked"
185
- - "After a change"
186
- - "Intermittent"
187
- - "Not sure"
188
-
189
- After answer → Update Symptoms.started in debug file
190
-
191
- **5. Reproduction:**
192
-
193
- Use question:
194
- - header: "Reproduce"
195
- - question: "How do you trigger this?"
196
- - options:
197
- - "Specific steps" - I can describe them
198
- - "Random" - Happens unpredictably
199
- - "Always" - Every time I try
200
- - "Not sure"
201
-
202
- After answer → Update Symptoms.reproduction in debug file
203
-
204
- **6. Ready check:**
205
-
206
- Use question:
207
- - header: "Ready?"
208
- - question: "Enough context to investigate?"
209
- - options:
210
- - "Start investigating"
211
- - "I have more context"
212
-
213
- If "I have more context" → receive it, update relevant field, ask again
214
- If "Start investigating" → Update status to "investigating", proceed to `investigation_loop`
215
- </step>
216
-
217
- <step name="investigation_loop">
218
- **Autonomous investigation - update file continuously**
219
-
220
- CRITICAL: Before EVERY action, update Current Focus. After EVERY finding, append to Evidence.
221
-
222
- **Phase 1: Initial evidence gathering**
223
-
224
- Update Current Focus:
225
- ```
226
- hypothesis: gathering initial evidence
227
- test: examining error context and relevant code
228
- expecting: clues about failure point
229
- next_action: [specific next action]
230
- ```
231
-
232
- 1. If errors exist in Symptoms → search codebase for error text
233
- 2. Identify relevant code area from symptoms
234
- 3. Read relevant files COMPLETELY
235
- 4. Run app/tests to observe behavior firsthand
236
-
237
- After EACH finding → Append to Evidence:
238
- ```
239
- - timestamp: [now]
240
- checked: [what]
241
- found: [what]
242
- implication: [what this means]
243
- ```
244
-
245
- **Phase 2: Form hypothesis**
246
-
247
- Based on evidence, form SPECIFIC, FALSIFIABLE hypothesis.
248
-
249
- Update Current Focus:
250
- ```
251
- hypothesis: [specific theory]
252
- test: [how you'll test it]
253
- expecting: [what proves/disproves it]
254
- next_action: [immediate next step]
255
- ```
256
-
257
- **Phase 3: Test hypothesis**
258
-
259
- Execute the test. ONE hypothesis at a time.
260
-
261
- Append result to Evidence.
262
-
263
- **Phase 4: Evaluate**
264
-
265
- If CONFIRMED:
266
- - Update Resolution.root_cause with evidence
267
- - Update status to "fixing"
268
- - Proceed to `fix_and_verify`
269
-
270
- If ELIMINATED:
271
- - Append to Eliminated section:
272
- ```
273
- - hypothesis: [what was wrong]
274
- evidence: [what disproved it]
275
- timestamp: [now]
276
- ```
277
- - Form new hypothesis based on evidence
278
- - Return to Phase 2
279
-
280
- **Context management:**
281
-
282
- After significant investigation (5+ evidence entries), check if context is heavy.
283
- If so, ensure Current Focus is fully updated and suggest:
284
- "Context filling up. Safe to /new - run /gsd-debug to resume."
285
- </step>
286
-
287
- <step name="resume_from_file">
288
- **Resume investigation from debug file**
289
-
290
- Read the full debug file.
291
-
292
- Announce:
293
- ```
294
- Resuming: [slug]
295
- Status: [status]
296
- Current hypothesis: [from Current Focus]
297
- Evidence gathered: [count]
298
- Eliminated: [count] hypotheses
299
-
300
- Continuing from: [next_action]
301
- ```
302
-
303
- Based on status:
304
- - "gathering" → Continue `symptom_gathering` from where left off
305
- - "investigating" → Continue `investigation_loop` from Current Focus
306
- - "fixing" → Continue `fix_and_verify`
307
- - "verifying" → Continue verification
308
-
309
- The file tells you exactly where you were.
310
- </step>
311
-
312
- <step name="fix_and_verify">
313
- **Apply fix and verify**
314
-
315
- Update status to "fixing".
316
-
317
- **1. Implement minimal fix**
318
-
319
- Update Current Focus:
320
- ```
321
- hypothesis: [confirmed root cause]
322
- test: applying fix
323
- expecting: symptoms resolved
324
- next_action: implement fix in [files]
325
- ```
326
-
327
- Make the SMALLEST change that addresses root cause.
328
-
329
- Update Resolution.fix with what was changed and why.
330
- Update Resolution.files_changed with modified files.
331
-
332
- **2. Verify**
333
-
334
- Update status to "verifying".
335
-
336
- Update Current Focus:
337
- ```
338
- hypothesis: fix resolves issue
339
- test: reproducing original symptoms
340
- expecting: symptoms no longer occur
341
- next_action: verify fix
342
- ```
343
-
344
- Test against original Symptoms:
345
- - Does expected behavior now occur?
346
- - Are errors gone?
347
- - Does reproduction no longer trigger issue?
348
-
349
- If verification FAILS:
350
- - Append finding to Evidence
351
- - Update status back to "investigating"
352
- - Root cause was wrong or incomplete
353
- - Return to `investigation_loop`
354
-
355
- If verification PASSES:
356
- - Update Resolution.verification with how verified
357
- - Proceed to `archive_session`
358
- </step>
359
-
360
- <step name="archive_session">
361
- **Archive resolved debug session**
362
-
363
- Update status to "resolved".
364
-
365
- ```bash
366
- mkdir -p .planning/debug/resolved
367
- mv .planning/debug/[slug].md .planning/debug/resolved/
368
- ```
369
-
370
- Commit:
371
- ```bash
372
- git add -A
373
- git commit -m "fix: [brief description from Resolution.fix]
374
-
375
- Root cause: [from Resolution.root_cause]
376
- Debug session: .planning/debug/resolved/[slug].md"
377
- ```
378
-
379
- Report:
380
- ```
381
- Debug complete.
382
-
383
- Root cause: [root_cause]
384
- Fix: [fix]
385
- Files: [files_changed]
386
-
387
- Session archived: .planning/debug/resolved/[slug].md
388
- ```
389
-
390
- Use question:
391
- - header: "Next"
392
- - question: "What now?"
393
- - options:
394
- - "Continue working" - Back to /gsd-progress
395
- - "Test more" - Verify related functionality
396
- - "Done" - End session
397
- </step>
398
-
399
- </process>
400
-
401
- <update_rules>
402
- **Section update rules (from template):**
403
-
404
- | Section | Rule | When |
405
- |---------|------|------|
406
- | Frontmatter.status | OVERWRITE | Each phase transition |
407
- | Frontmatter.updated | OVERWRITE | Every file update |
408
- | Current Focus | OVERWRITE | Before every action |
409
- | Symptoms | IMMUTABLE | After gathering complete |
410
- | Eliminated | APPEND | When hypothesis disproved |
411
- | Evidence | APPEND | After each finding |
412
- | Resolution | OVERWRITE | As understanding evolves |
413
-
414
- **CRITICAL:** Update the file BEFORE taking action, not after. If context resets mid-action, the file shows what was about to happen.
415
- </update_rules>
416
-
417
- <success_criteria>
418
- - [ ] Debug file created IMMEDIATELY on command
419
- - [ ] File updated after EACH piece of information
420
- - [ ] Current Focus always reflects NOW
421
- - [ ] Evidence appended for every finding
422
- - [ ] Eliminated prevents re-investigation
423
- - [ ] Can resume perfectly from any /new
424
- - [ ] Root cause confirmed with evidence before fixing
425
- - [ ] Fix verified against original symptoms
426
- </success_criteria>
@@ -1,236 +0,0 @@
1
- <purpose>
2
- Help the user figure out what they want to build in the next milestone through collaborative thinking.
3
-
4
- You're a thinking partner helping them crystallize their vision for what's next. Features first — everything else (scope, phases) derives from what they want to build.
5
- </purpose>
6
-
7
- <process>
8
-
9
- <step name="check_state" priority="first">
10
- Load project state:
11
-
12
- ```bash
13
- cat .planning/STATE.md
14
- cat .planning/ROADMAP.md
15
- ```
16
-
17
- **If no active milestone (expected state after completing previous):**
18
- Continue to milestone_context.
19
-
20
- **If active milestone exists:**
21
-
22
- ```
23
- Current milestone in progress: v[X.Y] [Name]
24
- Phases [N]-[M], [P]% complete
25
-
26
- Did you want to:
27
- 1. Complete current milestone first (/gsd-complete-milestone)
28
- 2. Add phases to current milestone (/gsd-add-phase)
29
- 3. Continue anyway - discuss next milestone scope
30
-
31
- ```
32
-
33
- Wait for user response. If "Continue anyway", proceed to milestone_context.
34
- </step>
35
-
36
- <step name="milestone_context">
37
- Present context from previous milestone:
38
-
39
- ```
40
- Last completed: v[X.Y] [Name] (shipped [DATE])
41
- Key accomplishments:
42
- - [From MILESTONES.md or STATE.md]
43
-
44
- Total phases delivered: [N]
45
- Next phase number: [N+1]
46
- ```
47
-
48
- Continue to intake_gate.
49
- </step>
50
-
51
- <step name="intake_gate">
52
- **CRITICAL: ALL questions use question. Never ask inline text questions.**
53
-
54
- The primary question is: **What do you want to build/add/fix?**
55
-
56
- Everything else (scope, priority, constraints) is secondary and derived from features.
57
-
58
- Check for inputs:
59
- - Deferred issues from STATE.md (potential features)
60
- - Known gaps or pain points from usage
61
- - User's ideas for what's next
62
-
63
- **1. Open:**
64
-
65
- Use question:
66
- - header: "Next"
67
- - question: "What do you want to add, improve, or fix in this milestone?"
68
- - options: [Deferred issues from STATE.md if any] + ["New features", "Improvements to existing", "Bug fixes", "Let me describe"]
69
-
70
- **2. Explore features:**
71
-
72
- Based on their response, use question:
73
-
74
- If they named specific features:
75
- - header: "Feature Details"
76
- - question: "Tell me more about [feature] - what should it do?"
77
- - options: [Contextual options based on feature type + "Let me describe it"]
78
-
79
- If they described a general direction:
80
- - header: "Breaking It Down"
81
- - question: "That could involve [A], [B], [C] - which matter most?"
82
- - options: [Specific sub-features + "All of them" + "Something else"]
83
-
84
- If they're not sure:
85
- - header: "Starting Points"
86
- - question: "What's been frustrating or missing?"
87
- - options: [Deferred issues from STATE.md + pain point categories + "Let me think about it"]
88
-
89
- **3. Prioritize:**
90
-
91
- Use question:
92
- - header: "Priority"
93
- - question: "Which of these matters most?"
94
- - options: [Features they mentioned + "All equally important" + "Let me prioritize"]
95
-
96
- After gathering features, synthesize:
97
-
98
- ```
99
- Based on what you described:
100
-
101
- **Features:**
102
- - [Feature 1]: [brief description]
103
- - [Feature 2]: [brief description]
104
- - [Feature 3]: [brief description]
105
-
106
- **Estimated scope:** [N] phases
107
- **Theme suggestion:** v[X.Y] [Name]
108
- ```
109
-
110
- **4. Decision gate:**
111
-
112
- Use question:
113
- - header: "Ready?"
114
- - question: "Ready to create the milestone, or explore more?"
115
- - options (ALL THREE REQUIRED):
116
- - "Create milestone" - Proceed to /gsd-new-milestone
117
- - "Ask more questions" - Help me think through this more
118
- - "Let me add context" - I have more to share
119
-
120
- If "Ask more questions" → return to step 2 with new probes.
121
- If "Let me add context" → receive input → return to step 2.
122
- Loop until "Create milestone" selected.
123
- </step>
124
-
125
- <step name="write_context">
126
- Write milestone context to file for handoff.
127
-
128
- **File:** `.planning/MILESTONE-CONTEXT.md`
129
-
130
- Use template from ~/.config/opencode/get-shit-done/templates/milestone-context.md
131
-
132
- Populate with:
133
- - Features identified during discussion
134
- - Suggested milestone name and theme
135
- - Estimated phase count
136
- - How features map to phases
137
- - Any constraints or scope boundaries mentioned
138
-
139
- ```bash
140
- # Write the context file
141
- cat > .planning/MILESTONE-CONTEXT.md << 'EOF'
142
- # Milestone Context
143
-
144
- **Generated:** [today's date]
145
- **Status:** Ready for /gsd-new-milestone
146
-
147
- <features>
148
- ## Features to Build
149
-
150
- - **[Feature 1]**: [description]
151
- - **[Feature 2]**: [description]
152
- - **[Feature 3]**: [description]
153
-
154
- </features>
155
-
156
- <scope>
157
- ## Scope
158
-
159
- **Suggested name:** v[X.Y] [Theme Name]
160
- **Estimated phases:** [N]
161
- **Focus:** [One sentence theme/focus]
162
-
163
- </scope>
164
-
165
- <phase_mapping>
166
- ## Phase Mapping
167
-
168
- - Phase [N]: [Feature/goal]
169
- - Phase [N+1]: [Feature/goal]
170
- - Phase [N+2]: [Feature/goal]
171
-
172
- </phase_mapping>
173
-
174
- <constraints>
175
- ## Constraints
176
-
177
- - [Any constraints mentioned]
178
-
179
- </constraints>
180
-
181
- <notes>
182
- ## Additional Context
183
-
184
- [Anything else from discussion]
185
-
186
- </notes>
187
-
188
- ---
189
-
190
- *This file is temporary. It will be deleted after /gsd-new-milestone creates the milestone.*
191
- EOF
192
- ```
193
- </step>
194
-
195
- <step name="handoff">
196
- Present summary and hand off to create-milestone:
197
-
198
- ```
199
- Milestone scope defined:
200
-
201
- **Features:**
202
- - [Feature 1]: [description]
203
- - [Feature 2]: [description]
204
- - [Feature 3]: [description]
205
-
206
- **Suggested milestone:** v[X.Y] [Theme Name]
207
- **Estimated phases:** [N]
208
-
209
- Context saved to `.planning/MILESTONE-CONTEXT.md`
210
-
211
- ---
212
-
213
- ## ▶ Next Up
214
-
215
- **Create Milestone v[X.Y]** — [Theme Name]
216
-
217
- `/gsd-new-milestone`
218
-
219
- *`/new` first → fresh context window*
220
-
221
- ---
222
- ```
223
- </step>
224
-
225
- </process>
226
-
227
- <success_criteria>
228
-
229
- - Project state loaded (STATE.md, ROADMAP.md)
230
- - Previous milestone context presented
231
- - **Features identified** - What to build/add/fix (the substance)
232
- - Features explored with clarifying questions
233
- - Scope synthesized from features (not asked abstractly)
234
- - **MILESTONE-CONTEXT.md created** with features, scope, and phase mapping
235
- - Context handed off to /gsd-new-milestone
236
- </success_criteria>