claude-code-pilot 2.0.0 → 3.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 (455) hide show
  1. package/bin/install.js +267 -250
  2. package/manifest.json +5 -18
  3. package/package.json +5 -7
  4. package/src/agents/build-error-resolver.md +114 -0
  5. package/src/agents/ccp-advisor-researcher.md +104 -0
  6. package/src/agents/ccp-assumptions-analyzer.md +105 -0
  7. package/{gsd/agents/gsd-codebase-mapper.md → src/agents/ccp-codebase-mapper.md} +7 -7
  8. package/{gsd/agents/gsd-debugger.md → src/agents/ccp-debugger.md} +125 -8
  9. package/{gsd/agents/gsd-executor.md → src/agents/ccp-executor.md} +31 -20
  10. package/{gsd/agents/gsd-integration-checker.md → src/agents/ccp-integration-checker.md} +2 -2
  11. package/{gsd/agents/gsd-nyquist-auditor.md → src/agents/ccp-nyquist-auditor.md} +3 -3
  12. package/{gsd/agents/gsd-phase-researcher.md → src/agents/ccp-phase-researcher.md} +127 -13
  13. package/{gsd/agents/gsd-plan-checker.md → src/agents/ccp-plan-checker.md} +57 -21
  14. package/{gsd/agents/gsd-planner.md → src/agents/ccp-planner.md} +61 -23
  15. package/{gsd/agents/gsd-project-researcher.md → src/agents/ccp-project-researcher.md} +33 -6
  16. package/{gsd/agents/gsd-research-synthesizer.md → src/agents/ccp-research-synthesizer.md} +11 -11
  17. package/{gsd/agents/gsd-roadmapper.md → src/agents/ccp-roadmapper.md} +39 -10
  18. package/src/agents/ccp-ui-auditor.md +439 -0
  19. package/src/agents/ccp-ui-checker.md +300 -0
  20. package/src/agents/ccp-ui-researcher.md +357 -0
  21. package/{gsd/agents/gsd-verifier.md → src/agents/ccp-verifier.md} +81 -15
  22. package/src/agents/cpp-build-resolver.md +90 -0
  23. package/src/agents/cpp-reviewer.md +72 -0
  24. package/src/agents/database-reviewer.md +91 -0
  25. package/src/agents/docs-lookup.md +68 -0
  26. package/src/agents/flutter-reviewer.md +243 -0
  27. package/src/agents/go-build-resolver.md +94 -0
  28. package/src/agents/go-reviewer.md +76 -0
  29. package/src/agents/java-build-resolver.md +153 -0
  30. package/src/agents/java-reviewer.md +92 -0
  31. package/src/agents/kotlin-build-resolver.md +118 -0
  32. package/src/agents/kotlin-reviewer.md +159 -0
  33. package/src/agents/planner.md +212 -0
  34. package/src/agents/python-reviewer.md +98 -0
  35. package/src/agents/pytorch-build-resolver.md +120 -0
  36. package/src/agents/refactor-cleaner.md +85 -0
  37. package/src/agents/rust-build-resolver.md +148 -0
  38. package/src/agents/rust-reviewer.md +94 -0
  39. package/src/agents/typescript-reviewer.md +112 -0
  40. package/src/available-rules/README.md +80 -0
  41. package/src/available-rules/cpp/coding-style.md +44 -0
  42. package/src/available-rules/cpp/hooks.md +39 -0
  43. package/src/available-rules/cpp/patterns.md +51 -0
  44. package/src/available-rules/cpp/security.md +51 -0
  45. package/src/available-rules/cpp/testing.md +44 -0
  46. package/src/available-rules/csharp/coding-style.md +72 -0
  47. package/src/available-rules/csharp/hooks.md +25 -0
  48. package/src/available-rules/csharp/patterns.md +50 -0
  49. package/src/available-rules/csharp/security.md +58 -0
  50. package/src/available-rules/csharp/testing.md +46 -0
  51. package/src/available-rules/java/coding-style.md +114 -0
  52. package/src/available-rules/java/hooks.md +18 -0
  53. package/src/available-rules/java/patterns.md +146 -0
  54. package/src/available-rules/java/security.md +100 -0
  55. package/src/available-rules/java/testing.md +131 -0
  56. package/src/available-rules/kotlin/hooks.md +17 -0
  57. package/src/available-rules/rust/coding-style.md +151 -0
  58. package/src/available-rules/rust/hooks.md +16 -0
  59. package/src/available-rules/rust/patterns.md +168 -0
  60. package/src/available-rules/rust/security.md +141 -0
  61. package/src/available-rules/rust/testing.md +154 -0
  62. package/src/commands/aside.md +164 -0
  63. package/src/commands/build-fix.md +62 -0
  64. package/src/commands/ccp/add-backlog.md +76 -0
  65. package/{gsd/commands-gsd → src/commands/ccp}/add-phase.md +3 -3
  66. package/{gsd/commands-gsd → src/commands/ccp}/add-tests.md +5 -5
  67. package/{gsd/commands-gsd → src/commands/ccp}/add-todo.md +4 -4
  68. package/{gsd/commands-gsd → src/commands/ccp}/audit-milestone.md +3 -3
  69. package/src/commands/ccp/audit-uat.md +24 -0
  70. package/src/commands/ccp/autonomous.md +41 -0
  71. package/{gsd/commands-gsd → src/commands/ccp}/check-todos.md +3 -3
  72. package/{gsd/commands-gsd → src/commands/ccp}/cleanup.md +3 -3
  73. package/{gsd/commands-gsd → src/commands/ccp}/complete-milestone.md +9 -9
  74. package/{gsd/commands-gsd → src/commands/ccp}/debug.md +14 -9
  75. package/src/commands/ccp/discuss-phase.md +64 -0
  76. package/src/commands/ccp/do.md +30 -0
  77. package/src/commands/ccp/execute-phase.md +59 -0
  78. package/src/commands/ccp/fast.md +30 -0
  79. package/src/commands/ccp/forensics.md +56 -0
  80. package/{gsd/commands-gsd → src/commands/ccp}/health.md +3 -3
  81. package/{gsd/commands-gsd → src/commands/ccp}/help.md +5 -5
  82. package/{gsd/commands-gsd → src/commands/ccp}/insert-phase.md +3 -3
  83. package/{gsd/commands-gsd → src/commands/ccp}/list-phase-assumptions.md +2 -2
  84. package/src/commands/ccp/manager.md +39 -0
  85. package/{gsd/commands-gsd → src/commands/ccp}/map-codebase.md +7 -7
  86. package/src/commands/ccp/milestone-summary.md +51 -0
  87. package/{gsd/commands-gsd → src/commands/ccp}/new-milestone.md +8 -8
  88. package/{gsd/commands-gsd → src/commands/ccp}/new-project.md +8 -8
  89. package/src/commands/ccp/next.md +24 -0
  90. package/src/commands/ccp/note.md +34 -0
  91. package/{gsd/commands-gsd → src/commands/ccp}/pause-work.md +3 -3
  92. package/{gsd/commands-gsd → src/commands/ccp}/plan-milestone-gaps.md +5 -5
  93. package/{gsd/commands-gsd → src/commands/ccp}/plan-phase.md +9 -7
  94. package/src/commands/ccp/plant-seed.md +28 -0
  95. package/src/commands/ccp/pr-branch.md +25 -0
  96. package/{gsd/commands-gsd → src/commands/ccp}/progress.md +3 -3
  97. package/{gsd/commands-gsd → src/commands/ccp}/quick.md +10 -8
  98. package/{gsd/commands-gsd → src/commands/ccp}/remove-phase.md +3 -3
  99. package/{gsd/commands-gsd → src/commands/ccp}/research-phase.md +17 -12
  100. package/{gsd/commands-gsd → src/commands/ccp}/resume-work.md +3 -3
  101. package/src/commands/ccp/review-backlog.md +61 -0
  102. package/src/commands/ccp/session-report.md +19 -0
  103. package/src/commands/ccp/set-profile.md +12 -0
  104. package/{gsd/commands-gsd → src/commands/ccp}/settings.md +5 -5
  105. package/src/commands/ccp/ship.md +23 -0
  106. package/src/commands/ccp/stats.md +18 -0
  107. package/src/commands/ccp/thread.md +127 -0
  108. package/src/commands/ccp/ui-phase.md +34 -0
  109. package/src/commands/ccp/ui-review.md +32 -0
  110. package/{gsd/commands-gsd → src/commands/ccp}/update.md +5 -5
  111. package/{gsd/commands-gsd → src/commands/ccp}/validate-phase.md +3 -3
  112. package/{gsd/commands-gsd → src/commands/ccp}/verify-work.md +5 -5
  113. package/src/commands/code-review.md +40 -0
  114. package/src/commands/context-budget.md +29 -0
  115. package/src/commands/cpp-build.md +173 -0
  116. package/src/commands/cpp-review.md +132 -0
  117. package/src/commands/cpp-test.md +251 -0
  118. package/src/commands/docs.md +31 -0
  119. package/src/commands/e2e.md +364 -0
  120. package/src/commands/eval.md +120 -0
  121. package/{ecc → src}/commands/evolve.md +2 -2
  122. package/src/commands/go-build.md +183 -0
  123. package/src/commands/go-review.md +148 -0
  124. package/src/commands/go-test.md +268 -0
  125. package/src/commands/gradle-build.md +70 -0
  126. package/src/commands/harness-audit.md +71 -0
  127. package/src/commands/kotlin-build.md +174 -0
  128. package/src/commands/kotlin-review.md +140 -0
  129. package/src/commands/kotlin-test.md +312 -0
  130. package/src/commands/orchestrate.md +231 -0
  131. package/src/commands/plan.md +114 -0
  132. package/src/commands/prompt-optimize.md +38 -0
  133. package/src/commands/prune.md +25 -0
  134. package/src/commands/python-review.md +297 -0
  135. package/{ecc → src}/commands/quality-gate.md +1 -1
  136. package/src/commands/refactor-clean.md +80 -0
  137. package/src/commands/rules-distill.md +11 -0
  138. package/src/commands/rust-build.md +187 -0
  139. package/src/commands/rust-review.md +142 -0
  140. package/src/commands/rust-test.md +308 -0
  141. package/{ecc → src}/commands/sessions.md +10 -10
  142. package/src/commands/setup-pm.md +80 -0
  143. package/{kit → src}/commands/setup.md +45 -19
  144. package/src/commands/skill-create.md +172 -0
  145. package/src/commands/skill-health.md +51 -0
  146. package/src/commands/tdd.md +328 -0
  147. package/src/commands/test-coverage.md +69 -0
  148. package/src/commands/update-codemaps.md +72 -0
  149. package/src/commands/update-docs.md +84 -0
  150. package/{gsd/hooks/gsd-context-monitor.js → src/hooks/ccp-context-monitor.js} +3 -3
  151. package/src/hooks/ccp-prompt-guard.js +96 -0
  152. package/{gsd/hooks/gsd-statusline.js → src/hooks/ccp-statusline.js} +7 -7
  153. package/src/hooks/ccp-workflow-guard.js +94 -0
  154. package/src/hooks/config-protection.js +141 -0
  155. package/{kit → src}/hooks/kit-check-update.js +7 -4
  156. package/src/hooks/mcp-health-check.js +620 -0
  157. package/{ecc/scripts → src}/hooks/run-with-flags-shell.sh +1 -1
  158. package/{ecc/scripts → src}/hooks/run-with-flags.js +74 -13
  159. package/src/hooks/session-end-marker.js +29 -0
  160. package/{ecc/scripts → src}/hooks/session-end.js +83 -40
  161. package/{ecc/scripts → src}/hooks/session-start.js +75 -9
  162. package/{ecc/scripts → src}/lib/hook-flags.js +8 -4
  163. package/{ecc/scripts → src}/lib/project-detect.js +2 -1
  164. package/{ecc/scripts → src}/lib/session-manager.d.ts +5 -1
  165. package/{ecc/scripts → src}/lib/session-manager.js +202 -92
  166. package/{ecc/scripts → src}/lib/utils.d.ts +23 -1
  167. package/{ecc/scripts → src}/lib/utils.js +91 -3
  168. package/{gsd/get-shit-done/bin/gsd-tools.cjs → src/pilot/bin/ccp-tools.cjs} +257 -86
  169. package/{gsd/get-shit-done → src/pilot}/bin/lib/commands.cjs +1 -1
  170. package/src/pilot/bin/lib/config.cjs +444 -0
  171. package/src/pilot/bin/lib/core.cjs +1190 -0
  172. package/src/pilot/bin/lib/init.cjs +1281 -0
  173. package/src/pilot/bin/lib/model-profiles.cjs +67 -0
  174. package/{gsd/get-shit-done → src/pilot}/bin/lib/phase.cjs +2 -2
  175. package/src/pilot/bin/lib/security.cjs +382 -0
  176. package/{gsd/get-shit-done → src/pilot}/bin/lib/state.cjs +1 -1
  177. package/src/pilot/bin/lib/uat.cjs +282 -0
  178. package/{gsd/get-shit-done → src/pilot}/bin/lib/verify.cjs +10 -10
  179. package/{gsd/get-shit-done → src/pilot}/references/continuation-format.md +16 -16
  180. package/{gsd/get-shit-done → src/pilot}/references/decimal-phase-calculation.md +5 -5
  181. package/{gsd/get-shit-done → src/pilot}/references/git-integration.md +5 -5
  182. package/{gsd/get-shit-done → src/pilot}/references/git-planning-commit.md +4 -4
  183. package/src/pilot/references/mcp-servers.json +153 -0
  184. package/{gsd/get-shit-done → src/pilot}/references/model-profile-resolution.md +2 -2
  185. package/{gsd/get-shit-done → src/pilot}/references/model-profiles.md +20 -20
  186. package/{gsd/get-shit-done → src/pilot}/references/phase-argument-parsing.md +4 -4
  187. package/{gsd/get-shit-done → src/pilot}/references/planning-config.md +15 -15
  188. package/{gsd/get-shit-done → src/pilot}/references/ui-brand.md +5 -5
  189. package/{gsd/get-shit-done → src/pilot}/references/verification-patterns.md +1 -1
  190. package/{gsd/get-shit-done → src/pilot}/templates/DEBUG.md +1 -1
  191. package/{gsd/get-shit-done → src/pilot}/templates/UAT.md +3 -3
  192. package/src/pilot/templates/UI-SPEC.md +100 -0
  193. package/{gsd/get-shit-done → src/pilot}/templates/VALIDATION.md +1 -1
  194. package/src/pilot/templates/claude-md.md +122 -0
  195. package/{gsd/get-shit-done → src/pilot}/templates/codebase/architecture.md +2 -2
  196. package/{gsd/get-shit-done → src/pilot}/templates/codebase/structure.md +13 -13
  197. package/{gsd/get-shit-done → src/pilot}/templates/context.md +4 -4
  198. package/src/pilot/templates/copilot-instructions.md +7 -0
  199. package/{gsd/get-shit-done → src/pilot}/templates/debug-subagent-prompt.md +4 -4
  200. package/src/pilot/templates/dev-preferences.md +21 -0
  201. package/{gsd/get-shit-done → src/pilot}/templates/discovery.md +2 -2
  202. package/src/pilot/templates/discussion-log.md +63 -0
  203. package/{gsd/get-shit-done → src/pilot}/templates/phase-prompt.md +12 -12
  204. package/{gsd/get-shit-done → src/pilot}/templates/planner-subagent-prompt.md +7 -7
  205. package/{gsd/get-shit-done → src/pilot}/templates/project.md +1 -1
  206. package/{gsd/get-shit-done → src/pilot}/templates/research.md +2 -2
  207. package/{gsd/get-shit-done → src/pilot}/templates/state.md +2 -2
  208. package/{gsd/get-shit-done → src/pilot}/templates/summary-complex.md +1 -1
  209. package/{gsd/get-shit-done → src/pilot}/workflows/add-phase.md +11 -11
  210. package/{gsd/get-shit-done → src/pilot}/workflows/add-tests.md +15 -15
  211. package/{gsd/get-shit-done → src/pilot}/workflows/add-todo.md +7 -7
  212. package/{gsd/get-shit-done → src/pilot}/workflows/audit-milestone.md +24 -16
  213. package/src/pilot/workflows/audit-uat.md +109 -0
  214. package/src/pilot/workflows/autonomous.md +891 -0
  215. package/{gsd/get-shit-done → src/pilot}/workflows/check-todos.md +10 -10
  216. package/{gsd/get-shit-done → src/pilot}/workflows/cleanup.md +3 -3
  217. package/{gsd/get-shit-done → src/pilot}/workflows/complete-milestone.md +19 -16
  218. package/{gsd/get-shit-done → src/pilot}/workflows/diagnose-issues.md +9 -4
  219. package/{gsd/get-shit-done → src/pilot}/workflows/discovery-phase.md +8 -8
  220. package/src/pilot/workflows/discuss-phase-assumptions.md +653 -0
  221. package/{gsd/get-shit-done → src/pilot}/workflows/discuss-phase.md +407 -49
  222. package/src/pilot/workflows/do.md +104 -0
  223. package/src/pilot/workflows/execute-phase.md +821 -0
  224. package/{gsd/get-shit-done → src/pilot}/workflows/execute-plan.md +79 -28
  225. package/src/pilot/workflows/fast.md +105 -0
  226. package/src/pilot/workflows/forensics.md +265 -0
  227. package/{gsd/get-shit-done → src/pilot}/workflows/health.md +34 -11
  228. package/src/pilot/workflows/help.md +775 -0
  229. package/{gsd/get-shit-done → src/pilot}/workflows/insert-phase.md +10 -10
  230. package/{gsd/get-shit-done → src/pilot}/workflows/list-phase-assumptions.md +4 -4
  231. package/src/pilot/workflows/manager.md +362 -0
  232. package/{gsd/get-shit-done → src/pilot}/workflows/map-codebase.md +27 -17
  233. package/src/pilot/workflows/milestone-summary.md +223 -0
  234. package/{gsd/get-shit-done → src/pilot}/workflows/new-milestone.md +135 -33
  235. package/{gsd/get-shit-done → src/pilot}/workflows/new-project.md +152 -79
  236. package/src/pilot/workflows/next.md +97 -0
  237. package/src/pilot/workflows/node-repair.md +92 -0
  238. package/src/pilot/workflows/note.md +156 -0
  239. package/src/pilot/workflows/pause-work.md +177 -0
  240. package/{gsd/get-shit-done → src/pilot}/workflows/plan-milestone-gaps.md +10 -11
  241. package/src/pilot/workflows/plan-phase.md +859 -0
  242. package/src/pilot/workflows/plant-seed.md +169 -0
  243. package/src/pilot/workflows/pr-branch.md +129 -0
  244. package/{gsd/get-shit-done → src/pilot}/workflows/progress.md +95 -34
  245. package/{gsd/get-shit-done → src/pilot}/workflows/quick.md +33 -21
  246. package/{gsd/get-shit-done → src/pilot}/workflows/remove-phase.md +14 -14
  247. package/{gsd/get-shit-done → src/pilot}/workflows/research-phase.md +18 -10
  248. package/{gsd/get-shit-done → src/pilot}/workflows/resume-project.md +37 -18
  249. package/src/pilot/workflows/session-report.md +146 -0
  250. package/{gsd/get-shit-done → src/pilot}/workflows/set-profile.md +7 -7
  251. package/{gsd/get-shit-done → src/pilot}/workflows/settings.md +75 -22
  252. package/src/pilot/workflows/ship.md +228 -0
  253. package/src/pilot/workflows/stats.md +60 -0
  254. package/{gsd/get-shit-done → src/pilot}/workflows/transition.md +57 -17
  255. package/src/pilot/workflows/ui-phase.md +302 -0
  256. package/src/pilot/workflows/ui-review.md +165 -0
  257. package/{gsd/get-shit-done → src/pilot}/workflows/update.md +88 -58
  258. package/{gsd/get-shit-done → src/pilot}/workflows/validate-phase.md +24 -17
  259. package/{gsd/get-shit-done → src/pilot}/workflows/verify-phase.md +26 -15
  260. package/{gsd/get-shit-done → src/pilot}/workflows/verify-work.md +89 -37
  261. package/{ecc → src}/rules/common/agents.md +1 -0
  262. package/{ecc → src}/rules/common/coding-style.md +21 -0
  263. package/src/skills/agentic-engineering/SKILL.md +63 -0
  264. package/src/skills/ai-first-engineering/SKILL.md +51 -0
  265. package/src/skills/ai-regression-testing/SKILL.md +385 -0
  266. package/src/skills/api-design/SKILL.md +523 -0
  267. package/src/skills/architecture-decision-records/SKILL.md +179 -0
  268. package/src/skills/backend-patterns/SKILL.md +598 -0
  269. package/src/skills/benchmark/SKILL.md +87 -0
  270. package/src/skills/blueprint/SKILL.md +90 -0
  271. package/src/skills/browser-qa/SKILL.md +81 -0
  272. package/src/skills/claude-api/SKILL.md +337 -0
  273. package/src/skills/codebase-onboarding/SKILL.md +233 -0
  274. package/src/skills/coding-standards/SKILL.md +530 -0
  275. package/src/skills/context-budget/SKILL.md +135 -0
  276. package/{ecc → src}/skills/continuous-learning-v2/SKILL.md +2 -2
  277. package/{ecc → src}/skills/continuous-learning-v2/agents/observer-loop.sh +1 -1
  278. package/src/skills/cpp-coding-standards/SKILL.md +723 -0
  279. package/src/skills/cpp-testing/SKILL.md +324 -0
  280. package/src/skills/database-migrations/SKILL.md +429 -0
  281. package/src/skills/deep-research/SKILL.md +155 -0
  282. package/src/skills/deployment-patterns/SKILL.md +427 -0
  283. package/src/skills/django-patterns/SKILL.md +734 -0
  284. package/src/skills/django-security/SKILL.md +593 -0
  285. package/src/skills/django-tdd/SKILL.md +729 -0
  286. package/src/skills/django-verification/SKILL.md +469 -0
  287. package/src/skills/docker-patterns/SKILL.md +364 -0
  288. package/src/skills/documentation-lookup/SKILL.md +90 -0
  289. package/src/skills/e2e-testing/SKILL.md +326 -0
  290. package/src/skills/exa-search/SKILL.md +103 -0
  291. package/src/skills/frontend-patterns/SKILL.md +642 -0
  292. package/src/skills/golang-patterns/SKILL.md +674 -0
  293. package/src/skills/golang-testing/SKILL.md +720 -0
  294. package/src/skills/java-coding-standards/SKILL.md +147 -0
  295. package/src/skills/jpa-patterns/SKILL.md +151 -0
  296. package/src/skills/kotlin-coroutines-flows/SKILL.md +284 -0
  297. package/src/skills/kotlin-exposed-patterns/SKILL.md +719 -0
  298. package/src/skills/kotlin-ktor-patterns/SKILL.md +689 -0
  299. package/src/skills/kotlin-patterns/SKILL.md +711 -0
  300. package/src/skills/kotlin-testing/SKILL.md +824 -0
  301. package/src/skills/laravel-patterns/SKILL.md +415 -0
  302. package/src/skills/laravel-security/SKILL.md +285 -0
  303. package/src/skills/laravel-tdd/SKILL.md +283 -0
  304. package/src/skills/laravel-verification/SKILL.md +179 -0
  305. package/src/skills/mcp-server-patterns/SKILL.md +67 -0
  306. package/src/skills/perl-patterns/SKILL.md +504 -0
  307. package/src/skills/perl-testing/SKILL.md +475 -0
  308. package/src/skills/postgres-patterns/SKILL.md +147 -0
  309. package/src/skills/prompt-optimizer/SKILL.md +397 -0
  310. package/src/skills/python-patterns/SKILL.md +750 -0
  311. package/src/skills/python-testing/SKILL.md +816 -0
  312. package/src/skills/rust-patterns/SKILL.md +499 -0
  313. package/src/skills/rust-testing/SKILL.md +500 -0
  314. package/src/skills/safety-guard/SKILL.md +69 -0
  315. package/src/skills/search-first/SKILL.md +161 -0
  316. package/src/skills/security-review/SKILL.md +495 -0
  317. package/src/skills/security-review/cloud-infrastructure-security.md +361 -0
  318. package/src/skills/security-scan/SKILL.md +165 -0
  319. package/src/skills/springboot-patterns/SKILL.md +314 -0
  320. package/src/skills/springboot-security/SKILL.md +272 -0
  321. package/src/skills/springboot-tdd/SKILL.md +158 -0
  322. package/src/skills/springboot-verification/SKILL.md +231 -0
  323. package/src/skills/tdd-workflow/SKILL.md +410 -0
  324. package/ecc/scripts/hooks/session-end-marker.js +0 -15
  325. package/gsd/LICENSE +0 -21
  326. package/gsd/commands-gsd/discuss-phase.md +0 -90
  327. package/gsd/commands-gsd/execute-phase.md +0 -41
  328. package/gsd/commands-gsd/join-discord.md +0 -18
  329. package/gsd/commands-gsd/reapply-patches.md +0 -123
  330. package/gsd/commands-gsd/set-profile.md +0 -34
  331. package/gsd/get-shit-done/bin/lib/config.cjs +0 -169
  332. package/gsd/get-shit-done/bin/lib/core.cjs +0 -492
  333. package/gsd/get-shit-done/bin/lib/init.cjs +0 -710
  334. package/gsd/get-shit-done/workflows/execute-phase.md +0 -459
  335. package/gsd/get-shit-done/workflows/help.md +0 -489
  336. package/gsd/get-shit-done/workflows/pause-work.md +0 -122
  337. package/gsd/get-shit-done/workflows/plan-phase.md +0 -560
  338. package/gsd/hooks/gsd-check-update.js +0 -81
  339. package/kit/CLAUDE.md +0 -43
  340. package/kit/commands/kit/update.md +0 -46
  341. package/kit/mcp.json +0 -10
  342. package/kit/rules/code-style.md +0 -24
  343. /package/{ecc → src}/agents/architect.md +0 -0
  344. /package/{ecc → src}/agents/code-reviewer.md +0 -0
  345. /package/{ecc → src}/agents/doc-updater.md +0 -0
  346. /package/{ecc → src}/agents/e2e-runner.md +0 -0
  347. /package/{ecc → src}/agents/security-reviewer.md +0 -0
  348. /package/{ecc → src}/agents/tdd-guide.md +0 -0
  349. /package/{ecc/rules → src/available-rules}/golang/coding-style.md +0 -0
  350. /package/{ecc/rules → src/available-rules}/golang/hooks.md +0 -0
  351. /package/{ecc/rules → src/available-rules}/golang/patterns.md +0 -0
  352. /package/{ecc/rules → src/available-rules}/golang/security.md +0 -0
  353. /package/{ecc/rules → src/available-rules}/golang/testing.md +0 -0
  354. /package/{ecc/rules → src/available-rules}/kotlin/coding-style.md +0 -0
  355. /package/{ecc/rules → src/available-rules}/kotlin/patterns.md +0 -0
  356. /package/{ecc/rules → src/available-rules}/kotlin/security.md +0 -0
  357. /package/{ecc/rules → src/available-rules}/kotlin/testing.md +0 -0
  358. /package/{ecc/rules → src/available-rules}/perl/coding-style.md +0 -0
  359. /package/{ecc/rules → src/available-rules}/perl/hooks.md +0 -0
  360. /package/{ecc/rules → src/available-rules}/perl/patterns.md +0 -0
  361. /package/{ecc/rules → src/available-rules}/perl/security.md +0 -0
  362. /package/{ecc/rules → src/available-rules}/perl/testing.md +0 -0
  363. /package/{ecc/rules → src/available-rules}/php/coding-style.md +0 -0
  364. /package/{ecc/rules → src/available-rules}/php/hooks.md +0 -0
  365. /package/{ecc/rules → src/available-rules}/php/patterns.md +0 -0
  366. /package/{ecc/rules → src/available-rules}/php/security.md +0 -0
  367. /package/{ecc/rules → src/available-rules}/php/testing.md +0 -0
  368. /package/{ecc/rules → src/available-rules}/python/coding-style.md +0 -0
  369. /package/{ecc/rules → src/available-rules}/python/hooks.md +0 -0
  370. /package/{ecc/rules → src/available-rules}/python/patterns.md +0 -0
  371. /package/{ecc/rules → src/available-rules}/python/security.md +0 -0
  372. /package/{ecc/rules → src/available-rules}/python/testing.md +0 -0
  373. /package/{ecc/rules → src/available-rules}/swift/coding-style.md +0 -0
  374. /package/{ecc/rules → src/available-rules}/swift/hooks.md +0 -0
  375. /package/{ecc/rules → src/available-rules}/swift/patterns.md +0 -0
  376. /package/{ecc/rules → src/available-rules}/swift/security.md +0 -0
  377. /package/{ecc/rules → src/available-rules}/swift/testing.md +0 -0
  378. /package/{ecc/rules → src/available-rules}/typescript/coding-style.md +0 -0
  379. /package/{ecc/rules → src/available-rules}/typescript/hooks.md +0 -0
  380. /package/{ecc/rules → src/available-rules}/typescript/patterns.md +0 -0
  381. /package/{ecc/rules → src/available-rules}/typescript/security.md +0 -0
  382. /package/{ecc/rules → src/available-rules}/typescript/testing.md +0 -0
  383. /package/{ecc → src}/commands/checkpoint.md +0 -0
  384. /package/{ecc → src}/commands/learn.md +0 -0
  385. /package/{ecc → src}/commands/model-route.md +0 -0
  386. /package/{ecc → src}/commands/resume-session.md +0 -0
  387. /package/{ecc → src}/commands/save-session.md +0 -0
  388. /package/{kit → src}/commands/setup-refresh.md +0 -0
  389. /package/{kit → src}/commands/tool-guide.md +0 -0
  390. /package/{ecc → src}/commands/verify.md +0 -0
  391. /package/{ecc → src}/contexts/dev.md +0 -0
  392. /package/{ecc → src}/contexts/research.md +0 -0
  393. /package/{ecc → src}/contexts/review.md +0 -0
  394. /package/{ecc → src}/examples/CLAUDE.md +0 -0
  395. /package/{ecc → src}/examples/django-api-CLAUDE.md +0 -0
  396. /package/{ecc → src}/examples/go-microservice-CLAUDE.md +0 -0
  397. /package/{ecc → src}/examples/rust-api-CLAUDE.md +0 -0
  398. /package/{ecc → src}/examples/saas-nextjs-CLAUDE.md +0 -0
  399. /package/{ecc → src}/examples/user-CLAUDE.md +0 -0
  400. /package/{ecc/scripts → src}/hooks/check-hook-enabled.js +0 -0
  401. /package/{ecc/scripts → src}/hooks/evaluate-session.js +0 -0
  402. /package/{ecc/scripts → src}/hooks/pre-compact.js +0 -0
  403. /package/{ecc/scripts → src}/hooks/suggest-compact.js +0 -0
  404. /package/{ecc/scripts → src}/lib/package-manager.d.ts +0 -0
  405. /package/{ecc/scripts → src}/lib/package-manager.js +0 -0
  406. /package/{ecc/scripts → src}/lib/resolve-formatter.js +0 -0
  407. /package/{ecc/scripts → src}/lib/session-aliases.d.ts +0 -0
  408. /package/{ecc/scripts → src}/lib/session-aliases.js +0 -0
  409. /package/{ecc/scripts → src}/lib/shell-split.js +0 -0
  410. /package/{gsd/get-shit-done → src/pilot}/bin/lib/frontmatter.cjs +0 -0
  411. /package/{gsd/get-shit-done → src/pilot}/bin/lib/milestone.cjs +0 -0
  412. /package/{gsd/get-shit-done → src/pilot}/bin/lib/roadmap.cjs +0 -0
  413. /package/{gsd/get-shit-done → src/pilot}/bin/lib/template.cjs +0 -0
  414. /package/{gsd/get-shit-done → src/pilot}/references/checkpoints.md +0 -0
  415. /package/{gsd/get-shit-done → src/pilot}/references/questioning.md +0 -0
  416. /package/{gsd/get-shit-done → src/pilot}/references/tdd.md +0 -0
  417. /package/{gsd/get-shit-done → src/pilot}/templates/codebase/concerns.md +0 -0
  418. /package/{gsd/get-shit-done → src/pilot}/templates/codebase/conventions.md +0 -0
  419. /package/{gsd/get-shit-done → src/pilot}/templates/codebase/integrations.md +0 -0
  420. /package/{gsd/get-shit-done → src/pilot}/templates/codebase/stack.md +0 -0
  421. /package/{gsd/get-shit-done → src/pilot}/templates/codebase/testing.md +0 -0
  422. /package/{gsd/get-shit-done → src/pilot}/templates/config.json +0 -0
  423. /package/{gsd/get-shit-done → src/pilot}/templates/continue-here.md +0 -0
  424. /package/{gsd/get-shit-done → src/pilot}/templates/milestone-archive.md +0 -0
  425. /package/{gsd/get-shit-done → src/pilot}/templates/milestone.md +0 -0
  426. /package/{gsd/get-shit-done → src/pilot}/templates/requirements.md +0 -0
  427. /package/{gsd/get-shit-done → src/pilot}/templates/research-project/ARCHITECTURE.md +0 -0
  428. /package/{gsd/get-shit-done → src/pilot}/templates/research-project/FEATURES.md +0 -0
  429. /package/{gsd/get-shit-done → src/pilot}/templates/research-project/PITFALLS.md +0 -0
  430. /package/{gsd/get-shit-done → src/pilot}/templates/research-project/STACK.md +0 -0
  431. /package/{gsd/get-shit-done → src/pilot}/templates/research-project/SUMMARY.md +0 -0
  432. /package/{gsd/get-shit-done → src/pilot}/templates/retrospective.md +0 -0
  433. /package/{gsd/get-shit-done → src/pilot}/templates/roadmap.md +0 -0
  434. /package/{gsd/get-shit-done → src/pilot}/templates/summary-minimal.md +0 -0
  435. /package/{gsd/get-shit-done → src/pilot}/templates/summary-standard.md +0 -0
  436. /package/{gsd/get-shit-done → src/pilot}/templates/summary.md +0 -0
  437. /package/{gsd/get-shit-done → src/pilot}/templates/user-setup.md +0 -0
  438. /package/{gsd/get-shit-done → src/pilot}/templates/verification-report.md +0 -0
  439. /package/{ecc → src}/rules/common/development-workflow.md +0 -0
  440. /package/{ecc → src}/rules/common/git-workflow.md +0 -0
  441. /package/{ecc → src}/rules/common/hooks.md +0 -0
  442. /package/{ecc → src}/rules/common/patterns.md +0 -0
  443. /package/{ecc → src}/rules/common/performance.md +0 -0
  444. /package/{ecc → src}/rules/common/security.md +0 -0
  445. /package/{ecc → src}/rules/common/testing.md +0 -0
  446. /package/{ecc → src}/skills/continuous-learning-v2/agents/observer.md +0 -0
  447. /package/{ecc → src}/skills/continuous-learning-v2/agents/start-observer.sh +0 -0
  448. /package/{ecc → src}/skills/continuous-learning-v2/config.json +0 -0
  449. /package/{ecc → src}/skills/continuous-learning-v2/hooks/observe.sh +0 -0
  450. /package/{ecc → src}/skills/continuous-learning-v2/scripts/detect-project.sh +0 -0
  451. /package/{ecc → src}/skills/continuous-learning-v2/scripts/instinct-cli.py +0 -0
  452. /package/{ecc → src}/skills/continuous-learning-v2/scripts/test_parse_instinct.py +0 -0
  453. /package/{ecc → src}/skills/strategic-compact/SKILL.md +0 -0
  454. /package/{ecc → src}/skills/strategic-compact/suggest-compact.sh +0 -0
  455. /package/{ecc/skills/verification-loop-SKILL.md → src/skills/verification-loop/SKILL.md} +0 -0
@@ -1,5 +1,5 @@
1
1
  <purpose>
2
- Switch the model profile used by GSD agents. Controls which Claude model each agent uses, balancing quality vs token spend.
2
+ Switch the model profile used by CCP agents. Controls which Claude model each agent uses, balancing quality vs token spend.
3
3
  </purpose>
4
4
 
5
5
  <required_reading>
@@ -23,8 +23,8 @@ if $ARGUMENTS.profile not in ["quality", "balanced", "budget"]:
23
23
  Ensure config exists and load current state:
24
24
 
25
25
  ```bash
26
- node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" config-ensure-section
27
- INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" state load)
26
+ node "$HOME/.claude/pilot/bin/ccp-tools.cjs" config-ensure-section
27
+ INIT=$(node "$HOME/.claude/pilot/bin/ccp-tools.cjs" state load)
28
28
  if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
29
29
  ```
30
30
 
@@ -52,14 +52,14 @@ Display confirmation with model table for selected profile:
52
52
 
53
53
  Agents will now use:
54
54
 
55
- [Show table from MODEL_PROFILES in gsd-tools.cjs for selected profile]
55
+ [Show table from MODEL_PROFILES in ccp-tools.cjs for selected profile]
56
56
 
57
57
  Example:
58
58
  | Agent | Model |
59
59
  |-------|-------|
60
- | gsd-planner | opus |
61
- | gsd-executor | sonnet |
62
- | gsd-verifier | haiku |
60
+ | ccp-planner | opus |
61
+ | ccp-executor | sonnet |
62
+ | ccp-verifier | haiku |
63
63
  | ... | ... |
64
64
 
65
65
  Next spawned agents will use the new profile.
@@ -1,5 +1,5 @@
1
1
  <purpose>
2
- Interactive configuration of GSD workflow agents (research, plan_check, verifier) and model profile selection via multi-question prompt. Updates .planning/config.json with user preferences. Optionally saves settings as global defaults (~/.gsd/defaults.json) for future projects.
2
+ Interactive configuration of CCP workflow agents (research, plan_check, verifier) and model profile selection via multi-question prompt. Updates .planning/config.json with user preferences. Optionally saves settings as global defaults (~/.ccp/defaults.json) for future projects.
3
3
  </purpose>
4
4
 
5
5
  <required_reading>
@@ -12,8 +12,8 @@ Read all files referenced by the invoking prompt's execution_context before star
12
12
  Ensure config exists and load current state:
13
13
 
14
14
  ```bash
15
- node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" config-ensure-section
16
- INIT=$(node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" state load)
15
+ node "$HOME/.claude/pilot/bin/ccp-tools.cjs" config-ensure-section
16
+ INIT=$(node "$HOME/.claude/pilot/bin/ccp-tools.cjs" state load)
17
17
  if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
18
18
  ```
19
19
 
@@ -30,6 +30,9 @@ Parse current values (default to `true` if not present):
30
30
  - `workflow.plan_check` — spawn plan checker during plan-phase
31
31
  - `workflow.verifier` — spawn verifier during execute-phase
32
32
  - `workflow.nyquist_validation` — validation architecture research during plan-phase (default: true if absent)
33
+ - `workflow.discuss_mode` — discussion approach (default: `"discuss"`, alternative: `"assumptions"`)
34
+ - `workflow.research_before_questions` — web search before questioning (default: false)
35
+ - `workflow.skip_discuss` — skip discuss-phase in autonomous mode (default: false)
33
36
  - `model_profile` — which model each agent uses (default: `balanced`)
34
37
  - `git.branching_strategy` — branching approach (default: `"none"`)
35
38
  </step>
@@ -46,7 +49,8 @@ AskUserQuestion([
46
49
  options: [
47
50
  { label: "Quality", description: "Opus everywhere except verification (highest cost)" },
48
51
  { label: "Balanced (Recommended)", description: "Opus for planning, Sonnet for execution/verification" },
49
- { label: "Budget", description: "Sonnet for writing, Haiku for research/verification (lowest cost)" }
52
+ { label: "Budget", description: "Sonnet for writing, Haiku for research/verification (lowest cost)" },
53
+ { label: "Inherit", description: "Use current session model for all agents" }
50
54
  ]
51
55
  },
52
56
  {
@@ -94,14 +98,52 @@ AskUserQuestion([
94
98
  { label: "No", description: "Skip validation research. Good for rapid prototyping or no-test phases." }
95
99
  ]
96
100
  },
101
+ // Note: Nyquist validation depends on research output. If research is disabled,
102
+ // plan-phase automatically skips Nyquist steps (no RESEARCH.md to extract from).
103
+ {
104
+ question: "Enable context window warnings? (injects advisory messages when context is getting full)",
105
+ header: "Ctx Warnings",
106
+ multiSelect: false,
107
+ options: [
108
+ { label: "Yes (Recommended)", description: "Warn when context usage exceeds 65%. Helps avoid losing work." },
109
+ { label: "No", description: "Disable warnings. Allows Claude to reach auto-compact naturally. Good for long unattended runs." }
110
+ ]
111
+ },
112
+ {
113
+ question: "Research best practices before asking questions? (web search during new-project and discuss-phase)",
114
+ header: "Research Qs",
115
+ multiSelect: false,
116
+ options: [
117
+ { label: "No (Recommended)", description: "Ask questions directly. Faster, uses fewer tokens." },
118
+ { label: "Yes", description: "Search web for best practices before each question group. More informed questions but uses more tokens." }
119
+ ]
120
+ },
121
+ {
122
+ question: "Discussion mode? (how discuss-phase gathers context)",
123
+ header: "Discuss Mode",
124
+ multiSelect: false,
125
+ options: [
126
+ { label: "Discuss (Recommended)", description: "Interactive questioning — surfaces gray areas and captures decisions" },
127
+ { label: "Assumptions", description: "Claude states assumptions for you to confirm/correct — faster but less exploratory" }
128
+ ]
129
+ },
130
+ {
131
+ question: "Skip discuss-phase in autonomous mode? (use ROADMAP phase goals as spec)",
132
+ header: "Skip Discuss",
133
+ multiSelect: false,
134
+ options: [
135
+ { label: "No (Recommended)", description: "Run smart discuss before each phase — surfaces gray areas and captures decisions." },
136
+ { label: "Yes", description: "Skip discuss in autonomous mode — chain directly to plan. Best for backend/pipeline work where phase descriptions are the spec." }
137
+ ]
138
+ },
97
139
  {
98
140
  question: "Git branching strategy?",
99
141
  header: "Branching",
100
142
  multiSelect: false,
101
143
  options: [
102
144
  { label: "None (Recommended)", description: "Commit directly to current branch" },
103
- { label: "Per Phase", description: "Create branch for each phase (gsd/phase-{N}-{name})" },
104
- { label: "Per Milestone", description: "Create branch for entire milestone (gsd/{version}-{name})" }
145
+ { label: "Per Phase", description: "Create branch for each phase (ccp/phase-{N}-{name})" },
146
+ { label: "Per Milestone", description: "Create branch for entire milestone (ccp/{version}-{name})" }
105
147
  ]
106
148
  }
107
149
  ])
@@ -114,16 +156,22 @@ Merge new settings into existing config.json:
114
156
  ```json
115
157
  {
116
158
  ...existing_config,
117
- "model_profile": "quality" | "balanced" | "budget",
159
+ "model_profile": "quality" | "balanced" | "budget" | "inherit",
118
160
  "workflow": {
119
161
  "research": true/false,
120
162
  "plan_check": true/false,
121
163
  "verifier": true/false,
122
164
  "auto_advance": true/false,
123
- "nyquist_validation": true/false
165
+ "nyquist_validation": true/false,
166
+ "research_before_questions": true/false,
167
+ "discuss_mode": "discuss" | "assumptions",
168
+ "skip_discuss": true/false
124
169
  },
125
170
  "git": {
126
171
  "branching_strategy": "none" | "phase" | "milestone"
172
+ },
173
+ "hooks": {
174
+ "context_warnings": true/false
127
175
  }
128
176
  }
129
177
  ```
@@ -141,20 +189,20 @@ AskUserQuestion([
141
189
  header: "Defaults",
142
190
  multiSelect: false,
143
191
  options: [
144
- { label: "Yes", description: "New projects start with these settings (saved to ~/.gsd/defaults.json)" },
192
+ { label: "Yes", description: "New projects start with these settings (saved to ~/.ccp/defaults.json)" },
145
193
  { label: "No", description: "Only apply to this project" }
146
194
  ]
147
195
  }
148
196
  ])
149
197
  ```
150
198
 
151
- If "Yes": write the same config object (minus project-specific fields like `brave_search`) to `~/.gsd/defaults.json`:
199
+ If "Yes": write the same config object (minus project-specific fields like `brave_search`) to `~/.ccp/defaults.json`:
152
200
 
153
201
  ```bash
154
- mkdir -p ~/.gsd
202
+ mkdir -p ~/.ccp
155
203
  ```
156
204
 
157
- Write `~/.gsd/defaults.json` with:
205
+ Write `~/.ccp/defaults.json` with:
158
206
  ```json
159
207
  {
160
208
  "mode": <current>,
@@ -168,7 +216,9 @@ Write `~/.gsd/defaults.json` with:
168
216
  "plan_check": <current>,
169
217
  "verifier": <current>,
170
218
  "auto_advance": <current>,
171
- "nyquist_validation": <current>
219
+ "nyquist_validation": <current>,
220
+ "discuss_mode": <current>,
221
+ "skip_discuss": <current>
172
222
  }
173
223
  }
174
224
  ```
@@ -179,27 +229,30 @@ Display:
179
229
 
180
230
  ```
181
231
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
182
- GSD ► SETTINGS UPDATED
232
+ Pilot ► SETTINGS UPDATED
183
233
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
184
234
 
185
235
  | Setting | Value |
186
236
  |----------------------|-------|
187
- | Model Profile | {quality/balanced/budget} |
237
+ | Model Profile | {quality/balanced/budget/inherit} |
188
238
  | Plan Researcher | {On/Off} |
189
239
  | Plan Checker | {On/Off} |
190
240
  | Execution Verifier | {On/Off} |
191
241
  | Auto-Advance | {On/Off} |
192
242
  | Nyquist Validation | {On/Off} |
243
+ | Discuss Mode | {discuss/assumptions} |
244
+ | Skip Discuss | {On/Off} |
245
+ | Context Warnings | {On/Off} |
193
246
  | Git Branching | {None/Per Phase/Per Milestone} |
194
247
  | Saved as Defaults | {Yes/No} |
195
248
 
196
- These settings apply to future /gsd:plan-phase and /gsd:execute-phase runs.
249
+ These settings apply to future /ccp:plan-phase and /ccp:execute-phase runs.
197
250
 
198
251
  Quick commands:
199
- - /gsd:set-profile <profile> — switch model profile
200
- - /gsd:plan-phase --research — force research
201
- - /gsd:plan-phase --skip-research — skip research
202
- - /gsd:plan-phase --skip-verify — skip plan check
252
+ - /ccp:set-profile <profile> — switch model profile
253
+ - /ccp:plan-phase --research — force research
254
+ - /ccp:plan-phase --skip-research — skip research
255
+ - /ccp:plan-phase --skip-verify — skip plan check
203
256
  ```
204
257
  </step>
205
258
 
@@ -207,8 +260,8 @@ Quick commands:
207
260
 
208
261
  <success_criteria>
209
262
  - [ ] Current config read
210
- - [ ] User presented with 7 settings (profile + 5 workflow toggles + git branching)
263
+ - [ ] User presented with 11 settings (profile + 9 workflow/hooks toggles + git branching)
211
264
  - [ ] Config updated with model_profile, workflow, and git sections
212
- - [ ] User offered to save as global defaults (~/.gsd/defaults.json)
265
+ - [ ] User offered to save as global defaults (~/.ccp/defaults.json)
213
266
  - [ ] Changes confirmed to user
214
267
  </success_criteria>
@@ -0,0 +1,228 @@
1
+ <purpose>
2
+ Create a pull request from completed phase/milestone work, generate a rich PR body from planning artifacts, optionally run code review, and prepare for merge. Closes the plan → execute → verify → ship loop.
3
+ </purpose>
4
+
5
+ <required_reading>
6
+ Read all files referenced by the invoking prompt's execution_context before starting.
7
+ </required_reading>
8
+
9
+ <process>
10
+
11
+ <step name="initialize">
12
+ Parse arguments and load project state:
13
+
14
+ ```bash
15
+ INIT=$(node "$HOME/.claude/pilot/bin/ccp-tools.cjs" init phase-op "${PHASE_ARG}")
16
+ if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
17
+ ```
18
+
19
+ Parse from init JSON: `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `padded_phase`, `commit_docs`.
20
+
21
+ Also load config for branching strategy:
22
+ ```bash
23
+ CONFIG=$(node "$HOME/.claude/pilot/bin/ccp-tools.cjs" state load)
24
+ ```
25
+
26
+ Extract: `branching_strategy`, `branch_name`.
27
+ </step>
28
+
29
+ <step name="preflight_checks">
30
+ Verify the work is ready to ship:
31
+
32
+ 1. **Verification passed?**
33
+ ```bash
34
+ VERIFICATION=$(cat ${PHASE_DIR}/*-VERIFICATION.md 2>/dev/null)
35
+ ```
36
+ Check for `status: passed` or `status: human_needed` (with human approval).
37
+ If no VERIFICATION.md or status is `gaps_found`: warn and ask user to confirm.
38
+
39
+ 2. **Clean working tree?**
40
+ ```bash
41
+ git status --short
42
+ ```
43
+ If uncommitted changes exist: ask user to commit or stash first.
44
+
45
+ 3. **On correct branch?**
46
+ ```bash
47
+ CURRENT_BRANCH=$(git branch --show-current)
48
+ ```
49
+ If on `main`/`master`: warn — should be on a feature branch.
50
+ If branching_strategy is `none`: offer to create a branch now.
51
+
52
+ 4. **Remote configured?**
53
+ ```bash
54
+ git remote -v | head -2
55
+ ```
56
+ Detect `origin` remote. If no remote: error — can't create PR.
57
+
58
+ 5. **`gh` CLI available?**
59
+ ```bash
60
+ which gh && gh auth status 2>&1
61
+ ```
62
+ If `gh` not found or not authenticated: provide setup instructions and exit.
63
+ </step>
64
+
65
+ <step name="push_branch">
66
+ Push the current branch to remote:
67
+
68
+ ```bash
69
+ git push origin ${CURRENT_BRANCH} 2>&1
70
+ ```
71
+
72
+ If push fails (e.g., no upstream): set upstream:
73
+ ```bash
74
+ git push --set-upstream origin ${CURRENT_BRANCH} 2>&1
75
+ ```
76
+
77
+ Report: "Pushed `{branch}` to origin ({commit_count} commits ahead of main)"
78
+ </step>
79
+
80
+ <step name="generate_pr_body">
81
+ Auto-generate a rich PR body from planning artifacts:
82
+
83
+ **1. Title:**
84
+ ```
85
+ Phase {phase_number}: {phase_name}
86
+ ```
87
+ Or for milestone: `Milestone {version}: {name}`
88
+
89
+ **2. Summary section:**
90
+ Read ROADMAP.md for phase goal. Read VERIFICATION.md for verification status.
91
+
92
+ ```markdown
93
+ ## Summary
94
+
95
+ **Phase {N}: {Name}**
96
+ **Goal:** {goal from ROADMAP.md}
97
+ **Status:** Verified ✓
98
+
99
+ {One paragraph synthesized from SUMMARY.md files — what was built}
100
+ ```
101
+
102
+ **3. Changes section:**
103
+ For each SUMMARY.md in the phase directory:
104
+ ```markdown
105
+ ## Changes
106
+
107
+ ### Plan {plan_id}: {plan_name}
108
+ {one_liner from SUMMARY.md frontmatter}
109
+
110
+ **Key files:**
111
+ {key-files.created and key-files.modified from SUMMARY.md frontmatter}
112
+ ```
113
+
114
+ **4. Requirements section:**
115
+ ```markdown
116
+ ## Requirements Addressed
117
+
118
+ {REQ-IDs from plan frontmatter, linked to REQUIREMENTS.md descriptions}
119
+ ```
120
+
121
+ **5. Testing section:**
122
+ ```markdown
123
+ ## Verification
124
+
125
+ - [x] Automated verification: {pass/fail from VERIFICATION.md}
126
+ - {human verification items from VERIFICATION.md, if any}
127
+ ```
128
+
129
+ **6. Decisions section:**
130
+ ```markdown
131
+ ## Key Decisions
132
+
133
+ {Decisions from STATE.md accumulated context relevant to this phase}
134
+ ```
135
+ </step>
136
+
137
+ <step name="create_pr">
138
+ Create the PR using the generated body:
139
+
140
+ ```bash
141
+ gh pr create \
142
+ --title "Phase ${PHASE_NUMBER}: ${PHASE_NAME}" \
143
+ --body "${PR_BODY}" \
144
+ --base main
145
+ ```
146
+
147
+ If `--draft` flag was passed: add `--draft`.
148
+
149
+ Report: "PR #{number} created: {url}"
150
+ </step>
151
+
152
+ <step name="optional_review">
153
+ Ask if user wants to trigger a code review:
154
+
155
+ ```
156
+ AskUserQuestion:
157
+ question: "PR created. Run a code review before merge?"
158
+ options:
159
+ - label: "Skip review"
160
+ description: "PR is ready — merge when CI passes"
161
+ - label: "Self-review"
162
+ description: "I'll review the diff in the PR myself"
163
+ - label: "Request review"
164
+ description: "Request review from a teammate"
165
+ ```
166
+
167
+ **If "Request review":**
168
+ ```bash
169
+ gh pr edit ${PR_NUMBER} --add-reviewer "${REVIEWER}"
170
+ ```
171
+
172
+ **If "Self-review":**
173
+ Report the PR URL and suggest: "Review the diff at {url}/files"
174
+ </step>
175
+
176
+ <step name="track_shipping">
177
+ Update STATE.md to reflect the shipping action:
178
+
179
+ ```bash
180
+ node "$HOME/.claude/pilot/bin/ccp-tools.cjs" state update "Last Activity" "$(date +%Y-%m-%d)"
181
+ node "$HOME/.claude/pilot/bin/ccp-tools.cjs" state update "Status" "Phase ${PHASE_NUMBER} shipped — PR #${PR_NUMBER}"
182
+ ```
183
+
184
+ If `commit_docs` is true:
185
+ ```bash
186
+ node "$HOME/.claude/pilot/bin/ccp-tools.cjs" commit "docs(${padded_phase}): ship phase ${PHASE_NUMBER} — PR #${PR_NUMBER}" --files .planning/STATE.md
187
+ ```
188
+ </step>
189
+
190
+ <step name="report">
191
+ ```
192
+ ───────────────────────────────────────────────────────────────
193
+
194
+ ## ✓ Phase {X}: {Name} — Shipped
195
+
196
+ PR: #{number} ({url})
197
+ Branch: {branch} → main
198
+ Commits: {count}
199
+ Verification: ✓ Passed
200
+ Requirements: {N} REQ-IDs addressed
201
+
202
+ Next steps:
203
+ - Review/approve PR
204
+ - Merge when CI passes
205
+ - /ccp:complete-milestone (if last phase in milestone)
206
+ - /ccp:progress (to see what's next)
207
+
208
+ ───────────────────────────────────────────────────────────────
209
+ ```
210
+ </step>
211
+
212
+ </process>
213
+
214
+ <offer_next>
215
+ After shipping:
216
+
217
+ - /ccp:complete-milestone — if all phases in milestone are done
218
+ - /ccp:progress — see overall project state
219
+ - /ccp:execute-phase {next} — continue to next phase
220
+ </offer_next>
221
+
222
+ <success_criteria>
223
+ - [ ] Preflight checks passed (verification, clean tree, branch, remote, gh)
224
+ - [ ] Branch pushed to remote
225
+ - [ ] PR created with rich auto-generated body
226
+ - [ ] STATE.md updated with shipping status
227
+ - [ ] User knows PR number and next steps
228
+ </success_criteria>
@@ -0,0 +1,60 @@
1
+ <purpose>
2
+ Display comprehensive project statistics including phases, plans, requirements, git metrics, and timeline.
3
+ </purpose>
4
+
5
+ <required_reading>
6
+ Read all files referenced by the invoking prompt's execution_context before starting.
7
+ </required_reading>
8
+
9
+ <process>
10
+
11
+ <step name="gather_stats">
12
+ Gather project statistics:
13
+
14
+ ```bash
15
+ STATS=$(node "$HOME/.claude/pilot/bin/ccp-tools.cjs" stats json)
16
+ if [[ "$STATS" == @file:* ]]; then STATS=$(cat "${STATS#@file:}"); fi
17
+ ```
18
+
19
+ Extract fields from JSON: `milestone_version`, `milestone_name`, `phases`, `phases_completed`, `phases_total`, `total_plans`, `total_summaries`, `percent`, `plan_percent`, `requirements_total`, `requirements_complete`, `git_commits`, `git_first_commit_date`, `last_activity`.
20
+ </step>
21
+
22
+ <step name="present_stats">
23
+ Present to the user with this format:
24
+
25
+ ```
26
+ # 📊 Project Statistics — {milestone_version} {milestone_name}
27
+
28
+ ## Progress
29
+ [████████░░] X/Y phases (Z%)
30
+
31
+ ## Plans
32
+ X/Y plans complete (Z%)
33
+
34
+ ## Phases
35
+ | Phase | Name | Plans | Completed | Status |
36
+ |-------|------|-------|-----------|--------|
37
+ | ... | ... | ... | ... | ... |
38
+
39
+ ## Requirements
40
+ ✅ X/Y requirements complete
41
+
42
+ ## Git
43
+ - **Commits:** N
44
+ - **Started:** YYYY-MM-DD
45
+ - **Last activity:** YYYY-MM-DD
46
+
47
+ ## Timeline
48
+ - **Project age:** N days
49
+ ```
50
+
51
+ If no `.planning/` directory exists, inform the user to run `/ccp:new-project` first.
52
+ </step>
53
+
54
+ </process>
55
+
56
+ <success_criteria>
57
+ - [ ] Statistics gathered from project state
58
+ - [ ] Results formatted clearly
59
+ - [ ] Displayed to user
60
+ </success_criteria>