get-shit-done-cc 1.3.9 → 1.3.11

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.
@@ -5,38 +5,12 @@ Decimal phases enable urgent work insertion without renumbering:
5
5
  - Decimal phases (2.1, 2.2) = urgent insertions between integers
6
6
 
7
7
  **Rules:**
8
-
9
- - Decimals must be between consecutive integers (2.1 between 2 and 3)
8
+ - Decimals between consecutive integers (2.1 between 2 and 3)
10
9
  - Filesystem sorting works automatically (2 < 2.1 < 2.2 < 3)
11
- - Execution order follows numeric sort
12
- - Directory format: `02.1-description/` (note the dot)
13
- - Plan format: `02.1-01-PLAN.md`
14
-
15
- **Example:**
16
-
17
- ```
18
- Roadmap before insertion:
19
- - Phase 72: Analytics (complete)
20
- - Phase 73: Dashboard (planned)
21
-
22
- User: "Need Sentry bugfix before Phase 73"
23
-
24
- System creates Phase 72.1:
25
- - Phase 72: Analytics (complete)
26
- - Phase 72.1: Sentry Bugfix (INSERTED)
27
- - Phase 73: Dashboard (planned)
10
+ - Directory format: `02.1-description/`, Plan format: `02.1-01-PLAN.md`
28
11
 
29
- Execution order: 72 72.1 73
30
- ```
31
-
32
- **Validation:**
33
- When creating decimal phase X.Y:
34
-
35
- 1. Integer phase X must exist and be complete
36
- 2. Integer phase X+1 must exist in roadmap
37
- 3. Decimal X.Y must not already exist
38
- 4. Y must be >= 1
39
- </decimal_phase_numbering>
12
+ **Validation:** Integer X must exist and be complete, X+1 must exist, decimal X.Y must not exist, Y >= 1
13
+ </decimal_phase_numbering>
40
14
 
41
15
  <required_reading>
42
16
  **Read these files NOW:**
@@ -45,140 +19,55 @@ When creating decimal phase X.Y:
45
19
  2. ~/.claude/get-shit-done/references/plan-format.md
46
20
  3. ~/.claude/get-shit-done/references/scope-estimation.md
47
21
  4. ~/.claude/get-shit-done/references/checkpoints.md
48
- 5. Read `.planning/ROADMAP.md`
49
- 6. Read `.planning/PROJECT.md`
22
+ 5. .planning/ROADMAP.md
23
+ 6. .planning/PROJECT.md
50
24
 
51
- **Load domain expertise from ROADMAP:** 7. Parse ROADMAP.md's `## Domain Expertise` section for paths 8. Read each domain SKILL.md (these serve as indexes) 9. Determine phase type from ROADMAP (UI, database, API, shaders, etc.) 10. Check each SKILL.md's `<references_index>` section 11. Load ONLY references relevant to THIS phase type
52
-
53
- **Example:** Planning a UI phase for an ISF shader macOS app:
54
-
55
- - ROADMAP says: `expertise/isf-shaders`, `expertise/macos-apps`
56
- - Read both SKILL.md files
57
- - isf-shaders `<references_index>` says: "For UI phases: references/parameter-ui.md"
58
- - macos-apps `<references_index>` says: "For UI phases: references/swiftui-layout.md"
59
- - Load those two references, not everything
60
- </required_reading>
25
+ **Load domain expertise from ROADMAP:**
26
+ - Parse ROADMAP.md's `## Domain Expertise` section for paths
27
+ - Read each domain SKILL.md (these serve as indexes)
28
+ - Determine phase type and load ONLY references relevant to THIS phase type from each SKILL.md's `<references_index>`
29
+ </required_reading>
61
30
 
62
31
  <purpose>
63
- Create an executable phase prompt (PLAN.md). This is where we get specific:
64
- objective, context, tasks, verification, success criteria, and output specification.
65
-
66
- **Key insight:** PLAN.md IS the prompt that Claude executes. Not a document that
67
- gets transformed into a prompt.
32
+ Create an executable phase prompt (PLAN.md). PLAN.md IS the prompt that Claude executes - not a document that gets transformed.
68
33
  </purpose>
69
34
 
70
35
  <process>
71
36
 
72
37
  <step name="load_project_state" priority="first">
73
- Before any planning, read project state:
74
-
75
- ```bash
76
- cat .planning/STATE.md 2>/dev/null
77
- ```
78
-
79
- **If file exists:** Parse and internalize:
80
-
38
+ Read `.planning/STATE.md` and parse:
81
39
  - Current position (which phase we're planning)
82
40
  - Accumulated decisions (constraints on this phase)
83
- - Deferred issues (candidates for inclusion in this phase)
84
- - Blockers/concerns (things this phase may need to address)
85
- - Brief alignment status (are we on track?)
86
-
87
- **If file missing but .planning/ exists:**
88
-
89
- ```
90
- STATE.md missing but planning artifacts exist.
91
- Options:
92
- 1. Reconstruct from existing artifacts
93
- 2. Continue without project state (may lose accumulated context)
94
- ```
41
+ - Deferred issues (candidates for inclusion)
42
+ - Blockers/concerns (things this phase may address)
43
+ - Brief alignment status
95
44
 
96
- This ensures planning has full project context.
45
+ If STATE.md missing but .planning/ exists, offer to reconstruct or continue without.
97
46
  </step>
98
47
 
99
48
  <step name="load_codebase_context">
100
- Check if codebase map exists:
101
-
102
- ```bash
103
- ls .planning/codebase/*.md 2>/dev/null
104
- ```
105
-
106
- **If .planning/codebase/ exists:**
107
-
108
- Determine which codebase documents are relevant based on phase goal:
109
-
110
- | Phase Keywords | Load These Documents |
111
- |----------------|---------------------|
112
- | UI, frontend, components, layout | CONVENTIONS.md, STRUCTURE.md |
113
- | API, backend, endpoints, routes | ARCHITECTURE.md, CONVENTIONS.md |
114
- | database, schema, models, migration | ARCHITECTURE.md, STACK.md |
115
- | testing, tests, coverage | TESTING.md, CONVENTIONS.md |
116
- | integration, external, API, service | INTEGRATIONS.md, STACK.md |
117
- | refactor, cleanup, debt | CONCERNS.md, ARCHITECTURE.md |
118
- | setup, config, infrastructure | STACK.md, STRUCTURE.md |
119
- | (default - load minimal set) | STACK.md, ARCHITECTURE.md |
120
-
121
- Read the relevant documents and summarize key constraints for this phase:
122
- - From STACK.md: Technologies that must be used
123
- - From ARCHITECTURE.md: Patterns that must be followed
124
- - From CONVENTIONS.md: Code style requirements
125
- - From CONCERNS.md: Issues to avoid or address
126
-
127
- **Add to planning context:**
128
- Track codebase constraints for inclusion in PLAN.md context section:
129
- - Which documents loaded
130
- - Key constraints extracted
131
- - Patterns to follow
132
-
133
- **If .planning/codebase/ doesn't exist:**
134
- Skip this step - no codebase map available.
49
+ Check for `.planning/codebase/*.md` and load relevant documents based on phase type:
50
+
51
+ | Phase Keywords | Load These |
52
+ |----------------|------------|
53
+ | UI, frontend, components | CONVENTIONS.md, STRUCTURE.md |
54
+ | API, backend, endpoints | ARCHITECTURE.md, CONVENTIONS.md |
55
+ | database, schema, models | ARCHITECTURE.md, STACK.md |
56
+ | testing, tests | TESTING.md, CONVENTIONS.md |
57
+ | integration, external API | INTEGRATIONS.md, STACK.md |
58
+ | refactor, cleanup | CONCERNS.md, ARCHITECTURE.md |
59
+ | setup, config | STACK.md, STRUCTURE.md |
60
+ | (default) | STACK.md, ARCHITECTURE.md |
61
+
62
+ Track extracted constraints for PLAN.md context section.
135
63
  </step>
136
64
 
137
65
  <step name="identify_phase">
138
- Check roadmap for phases:
139
- ```bash
140
- cat .planning/ROADMAP.md
141
- ls .planning/phases/
142
- ```
66
+ Check roadmap and existing phases. If multiple phases available, ask which one to plan.
143
67
 
144
- If multiple phases available, ask which one to plan.
145
- If obvious (first incomplete phase), proceed.
68
+ **Phase number parsing:** Regex `^(\d+)(?:\.(\d+))?$` - Group 1: integer, Group 2: decimal (optional)
146
69
 
147
- **Phase number parsing:**
148
-
149
- When user provides phase number, parse using regex: `^(\d+)(?:\.(\d+))?$`
150
-
151
- - Group 1: Integer part (required) - e.g., "2" from "2" or "2.1"
152
- - Group 2: Decimal part (optional) - e.g., "1" from "2.1"
153
-
154
- **If decimal phase (e.g., 72.1):**
155
-
156
- Validate insertion:
157
-
158
- 1. Check integer phase X (72) exists in roadmap: `grep "Phase 72:" ROADMAP.md`
159
- 2. Check integer phase X (72) is complete: Look for "Complete" status
160
- 3. Check integer phase X+1 (73) exists in roadmap: `grep "Phase 73:" ROADMAP.md`
161
- 4. Check decimal X.Y (72.1) doesn't already exist: `ls .planning/phases/ | grep "^72\.1-"`
162
- 5. Decimal part Y must be >= 1
163
-
164
- If validation fails, explain issue and suggest correction.
165
-
166
- **Directory naming:**
167
-
168
- ```bash
169
- # Integer phase: 01-foundation
170
- # Decimal phase: 01.1-hotfix
171
-
172
- if decimal:
173
- DIR_NAME="${PHASE_INT}.${PHASE_DEC}-${SLUG}"
174
- else:
175
- DIR_NAME="${PHASE_INT}-${SLUG}"
176
- fi
177
- ```
178
-
179
- **Roadmap marking:**
180
-
181
- When creating decimal phases, mark them as "(INSERTED)" in roadmap entries.
70
+ **If decimal phase:** Validate integer X exists and is complete, X+1 exists in roadmap, decimal X.Y doesn't exist, Y >= 1.
182
71
 
183
72
  Read any existing PLAN.md or DISCOVERY.md in the phase directory.
184
73
  </step>
@@ -186,294 +75,74 @@ Read any existing PLAN.md or DISCOVERY.md in the phase directory.
186
75
  <step name="mandatory_discovery">
187
76
  **Discovery is MANDATORY unless you can prove current context exists.**
188
77
 
189
- Claude's training data is 6-18 months stale. Treat pre-existing knowledge as hypothesis, not fact.
190
-
191
- <discovery_decision_tree>
192
-
193
- ````
194
- Starting discovery for Phase [X]...
195
-
196
- CHECK ROADMAP FLAG FIRST
197
- ─────────────────────────────────────
198
- ```bash
199
- # Check if roadmap flagged this phase for research
200
- grep -A2 "Phase [X]:" .planning/ROADMAP.md | grep "Research:"
201
- ```
202
-
203
- → If `Research: Likely` → Minimum depth is Level 1 (don't skip to Level 0)
204
- → If `Research: Unlikely` → Level 0 check still runs (might escalate)
205
- → Flag is a hint, not a mandate - actual depth determined below
206
-
207
- LEVEL 0: Pattern Check (30 seconds)
208
- ─────────────────────────────────────
209
- **Skip this check if roadmap flagged Research: Likely**
210
-
211
- Is this pure internal work using ONLY existing codebase patterns?
212
-
213
- Check with:
214
-
215
- ```bash
216
- # Look for existing patterns in codebase
217
- grep -r "libraryName" src/ 2>/dev/null | head -5
218
- ls src/components/ 2>/dev/null # existing UI patterns
219
- cat package.json 2>/dev/null | grep -A5 '"dependencies"'
220
- ```
221
-
222
- → If ALL work follows established codebase patterns: SKIP discovery, proceed to planning
223
- → If ANY external dependency, new library, or API integration: Continue to Level 1+
224
-
225
- Does fresh DISCOVERY.md exist?
226
- ─────────────────────────────────────
227
-
228
- ```bash
229
- ls .planning/phases/XX-name/DISCOVERY.md 2>/dev/null
230
- ```
231
-
232
- If exists, check freshness:
233
-
234
- - General libraries/frameworks: Valid for 30 days
235
- - Fast-moving APIs (Stripe, OpenAI, etc.): Valid for 7 days
236
- - Check file date vs today
237
-
238
- → If fresh DISCOVERY.md exists covering this phase's topics: SKIP discovery, use existing
239
- → If missing or stale: Continue to determine depth
240
-
241
- Determine Discovery Depth
242
- ─────────────────────────────────────
243
- Assess the phase requirements:
78
+ <discovery_decision>
79
+ **Level 0 - Skip** (pure internal work, existing patterns only)
80
+ - ALL work follows established codebase patterns (grep confirms)
81
+ - No new external dependencies
82
+ - Pure internal refactoring or feature extension
83
+ - Examples: Add delete button, add field to model, create CRUD endpoint
244
84
 
245
- **LEVEL 1 - Quick Verification (2-5 min):**
246
- Use when:
247
-
248
- - Single known library, just confirming syntax/version
85
+ **Level 1 - Quick Verification** (2-5 min)
86
+ - Single known library, confirming syntax/version
249
87
  - Low-risk decision (easily changed later)
250
- - "Is X still the right choice?"
251
-
252
- Action:
253
-
254
- 1. Context7: mcp**context7**resolve-library-id → mcp**context7**get-library-docs
255
- 2. Verify current version/API matches expectations
256
- 3. No DISCOVERY.md needed - proceed with confirmed knowledge
257
-
258
- **LEVEL 2 - Standard Research (15-30 min):**
259
- Use when:
88
+ - Action: Context7 resolve-library-id + query-docs, no DISCOVERY.md needed
260
89
 
90
+ **Level 2 - Standard Research** (15-30 min)
261
91
  - Choosing between 2-3 options
262
92
  - New external integration (API, service)
263
93
  - Medium-risk decision
94
+ - Action: Route to workflows/discovery-phase.md depth=standard, produces DISCOVERY.md
264
95
 
265
- Action:
266
-
267
- 1. Route to workflows/discovery-phase.md with depth=standard
268
- 2. Produces DISCOVERY.md with recommendation
269
- 3. Return here after DISCOVERY.md created
270
-
271
- **LEVEL 3 - Deep Dive (1+ hour):**
272
- Use when:
273
-
96
+ **Level 3 - Deep Dive** (1+ hour)
274
97
  - Architectural decision with long-term impact
275
98
  - Novel problem without clear patterns
276
99
  - High-risk, hard to change later
277
- - Multiple interacting systems
278
-
279
- Action:
280
-
281
- 1. Route to workflows/discovery-phase.md with depth=deep
282
- 2. Full discovery with cross-verification
283
- 3. DISCOVERY.md with detailed rationale and validation checkpoints
284
- 4. Return here after DISCOVERY.md created
100
+ - Action: Route to workflows/discovery-phase.md depth=deep, full DISCOVERY.md
285
101
 
286
- **NOTE:** For niche/complex domains (3D, games, audio, shaders, ML), consider using `/gsd:research-phase` BEFORE plan-phase. This produces comprehensive RESEARCH.md with ecosystem knowledge that goes beyond "which library" to "how do experts build this."
102
+ **Depth indicators:**
103
+ - Level 2+: New library not in package.json, external API, "choose/select/evaluate" in description, roadmap marked Research: Yes
104
+ - Level 3: "architecture/design/system", multiple external services, data modeling, auth design, real-time/distributed
105
+ </discovery_decision>
287
106
 
288
- ```
289
- </discovery_decision_tree>
290
-
291
- <depth_indicators>
292
- **Signals requiring LEVEL 2+:**
293
- - Phase involves new library not in package.json
294
- - Phase involves external API integration
295
- - Phase description includes "choose", "select", "evaluate"
296
- - Roadmap marked this phase with `Research: Yes`
297
- - Technology mentioned that Claude hasn't used in THIS codebase
298
-
299
- **Signals requiring LEVEL 3:**
300
- - Words like "architecture", "design", "system"
301
- - Integration between multiple external services
302
- - Data modeling decisions
303
- - Authentication/authorization design
304
- - Real-time, sync, or distributed systems
305
- </depth_indicators>
306
-
307
- <skip_conditions>
308
- **Discovery can be skipped (Level 0) ONLY when ALL true:**
309
- □ Pattern already exists in codebase (grep confirms)
310
- □ No new external dependencies
311
- □ Fresh DISCOVERY.md exists (if external deps involved)
312
- □ Pure internal refactoring or feature extension
313
- □ Using established project conventions only
314
-
315
- **Examples that skip discovery:**
316
- - "Add delete button" → existing button patterns in codebase
317
- - "Add field to model" → Prisma/schema patterns established
318
- - "Create CRUD endpoint" → existing API patterns to follow
319
-
320
- **Examples that REQUIRE discovery:**
321
- - "Add authentication" → Level 2-3 (new system, choices to make)
322
- - "Integrate Stripe" → Level 2 (external API)
323
- - "Add email service" → Level 2 (compare options)
324
- - "Design data sync" → Level 3 (architectural)
325
- </skip_conditions>
326
-
327
- Present discovery decision:
328
- ```
329
-
330
- Phase [X]: [Name]
331
-
332
- Discovery assessment:
333
-
334
- - Roadmap flag: [Likely / Unlikely] ([reason from roadmap])
335
- - Roadmap topics: [topics if flagged, or N/A]
336
- - New external dependencies: [yes/no - list them]
337
- - Existing DISCOVERY.md: [yes (date) / no]
338
- - Codebase patterns exist: [yes/no]
339
-
340
- Discovery depth: [Level 0 (skip) / Level 1 (verify) / Level 2 (standard) / Level 3 (deep)]
341
- Reason: [one line explanation]
107
+ If roadmap flagged `Research: Likely`, Level 0 (skip) is not available.
342
108
 
343
- [If Level 1: Proceeding with quick verification...]
344
- [If Level 2-3: Routing to research workflow...]
345
- [If Level 0: Skipping discovery, proceeding to planning...]
346
-
347
- ````
348
-
349
- **Note:** If roadmap flagged `Research: Likely`, Level 0 (skip) is not available.
350
- The roadmap flag lowers the bar for triggering research but doesn't guarantee depth.
109
+ For niche domains (3D, games, audio, shaders, ML), suggest `/gsd:research-phase` before plan-phase.
351
110
  </step>
352
111
 
353
112
  <step name="read_project_history">
354
- Before planning, absorb accumulated project wisdom. This is the **context injection** that ensures each phase benefits from all prior phases.
355
-
356
- **1. From STATE.md (already loaded):**
113
+ **From STATE.md:** Decisions constrain approach. Deferred issues candidates. Blockers may need to address.
357
114
 
358
- - Decisions table These CONSTRAIN this phase's approach
359
- - Deferred issues → Candidates for inclusion in this phase
360
- - Blockers/concerns → Things this phase may need to address
361
-
362
- **2. Read previous phase summaries:**
363
-
364
- ```bash
365
- # List all summaries from prior phases
366
- ls .planning/phases/*/*-SUMMARY.md 2>/dev/null | sort
367
- ```
115
+ **From prior summaries:** Scan `.planning/phases/*/*-SUMMARY.md` for decisions constraining this phase, issues flagged for "later", warnings in "Next Phase Readiness", patterns to maintain.
368
116
 
369
- Don't load ALL summaries into context—scan them looking for:
117
+ **From ISSUES.md:** Assess each open issue - relevant to this phase? Waiting long enough? Natural to address now? Blocking something?
370
118
 
371
- - Decisions that constrain this phase's approach
372
- - Issues flagged for "later" where "later" is now
373
- - Warnings in "Next Phase Readiness" that apply
374
- - Patterns established that should be maintained
119
+ **Answer before proceeding:**
120
+ - Q1: What decisions from previous phases constrain this phase?
121
+ - Q2: Are there deferred issues that should become tasks?
122
+ - Q3: Are there concerns from "Next Phase Readiness" that apply?
123
+ - Q4: Given all context, does the roadmap's description still make sense?
375
124
 
376
- **3. Read ISSUES.md:**
377
-
378
- ```bash
379
- cat .planning/ISSUES.md 2>/dev/null
380
- ```
381
-
382
- For each open issue, assess:
383
-
384
- - Is this relevant to the phase being planned?
385
- - Has it been waiting long enough to address?
386
- - Would addressing it now be natural (same files/subsystem)?
387
- - Is it blocking something this phase needs?
388
-
389
- **4. Synthesize into planning context:**
390
-
391
- Before proceeding to task breakdown, answer:
392
-
393
- **Q1: What decisions from previous phases constrain this phase?**
394
- → These become explicit notes in task `<action>` sections
395
- Example: "Use jose (NOT jsonwebtoken - see Phase 1 decision)"
396
-
397
- **Q2: Are there deferred issues that should become tasks?**
398
- → These get added to the task list, marked "Addressing ISS-XXX"
399
- Example: "Task 3: Add rate limiting (ISS-001 from Phase 2)"
400
-
401
- **Q3: Are there concerns from "Next Phase Readiness" that apply?**
402
- → These inform verification criteria or become explicit tasks
403
- Example: "Load test auth endpoints (Phase 2 concern)"
404
-
405
- **Q4: Given all context, does the roadmap's description still make sense?**
406
- → If not, flag: "Phase as described may need adjustment because [X]"
407
-
408
- **5. Document what will inform the plan:**
409
-
410
- Track for inclusion in PLAN.md `<context>` section:
411
-
412
- - Which prior summaries are relevant (will be @referenced)
413
- - Which decisions apply (brief notes)
414
- - Which issues are being addressed (ISS-XXX numbers)
415
- - Which concerns are being verified
416
- </step>
125
+ Track for PLAN.md context section: relevant summaries, applicable decisions, issues being addressed, concerns being verified.
126
+ </step>
417
127
 
418
128
  <step name="gather_phase_context">
419
- For this specific phase, understand:
420
- - What's the phase goal? (from roadmap)
421
- - What exists already? (scan codebase if mid-project)
422
- - What dependencies are met? (previous phases complete?)
423
- - Any ecosystem research? (RESEARCH.md from /gsd:research-phase)
424
- - Any discovery findings? (DISCOVERY.md from mandatory discovery)
425
- - Any phase context? ({phase}-CONTEXT.md from /gsd:discuss-phase)
426
-
427
- ```bash
428
- # If mid-project, understand current state
429
- ls -la src/ 2>/dev/null
430
- cat package.json 2>/dev/null | head -20
431
-
432
- # Check for comprehensive ecosystem research (created by /gsd:research-phase)
433
- cat .planning/phases/XX-name/${PHASE}-RESEARCH.md 2>/dev/null
434
-
435
- # Check for phase-specific context (created by /gsd:discuss-phase)
436
- cat .planning/phases/XX-name/${PHASE}-CONTEXT.md 2>/dev/null
437
- ```
438
-
439
- **If {phase}-RESEARCH.md exists:**
440
- This file contains comprehensive ecosystem research for niche/complex domains. It captures:
441
- - Standard stack (libraries, versions, why they're standard)
442
- - Architecture patterns (how experts structure this type of project)
443
- - Don't hand-roll list (problems with existing solutions - use libraries instead)
444
- - Common pitfalls (mistakes to avoid)
445
- - Code examples (verified patterns from authoritative sources)
446
-
447
- **You MUST use this research to inform your planning:**
448
-
449
- - `<standard_stack>` → use these libraries, don't pick alternatives without reason
450
- - `<architecture_patterns>` → follow these patterns in task structure
451
- - `<dont_hand_roll>` → NEVER create custom solutions for listed problems
452
- - `<common_pitfalls>` → inform verification criteria, add warnings to task actions
453
- - `<code_examples>` → reference in task actions when applicable
129
+ Understand:
130
+ - Phase goal (from roadmap)
131
+ - What exists already (scan codebase if mid-project)
132
+ - Dependencies met (previous phases complete?)
133
+ - Any {phase}-RESEARCH.md (from /gsd:research-phase)
134
+ - Any DISCOVERY.md (from mandatory discovery)
135
+ - Any {phase}-CONTEXT.md (from /gsd:discuss-phase)
454
136
 
455
- **If {phase}-CONTEXT.md exists:**
456
- This file contains the user's vision gathered through pre-planning discussion. It captures how they imagine this phase working, what's essential, and what's out of scope.
137
+ **If RESEARCH.md exists:** Use standard_stack (these libraries), architecture_patterns (follow in task structure), dont_hand_roll (NEVER custom solutions for listed problems), common_pitfalls (inform verification), code_examples (reference in actions).
457
138
 
458
- **You MUST use this context to inform your planning:**
459
-
460
- - `<vision>` → how the user imagines this working (honor their intent)
461
- - `<essential>` → what must be nailed in this phase (prioritize these)
462
- - `<boundaries>` → what's explicitly out of scope (don't add these)
463
- - `<specifics>` → particular look/feel/behavior mentioned (incorporate these)
464
- - `<notes>` → additional context that informs approach
465
-
466
- **If neither RESEARCH.md nor CONTEXT.md exist:**
467
- For niche domains (3D, games, audio, shaders, etc.), suggest `/gsd:research-phase {phase}` first.
468
- For simpler domains, suggest `/gsd:discuss-phase {phase}` or proceed with roadmap description only.
139
+ **If CONTEXT.md exists:** Honor vision, prioritize essential, respect boundaries, incorporate specifics.
469
140
 
141
+ **If neither exist:** Suggest /gsd:research-phase for niche domains, /gsd:discuss-phase for simpler domains, or proceed with roadmap only.
470
142
  </step>
471
143
 
472
144
  <step name="break_into_tasks">
473
- Decompose the phase into tasks.
474
-
475
- Each task must have:
476
-
145
+ Decompose phase into tasks. Each task needs:
477
146
  - **Type**: auto, checkpoint:human-verify, checkpoint:decision (human-action rarely needed)
478
147
  - **Task name**: Clear, action-oriented
479
148
  - **Files**: Which files created/modified (for auto tasks)
@@ -481,168 +150,62 @@ Each task must have:
481
150
  - **Verify**: How to prove it worked
482
151
  - **Done**: Acceptance criteria
483
152
 
484
- **Assess TDD fit for each task:**
485
-
486
- TDD produces better design and catches bugs early. Use it when you can define expected behavior upfront.
153
+ **TDD fit:** Can you write `expect(fn(input)).toBe(output)` before writing `fn`? Yes (business logic, APIs, validation) → test-first. No (UI layout, config, glue code) → standard implementation.
487
154
 
488
- For each task, ask: Can I write `expect(fn(input)).toBe(output)` before writing `fn`?
155
+ **Checkpoints:** Visual/functional verification → checkpoint:human-verify. Implementation choices checkpoint:decision. Manual action (email, 2FA) checkpoint:human-action (rare).
489
156
 
490
- **Yes** (business logic, APIs, transformations, validation, state machines):
491
- Structure test-first. Task action: "Implement X with TDD—write failing test, then implement to pass."
157
+ **Critical:** If external resource has CLI/API (Vercel, Stripe, etc.), use type="auto" to automate. Only checkpoint for verification AFTER automation.
492
158
 
493
- **No** (UI layout, config, glue code, exploration):
494
- Standard implementation. Add tests after if coverage needed.
495
-
496
- **Identify checkpoints:**
497
-
498
- - Claude automated work needing visual/functional verification? → checkpoint:human-verify
499
- - Implementation choices to make? → checkpoint:decision
500
- - Truly unavoidable manual action (email link, 2FA)? → checkpoint:human-action (rare)
501
-
502
- **Critical:** If external resource has CLI/API (Vercel, Stripe, Upstash, GitHub, etc.), use type="auto" to automate it. Only checkpoint for verification AFTER automation.
503
-
504
- See ~/.claude/get-shit-done/references/checkpoints.md for checkpoint structure and automation guidance.
159
+ See ~/.claude/get-shit-done/references/checkpoints.md for checkpoint structure.
505
160
  </step>
506
161
 
507
162
  <step name="estimate_scope">
508
- After breaking into tasks, assess scope against the **quality degradation curve**.
509
-
510
- **ALWAYS split if:**
511
-
512
- - > 3 tasks total
513
- - Multiple subsystems (DB + API + UI = separate plans)
514
- - > 5 files modified in any single task
515
- - Complex domains (auth, payments, data modeling)
163
+ After tasks, assess against quality degradation curve.
516
164
 
517
- **Aggressive atomicity principle:** Better to have 10 small, high-quality plans than 3 large, degraded plans.
165
+ **ALWAYS split if:** >3 tasks, multiple subsystems, >5 files in any task, complex domains (auth, payments).
518
166
 
519
- **If scope is appropriate (2-3 tasks, single subsystem, <5 files per task):**
520
- Proceed to confirm_breakdown for a single plan.
167
+ **If scope appropriate (2-3 tasks, single subsystem, <5 files/task):** Proceed to confirm_breakdown.
521
168
 
522
- **If scope is large (>3 tasks):**
523
- Split into multiple plans by:
169
+ **If large (>3 tasks):** Split by subsystem, dependency, complexity, or autonomous vs interactive.
524
170
 
525
- - Subsystem (01-01: Database, 01-02: API, 01-03: UI, 01-04: Frontend)
526
- - Dependency (01-01: Setup, 01-02: Core, 01-03: Features, 01-04: Testing)
527
- - Complexity (01-01: Layout, 01-02: Data fetch, 01-03: Visualization)
528
- - Autonomous vs Interactive (group auto tasks for subagent execution)
171
+ **Each plan must be:** 2-3 tasks max, ~50% context target, independently committable.
529
172
 
530
- **Each plan must be:**
173
+ **Autonomous optimization:** No checkpoints → subagent (fresh context). Has checkpoints → main context. Group autonomous work together.
531
174
 
532
- - 2-3 tasks maximum
533
- - ~50% context target (not 80%)
534
- - Independently committable
535
-
536
- **Autonomous plan optimization:**
537
-
538
- - Plans with NO checkpoints → will execute via subagent (fresh context)
539
- - Plans with checkpoints → execute in main context (user interaction required)
540
- - Try to group autonomous work together for maximum fresh contexts
541
-
542
- See ~/.claude/get-shit-done/references/scope-estimation.md for complete splitting guidance and quality degradation analysis.
175
+ See ~/.claude/get-shit-done/references/scope-estimation.md for complete guidance.
543
176
  </step>
544
177
 
545
178
  <step name="confirm_breakdown">
546
- <config-check>
547
- ```bash
548
- cat .planning/config.json 2>/dev/null
549
- ```
550
- </config-check>
551
-
552
179
  <if mode="yolo">
553
- ```
554
- ⚡ Auto-approved: Phase [X] breakdown ([N] tasks, [M] plan(s))
555
-
556
- [Brief breakdown summary - task names and types only]
557
-
558
- Proceeding to plan creation...
559
- ```
560
-
561
- Skip directly to write_phase_prompt step.
180
+ Auto-approve and proceed to write_phase_prompt.
562
181
  </if>
563
182
 
564
- <if mode="interactive" OR="custom with gates.confirm_breakdown true">
565
- Present the breakdown inline and wait for confirmation:
566
-
567
- **If single plan (2-3 tasks):**
183
+ <if mode="interactive">
184
+ Present breakdown inline:
568
185
 
569
186
  ```
570
- Here's the proposed breakdown for Phase [X]:
571
-
572
- ### Tasks (single plan: {phase}-01-PLAN.md)
573
- 1. [Task name] - [brief description] [type: auto/checkpoint]
574
- 2. [Task name] - [brief description] [type: auto/checkpoint]
575
- [3. [Task name] - [brief description] [type: auto/checkpoint]] (optional 3rd task if small)
187
+ Phase [X] breakdown:
576
188
 
577
- Autonomous: [yes/no] (no checkpoints = subagent execution with fresh context)
189
+ ### Tasks ({phase}-01-PLAN.md)
190
+ 1. [Task] - [brief] [type]
191
+ 2. [Task] - [brief] [type]
578
192
 
579
- Does this breakdown look right? (yes / adjust / start over)
580
- ```
581
-
582
- **If multiple plans (>3 tasks or multiple subsystems):**
193
+ Autonomous: [yes/no]
583
194
 
195
+ Does this look right? (yes / adjust / start over)
584
196
  ```
585
- Here's the proposed breakdown for Phase [X]:
586
-
587
- This phase requires [N] plans to maintain quality:
588
-
589
- ### Plan 1: {phase}-01-PLAN.md - [Subsystem/Component Name]
590
- 1. [Task name] - [brief description] [type]
591
- 2. [Task name] - [brief description] [type]
592
- 3. [Task name] - [brief description] [type]
593
-
594
- ### Plan 2: {phase}-02-PLAN.md - [Subsystem/Component Name]
595
- 1. [Task name] - [brief description] [type]
596
- 2. [Task name] - [brief description] [type]
597
-
598
- [Additional plans as needed...]
599
197
 
600
- Each plan is independently executable and scoped to ~50% context.
198
+ For multiple plans, show each plan with its tasks.
601
199
 
602
- Does this breakdown look right? (yes / adjust / start over)
603
- ```
604
-
605
- Wait for confirmation before proceeding.
606
-
607
- If "adjust": Ask what to change, revise, present again.
608
- If "start over": Return to gather_phase_context step.
200
+ Wait for confirmation. If "adjust": revise. If "start over": return to gather_phase_context.
609
201
  </if>
610
202
  </step>
611
203
 
612
- <step name="approach_ambiguity">
613
- If multiple valid approaches exist for any task:
614
-
615
- Use AskUserQuestion:
616
-
617
- - header: "Approach"
618
- - question: "For [task], there are multiple valid approaches:"
619
- - options:
620
- - "[Approach A]" - [tradeoff description]
621
- - "[Approach B]" - [tradeoff description]
622
- - "Decide for me" - Use your best judgment
623
-
624
- Only ask if genuinely ambiguous. Don't ask obvious choices.
625
- </step>
626
-
627
204
  <step name="decision_gate">
628
- <if mode="yolo">
629
- ```
630
- ⚡ Auto-approved: Create phase prompt for Phase [X]
631
- ```
632
-
633
- Skip directly to write_phase_prompt step.
634
- </if>
635
-
636
- <if mode="interactive" OR="custom with gates.confirm_plan true">
637
- Use AskUserQuestion:
638
-
639
- - header: "Ready"
640
- - question: "Ready to create the phase prompt, or would you like me to ask more questions?"
641
- - options:
642
- - "Create phase prompt" - I have enough context
643
- - "Ask more questions" - There are details to clarify
644
- - "Let me add context" - I want to provide more information
645
-
205
+ <if mode="yolo">Auto-approve and proceed.</if>
206
+ <if mode="interactive">
207
+ Ask: "Ready to create the phase prompt, or ask more questions?"
208
+ Options: Create phase prompt / Ask more questions / Let me add context
646
209
  Loop until "Create phase prompt" selected.
647
210
  </if>
648
211
  </step>
@@ -650,165 +213,41 @@ Loop until "Create phase prompt" selected.
650
213
  <step name="write_phase_prompt">
651
214
  Use template from `~/.claude/get-shit-done/templates/phase-prompt.md`.
652
215
 
653
- **If single plan:**
654
- Write to `.planning/phases/XX-name/{phase}-01-PLAN.md`
655
-
656
- **If multiple plans:**
657
- Write multiple files:
658
-
659
- - `.planning/phases/XX-name/{phase}-01-PLAN.md`
660
- - `.planning/phases/XX-name/{phase}-02-PLAN.md`
661
- - `.planning/phases/XX-name/{phase}-03-PLAN.md`
662
-
663
- Each file follows the template structure:
664
-
665
- ```markdown
666
- ---
667
- phase: XX-name
668
- plan: { plan-number }
669
- type: execute
670
- domain: [if domain expertise loaded]
671
- ---
672
-
673
- <objective>
674
- [Plan-specific goal - what this plan accomplishes]
216
+ **Single plan:** Write to `.planning/phases/XX-name/{phase}-01-PLAN.md`
675
217
 
676
- Purpose: [Why this plan matters for the phase]
677
- Output: [What artifacts will be created by this plan]
678
- </objective>
218
+ **Multiple plans:** Write separate files ({phase}-01-PLAN.md, {phase}-02-PLAN.md, etc.)
679
219
 
680
- <execution_context>
681
- ./execute-phase.md
682
- ~/.claude/get-shit-done/templates/summary.md
683
- [If plan has ANY checkpoint tasks (type="checkpoint:*"), add:]
684
- ~/.claude/get-shit-done/references/checkpoints.md
685
- </execution_context>
220
+ Each plan follows template structure with:
221
+ - Frontmatter (phase, plan, type, domain)
222
+ - Objective (plan-specific goal, purpose, output)
223
+ - Execution context (execute-phase.md, summary template, checkpoints.md if needed)
224
+ - Context (@references to PROJECT, ROADMAP, STATE, codebase docs, RESEARCH/DISCOVERY/CONTEXT if exist, prior summaries, source files, prior decisions, deferred issues, concerns)
225
+ - Tasks (XML format with types)
226
+ - Verification, Success criteria, Output specification
686
227
 
687
- <context>
688
- @.planning/PROJECT.md
689
- @.planning/ROADMAP.md
690
- @.planning/STATE.md
691
-
692
- [If codebase map exists (from /gsd:map-codebase):]
693
- @.planning/codebase/STACK.md
694
- @.planning/codebase/ARCHITECTURE.md
695
- [Add other relevant docs based on phase type - see load_codebase_context step]
696
-
697
- **Codebase constraints:**
698
- - [Extracted constraints from codebase documents]
699
- - [Technologies that must be used]
700
- - [Patterns that must be followed]
701
-
702
- [If comprehensive ecosystem research exists (from /gsd:research-phase):]
703
- @.planning/phases/XX-name/{phase}-RESEARCH.md
704
-
705
- [If discovery done (from mandatory discovery):]
706
- @.planning/phases/XX-name/DISCOVERY.md
707
-
708
- [If phase context exists (from /gsd:discuss-phase):]
709
- @.planning/phases/XX-name/{phase}-CONTEXT.md
710
-
711
- [If continuing from previous plan in same phase:]
712
- @.planning/phases/XX-name/{phase}-{prev}-SUMMARY.md
713
-
714
- [Prior phase summaries relevant to this work (from read_project_history):]
715
- @.planning/phases/01-foundation/01-02-SUMMARY.md # If contains relevant decisions
716
- @.planning/phases/02-auth/02-01-SUMMARY.md # If contains relevant patterns
717
-
718
- [Document what prior context informed this plan:]
719
- **Prior decisions affecting this phase:**
720
-
721
- - [Decision from Phase X that constrains approach]
722
- - [Decision from Phase Y that establishes pattern]
723
-
724
- **Deferred issues being addressed:**
725
-
726
- - ISS-XXX: [description] (from Phase Z)
727
-
728
- **Concerns being verified:**
729
-
730
- - [Concern from Phase W's "Next Phase Readiness"]
731
-
732
- [Relevant source files:]
733
- @src/path/to/relevant.ts
734
- </context>
735
-
736
- <tasks>
737
- [Tasks in XML format with type attribute]
738
- [Mix of type="auto" and type="checkpoint:*" as needed]
739
- </tasks>
740
-
741
- <verification>
742
- [Overall plan verification checks]
743
- </verification>
744
-
745
- <success_criteria>
746
- [Measurable completion criteria for this plan]
747
- </success_criteria>
748
-
749
- <output>
750
- After completion, create `.planning/phases/XX-name/{phase}-{plan}-SUMMARY.md`
751
- [Include summary structure from template]
752
- </output>
753
- ```
754
-
755
- **For multi-plan phases:**
756
-
757
- - Each plan has focused scope (3-6 tasks)
758
- - Plans reference previous plan summaries in context
759
- - Last plan's success criteria includes "Phase X complete"
760
- </step>
228
+ For multi-plan phases: each plan has focused scope, references previous plan summaries, last plan's success criteria includes "Phase X complete".
229
+ </step>
761
230
 
762
231
  <step name="offer_next">
763
- **If single plan:**
764
232
  ```
765
233
  Phase plan created: .planning/phases/XX-name/{phase}-01-PLAN.md
766
234
  [X] tasks defined.
767
235
 
768
236
  ---
769
237
 
770
- ## Next Up
238
+ ## Next Up
771
239
 
772
- **{phase}-01: [Plan Name]** [objective summary]
240
+ **{phase}-01: [Plan Name]** - [objective summary]
773
241
 
774
242
  `/gsd:execute-plan .planning/phases/XX-name/{phase}-01-PLAN.md`
775
243
 
776
- <sub>`/clear` first fresh context window</sub>
244
+ <sub>`/clear` first - fresh context window</sub>
777
245
 
778
246
  ---
779
247
 
780
248
  **Also available:**
781
249
  - Review/adjust tasks before executing
782
-
783
- ---
784
- ```
785
-
786
- **If multiple plans:**
787
- ```
788
-
789
- Phase plans created:
790
-
791
- - {phase}-01-PLAN.md ([X] tasks) - [Subsystem name]
792
- - {phase}-02-PLAN.md ([X] tasks) - [Subsystem name]
793
- - {phase}-03-PLAN.md ([X] tasks) - [Subsystem name]
794
-
795
- Total: [X] tasks across [Y] focused plans.
796
-
797
- ---
798
-
799
- ## ▶ Next Up
800
-
801
- **{phase}-01: [Plan Name]** — [objective summary]
802
-
803
- `/gsd:execute-plan .planning/phases/XX-name/{phase}-01-PLAN.md`
804
-
805
- <sub>`/clear` first → fresh context window</sub>
806
-
807
- ---
808
-
809
- **Also available:**
810
- - Review/adjust tasks before executing
811
- - View all plans: `ls .planning/phases/XX-name/*-PLAN.md`
250
+ [If multiple plans: - View all plans: `ls .planning/phases/XX-name/*-PLAN.md`]
812
251
 
813
252
  ---
814
253
  ```
@@ -817,48 +256,35 @@ Total: [X] tasks across [Y] focused plans.
817
256
  </process>
818
257
 
819
258
  <task_quality>
820
- Good tasks:
259
+ **Good tasks:** Specific files, actions, verification
821
260
  - "Add User model to Prisma schema with email, passwordHash, createdAt"
822
261
  - "Create POST /api/auth/login endpoint with bcrypt validation"
823
- - "Add protected route middleware checking JWT in cookies"
824
262
 
825
- Bad tasks:
826
- - "Set up authentication" (too vague)
827
- - "Make it secure" (not actionable)
828
- - "Handle edge cases" (which ones?)
263
+ **Bad tasks:** Vague, not actionable
264
+ - "Set up authentication" / "Make it secure" / "Handle edge cases"
829
265
 
830
266
  If you can't specify Files + Action + Verify + Done, the task is too vague.
831
267
  </task_quality>
832
268
 
833
269
  <anti_patterns>
834
- - Don't add story points
835
- - Don't estimate hours
836
- - Don't assign to team members
837
- - Don't add acceptance criteria committees
838
- - Don't create sub-sub-sub tasks
839
-
270
+ - No story points or hour estimates
271
+ - No team assignments
272
+ - No acceptance criteria committees
273
+ - No sub-sub-sub tasks
840
274
  Tasks are instructions for Claude, not Jira tickets.
841
275
  </anti_patterns>
842
276
 
843
277
  <success_criteria>
844
- Phase planning is complete when:
845
- - [ ] STATE.md read and project history absorbed
846
- - [ ] **Mandatory discovery completed** (Level 0-3 as appropriate)
847
- - [ ] If Level 2-3: DISCOVERY.md exists with current context
848
- - [ ] If Level 1: Quick verification performed via Context7
849
- - [ ] If RESEARCH.md exists: ecosystem knowledge incorporated into plan
850
- - [ ] Prior decisions, issues, and concerns synthesized
851
- - [ ] One or more PLAN files exist with XML structure ({phase}-{plan}-PLAN.md)
852
- - [ ] Each plan has: Objective, context, tasks, verification, success criteria, output
853
- - [ ] @context references included (including STATE.md, RESEARCH.md if exists, DISCOVERY.md if exists, relevant prior summaries)
854
- - [ ] Prior decisions documented in context section
855
- - [ ] Deferred issues being addressed are noted
856
- - [ ] Each plan has 2-3 tasks (scoped to ~50% context)
857
- - [ ] Each task has: Type, Files (if auto), Action, Verify, Done
858
- - [ ] Checkpoints identified and properly structured
859
- - [ ] Tasks are specific enough for Claude to execute
860
- - [ ] If RESEARCH.md exists: "don't hand-roll" items are NOT being custom-built
861
- - [ ] If multiple plans: logical split by subsystem/dependency/complexity
278
+ Phase planning complete when:
279
+ - [ ] STATE.md read, project history absorbed
280
+ - [ ] Mandatory discovery completed (Level 0-3)
281
+ - [ ] Prior decisions, issues, concerns synthesized
282
+ - [ ] PLAN file(s) exist with XML structure
283
+ - [ ] Each plan: Objective, context, tasks, verification, success criteria, output
284
+ - [ ] @context references included (STATE, RESEARCH/DISCOVERY if exist, relevant summaries)
285
+ - [ ] Each plan: 2-3 tasks (~50% context)
286
+ - [ ] Each task: Type, Files (if auto), Action, Verify, Done
287
+ - [ ] Checkpoints properly structured
288
+ - [ ] If RESEARCH.md exists: "don't hand-roll" items NOT being custom-built
862
289
  - [ ] User knows next steps
863
290
  </success_criteria>
864
- ```