gsd-remix 1.0.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 (554) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +939 -0
  3. package/README.zh-CN.md +876 -0
  4. package/agents/gsd-advisor-researcher.md +127 -0
  5. package/agents/gsd-ai-researcher.md +133 -0
  6. package/agents/gsd-assumptions-analyzer.md +105 -0
  7. package/agents/gsd-code-fixer.md +517 -0
  8. package/agents/gsd-code-reviewer.md +371 -0
  9. package/agents/gsd-codebase-mapper.md +781 -0
  10. package/agents/gsd-debug-session-manager.md +314 -0
  11. package/agents/gsd-debugger.md +1452 -0
  12. package/agents/gsd-doc-classifier.md +168 -0
  13. package/agents/gsd-doc-synthesizer.md +204 -0
  14. package/agents/gsd-doc-verifier.md +217 -0
  15. package/agents/gsd-doc-writer.md +615 -0
  16. package/agents/gsd-domain-researcher.md +153 -0
  17. package/agents/gsd-eval-auditor.md +191 -0
  18. package/agents/gsd-eval-planner.md +154 -0
  19. package/agents/gsd-executor.md +603 -0
  20. package/agents/gsd-framework-selector.md +160 -0
  21. package/agents/gsd-integration-checker.md +470 -0
  22. package/agents/gsd-intel-updater.md +334 -0
  23. package/agents/gsd-nyquist-auditor.md +203 -0
  24. package/agents/gsd-pattern-mapper.md +335 -0
  25. package/agents/gsd-phase-researcher.md +841 -0
  26. package/agents/gsd-plan-checker.md +978 -0
  27. package/agents/gsd-planner.md +1251 -0
  28. package/agents/gsd-project-researcher.md +677 -0
  29. package/agents/gsd-research-synthesizer.md +247 -0
  30. package/agents/gsd-roadmapper.md +688 -0
  31. package/agents/gsd-security-auditor.md +155 -0
  32. package/agents/gsd-ui-auditor.md +495 -0
  33. package/agents/gsd-ui-checker.md +309 -0
  34. package/agents/gsd-ui-researcher.md +380 -0
  35. package/agents/gsd-user-profiler.md +171 -0
  36. package/agents/gsd-verifier.md +830 -0
  37. package/bin/install.js +7062 -0
  38. package/commands/gsd/add-backlog.md +79 -0
  39. package/commands/gsd/add-phase.md +43 -0
  40. package/commands/gsd/add-tests.md +41 -0
  41. package/commands/gsd/add-todo.md +47 -0
  42. package/commands/gsd/ai-integration-phase.md +36 -0
  43. package/commands/gsd/analyze-dependencies.md +34 -0
  44. package/commands/gsd/audit-fix.md +33 -0
  45. package/commands/gsd/audit-milestone.md +36 -0
  46. package/commands/gsd/audit-uat.md +24 -0
  47. package/commands/gsd/autonomous.md +46 -0
  48. package/commands/gsd/check-todos.md +45 -0
  49. package/commands/gsd/cleanup.md +23 -0
  50. package/commands/gsd/code-review-fix.md +52 -0
  51. package/commands/gsd/code-review.md +55 -0
  52. package/commands/gsd/complete-milestone.md +136 -0
  53. package/commands/gsd/debug.md +263 -0
  54. package/commands/gsd/discuss-phase.md +69 -0
  55. package/commands/gsd/do.md +30 -0
  56. package/commands/gsd/docs-update.md +48 -0
  57. package/commands/gsd/eval-review.md +32 -0
  58. package/commands/gsd/execute-phase.md +63 -0
  59. package/commands/gsd/explore.md +27 -0
  60. package/commands/gsd/extract_learnings.md +22 -0
  61. package/commands/gsd/fast.md +30 -0
  62. package/commands/gsd/forensics.md +56 -0
  63. package/commands/gsd/from-gsd2.md +47 -0
  64. package/commands/gsd/graphify.md +201 -0
  65. package/commands/gsd/health.md +22 -0
  66. package/commands/gsd/help.md +24 -0
  67. package/commands/gsd/import.md +37 -0
  68. package/commands/gsd/inbox.md +38 -0
  69. package/commands/gsd/ingest-docs.md +42 -0
  70. package/commands/gsd/insert-phase.md +32 -0
  71. package/commands/gsd/intel.md +179 -0
  72. package/commands/gsd/join-discord.md +19 -0
  73. package/commands/gsd/list-phase-assumptions.md +46 -0
  74. package/commands/gsd/list-workspaces.md +19 -0
  75. package/commands/gsd/manager.md +40 -0
  76. package/commands/gsd/map-codebase.md +71 -0
  77. package/commands/gsd/milestone-summary.md +51 -0
  78. package/commands/gsd/new-milestone.md +44 -0
  79. package/commands/gsd/new-project.md +46 -0
  80. package/commands/gsd/new-workspace.md +44 -0
  81. package/commands/gsd/next.md +28 -0
  82. package/commands/gsd/note.md +34 -0
  83. package/commands/gsd/pause-work.md +38 -0
  84. package/commands/gsd/plan-milestone-gaps.md +34 -0
  85. package/commands/gsd/plan-phase.md +52 -0
  86. package/commands/gsd/plan-review-convergence.md +52 -0
  87. package/commands/gsd/plant-seed.md +28 -0
  88. package/commands/gsd/pr-branch.md +25 -0
  89. package/commands/gsd/profile-user.md +46 -0
  90. package/commands/gsd/progress.md +25 -0
  91. package/commands/gsd/quick.md +173 -0
  92. package/commands/gsd/reapply-patches.md +331 -0
  93. package/commands/gsd/remove-phase.md +31 -0
  94. package/commands/gsd/remove-workspace.md +26 -0
  95. package/commands/gsd/research-phase.md +195 -0
  96. package/commands/gsd/resume-work.md +40 -0
  97. package/commands/gsd/review-backlog.md +62 -0
  98. package/commands/gsd/review.md +40 -0
  99. package/commands/gsd/scan.md +26 -0
  100. package/commands/gsd/secure-phase.md +35 -0
  101. package/commands/gsd/session-report.md +19 -0
  102. package/commands/gsd/set-profile.md +12 -0
  103. package/commands/gsd/settings.md +36 -0
  104. package/commands/gsd/ship.md +23 -0
  105. package/commands/gsd/sketch-wrap-up.md +31 -0
  106. package/commands/gsd/sketch.md +49 -0
  107. package/commands/gsd/spec-phase.md +62 -0
  108. package/commands/gsd/spike-wrap-up.md +31 -0
  109. package/commands/gsd/spike.md +46 -0
  110. package/commands/gsd/stats.md +18 -0
  111. package/commands/gsd/sync-skills.md +19 -0
  112. package/commands/gsd/thread.md +227 -0
  113. package/commands/gsd/ui-phase.md +34 -0
  114. package/commands/gsd/ui-review.md +32 -0
  115. package/commands/gsd/ultraplan-phase.md +33 -0
  116. package/commands/gsd/undo.md +34 -0
  117. package/commands/gsd/update.md +37 -0
  118. package/commands/gsd/validate-phase.md +35 -0
  119. package/commands/gsd/verify-work.md +38 -0
  120. package/commands/gsd/workstreams.md +69 -0
  121. package/get-shit-done/bin/gsd-tools.cjs +1263 -0
  122. package/get-shit-done/bin/lib/artifacts.cjs +52 -0
  123. package/get-shit-done/bin/lib/audit.cjs +757 -0
  124. package/get-shit-done/bin/lib/commands.cjs +1023 -0
  125. package/get-shit-done/bin/lib/config-schema.cjs +79 -0
  126. package/get-shit-done/bin/lib/config.cjs +463 -0
  127. package/get-shit-done/bin/lib/core.cjs +1794 -0
  128. package/get-shit-done/bin/lib/docs.cjs +267 -0
  129. package/get-shit-done/bin/lib/frontmatter.cjs +379 -0
  130. package/get-shit-done/bin/lib/graphify.cjs +494 -0
  131. package/get-shit-done/bin/lib/gsd2-import.cjs +511 -0
  132. package/get-shit-done/bin/lib/init.cjs +1878 -0
  133. package/get-shit-done/bin/lib/intel.cjs +639 -0
  134. package/get-shit-done/bin/lib/learnings.cjs +378 -0
  135. package/get-shit-done/bin/lib/milestone.cjs +283 -0
  136. package/get-shit-done/bin/lib/model-profiles.cjs +71 -0
  137. package/get-shit-done/bin/lib/phase.cjs +1058 -0
  138. package/get-shit-done/bin/lib/profile-output.cjs +1080 -0
  139. package/get-shit-done/bin/lib/profile-pipeline.cjs +539 -0
  140. package/get-shit-done/bin/lib/roadmap.cjs +523 -0
  141. package/get-shit-done/bin/lib/schema-detect.cjs +238 -0
  142. package/get-shit-done/bin/lib/security.cjs +504 -0
  143. package/get-shit-done/bin/lib/state.cjs +1649 -0
  144. package/get-shit-done/bin/lib/template.cjs +226 -0
  145. package/get-shit-done/bin/lib/uat.cjs +288 -0
  146. package/get-shit-done/bin/lib/verify.cjs +1184 -0
  147. package/get-shit-done/bin/lib/workstream.cjs +495 -0
  148. package/get-shit-done/bin/repair-sdk.cjs +177 -0
  149. package/get-shit-done/contexts/dev.md +21 -0
  150. package/get-shit-done/contexts/research.md +22 -0
  151. package/get-shit-done/contexts/review.md +22 -0
  152. package/get-shit-done/references/agent-contracts.md +79 -0
  153. package/get-shit-done/references/ai-evals.md +156 -0
  154. package/get-shit-done/references/ai-frameworks.md +186 -0
  155. package/get-shit-done/references/artifact-types.md +131 -0
  156. package/get-shit-done/references/autonomous-smart-discuss.md +277 -0
  157. package/get-shit-done/references/checkpoints.md +808 -0
  158. package/get-shit-done/references/common-bug-patterns.md +114 -0
  159. package/get-shit-done/references/context-budget.md +49 -0
  160. package/get-shit-done/references/continuation-format.md +253 -0
  161. package/get-shit-done/references/debugger-philosophy.md +76 -0
  162. package/get-shit-done/references/decimal-phase-calculation.md +64 -0
  163. package/get-shit-done/references/doc-conflict-engine.md +91 -0
  164. package/get-shit-done/references/domain-probes.md +125 -0
  165. package/get-shit-done/references/executor-examples.md +110 -0
  166. package/get-shit-done/references/few-shot-examples/plan-checker.md +73 -0
  167. package/get-shit-done/references/few-shot-examples/verifier.md +109 -0
  168. package/get-shit-done/references/gate-prompts.md +100 -0
  169. package/get-shit-done/references/gates.md +70 -0
  170. package/get-shit-done/references/git-integration.md +295 -0
  171. package/get-shit-done/references/git-planning-commit.md +40 -0
  172. package/get-shit-done/references/ios-scaffold.md +123 -0
  173. package/get-shit-done/references/mandatory-initial-read.md +2 -0
  174. package/get-shit-done/references/model-profile-resolution.md +38 -0
  175. package/get-shit-done/references/model-profiles.md +145 -0
  176. package/get-shit-done/references/phase-argument-parsing.md +61 -0
  177. package/get-shit-done/references/planner-antipatterns.md +89 -0
  178. package/get-shit-done/references/planner-gap-closure.md +62 -0
  179. package/get-shit-done/references/planner-reviews.md +39 -0
  180. package/get-shit-done/references/planner-revision.md +87 -0
  181. package/get-shit-done/references/planner-source-audit.md +73 -0
  182. package/get-shit-done/references/planning-config.md +460 -0
  183. package/get-shit-done/references/project-skills-discovery.md +19 -0
  184. package/get-shit-done/references/questioning.md +162 -0
  185. package/get-shit-done/references/revision-loop.md +97 -0
  186. package/get-shit-done/references/sketch-interactivity.md +41 -0
  187. package/get-shit-done/references/sketch-theme-system.md +94 -0
  188. package/get-shit-done/references/sketch-tooling.md +45 -0
  189. package/get-shit-done/references/sketch-variant-patterns.md +81 -0
  190. package/get-shit-done/references/tdd.md +330 -0
  191. package/get-shit-done/references/thinking-models-debug.md +44 -0
  192. package/get-shit-done/references/thinking-models-execution.md +50 -0
  193. package/get-shit-done/references/thinking-models-planning.md +62 -0
  194. package/get-shit-done/references/thinking-models-research.md +50 -0
  195. package/get-shit-done/references/thinking-models-verification.md +55 -0
  196. package/get-shit-done/references/thinking-partner.md +96 -0
  197. package/get-shit-done/references/ui-brand.md +160 -0
  198. package/get-shit-done/references/universal-anti-patterns.md +63 -0
  199. package/get-shit-done/references/user-profiling.md +681 -0
  200. package/get-shit-done/references/verification-overrides.md +227 -0
  201. package/get-shit-done/references/verification-patterns.md +612 -0
  202. package/get-shit-done/references/workstream-flag.md +111 -0
  203. package/get-shit-done/templates/AI-SPEC.md +246 -0
  204. package/get-shit-done/templates/DEBUG.md +169 -0
  205. package/get-shit-done/templates/README.md +76 -0
  206. package/get-shit-done/templates/SECURITY.md +61 -0
  207. package/get-shit-done/templates/UAT.md +265 -0
  208. package/get-shit-done/templates/UI-SPEC.md +100 -0
  209. package/get-shit-done/templates/VALIDATION.md +76 -0
  210. package/get-shit-done/templates/claude-md.md +145 -0
  211. package/get-shit-done/templates/codebase/architecture.md +255 -0
  212. package/get-shit-done/templates/codebase/concerns.md +310 -0
  213. package/get-shit-done/templates/codebase/conventions.md +307 -0
  214. package/get-shit-done/templates/codebase/integrations.md +280 -0
  215. package/get-shit-done/templates/codebase/stack.md +186 -0
  216. package/get-shit-done/templates/codebase/structure.md +285 -0
  217. package/get-shit-done/templates/codebase/testing.md +480 -0
  218. package/get-shit-done/templates/config.json +56 -0
  219. package/get-shit-done/templates/context.md +352 -0
  220. package/get-shit-done/templates/continue-here.md +78 -0
  221. package/get-shit-done/templates/copilot-instructions.md +7 -0
  222. package/get-shit-done/templates/debug-subagent-prompt.md +91 -0
  223. package/get-shit-done/templates/dev-preferences.md +21 -0
  224. package/get-shit-done/templates/discovery.md +146 -0
  225. package/get-shit-done/templates/discussion-log.md +63 -0
  226. package/get-shit-done/templates/milestone-archive.md +123 -0
  227. package/get-shit-done/templates/milestone.md +115 -0
  228. package/get-shit-done/templates/phase-prompt.md +610 -0
  229. package/get-shit-done/templates/planner-subagent-prompt.md +117 -0
  230. package/get-shit-done/templates/project.md +186 -0
  231. package/get-shit-done/templates/requirements.md +231 -0
  232. package/get-shit-done/templates/research-project/ARCHITECTURE.md +204 -0
  233. package/get-shit-done/templates/research-project/FEATURES.md +147 -0
  234. package/get-shit-done/templates/research-project/PITFALLS.md +200 -0
  235. package/get-shit-done/templates/research-project/STACK.md +120 -0
  236. package/get-shit-done/templates/research-project/SUMMARY.md +170 -0
  237. package/get-shit-done/templates/research.md +592 -0
  238. package/get-shit-done/templates/retrospective.md +54 -0
  239. package/get-shit-done/templates/roadmap.md +202 -0
  240. package/get-shit-done/templates/spec.md +307 -0
  241. package/get-shit-done/templates/state.md +184 -0
  242. package/get-shit-done/templates/summary-complex.md +59 -0
  243. package/get-shit-done/templates/summary-minimal.md +41 -0
  244. package/get-shit-done/templates/summary-standard.md +48 -0
  245. package/get-shit-done/templates/summary.md +248 -0
  246. package/get-shit-done/templates/user-profile.md +146 -0
  247. package/get-shit-done/templates/user-setup.md +311 -0
  248. package/get-shit-done/templates/verification-report.md +322 -0
  249. package/get-shit-done/workflows/add-phase.md +112 -0
  250. package/get-shit-done/workflows/add-tests.md +354 -0
  251. package/get-shit-done/workflows/add-todo.md +160 -0
  252. package/get-shit-done/workflows/ai-integration-phase.md +284 -0
  253. package/get-shit-done/workflows/analyze-dependencies.md +96 -0
  254. package/get-shit-done/workflows/audit-fix.md +175 -0
  255. package/get-shit-done/workflows/audit-milestone.md +340 -0
  256. package/get-shit-done/workflows/audit-uat.md +109 -0
  257. package/get-shit-done/workflows/autonomous.md +789 -0
  258. package/get-shit-done/workflows/check-todos.md +179 -0
  259. package/get-shit-done/workflows/cleanup.md +154 -0
  260. package/get-shit-done/workflows/code-review-fix.md +497 -0
  261. package/get-shit-done/workflows/code-review.md +515 -0
  262. package/get-shit-done/workflows/complete-milestone.md +847 -0
  263. package/get-shit-done/workflows/diagnose-issues.md +238 -0
  264. package/get-shit-done/workflows/discovery-phase.md +291 -0
  265. package/get-shit-done/workflows/discuss-phase-assumptions.md +670 -0
  266. package/get-shit-done/workflows/discuss-phase-power.md +308 -0
  267. package/get-shit-done/workflows/discuss-phase.md +1378 -0
  268. package/get-shit-done/workflows/do.md +110 -0
  269. package/get-shit-done/workflows/docs-update.md +1155 -0
  270. package/get-shit-done/workflows/eval-review.md +155 -0
  271. package/get-shit-done/workflows/execute-phase.md +1677 -0
  272. package/get-shit-done/workflows/execute-plan.md +533 -0
  273. package/get-shit-done/workflows/explore.md +141 -0
  274. package/get-shit-done/workflows/extract_learnings.md +242 -0
  275. package/get-shit-done/workflows/fast.md +105 -0
  276. package/get-shit-done/workflows/forensics.md +265 -0
  277. package/get-shit-done/workflows/graduation.md +195 -0
  278. package/get-shit-done/workflows/health.md +314 -0
  279. package/get-shit-done/workflows/help.md +667 -0
  280. package/get-shit-done/workflows/import.md +246 -0
  281. package/get-shit-done/workflows/inbox.md +387 -0
  282. package/get-shit-done/workflows/ingest-docs.md +328 -0
  283. package/get-shit-done/workflows/insert-phase.md +130 -0
  284. package/get-shit-done/workflows/list-phase-assumptions.md +178 -0
  285. package/get-shit-done/workflows/list-workspaces.md +56 -0
  286. package/get-shit-done/workflows/manager.md +365 -0
  287. package/get-shit-done/workflows/map-codebase.md +393 -0
  288. package/get-shit-done/workflows/milestone-summary.md +223 -0
  289. package/get-shit-done/workflows/new-milestone.md +611 -0
  290. package/get-shit-done/workflows/new-project.md +1391 -0
  291. package/get-shit-done/workflows/new-workspace.md +239 -0
  292. package/get-shit-done/workflows/next.md +220 -0
  293. package/get-shit-done/workflows/node-repair.md +92 -0
  294. package/get-shit-done/workflows/note.md +158 -0
  295. package/get-shit-done/workflows/pause-work.md +243 -0
  296. package/get-shit-done/workflows/plan-milestone-gaps.md +273 -0
  297. package/get-shit-done/workflows/plan-phase.md +1349 -0
  298. package/get-shit-done/workflows/plan-review-convergence.md +254 -0
  299. package/get-shit-done/workflows/plant-seed.md +172 -0
  300. package/get-shit-done/workflows/pr-branch.md +157 -0
  301. package/get-shit-done/workflows/profile-user.md +452 -0
  302. package/get-shit-done/workflows/progress.md +619 -0
  303. package/get-shit-done/workflows/quick.md +970 -0
  304. package/get-shit-done/workflows/remove-phase.md +155 -0
  305. package/get-shit-done/workflows/remove-workspace.md +92 -0
  306. package/get-shit-done/workflows/research-phase.md +89 -0
  307. package/get-shit-done/workflows/resume-project.md +326 -0
  308. package/get-shit-done/workflows/review.md +344 -0
  309. package/get-shit-done/workflows/scan.md +102 -0
  310. package/get-shit-done/workflows/secure-phase.md +166 -0
  311. package/get-shit-done/workflows/session-report.md +146 -0
  312. package/get-shit-done/workflows/settings.md +319 -0
  313. package/get-shit-done/workflows/ship.md +302 -0
  314. package/get-shit-done/workflows/sketch-wrap-up.md +283 -0
  315. package/get-shit-done/workflows/sketch.md +286 -0
  316. package/get-shit-done/workflows/spec-phase.md +262 -0
  317. package/get-shit-done/workflows/spike-wrap-up.md +281 -0
  318. package/get-shit-done/workflows/spike.md +362 -0
  319. package/get-shit-done/workflows/stats.md +60 -0
  320. package/get-shit-done/workflows/sync-skills.md +182 -0
  321. package/get-shit-done/workflows/transition.md +693 -0
  322. package/get-shit-done/workflows/ui-phase.md +323 -0
  323. package/get-shit-done/workflows/ui-review.md +190 -0
  324. package/get-shit-done/workflows/ultraplan-phase.md +189 -0
  325. package/get-shit-done/workflows/undo.md +314 -0
  326. package/get-shit-done/workflows/update.md +587 -0
  327. package/get-shit-done/workflows/validate-phase.md +176 -0
  328. package/get-shit-done/workflows/verify-phase.md +465 -0
  329. package/get-shit-done/workflows/verify-work.md +740 -0
  330. package/hooks/dist/gsd-check-update-worker.js +108 -0
  331. package/hooks/dist/gsd-check-update.js +64 -0
  332. package/hooks/dist/gsd-context-monitor.js +192 -0
  333. package/hooks/dist/gsd-phase-boundary.sh +28 -0
  334. package/hooks/dist/gsd-prompt-guard.js +97 -0
  335. package/hooks/dist/gsd-read-guard.js +82 -0
  336. package/hooks/dist/gsd-read-injection-scanner.js +152 -0
  337. package/hooks/dist/gsd-session-state.sh +34 -0
  338. package/hooks/dist/gsd-statusline.js +293 -0
  339. package/hooks/dist/gsd-validate-commit.sh +48 -0
  340. package/hooks/dist/gsd-workflow-guard.js +94 -0
  341. package/hooks/gsd-check-update-worker.js +108 -0
  342. package/hooks/gsd-check-update.js +64 -0
  343. package/hooks/gsd-context-monitor.js +192 -0
  344. package/hooks/gsd-phase-boundary.sh +28 -0
  345. package/hooks/gsd-prompt-guard.js +97 -0
  346. package/hooks/gsd-read-guard.js +82 -0
  347. package/hooks/gsd-read-injection-scanner.js +152 -0
  348. package/hooks/gsd-session-state.sh +34 -0
  349. package/hooks/gsd-statusline.js +293 -0
  350. package/hooks/gsd-validate-commit.sh +48 -0
  351. package/hooks/gsd-workflow-guard.js +94 -0
  352. package/package.json +59 -0
  353. package/scripts/base64-scan.sh +262 -0
  354. package/scripts/build-hooks.js +95 -0
  355. package/scripts/gen-inventory-manifest.cjs +109 -0
  356. package/scripts/prompt-injection-scan.sh +201 -0
  357. package/scripts/run-tests.cjs +33 -0
  358. package/scripts/secret-scan.sh +227 -0
  359. package/sdk/package-lock.json +1998 -0
  360. package/sdk/package.json +52 -0
  361. package/sdk/prompts/agents/gsd-executor.md +110 -0
  362. package/sdk/prompts/agents/gsd-phase-researcher.md +158 -0
  363. package/sdk/prompts/agents/gsd-plan-checker.md +160 -0
  364. package/sdk/prompts/agents/gsd-planner.md +214 -0
  365. package/sdk/prompts/agents/gsd-project-researcher.md +323 -0
  366. package/sdk/prompts/agents/gsd-research-synthesizer.md +237 -0
  367. package/sdk/prompts/agents/gsd-roadmapper.md +670 -0
  368. package/sdk/prompts/agents/gsd-verifier.md +159 -0
  369. package/sdk/prompts/templates/project.md +186 -0
  370. package/sdk/prompts/templates/requirements.md +231 -0
  371. package/sdk/prompts/templates/research-project/ARCHITECTURE.md +204 -0
  372. package/sdk/prompts/templates/research-project/FEATURES.md +147 -0
  373. package/sdk/prompts/templates/research-project/PITFALLS.md +200 -0
  374. package/sdk/prompts/templates/research-project/STACK.md +120 -0
  375. package/sdk/prompts/templates/research-project/SUMMARY.md +170 -0
  376. package/sdk/prompts/templates/roadmap.md +202 -0
  377. package/sdk/prompts/templates/state.md +175 -0
  378. package/sdk/prompts/workflows/discuss-phase.md +126 -0
  379. package/sdk/prompts/workflows/execute-plan.md +106 -0
  380. package/sdk/prompts/workflows/plan-phase.md +84 -0
  381. package/sdk/prompts/workflows/research-phase.md +45 -0
  382. package/sdk/prompts/workflows/verify-phase.md +142 -0
  383. package/sdk/src/assembled-prompts.test.ts +349 -0
  384. package/sdk/src/cli-transport.test.ts +388 -0
  385. package/sdk/src/cli-transport.ts +130 -0
  386. package/sdk/src/cli.test.ts +383 -0
  387. package/sdk/src/cli.ts +670 -0
  388. package/sdk/src/config.test.ts +168 -0
  389. package/sdk/src/config.ts +177 -0
  390. package/sdk/src/context-engine.test.ts +295 -0
  391. package/sdk/src/context-engine.ts +170 -0
  392. package/sdk/src/context-truncation.test.ts +163 -0
  393. package/sdk/src/context-truncation.ts +233 -0
  394. package/sdk/src/e2e.integration.test.ts +178 -0
  395. package/sdk/src/errors.ts +72 -0
  396. package/sdk/src/event-stream.test.ts +661 -0
  397. package/sdk/src/event-stream.ts +441 -0
  398. package/sdk/src/failure-memory.test.ts +457 -0
  399. package/sdk/src/failure-memory.ts +1324 -0
  400. package/sdk/src/golden/capture.ts +95 -0
  401. package/sdk/src/golden/fixtures/generate-slug.golden.json +1 -0
  402. package/sdk/src/golden/fixtures/profile-sample-sessions/demo-project/sample.jsonl +3 -0
  403. package/sdk/src/golden/fixtures/summary-extract-sample.md +26 -0
  404. package/sdk/src/golden/fixtures/uat-render-checkpoint-sample.md +15 -0
  405. package/sdk/src/golden/golden-integration-covered.ts +30 -0
  406. package/sdk/src/golden/golden-mutation-covered.ts +7 -0
  407. package/sdk/src/golden/golden-policy.test.ts +8 -0
  408. package/sdk/src/golden/golden-policy.ts +112 -0
  409. package/sdk/src/golden/golden.integration.test.ts +373 -0
  410. package/sdk/src/golden/init-golden-normalize.ts +15 -0
  411. package/sdk/src/golden/read-only-golden-rows.ts +77 -0
  412. package/sdk/src/golden/read-only-parity.integration.test.ts +125 -0
  413. package/sdk/src/golden/registry-canonical-commands.ts +31 -0
  414. package/sdk/src/gsd-tools.test.ts +409 -0
  415. package/sdk/src/gsd-tools.ts +595 -0
  416. package/sdk/src/headless-prompts.test.ts +159 -0
  417. package/sdk/src/index.ts +333 -0
  418. package/sdk/src/init-e2e.integration.test.ts +136 -0
  419. package/sdk/src/init-runner.test.ts +783 -0
  420. package/sdk/src/init-runner.ts +735 -0
  421. package/sdk/src/lifecycle-e2e.integration.test.ts +258 -0
  422. package/sdk/src/logger.test.ts +149 -0
  423. package/sdk/src/logger.ts +113 -0
  424. package/sdk/src/milestone-runner.test.ts +421 -0
  425. package/sdk/src/phase-prompt.test.ts +538 -0
  426. package/sdk/src/phase-prompt.ts +264 -0
  427. package/sdk/src/phase-runner-types.test.ts +421 -0
  428. package/sdk/src/phase-runner.integration.test.ts +377 -0
  429. package/sdk/src/phase-runner.test.ts +2333 -0
  430. package/sdk/src/phase-runner.ts +1203 -0
  431. package/sdk/src/plan-parser.test.ts +528 -0
  432. package/sdk/src/plan-parser.ts +427 -0
  433. package/sdk/src/prompt-builder.test.ts +306 -0
  434. package/sdk/src/prompt-builder.ts +193 -0
  435. package/sdk/src/prompt-sanitizer.test.ts +260 -0
  436. package/sdk/src/prompt-sanitizer.ts +71 -0
  437. package/sdk/src/query/QUERY-HANDLERS.md +317 -0
  438. package/sdk/src/query/audit-open.ts +722 -0
  439. package/sdk/src/query/check-auto-mode.test.ts +77 -0
  440. package/sdk/src/query/check-auto-mode.ts +50 -0
  441. package/sdk/src/query/check-completion.test.ts +113 -0
  442. package/sdk/src/query/check-completion.ts +182 -0
  443. package/sdk/src/query/check-gates.test.ts +103 -0
  444. package/sdk/src/query/check-gates.ts +112 -0
  445. package/sdk/src/query/check-ship-ready.test.ts +77 -0
  446. package/sdk/src/query/check-ship-ready.ts +103 -0
  447. package/sdk/src/query/check-verification-status.test.ts +143 -0
  448. package/sdk/src/query/check-verification-status.ts +160 -0
  449. package/sdk/src/query/commit.test.ts +202 -0
  450. package/sdk/src/query/commit.ts +301 -0
  451. package/sdk/src/query/config-gates.test.ts +89 -0
  452. package/sdk/src/query/config-gates.ts +69 -0
  453. package/sdk/src/query/config-mutation.test.ts +365 -0
  454. package/sdk/src/query/config-mutation.ts +497 -0
  455. package/sdk/src/query/config-query.test.ts +161 -0
  456. package/sdk/src/query/config-query.ts +190 -0
  457. package/sdk/src/query/context-history.test.ts +165 -0
  458. package/sdk/src/query/context-history.ts +467 -0
  459. package/sdk/src/query/decomposed-handlers.test.ts +365 -0
  460. package/sdk/src/query/detect-custom-files.ts +97 -0
  461. package/sdk/src/query/detect-phase-type.test.ts +105 -0
  462. package/sdk/src/query/detect-phase-type.ts +141 -0
  463. package/sdk/src/query/docs-init.ts +257 -0
  464. package/sdk/src/query/failure-capture.ts +58 -0
  465. package/sdk/src/query/frontmatter-array.test.ts +14 -0
  466. package/sdk/src/query/frontmatter-mutation.test.ts +259 -0
  467. package/sdk/src/query/frontmatter-mutation.ts +343 -0
  468. package/sdk/src/query/frontmatter.test.ts +281 -0
  469. package/sdk/src/query/frontmatter.ts +397 -0
  470. package/sdk/src/query/helpers.test.ts +426 -0
  471. package/sdk/src/query/helpers.ts +482 -0
  472. package/sdk/src/query/index.ts +586 -0
  473. package/sdk/src/query/init-complex.test.ts +232 -0
  474. package/sdk/src/query/init-complex.ts +578 -0
  475. package/sdk/src/query/init.test.ts +522 -0
  476. package/sdk/src/query/init.ts +1046 -0
  477. package/sdk/src/query/intel.test.ts +90 -0
  478. package/sdk/src/query/intel.ts +404 -0
  479. package/sdk/src/query/normalize-query-command.test.ts +50 -0
  480. package/sdk/src/query/normalize-query-command.ts +56 -0
  481. package/sdk/src/query/phase-lifecycle.test.ts +1126 -0
  482. package/sdk/src/query/phase-lifecycle.ts +1799 -0
  483. package/sdk/src/query/phase-list-queries.test.ts +88 -0
  484. package/sdk/src/query/phase-list-queries.ts +152 -0
  485. package/sdk/src/query/phase-ready.test.ts +65 -0
  486. package/sdk/src/query/phase-ready.ts +158 -0
  487. package/sdk/src/query/phase.test.ts +307 -0
  488. package/sdk/src/query/phase.ts +340 -0
  489. package/sdk/src/query/pipeline.test.ts +169 -0
  490. package/sdk/src/query/pipeline.ts +243 -0
  491. package/sdk/src/query/plan-execution-route.test.ts +166 -0
  492. package/sdk/src/query/plan-execution-route.ts +209 -0
  493. package/sdk/src/query/plan-task-structure.test.ts +65 -0
  494. package/sdk/src/query/plan-task-structure.ts +63 -0
  495. package/sdk/src/query/profile-extract-messages.ts +247 -0
  496. package/sdk/src/query/profile-output.ts +908 -0
  497. package/sdk/src/query/profile-questionnaire-data.ts +181 -0
  498. package/sdk/src/query/profile-sample.ts +184 -0
  499. package/sdk/src/query/profile-scan-sessions.ts +174 -0
  500. package/sdk/src/query/profile.test.ts +74 -0
  501. package/sdk/src/query/profile.ts +337 -0
  502. package/sdk/src/query/progress.test.ts +156 -0
  503. package/sdk/src/query/progress.ts +566 -0
  504. package/sdk/src/query/registry.test.ts +216 -0
  505. package/sdk/src/query/registry.ts +174 -0
  506. package/sdk/src/query/requirements-extract-from-plans.test.ts +58 -0
  507. package/sdk/src/query/requirements-extract-from-plans.ts +86 -0
  508. package/sdk/src/query/roadmap-update-plan-progress.ts +132 -0
  509. package/sdk/src/query/roadmap.test.ts +359 -0
  510. package/sdk/src/query/roadmap.ts +591 -0
  511. package/sdk/src/query/route-next-action.test.ts +61 -0
  512. package/sdk/src/query/route-next-action.ts +345 -0
  513. package/sdk/src/query/runtime-health.ts +7 -0
  514. package/sdk/src/query/schema-detect.ts +189 -0
  515. package/sdk/src/query/skill-manifest.ts +214 -0
  516. package/sdk/src/query/skills.test.ts +80 -0
  517. package/sdk/src/query/skills.ts +62 -0
  518. package/sdk/src/query/state-mutation.test.ts +450 -0
  519. package/sdk/src/query/state-mutation.ts +1444 -0
  520. package/sdk/src/query/state-project-load.ts +109 -0
  521. package/sdk/src/query/state.test.ts +347 -0
  522. package/sdk/src/query/state.ts +397 -0
  523. package/sdk/src/query/summary.test.ts +95 -0
  524. package/sdk/src/query/summary.ts +296 -0
  525. package/sdk/src/query/template.test.ts +180 -0
  526. package/sdk/src/query/template.ts +242 -0
  527. package/sdk/src/query/uat.test.ts +77 -0
  528. package/sdk/src/query/uat.ts +314 -0
  529. package/sdk/src/query/utils.test.ts +82 -0
  530. package/sdk/src/query/utils.ts +92 -0
  531. package/sdk/src/query/validate.test.ts +656 -0
  532. package/sdk/src/query/validate.ts +807 -0
  533. package/sdk/src/query/verify.test.ts +414 -0
  534. package/sdk/src/query/verify.ts +645 -0
  535. package/sdk/src/query/websearch.test.ts +31 -0
  536. package/sdk/src/query/websearch.ts +82 -0
  537. package/sdk/src/query/workspace.test.ts +119 -0
  538. package/sdk/src/query/workspace.ts +131 -0
  539. package/sdk/src/query/workstream.test.ts +51 -0
  540. package/sdk/src/query/workstream.ts +434 -0
  541. package/sdk/src/research-gate.test.ts +190 -0
  542. package/sdk/src/research-gate.ts +94 -0
  543. package/sdk/src/runtime-health.test.ts +176 -0
  544. package/sdk/src/runtime-health.ts +387 -0
  545. package/sdk/src/session-runner.test.ts +98 -0
  546. package/sdk/src/session-runner.ts +299 -0
  547. package/sdk/src/tool-scoping.test.ts +160 -0
  548. package/sdk/src/tool-scoping.ts +61 -0
  549. package/sdk/src/types.ts +917 -0
  550. package/sdk/src/workstream-utils.ts +33 -0
  551. package/sdk/src/ws-flag.test.ts +285 -0
  552. package/sdk/src/ws-transport.test.ts +161 -0
  553. package/sdk/src/ws-transport.ts +93 -0
  554. package/sdk/tsconfig.json +20 -0
@@ -0,0 +1,238 @@
1
+ <purpose>
2
+ Orchestrate parallel debug agents to investigate UAT gaps and find root causes.
3
+
4
+ After UAT finds gaps, spawn one debug agent per gap. Each agent investigates autonomously with symptoms pre-filled from UAT. Collect root causes, update UAT.md gaps with diagnosis, then hand off to plan-phase --gaps with actual diagnoses.
5
+
6
+ Orchestrator stays lean: parse gaps, spawn agents, collect results, update UAT.
7
+ </purpose>
8
+
9
+ <available_agent_types>
10
+ Valid GSD subagent types (use exact names — do not fall back to 'general-purpose'):
11
+ - gsd-debugger — Diagnoses and fixes issues
12
+ </available_agent_types>
13
+
14
+ <paths>
15
+ DEBUG_DIR=.planning/debug
16
+
17
+ Debug files use the `.planning/debug/` path (hidden directory with leading dot).
18
+ </paths>
19
+
20
+ <core_principle>
21
+ **Diagnose before planning fixes.**
22
+
23
+ UAT tells us WHAT is broken (symptoms). Debug agents find WHY (root cause). plan-phase --gaps then creates targeted fixes based on actual causes, not guesses.
24
+
25
+ Without diagnosis: "Comment doesn't refresh" → guess at fix → maybe wrong
26
+ With diagnosis: "Comment doesn't refresh" → "useEffect missing dependency" → precise fix
27
+ </core_principle>
28
+
29
+ <process>
30
+
31
+ <step name="parse_gaps">
32
+ **Extract gaps from UAT.md:**
33
+
34
+ Read the "Gaps" section (YAML format):
35
+ ```yaml
36
+ - truth: "Comment appears immediately after submission"
37
+ status: failed
38
+ reason: "User reported: works but doesn't show until I refresh the page"
39
+ severity: major
40
+ test: 2
41
+ artifacts: []
42
+ missing: []
43
+ ```
44
+
45
+ For each gap, also read the corresponding test from "Tests" section to get full context.
46
+
47
+ Build gap list:
48
+ ```
49
+ gaps = [
50
+ {truth: "Comment appears immediately...", severity: "major", test_num: 2, reason: "..."},
51
+ {truth: "Reply button positioned correctly...", severity: "minor", test_num: 5, reason: "..."},
52
+ ...
53
+ ]
54
+ ```
55
+ </step>
56
+
57
+ <step name="report_plan">
58
+ **Read worktree config:**
59
+
60
+ ```bash
61
+ USE_WORKTREES=$(gsd-remix-sdk query config-get workflow.use_worktrees 2>/dev/null || echo "true")
62
+ ```
63
+
64
+ **Report diagnosis plan to user:**
65
+
66
+ ```
67
+ ## Diagnosing {N} Gaps
68
+
69
+ Spawning parallel debug agents to investigate root causes:
70
+
71
+ | Gap (Truth) | Severity |
72
+ |-------------|----------|
73
+ | Comment appears immediately after submission | major |
74
+ | Reply button positioned correctly | minor |
75
+ | Delete removes comment | blocker |
76
+
77
+ Each agent will:
78
+ 1. Create DEBUG-{slug}.md with symptoms pre-filled
79
+ 2. Investigate autonomously (read code, form hypotheses, test)
80
+ 3. Return root cause
81
+
82
+ This runs in parallel - all gaps investigated simultaneously.
83
+ ```
84
+ </step>
85
+
86
+ <step name="spawn_agents">
87
+ **Load agent skills:**
88
+
89
+ ```bash
90
+ AGENT_SKILLS_DEBUGGER=$(gsd-remix-sdk query agent-skills gsd-debugger 2>/dev/null)
91
+ EXPECTED_BASE=$(git rev-parse HEAD)
92
+ ```
93
+
94
+ **Spawn debug agents in parallel:**
95
+
96
+ For each gap, fill the debug-subagent-prompt template and spawn:
97
+
98
+ ```
99
+ Task(
100
+ prompt=filled_debug_subagent_prompt + "\n\n<worktree_branch_check>\nFIRST ACTION: run git merge-base HEAD {EXPECTED_BASE} — if result differs from {EXPECTED_BASE}, run git reset --hard {EXPECTED_BASE} to correct the branch base (safe — runs before any agent work). Then verify: if [ \"$(git rev-parse HEAD)\" != \"{EXPECTED_BASE}\" ]; then echo \"ERROR: Could not correct worktree base\"; exit 1; fi. Fixes EnterWorktree creating branches from main on all platforms.\n</worktree_branch_check>\n\n<files_to_read>\n- {phase_dir}/{phase_num}-UAT.md\n- .planning/STATE.md\n</files_to_read>\n${AGENT_SKILLS_DEBUGGER}",
101
+ subagent_type="gsd-debugger",
102
+ ${USE_WORKTREES !== "false" ? 'isolation="worktree",' : ''}
103
+ description="Debug: {truth_short}"
104
+ )
105
+ ```
106
+
107
+ **All agents spawn in single message** (parallel execution).
108
+
109
+ Template placeholders:
110
+ - `{truth}`: The expected behavior that failed
111
+ - `{expected}`: From UAT test
112
+ - `{actual}`: Verbatim user description from reason field
113
+ - `{errors}`: Any error messages from UAT (or "None reported")
114
+ - `{reproduction}`: "Test {test_num} in UAT"
115
+ - `{timeline}`: "Discovered during UAT"
116
+ - `{goal}`: `find_root_cause_only` (UAT flow - plan-phase --gaps handles fixes)
117
+ - `{slug}`: Generated from truth
118
+ </step>
119
+
120
+ <step name="collect_results">
121
+ **Collect root causes from agents:**
122
+
123
+ Each agent returns with:
124
+ ```
125
+ ## ROOT CAUSE FOUND
126
+
127
+ **Debug Session:** ${DEBUG_DIR}/{slug}.md
128
+
129
+ **Root Cause:** {specific cause with evidence}
130
+
131
+ **Evidence Summary:**
132
+ - {key finding 1}
133
+ - {key finding 2}
134
+ - {key finding 3}
135
+
136
+ **Files Involved:**
137
+ - {file1}: {what's wrong}
138
+ - {file2}: {related issue}
139
+
140
+ **Suggested Fix Direction:** {brief hint for plan-phase --gaps}
141
+ ```
142
+
143
+ Parse each return to extract:
144
+ - root_cause: The diagnosed cause
145
+ - files: Files involved
146
+ - debug_path: Path to debug session file
147
+ - suggested_fix: Hint for gap closure plan
148
+
149
+ If agent returns `## INVESTIGATION INCONCLUSIVE`:
150
+ - root_cause: "Investigation inconclusive - manual review needed"
151
+ - Note which issue needs manual attention
152
+ - Include remaining possibilities from agent return
153
+ </step>
154
+
155
+ <step name="update_uat">
156
+ **Update UAT.md gaps with diagnosis:**
157
+
158
+ For each gap in the Gaps section, add artifacts and missing fields:
159
+
160
+ ```yaml
161
+ - truth: "Comment appears immediately after submission"
162
+ status: failed
163
+ reason: "User reported: works but doesn't show until I refresh the page"
164
+ severity: major
165
+ test: 2
166
+ root_cause: "useEffect in CommentList.tsx missing commentCount dependency"
167
+ artifacts:
168
+ - path: "src/components/CommentList.tsx"
169
+ issue: "useEffect missing dependency"
170
+ missing:
171
+ - "Add commentCount to useEffect dependency array"
172
+ - "Trigger re-render when new comment added"
173
+ debug_session: .planning/debug/comment-not-refreshing.md
174
+ ```
175
+
176
+ Update status in frontmatter to "diagnosed".
177
+
178
+ Commit the updated UAT.md:
179
+ ```bash
180
+ gsd-remix-sdk query commit "docs({phase_num}): add root causes from diagnosis" ".planning/phases/XX-name/{phase_num}-UAT.md"
181
+ ```
182
+ </step>
183
+
184
+ <step name="report_results">
185
+ **Report diagnosis results and hand off:**
186
+
187
+ Display:
188
+ ```
189
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
190
+ GSD ► DIAGNOSIS COMPLETE
191
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
192
+
193
+ | Gap (Truth) | Root Cause | Files |
194
+ |-------------|------------|-------|
195
+ | Comment appears immediately | useEffect missing dependency | CommentList.tsx |
196
+ | Reply button positioned correctly | CSS flex order incorrect | ReplyButton.tsx |
197
+ | Delete removes comment | API missing auth header | api/comments.ts |
198
+
199
+ Debug sessions: ${DEBUG_DIR}/
200
+
201
+ Proceeding to plan fixes...
202
+ ```
203
+
204
+ Return to verify-work orchestrator for automatic planning.
205
+ Do NOT offer manual next steps - verify-work handles the rest.
206
+ </step>
207
+
208
+ </process>
209
+
210
+ <context_efficiency>
211
+ Agents start with symptoms pre-filled from UAT (no symptom gathering).
212
+ Agents only diagnose—plan-phase --gaps handles fixes (no fix application).
213
+ </context_efficiency>
214
+
215
+ <failure_handling>
216
+ **Agent fails to find root cause:**
217
+ - Mark gap as "needs manual review"
218
+ - Continue with other gaps
219
+ - Report incomplete diagnosis
220
+
221
+ **Agent times out:**
222
+ - Check DEBUG-{slug}.md for partial progress
223
+ - Can resume with /gsd-debug
224
+
225
+ **All agents fail:**
226
+ - Something systemic (permissions, git, etc.)
227
+ - Report for manual investigation
228
+ - Fall back to plan-phase --gaps without root causes (less precise)
229
+ </failure_handling>
230
+
231
+ <success_criteria>
232
+ - [ ] Gaps parsed from UAT.md
233
+ - [ ] Debug agents spawned in parallel
234
+ - [ ] Root causes collected from all agents
235
+ - [ ] UAT.md gaps updated with artifacts and missing
236
+ - [ ] Debug sessions saved to ${DEBUG_DIR}/
237
+ - [ ] Hand off to verify-work for automatic planning
238
+ </success_criteria>
@@ -0,0 +1,291 @@
1
+ <purpose>
2
+ Execute discovery at the appropriate depth level.
3
+ Produces DISCOVERY.md (for Level 2-3) that informs PLAN.md creation.
4
+
5
+ Called from plan-phase.md's mandatory_discovery step with a depth parameter.
6
+
7
+ NOTE: For comprehensive ecosystem research ("how do experts build this"), use /gsd-research-phase instead, which produces RESEARCH.md.
8
+ </purpose>
9
+
10
+ <depth_levels>
11
+ **This workflow supports three depth levels:**
12
+
13
+ | Level | Name | Time | Output | When |
14
+ | ----- | ------------ | --------- | -------------------------------------------- | ----------------------------------------- |
15
+ | 1 | Quick Verify | 2-5 min | No file, proceed with verified knowledge | Single library, confirming current syntax |
16
+ | 2 | Standard | 15-30 min | DISCOVERY.md | Choosing between options, new integration |
17
+ | 3 | Deep Dive | 1+ hour | Detailed DISCOVERY.md with validation gates | Architectural decisions, novel problems |
18
+
19
+ **Depth is determined by plan-phase.md before routing here.**
20
+ </depth_levels>
21
+
22
+ <source_hierarchy>
23
+ **MANDATORY: Context7 BEFORE WebSearch**
24
+
25
+ Claude's training data is 6-18 months stale. Always verify.
26
+
27
+ 1. **Context7 MCP FIRST** - Current docs, no hallucination
28
+ 2. **Official docs** - When Context7 lacks coverage
29
+ 3. **WebSearch LAST** - For comparisons and trends only
30
+
31
+ See ~/.claude/get-shit-done/templates/discovery.md `<discovery_protocol>` for full protocol.
32
+ </source_hierarchy>
33
+
34
+ <process>
35
+
36
+ <step name="determine_depth">
37
+ Check the depth parameter passed from plan-phase.md:
38
+ - `depth=verify` → Level 1 (Quick Verification)
39
+ - `depth=standard` → Level 2 (Standard Discovery)
40
+ - `depth=deep` → Level 3 (Deep Dive)
41
+
42
+ Route to appropriate level workflow below.
43
+ </step>
44
+
45
+ <step name="level_1_quick_verify">
46
+ **Level 1: Quick Verification (2-5 minutes)**
47
+
48
+ For: Single known library, confirming syntax/version still correct.
49
+
50
+ **Process:**
51
+
52
+ 1. Resolve library in Context7:
53
+
54
+ ```
55
+ mcp__context7__resolve-library-id with libraryName: "[library]"
56
+ ```
57
+
58
+ 2. Fetch relevant docs:
59
+
60
+ ```
61
+ mcp__context7__get-library-docs with:
62
+ - context7CompatibleLibraryID: [from step 1]
63
+ - topic: [specific concern]
64
+ ```
65
+
66
+ 3. Verify:
67
+
68
+ - Current version matches expectations
69
+ - API syntax unchanged
70
+ - No breaking changes in recent versions
71
+
72
+ 4. **If verified:** Return to plan-phase.md with confirmation. No DISCOVERY.md needed.
73
+
74
+ 5. **If concerns found:** Escalate to Level 2.
75
+
76
+ **Output:** Verbal confirmation to proceed, or escalation to Level 2.
77
+ </step>
78
+
79
+ <step name="level_2_standard">
80
+ **Level 2: Standard Discovery (15-30 minutes)**
81
+
82
+ For: Choosing between options, new external integration.
83
+
84
+ **Process:**
85
+
86
+ 1. **Identify what to discover:**
87
+
88
+ - What options exist?
89
+ - What are the key comparison criteria?
90
+ - What's our specific use case?
91
+
92
+ 2. **Context7 for each option:**
93
+
94
+ ```
95
+ For each library/framework:
96
+ - mcp__context7__resolve-library-id
97
+ - mcp__context7__get-library-docs (mode: "code" for API, "info" for concepts)
98
+ ```
99
+
100
+ 3. **Official docs** for anything Context7 lacks.
101
+
102
+ 4. **WebSearch** for comparisons:
103
+
104
+ - "[option A] vs [option B] {current_year}"
105
+ - "[option] known issues"
106
+ - "[option] with [our stack]"
107
+
108
+ 5. **Cross-verify:** Any WebSearch finding → confirm with Context7/official docs.
109
+
110
+ 6. **Create DISCOVERY.md** using ~/.claude/get-shit-done/templates/discovery.md structure:
111
+
112
+ - Summary with recommendation
113
+ - Key findings per option
114
+ - Code examples from Context7
115
+ - Confidence level (should be MEDIUM-HIGH for Level 2)
116
+
117
+ 7. Return to plan-phase.md.
118
+
119
+ **Output:** `.planning/phases/XX-name/DISCOVERY.md`
120
+ </step>
121
+
122
+ <step name="level_3_deep_dive">
123
+ **Level 3: Deep Dive (1+ hour)**
124
+
125
+ For: Architectural decisions, novel problems, high-risk choices.
126
+
127
+ **Process:**
128
+
129
+ 1. **Scope the discovery** using ~/.claude/get-shit-done/templates/discovery.md:
130
+
131
+ - Define clear scope
132
+ - Define include/exclude boundaries
133
+ - List specific questions to answer
134
+
135
+ 2. **Exhaustive Context7 research:**
136
+
137
+ - All relevant libraries
138
+ - Related patterns and concepts
139
+ - Multiple topics per library if needed
140
+
141
+ 3. **Official documentation deep read:**
142
+
143
+ - Architecture guides
144
+ - Best practices sections
145
+ - Migration/upgrade guides
146
+ - Known limitations
147
+
148
+ 4. **WebSearch for ecosystem context:**
149
+
150
+ - How others solved similar problems
151
+ - Production experiences
152
+ - Gotchas and anti-patterns
153
+ - Recent changes/announcements
154
+
155
+ 5. **Cross-verify ALL findings:**
156
+
157
+ - Every WebSearch claim → verify with authoritative source
158
+ - Mark what's verified vs assumed
159
+ - Flag contradictions
160
+
161
+ 6. **Create comprehensive DISCOVERY.md:**
162
+
163
+ - Full structure from ~/.claude/get-shit-done/templates/discovery.md
164
+ - Quality report with source attribution
165
+ - Confidence by finding
166
+ - If LOW confidence on any critical finding → add validation checkpoints
167
+
168
+ 7. **Confidence gate:** If overall confidence is LOW, present options before proceeding.
169
+
170
+ 8. Return to plan-phase.md.
171
+
172
+ **Output:** `.planning/phases/XX-name/DISCOVERY.md` (comprehensive)
173
+ </step>
174
+
175
+ <step name="identify_unknowns">
176
+ **For Level 2-3:** Define what we need to learn.
177
+
178
+ Ask: What do we need to learn before we can plan this phase?
179
+
180
+ - Technology choices?
181
+ - Best practices?
182
+ - API patterns?
183
+ - Architecture approach?
184
+ </step>
185
+
186
+ <step name="create_discovery_scope">
187
+ Use ~/.claude/get-shit-done/templates/discovery.md.
188
+
189
+ Include:
190
+
191
+ - Clear discovery objective
192
+ - Scoped include/exclude lists
193
+ - Source preferences (official docs, Context7, current year)
194
+ - Output structure for DISCOVERY.md
195
+ </step>
196
+
197
+ <step name="execute_discovery">
198
+ Run the discovery:
199
+ - Use web search for current info
200
+ - Use Context7 MCP for library docs
201
+ - Prefer current year sources
202
+ - Structure findings per template
203
+ </step>
204
+
205
+ <step name="create_discovery_output">
206
+ Write `.planning/phases/XX-name/DISCOVERY.md`:
207
+ - Summary with recommendation
208
+ - Key findings with sources
209
+ - Code examples if applicable
210
+ - Metadata (confidence, dependencies, open questions, assumptions)
211
+ </step>
212
+
213
+ <step name="confidence_gate">
214
+ After creating DISCOVERY.md, check confidence level.
215
+
216
+ If confidence is LOW:
217
+
218
+ **Text mode (`workflow.text_mode: true` in config or `--text` flag):** Set `TEXT_MODE=true` if `--text` is present in `$ARGUMENTS` OR `text_mode` from init JSON is `true`. When TEXT_MODE is active, replace every `AskUserQuestion` call with a plain-text numbered list and ask the user to type their choice number. This is required for non-Claude runtimes (OpenAI Codex, Gemini CLI, etc.) where `AskUserQuestion` is not available.
219
+ Use AskUserQuestion:
220
+
221
+ - header: "Low Conf."
222
+ - question: "Discovery confidence is LOW: [reason]. How would you like to proceed?"
223
+ - options:
224
+ - "Dig deeper" - Do more research before planning
225
+ - "Proceed anyway" - Accept uncertainty, plan with caveats
226
+ - "Pause" - I need to think about this
227
+
228
+ If confidence is MEDIUM:
229
+ Inline: "Discovery complete (medium confidence). [brief reason]. Proceed to planning?"
230
+
231
+ If confidence is HIGH:
232
+ Proceed directly, just note: "Discovery complete (high confidence)."
233
+ </step>
234
+
235
+ <step name="open_questions_gate">
236
+ If DISCOVERY.md has open_questions:
237
+
238
+ Present them inline:
239
+ "Open questions from discovery:
240
+
241
+ - [Question 1]
242
+ - [Question 2]
243
+
244
+ These may affect implementation. Acknowledge and proceed? (yes / address first)"
245
+
246
+ If "address first": Gather user input on questions, update discovery.
247
+ </step>
248
+
249
+ <step name="offer_next">
250
+ ```
251
+ Discovery complete: .planning/phases/XX-name/DISCOVERY.md
252
+ Recommendation: [one-liner]
253
+ Confidence: [level]
254
+
255
+ What's next?
256
+
257
+ 1. Discuss phase context (/gsd-discuss-phase [current-phase])
258
+ 2. Create phase plan (/gsd-plan-phase [current-phase])
259
+ 3. Refine discovery (dig deeper)
260
+ 4. Review discovery
261
+
262
+ ```
263
+
264
+ NOTE: DISCOVERY.md is NOT committed separately. It will be committed with phase completion.
265
+ </step>
266
+
267
+ </process>
268
+
269
+ <success_criteria>
270
+ **Level 1 (Quick Verify):**
271
+ - Context7 consulted for library/topic
272
+ - Current state verified or concerns escalated
273
+ - Verbal confirmation to proceed (no files)
274
+
275
+ **Level 2 (Standard):**
276
+ - Context7 consulted for all options
277
+ - WebSearch findings cross-verified
278
+ - DISCOVERY.md created with recommendation
279
+ - Confidence level MEDIUM or higher
280
+ - Ready to inform PLAN.md creation
281
+
282
+ **Level 3 (Deep Dive):**
283
+ - Discovery scope defined
284
+ - Context7 exhaustively consulted
285
+ - All WebSearch findings verified against authoritative sources
286
+ - DISCOVERY.md created with comprehensive analysis
287
+ - Quality report with source attribution
288
+ - If LOW confidence findings → validation checkpoints defined
289
+ - Confidence gate passed
290
+ - Ready to inform PLAN.md creation
291
+ </success_criteria>