@jokerized/getresearchdone 0.4.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 (711) hide show
  1. package/.claude-plugin/plugin.json +103 -0
  2. package/README.md +211 -0
  3. package/agents/grd-baseline-assessor.md +684 -0
  4. package/agents/grd-code-reviewer.md +300 -0
  5. package/agents/grd-codebase-mapper.md +355 -0
  6. package/agents/grd-critique-agent.md +119 -0
  7. package/agents/grd-debugger.md +519 -0
  8. package/agents/grd-deep-diver.md +737 -0
  9. package/agents/grd-eval-planner.md +913 -0
  10. package/agents/grd-eval-reporter.md +717 -0
  11. package/agents/grd-executor.md +683 -0
  12. package/agents/grd-feasibility-analyst.md +624 -0
  13. package/agents/grd-integration-checker.md +367 -0
  14. package/agents/grd-knowledge-miner.md +81 -0
  15. package/agents/grd-migrator.md +88 -0
  16. package/agents/grd-phase-researcher.md +697 -0
  17. package/agents/grd-plan-checker.md +443 -0
  18. package/agents/grd-planner.md +1532 -0
  19. package/agents/grd-product-owner.md +562 -0
  20. package/agents/grd-project-researcher.md +513 -0
  21. package/agents/grd-research-synthesizer.md +273 -0
  22. package/agents/grd-roadmapper.md +798 -0
  23. package/agents/grd-surveyor.md +566 -0
  24. package/agents/grd-verifier.md +893 -0
  25. package/bin/gd.js +4 -0
  26. package/bin/gd.ts +227 -0
  27. package/bin/grd-manifest.js +4 -0
  28. package/bin/grd-manifest.ts +286 -0
  29. package/bin/grd-mcp-server.js +4 -0
  30. package/bin/grd-mcp-server.ts +124 -0
  31. package/bin/grd-tools.js +4 -0
  32. package/bin/grd-tools.ts +2471 -0
  33. package/bin/postinstall.js +4 -0
  34. package/bin/postinstall.ts +80 -0
  35. package/commands/add-phase.md +123 -0
  36. package/commands/add-todo.md +87 -0
  37. package/commands/assess-baseline.md +289 -0
  38. package/commands/autopilot.md +100 -0
  39. package/commands/autoplan.md +55 -0
  40. package/commands/check-todos.md +87 -0
  41. package/commands/compare-methods.md +262 -0
  42. package/commands/complete-milestone.md +225 -0
  43. package/commands/debug.md +372 -0
  44. package/commands/deep-dive.md +288 -0
  45. package/commands/discover.md +281 -0
  46. package/commands/discuss-phase.md +188 -0
  47. package/commands/discuss.md +55 -0
  48. package/commands/eval-report.md +310 -0
  49. package/commands/evolve.md +79 -0
  50. package/commands/execute-phase.md +1017 -0
  51. package/commands/feasibility.md +292 -0
  52. package/commands/help.md +407 -0
  53. package/commands/init.md +1508 -0
  54. package/commands/insert-phase.md +113 -0
  55. package/commands/iterate.md +327 -0
  56. package/commands/list-phase-assumptions.md +217 -0
  57. package/commands/long-term-roadmap.md +202 -0
  58. package/commands/map-codebase.md +111 -0
  59. package/commands/migrate.md +159 -0
  60. package/commands/new-milestone.md +169 -0
  61. package/commands/pause-work.md +83 -0
  62. package/commands/plan-milestone-gaps.md +373 -0
  63. package/commands/plan-phase.md +655 -0
  64. package/commands/principles.md +328 -0
  65. package/commands/product-plan.md +319 -0
  66. package/commands/progress.md +481 -0
  67. package/commands/quick.md +167 -0
  68. package/commands/reapply-patches.md +154 -0
  69. package/commands/remove-phase.md +97 -0
  70. package/commands/requirement.md +96 -0
  71. package/commands/resume-project.md +113 -0
  72. package/commands/settings.md +1144 -0
  73. package/commands/survey.md +242 -0
  74. package/commands/sync.md +246 -0
  75. package/commands/tracker-setup.md +322 -0
  76. package/commands/update.md +202 -0
  77. package/commands/verify-phase.md +335 -0
  78. package/commands/verify-work.md +701 -0
  79. package/commands/wireup.md +29 -0
  80. package/dist/bin/gd.d.ts +3 -0
  81. package/dist/bin/gd.d.ts.map +1 -0
  82. package/dist/bin/gd.js +178 -0
  83. package/dist/bin/gd.js.map +1 -0
  84. package/dist/bin/grd-manifest.d.ts +3 -0
  85. package/dist/bin/grd-manifest.d.ts.map +1 -0
  86. package/dist/bin/grd-manifest.js +202 -0
  87. package/dist/bin/grd-manifest.js.map +1 -0
  88. package/dist/bin/grd-mcp-server.d.ts +3 -0
  89. package/dist/bin/grd-mcp-server.d.ts.map +1 -0
  90. package/dist/bin/grd-mcp-server.js +71 -0
  91. package/dist/bin/grd-mcp-server.js.map +1 -0
  92. package/dist/bin/grd-tools.d.ts +3 -0
  93. package/dist/bin/grd-tools.d.ts.map +1 -0
  94. package/dist/bin/grd-tools.js +1680 -0
  95. package/dist/bin/grd-tools.js.map +1 -0
  96. package/dist/bin/postinstall.d.ts +3 -0
  97. package/dist/bin/postinstall.d.ts.map +1 -0
  98. package/dist/bin/postinstall.js +61 -0
  99. package/dist/bin/postinstall.js.map +1 -0
  100. package/dist/lib/autopilot-milestone.d.ts +2 -0
  101. package/dist/lib/autopilot-milestone.d.ts.map +1 -0
  102. package/dist/lib/autopilot-milestone.js +94 -0
  103. package/dist/lib/autopilot-milestone.js.map +1 -0
  104. package/dist/lib/autopilot-pipeline.d.ts +2 -0
  105. package/dist/lib/autopilot-pipeline.d.ts.map +1 -0
  106. package/dist/lib/autopilot-pipeline.js +830 -0
  107. package/dist/lib/autopilot-pipeline.js.map +1 -0
  108. package/dist/lib/autopilot-waves.d.ts +2 -0
  109. package/dist/lib/autopilot-waves.d.ts.map +1 -0
  110. package/dist/lib/autopilot-waves.js +266 -0
  111. package/dist/lib/autopilot-waves.js.map +1 -0
  112. package/dist/lib/autopilot.d.ts +2 -0
  113. package/dist/lib/autopilot.d.ts.map +1 -0
  114. package/dist/lib/autopilot.js +1314 -0
  115. package/dist/lib/autopilot.js.map +1 -0
  116. package/dist/lib/autoplan.d.ts +2 -0
  117. package/dist/lib/autoplan.d.ts.map +1 -0
  118. package/dist/lib/autoplan.js +198 -0
  119. package/dist/lib/autoplan.js.map +1 -0
  120. package/dist/lib/autoresearch.d.ts +2 -0
  121. package/dist/lib/autoresearch.d.ts.map +1 -0
  122. package/dist/lib/autoresearch.js +626 -0
  123. package/dist/lib/autoresearch.js.map +1 -0
  124. package/dist/lib/backend.d.ts +2 -0
  125. package/dist/lib/backend.d.ts.map +1 -0
  126. package/dist/lib/backend.js +1036 -0
  127. package/dist/lib/backend.js.map +1 -0
  128. package/dist/lib/benchmark.d.ts +99 -0
  129. package/dist/lib/benchmark.d.ts.map +1 -0
  130. package/dist/lib/benchmark.js +278 -0
  131. package/dist/lib/benchmark.js.map +1 -0
  132. package/dist/lib/citations.d.ts +2 -0
  133. package/dist/lib/citations.d.ts.map +1 -0
  134. package/dist/lib/citations.js +642 -0
  135. package/dist/lib/citations.js.map +1 -0
  136. package/dist/lib/cleanup.d.ts +2 -0
  137. package/dist/lib/cleanup.d.ts.map +1 -0
  138. package/dist/lib/cleanup.js +1222 -0
  139. package/dist/lib/cleanup.js.map +1 -0
  140. package/dist/lib/cli/adapters.d.ts +10 -0
  141. package/dist/lib/cli/adapters.d.ts.map +1 -0
  142. package/dist/lib/cli/adapters.js +27 -0
  143. package/dist/lib/cli/adapters.js.map +1 -0
  144. package/dist/lib/cli/agent.d.ts +17 -0
  145. package/dist/lib/cli/agent.d.ts.map +1 -0
  146. package/dist/lib/cli/agent.js +53 -0
  147. package/dist/lib/cli/agent.js.map +1 -0
  148. package/dist/lib/cli/index.d.ts +21 -0
  149. package/dist/lib/cli/index.d.ts.map +1 -0
  150. package/dist/lib/cli/index.js +264 -0
  151. package/dist/lib/cli/index.js.map +1 -0
  152. package/dist/lib/cli/output.d.ts +20 -0
  153. package/dist/lib/cli/output.d.ts.map +1 -0
  154. package/dist/lib/cli/output.js +22 -0
  155. package/dist/lib/cli/output.js.map +1 -0
  156. package/dist/lib/cli/scan-dispatch.d.ts +9 -0
  157. package/dist/lib/cli/scan-dispatch.d.ts.map +1 -0
  158. package/dist/lib/cli/scan-dispatch.js +107 -0
  159. package/dist/lib/cli/scan-dispatch.js.map +1 -0
  160. package/dist/lib/cli/tools.d.ts +16 -0
  161. package/dist/lib/cli/tools.d.ts.map +1 -0
  162. package/dist/lib/cli/tools.js +168 -0
  163. package/dist/lib/cli/tools.js.map +1 -0
  164. package/dist/lib/commands/_dashboard-parsers.d.ts +2 -0
  165. package/dist/lib/commands/_dashboard-parsers.d.ts.map +1 -0
  166. package/dist/lib/commands/_dashboard-parsers.js +192 -0
  167. package/dist/lib/commands/_dashboard-parsers.js.map +1 -0
  168. package/dist/lib/commands/analysis.d.ts +2 -0
  169. package/dist/lib/commands/analysis.d.ts.map +1 -0
  170. package/dist/lib/commands/analysis.js +1418 -0
  171. package/dist/lib/commands/analysis.js.map +1 -0
  172. package/dist/lib/commands/assumptions.d.ts +2 -0
  173. package/dist/lib/commands/assumptions.d.ts.map +1 -0
  174. package/dist/lib/commands/assumptions.js +166 -0
  175. package/dist/lib/commands/assumptions.js.map +1 -0
  176. package/dist/lib/commands/blame.d.ts +2 -0
  177. package/dist/lib/commands/blame.d.ts.map +1 -0
  178. package/dist/lib/commands/blame.js +133 -0
  179. package/dist/lib/commands/blame.js.map +1 -0
  180. package/dist/lib/commands/budget.d.ts +2 -0
  181. package/dist/lib/commands/budget.d.ts.map +1 -0
  182. package/dist/lib/commands/budget.js +100 -0
  183. package/dist/lib/commands/budget.js.map +1 -0
  184. package/dist/lib/commands/check-plans.d.ts +2 -0
  185. package/dist/lib/commands/check-plans.d.ts.map +1 -0
  186. package/dist/lib/commands/check-plans.js +190 -0
  187. package/dist/lib/commands/check-plans.js.map +1 -0
  188. package/dist/lib/commands/config.d.ts +2 -0
  189. package/dist/lib/commands/config.d.ts.map +1 -0
  190. package/dist/lib/commands/config.js +188 -0
  191. package/dist/lib/commands/config.js.map +1 -0
  192. package/dist/lib/commands/dashboard.d.ts +2 -0
  193. package/dist/lib/commands/dashboard.d.ts.map +1 -0
  194. package/dist/lib/commands/dashboard.js +466 -0
  195. package/dist/lib/commands/dashboard.js.map +1 -0
  196. package/dist/lib/commands/estimate.d.ts +2 -0
  197. package/dist/lib/commands/estimate.d.ts.map +1 -0
  198. package/dist/lib/commands/estimate.js +148 -0
  199. package/dist/lib/commands/estimate.js.map +1 -0
  200. package/dist/lib/commands/eval-diff.d.ts +2 -0
  201. package/dist/lib/commands/eval-diff.d.ts.map +1 -0
  202. package/dist/lib/commands/eval-diff.js +213 -0
  203. package/dist/lib/commands/eval-diff.js.map +1 -0
  204. package/dist/lib/commands/freshness.d.ts +2 -0
  205. package/dist/lib/commands/freshness.d.ts.map +1 -0
  206. package/dist/lib/commands/freshness.js +163 -0
  207. package/dist/lib/commands/freshness.js.map +1 -0
  208. package/dist/lib/commands/health.d.ts +2 -0
  209. package/dist/lib/commands/health.d.ts.map +1 -0
  210. package/dist/lib/commands/health.js +435 -0
  211. package/dist/lib/commands/health.js.map +1 -0
  212. package/dist/lib/commands/index.d.ts +2 -0
  213. package/dist/lib/commands/index.d.ts.map +1 -0
  214. package/dist/lib/commands/index.js +128 -0
  215. package/dist/lib/commands/index.js.map +1 -0
  216. package/dist/lib/commands/install.d.ts +56 -0
  217. package/dist/lib/commands/install.d.ts.map +1 -0
  218. package/dist/lib/commands/install.js +214 -0
  219. package/dist/lib/commands/install.js.map +1 -0
  220. package/dist/lib/commands/knowhow-aggregator.d.ts +2 -0
  221. package/dist/lib/commands/knowhow-aggregator.d.ts.map +1 -0
  222. package/dist/lib/commands/knowhow-aggregator.js +279 -0
  223. package/dist/lib/commands/knowhow-aggregator.js.map +1 -0
  224. package/dist/lib/commands/knowledge-search.d.ts +2 -0
  225. package/dist/lib/commands/knowledge-search.d.ts.map +1 -0
  226. package/dist/lib/commands/knowledge-search.js +113 -0
  227. package/dist/lib/commands/knowledge-search.js.map +1 -0
  228. package/dist/lib/commands/long-term-roadmap.d.ts +2 -0
  229. package/dist/lib/commands/long-term-roadmap.d.ts.map +1 -0
  230. package/dist/lib/commands/long-term-roadmap.js +272 -0
  231. package/dist/lib/commands/long-term-roadmap.js.map +1 -0
  232. package/dist/lib/commands/patterns.d.ts +91 -0
  233. package/dist/lib/commands/patterns.d.ts.map +1 -0
  234. package/dist/lib/commands/patterns.js +391 -0
  235. package/dist/lib/commands/patterns.js.map +1 -0
  236. package/dist/lib/commands/phase-info.d.ts +2 -0
  237. package/dist/lib/commands/phase-info.d.ts.map +1 -0
  238. package/dist/lib/commands/phase-info.js +509 -0
  239. package/dist/lib/commands/phase-info.js.map +1 -0
  240. package/dist/lib/commands/plan-lint.d.ts +56 -0
  241. package/dist/lib/commands/plan-lint.d.ts.map +1 -0
  242. package/dist/lib/commands/plan-lint.js +481 -0
  243. package/dist/lib/commands/plan-lint.js.map +1 -0
  244. package/dist/lib/commands/plan-phase.d.ts +53 -0
  245. package/dist/lib/commands/plan-phase.d.ts.map +1 -0
  246. package/dist/lib/commands/plan-phase.js +288 -0
  247. package/dist/lib/commands/plan-phase.js.map +1 -0
  248. package/dist/lib/commands/progress.d.ts +2 -0
  249. package/dist/lib/commands/progress.d.ts.map +1 -0
  250. package/dist/lib/commands/progress.js +266 -0
  251. package/dist/lib/commands/progress.js.map +1 -0
  252. package/dist/lib/commands/quality.d.ts +2 -0
  253. package/dist/lib/commands/quality.d.ts.map +1 -0
  254. package/dist/lib/commands/quality.js +80 -0
  255. package/dist/lib/commands/quality.js.map +1 -0
  256. package/dist/lib/commands/rollback.d.ts +2 -0
  257. package/dist/lib/commands/rollback.d.ts.map +1 -0
  258. package/dist/lib/commands/rollback.js +145 -0
  259. package/dist/lib/commands/rollback.js.map +1 -0
  260. package/dist/lib/commands/scan.d.ts +25 -0
  261. package/dist/lib/commands/scan.d.ts.map +1 -0
  262. package/dist/lib/commands/scan.js +28 -0
  263. package/dist/lib/commands/scan.js.map +1 -0
  264. package/dist/lib/commands/search.d.ts +2 -0
  265. package/dist/lib/commands/search.d.ts.map +1 -0
  266. package/dist/lib/commands/search.js +212 -0
  267. package/dist/lib/commands/search.js.map +1 -0
  268. package/dist/lib/commands/select-candidate.d.ts +128 -0
  269. package/dist/lib/commands/select-candidate.d.ts.map +1 -0
  270. package/dist/lib/commands/select-candidate.js +518 -0
  271. package/dist/lib/commands/select-candidate.js.map +1 -0
  272. package/dist/lib/commands/singularity.d.ts +2 -0
  273. package/dist/lib/commands/singularity.d.ts.map +1 -0
  274. package/dist/lib/commands/singularity.js +185 -0
  275. package/dist/lib/commands/singularity.js.map +1 -0
  276. package/dist/lib/commands/slug-timestamp.d.ts +2 -0
  277. package/dist/lib/commands/slug-timestamp.d.ts.map +1 -0
  278. package/dist/lib/commands/slug-timestamp.js +54 -0
  279. package/dist/lib/commands/slug-timestamp.js.map +1 -0
  280. package/dist/lib/commands/tail.d.ts +2 -0
  281. package/dist/lib/commands/tail.d.ts.map +1 -0
  282. package/dist/lib/commands/tail.js +100 -0
  283. package/dist/lib/commands/tail.js.map +1 -0
  284. package/dist/lib/commands/todo.d.ts +2 -0
  285. package/dist/lib/commands/todo.d.ts.map +1 -0
  286. package/dist/lib/commands/todo.js +200 -0
  287. package/dist/lib/commands/todo.js.map +1 -0
  288. package/dist/lib/commands/watch.d.ts +2 -0
  289. package/dist/lib/commands/watch.d.ts.map +1 -0
  290. package/dist/lib/commands/watch.js +72 -0
  291. package/dist/lib/commands/watch.js.map +1 -0
  292. package/dist/lib/complexity.d.ts +55 -0
  293. package/dist/lib/complexity.d.ts.map +1 -0
  294. package/dist/lib/complexity.js +80 -0
  295. package/dist/lib/complexity.js.map +1 -0
  296. package/dist/lib/context/agents.d.ts +2 -0
  297. package/dist/lib/context/agents.d.ts.map +1 -0
  298. package/dist/lib/context/agents.js +344 -0
  299. package/dist/lib/context/agents.js.map +1 -0
  300. package/dist/lib/context/base.d.ts +2 -0
  301. package/dist/lib/context/base.d.ts.map +1 -0
  302. package/dist/lib/context/base.js +81 -0
  303. package/dist/lib/context/base.js.map +1 -0
  304. package/dist/lib/context/execute.d.ts +2 -0
  305. package/dist/lib/context/execute.d.ts.map +1 -0
  306. package/dist/lib/context/execute.js +753 -0
  307. package/dist/lib/context/execute.js.map +1 -0
  308. package/dist/lib/context/index.d.ts +2 -0
  309. package/dist/lib/context/index.d.ts.map +1 -0
  310. package/dist/lib/context/index.js +88 -0
  311. package/dist/lib/context/index.js.map +1 -0
  312. package/dist/lib/context/progress.d.ts +2 -0
  313. package/dist/lib/context/progress.d.ts.map +1 -0
  314. package/dist/lib/context/progress.js +178 -0
  315. package/dist/lib/context/progress.js.map +1 -0
  316. package/dist/lib/context/project.d.ts +2 -0
  317. package/dist/lib/context/project.d.ts.map +1 -0
  318. package/dist/lib/context/project.js +413 -0
  319. package/dist/lib/context/project.js.map +1 -0
  320. package/dist/lib/context/research.d.ts +2 -0
  321. package/dist/lib/context/research.d.ts.map +1 -0
  322. package/dist/lib/context/research.js +466 -0
  323. package/dist/lib/context/research.js.map +1 -0
  324. package/dist/lib/dead-ends.d.ts +28 -0
  325. package/dist/lib/dead-ends.d.ts.map +1 -0
  326. package/dist/lib/dead-ends.js +451 -0
  327. package/dist/lib/dead-ends.js.map +1 -0
  328. package/dist/lib/deps.d.ts +2 -0
  329. package/dist/lib/deps.d.ts.map +1 -0
  330. package/dist/lib/deps.js +630 -0
  331. package/dist/lib/deps.js.map +1 -0
  332. package/dist/lib/discussion.d.ts +2 -0
  333. package/dist/lib/discussion.d.ts.map +1 -0
  334. package/dist/lib/discussion.js +1041 -0
  335. package/dist/lib/discussion.js.map +1 -0
  336. package/dist/lib/drift.d.ts +36 -0
  337. package/dist/lib/drift.d.ts.map +1 -0
  338. package/dist/lib/drift.js +481 -0
  339. package/dist/lib/drift.js.map +1 -0
  340. package/dist/lib/evolve/_dimensions-features.d.ts +2 -0
  341. package/dist/lib/evolve/_dimensions-features.d.ts.map +1 -0
  342. package/dist/lib/evolve/_dimensions-features.js +369 -0
  343. package/dist/lib/evolve/_dimensions-features.js.map +1 -0
  344. package/dist/lib/evolve/_dimensions.d.ts +2 -0
  345. package/dist/lib/evolve/_dimensions.d.ts.map +1 -0
  346. package/dist/lib/evolve/_dimensions.js +358 -0
  347. package/dist/lib/evolve/_dimensions.js.map +1 -0
  348. package/dist/lib/evolve/_product-ideation.d.ts +2 -0
  349. package/dist/lib/evolve/_product-ideation.d.ts.map +1 -0
  350. package/dist/lib/evolve/_product-ideation.js +281 -0
  351. package/dist/lib/evolve/_product-ideation.js.map +1 -0
  352. package/dist/lib/evolve/_prompts.d.ts +2 -0
  353. package/dist/lib/evolve/_prompts.d.ts.map +1 -0
  354. package/dist/lib/evolve/_prompts.js +153 -0
  355. package/dist/lib/evolve/_prompts.js.map +1 -0
  356. package/dist/lib/evolve/cli.d.ts +2 -0
  357. package/dist/lib/evolve/cli.d.ts.map +1 -0
  358. package/dist/lib/evolve/cli.js +224 -0
  359. package/dist/lib/evolve/cli.js.map +1 -0
  360. package/dist/lib/evolve/discovery.d.ts +2 -0
  361. package/dist/lib/evolve/discovery.d.ts.map +1 -0
  362. package/dist/lib/evolve/discovery.js +391 -0
  363. package/dist/lib/evolve/discovery.js.map +1 -0
  364. package/dist/lib/evolve/index.d.ts +2 -0
  365. package/dist/lib/evolve/index.d.ts.map +1 -0
  366. package/dist/lib/evolve/index.js +88 -0
  367. package/dist/lib/evolve/index.js.map +1 -0
  368. package/dist/lib/evolve/orchestrator.d.ts +2 -0
  369. package/dist/lib/evolve/orchestrator.d.ts.map +1 -0
  370. package/dist/lib/evolve/orchestrator.js +851 -0
  371. package/dist/lib/evolve/orchestrator.js.map +1 -0
  372. package/dist/lib/evolve/scoring.d.ts +2 -0
  373. package/dist/lib/evolve/scoring.d.ts.map +1 -0
  374. package/dist/lib/evolve/scoring.js +118 -0
  375. package/dist/lib/evolve/scoring.js.map +1 -0
  376. package/dist/lib/evolve/state.d.ts +2 -0
  377. package/dist/lib/evolve/state.d.ts.map +1 -0
  378. package/dist/lib/evolve/state.js +264 -0
  379. package/dist/lib/evolve/state.js.map +1 -0
  380. package/dist/lib/evolve/types.d.ts +249 -0
  381. package/dist/lib/evolve/types.d.ts.map +1 -0
  382. package/dist/lib/evolve/types.js +3 -0
  383. package/dist/lib/evolve/types.js.map +1 -0
  384. package/dist/lib/frontmatter.d.ts +2 -0
  385. package/dist/lib/frontmatter.d.ts.map +1 -0
  386. package/dist/lib/frontmatter.js +513 -0
  387. package/dist/lib/frontmatter.js.map +1 -0
  388. package/dist/lib/gates.d.ts +2 -0
  389. package/dist/lib/gates.d.ts.map +1 -0
  390. package/dist/lib/gates.js +578 -0
  391. package/dist/lib/gates.js.map +1 -0
  392. package/dist/lib/genome.d.ts +10 -0
  393. package/dist/lib/genome.d.ts.map +1 -0
  394. package/dist/lib/genome.js +368 -0
  395. package/dist/lib/genome.js.map +1 -0
  396. package/dist/lib/got.d.ts +2 -0
  397. package/dist/lib/got.d.ts.map +1 -0
  398. package/dist/lib/got.js +280 -0
  399. package/dist/lib/got.js.map +1 -0
  400. package/dist/lib/invariants.d.ts +2 -0
  401. package/dist/lib/invariants.d.ts.map +1 -0
  402. package/dist/lib/invariants.js +298 -0
  403. package/dist/lib/invariants.js.map +1 -0
  404. package/dist/lib/knowledge.d.ts +2 -0
  405. package/dist/lib/knowledge.d.ts.map +1 -0
  406. package/dist/lib/knowledge.js +658 -0
  407. package/dist/lib/knowledge.js.map +1 -0
  408. package/dist/lib/long-term-roadmap.d.ts +2 -0
  409. package/dist/lib/long-term-roadmap.d.ts.map +1 -0
  410. package/dist/lib/long-term-roadmap.js +602 -0
  411. package/dist/lib/long-term-roadmap.js.map +1 -0
  412. package/dist/lib/markdown-split.d.ts +2 -0
  413. package/dist/lib/markdown-split.d.ts.map +1 -0
  414. package/dist/lib/markdown-split.js +199 -0
  415. package/dist/lib/markdown-split.js.map +1 -0
  416. package/dist/lib/mcp-server.d.ts +2 -0
  417. package/dist/lib/mcp-server.d.ts.map +1 -0
  418. package/dist/lib/mcp-server.js +2424 -0
  419. package/dist/lib/mcp-server.js.map +1 -0
  420. package/dist/lib/metrics.d.ts +16 -0
  421. package/dist/lib/metrics.d.ts.map +1 -0
  422. package/dist/lib/metrics.js +48 -0
  423. package/dist/lib/metrics.js.map +1 -0
  424. package/dist/lib/overstory.d.ts +2 -0
  425. package/dist/lib/overstory.d.ts.map +1 -0
  426. package/dist/lib/overstory.js +211 -0
  427. package/dist/lib/overstory.js.map +1 -0
  428. package/dist/lib/parallel.d.ts +2 -0
  429. package/dist/lib/parallel.d.ts.map +1 -0
  430. package/dist/lib/parallel.js +349 -0
  431. package/dist/lib/parallel.js.map +1 -0
  432. package/dist/lib/paths.d.ts +2 -0
  433. package/dist/lib/paths.d.ts.map +1 -0
  434. package/dist/lib/paths.js +254 -0
  435. package/dist/lib/paths.js.map +1 -0
  436. package/dist/lib/phase-complete-llm.d.ts +22 -0
  437. package/dist/lib/phase-complete-llm.d.ts.map +1 -0
  438. package/dist/lib/phase-complete-llm.js +331 -0
  439. package/dist/lib/phase-complete-llm.js.map +1 -0
  440. package/dist/lib/phase-complete.d.ts +46 -0
  441. package/dist/lib/phase-complete.d.ts.map +1 -0
  442. package/dist/lib/phase-complete.js +278 -0
  443. package/dist/lib/phase-complete.js.map +1 -0
  444. package/dist/lib/phase-io.d.ts +2 -0
  445. package/dist/lib/phase-io.d.ts.map +1 -0
  446. package/dist/lib/phase-io.js +126 -0
  447. package/dist/lib/phase-io.js.map +1 -0
  448. package/dist/lib/phase.d.ts +2 -0
  449. package/dist/lib/phase.d.ts.map +1 -0
  450. package/dist/lib/phase.js +1344 -0
  451. package/dist/lib/phase.js.map +1 -0
  452. package/dist/lib/plan-tournament.d.ts +63 -0
  453. package/dist/lib/plan-tournament.d.ts.map +1 -0
  454. package/dist/lib/plan-tournament.js +353 -0
  455. package/dist/lib/plan-tournament.js.map +1 -0
  456. package/dist/lib/refinement.d.ts +74 -0
  457. package/dist/lib/refinement.d.ts.map +1 -0
  458. package/dist/lib/refinement.js +283 -0
  459. package/dist/lib/refinement.js.map +1 -0
  460. package/dist/lib/requirements.d.ts +2 -0
  461. package/dist/lib/requirements.d.ts.map +1 -0
  462. package/dist/lib/requirements.js +355 -0
  463. package/dist/lib/requirements.js.map +1 -0
  464. package/dist/lib/research-bundle.d.ts +2 -0
  465. package/dist/lib/research-bundle.d.ts.map +1 -0
  466. package/dist/lib/research-bundle.js +246 -0
  467. package/dist/lib/research-bundle.js.map +1 -0
  468. package/dist/lib/roadmap.d.ts +2 -0
  469. package/dist/lib/roadmap.d.ts.map +1 -0
  470. package/dist/lib/roadmap.js +541 -0
  471. package/dist/lib/roadmap.js.map +1 -0
  472. package/dist/lib/sample.d.ts +16 -0
  473. package/dist/lib/sample.d.ts.map +1 -0
  474. package/dist/lib/sample.js +20 -0
  475. package/dist/lib/sample.js.map +1 -0
  476. package/dist/lib/scaffold.d.ts +2 -0
  477. package/dist/lib/scaffold.d.ts.map +1 -0
  478. package/dist/lib/scaffold.js +355 -0
  479. package/dist/lib/scaffold.js.map +1 -0
  480. package/dist/lib/scan/_utils.d.ts +11 -0
  481. package/dist/lib/scan/_utils.d.ts.map +1 -0
  482. package/dist/lib/scan/_utils.js +36 -0
  483. package/dist/lib/scan/_utils.js.map +1 -0
  484. package/dist/lib/scan/base64.d.ts +15 -0
  485. package/dist/lib/scan/base64.d.ts.map +1 -0
  486. package/dist/lib/scan/base64.js +66 -0
  487. package/dist/lib/scan/base64.js.map +1 -0
  488. package/dist/lib/scan/ignorefile.d.ts +30 -0
  489. package/dist/lib/scan/ignorefile.d.ts.map +1 -0
  490. package/dist/lib/scan/ignorefile.js +101 -0
  491. package/dist/lib/scan/ignorefile.js.map +1 -0
  492. package/dist/lib/scan/injection.d.ts +14 -0
  493. package/dist/lib/scan/injection.d.ts.map +1 -0
  494. package/dist/lib/scan/injection.js +39 -0
  495. package/dist/lib/scan/injection.js.map +1 -0
  496. package/dist/lib/scan/patterns.d.ts +17 -0
  497. package/dist/lib/scan/patterns.d.ts.map +1 -0
  498. package/dist/lib/scan/patterns.js +123 -0
  499. package/dist/lib/scan/patterns.js.map +1 -0
  500. package/dist/lib/scan/strip-markdown.d.ts +7 -0
  501. package/dist/lib/scan/strip-markdown.d.ts.map +1 -0
  502. package/dist/lib/scan/strip-markdown.js +38 -0
  503. package/dist/lib/scan/strip-markdown.js.map +1 -0
  504. package/dist/lib/scan/types.d.ts +23 -0
  505. package/dist/lib/scan/types.d.ts.map +1 -0
  506. package/dist/lib/scan/types.js +3 -0
  507. package/dist/lib/scan/types.js.map +1 -0
  508. package/dist/lib/scheduler-wait.d.ts +2 -0
  509. package/dist/lib/scheduler-wait.d.ts.map +1 -0
  510. package/dist/lib/scheduler-wait.js +59 -0
  511. package/dist/lib/scheduler-wait.js.map +1 -0
  512. package/dist/lib/scheduler.d.ts +254 -0
  513. package/dist/lib/scheduler.d.ts.map +1 -0
  514. package/dist/lib/scheduler.js +1147 -0
  515. package/dist/lib/scheduler.js.map +1 -0
  516. package/dist/lib/state.d.ts +2 -0
  517. package/dist/lib/state.d.ts.map +1 -0
  518. package/dist/lib/state.js +744 -0
  519. package/dist/lib/state.js.map +1 -0
  520. package/dist/lib/think.d.ts +18 -0
  521. package/dist/lib/think.d.ts.map +1 -0
  522. package/dist/lib/think.js +317 -0
  523. package/dist/lib/think.js.map +1 -0
  524. package/dist/lib/tracker.d.ts +2 -0
  525. package/dist/lib/tracker.d.ts.map +1 -0
  526. package/dist/lib/tracker.js +1121 -0
  527. package/dist/lib/tracker.js.map +1 -0
  528. package/dist/lib/types.d.ts +1514 -0
  529. package/dist/lib/types.d.ts.map +1 -0
  530. package/dist/lib/types.js +4 -0
  531. package/dist/lib/types.js.map +1 -0
  532. package/dist/lib/utils.d.ts +2 -0
  533. package/dist/lib/utils.d.ts.map +1 -0
  534. package/dist/lib/utils.js +1363 -0
  535. package/dist/lib/utils.js.map +1 -0
  536. package/dist/lib/verify.d.ts +2 -0
  537. package/dist/lib/verify.d.ts.map +1 -0
  538. package/dist/lib/verify.js +1153 -0
  539. package/dist/lib/verify.js.map +1 -0
  540. package/dist/lib/wireup/autofix.d.ts +2 -0
  541. package/dist/lib/wireup/autofix.d.ts.map +1 -0
  542. package/dist/lib/wireup/autofix.js +188 -0
  543. package/dist/lib/wireup/autofix.js.map +1 -0
  544. package/dist/lib/wireup/cli.d.ts +2 -0
  545. package/dist/lib/wireup/cli.d.ts.map +1 -0
  546. package/dist/lib/wireup/cli.js +194 -0
  547. package/dist/lib/wireup/cli.js.map +1 -0
  548. package/dist/lib/wireup/detection.d.ts +47 -0
  549. package/dist/lib/wireup/detection.d.ts.map +1 -0
  550. package/dist/lib/wireup/detection.js +410 -0
  551. package/dist/lib/wireup/detection.js.map +1 -0
  552. package/dist/lib/wireup/discovery.d.ts +2 -0
  553. package/dist/lib/wireup/discovery.d.ts.map +1 -0
  554. package/dist/lib/wireup/discovery.js +934 -0
  555. package/dist/lib/wireup/discovery.js.map +1 -0
  556. package/dist/lib/wireup/execution.d.ts +2 -0
  557. package/dist/lib/wireup/execution.d.ts.map +1 -0
  558. package/dist/lib/wireup/execution.js +573 -0
  559. package/dist/lib/wireup/execution.js.map +1 -0
  560. package/dist/lib/wireup/index.d.ts +2 -0
  561. package/dist/lib/wireup/index.d.ts.map +1 -0
  562. package/dist/lib/wireup/index.js +85 -0
  563. package/dist/lib/wireup/index.js.map +1 -0
  564. package/dist/lib/wireup/orchestrator.d.ts +2 -0
  565. package/dist/lib/wireup/orchestrator.d.ts.map +1 -0
  566. package/dist/lib/wireup/orchestrator.js +366 -0
  567. package/dist/lib/wireup/orchestrator.js.map +1 -0
  568. package/dist/lib/wireup/report.d.ts +47 -0
  569. package/dist/lib/wireup/report.d.ts.map +1 -0
  570. package/dist/lib/wireup/report.js +201 -0
  571. package/dist/lib/wireup/report.js.map +1 -0
  572. package/dist/lib/wireup/scenarios.d.ts +2 -0
  573. package/dist/lib/wireup/scenarios.d.ts.map +1 -0
  574. package/dist/lib/wireup/scenarios.js +516 -0
  575. package/dist/lib/wireup/scenarios.js.map +1 -0
  576. package/dist/lib/wireup/state.d.ts +2 -0
  577. package/dist/lib/wireup/state.d.ts.map +1 -0
  578. package/dist/lib/wireup/state.js +102 -0
  579. package/dist/lib/wireup/state.js.map +1 -0
  580. package/dist/lib/wireup/types.d.ts +376 -0
  581. package/dist/lib/wireup/types.d.ts.map +1 -0
  582. package/dist/lib/wireup/types.js +3 -0
  583. package/dist/lib/wireup/types.js.map +1 -0
  584. package/dist/lib/worktree.d.ts +2 -0
  585. package/dist/lib/worktree.d.ts.map +1 -0
  586. package/dist/lib/worktree.js +999 -0
  587. package/dist/lib/worktree.js.map +1 -0
  588. package/lib/autopilot-milestone.ts +136 -0
  589. package/lib/autopilot-pipeline.ts +1179 -0
  590. package/lib/autopilot-waves.ts +361 -0
  591. package/lib/autopilot.ts +1874 -0
  592. package/lib/autoplan.ts +280 -0
  593. package/lib/autoresearch.js +4 -0
  594. package/lib/autoresearch.ts +886 -0
  595. package/lib/backend.ts +1252 -0
  596. package/lib/benchmark.ts +341 -0
  597. package/lib/citations.ts +760 -0
  598. package/lib/cleanup.ts +1588 -0
  599. package/lib/cli/adapters.ts +41 -0
  600. package/lib/cli/agent.ts +83 -0
  601. package/lib/cli/index.ts +273 -0
  602. package/lib/cli/output.ts +33 -0
  603. package/lib/cli/scan-dispatch.ts +130 -0
  604. package/lib/cli/tools.ts +198 -0
  605. package/lib/commands/_dashboard-parsers.ts +275 -0
  606. package/lib/commands/analysis.ts +1851 -0
  607. package/lib/commands/assumptions.ts +232 -0
  608. package/lib/commands/blame.ts +174 -0
  609. package/lib/commands/budget.ts +148 -0
  610. package/lib/commands/check-plans.ts +233 -0
  611. package/lib/commands/config.ts +287 -0
  612. package/lib/commands/dashboard.ts +680 -0
  613. package/lib/commands/estimate.ts +204 -0
  614. package/lib/commands/eval-diff.ts +252 -0
  615. package/lib/commands/freshness.ts +213 -0
  616. package/lib/commands/health.ts +607 -0
  617. package/lib/commands/index.ts +266 -0
  618. package/lib/commands/install.ts +307 -0
  619. package/lib/commands/knowhow-aggregator.ts +345 -0
  620. package/lib/commands/knowledge-search.ts +153 -0
  621. package/lib/commands/long-term-roadmap.ts +390 -0
  622. package/lib/commands/patterns.ts +465 -0
  623. package/lib/commands/phase-info.ts +698 -0
  624. package/lib/commands/plan-lint.ts +546 -0
  625. package/lib/commands/plan-phase.ts +375 -0
  626. package/lib/commands/progress.ts +319 -0
  627. package/lib/commands/quality.ts +138 -0
  628. package/lib/commands/rollback.ts +195 -0
  629. package/lib/commands/scan.ts +72 -0
  630. package/lib/commands/search.ts +300 -0
  631. package/lib/commands/select-candidate.ts +687 -0
  632. package/lib/commands/singularity.ts +222 -0
  633. package/lib/commands/slug-timestamp.ts +74 -0
  634. package/lib/commands/tail.ts +129 -0
  635. package/lib/commands/todo.ts +273 -0
  636. package/lib/commands/watch.ts +80 -0
  637. package/lib/complexity.ts +117 -0
  638. package/lib/context/agents.ts +505 -0
  639. package/lib/context/base.ts +123 -0
  640. package/lib/context/execute.ts +977 -0
  641. package/lib/context/index.ts +110 -0
  642. package/lib/context/progress.ts +278 -0
  643. package/lib/context/project.ts +531 -0
  644. package/lib/context/research.ts +646 -0
  645. package/lib/dead-ends.ts +506 -0
  646. package/lib/deps.ts +773 -0
  647. package/lib/discussion.ts +1275 -0
  648. package/lib/drift.ts +519 -0
  649. package/lib/evolve/_dimensions-features.ts +525 -0
  650. package/lib/evolve/_dimensions.ts +511 -0
  651. package/lib/evolve/_product-ideation.ts +405 -0
  652. package/lib/evolve/_prompts.ts +178 -0
  653. package/lib/evolve/cli.ts +330 -0
  654. package/lib/evolve/discovery.ts +571 -0
  655. package/lib/evolve/index.ts +105 -0
  656. package/lib/evolve/orchestrator.ts +1139 -0
  657. package/lib/evolve/scoring.ts +167 -0
  658. package/lib/evolve/state.ts +330 -0
  659. package/lib/evolve/types.ts +290 -0
  660. package/lib/frontmatter.ts +615 -0
  661. package/lib/gates.ts +695 -0
  662. package/lib/genome.ts +402 -0
  663. package/lib/got.js +4 -0
  664. package/lib/got.ts +361 -0
  665. package/lib/invariants.ts +378 -0
  666. package/lib/knowledge.ts +768 -0
  667. package/lib/long-term-roadmap.ts +806 -0
  668. package/lib/markdown-split.ts +273 -0
  669. package/lib/mcp-server.ts +3292 -0
  670. package/lib/metrics.ts +49 -0
  671. package/lib/overstory.ts +270 -0
  672. package/lib/parallel.ts +570 -0
  673. package/lib/paths.ts +293 -0
  674. package/lib/phase-complete-llm.ts +376 -0
  675. package/lib/phase-complete.ts +366 -0
  676. package/lib/phase-io.ts +101 -0
  677. package/lib/phase.ts +1981 -0
  678. package/lib/plan-tournament.ts +426 -0
  679. package/lib/refinement.ts +349 -0
  680. package/lib/requirements.ts +469 -0
  681. package/lib/research-bundle.ts +300 -0
  682. package/lib/roadmap.ts +775 -0
  683. package/lib/scaffold.ts +480 -0
  684. package/lib/scan/_utils.ts +37 -0
  685. package/lib/scan/base64.ts +90 -0
  686. package/lib/scan/ignorefile.ts +109 -0
  687. package/lib/scan/injection.ts +67 -0
  688. package/lib/scan/patterns.ts +139 -0
  689. package/lib/scan/strip-markdown.ts +39 -0
  690. package/lib/scan/types.ts +28 -0
  691. package/lib/scheduler-wait.ts +58 -0
  692. package/lib/scheduler.ts +1370 -0
  693. package/lib/state.ts +1000 -0
  694. package/lib/think.ts +365 -0
  695. package/lib/tracker.ts +1591 -0
  696. package/lib/types.ts +1663 -0
  697. package/lib/utils.ts +1479 -0
  698. package/lib/verify.ts +1434 -0
  699. package/lib/wireup/autofix.ts +241 -0
  700. package/lib/wireup/cli.ts +278 -0
  701. package/lib/wireup/detection.ts +542 -0
  702. package/lib/wireup/discovery.ts +1063 -0
  703. package/lib/wireup/execution.ts +686 -0
  704. package/lib/wireup/index.ts +117 -0
  705. package/lib/wireup/orchestrator.ts +519 -0
  706. package/lib/wireup/report.ts +286 -0
  707. package/lib/wireup/scenarios.ts +616 -0
  708. package/lib/wireup/state.ts +139 -0
  709. package/lib/wireup/types.ts +436 -0
  710. package/lib/worktree.ts +1309 -0
  711. package/package.json +67 -0
@@ -0,0 +1,328 @@
1
+ ---
2
+ description: Create or edit project PRINCIPLES.md — the constitution that shapes all agent behavior
3
+ ---
4
+
5
+ <purpose>
6
+ Create or update `.planning/PRINCIPLES.md` — the project constitution that governs how all GRD agents behave. Principles define coding philosophy, testing requirements, architecture constraints, documentation standards, and communication style. Once established, every agent (planner, executor, reviewer, verifier) reads PRINCIPLES.md to align its work with the team's standards.
7
+
8
+ This is the most leveraged configuration in GRD: a few clear principles prevent hundreds of review comments and rework cycles.
9
+ </purpose>
10
+
11
+ <required_reading>
12
+ Read all files referenced by the invoking prompt's execution_context before starting.
13
+ </required_reading>
14
+
15
+ <process>
16
+
17
+ ## Step 1: Check for existing PRINCIPLES.md
18
+
19
+ ```bash
20
+ INIT=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js state load)
21
+ ```
22
+
23
+ Parse JSON for: `planning_exists`, `commit_docs`.
24
+
25
+ Check if `.planning/PRINCIPLES.md` already exists:
26
+
27
+ ```bash
28
+ ls .planning/PRINCIPLES.md 2>/dev/null
29
+ ```
30
+
31
+ **If file exists:** Go to Step 2 (Edit flow).
32
+ **If file does not exist:** Go to Step 3 (Create flow).
33
+
34
+ ---
35
+
36
+ ## Step 2: Edit existing PRINCIPLES.md
37
+
38
+ Read and display the current file:
39
+
40
+ ```bash
41
+ cat .planning/PRINCIPLES.md
42
+ ```
43
+
44
+ Present the current principles to the user:
45
+
46
+ ```
47
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
48
+ GRD > CURRENT PRINCIPLES
49
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
50
+
51
+ [rendered contents of PRINCIPLES.md]
52
+ ```
53
+
54
+ Use AskUserQuestion:
55
+ - header: "Principles"
56
+ - question: "What would you like to change?"
57
+ - options:
58
+ - "Edit a section" -- Modify one of the five sections
59
+ - "Add a principle" -- Add a new rule to a section
60
+ - "Remove a principle" -- Delete a rule from a section
61
+ - "Rewrite from scratch" -- Start over with the guided flow
62
+ - "Looks good" -- No changes needed
63
+
64
+ **If "Edit a section":**
65
+
66
+ Use AskUserQuestion:
67
+ - header: "Section"
68
+ - question: "Which section?"
69
+ - options:
70
+ - "Coding Philosophy"
71
+ - "Testing Requirements"
72
+ - "Architecture Constraints"
73
+ - "Documentation Standards"
74
+ - "Communication Style"
75
+
76
+ Ask inline (freeform): "What should the updated rules be for [section]?"
77
+
78
+ Apply the changes to PRINCIPLES.md. Go to Step 5 (Commit).
79
+
80
+ **If "Add a principle":**
81
+
82
+ Use AskUserQuestion to select the section, then ask inline for the new principle. Append it. Go to Step 5 (Commit).
83
+
84
+ **If "Remove a principle":**
85
+
86
+ Use AskUserQuestion to select the section, then list the principles in that section as options. Remove the selected one. Go to Step 5 (Commit).
87
+
88
+ **If "Rewrite from scratch":**
89
+
90
+ Go to Step 3 (Create flow).
91
+
92
+ **If "Looks good":**
93
+
94
+ Display: "No changes made. Principles remain as-is."
95
+
96
+ Exit.
97
+
98
+ ---
99
+
100
+ ## Step 3: Create new PRINCIPLES.md
101
+
102
+ Display stage banner:
103
+
104
+ ```
105
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
106
+ GRD > DEFINING PRINCIPLES
107
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
108
+
109
+ Your project principles shape how every agent works.
110
+ Let's define them across 5 categories.
111
+ ```
112
+
113
+ **Detect existing context:**
114
+
115
+ Check for codebase signals that can inform defaults:
116
+ - `package.json` or similar manifest -> language, framework
117
+ - `.eslintrc*`, `eslint.config.*` -> linting conventions
118
+ - `tsconfig.json` -> TypeScript preferences
119
+ - `jest.config.*`, `vitest.config.*`, `pytest.ini` -> test framework
120
+ - `.prettierrc*` -> formatting conventions
121
+ - `README.md` -> project description
122
+
123
+ Use detected context to offer smart defaults in each category.
124
+
125
+ ---
126
+
127
+ ### Category 1: Coding Philosophy
128
+
129
+ Use AskUserQuestion:
130
+ - header: "Coding Philosophy"
131
+ - question: "What principles guide how code should be written?"
132
+ - multiSelect: true
133
+ - options (adapt based on detected language/framework):
134
+ - "Prefer simplicity over cleverness"
135
+ - "Functions should do one thing well"
136
+ - "Explicit over implicit"
137
+ - "Minimize dependencies"
138
+ - "Fail fast with clear errors"
139
+ - "No premature optimization"
140
+ - "DRY but not at the expense of clarity"
141
+ - "Immutable by default"
142
+ - "Composition over inheritance"
143
+ - "Custom" -- I want to write my own
144
+
145
+ If "Custom" is selected, ask inline: "What coding principles should agents follow?"
146
+
147
+ Store selections as `$CODING_PHILOSOPHY`.
148
+
149
+ ---
150
+
151
+ ### Category 2: Testing Requirements
152
+
153
+ Use AskUserQuestion:
154
+ - header: "Testing Requirements"
155
+ - question: "What are your testing standards?"
156
+ - multiSelect: true
157
+ - options (adapt based on detected test framework):
158
+ - "Every new function needs a test"
159
+ - "Tests must be independent and isolated"
160
+ - "No mocking of implementation details"
161
+ - "Integration tests for critical paths"
162
+ - "Maintain existing coverage thresholds"
163
+ - "Test names describe behavior, not implementation"
164
+ - "No test should take more than 5 seconds"
165
+ - "Golden/snapshot tests for CLI output"
166
+ - "Custom" -- I want to write my own
167
+
168
+ If "Custom" is selected, ask inline: "What testing standards should agents follow?"
169
+
170
+ Store selections as `$TESTING_REQUIREMENTS`.
171
+
172
+ ---
173
+
174
+ ### Category 3: Architecture Constraints
175
+
176
+ Use AskUserQuestion:
177
+ - header: "Architecture Constraints"
178
+ - question: "What architecture rules must agents respect?"
179
+ - multiSelect: true
180
+ - options (adapt based on detected project structure):
181
+ - "Keep modules loosely coupled"
182
+ - "No circular dependencies"
183
+ - "Pure functions in lib/, side effects only at boundaries"
184
+ - "One responsibility per file"
185
+ - "Public API surface must be intentional"
186
+ - "No global mutable state"
187
+ - "Database access only through repository layer"
188
+ - "Error handling at boundaries, not everywhere"
189
+ - "Custom" -- I want to write my own
190
+
191
+ If "Custom" is selected, ask inline: "What architecture constraints should agents follow?"
192
+
193
+ Store selections as `$ARCHITECTURE_CONSTRAINTS`.
194
+
195
+ ---
196
+
197
+ ### Category 4: Documentation Standards
198
+
199
+ Use AskUserQuestion:
200
+ - header: "Documentation Standards"
201
+ - question: "What documentation rules apply?"
202
+ - multiSelect: true
203
+ - options:
204
+ - "Comments explain WHY, not WHAT"
205
+ - "Every public function needs a JSDoc/docstring"
206
+ - "README stays current with changes"
207
+ - "CHANGELOG updated for user-facing changes"
208
+ - "No orphaned documentation"
209
+ - "Examples in docs must be runnable"
210
+ - "API changes require migration notes"
211
+ - "Custom" -- I want to write my own
212
+
213
+ If "Custom" is selected, ask inline: "What documentation standards should agents follow?"
214
+
215
+ Store selections as `$DOCUMENTATION_STANDARDS`.
216
+
217
+ ---
218
+
219
+ ### Category 5: Communication Style
220
+
221
+ Use AskUserQuestion:
222
+ - header: "Communication Style"
223
+ - question: "How should agents communicate in plans, summaries, and commit messages?"
224
+ - multiSelect: true
225
+ - options:
226
+ - "Be concise -- no filler words"
227
+ - "Use active voice"
228
+ - "Commit messages: imperative mood, under 72 chars"
229
+ - "Plans: bullet points over paragraphs"
230
+ - "Summaries: lead with outcomes, not process"
231
+ - "No jargon without definition"
232
+ - "Technical precision over approachability"
233
+ - "Custom" -- I want to write my own
234
+
235
+ If "Custom" is selected, ask inline: "What communication style should agents use?"
236
+
237
+ Store selections as `$COMMUNICATION_STYLE`.
238
+
239
+ ---
240
+
241
+ ## Step 4: Write PRINCIPLES.md
242
+
243
+ Create `.planning/PRINCIPLES.md`:
244
+
245
+ ```markdown
246
+ # Project Principles
247
+
248
+ > These principles govern how all GRD agents behave in this project.
249
+ > Every planner, executor, reviewer, and verifier reads this file.
250
+
251
+ ## Coding Philosophy
252
+
253
+ ${CODING_PHILOSOPHY — one bullet per principle}
254
+
255
+ ## Testing Requirements
256
+
257
+ ${TESTING_REQUIREMENTS — one bullet per principle}
258
+
259
+ ## Architecture Constraints
260
+
261
+ ${ARCHITECTURE_CONSTRAINTS — one bullet per principle}
262
+
263
+ ## Documentation Standards
264
+
265
+ ${DOCUMENTATION_STANDARDS — one bullet per principle}
266
+
267
+ ## Communication Style
268
+
269
+ ${COMMUNICATION_STYLE — one bullet per principle}
270
+
271
+ ---
272
+ *Established: ${date}*
273
+ *Last updated: ${date}*
274
+ ```
275
+
276
+ Ensure `.planning/` directory exists:
277
+
278
+ ```bash
279
+ mkdir -p .planning
280
+ ```
281
+
282
+ ---
283
+
284
+ ## Step 5: Commit
285
+
286
+ ```bash
287
+ node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js commit "docs: ${VERB} project principles" --files .planning/PRINCIPLES.md
288
+ ```
289
+
290
+ Where `${VERB}` is:
291
+ - `establish` for new files
292
+ - `update` for edits
293
+
294
+ ---
295
+
296
+ ## Step 6: Confirmation
297
+
298
+ Display:
299
+
300
+ ```
301
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
302
+ GRD > PRINCIPLES ${ESTABLISHED|UPDATED}
303
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
304
+
305
+ Coding Philosophy: ${count} rules
306
+ Testing Requirements: ${count} rules
307
+ Architecture: ${count} rules
308
+ Documentation: ${count} rules
309
+ Communication: ${count} rules
310
+
311
+ File: .planning/PRINCIPLES.md
312
+
313
+ These principles now shape all agent behavior.
314
+ Edit anytime: /grd:principles
315
+ ```
316
+
317
+ </process>
318
+
319
+ <success_criteria>
320
+ - [ ] Existing PRINCIPLES.md detected and presented if it exists
321
+ - [ ] All 5 categories covered (Coding Philosophy, Testing Requirements, Architecture Constraints, Documentation Standards, Communication Style)
322
+ - [ ] Codebase signals detected and used for smart defaults
323
+ - [ ] User selections captured for all categories
324
+ - [ ] PRINCIPLES.md written with all sections populated
325
+ - [ ] File committed to git
326
+ - [ ] Confirmation displayed with rule counts
327
+ </success_criteria>
328
+ </output>
@@ -0,0 +1,319 @@
1
+ ---
2
+ description: Product-level planning — high-level roadmap, goal setting, and work distribution across research phases
3
+ argument-hint: [product goal description or path to goals document]
4
+ ---
5
+
6
+ <purpose>
7
+ Product-level planning that bridges research findings and engineering execution. Reads
8
+ BASELINE.md and product goals, assesses gaps between current state and desired state,
9
+ and creates a high-level roadmap distributed across research-informed phases. This is
10
+ the strategic layer above individual phase planning.
11
+ </purpose>
12
+
13
+ <context>
14
+ CLAUDE.md rules: @CLAUDE.md
15
+
16
+ **Project structure** (paths resolved via init):
17
+ - `.planning/PROJECT.md` — project definition and goals
18
+ - `.planning/ROADMAP.md` — phase-level roadmap (output of this workflow)
19
+ - `.planning/BASELINE.md` — current system baseline
20
+ - `.planning/KNOWHOW.md` — production engineering knowledge
21
+ - `${research_dir}/LANDSCAPE.md` — research landscape
22
+ - `${research_dir}/COMPARISON-*.md` — method comparisons
23
+ - `${research_dir}/deep-dives/` — paper analyses
24
+ - `.planning/config.json` — GRD configuration
25
+
26
+ **Agent available:**
27
+ - `grd-product-owner` — specialized product strategy and roadmap planning agent
28
+ </context>
29
+
30
+ <process>
31
+
32
+ ## Step 0: INITIALIZE — Gather All Context
33
+
34
+ 0. **Run initialization**:
35
+ ```bash
36
+ INIT=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js init product-plan)
37
+ ```
38
+ Parse JSON for: `research_dir`, `phases_dir`, `landscape_exists`, `papers_exists`, `knowhow_exists`, `baseline_exists`, `autonomous_mode`, `research_gates`.
39
+
40
+ 1. **Parse arguments**: Extract product goals from `$ARGUMENTS`
41
+ - If file path: read goals document
42
+ - If text description: use as product goal input
43
+ - If empty: check PROJECT.md for existing goals, ASK user if not found
44
+
45
+ 2. **Load all available context** (read in parallel):
46
+ - `.planning/PROJECT.md` — existing project definition
47
+ - `.planning/BASELINE.md` — current state metrics
48
+ - `.planning/KNOWHOW.md` — production knowledge learned
49
+ - `${research_dir}/LANDSCAPE.md` — research landscape
50
+ - `${research_dir}/COMPARISON-*.md` — method comparison results
51
+ - Available deep-dives — paper verdicts and feasibility results
52
+ - `.planning/ROADMAP.md` — existing roadmap (if updating)
53
+
54
+ 3. **Assess context completeness**:
55
+ | Input | Status | Impact |
56
+ |-------|--------|--------|
57
+ | BASELINE.md | {present/missing} | {critical for gap analysis} |
58
+ | LANDSCAPE.md | {present/missing} | {critical for method selection} |
59
+ | KNOWHOW.md | {present/missing} | {helpful for effort estimation} |
60
+ | Comparisons | {present/missing} | {helpful for approach selection} |
61
+ | Deep-dives | {N available} | {helpful for risk assessment} |
62
+
63
+ 4. **Read config**: Check `research_gates.product_plan_approval`
64
+
65
+ **STEP_0_CHECKPOINT:**
66
+ - [ ] Product goals extracted (from args, PROJECT.md, or user)
67
+ - [ ] Available context loaded and inventoried
68
+ - [ ] Context gaps identified
69
+ - [ ] Config loaded
70
+
71
+ ---
72
+
73
+ ## Step 1: DISPLAY BANNER
74
+
75
+ ```
76
+ ╔══════════════════════════════════════════════════════════════╗
77
+ ║ GRD >>> PRODUCT PLAN ║
78
+ ║ ║
79
+ ║ Goal: {product_goal_summary} ║
80
+ ║ Baseline: {available | not assessed} ║
81
+ ║ Research: {N methods surveyed, M deep-dived} ║
82
+ ║ Knowhow: {N production insights} ║
83
+ ║ Existing roadmap: {yes — updating | no — creating} ║
84
+ ╚══════════════════════════════════════════════════════════════╝
85
+ ```
86
+
87
+ ---
88
+
89
+ ## Step 2: SPAWN PRODUCT OWNER AGENT
90
+
91
+ **Launch `grd-product-owner` agent via Task tool:**
92
+
93
+ Use Task tool with `subagent_type="grd:grd-product-owner"`:
94
+
95
+ ```
96
+ Create product-level plan for: {product_goal}
97
+
98
+ PATHS:
99
+ research_dir: ${research_dir}
100
+ codebase_dir: ${codebase_dir}
101
+ phases_dir: ${phases_dir}
102
+
103
+ CURRENT STATE (BASELINE):
104
+ {BASELINE.md content, or "Not assessed — will need /grd:assess-baseline"}
105
+
106
+ RESEARCH CONTEXT:
107
+ Landscape: {LANDSCAPE.md summary — methods, benchmarks, recommendations}
108
+ Comparisons: {COMPARISON files summary — winners, trade-offs}
109
+ Deep-dives: {Paper verdicts and key findings}
110
+ Feasibility: {Feasibility verdicts from KNOWHOW.md}
111
+
112
+ PRODUCTION KNOWLEDGE:
113
+ {KNOWHOW.md content, or "No prior production knowledge"}
114
+
115
+ EXISTING ROADMAP:
116
+ {ROADMAP.md content if updating, or "Creating new roadmap"}
117
+
118
+ CREATE A PRODUCT PLAN WITH THESE SECTIONS:
119
+
120
+ ## 1. VISION AND GOALS
121
+ - Product vision statement (1-2 sentences)
122
+ - Primary goal with measurable success criteria
123
+ - Secondary goals
124
+ - Non-goals (explicit exclusions)
125
+ - Timeline expectations
126
+
127
+ ## 2. GAP ANALYSIS
128
+ Current state → Desired state for each dimension:
129
+ | Dimension | Current (from baseline) | Target | Gap | Approach |
130
+ |-----------|------------------------|--------|-----|----------|
131
+ | {quality metric} | {baseline_value} | {target} | {delta} | {method} |
132
+ | {performance metric} | {baseline_value} | {target} | {delta} | {method} |
133
+ | {capability} | {present/absent} | {required} | {gap} | {method} |
134
+
135
+ ## 3. APPROACH SELECTION
136
+ Based on research context:
137
+ - Primary approach: {method} — why selected (reference comparison/feasibility)
138
+ - Backup approach: {method} — when to pivot
139
+ - Discarded approaches: {methods} — why rejected
140
+
141
+ ## 4. QUALITY TARGETS
142
+ Define quantitative targets for the product:
143
+ | Metric | Baseline | Phase_1_Target | Phase_2_Target | Final_Target | SOTA |
144
+ |--------|----------|----------------|----------------|--------------|------|
145
+ | {metric} | {value} | {value} | {value} | {value} | {value} |
146
+
147
+ ## 5. PHASE BREAKDOWN
148
+ Distribute work across phases:
149
+
150
+ ### Phase 1: {name} — {goal}
151
+ - Scope: {what gets built}
152
+ - Research dependency: {method/paper if applicable}
153
+ - Success criteria: {measurable}
154
+ - Effort estimate: {weeks}
155
+ - Risk: {level and key risk}
156
+
157
+ ### Phase 2: {name} — {goal}
158
+ ...
159
+
160
+ ### Phase N: Integration and Verification
161
+ - Always include a final integration/verification phase
162
+
163
+ ## 6. RISK REGISTER
164
+ | Risk | Probability | Impact | Mitigation | Owner |
165
+ |------|-------------|--------|------------|-------|
166
+ | {risk} | {H/M/L} | {H/M/L} | {strategy} | {who} |
167
+
168
+ ## 7. DECISION LOG
169
+ Key architectural/approach decisions made during planning:
170
+ | Decision | Options Considered | Chosen | Rationale |
171
+ |----------|-------------------|--------|-----------|
172
+ | {decision} | {A, B, C} | {chosen} | {why} |
173
+
174
+ ## 8. ITERATION STRATEGY
175
+ - When to iterate vs accept results
176
+ - Metric thresholds that trigger iteration
177
+ - Maximum iterations per phase
178
+ - Escalation path if iterations exhaust
179
+
180
+ OUTPUT FORMAT:
181
+ Return complete product plan as structured markdown ready for ROADMAP.md
182
+ ```
183
+
184
+ **STEP_2_CHECKPOINT:**
185
+ - [ ] Product owner agent launched with full context
186
+ - [ ] Agent returned structured product plan
187
+ - [ ] All 8 sections present
188
+ - [ ] Phases have measurable success criteria
189
+
190
+ ---
191
+
192
+ ## Step 3: VALIDATE PRODUCT PLAN
193
+
194
+ 1. **Check completeness**:
195
+ - Vision and goals are specific and measurable
196
+ - Gap analysis references actual baseline values (not generic)
197
+ - Phase breakdown has at least 2 phases
198
+ - Final phase includes integration/verification
199
+ - Quality targets progress from baseline toward SOTA
200
+
201
+ 2. **Check consistency**:
202
+ - Approach selection matches research context (not contradicting comparisons)
203
+ - Phase dependencies are logical (no circular dependencies)
204
+ - Effort estimates sum to reasonable total
205
+ - Risk mitigations are specific (not generic platitudes)
206
+
207
+ 3. **Check research alignment**:
208
+ - Selected approach was recommended by comparison or has ADOPT/TRIAL verdict
209
+ - Feasibility concerns are addressed in risk register
210
+ - KNOWHOW.md insights are reflected in estimates
211
+
212
+ ---
213
+
214
+ ## Step 4: DISPLAY PRODUCT PLAN SUMMARY
215
+
216
+ ```
217
+ ╔══════════════════════════════════════════════════════════════╗
218
+ ║ PRODUCT PLAN ║
219
+ ╠══════════════════════════════════════════════════════════════╣
220
+ ║ ║
221
+ ║ Vision: {vision_short} ║
222
+ ║ Approach: {primary_method} ║
223
+ ║ Phases: {N} ║
224
+ ║ Total effort: {weeks} weeks ║
225
+ ║ ║
226
+ ║ Phase roadmap: ║
227
+ ║ 1. {phase_1}: {goal} ({effort}wk) ║
228
+ ║ 2. {phase_2}: {goal} ({effort}wk) ║
229
+ ║ ... ║
230
+ ║ N. Integration & Verification ({effort}wk) ║
231
+ ║ ║
232
+ ║ Key quality targets: ║
233
+ ║ {metric_1}: {baseline} -> {target} ║
234
+ ║ {metric_2}: {baseline} -> {target} ║
235
+ ║ ║
236
+ ║ Top risks: ║
237
+ ║ 1. {risk_1} ║
238
+ ║ 2. {risk_2} ║
239
+ ║ ║
240
+ ║ Context gaps (may affect plan quality): ║
241
+ ║ {missing_context_items} ║
242
+ ║ ║
243
+ ╚══════════════════════════════════════════════════════════════╝
244
+ ```
245
+
246
+ ---
247
+
248
+ ## Step 5: WRITE ROADMAP AND PROJECT FILES
249
+
250
+ 1. **Write or update ROADMAP.md**:
251
+ - Path: `.planning/ROADMAP.md`
252
+ - Include phase table: `| # | Name | Goal | Effort | Status | Dependencies |`
253
+ - Include quality targets section
254
+ - Include approach and decision log
255
+ - Include iteration strategy
256
+
257
+ 2. **Update PROJECT.md** (if exists):
258
+ - Add or update vision, goals, and non-goals
259
+ - Reference ROADMAP.md
260
+
261
+ 3. **Create phase directories**:
262
+ ```bash
263
+ for each phase:
264
+ mkdir -p ${phases_dir}/{N}-{phase-name}/
265
+ ```
266
+
267
+ ---
268
+
269
+ ## Step 6: COMMIT
270
+
271
+ ```bash
272
+ git add .planning/ROADMAP.md
273
+ git add .planning/PROJECT.md 2>/dev/null
274
+ git add ${phases_dir}/
275
+ git commit -m "product: plan {N} phases — {primary_approach}, {total_effort}wk"
276
+ ```
277
+
278
+ ---
279
+
280
+ ## Step 7: ROUTE NEXT ACTION
281
+
282
+ | Condition | Suggestion |
283
+ |-----------|------------|
284
+ | Baseline not assessed | `/grd:assess-baseline` — establish baseline for accurate gap analysis |
285
+ | No research context | `/grd:survey {topic}` — survey before planning |
286
+ | Plan ready, start phase 1 | `/grd:plan-phase 1` — create detailed phase plan |
287
+ | Need more research on approach | `/grd:deep-dive {paper}` or `/grd:feasibility {method}` |
288
+ | Plan needs discussion | `/grd:discuss-phase 1` — gather context for first phase |
289
+
290
+ </process>
291
+
292
+ <output>
293
+ **FILES_WRITTEN:**
294
+ - `.planning/ROADMAP.md` — product roadmap with phased plan
295
+ - `.planning/PROJECT.md` — updated with vision and goals (if exists)
296
+ - `${phases_dir}/{N}-{name}/` — phase directories created
297
+
298
+ **DISPLAY**: Product plan summary with phases, targets, risks, and context gaps
299
+
300
+ **GIT**: Committed: `product: plan {N} phases — {approach}, {effort}wk`
301
+ </output>
302
+
303
+ <error_handling>
304
+ - **No baseline available**: Proceed but mark all gap analysis as estimates, strongly suggest assess-baseline
305
+ - **No research context**: Proceed but flag that approach selection is uninformed, suggest survey
306
+ - **Existing roadmap conflict**: Present diff, ask user whether to replace or merge
307
+ - **Goals too vague**: ASK user for specific measurable criteria before proceeding
308
+ - **Phase count too high (>10)**: Suggest consolidation, warn about planning overhead
309
+ </error_handling>
310
+
311
+ <success_criteria>
312
+ - Product vision is specific and measurable
313
+ - Gap analysis uses actual baseline values (not placeholders)
314
+ - Approach selection is justified by research (or noted as uninformed)
315
+ - Phase breakdown is logical with dependencies
316
+ - Quality targets progress from baseline toward goal
317
+ - Iteration strategy is defined for each phase
318
+ - Plan is actionable — next step is always clear
319
+ </success_criteria>