@undeemed/get-shit-done-codex 1.20.10 → 1.22.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 (73) hide show
  1. package/.codex/config.toml +77 -0
  2. package/README.md +53 -42
  3. package/agents/gsd-codebase-mapper.md +3 -3
  4. package/agents/gsd-debugger.md +5 -5
  5. package/agents/gsd-executor.md +14 -14
  6. package/agents/gsd-phase-researcher.md +7 -7
  7. package/agents/gsd-plan-checker.md +10 -10
  8. package/agents/gsd-planner.md +19 -19
  9. package/agents/gsd-project-researcher.md +3 -3
  10. package/agents/gsd-research-synthesizer.md +6 -6
  11. package/agents/gsd-roadmapper.md +7 -7
  12. package/agents/gsd-verifier.md +29 -17
  13. package/bin/install.js +161 -208
  14. package/commands/gsd/add-tests.md +5 -4
  15. package/commands/gsd/complete-milestone.md +6 -6
  16. package/commands/gsd/debug.md +1 -1
  17. package/commands/gsd/map-codebase.md +3 -3
  18. package/commands/gsd/new-milestone.md +1 -1
  19. package/commands/gsd/new-project.md +1 -1
  20. package/commands/gsd/plan-milestone-gaps.md +2 -2
  21. package/commands/gsd/reapply-patches.md +2 -2
  22. package/commands/gsd/research-phase.md +3 -3
  23. package/commands/gsd/verify-work.md +1 -1
  24. package/{AGENTS.md → get-shit-done/AGENTS.md} +1 -1
  25. package/get-shit-done/bin/lib/commands.cjs +1 -1
  26. package/get-shit-done/bin/lib/phase.cjs +2 -2
  27. package/get-shit-done/bin/lib/verify.cjs +8 -8
  28. package/get-shit-done/references/continuation-format.md +16 -16
  29. package/get-shit-done/references/model-profiles.md +1 -1
  30. package/get-shit-done/references/ui-brand.md +2 -2
  31. package/get-shit-done/templates/DEBUG.md +1 -1
  32. package/get-shit-done/templates/UAT.md +3 -3
  33. package/get-shit-done/templates/VALIDATION.md +1 -1
  34. package/get-shit-done/templates/debug-subagent-prompt.md +1 -1
  35. package/get-shit-done/templates/discovery.md +2 -2
  36. package/get-shit-done/templates/phase-prompt.md +1 -1
  37. package/get-shit-done/templates/planner-subagent-prompt.md +3 -3
  38. package/get-shit-done/templates/project.md +1 -1
  39. package/get-shit-done/templates/research.md +1 -1
  40. package/get-shit-done/templates/retrospective.md +13 -7
  41. package/get-shit-done/templates/state.md +2 -2
  42. package/get-shit-done/workflows/add-phase.md +7 -7
  43. package/get-shit-done/workflows/add-tests.md +41 -18
  44. package/get-shit-done/workflows/add-todo.md +2 -2
  45. package/get-shit-done/workflows/audit-milestone.md +5 -5
  46. package/get-shit-done/workflows/check-todos.md +8 -8
  47. package/get-shit-done/workflows/complete-milestone.md +33 -8
  48. package/get-shit-done/workflows/diagnose-issues.md +1 -1
  49. package/get-shit-done/workflows/discovery-phase.md +3 -3
  50. package/get-shit-done/workflows/discuss-phase.md +10 -10
  51. package/get-shit-done/workflows/execute-phase.md +7 -7
  52. package/get-shit-done/workflows/execute-plan.md +3 -3
  53. package/get-shit-done/workflows/health.md +5 -5
  54. package/get-shit-done/workflows/help.md +85 -85
  55. package/get-shit-done/workflows/insert-phase.md +6 -6
  56. package/get-shit-done/workflows/list-phase-assumptions.md +4 -4
  57. package/get-shit-done/workflows/map-codebase.md +2 -2
  58. package/get-shit-done/workflows/new-milestone.md +5 -5
  59. package/get-shit-done/workflows/new-project.md +11 -11
  60. package/get-shit-done/workflows/pause-work.md +1 -1
  61. package/get-shit-done/workflows/plan-milestone-gaps.md +7 -7
  62. package/get-shit-done/workflows/plan-phase.md +12 -12
  63. package/get-shit-done/workflows/progress.md +22 -22
  64. package/get-shit-done/workflows/quick.md +3 -3
  65. package/get-shit-done/workflows/remove-phase.md +6 -6
  66. package/get-shit-done/workflows/research-phase.md +2 -2
  67. package/get-shit-done/workflows/resume-project.md +9 -9
  68. package/get-shit-done/workflows/settings.md +5 -5
  69. package/get-shit-done/workflows/transition.md +10 -10
  70. package/get-shit-done/workflows/update.md +2 -2
  71. package/get-shit-done/workflows/verify-work.md +8 -8
  72. package/package.json +2 -2
  73. package/commands/gsd/new-project.md.bak +0 -1041
@@ -1,7 +1,7 @@
1
1
  <purpose>
2
2
  Generate unit and E2E tests for a completed phase based on its SUMMARY.md, CONTEXT.md, and implementation. Classifies each changed file into TDD (unit), E2E (browser), or Skip categories, presents a test plan for user approval, then generates tests following RED-GREEN conventions.
3
3
 
4
- Users currently hand-craft `/gsd:quick` prompts for test generation after each phase. This workflow standardizes the process with proper classification, quality gates, and gap reporting.
4
+ Users currently hand-craft `$gsd-quick` prompts for test generation after each phase. This workflow standardizes the process with proper classification, quality gates, and gap reporting.
5
5
  </purpose>
6
6
 
7
7
  <required_reading>
@@ -15,15 +15,15 @@ Parse `$ARGUMENTS` for:
15
15
  - Phase number (integer, decimal, or letter-suffix) → store as `$PHASE_ARG`
16
16
  - Remaining text after phase number → store as `$EXTRA_INSTRUCTIONS` (optional)
17
17
 
18
- Example: `/gsd:add-tests 12 focus on edge cases` → `$PHASE_ARG=12`, `$EXTRA_INSTRUCTIONS="focus on edge cases"`
18
+ Example: `$gsd-add-tests 12 focus on edge cases` → `$PHASE_ARG=12`, `$EXTRA_INSTRUCTIONS="focus on edge cases"`
19
19
 
20
20
  If no phase argument provided:
21
21
 
22
22
  ```
23
23
  ERROR: Phase number required
24
- Usage: /gsd:add-tests <phase> [additional instructions]
25
- Example: /gsd:add-tests 12
26
- Example: /gsd:add-tests 12 focus on edge cases in the pricing module
24
+ Usage: $gsd-add-tests <phase> [additional instructions]
25
+ Example: $gsd-add-tests 12
26
+ Example: $gsd-add-tests 12 focus on edge cases in the pricing module
27
27
  ```
28
28
 
29
29
  Exit.
@@ -33,36 +33,43 @@ Exit.
33
33
  Load phase operation context:
34
34
 
35
35
  ```bash
36
- INIT=$(node ~/.claude/get-shit-done/bin/gsd-tools.cjs init phase-op "${PHASE_ARG}")
36
+ INIT=$(node ~/.codex/get-shit-done/bin/gsd-tools.cjs init phase-op "${PHASE_ARG}")
37
37
  ```
38
38
 
39
39
  Extract from init JSON: `phase_dir`, `phase_number`, `phase_name`.
40
40
 
41
41
  Verify the phase directory exists. If not:
42
+
42
43
  ```
43
44
  ERROR: Phase directory not found for phase ${PHASE_ARG}
44
45
  Ensure the phase exists in .planning/phases/
45
46
  ```
47
+
46
48
  Exit.
47
49
 
48
50
  Read the phase artifacts (in order of priority):
51
+
49
52
  1. `${phase_dir}/*-SUMMARY.md` — what was implemented, files changed
50
53
  2. `${phase_dir}/CONTEXT.md` — acceptance criteria, decisions
51
54
  3. `${phase_dir}/*-VERIFICATION.md` — user-verified scenarios (if UAT was done)
52
55
 
53
56
  If no SUMMARY.md exists:
57
+
54
58
  ```
55
59
  ERROR: No SUMMARY.md found for phase ${PHASE_ARG}
56
- This command works on completed phases. Run /gsd:execute-phase first.
60
+ This command works on completed phases. Run $gsd-execute-phase first.
57
61
  ```
62
+
58
63
  Exit.
59
64
 
60
65
  Present banner:
66
+
61
67
  ```
62
68
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
63
69
  GSD ► ADD TESTS — Phase ${phase_number}: ${phase_name}
64
70
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
65
71
  ```
72
+
66
73
  </step>
67
74
 
68
75
  <step name="analyze_implementation">
@@ -70,13 +77,14 @@ Extract the list of files modified by the phase from SUMMARY.md ("Files Changed"
70
77
 
71
78
  For each file, classify into one of three categories:
72
79
 
73
- | Category | Criteria | Test Type |
74
- |----------|----------|-----------|
75
- | **TDD** | Pure functions where `expect(fn(input)).toBe(output)` is writable | Unit tests |
76
- | **E2E** | UI behavior verifiable by browser automation | Playwright/E2E tests |
77
- | **Skip** | Not meaningfully testable or already covered | None |
80
+ | Category | Criteria | Test Type |
81
+ | -------- | ----------------------------------------------------------------- | -------------------- |
82
+ | **TDD** | Pure functions where `expect(fn(input)).toBe(output)` is writable | Unit tests |
83
+ | **E2E** | UI behavior verifiable by browser automation | Playwright/E2E tests |
84
+ | **Skip** | Not meaningfully testable or already covered | None |
78
85
 
79
86
  **TDD classification — apply when:**
87
+
80
88
  - Business logic: calculations, pricing, tax rules, validation
81
89
  - Data transformations: mapping, filtering, aggregation, formatting
82
90
  - Parsers: CSV, JSON, XML, custom format parsing
@@ -85,6 +93,7 @@ For each file, classify into one of three categories:
85
93
  - Utilities: string manipulation, date handling, number formatting
86
94
 
87
95
  **E2E classification — apply when:**
96
+
88
97
  - Keyboard shortcuts: key bindings, modifier keys, chord sequences
89
98
  - Navigation: page transitions, routing, breadcrumbs, back/forward
90
99
  - Form interactions: submit, validation errors, field focus, autocomplete
@@ -94,6 +103,7 @@ For each file, classify into one of three categories:
94
103
  - Data grids: sorting, filtering, inline editing, column resize
95
104
 
96
105
  **Skip classification — apply when:**
106
+
97
107
  - UI layout/styling: CSS classes, visual appearance, responsive breakpoints
98
108
  - Configuration: config files, environment variables, feature flags
99
109
  - Glue code: dependency injection setup, middleware registration, routing tables
@@ -149,12 +159,14 @@ ls package.json *.sln 2>/dev/null
149
159
  ```
150
160
 
151
161
  Identify:
162
+
152
163
  - Test directory structure (where unit tests live, where E2E tests live)
153
164
  - Naming conventions (`.test.ts`, `.spec.ts`, `*Tests.fs`, etc.)
154
165
  - Test runner commands (how to execute unit tests, how to execute E2E tests)
155
166
  - Test framework (xUnit, NUnit, Jest, Playwright, etc.)
156
167
 
157
168
  If test structure is ambiguous, ask the user:
169
+
158
170
  ```
159
171
  AskUserQuestion(
160
172
  header: "Test Structure",
@@ -162,17 +174,20 @@ AskUserQuestion(
162
174
  options: [list discovered locations]
163
175
  )
164
176
  ```
177
+
165
178
  </step>
166
179
 
167
180
  <step name="generate_test_plan">
168
181
  For each approved file, create a detailed test plan.
169
182
 
170
183
  **For TDD files**, plan tests following RED-GREEN-REFACTOR:
184
+
171
185
  1. Identify testable functions/methods in the file
172
186
  2. For each function: list input scenarios, expected outputs, edge cases
173
187
  3. Note: since code already exists, tests may pass immediately — that's OK, but verify they test the RIGHT behavior
174
188
 
175
189
  **For E2E files**, plan tests following RED-GREEN gates:
190
+
176
191
  1. Identify user scenarios from CONTEXT.md/VERIFICATION.md
177
192
  2. For each scenario: describe the user action, expected outcome, assertions
178
193
  3. Note: RED gate means confirming the test would fail if the feature were broken
@@ -213,6 +228,7 @@ For each approved TDD test:
213
228
  1. **Create test file** following discovered project conventions (directory, naming, imports)
214
229
 
215
230
  2. **Write test** with clear arrange/act/assert structure:
231
+
216
232
  ```
217
233
  // Arrange — set up inputs and expected outputs
218
234
  // Act — call the function under test
@@ -220,6 +236,7 @@ For each approved TDD test:
220
236
  ```
221
237
 
222
238
  3. **Run the test**:
239
+
223
240
  ```bash
224
241
  {discovered test command}
225
242
  ```
@@ -235,20 +252,23 @@ For each approved TDD test:
235
252
  ```
236
253
  Do NOT fix the implementation — this is a test-generation command, not a fix command. Record the finding.
237
254
  - **Test fails with error (import, syntax, etc.)**: This is a test error. Fix the test and re-run.
238
- </step>
255
+ </step>
239
256
 
240
257
  <step name="execute_e2e_generation">
241
258
  For each approved E2E test:
242
259
 
243
260
  1. **Check for existing tests** covering the same scenario:
261
+
244
262
  ```bash
245
263
  grep -r "{scenario keyword}" {e2e test directory} 2>/dev/null
246
264
  ```
265
+
247
266
  If found, extend rather than duplicate.
248
267
 
249
268
  2. **Create test file** targeting the user scenario from CONTEXT.md/VERIFICATION.md
250
269
 
251
270
  3. **Run the E2E test**:
271
+
252
272
  ```bash
253
273
  {discovered e2e command}
254
274
  ```
@@ -295,8 +315,9 @@ Create a test coverage report and present to user:
295
315
  ```
296
316
 
297
317
  Record test generation in project state:
318
+
298
319
  ```bash
299
- node ~/.claude/get-shit-done/bin/gsd-tools.cjs state-snapshot
320
+ node ~/.codex/get-shit-done/bin/gsd-tools.cjs state-snapshot
300
321
  ```
301
322
 
302
323
  If there are passing tests to commit:
@@ -314,7 +335,7 @@ Present next steps:
314
335
  ## ▶ Next Up
315
336
 
316
337
  {if bugs discovered:}
317
- **Fix discovered bugs:** `/gsd:quick fix the {N} test failures discovered in phase ${phase_number}`
338
+ **Fix discovered bugs:** `$gsd-quick fix the {N} test failures discovered in phase ${phase_number}`
318
339
 
319
340
  {if blocked tests:}
320
341
  **Resolve test blockers:** {description of what's needed}
@@ -325,16 +346,18 @@ Present next steps:
325
346
  ---
326
347
 
327
348
  **Also available:**
328
- - `/gsd:add-tests {next_phase}` — test another phase
329
- - `/gsd:verify-work {phase_number}` — run UAT verification
349
+ - `$gsd-add-tests {next_phase}` — test another phase
350
+ - `$gsd-verify-work {phase_number}` — run UAT verification
330
351
 
331
352
  ---
332
353
  ```
354
+
333
355
  </step>
334
356
 
335
357
  </process>
336
358
 
337
359
  <success_criteria>
360
+
338
361
  - [ ] Phase artifacts loaded (SUMMARY.md, CONTEXT.md, optionally VERIFICATION.md)
339
362
  - [ ] All changed files classified into TDD/E2E/Skip categories
340
363
  - [ ] Classification presented to user and approved
@@ -347,4 +370,4 @@ Present next steps:
347
370
  - [ ] Test files committed with proper message
348
371
  - [ ] Coverage gaps documented
349
372
  - [ ] Next steps presented to user
350
- </success_criteria>
373
+ </success_criteria>
@@ -27,7 +27,7 @@ Note existing areas from the todos array for consistency in infer_area step.
27
27
 
28
28
  <step name="extract_content">
29
29
  **With arguments:** Use as the title/focus.
30
- - `/gsd:add-todo Add auth token refresh` → title = "Add auth token refresh"
30
+ - `$gsd-add-todo Add auth token refresh` → title = "Add auth token refresh"
31
31
 
32
32
  **Without arguments:** Analyze recent conversation to extract:
33
33
  - The specific problem, idea, or task discussed
@@ -140,7 +140,7 @@ Would you like to:
140
140
 
141
141
  1. Continue with current work
142
142
  2. Add another todo
143
- 3. View all todos (/gsd:check-todos)
143
+ 3. View all todos ($gsd-check-todos)
144
144
  ```
145
145
  </step>
146
146
 
@@ -196,7 +196,7 @@ All requirements covered. Cross-phase integration verified. E2E flows complete.
196
196
 
197
197
  **Complete milestone** — archive and tag
198
198
 
199
- /gsd:complete-milestone {version}
199
+ $gsd-complete-milestone {version}
200
200
 
201
201
  <sub>/clear first → fresh context window</sub>
202
202
 
@@ -233,7 +233,7 @@ All requirements covered. Cross-phase integration verified. E2E flows complete.
233
233
 
234
234
  **Plan gap closure** — create phases to complete milestone
235
235
 
236
- /gsd:plan-milestone-gaps
236
+ $gsd-plan-milestone-gaps
237
237
 
238
238
  <sub>/clear first → fresh context window</sub>
239
239
 
@@ -241,7 +241,7 @@ All requirements covered. Cross-phase integration verified. E2E flows complete.
241
241
 
242
242
  **Also available:**
243
243
  - cat .planning/v{version}-MILESTONE-AUDIT.md — see full report
244
- - /gsd:complete-milestone {version} — proceed anyway (accept tech debt)
244
+ - $gsd-complete-milestone {version} — proceed anyway (accept tech debt)
245
245
 
246
246
  ───────────────────────────────────────────────────────────────
247
247
 
@@ -271,11 +271,11 @@ All requirements met. No critical blockers. Accumulated tech debt needs review.
271
271
 
272
272
  **A. Complete milestone** — accept debt, track in backlog
273
273
 
274
- /gsd:complete-milestone {version}
274
+ $gsd-complete-milestone {version}
275
275
 
276
276
  **B. Plan cleanup phase** — address debt before completing
277
277
 
278
- /gsd:plan-milestone-gaps
278
+ $gsd-plan-milestone-gaps
279
279
 
280
280
  <sub>/clear first → fresh context window</sub>
281
281
 
@@ -21,14 +21,14 @@ If `todo_count` is 0:
21
21
  ```
22
22
  No pending todos.
23
23
 
24
- Todos are captured during work sessions with /gsd:add-todo.
24
+ Todos are captured during work sessions with $gsd-add-todo.
25
25
 
26
26
  ---
27
27
 
28
28
  Would you like to:
29
29
 
30
- 1. Continue with current phase (/gsd:progress)
31
- 2. Add a todo now (/gsd:add-todo)
30
+ 1. Continue with current phase ($gsd-progress)
31
+ 2. Add a todo now ($gsd-add-todo)
32
32
  ```
33
33
 
34
34
  Exit.
@@ -36,8 +36,8 @@ Exit.
36
36
 
37
37
  <step name="parse_filter">
38
38
  Check for area filter in arguments:
39
- - `/gsd:check-todos` → show all
40
- - `/gsd:check-todos api` → filter to area:api only
39
+ - `$gsd-check-todos` → show all
40
+ - `$gsd-check-todos api` → filter to area:api only
41
41
  </step>
42
42
 
43
43
  <step name="list_todos">
@@ -55,7 +55,7 @@ Pending Todos:
55
55
  ---
56
56
 
57
57
  Reply with a number to view details, or:
58
- - `/gsd:check-todos [area]` to filter by area
58
+ - `$gsd-check-todos [area]` to filter by area
59
59
  - `q` to exit
60
60
  ```
61
61
 
@@ -117,7 +117,7 @@ Use AskUserQuestion:
117
117
  - question: "What would you like to do with this todo?"
118
118
  - options:
119
119
  - "Work on it now" — move to done, start working
120
- - "Create a phase" — /gsd:add-phase with this scope
120
+ - "Create a phase" — $gsd-add-phase with this scope
121
121
  - "Brainstorm approach" — think through before deciding
122
122
  - "Put it back" — return to list
123
123
  </step>
@@ -133,7 +133,7 @@ Update STATE.md todo count. Present problem/solution context. Begin work or ask
133
133
  Note todo reference in phase planning notes. Keep in pending. Return to list or exit.
134
134
 
135
135
  **Create a phase:**
136
- Display: `/gsd:add-phase [description from todo]`
136
+ Display: `$gsd-add-phase [description from todo]`
137
137
  Keep in pending. User runs command in fresh context.
138
138
 
139
139
  **Brainstorm approach:**
@@ -44,6 +44,7 @@ ROADMAP=$(node ~/.codex/get-shit-done/bin/gsd-tools.cjs roadmap analyze)
44
44
  ```
45
45
 
46
46
  This returns all phases with plan/summary counts and disk status. Use this to verify:
47
+
47
48
  - Which phases belong to this milestone?
48
49
  - All phases complete (all plans have summaries)? Check `disk_status === 'complete'` for each.
49
50
  - `progress_percent` should be 100%.
@@ -51,6 +52,7 @@ This returns all phases with plan/summary counts and disk status. Use this to ve
51
52
  **Requirements completion check (REQUIRED before presenting):**
52
53
 
53
54
  Parse REQUIREMENTS.md traceability table:
55
+
54
56
  - Count total v1 requirements vs checked-off (`[x]`) requirements
55
57
  - Identify any non-Complete rows in the traceability table
56
58
 
@@ -79,8 +81,9 @@ Requirements: {N}/{M} v1 requirements checked off
79
81
  ```
80
82
 
81
83
  MUST present 3 options:
84
+
82
85
  1. **Proceed anyway** — mark milestone complete with known gaps
83
- 2. **Run audit first** — `/gsd:audit-milestone` to assess gap severity
86
+ 2. **Run audit first** — `$gsd-audit-milestone` to assess gap severity
84
87
  3. **Abort** — return to development
85
88
 
86
89
  If user selects "Proceed anyway": note incomplete requirements in MILESTONES.md under `### Known Gaps` with REQ-IDs and descriptions.
@@ -113,6 +116,7 @@ Ready to mark this milestone as shipped?
113
116
  ```
114
117
 
115
118
  Wait for confirmation.
119
+
116
120
  - "adjust scope": Ask which phases to include.
117
121
  - "wait": Stop, user returns when ready.
118
122
 
@@ -232,7 +236,8 @@ Update PROJECT.md inline. Update "Last updated" footer:
232
236
 
233
237
  ```markdown
234
238
  ---
235
- *Last updated: [date] after v[X.Y] milestone*
239
+
240
+ _Last updated: [date] after v[X.Y] milestone_
236
241
  ```
237
242
 
238
243
  **Example full evolution (v1.0 → v1.1 prep):**
@@ -371,6 +376,7 @@ ARCHIVE=$(node ~/.codex/get-shit-done/bin/gsd-tools.cjs milestone complete "v[X.
371
376
  ```
372
377
 
373
378
  The CLI handles:
379
+
374
380
  - Creating `.planning/milestones/` directory
375
381
  - Archiving ROADMAP.md to `milestones/v[X.Y]-ROADMAP.md`
376
382
  - Archiving REQUIREMENTS.md to `milestones/v[X.Y]-REQUIREMENTS.md` with archive header
@@ -387,16 +393,19 @@ Verify: `✅ Milestone archived to .planning/milestones/`
387
393
  AskUserQuestion(header="Archive Phases", question="Archive phase directories to milestones/?", options: "Yes — move to milestones/v[X.Y]-phases/" | "Skip — keep phases in place")
388
394
 
389
395
  If "Yes": move phase directories to the milestone archive:
396
+
390
397
  ```bash
391
398
  mkdir -p .planning/milestones/v[X.Y]-phases
392
399
  # For each phase directory in .planning/phases/:
393
400
  mv .planning/phases/{phase-dir} .planning/milestones/v[X.Y]-phases/
394
401
  ```
402
+
395
403
  Verify: `✅ Phase directories archived to .planning/milestones/v[X.Y]-phases/`
396
404
 
397
- If "Skip": Phase directories remain in `.planning/phases/` as raw execution history. Use `/gsd:cleanup` later to archive retroactively.
405
+ If "Skip": Phase directories remain in `.planning/phases/` as raw execution history. Use `$gsd-cleanup` later to archive retroactively.
398
406
 
399
407
  After archival, the AI still handles:
408
+
400
409
  - Reorganizing ROADMAP.md with milestone grouping (requires judgment)
401
410
  - Full PROJECT.md evolution review (requires understanding)
402
411
  - Deleting original ROADMAP.md and REQUIREMENTS.md
@@ -443,13 +452,14 @@ rm .planning/REQUIREMENTS.md
443
452
  **Append to living retrospective:**
444
453
 
445
454
  Check for existing retrospective:
455
+
446
456
  ```bash
447
457
  ls .planning/RETROSPECTIVE.md 2>/dev/null
448
458
  ```
449
459
 
450
460
  **If exists:** Read the file, append new milestone section before the "## Cross-Milestone Trends" section.
451
461
 
452
- **If doesn't exist:** Create from template at `~/.claude/get-shit-done/templates/retrospective.md`.
462
+ **If doesn't exist:** Create from template at `~/.codex/get-shit-done/templates/retrospective.md`.
453
463
 
454
464
  **Gather retrospective data:**
455
465
 
@@ -468,22 +478,28 @@ ls .planning/RETROSPECTIVE.md 2>/dev/null
468
478
  **Phases:** {phase_count} | **Plans:** {plan_count}
469
479
 
470
480
  ### What Was Built
481
+
471
482
  {Extract from SUMMARY.md one-liners}
472
483
 
473
484
  ### What Worked
485
+
474
486
  {Patterns that led to smooth execution}
475
487
 
476
488
  ### What Was Inefficient
489
+
477
490
  {Missed opportunities, rework, bottlenecks}
478
491
 
479
492
  ### Patterns Established
493
+
480
494
  {New conventions discovered during this milestone}
481
495
 
482
496
  ### Key Lessons
497
+
483
498
  {Specific, actionable takeaways}
484
499
 
485
500
  ### Cost Observations
486
- - Model mix: {X}% opus, {Y}% sonnet, {Z}% haiku
501
+
502
+ - Model mix: {breakdown of model usage}
487
503
  - Sessions: {count}
488
504
  - Notable: {efficiency observation}
489
505
  ```
@@ -493,8 +509,9 @@ ls .planning/RETROSPECTIVE.md 2>/dev/null
493
509
  If the "## Cross-Milestone Trends" section exists, update the tables with new data from this milestone.
494
510
 
495
511
  **Commit:**
512
+
496
513
  ```bash
497
- node ~/.claude/get-shit-done/bin/gsd-tools.cjs commit "docs: update retrospective for v${VERSION}" --files .planning/RETROSPECTIVE.md
514
+ node ~/.codex/get-shit-done/bin/gsd-tools.cjs commit "docs: update retrospective for v${VERSION}" --files .planning/RETROSPECTIVE.md
498
515
  ```
499
516
 
500
517
  </step>
@@ -515,6 +532,7 @@ See: .planning/PROJECT.md (updated [today])
515
532
  ```
516
533
 
517
534
  **Accumulated Context:**
535
+
518
536
  - Clear decisions summary (full log in PROJECT.md)
519
537
  - Clear resolved blockers
520
538
  - Keep open blockers for next milestone
@@ -665,6 +683,7 @@ Confirm: "Tagged: v[X.Y]"
665
683
  Ask: "Push tag to remote? (y/n)"
666
684
 
667
685
  If yes:
686
+
668
687
  ```bash
669
688
  git push origin v[X.Y]
670
689
  ```
@@ -678,6 +697,7 @@ Commit milestone completion.
678
697
  ```bash
679
698
  node ~/.codex/get-shit-done/bin/gsd-tools.cjs commit "chore: complete v[X.Y] milestone" --files .planning/milestones/v[X.Y]-ROADMAP.md .planning/milestones/v[X.Y]-REQUIREMENTS.md .planning/milestones/v[X.Y]-MILESTONE-AUDIT.md .planning/MILESTONES.md .planning/PROJECT.md .planning/STATE.md
680
699
  ```
700
+
681
701
  ```
682
702
 
683
703
  Confirm: "Committed: chore: complete v[X.Y] milestone"
@@ -687,13 +707,16 @@ Confirm: "Committed: chore: complete v[X.Y] milestone"
687
707
  <step name="offer_next">
688
708
 
689
709
  ```
710
+
690
711
  ✅ Milestone v[X.Y] [Name] complete
691
712
 
692
713
  Shipped:
714
+
693
715
  - [N] phases ([M] plans, [P] tasks)
694
716
  - [One sentence of what shipped]
695
717
 
696
718
  Archived:
719
+
697
720
  - milestones/v[X.Y]-ROADMAP.md
698
721
  - milestones/v[X.Y]-REQUIREMENTS.md
699
722
 
@@ -706,11 +729,12 @@ Tag: v[X.Y]
706
729
 
707
730
  **Start Next Milestone** — questioning → research → requirements → roadmap
708
731
 
709
- `/gsd:new-milestone`
732
+ `$gsd-new-milestone`
710
733
 
711
734
  <sub>`/clear` first → fresh context window</sub>
712
735
 
713
736
  ---
737
+
714
738
  ```
715
739
 
716
740
  </step>
@@ -758,6 +782,7 @@ Milestone completion is successful when:
758
782
  - [ ] Known gaps recorded in MILESTONES.md if user proceeded with incomplete requirements
759
783
  - [ ] RETROSPECTIVE.md updated with milestone section
760
784
  - [ ] Cross-milestone trends updated
761
- - [ ] User knows next step (/gsd:new-milestone)
785
+ - [ ] User knows next step ($gsd-new-milestone)
762
786
 
763
787
  </success_criteria>
788
+ ```
@@ -201,7 +201,7 @@ Agents only diagnose—plan-phase --gaps handles fixes (no fix application).
201
201
 
202
202
  **Agent times out:**
203
203
  - Check DEBUG-{slug}.md for partial progress
204
- - Can resume with /gsd:debug
204
+ - Can resume with $gsd-debug
205
205
 
206
206
  **All agents fail:**
207
207
  - Something systemic (permissions, git, etc.)
@@ -4,7 +4,7 @@ Produces DISCOVERY.md (for Level 2-3) that informs PLAN.md creation.
4
4
 
5
5
  Called from plan-phase.md's mandatory_discovery step with a depth parameter.
6
6
 
7
- NOTE: For comprehensive ecosystem research ("how do experts build this"), use /gsd:research-phase instead, which produces RESEARCH.md.
7
+ NOTE: For comprehensive ecosystem research ("how do experts build this"), use $gsd-research-phase instead, which produces RESEARCH.md.
8
8
  </purpose>
9
9
 
10
10
  <depth_levels>
@@ -252,8 +252,8 @@ Confidence: [level]
252
252
 
253
253
  What's next?
254
254
 
255
- 1. Discuss phase context (/gsd:discuss-phase [current-phase])
256
- 2. Create phase plan (/gsd:plan-phase [current-phase])
255
+ 1. Discuss phase context ($gsd-discuss-phase [current-phase])
256
+ 2. Create phase plan ($gsd-plan-phase [current-phase])
257
257
  3. Refine discovery (dig deeper)
258
258
  4. Review discovery
259
259
 
@@ -107,7 +107,7 @@ Phase: "API documentation"
107
107
 
108
108
  <process>
109
109
 
110
- **Express path available:** If you already have a PRD or acceptance criteria document, use `/gsd:plan-phase {phase} --prd path/to/prd.md` to skip this discussion and go straight to planning.
110
+ **Express path available:** If you already have a PRD or acceptance criteria document, use `$gsd-plan-phase {phase} --prd path/to/prd.md` to skip this discussion and go straight to planning.
111
111
 
112
112
  <step name="initialize" priority="first">
113
113
  Phase number from argument (required).
@@ -122,7 +122,7 @@ Parse JSON for: `commit_docs`, `phase_found`, `phase_dir`, `phase_number`, `phas
122
122
  ```
123
123
  Phase [X] not found in roadmap.
124
124
 
125
- Use /gsd:progress to see available phases.
125
+ Use $gsd-progress to see available phases.
126
126
  ```
127
127
  Exit workflow.
128
128
 
@@ -157,7 +157,7 @@ Use AskUserQuestion:
157
157
  - header: "Plans exist"
158
158
  - question: "Phase [X] already has {plan_count} plan(s) created without user context. Your decisions here won't affect existing plans unless you replan."
159
159
  - options:
160
- - "Continue and replan after" — Capture context, then run /gsd:plan-phase {X} to replan
160
+ - "Continue and replan after" — Capture context, then run $gsd-plan-phase {X} to replan
161
161
  - "View existing plans" — Show plans before deciding
162
162
  - "Cancel" — Skip discuss-phase
163
163
 
@@ -397,14 +397,14 @@ Created: .planning/phases/${PADDED_PHASE}-${SLUG}/${PADDED_PHASE}-CONTEXT.md
397
397
 
398
398
  **Phase ${PHASE}: [Name]** — [Goal from ROADMAP.md]
399
399
 
400
- `/gsd:plan-phase ${PHASE}`
400
+ `$gsd-plan-phase ${PHASE}`
401
401
 
402
402
  <sub>`/clear` first → fresh context window</sub>
403
403
 
404
404
  ---
405
405
 
406
406
  **Also available:**
407
- - `/gsd:plan-phase ${PHASE} --skip-research` — plan without research
407
+ - `$gsd-plan-phase ${PHASE} --skip-research` — plan without research
408
408
  - Review/edit CONTEXT.md before continuing
409
409
 
410
410
  ---
@@ -486,7 +486,7 @@ Task(
486
486
  2. Follow ALL steps: initialize, validate, load context, research, plan, verify, auto-advance
487
487
  3. When spawning agents (gsd-phase-researcher, gsd-planner, gsd-plan-checker), use Task with specified subagent_type and model
488
488
  4. For step 14 (auto-advance to execute): spawn execute-phase as a Task with DIRECT file reference — tell it to read execute-phase.md. Include @file refs to execute-phase.md, checkpoints.md, tdd.md, model-profile-resolution.md. Pass --no-transition flag so execute-phase returns results instead of chaining further.
489
- 5. Do NOT use the Skill tool or /gsd: commands. Read workflow .md files directly.
489
+ 5. Do NOT use the Skill tool or $gsd- commands. Read workflow .md files directly.
490
490
  6. Return: PHASE COMPLETE (full pipeline success), PLANNING COMPLETE (planning done but execute failed/skipped), PLANNING INCONCLUSIVE, or GAPS FOUND
491
491
  </instructions>
492
492
  ",
@@ -504,23 +504,23 @@ Task(
504
504
 
505
505
  Auto-advance pipeline finished: discuss → plan → execute
506
506
 
507
- Next: /gsd:discuss-phase ${NEXT_PHASE} --auto
507
+ Next: $gsd-discuss-phase ${NEXT_PHASE} --auto
508
508
  <sub>/clear first → fresh context window</sub>
509
509
  ```
510
510
  - **PLANNING COMPLETE** → Planning done, execution didn't complete:
511
511
  ```
512
512
  Auto-advance partial: Planning complete, execution did not finish.
513
- Continue: /gsd:execute-phase ${PHASE}
513
+ Continue: $gsd-execute-phase ${PHASE}
514
514
  ```
515
515
  - **PLANNING INCONCLUSIVE / CHECKPOINT** → Stop chain:
516
516
  ```
517
517
  Auto-advance stopped: Planning needs input.
518
- Continue: /gsd:plan-phase ${PHASE}
518
+ Continue: $gsd-plan-phase ${PHASE}
519
519
  ```
520
520
  - **GAPS FOUND** → Stop chain:
521
521
  ```
522
522
  Auto-advance stopped: Gaps found during execution.
523
- Continue: /gsd:plan-phase ${PHASE} --gaps
523
+ Continue: $gsd-plan-phase ${PHASE} --gaps
524
524
  ```
525
525
 
526
526
  **If neither `--auto` nor config enabled:**