get-shit-done-cc 1.9.13 → 1.10.0-experimental.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 (60) hide show
  1. package/README.md +8 -0
  2. package/agents/design-specialist.md +222 -0
  3. package/agents/gsd-executor.md +37 -375
  4. package/agents/gsd-planner.md +15 -108
  5. package/bin/install.js +92 -5
  6. package/commands/gsd/autopilot.md +518 -0
  7. package/commands/gsd/checkpoints.md +229 -0
  8. package/commands/gsd/design-system.md +70 -0
  9. package/commands/gsd/discuss-design.md +77 -0
  10. package/commands/gsd/extend.md +80 -0
  11. package/commands/gsd/help.md +43 -0
  12. package/commands/gsd/new-project.md +94 -8
  13. package/commands/gsd/plan-phase.md +35 -5
  14. package/get-shit-done/references/ccr-integration.md +468 -0
  15. package/get-shit-done/references/checkpoint-execution.md +369 -0
  16. package/get-shit-done/references/checkpoint-types.md +728 -0
  17. package/get-shit-done/references/deviation-rules.md +215 -0
  18. package/get-shit-done/references/framework-patterns.md +543 -0
  19. package/get-shit-done/references/ui-principles.md +258 -0
  20. package/get-shit-done/references/verification-patterns.md +1 -1
  21. package/get-shit-done/skills/gsd-extend/SKILL.md +154 -0
  22. package/get-shit-done/skills/gsd-extend/references/agent-structure.md +305 -0
  23. package/get-shit-done/skills/gsd-extend/references/extension-anatomy.md +123 -0
  24. package/get-shit-done/skills/gsd-extend/references/reference-structure.md +408 -0
  25. package/get-shit-done/skills/gsd-extend/references/template-structure.md +370 -0
  26. package/get-shit-done/skills/gsd-extend/references/validation-rules.md +140 -0
  27. package/get-shit-done/skills/gsd-extend/references/workflow-structure.md +253 -0
  28. package/get-shit-done/skills/gsd-extend/templates/agent-template.md +234 -0
  29. package/get-shit-done/skills/gsd-extend/templates/reference-template.md +239 -0
  30. package/get-shit-done/skills/gsd-extend/templates/workflow-template.md +169 -0
  31. package/get-shit-done/skills/gsd-extend/workflows/create-approach.md +332 -0
  32. package/get-shit-done/skills/gsd-extend/workflows/list-extensions.md +133 -0
  33. package/get-shit-done/skills/gsd-extend/workflows/remove-extension.md +93 -0
  34. package/get-shit-done/skills/gsd-extend/workflows/validate-extension.md +184 -0
  35. package/get-shit-done/templates/autopilot-script-simple.sh +181 -0
  36. package/get-shit-done/templates/autopilot-script.sh +1142 -0
  37. package/get-shit-done/templates/autopilot-script.sh.backup +1142 -0
  38. package/get-shit-done/templates/design-system.md +238 -0
  39. package/get-shit-done/templates/phase-design.md +205 -0
  40. package/get-shit-done/templates/phase-models-template.json +71 -0
  41. package/get-shit-done/templates/phase-prompt.md +4 -4
  42. package/get-shit-done/templates/state.md +37 -0
  43. package/get-shit-done/tui/App.tsx +169 -0
  44. package/get-shit-done/tui/README.md +107 -0
  45. package/get-shit-done/tui/build.js +37 -0
  46. package/get-shit-done/tui/components/ActivityFeed.tsx +126 -0
  47. package/get-shit-done/tui/components/PhaseCard.tsx +86 -0
  48. package/get-shit-done/tui/components/StatsBar.tsx +147 -0
  49. package/get-shit-done/tui/dist/index.js +387 -0
  50. package/get-shit-done/tui/index.tsx +12 -0
  51. package/get-shit-done/tui/package-lock.json +1074 -0
  52. package/get-shit-done/tui/package.json +22 -0
  53. package/get-shit-done/tui/utils/pipeReader.ts +129 -0
  54. package/get-shit-done/workflows/design-system.md +245 -0
  55. package/get-shit-done/workflows/discuss-design.md +330 -0
  56. package/get-shit-done/workflows/execute-phase.md +44 -1
  57. package/get-shit-done/workflows/execute-plan-auth.md +122 -0
  58. package/get-shit-done/workflows/execute-plan-checkpoints.md +541 -0
  59. package/get-shit-done/workflows/execute-plan.md +34 -856
  60. package/package.json +8 -3
@@ -0,0 +1,370 @@
1
+ <template_structure>
2
+
3
+ ## Template Extensions
4
+
5
+ Templates define consistent output structures for artifacts. They're used by workflows and agents to produce standardized documents.
6
+
7
+ ## Required Frontmatter
8
+
9
+ ```yaml
10
+ ---
11
+ name: template-name
12
+ description: What this template produces
13
+ used_by:
14
+ - workflow-name # Workflows that use this template
15
+ - agent-name # Agents that use this template
16
+ placeholders:
17
+ - name # List of placeholders in template
18
+ - description # Helps users understand what to provide
19
+ - date
20
+ ---
21
+ ```
22
+
23
+ ## Template Body Structure
24
+
25
+ ```xml
26
+ <template>
27
+
28
+ # {title}
29
+
30
+ **Created:** {date}
31
+ **Author:** {author}
32
+
33
+ ## Section One
34
+
35
+ {section_one_content}
36
+
37
+ ## Section Two
38
+
39
+ | Column A | Column B |
40
+ |----------|----------|
41
+ | {row1_a} | {row1_b} |
42
+ | {row2_a} | {row2_b} |
43
+
44
+ ## Section Three
45
+
46
+ {section_three_content}
47
+
48
+ ---
49
+ *Generated by GSD*
50
+
51
+ </template>
52
+
53
+ <guidelines>
54
+
55
+ ## How to Fill This Template
56
+
57
+ **{title}:** Short descriptive title
58
+
59
+ **{date}:** ISO format (YYYY-MM-DD)
60
+
61
+ **{section_one_content}:**
62
+ - Include X, Y, Z
63
+ - Format as bullets or prose
64
+ - Length: 2-5 sentences
65
+
66
+ ...
67
+
68
+ </guidelines>
69
+
70
+ <examples>
71
+
72
+ ## Good Example
73
+
74
+ ```markdown
75
+ # Authentication Implementation
76
+
77
+ **Created:** 2025-01-26
78
+ **Author:** Claude
79
+
80
+ ## Overview
81
+
82
+ JWT-based authentication with refresh token rotation...
83
+ ```
84
+
85
+ ## Bad Example
86
+
87
+ ```markdown
88
+ # Auth
89
+
90
+ **Created:** today
91
+
92
+ ## Overview
93
+
94
+ Did auth stuff.
95
+ ```
96
+
97
+ The bad example is too vague and doesn't follow formatting guidelines.
98
+
99
+ </examples>
100
+ ```
101
+
102
+ ## Placeholder Syntax
103
+
104
+ Templates use curly braces for placeholders:
105
+
106
+ ```
107
+ {placeholder_name}
108
+ ```
109
+
110
+ Placeholders can have defaults:
111
+
112
+ ```
113
+ {placeholder_name|default_value}
114
+ ```
115
+
116
+ Placeholders can be conditional:
117
+
118
+ ```
119
+ {?optional_section}
120
+ Content that only appears if optional_section is provided.
121
+ {/optional_section}
122
+ ```
123
+
124
+ ## Template Usage
125
+
126
+ Templates are used via @-reference:
127
+
128
+ ```xml
129
+ <output>
130
+ Create `.planning/phases/XX-name/{phase}-{plan}-SUMMARY.md`
131
+ Use template: @~/.claude/gsd-extensions/templates/my-summary.md
132
+ </output>
133
+ ```
134
+
135
+ The executor:
136
+ 1. Loads template
137
+ 2. Fills placeholders with actual values
138
+ 3. Writes resulting document
139
+
140
+ ## Example: API Documentation Template
141
+
142
+ ```yaml
143
+ ---
144
+ name: api-endpoint-doc
145
+ description: Documentation template for API endpoints
146
+ used_by:
147
+ - execute-plan
148
+ placeholders:
149
+ - endpoint_path
150
+ - method
151
+ - description
152
+ - request_body
153
+ - response_body
154
+ - error_codes
155
+ ---
156
+ ```
157
+
158
+ ```xml
159
+ <template>
160
+
161
+ # {method} {endpoint_path}
162
+
163
+ {description}
164
+
165
+ ## Request
166
+
167
+ **Method:** {method}
168
+ **Path:** {endpoint_path}
169
+ **Authentication:** {auth_required|Required}
170
+
171
+ ### Headers
172
+
173
+ | Header | Required | Description |
174
+ |--------|----------|-------------|
175
+ | Authorization | {auth_required|Yes} | Bearer token |
176
+ | Content-Type | Yes | application/json |
177
+
178
+ ### Body
179
+
180
+ ```json
181
+ {request_body}
182
+ ```
183
+
184
+ ### Parameters
185
+
186
+ {?path_params}
187
+ **Path Parameters:**
188
+
189
+ | Parameter | Type | Description |
190
+ |-----------|------|-------------|
191
+ {path_params}
192
+ {/path_params}
193
+
194
+ {?query_params}
195
+ **Query Parameters:**
196
+
197
+ | Parameter | Type | Required | Description |
198
+ |-----------|------|----------|-------------|
199
+ {query_params}
200
+ {/query_params}
201
+
202
+ ## Response
203
+
204
+ ### Success (200)
205
+
206
+ ```json
207
+ {response_body}
208
+ ```
209
+
210
+ ### Errors
211
+
212
+ | Code | Description |
213
+ |------|-------------|
214
+ {error_codes}
215
+
216
+ ## Example
217
+
218
+ ### Request
219
+
220
+ ```bash
221
+ curl -X {method} \
222
+ -H "Authorization: Bearer $TOKEN" \
223
+ -H "Content-Type: application/json" \
224
+ -d '{request_body}' \
225
+ https://api.example.com{endpoint_path}
226
+ ```
227
+
228
+ ### Response
229
+
230
+ ```json
231
+ {response_body}
232
+ ```
233
+
234
+ </template>
235
+
236
+ <guidelines>
237
+
238
+ ## Filling This Template
239
+
240
+ **{endpoint_path}:** Full path including parameters (e.g., `/api/users/:id`)
241
+
242
+ **{method}:** HTTP method (GET, POST, PUT, PATCH, DELETE)
243
+
244
+ **{description}:** 1-2 sentences describing what the endpoint does
245
+
246
+ **{request_body}:** JSON example of request body (or "N/A" for GET)
247
+
248
+ **{response_body}:** JSON example of successful response
249
+
250
+ **{error_codes}:** Table rows of error codes and descriptions
251
+
252
+ </guidelines>
253
+ ```
254
+
255
+ ## Example: Phase Summary Template (Override)
256
+
257
+ Override the built-in summary template:
258
+
259
+ ```yaml
260
+ ---
261
+ name: summary
262
+ description: Custom phase summary format for this project
263
+ used_by:
264
+ - execute-plan
265
+ placeholders:
266
+ - phase
267
+ - plan
268
+ - objective
269
+ - accomplishments
270
+ - decisions
271
+ - next_steps
272
+ ---
273
+ ```
274
+
275
+ ```xml
276
+ <template>
277
+
278
+ ---
279
+ phase: {phase}
280
+ plan: {plan}
281
+ completed: {date}
282
+ duration: {duration}
283
+ ---
284
+
285
+ # Phase {phase} Plan {plan}: {title}
286
+
287
+ > {one_liner}
288
+
289
+ ## What We Built
290
+
291
+ {accomplishments}
292
+
293
+ ## Technical Decisions
294
+
295
+ | Decision | Why | Impact |
296
+ |----------|-----|--------|
297
+ {decisions}
298
+
299
+ ## Files Changed
300
+
301
+ **Created:**
302
+ {files_created}
303
+
304
+ **Modified:**
305
+ {files_modified}
306
+
307
+ ## What's Next
308
+
309
+ {next_steps}
310
+
311
+ ## Verification
312
+
313
+ - [x] All tasks complete
314
+ - [x] Tests pass
315
+ - [x] Code reviewed
316
+
317
+ ---
318
+ *Plan completed {date}*
319
+
320
+ </template>
321
+
322
+ <guidelines>
323
+
324
+ ## Filling This Template
325
+
326
+ **{one_liner}:** Substantive summary (not "Authentication implemented")
327
+ - Good: "JWT auth with refresh rotation using jose library"
328
+ - Bad: "Did auth"
329
+
330
+ **{accomplishments}:** Bullet list of what was actually built
331
+ - Be specific about functionality
332
+ - Include relevant technical details
333
+
334
+ **{decisions}:** Table of architectural/technical decisions made
335
+ - Include WHY, not just WHAT
336
+ - Note impact on future work
337
+
338
+ </guidelines>
339
+ ```
340
+
341
+ ## Template Best Practices
342
+
343
+ **1. Clear placeholders**
344
+ Name placeholders descriptively. `{user_name}` not `{x}`.
345
+
346
+ **2. Include guidelines**
347
+ Template users need to know what goes in each placeholder.
348
+
349
+ **3. Provide examples**
350
+ Show good vs bad filled templates.
351
+
352
+ **4. Use conditional sections**
353
+ Templates should handle optional content gracefully.
354
+
355
+ **5. Match existing patterns**
356
+ If extending built-in templates, maintain similar structure.
357
+
358
+ **6. Document usage**
359
+ Note which workflows/agents use this template.
360
+
361
+ ## Template Discovery
362
+
363
+ GSD discovers templates by:
364
+
365
+ 1. Checking `@` references in workflow/agent files
366
+ 2. Scanning template directories for matches
367
+
368
+ Templates are NOT auto-loaded. They must be explicitly referenced.
369
+
370
+ </template_structure>
@@ -0,0 +1,140 @@
1
+ <validation_rules>
2
+
3
+ ## Extension Validation
4
+
5
+ All extensions are validated before activation. Invalid extensions are skipped with warning.
6
+
7
+ ## Common Validation Rules
8
+
9
+ **1. YAML Frontmatter**
10
+
11
+ Must be valid YAML between `---` markers:
12
+ ```yaml
13
+ ---
14
+ name: kebab-case-name
15
+ description: One sentence description
16
+ # type-specific fields...
17
+ ---
18
+ ```
19
+
20
+ **2. Required Fields by Type**
21
+
22
+ | Type | Required Fields |
23
+ |------|-----------------|
24
+ | Workflow | name, description, triggers |
25
+ | Agent | name, description, tools, spawn_from |
26
+ | Reference | name, description, load_when |
27
+ | Template | name, description, used_by |
28
+
29
+ **3. Name Validation**
30
+
31
+ - Must be kebab-case: `my-extension-name`
32
+ - Must match filename (without .md)
33
+ - No spaces or special characters
34
+ - 3-50 characters
35
+
36
+ **4. XML Structure**
37
+
38
+ If extension uses XML tags:
39
+ - Tags must be properly closed
40
+ - Nesting must be balanced
41
+ - No malformed tags
42
+
43
+ ## Type-Specific Validation
44
+
45
+ ### Workflows
46
+
47
+ ```yaml
48
+ triggers:
49
+ - plan-phase # valid
50
+ - execute-plan # valid
51
+ - execute-phase # valid
52
+ - verify-phase # valid
53
+ - custom # valid
54
+ - invalid-trigger # INVALID
55
+ ```
56
+
57
+ **Must have:**
58
+ - At least one valid trigger
59
+ - `<process>` section with `<step>` elements
60
+ - `<success_criteria>` section
61
+
62
+ ### Agents
63
+
64
+ ```yaml
65
+ tools:
66
+ - Read # valid
67
+ - Write # valid
68
+ - Edit # valid
69
+ - Bash # valid
70
+ - Grep # valid
71
+ - Glob # valid
72
+ - WebFetch # valid
73
+ - WebSearch # valid
74
+ - mcp__context7__* # valid (MCP tools)
75
+ - InvalidTool # INVALID
76
+ ```
77
+
78
+ **Must have:**
79
+ - At least one valid tool
80
+ - `<role>` section
81
+ - `<output_format>` section
82
+
83
+ ### References
84
+
85
+ ```yaml
86
+ load_when:
87
+ - keyword # valid - loads when keyword appears
88
+ - "*-auth-*" # valid - glob pattern
89
+ - always # valid - always loads (use sparingly)
90
+ - "" # INVALID - empty keyword
91
+ ```
92
+
93
+ **Must have:**
94
+ - At least one load_when keyword
95
+ - Content body (not empty)
96
+
97
+ ### Templates
98
+
99
+ ```yaml
100
+ used_by:
101
+ - workflow-name # should reference real workflow
102
+ - agent-name # should reference real agent
103
+ ```
104
+
105
+ **Must have:**
106
+ - `<template>` section with actual template content
107
+ - `<guidelines>` section explaining placeholders
108
+
109
+ ## Validation Commands
110
+
111
+ ```bash
112
+ # Validate a single extension
113
+ /gsd:extend validate {path}
114
+
115
+ # Validate all extensions
116
+ /gsd:extend validate --all
117
+ ```
118
+
119
+ ## Error Messages
120
+
121
+ | Error | Cause | Fix |
122
+ |-------|-------|-----|
123
+ | "Invalid YAML frontmatter" | Malformed YAML | Check indentation and syntax |
124
+ | "Missing required field: {field}" | Field not present | Add the required field |
125
+ | "Invalid trigger: {trigger}" | Unknown trigger name | Use valid trigger name |
126
+ | "Invalid tool: {tool}" | Unknown tool name | Use valid tool name |
127
+ | "Unbalanced XML tags" | Missing closing tag | Close all opened tags |
128
+ | "Name doesn't match filename" | name: foo but file is bar.md | Make them match |
129
+
130
+ ## Self-Validation
131
+
132
+ Extensions should self-validate by:
133
+
134
+ 1. Including comprehensive examples
135
+ 2. Testing with real usage
136
+ 3. Documenting edge cases
137
+
138
+ Good extension authors test their extensions before sharing.
139
+
140
+ </validation_rules>