gsd-opencode 1.10.2 → 1.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/agents/gsd-codebase-mapper.md +29 -3
  2. package/agents/gsd-debugger.md +19 -21
  3. package/agents/gsd-executor.md +213 -528
  4. package/agents/gsd-integration-checker.md +20 -0
  5. package/agents/gsd-phase-researcher.md +189 -267
  6. package/agents/gsd-plan-checker.md +278 -279
  7. package/agents/gsd-planner.md +299 -490
  8. package/agents/gsd-project-researcher.md +103 -345
  9. package/agents/gsd-research-synthesizer.md +5 -22
  10. package/agents/gsd-roadmapper.md +43 -6
  11. package/agents/gsd-verifier.md +158 -377
  12. package/{lib → bin/dm/lib}/constants.js +10 -3
  13. package/{src → bin/dm/src}/commands/install.js +5 -4
  14. package/{src → bin/dm/src}/commands/uninstall.js +3 -1
  15. package/{src → bin/dm/src}/services/backup-manager.js +1 -1
  16. package/{src → bin/dm/src}/services/config.js +1 -1
  17. package/{src → bin/dm/src}/services/file-ops.js +20 -4
  18. package/{src → bin/dm/src}/services/health-checker.js +3 -1
  19. package/{src → bin/dm/src}/services/repair-service.js +3 -1
  20. package/{src → bin/dm/src}/services/settings.js +1 -1
  21. package/{src → bin/dm/src}/services/update-service.js +2 -2
  22. package/bin/gsd-install.js +0 -0
  23. package/bin/gsd.js +9 -9
  24. package/commands/gsd/gsd-add-phase.md +43 -0
  25. package/commands/gsd/gsd-add-todo.md +47 -0
  26. package/commands/gsd/gsd-audit-milestone.md +36 -0
  27. package/commands/gsd/gsd-check-todos.md +45 -0
  28. package/commands/gsd/gsd-cleanup.md +18 -0
  29. package/commands/gsd/{complete-milestone.md → gsd-complete-milestone.md} +1 -1
  30. package/commands/gsd/{debug.md → gsd-debug.md} +16 -21
  31. package/commands/gsd/{discuss-phase.md → gsd-discuss-phase.md} +6 -9
  32. package/commands/gsd/gsd-execute-phase.md +41 -0
  33. package/commands/gsd/gsd-health.md +22 -0
  34. package/commands/gsd/gsd-help.md +22 -0
  35. package/commands/gsd/gsd-insert-phase.md +32 -0
  36. package/commands/gsd/gsd-join-discord.md +18 -0
  37. package/commands/gsd/{list-phase-assumptions.md → gsd-list-phase-assumptions.md} +3 -7
  38. package/commands/gsd/{map-codebase.md → gsd-map-codebase.md} +3 -3
  39. package/commands/gsd/gsd-new-milestone.md +44 -0
  40. package/commands/gsd/gsd-new-project.md +42 -0
  41. package/commands/gsd/gsd-pause-work.md +38 -0
  42. package/commands/gsd/gsd-plan-milestone-gaps.md +34 -0
  43. package/commands/gsd/gsd-plan-phase.md +44 -0
  44. package/commands/gsd/gsd-progress.md +24 -0
  45. package/commands/gsd/gsd-quick.md +41 -0
  46. package/commands/gsd/gsd-reapply-patches.md +119 -0
  47. package/commands/gsd/gsd-remove-phase.md +31 -0
  48. package/commands/gsd/{research-phase.md → gsd-research-phase.md} +38 -49
  49. package/commands/gsd/{resume-work.md → gsd-resume-work.md} +2 -2
  50. package/commands/gsd/gsd-set-profile.md +34 -0
  51. package/commands/gsd/gsd-settings.md +36 -0
  52. package/commands/gsd/gsd-update.md +37 -0
  53. package/commands/gsd/gsd-verify-work.md +38 -0
  54. package/get-shit-done/bin/gsd-tools.cjs +553 -0
  55. package/get-shit-done/bin/gsd-tools.test.cjs +2346 -0
  56. package/get-shit-done/bin/lib/commands.cjs +556 -0
  57. package/get-shit-done/bin/lib/config.cjs +162 -0
  58. package/get-shit-done/bin/lib/core.cjs +377 -0
  59. package/get-shit-done/bin/lib/frontmatter.cjs +299 -0
  60. package/get-shit-done/bin/lib/init.cjs +694 -0
  61. package/get-shit-done/bin/lib/milestone.cjs +215 -0
  62. package/get-shit-done/bin/lib/phase.cjs +877 -0
  63. package/get-shit-done/bin/lib/roadmap.cjs +298 -0
  64. package/get-shit-done/bin/lib/state.cjs +490 -0
  65. package/get-shit-done/bin/lib/template.cjs +222 -0
  66. package/get-shit-done/bin/lib/verify.cjs +772 -0
  67. package/get-shit-done/references/checkpoints.md +62 -364
  68. package/get-shit-done/references/decimal-phase-calculation.md +65 -0
  69. package/get-shit-done/references/git-integration.md +10 -16
  70. package/get-shit-done/references/git-planning-commit.md +38 -0
  71. package/get-shit-done/references/model-profile-resolution.md +34 -0
  72. package/get-shit-done/references/model-profiles.md +54 -66
  73. package/get-shit-done/references/phase-argument-parsing.md +61 -0
  74. package/get-shit-done/references/planning-config.md +112 -10
  75. package/get-shit-done/references/questioning.md +4 -0
  76. package/get-shit-done/references/ui-brand.md +1 -1
  77. package/get-shit-done/templates/UAT.md +1 -1
  78. package/get-shit-done/templates/VALIDATION.md +104 -0
  79. package/get-shit-done/templates/codebase/structure.md +6 -6
  80. package/get-shit-done/templates/config.json +37 -0
  81. package/get-shit-done/templates/context.md +2 -10
  82. package/get-shit-done/templates/continue-here.md +6 -6
  83. package/get-shit-done/templates/debug-subagent-prompt.md +2 -2
  84. package/get-shit-done/templates/discovery.md +6 -6
  85. package/get-shit-done/templates/milestone-archive.md +3 -3
  86. package/get-shit-done/templates/phase-prompt.md +9 -7
  87. package/get-shit-done/templates/planner-subagent-prompt.md +6 -6
  88. package/get-shit-done/templates/research-project/ARCHITECTURE.md +1 -1
  89. package/get-shit-done/templates/research.md +29 -6
  90. package/get-shit-done/templates/roadmap.md +1 -1
  91. package/get-shit-done/templates/state.md +0 -30
  92. package/get-shit-done/templates/summary-complex.md +59 -0
  93. package/get-shit-done/templates/summary-minimal.md +41 -0
  94. package/get-shit-done/templates/summary-standard.md +48 -0
  95. package/get-shit-done/templates/summary.md +16 -37
  96. package/get-shit-done/templates/user-setup.md +1 -13
  97. package/get-shit-done/templates/verification-report.md +5 -5
  98. package/get-shit-done/workflows/add-phase.md +111 -0
  99. package/{commands/gsd → get-shit-done/workflows}/add-todo.md +24 -60
  100. package/{commands/gsd → get-shit-done/workflows}/audit-milestone.md +83 -63
  101. package/{commands/gsd → get-shit-done/workflows}/check-todos.md +21 -73
  102. package/get-shit-done/workflows/cleanup.md +152 -0
  103. package/get-shit-done/workflows/complete-milestone.md +251 -312
  104. package/get-shit-done/workflows/diagnose-issues.md +6 -31
  105. package/get-shit-done/workflows/discovery-phase.md +11 -11
  106. package/get-shit-done/workflows/discuss-phase.md +156 -49
  107. package/get-shit-done/workflows/execute-phase.md +238 -396
  108. package/get-shit-done/workflows/execute-plan.md +180 -1609
  109. package/get-shit-done/workflows/health.md +156 -0
  110. package/{commands/gsd → get-shit-done/workflows}/help.md +33 -35
  111. package/get-shit-done/workflows/insert-phase.md +129 -0
  112. package/get-shit-done/workflows/list-phase-assumptions.md +3 -3
  113. package/get-shit-done/workflows/map-codebase.md +73 -80
  114. package/get-shit-done/workflows/new-milestone.md +382 -0
  115. package/{commands/gsd → get-shit-done/workflows}/new-project.md +281 -234
  116. package/get-shit-done/workflows/oc-set-profile.md +320 -0
  117. package/{commands/gsd → get-shit-done/workflows}/pause-work.md +31 -43
  118. package/{commands/gsd → get-shit-done/workflows}/plan-milestone-gaps.md +29 -50
  119. package/get-shit-done/workflows/plan-phase.md +478 -0
  120. package/{commands/gsd → get-shit-done/workflows}/progress.md +64 -47
  121. package/get-shit-done/workflows/quick.md +453 -0
  122. package/get-shit-done/workflows/remove-phase.md +154 -0
  123. package/get-shit-done/workflows/research-phase.md +73 -0
  124. package/get-shit-done/workflows/resume-project.md +17 -26
  125. package/get-shit-done/workflows/set-profile.md +80 -0
  126. package/get-shit-done/workflows/settings.md +213 -0
  127. package/get-shit-done/workflows/transition.md +84 -104
  128. package/{commands/gsd → get-shit-done/workflows}/update.md +70 -28
  129. package/get-shit-done/workflows/verify-phase.md +106 -492
  130. package/get-shit-done/workflows/verify-work.md +26 -53
  131. package/package.json +7 -4
  132. package/rules/gsd-oc-work-hard.md +36 -0
  133. package/skills/gsd-oc-select-model/SKILL.md +348 -0
  134. package/skills/gsd-oc-select-model/scripts/select-models.cjs +268 -0
  135. package/agents/gsd-set-model.md +0 -287
  136. package/agents/gsd-set-profile.md +0 -239
  137. package/agents/gsd-settings.md +0 -749
  138. package/bin/install.js +0 -323
  139. package/commands/gsd/add-phase.md +0 -207
  140. package/commands/gsd/execute-phase.md +0 -339
  141. package/commands/gsd/insert-phase.md +0 -227
  142. package/commands/gsd/new-milestone.md +0 -721
  143. package/commands/gsd/plan-phase.md +0 -525
  144. package/commands/gsd/quick.md +0 -309
  145. package/commands/gsd/remove-phase.md +0 -349
  146. package/commands/gsd/set-model.md +0 -77
  147. package/commands/gsd/set-profile.md +0 -46
  148. package/commands/gsd/settings.md +0 -33
  149. package/commands/gsd/verify-work.md +0 -219
  150. package/commands/gsd/whats-new.md +0 -124
  151. /package/{src → bin/dm/src}/commands/check.js +0 -0
  152. /package/{src → bin/dm/src}/commands/config.js +0 -0
  153. /package/{src → bin/dm/src}/commands/list.js +0 -0
  154. /package/{src → bin/dm/src}/commands/repair.js +0 -0
  155. /package/{src → bin/dm/src}/commands/update.js +0 -0
  156. /package/{src → bin/dm/src}/services/manifest-manager.js +0 -0
  157. /package/{src → bin/dm/src}/services/migration-service.js +0 -0
  158. /package/{src → bin/dm/src}/services/scope-manager.js +0 -0
  159. /package/{src → bin/dm/src}/services/structure-detector.js +0 -0
  160. /package/{src → bin/dm/src}/utils/hash.js +0 -0
  161. /package/{src → bin/dm/src}/utils/interactive.js +0 -0
  162. /package/{src → bin/dm/src}/utils/logger.js +0 -0
  163. /package/{src → bin/dm/src}/utils/npm-registry.js +0 -0
  164. /package/{src → bin/dm/src}/utils/path-resolver.js +0 -0
@@ -1,77 +0,0 @@
1
- ---
2
- name: gsd-set-model
3
- description: Configure models for a specific profile's stages (planning/execution/verification)
4
- arguments:
5
- - name: profile
6
- description: "Profile name: quality, balanced, or budget (optional - will prompt if not provided)"
7
- required: false
8
- agent: gsd-set-model
9
- tools:
10
- - read
11
- - write
12
- - bash
13
- - question
14
- ---
15
-
16
- <objective>
17
- Configure the models assigned to each stage (planning, execution, verification) for a specific profile.
18
-
19
- Unlike `/gsd-set-profile` which switches between profiles, this command lets you define *what models* a profile uses. Implementation lives in the `gsd-set-model` agent.
20
- </objective>
21
-
22
- <process>
23
-
24
- Run the model configuration flow using the `gsd-set-model` agent.
25
-
26
- </process>
27
-
28
- <examples>
29
-
30
- **Configure the balanced profile:**
31
-
32
- ```text
33
- /gsd-set-model balanced
34
-
35
- Configuring models for: balanced
36
-
37
- Select model for Planning stage:
38
- > anthropic/claude-sonnet-4-20250514
39
-
40
- Select model for Execution stage:
41
- > anthropic/claude-sonnet-4-20250514
42
-
43
- Select model for Verification stage:
44
- > openai/gpt-4o-mini
45
-
46
- ✓ Updated balanced profile:
47
- | Stage | Model |
48
- |-------|-------|
49
- | planning | anthropic/claude-sonnet-4-20250514 |
50
- | execution | anthropic/claude-sonnet-4-20250514 |
51
- | verification | openai/gpt-4o-mini |
52
- ```
53
-
54
- **Interactive mode (no argument):**
55
-
56
- ```text
57
- /gsd-set-model
58
-
59
- Which profile do you want to configure?
60
- > Balanced
61
-
62
- Configuring models for: balanced
63
- ...
64
- ```
65
-
66
- </examples>
67
-
68
- <success_criteria>
69
-
70
- - [ ] `.planning/config.json` exists (or clear error shown)
71
- - [ ] User selects a profile (or provides via argument)
72
- - [ ] User selects models for all three stages from available models
73
- - [ ] Profile preset is updated in `.planning/config.json`
74
- - [ ] `opencode.json` is regenerated if the modified profile is active
75
- - [ ] Clear confirmation shown with updated model assignments
76
-
77
- </success_criteria>
@@ -1,46 +0,0 @@
1
- ---
2
- name: gsd-set-profile
3
- description: Switch model profile for GSD agents (quality/balanced/budget)
4
- arguments:
5
- - name: profile
6
- description: "Profile name: quality, balanced, or budget"
7
- required: true
8
- agent: gsd-set-profile
9
- tools:
10
- - read
11
- - write
12
- - bash
13
- - question
14
- ---
15
-
16
- <objective>
17
- Switch the project’s active model profile (quality/balanced/budget).
18
-
19
- Implementation lives in the `gsd-set-profile` agent so we don’t duplicate the full switching/migration logic in multiple places.
20
- </objective>
21
-
22
- <process>
23
-
24
- Run the profile switch using the `gsd-set-profile` agent.
25
-
26
- </process>
27
-
28
- <examples>
29
-
30
- **Switch to budget profile:**
31
-
32
- ```text
33
- /gsd-set-profile budget
34
-
35
- ✓ Active profile set to: budget
36
- ```
37
-
38
- **Switch to quality profile:**
39
-
40
- ```text
41
- /gsd-set-profile quality
42
-
43
- ✓ Active profile set to: quality
44
- ```
45
-
46
- </examples>
@@ -1,33 +0,0 @@
1
- ---
2
- name: gsd-settings
3
- description: Configure GSD model profiles and workflow settings
4
- agent: gsd-settings
5
- tools:
6
- - read
7
- - write
8
- - bash
9
- - question
10
- ---
11
-
12
- <objective>
13
- Open an interactive settings menu.
14
-
15
- This delegates the implementation to the `gsd-settings` agent, which manages `.planning/config.json` and regenerates `opencode.json` when needed.
16
- </objective>
17
-
18
- <process>
19
-
20
- Run the interactive settings flow using the `gsd-settings` agent.
21
-
22
- </process>
23
-
24
- <success_criteria>
25
-
26
- - [ ] `.planning/` is validated as an existing GSD project (or a clear error is shown)
27
- - [ ] Current settings are displayed (active profile, effective models, workflow toggles)
28
- - [ ] User can update profile and workflow toggles via interactive UI
29
- - [ ] Updates are persisted to `.planning/config.json`
30
- - [ ] `opencode.json` is regenerated/updated to reflect effective models
31
- - [ ] A clear confirmation is shown ("GSD ► SETTINGS UPDATED")
32
-
33
- </success_criteria>
@@ -1,219 +0,0 @@
1
- ---
2
- name: gsd-verify-work
3
- description: Validate built features through conversational UAT
4
- argument-hint: "[phase number, e.g., '4']"
5
- tools:
6
- - read
7
- - bash
8
- - glob
9
- - grep
10
- - edit
11
- - write
12
-
13
- ---
14
-
15
- <objective>
16
- Validate built features through conversational testing with persistent state.
17
-
18
- Purpose: Confirm what OpenCode built actually works from user's perspective. One test at a time, plain text responses, no interrogation. When issues are found, automatically diagnose, plan fixes, and prepare for execution.
19
-
20
- Output: {phase}-UAT.md tracking all test results. If issues found: diagnosed gaps, verified fix plans ready for /gsd-execute-phase
21
- </objective>
22
-
23
- <execution_context>
24
- @~/.config/opencode/get-shit-done/workflows/verify-work.md
25
- @~/.config/opencode/get-shit-done/templates/UAT.md
26
- </execution_context>
27
-
28
- <context>
29
- Phase: `$ARGUMENTS` (optional)
30
- - If provided: Test specific phase (e.g., "4")
31
- - If not provided: Check for active sessions or prompt for phase
32
-
33
- @.planning/STATE.md
34
- @.planning/ROADMAP.md
35
- </context>
36
-
37
- <process>
38
- 1. Check for active UAT sessions (resume or start new)
39
- 2. Find SUMMARY.md files for the phase
40
- 3. Extract testable deliverables (user-observable outcomes)
41
- 4. Create {phase}-UAT.md with test list
42
- 5. Present tests one at a time:
43
- - Show expected behavior
44
- - Wait for plain text response
45
- - "yes/y/next" = pass, anything else = issue (severity inferred)
46
- 6. Update UAT.md after each response
47
- 7. On completion: commit, present summary
48
- 8. If issues found:
49
- - Spawn parallel debug agents to diagnose root causes
50
- - Spawn gsd-planner in --gaps mode to create fix plans
51
- - Spawn gsd-plan-checker to verify fix plans
52
- - Iterate planner ↔ checker until plans pass (max 3)
53
- - Present ready status with `/new` then `/gsd-execute-phase`
54
- </process>
55
-
56
- <anti_patterns>
57
- - Don't use question for test responses — plain text conversation
58
- - Don't ask severity — infer from description
59
- - Don't present full checklist upfront — one test at a time
60
- - Don't run automated tests — this is manual user validation
61
- - Don't fix issues during testing — log as gaps, diagnose after all tests complete
62
- </anti_patterns>
63
-
64
- <offer_next>
65
- Output this markdown directly (not as a code block). Route based on UAT results:
66
-
67
- | Status | Route |
68
- |--------|-------|
69
- | All tests pass + more phases | Route A (next phase) |
70
- | All tests pass + last phase | Route B (milestone complete) |
71
- | Issues found + fix plans ready | Route C (execute fixes) |
72
- | Issues found + planning blocked | Route D (manual intervention) |
73
-
74
- ---
75
-
76
- **Route A: All tests pass, more phases remain**
77
-
78
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
79
- GSD ► PHASE {Z} VERIFIED ✓
80
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
81
-
82
- **Phase {Z}: {Name}**
83
-
84
- {N}/{N} tests passed
85
- UAT complete ✓
86
-
87
- ───────────────────────────────────────────────────────────────
88
-
89
- ## ▶ Next Up
90
-
91
- **Phase {Z+1}: {Name}** — {Goal from ROADMAP.md}
92
-
93
- /gsd-discuss-phase {Z+1} — gather context and clarify approach
94
-
95
- */new first → fresh context window*
96
-
97
- ───────────────────────────────────────────────────────────────
98
-
99
- **Also available:**
100
- - /gsd-plan-phase {Z+1} — skip discussion, plan directly
101
- - /gsd-execute-phase {Z+1} — skip to execution (if already planned)
102
-
103
- ───────────────────────────────────────────────────────────────
104
-
105
- ---
106
-
107
- **Route B: All tests pass, milestone complete**
108
-
109
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
110
- GSD ► PHASE {Z} VERIFIED ✓
111
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
112
-
113
- **Phase {Z}: {Name}**
114
-
115
- {N}/{N} tests passed
116
- Final phase verified ✓
117
-
118
- ───────────────────────────────────────────────────────────────
119
-
120
- ## ▶ Next Up
121
-
122
- **Audit milestone** — verify requirements, cross-phase integration, E2E flows
123
-
124
- /gsd-audit-milestone
125
-
126
- */new first → fresh context window*
127
-
128
- ───────────────────────────────────────────────────────────────
129
-
130
- **Also available:**
131
- - /gsd-complete-milestone — skip audit, archive directly
132
-
133
- ───────────────────────────────────────────────────────────────
134
-
135
- ---
136
-
137
- **Route C: Issues found, fix plans ready**
138
-
139
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
140
- GSD ► PHASE {Z} ISSUES FOUND ⚠
141
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
142
-
143
- **Phase {Z}: {Name}**
144
-
145
- {N}/{M} tests passed
146
- {X} issues diagnosed
147
- Fix plans verified ✓
148
-
149
- ### Issues Found
150
-
151
- {List issues with severity from UAT.md}
152
-
153
- ───────────────────────────────────────────────────────────────
154
-
155
- ## ▶ Next Up
156
-
157
- **Execute fix plans** — run diagnosed fixes
158
-
159
- /gsd-execute-phase {Z} --gaps-only
160
-
161
- */new first → fresh context window*
162
-
163
- ───────────────────────────────────────────────────────────────
164
-
165
- **Also available:**
166
- - cat .planning/phases/{phase_dir}/*-PLAN.md — review fix plans
167
- - /gsd-plan-phase {Z} --gaps — regenerate fix plans
168
-
169
- ───────────────────────────────────────────────────────────────
170
-
171
- ---
172
-
173
- **Route D: Issues found, planning blocked**
174
-
175
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
176
- GSD ► PHASE {Z} BLOCKED ✗
177
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
178
-
179
- **Phase {Z}: {Name}**
180
-
181
- {N}/{M} tests passed
182
- Fix planning blocked after {X} iterations
183
-
184
- ### Unresolved Issues
185
-
186
- {List blocking issues from planner/checker output}
187
-
188
- ───────────────────────────────────────────────────────────────
189
-
190
- ## ▶ Next Up
191
-
192
- **Manual intervention required**
193
-
194
- Review the issues above and either:
195
- 1. Provide guidance for fix planning
196
- 2. Manually address blockers
197
- 3. Accept current state and continue
198
-
199
- ───────────────────────────────────────────────────────────────
200
-
201
- **Options:**
202
- - /gsd-plan-phase {Z} --gaps — retry fix planning with guidance
203
- - /gsd-discuss-phase {Z} — gather more context before replanning
204
-
205
- ───────────────────────────────────────────────────────────────
206
- </offer_next>
207
-
208
- <success_criteria>
209
- - [ ] UAT.md created with tests from SUMMARY.md
210
- - [ ] Tests presented one at a time with expected behavior
211
- - [ ] Plain text responses (no structured forms)
212
- - [ ] Severity inferred, never asked
213
- - [ ] Batched writes: on issue, every 5 passes, or completion
214
- - [ ] Committed on completion
215
- - [ ] If issues: parallel debug agents diagnose root causes
216
- - [ ] If issues: gsd-planner creates fix plans from diagnosed gaps
217
- - [ ] If issues: gsd-plan-checker verifies fix plans (max 3 iterations)
218
- - [ ] Ready for `/gsd-execute-phase` when complete
219
- </success_criteria>
@@ -1,124 +0,0 @@
1
- ---
2
- name: gsd-whats-new
3
- description: See what's new in GSD since your installed version
4
- ---
5
-
6
- <objective>
7
- Display changes between installed version and latest available version.
8
-
9
- Shows version comparison, changelog entries for missed versions, and update instructions.
10
- </objective>
11
-
12
- <process>
13
-
14
- <step name="get_installed_version">
15
- read installed version from VERSION file:
16
-
17
- ```bash
18
- cat ~/.config/opencode/get-shit-done/VERSION 2>/dev/null
19
- ```
20
-
21
- **If VERSION file missing:**
22
- ```
23
- ## GSD What's New
24
-
25
- **Installed version:** Unknown
26
-
27
- Your installation doesn't include version tracking.
28
-
29
- **To fix:** `npx gsd-opencode --global`
30
-
31
- This will reinstall with version tracking enabled.
32
- ```
33
-
34
- STOP here if no VERSION file.
35
- </step>
36
-
37
- <step name="fetch_remote_changelog">
38
- Fetch latest CHANGELOG.md from GitHub:
39
-
40
- Use webfetch tool with:
41
- - URL: `https://raw.githubusercontent.com/rokicool/gsd-opencode/main/CHANGELOG.md`
42
- - Prompt: "Extract all version entries with their dates and changes. Return in Keep-a-Changelog format."
43
-
44
- **If fetch fails:**
45
- Fall back to local changelog:
46
- ```bash
47
- cat ~/.config/opencode/get-shit-done/CHANGELOG.md 2>/dev/null
48
- ```
49
-
50
- Note to user: "Couldn't check for updates (offline or GitHub unavailable). Showing local changelog."
51
- </step>
52
-
53
- <step name="parse_versions">
54
- From the remote (or local) changelog:
55
-
56
- 1. **Extract latest version** - First `## [X.Y.Z]` line after `## [Unreleased]`
57
- 2. **Compare with installed** - From VERSION file
58
- 3. **Extract entries between** - All version sections from latest down to (but not including) installed
59
-
60
- **Version comparison:**
61
- - If installed == latest: "You're on the latest version"
62
- - If installed < latest: Show changes since installed version
63
- - If installed > latest: "You're ahead of latest release (development version?)"
64
- </step>
65
-
66
- <step name="display_output">
67
- Format output clearly:
68
-
69
- **If up to date:**
70
- ```
71
- ## GSD What's New
72
-
73
- **Installed:** 1.4.26
74
- **Latest:** 1.4.26
75
-
76
- You're on the latest version.
77
-
78
- [View full changelog](https://github.com/rokicool/gsd-opencode/blob/main/CHANGELOG.md)
79
- ```
80
-
81
- **If updates available:**
82
- ```
83
- ## GSD What's New
84
-
85
- **Installed:** 1.4.23
86
- **Latest:** 1.4.26
87
-
88
- ---
89
-
90
- ### Changes since your version:
91
-
92
- ## [1.4.26] - 2026-01-20
93
-
94
- ### Added
95
- - Feature X
96
- - Feature Y
97
-
98
- ### Changed
99
- - **BREAKING:** Changed Z behavior
100
-
101
- ## [1.4.25] - 2026-01-18
102
-
103
- ### Fixed
104
- - Bug in feature A
105
-
106
- ---
107
-
108
- [View full changelog](https://github.com/rokicool/gsd-opencode/blob/main/CHANGELOG.md)
109
-
110
- **To update:** `npx gsd-opencode --global`
111
- ```
112
-
113
- **Breaking changes:** Surface prominently with **BREAKING:** prefix in the output.
114
- </step>
115
-
116
- </process>
117
-
118
- <success_criteria>
119
- - [ ] Installed version read from VERSION file
120
- - [ ] Remote changelog fetched (or graceful fallback to local)
121
- - [ ] Version comparison displayed clearly
122
- - [ ] Changes since installed version shown (if any)
123
- - [ ] Update instructions provided when behind
124
- </success_criteria>
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes