gsd-opencode 1.5.2 → 1.6.1

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
@@ -7,7 +7,7 @@ The orchestrator's job is coordination, not execution. Each subagent loads the f
7
7
  </core_principle>
8
8
 
9
9
  <required_reading>
10
- Read STATE.md before any operation to load project context.
10
+ read STATE.md before any operation to load project context.
11
11
  </required_reading>
12
12
 
13
13
  <process>
@@ -22,7 +22,6 @@ cat .planning/STATE.md 2>/dev/null
22
22
  **If file exists:** Parse and internalize:
23
23
  - Current position (phase, plan, status)
24
24
  - Accumulated decisions (constraints on this execution)
25
- - Deferred issues (context for deviations)
26
25
  - Blockers/concerns (things to watch for)
27
26
 
28
27
  **If file missing but .planning/ exists:**
@@ -40,7 +39,9 @@ Options:
40
39
  Confirm phase exists and has plans:
41
40
 
42
41
  ```bash
43
- PHASE_DIR=$(ls -d .planning/phases/${PHASE_ARG}* 2>/dev/null | head -1)
42
+ # Match both zero-padded (05-*) and unpadded (5-*) folders
43
+ PADDED_PHASE=$(printf "%02d" ${PHASE_ARG} 2>/dev/null || echo "${PHASE_ARG}")
44
+ PHASE_DIR=$(ls -d .planning/phases/${PADDED_PHASE}-* .planning/phases/${PHASE_ARG}-* 2>/dev/null | head -1)
44
45
  if [ -z "$PHASE_DIR" ]; then
45
46
  echo "ERROR: No phase directory matching '${PHASE_ARG}'"
46
47
  exit 1
@@ -70,19 +71,25 @@ ls -1 "$PHASE_DIR"/*-SUMMARY.md 2>/dev/null | sort
70
71
  For each plan, read frontmatter to extract:
71
72
  - `wave: N` - Execution wave (pre-computed)
72
73
  - `autonomous: true/false` - Whether plan has checkpoints
74
+ - `gap_closure: true/false` - Whether plan closes gaps from verification/UAT
73
75
 
74
76
  Build plan inventory:
75
77
  - Plan path
76
78
  - Plan ID (e.g., "03-01")
77
79
  - Wave number
78
80
  - Autonomous flag
81
+ - Gap closure flag
79
82
  - Completion status (SUMMARY exists = complete)
80
83
 
81
- Skip completed plans. If all complete, report "Phase already executed" and exit.
84
+ **Filtering:**
85
+ - Skip completed plans (have SUMMARY.md)
86
+ - If `--gaps-only` flag: also skip plans where `gap_closure` is not `true`
87
+
88
+ If all plans filtered out, report "No matching incomplete plans" and exit.
82
89
  </step>
83
90
 
84
91
  <step name="group_by_wave">
85
- Read `wave` from each plan's frontmatter and group by wave number:
92
+ read `wave` from each plan's frontmatter and group by wave number:
86
93
 
87
94
  ```bash
88
95
  # For each plan, extract wave from frontmatter
@@ -104,15 +111,21 @@ waves = {
104
111
 
105
112
  **No dependency analysis needed.** Wave numbers are pre-computed during `/gsd-plan-phase`.
106
113
 
107
- Report wave structure to user:
114
+ Report wave structure with context:
108
115
  ```
109
- Execution Plan:
110
- Wave 1 (parallel): 03-01, 03-02
111
- Wave 2 (parallel): 03-03 [checkpoint], 03-04
112
- Wave 3: 03-05
116
+ ## Execution Plan
117
+
118
+ **Phase {X}: {Name}** {total_plans} plans across {wave_count} waves
119
+
120
+ | Wave | Plans | What it builds |
121
+ |------|-------|----------------|
122
+ | 1 | 01-01, 01-02 | {from plan objectives} |
123
+ | 2 | 01-03 | {from plan objectives} |
124
+ | 3 | 01-04 [checkpoint] | {from plan objectives} |
113
125
 
114
- Total: 5 plans in 3 waves
115
126
  ```
127
+
128
+ The "What it builds" column comes from skimming plan names/objectives. Keep it brief (3-8 words).
116
129
  </step>
117
130
 
118
131
  <step name="execute_waves">
@@ -120,7 +133,32 @@ Execute each wave in sequence. Autonomous plans within a wave run in parallel.
120
133
 
121
134
  **For each wave:**
122
135
 
123
- 1. **Spawn all autonomous agents in wave simultaneously:**
136
+ 1. **Describe what's being built (BEFORE spawning):**
137
+
138
+ read each plan's `<objective>` section. Extract what's being built and why it matters.
139
+
140
+ **Output:**
141
+ ```
142
+ ---
143
+
144
+ ## Wave {N}
145
+
146
+ **{Plan ID}: {Plan Name}**
147
+ {2-3 sentences: what this builds, key technical approach, why it matters in context}
148
+
149
+ **{Plan ID}: {Plan Name}** (if parallel)
150
+ {same format}
151
+
152
+ Spawning {count} agent(s)...
153
+
154
+ ---
155
+ ```
156
+
157
+ **Examples:**
158
+ - Bad: "Executing terrain generation plan"
159
+ - Good: "Procedural terrain generator using Perlin noise — creates height maps, biome zones, and collision meshes. Required before vehicle physics can interact with ground."
160
+
161
+ 2. **Spawn all autonomous agents in wave simultaneously:**
124
162
 
125
163
  Use Task tool with multiple parallel calls. Each agent gets prompt from subagent-task-prompt template:
126
164
 
@@ -156,12 +194,34 @@ Execute each wave in sequence. Autonomous plans within a wave run in parallel.
156
194
 
157
195
  Task tool blocks until each agent finishes. All parallel agents return together.
158
196
 
159
- 3. **Collect results from wave:**
197
+ 3. **Report completion and what was built:**
160
198
 
161
199
  For each completed agent:
162
200
  - Verify SUMMARY.md exists at expected path
163
- - Note any issues reported
164
- - Record completion
201
+ - read SUMMARY.md to extract what was built
202
+ - Note any issues or deviations
203
+
204
+ **Output:**
205
+ ```
206
+ ---
207
+
208
+ ## Wave {N} Complete
209
+
210
+ **{Plan ID}: {Plan Name}**
211
+ {What was built — from SUMMARY.md deliverables}
212
+ {Notable deviations or discoveries, if any}
213
+
214
+ **{Plan ID}: {Plan Name}** (if parallel)
215
+ {same format}
216
+
217
+ {If more waves: brief note on what this enables for next wave}
218
+
219
+ ---
220
+ ```
221
+
222
+ **Examples:**
223
+ - Bad: "Wave 2 complete. Proceeding to Wave 3."
224
+ - Good: "Terrain system complete — 3 biome types, height-based texturing, physics collision meshes. Vehicle physics (Wave 3) can now reference ground surfaces."
165
225
 
166
226
  4. **Handle failures:**
167
227
 
@@ -289,6 +349,104 @@ After all waves complete, aggregate results:
289
349
  ```
290
350
  </step>
291
351
 
352
+ <step name="verify_phase_goal">
353
+ Verify phase achieved its GOAL, not just completed its TASKS.
354
+
355
+ **Spawn verifier:**
356
+
357
+ ```
358
+ Task(
359
+ prompt="Verify phase {phase_number} goal achievement.
360
+
361
+ Phase directory: {phase_dir}
362
+ Phase goal: {goal from ROADMAP.md}
363
+
364
+ Check must_haves against actual codebase. Create VERIFICATION.md.
365
+ Verify what actually exists in the code.",
366
+ subagent_type="gsd-verifier"
367
+ )
368
+ ```
369
+
370
+ **read verification status:**
371
+
372
+ ```bash
373
+ grep "^status:" "$PHASE_DIR"/*-VERIFICATION.md | cut -d: -f2 | tr -d ' '
374
+ ```
375
+
376
+ **Route by status:**
377
+
378
+ | Status | Action |
379
+ |--------|--------|
380
+ | `passed` | Continue to update_roadmap |
381
+ | `human_needed` | Present items to user, get approval or feedback |
382
+ | `gaps_found` | Present gap summary, offer `/gsd-plan-phase {phase} --gaps` |
383
+
384
+ **If passed:**
385
+
386
+ Phase goal verified. Proceed to update_roadmap.
387
+
388
+ **If human_needed:**
389
+
390
+ ```markdown
391
+ ## ✓ Phase {X}: {Name} — Human Verification Required
392
+
393
+ All automated checks passed. {N} items need human testing:
394
+
395
+ ### Human Verification Checklist
396
+
397
+ {Extract from VERIFICATION.md human_verification section}
398
+
399
+ ---
400
+
401
+ **After testing:**
402
+ - "approved" → continue to update_roadmap
403
+ - Report issues → will route to gap closure planning
404
+ ```
405
+
406
+ If user approves → continue to update_roadmap.
407
+ If user reports issues → treat as gaps_found.
408
+
409
+ **If gaps_found:**
410
+
411
+ Present gaps and offer next command:
412
+
413
+ ```markdown
414
+ ## ⚠ Phase {X}: {Name} — Gaps Found
415
+
416
+ **Score:** {N}/{M} must-haves verified
417
+ **Report:** {phase_dir}/{phase}-VERIFICATION.md
418
+
419
+ ### What's Missing
420
+
421
+ {Extract gap summaries from VERIFICATION.md gaps section}
422
+
423
+ ---
424
+
425
+ ## ▶ Next Up
426
+
427
+ **Plan gap closure** — create additional plans to complete the phase
428
+
429
+ `/gsd-plan-phase {X} --gaps`
430
+
431
+ *`/new` first → fresh context window*
432
+
433
+ ---
434
+
435
+ **Also available:**
436
+ - `cat {phase_dir}/{phase}-VERIFICATION.md` — see full report
437
+ - `/gsd-verify-work {X}` — manual testing before planning
438
+ ```
439
+
440
+ User runs `/gsd-plan-phase {X} --gaps` which:
441
+ 1. Reads VERIFICATION.md gaps
442
+ 2. Creates additional plans (04, 05, etc.) with `gap_closure: true` to close gaps
443
+ 3. User then runs `/gsd-execute-phase {X} --gaps-only`
444
+ 4. Execute-phase runs only gap closure plans (04-05)
445
+ 5. Verifier runs again after new plans complete
446
+
447
+ User stays in control at each decision point.
448
+ </step>
449
+
292
450
  <step name="update_roadmap">
293
451
  Update ROADMAP.md to reflect phase completion:
294
452
 
@@ -298,9 +456,10 @@ Update ROADMAP.md to reflect phase completion:
298
456
  # Update status
299
457
  ```
300
458
 
301
- Commit roadmap update:
459
+ Commit phase completion (roadmap, state, verification):
302
460
  ```bash
303
- git add .planning/ROADMAP.md
461
+ git add .planning/ROADMAP.md .planning/STATE.md .planning/phases/{phase_dir}/*-VERIFICATION.md
462
+ git add .planning/REQUIREMENTS.md # if updated
304
463
  git commit -m "docs(phase-{X}): complete phase execution"
305
464
  ```
306
465
  </step>
@@ -335,7 +494,7 @@ All {N} phases executed.
335
494
  **Why this works:**
336
495
 
337
496
  Orchestrator context usage: ~10-15%
338
- - Read plan frontmatter (small)
497
+ - read plan frontmatter (small)
339
498
  - Analyze dependencies (logic, no heavy reads)
340
499
  - Fill template strings
341
500
  - Spawn Task calls