get-shit-done-cc 1.9.4 → 1.9.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.
@@ -352,6 +352,14 @@ Update GSD to latest version with changelog preview.
352
352
 
353
353
  Usage: `/gsd:update`
354
354
 
355
+ **`/gsd:join-discord`**
356
+ Join the GSD Discord community.
357
+
358
+ - Get help, share what you're building, stay updated
359
+ - Connect with other GSD users
360
+
361
+ Usage: `/gsd:join-discord`
362
+
355
363
  ## Files & Structure
356
364
 
357
365
  ```
@@ -0,0 +1,18 @@
1
+ ---
2
+ name: gsd:join-discord
3
+ description: Join the GSD Discord community
4
+ ---
5
+
6
+ <objective>
7
+ Display the Discord invite link for the GSD community server.
8
+ </objective>
9
+
10
+ <output>
11
+ # Join the GSD Discord
12
+
13
+ Connect with other GSD users, get help, share what you're building, and stay updated.
14
+
15
+ **Invite link:** https://discord.gg/5JJgD5svVS
16
+
17
+ Click the link or paste it into your browser to join.
18
+ </output>
@@ -439,7 +439,8 @@ Display spawning indicator:
439
439
  Spawn 4 parallel gsd-project-researcher agents with rich context:
440
440
 
441
441
  ```
442
- Task(prompt="
442
+ Task(prompt="First, read ~/.claude/agents/gsd-project-researcher.md for your role and instructions.
443
+
443
444
  <research_type>
444
445
  Project Research — Stack dimension for [domain].
445
446
  </research_type>
@@ -476,9 +477,10 @@ Your STACK.md feeds into roadmap creation. Be prescriptive:
476
477
  Write to: .planning/research/STACK.md
477
478
  Use template: ~/.claude/get-shit-done/templates/research-project/STACK.md
478
479
  </output>
479
- ", subagent_type="gsd-project-researcher", model="{researcher_model}", description="Stack research")
480
+ ", subagent_type="general-purpose", model="{researcher_model}", description="Stack research")
481
+
482
+ Task(prompt="First, read ~/.claude/agents/gsd-project-researcher.md for your role and instructions.
480
483
 
481
- Task(prompt="
482
484
  <research_type>
483
485
  Project Research — Features dimension for [domain].
484
486
  </research_type>
@@ -515,9 +517,10 @@ Your FEATURES.md feeds into requirements definition. Categorize clearly:
515
517
  Write to: .planning/research/FEATURES.md
516
518
  Use template: ~/.claude/get-shit-done/templates/research-project/FEATURES.md
517
519
  </output>
518
- ", subagent_type="gsd-project-researcher", model="{researcher_model}", description="Features research")
520
+ ", subagent_type="general-purpose", model="{researcher_model}", description="Features research")
521
+
522
+ Task(prompt="First, read ~/.claude/agents/gsd-project-researcher.md for your role and instructions.
519
523
 
520
- Task(prompt="
521
524
  <research_type>
522
525
  Project Research — Architecture dimension for [domain].
523
526
  </research_type>
@@ -554,9 +557,10 @@ Your ARCHITECTURE.md informs phase structure in roadmap. Include:
554
557
  Write to: .planning/research/ARCHITECTURE.md
555
558
  Use template: ~/.claude/get-shit-done/templates/research-project/ARCHITECTURE.md
556
559
  </output>
557
- ", subagent_type="gsd-project-researcher", model="{researcher_model}", description="Architecture research")
560
+ ", subagent_type="general-purpose", model="{researcher_model}", description="Architecture research")
561
+
562
+ Task(prompt="First, read ~/.claude/agents/gsd-project-researcher.md for your role and instructions.
558
563
 
559
- Task(prompt="
560
564
  <research_type>
561
565
  Project Research — Pitfalls dimension for [domain].
562
566
  </research_type>
@@ -593,7 +597,7 @@ Your PITFALLS.md prevents mistakes in roadmap/planning. For each pitfall:
593
597
  Write to: .planning/research/PITFALLS.md
594
598
  Use template: ~/.claude/get-shit-done/templates/research-project/PITFALLS.md
595
599
  </output>
596
- ", subagent_type="gsd-project-researcher", model="{researcher_model}", description="Pitfalls research")
600
+ ", subagent_type="general-purpose", model="{researcher_model}", description="Pitfalls research")
597
601
  ```
598
602
 
599
603
  After all 4 agents complete, spawn synthesizer to create SUMMARY.md:
@@ -949,14 +953,14 @@ Present completion with next steps:
949
953
 
950
954
  **Phase 1: [Phase Name]** — [Goal from ROADMAP.md]
951
955
 
952
- `/gsd:discuss-phase 1` — gather context and clarify approach
956
+ /gsd:discuss-phase 1 — gather context and clarify approach
953
957
 
954
- <sub>`/clear` first → fresh context window</sub>
958
+ <sub>/clear first → fresh context window</sub>
955
959
 
956
960
  ---
957
961
 
958
962
  **Also available:**
959
- - `/gsd:plan-phase 1` — skip discussion, plan directly
963
+ - /gsd:plan-phase 1 — skip discussion, plan directly
960
964
 
961
965
  ───────────────────────────────────────────────────────────────
962
966
  ```
@@ -173,7 +173,7 @@ REQUIREMENTS=$(cat .planning/REQUIREMENTS.md 2>/dev/null | grep -A100 "## Requir
173
173
  DECISIONS=$(grep -A20 "### Decisions Made" .planning/STATE.md 2>/dev/null)
174
174
 
175
175
  # Get phase context if exists
176
- PHASE_CONTEXT=$(cat "${PHASE_DIR}/${PHASE}-CONTEXT.md" 2>/dev/null)
176
+ PHASE_CONTEXT=$(cat "${PHASE_DIR}"/*-CONTEXT.md 2>/dev/null)
177
177
  ```
178
178
 
179
179
  Fill research prompt and spawn:
@@ -206,8 +206,8 @@ Write research findings to: {phase_dir}/{phase}-RESEARCH.md
206
206
 
207
207
  ```
208
208
  Task(
209
- prompt=research_prompt,
210
- subagent_type="gsd-phase-researcher",
209
+ prompt="First, read ~/.claude/agents/gsd-phase-researcher.md for your role and instructions.\n\n" + research_prompt,
210
+ subagent_type="general-purpose",
211
211
  model="{researcher_model}",
212
212
  description="Research Phase {phase}"
213
213
  )
@@ -315,8 +315,8 @@ Before returning PLANNING COMPLETE:
315
315
 
316
316
  ```
317
317
  Task(
318
- prompt=filled_prompt,
319
- subagent_type="gsd-planner",
318
+ prompt="First, read ~/.claude/agents/gsd-planner.md for your role and instructions.\n\n" + filled_prompt,
319
+ subagent_type="general-purpose",
320
320
  model="{planner_model}",
321
321
  description="Plan Phase {phase}"
322
322
  )
@@ -445,8 +445,8 @@ Return what changed.
445
445
 
446
446
  ```
447
447
  Task(
448
- prompt=revision_prompt,
449
- subagent_type="gsd-planner",
448
+ prompt="First, read ~/.claude/agents/gsd-planner.md for your role and instructions.\n\n" + revision_prompt,
449
+ subagent_type="general-purpose",
450
450
  model="{planner_model}",
451
451
  description="Revise Phase {phase} plans"
452
452
  )
@@ -81,7 +81,7 @@ ls .planning/phases/${PHASE}-*/RESEARCH.md 2>/dev/null
81
81
  ```bash
82
82
  grep -A20 "Phase ${PHASE}:" .planning/ROADMAP.md
83
83
  cat .planning/REQUIREMENTS.md 2>/dev/null
84
- cat .planning/phases/${PHASE}-*/${PHASE}-CONTEXT.md 2>/dev/null
84
+ cat .planning/phases/${PHASE}-*/*-CONTEXT.md 2>/dev/null
85
85
  grep -A30 "### Decisions Made" .planning/STATE.md 2>/dev/null
86
86
  ```
87
87
 
@@ -148,8 +148,8 @@ Write to: .planning/phases/${PHASE}-{slug}/${PHASE}-RESEARCH.md
148
148
 
149
149
  ```
150
150
  Task(
151
- prompt=filled_prompt,
152
- subagent_type="gsd-phase-researcher",
151
+ prompt="First, read ~/.claude/agents/gsd-phase-researcher.md for your role and instructions.\n\n" + filled_prompt,
152
+ subagent_type="general-purpose",
153
153
  model="{researcher_model}",
154
154
  description="Research Phase {phase}"
155
155
  )
@@ -182,8 +182,8 @@ Research file: @.planning/phases/${PHASE}-{slug}/${PHASE}-RESEARCH.md
182
182
 
183
183
  ```
184
184
  Task(
185
- prompt=continuation_prompt,
186
- subagent_type="gsd-phase-researcher",
185
+ prompt="First, read ~/.claude/agents/gsd-phase-researcher.md for your role and instructions.\n\n" + continuation_prompt,
186
+ subagent_type="general-purpose",
187
187
  model="{researcher_model}",
188
188
  description="Continue research Phase {phase}"
189
189
  )
@@ -275,14 +275,6 @@ The output should answer: "What does the researcher need to investigate? What ch
275
275
  - "Fast and responsive"
276
276
  - "Easy to use"
277
277
 
278
- **Sections explained:**
279
-
280
- - **Domain** — The scope anchor. Copied/derived from ROADMAP.md. Fixed boundary.
281
- - **Decisions** — Organized by areas discussed (NOT predefined categories). Section headers come from the actual discussion — "Layout style", "Flag design", "Grouping criteria", etc.
282
- - **Claude's Discretion** — Explicit acknowledgment of what Claude can decide during implementation.
283
- - **Specifics** — Product references, examples, "like X but..." statements.
284
- - **Deferred** — Ideas captured but explicitly out of scope. Prevents scope creep while preserving good ideas.
285
-
286
278
  **After creation:**
287
279
  - File lives in phase directory: `.planning/phases/XX-name/{phase}-CONTEXT.md`
288
280
  - `gsd-phase-researcher` uses decisions to focus investigation
@@ -174,33 +174,3 @@ It's a DIGEST, not an archive. If accumulated context grows too large:
174
174
  The goal is "read once, know where we are" — if it's too long, that fails.
175
175
 
176
176
  </size_constraint>
177
-
178
- <guidelines>
179
-
180
- **When created:**
181
- - During project initialization (after ROADMAP.md)
182
- - Reference PROJECT.md (extract core value and current focus)
183
- - Initialize empty sections
184
-
185
- **When read:**
186
- - Every workflow starts by reading STATE.md
187
- - Then read PROJECT.md for full context
188
- - Provides instant context restoration
189
-
190
- **When updated:**
191
- - After each plan execution (update position, note decisions, update issues/blockers)
192
- - After phase transitions (update progress bar, clear resolved blockers, refresh project reference)
193
-
194
- **Size management:**
195
- - Keep under 100 lines total
196
- - Recent decisions only in STATE.md (full log in PROJECT.md)
197
- - Keep only active blockers
198
-
199
- **Sections:**
200
- - Project Reference: Pointer to PROJECT.md with core value
201
- - Current Position: Where we are now (phase, plan, status)
202
- - Performance Metrics: Velocity tracking
203
- - Accumulated Context: Recent decisions, pending todos, blockers
204
- - Session Continuity: Resume information
205
-
206
- </guidelines>
@@ -233,37 +233,14 @@ The one-liner should tell someone what actually shipped.
233
233
  </example>
234
234
 
235
235
  <guidelines>
236
- **When to create:**
237
- - After completing each phase plan
238
- - Required output from execute-plan workflow
239
- - Documents what actually happened vs what was planned
240
-
241
- **Frontmatter completion:**
242
- - MANDATORY: Complete all frontmatter fields during summary creation
243
- - See <frontmatter_guidance> for field purposes
244
- - Frontmatter enables automatic context assembly for future planning
245
-
246
- **One-liner requirements:**
247
- - Must be substantive (describe what shipped, not "phase complete")
248
- - Should tell someone what was accomplished
249
- - Examples: "JWT auth with refresh rotation using jose library" not "Authentication implemented"
250
-
251
- **Performance tracking:**
252
- - Include duration, start/end timestamps
253
- - Used for velocity metrics in STATE.md
254
-
255
- **Deviations section:**
256
- - Documents unplanned work handled via deviation rules
257
- - Separate from "Issues Encountered" (which is planned work problems)
258
- - Auto-fixed issues: What was wrong, how fixed, verification
236
+ **Frontmatter:** MANDATORY - complete all fields. Enables automatic context assembly for future planning.
237
+
238
+ **One-liner:** Must be substantive. "JWT auth with refresh rotation using jose library" not "Authentication implemented".
259
239
 
260
240
  **Decisions section:**
261
- - Key decisions made during execution
262
- - Include rationale (why this choice)
241
+ - Key decisions made during execution with rationale
263
242
  - Extracted to STATE.md accumulated context
264
243
  - Use "None - followed plan as specified" if no deviations
265
244
 
266
- **After creation:**
267
- - STATE.md updated with position, decisions, issues
268
- - Next plan can reference decisions made
245
+ **After creation:** STATE.md updated with position, decisions, issues.
269
246
  </guidelines>
@@ -304,20 +304,8 @@ curl -X POST http://localhost:3000/api/test-email \
304
304
 
305
305
  ## Guidelines
306
306
 
307
- **Include in USER-SETUP.md:**
308
- - Environment variable names and where to find values
309
- - Account creation URLs (if new service)
310
- - Dashboard configuration steps
311
- - Verification commands to confirm setup works
312
- - Local development alternatives (e.g., `stripe listen`)
313
-
314
- **Do NOT include:**
315
- - Actual secret values (never)
316
- - Steps Claude can automate (package installs, code changes, file creation)
317
- - Generic instructions ("set up your environment")
307
+ **Never include:** Actual secret values. Steps Claude can automate (package installs, code changes).
318
308
 
319
309
  **Naming:** `{phase}-USER-SETUP.md` matches the phase number pattern.
320
-
321
310
  **Status tracking:** User marks checkboxes and updates status line when complete.
322
-
323
311
  **Searchability:** `grep -r "USER-SETUP" .planning/` finds all phases with user requirements.
@@ -29,12 +29,7 @@ When a milestone completes, this workflow:
29
29
  5. Performs full PROJECT.md evolution review
30
30
  6. Offers to create next milestone inline
31
31
 
32
- **Context Efficiency:**
33
-
34
- - Completed milestones: One line each (~50 tokens)
35
- - Full details: In archive files (loaded only when needed)
36
- - Result: ROADMAP.md stays constant size forever
37
- - Result: REQUIREMENTS.md is always milestone-scoped (not cumulative)
32
+ **Context Efficiency:** Archives keep ROADMAP.md constant-size and REQUIREMENTS.md milestone-scoped.
38
33
 
39
34
  **Archive Format:**
40
35
 
@@ -201,21 +201,8 @@ Do NOT offer manual next steps - verify-work handles the rest.
201
201
  </process>
202
202
 
203
203
  <context_efficiency>
204
- **Orchestrator context:** ~15%
205
- - Parse UAT.md gaps
206
- - Fill template strings
207
- - Spawn parallel Task calls
208
- - Collect results
209
- - Update UAT.md
210
-
211
- **Each debug agent:** Fresh 200k context
212
- - Loads full debug workflow
213
- - Loads debugging references
214
- - Investigates with full capacity
215
- - Returns root cause
216
-
217
- **No symptom gathering.** Agents start with symptoms pre-filled from UAT.
218
- **No fix application.** Agents only diagnose - plan-phase --gaps handles fixes.
204
+ Agents start with symptoms pre-filled from UAT (no symptom gathering).
205
+ Agents only diagnose—plan-phase --gaps handles fixes (no fix application).
219
206
  </context_efficiency>
220
207
 
221
208
  <failure_handling>
@@ -132,7 +132,7 @@ Check if CONTEXT.md already exists:
132
132
  ```bash
133
133
  # Match both zero-padded (05-*) and unpadded (5-*) folders
134
134
  PADDED_PHASE=$(printf "%02d" ${PHASE})
135
- ls .planning/phases/${PADDED_PHASE}-*/CONTEXT.md .planning/phases/${PADDED_PHASE}-*/${PADDED_PHASE}-CONTEXT.md .planning/phases/${PHASE}-*/CONTEXT.md .planning/phases/${PHASE}-*/${PHASE}-CONTEXT.md 2>/dev/null
135
+ ls .planning/phases/${PADDED_PHASE}-*/*-CONTEXT.md .planning/phases/${PHASE}-*/*-CONTEXT.md 2>/dev/null
136
136
  ```
137
137
 
138
138
  **If exists:**
@@ -550,24 +550,9 @@ All {N} phases executed.
550
550
  </process>
551
551
 
552
552
  <context_efficiency>
553
- **Why this works:**
554
-
555
- Orchestrator context usage: ~10-15%
556
- - Read plan frontmatter (small)
557
- - Analyze dependencies (logic, no heavy reads)
558
- - Fill template strings
559
- - Spawn Task calls
560
- - Collect results
561
-
562
- Each subagent: Fresh 200k context
563
- - Loads full execute-plan workflow
564
- - Loads templates, references
565
- - Executes plan with full capacity
566
- - Creates SUMMARY, commits
567
-
568
- **No polling.** Task tool blocks until completion. No TaskOutput loops.
569
-
570
- **No context bleed.** Orchestrator never reads workflow internals. Just paths and results.
553
+ Orchestrator: ~10-15% context (frontmatter, spawning, results).
554
+ Subagents: Fresh 200k each (full workflow + execution).
555
+ No polling (Task blocks). No context bleed.
571
556
  </context_efficiency>
572
557
 
573
558
  <failure_handling>
@@ -216,19 +216,7 @@ Tasks 2-5: Main context (need decision from checkpoint 1)
216
216
  No segmentation benefit - execute entirely in main
217
217
  ```
218
218
 
219
- **4. Why this works:**
220
-
221
- **Segmentation benefits:**
222
-
223
- - Fresh context for each autonomous segment (0% start every time)
224
- - Main context only for checkpoints (~10-20% total)
225
- - Can handle 10+ task plans if properly segmented
226
- - Quality impossible to degrade in autonomous segments
227
-
228
- **When segmentation provides no benefit:**
229
-
230
- - Checkpoint is decision/human-action and following tasks depend on outcome
231
- - Better to execute sequentially in main than break flow
219
+ **4. Why segment:** Fresh context per subagent preserves peak quality. Main context stays lean (~15% usage).
232
220
 
233
221
  **5. Implementation:**
234
222
 
@@ -533,18 +521,7 @@ Committing...
533
521
 
534
522
  ````
535
523
 
536
- **Benefits of this pattern:**
537
- - Main context usage: ~20% (just orchestration + checkpoints)
538
- - Subagent 1: Fresh 0-30% (tasks 1-3)
539
- - Subagent 2: Fresh 0-30% (tasks 5-6)
540
- - Subagent 3: Fresh 0-20% (task 8)
541
- - All autonomous work: Peak quality
542
- - Can handle large plans with many tasks if properly segmented
543
-
544
- **When NOT to use segmentation:**
545
- - Plan has decision/human-action checkpoints that affect following tasks
546
- - Following tasks depend on checkpoint outcome
547
- - Better to execute in main sequentially in those cases
524
+ **Benefit:** Each subagent starts fresh (~20-30% context), enabling larger plans without quality degradation.
548
525
  </step>
549
526
 
550
527
  <step name="load_prompt">
@@ -1068,13 +1045,6 @@ Store in array or list for SUMMARY generation:
1068
1045
  TASK_COMMITS+=("Task ${TASK_NUM}: ${TASK_COMMIT}")
1069
1046
  ```
1070
1047
 
1071
- **Atomic commit benefits:**
1072
- - Each task independently revertable
1073
- - Git bisect finds exact failing task
1074
- - Git blame traces line to specific task context
1075
- - Clear history for Claude in future sessions
1076
- - Better observability for AI-automated workflow
1077
-
1078
1048
  </task_commit>
1079
1049
 
1080
1050
  <step name="checkpoint_protocol">
@@ -132,7 +132,7 @@ Wait for user response.
132
132
  Acknowledge the corrections:
133
133
 
134
134
  ```
135
- Got it. Key corrections:
135
+ Key corrections:
136
136
  - [correction 1]
137
137
  - [correction 2]
138
138
 
@@ -142,7 +142,7 @@ This changes my understanding significantly. [Summarize new understanding]
142
142
  **If user confirms assumptions:**
143
143
 
144
144
  ```
145
- Great, assumptions validated.
145
+ Assumptions validated.
146
146
  ```
147
147
 
148
148
  Continue to offer_next.
@@ -7,10 +7,7 @@ Use this workflow when:
7
7
  </trigger>
8
8
 
9
9
  <purpose>
10
- Instantly restore full project context and present clear status.
11
- Enables seamless session continuity for fully autonomous workflows.
12
-
13
- "Where were we?" should have an immediate, complete answer.
10
+ Instantly restore full project context so "Where were we?" has an immediate, complete answer.
14
11
  </purpose>
15
12
 
16
13
  <required_reading>
@@ -200,7 +197,7 @@ What would you like to do?
200
197
  **Note:** When offering phase planning, check for CONTEXT.md existence first:
201
198
 
202
199
  ```bash
203
- ls .planning/phases/XX-name/CONTEXT.md 2>/dev/null
200
+ ls .planning/phases/XX-name/*-CONTEXT.md 2>/dev/null
204
201
  ```
205
202
 
206
203
  If missing, suggest discuss-phase before plan. If exists, offer plan directly.
@@ -290,17 +287,12 @@ This handles cases where:
290
287
  </reconstruction>
291
288
 
292
289
  <quick_resume>
293
- For users who want minimal friction:
294
-
295
- If user says just "continue" or "go":
296
-
290
+ If user says "continue" or "go":
297
291
  - Load state silently
298
292
  - Determine primary action
299
293
  - Execute immediately without presenting options
300
294
 
301
295
  "Continuing from [state]... [action]"
302
-
303
- This enables fully autonomous "just keep going" workflow.
304
296
  </quick_resume>
305
297
 
306
298
  <success_criteria>
@@ -514,15 +514,7 @@ Exit skill and invoke SlashCommand("/gsd:complete-milestone {version}")
514
514
  </process>
515
515
 
516
516
  <implicit_tracking>
517
-
518
- Progress tracking is IMPLICIT:
519
-
520
- - "Plan phase 2" → Phase 1 must be done (or ask)
521
- - "Plan phase 3" → Phases 1-2 must be done (or ask)
522
- - Transition workflow makes it explicit in ROADMAP.md
523
-
524
- No separate "update progress" step. Forward motion IS progress.
525
-
517
+ Progress tracking is IMPLICIT: planning phase N implies phases 1-(N-1) complete. No separate progress step—forward motion IS progress.
526
518
  </implicit_tracking>
527
519
 
528
520
  <partial_completion>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "get-shit-done-cc",
3
- "version": "1.9.4",
3
+ "version": "1.9.11",
4
4
  "description": "A meta-prompting, context engineering and spec-driven development system for Claude Code by TÂCHES.",
5
5
  "bin": {
6
6
  "get-shit-done-cc": "bin/install.js"