@sienklogic/plan-build-run 2.19.0 → 2.19.2

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 (951) hide show
  1. package/CHANGELOG.md +1287 -303
  2. package/CLAUDE.md +74 -39
  3. package/LICENSE +2 -1
  4. package/README.md +412 -177
  5. package/bin/install.js +2752 -0
  6. package/dashboard/bin/cli.cjs +96 -0
  7. package/dashboard/bin/stop.cjs +129 -0
  8. package/dashboard/eslint.config.js +37 -0
  9. package/dashboard/index.html +20 -0
  10. package/dashboard/package.json +27 -25
  11. package/dashboard/server/index.js +151 -0
  12. package/dashboard/server/lib/frontmatter.js +92 -0
  13. package/dashboard/server/middleware/static.js +35 -0
  14. package/dashboard/server/package.json +16 -0
  15. package/dashboard/server/routes/agents.js +234 -0
  16. package/dashboard/server/routes/config.js +64 -0
  17. package/dashboard/server/routes/health.js +98 -0
  18. package/dashboard/server/routes/incidents.js +78 -0
  19. package/dashboard/server/routes/intel.js +69 -0
  20. package/dashboard/server/routes/memory.js +107 -0
  21. package/dashboard/server/routes/planning.js +234 -0
  22. package/dashboard/server/routes/progress.js +77 -0
  23. package/dashboard/server/routes/projects.js +36 -0
  24. package/dashboard/server/routes/requirements.js +40 -0
  25. package/dashboard/server/routes/roadmap.js +69 -0
  26. package/dashboard/server/routes/sessions.js +70 -0
  27. package/dashboard/server/routes/status.js +25 -0
  28. package/dashboard/server/routes/telemetry.js +233 -0
  29. package/dashboard/server/services/file-watcher.js +105 -0
  30. package/dashboard/server/services/planning-reader.js +727 -0
  31. package/dashboard/server/test/cli.test.js +34 -0
  32. package/dashboard/server/test/frontmatter.test.js +104 -0
  33. package/dashboard/server/test/isolation.test.js +32 -0
  34. package/dashboard/server/test/planning-reader.test.js +151 -0
  35. package/dashboard/server/test/routes.test.js +91 -0
  36. package/dashboard/server/test/ws.test.js +81 -0
  37. package/dashboard/server/ws.js +96 -0
  38. package/dashboard/src/App.jsx +165 -0
  39. package/dashboard/src/components/charts/BudgetBars.jsx +42 -0
  40. package/dashboard/src/components/charts/ContextRadar.jsx +34 -0
  41. package/dashboard/src/components/charts/PhaseDonut.jsx +66 -0
  42. package/dashboard/src/components/charts/SuccessTrend.jsx +45 -0
  43. package/dashboard/src/components/charts/TokenChart.jsx +55 -0
  44. package/dashboard/src/components/charts/index.js +5 -0
  45. package/dashboard/src/components/config/CfgSection.jsx +93 -0
  46. package/dashboard/src/components/layout/Header.jsx +89 -0
  47. package/dashboard/src/components/layout/ProjectSwitcher.jsx +160 -0
  48. package/dashboard/src/components/layout/Sidebar.jsx +161 -0
  49. package/dashboard/src/components/ui/AutoModeBanner.jsx +138 -0
  50. package/dashboard/src/components/ui/BackButton.jsx +27 -0
  51. package/dashboard/src/components/ui/Badge.jsx +27 -0
  52. package/dashboard/src/components/ui/Card.jsx +23 -0
  53. package/dashboard/src/components/ui/ChartTooltip.jsx +48 -0
  54. package/dashboard/src/components/ui/CheckpointBox.jsx +110 -0
  55. package/dashboard/src/components/ui/CodeBlock.jsx +27 -0
  56. package/dashboard/src/components/ui/ConfidenceBadge.jsx +20 -0
  57. package/dashboard/src/components/ui/ConfirmModal.jsx +161 -0
  58. package/dashboard/src/components/ui/ConnectionBanner.jsx +60 -0
  59. package/dashboard/src/components/ui/ErrorBoundary.jsx +106 -0
  60. package/dashboard/src/components/ui/ErrorBox.jsx +107 -0
  61. package/dashboard/src/components/ui/KeyValue.jsx +33 -0
  62. package/dashboard/src/components/ui/LoadingSkeleton.jsx +84 -0
  63. package/dashboard/src/components/ui/MetricCard.jsx +58 -0
  64. package/dashboard/src/components/ui/NextUpBlock.jsx +92 -0
  65. package/dashboard/src/components/ui/NumberInput.jsx +44 -0
  66. package/dashboard/src/components/ui/PBRBanner.jsx +47 -0
  67. package/dashboard/src/components/ui/PipelineView.jsx +130 -0
  68. package/dashboard/src/components/ui/ProgressBar.jsx +28 -0
  69. package/dashboard/src/components/ui/ProgressDisplay.jsx +47 -0
  70. package/dashboard/src/components/ui/QualityGateBadge.jsx +15 -0
  71. package/dashboard/src/components/ui/SectionTitle.jsx +35 -0
  72. package/dashboard/src/components/ui/SelectInput.jsx +45 -0
  73. package/dashboard/src/components/ui/StatusDot.jsx +51 -0
  74. package/dashboard/src/components/ui/StatusSymbol.jsx +49 -0
  75. package/dashboard/src/components/ui/TabBar.jsx +41 -0
  76. package/dashboard/src/components/ui/TextInput.jsx +42 -0
  77. package/dashboard/src/components/ui/Toast.jsx +117 -0
  78. package/dashboard/src/components/ui/Toggle.jsx +70 -0
  79. package/dashboard/src/components/ui/index.js +29 -0
  80. package/dashboard/src/hooks/useDocumentTitle.js +16 -0
  81. package/dashboard/src/hooks/useFetch.js +50 -0
  82. package/dashboard/src/hooks/useToast.jsx +43 -0
  83. package/dashboard/src/hooks/useWebSocket.js +103 -0
  84. package/dashboard/src/lib/api.js +112 -0
  85. package/dashboard/src/lib/configSchema.js +189 -0
  86. package/dashboard/src/lib/constants.js +22 -0
  87. package/dashboard/src/main.jsx +15 -0
  88. package/dashboard/src/pages/AgentsPage.jsx +191 -0
  89. package/dashboard/src/pages/ConfigPage.jsx +298 -0
  90. package/dashboard/src/pages/HooksPage.jsx +412 -0
  91. package/dashboard/src/pages/IncidentsPage.jsx +135 -0
  92. package/dashboard/src/pages/IntelPage.jsx +193 -0
  93. package/dashboard/src/pages/LiveFeed.jsx +274 -0
  94. package/dashboard/src/pages/MemoryPage.jsx +107 -0
  95. package/dashboard/src/pages/OnboardingPage.jsx +117 -0
  96. package/dashboard/src/pages/Overview.jsx +360 -0
  97. package/dashboard/src/pages/PhaseDetailView.jsx +216 -0
  98. package/dashboard/src/pages/PlanningPage.jsx +181 -0
  99. package/dashboard/src/pages/ProgressPage.jsx +249 -0
  100. package/dashboard/src/pages/ResearchPage.jsx +129 -0
  101. package/dashboard/src/pages/RoadmapPage.jsx +251 -0
  102. package/dashboard/src/pages/SessionsPage.jsx +117 -0
  103. package/dashboard/src/pages/Telemetry.jsx +166 -0
  104. package/dashboard/src/pages/planning/DecisionsTab.jsx +153 -0
  105. package/dashboard/src/pages/planning/FilesTab.jsx +420 -0
  106. package/dashboard/src/pages/planning/MilestoneDetail.jsx +319 -0
  107. package/dashboard/src/pages/planning/MilestonesTab.jsx +151 -0
  108. package/dashboard/src/pages/planning/NotesTab.jsx +251 -0
  109. package/dashboard/src/pages/planning/PhasesTab.jsx +218 -0
  110. package/dashboard/src/pages/planning/QuickTab.jsx +50 -0
  111. package/dashboard/src/pages/planning/ResearchTab.jsx +103 -0
  112. package/dashboard/src/pages/planning/TodosTab.jsx +297 -0
  113. package/dashboard/src/theme/ThemeProvider.jsx +38 -0
  114. package/dashboard/src/theme/tokens.js +17 -0
  115. package/dashboard/tests/components/ConfirmModal.test.jsx +179 -0
  116. package/dashboard/tests/components/ConnectionBanner.test.jsx +37 -0
  117. package/dashboard/tests/components/ErrorBoundary.test.jsx +59 -0
  118. package/dashboard/tests/components/LoadingSkeleton.test.jsx +46 -0
  119. package/dashboard/tests/components/ToastContainer.test.jsx +47 -0
  120. package/dashboard/tests/components/Toggle.test.jsx +61 -0
  121. package/dashboard/tests/hooks/useFetch.test.jsx +77 -0
  122. package/dashboard/tests/hooks/useToast.test.jsx +78 -0
  123. package/dashboard/tests/hooks/useWebSocket.test.jsx +128 -0
  124. package/dashboard/tests/pages/ConfigPage.test.jsx +199 -0
  125. package/dashboard/tests/pages/PlanningPage.test.jsx +119 -0
  126. package/dashboard/tests/pages/planning/FilesTab.test.jsx +198 -0
  127. package/dashboard/tests/pages/planning/NotesTab.test.jsx +178 -0
  128. package/dashboard/tests/pages/planning/TodosTab.test.jsx +188 -0
  129. package/dashboard/tests/performance.test.jsx +46 -0
  130. package/dashboard/tests/routes/config.test.js +98 -0
  131. package/dashboard/tests/routes/health.test.js +40 -0
  132. package/dashboard/tests/routes/planning.test.js +112 -0
  133. package/dashboard/tests/routes/roadmap.test.js +91 -0
  134. package/dashboard/tests/routes/status.test.js +131 -0
  135. package/dashboard/tests/server/planning-reader.test.js +153 -0
  136. package/dashboard/tests/setup.js +7 -0
  137. package/dashboard/vite.config.js +41 -0
  138. package/package.json +55 -40
  139. package/plan-build-run/bin/config-schema.json +1298 -0
  140. package/plugins/pbr/.claude-plugin/plugin.json +1 -1
  141. package/plugins/pbr/CLAUDE.md +19 -0
  142. package/plugins/pbr/UI-CONSISTENCY-GAPS.md +1 -1
  143. package/plugins/pbr/agents/advisor-researcher.md +101 -0
  144. package/plugins/pbr/agents/audit.md +205 -89
  145. package/plugins/pbr/agents/codebase-mapper.md +158 -23
  146. package/plugins/pbr/agents/debugger.md +212 -34
  147. package/plugins/pbr/agents/dev-sync.md +206 -0
  148. package/plugins/pbr/agents/executor.md +717 -39
  149. package/plugins/pbr/agents/general.md +71 -6
  150. package/plugins/pbr/agents/integration-checker.md +146 -30
  151. package/plugins/pbr/agents/intel-updater.md +332 -0
  152. package/plugins/pbr/agents/nyquist-auditor.md +253 -0
  153. package/plugins/pbr/agents/plan-checker.md +265 -65
  154. package/plugins/pbr/agents/planner.md +440 -42
  155. package/plugins/pbr/agents/researcher.md +219 -36
  156. package/plugins/pbr/agents/roadmapper.md +397 -0
  157. package/plugins/pbr/agents/synthesizer.md +166 -26
  158. package/plugins/pbr/agents/ui-checker.md +203 -0
  159. package/plugins/pbr/agents/ui-researcher.md +224 -0
  160. package/plugins/pbr/agents/verifier.md +495 -47
  161. package/plugins/pbr/commands/add-phase.md +75 -0
  162. package/plugins/pbr/commands/add-todo.md +8 -0
  163. package/plugins/pbr/commands/audit-fix.md +5 -0
  164. package/plugins/pbr/commands/audit-milestone.md +8 -0
  165. package/plugins/pbr/commands/autonomous.md +5 -0
  166. package/plugins/pbr/commands/backlog.md +6 -0
  167. package/plugins/pbr/commands/check-todos.md +8 -0
  168. package/plugins/pbr/commands/complete-milestone.md +8 -0
  169. package/plugins/pbr/commands/config.md +1 -1
  170. package/plugins/pbr/commands/discuss-phase.md +6 -0
  171. package/plugins/pbr/commands/do.md +5 -0
  172. package/plugins/pbr/commands/execute-phase.md +6 -0
  173. package/plugins/pbr/commands/fast.md +6 -0
  174. package/plugins/pbr/commands/forensics.md +6 -0
  175. package/plugins/pbr/commands/import.md +1 -1
  176. package/plugins/pbr/commands/insert-phase.md +65 -0
  177. package/plugins/pbr/commands/intel.md +5 -0
  178. package/plugins/pbr/commands/join-discord.md +11 -0
  179. package/plugins/pbr/commands/list-phase-assumptions.md +5 -0
  180. package/plugins/pbr/commands/map-codebase.md +6 -0
  181. package/plugins/pbr/commands/milestone-summary.md +6 -0
  182. package/plugins/pbr/commands/new-milestone.md +8 -0
  183. package/plugins/pbr/commands/new-project.md +6 -0
  184. package/plugins/pbr/commands/pause-work.md +5 -0
  185. package/plugins/pbr/commands/plan-milestone-gaps.md +7 -0
  186. package/plugins/pbr/commands/plan-phase.md +6 -0
  187. package/plugins/pbr/commands/plant-seed.md +6 -0
  188. package/plugins/pbr/commands/profile-user.md +5 -0
  189. package/plugins/pbr/commands/profile.md +5 -0
  190. package/plugins/pbr/commands/progress.md +6 -0
  191. package/plugins/pbr/commands/quick.md +1 -1
  192. package/plugins/pbr/commands/reapply-patches.md +47 -0
  193. package/plugins/pbr/commands/release.md +6 -0
  194. package/plugins/pbr/commands/remove-phase.md +66 -0
  195. package/plugins/pbr/commands/research-phase.md +59 -0
  196. package/plugins/pbr/commands/resume-work.md +5 -0
  197. package/plugins/pbr/commands/seed.md +6 -0
  198. package/plugins/pbr/commands/session-report.md +5 -0
  199. package/plugins/pbr/commands/set-profile.md +6 -0
  200. package/plugins/pbr/commands/settings.md +5 -0
  201. package/plugins/pbr/commands/setup.md +1 -1
  202. package/plugins/pbr/commands/ship.md +5 -0
  203. package/plugins/pbr/commands/stats.md +6 -0
  204. package/plugins/pbr/commands/test.md +5 -0
  205. package/plugins/pbr/commands/thread.md +6 -0
  206. package/plugins/pbr/commands/todo.md +1 -1
  207. package/plugins/pbr/commands/ui-phase.md +5 -0
  208. package/plugins/pbr/commands/ui-review.md +5 -0
  209. package/plugins/pbr/commands/undo.md +5 -0
  210. package/plugins/pbr/commands/update.md +37 -0
  211. package/plugins/pbr/commands/validate-phase.md +5 -0
  212. package/plugins/pbr/commands/verify-work.md +6 -0
  213. package/plugins/pbr/dashboard/package-lock.json +6 -0
  214. package/plugins/pbr/dist/architecture-guard.js +59 -0
  215. package/plugins/pbr/dist/audit-dimensions.js +556 -0
  216. package/plugins/pbr/dist/auto-continue.js +277 -0
  217. package/plugins/pbr/dist/block-skill-self-read.js +124 -0
  218. package/plugins/pbr/dist/check-agent-state-write.js +63 -0
  219. package/plugins/pbr/dist/check-config-change.js +155 -0
  220. package/plugins/pbr/dist/check-cross-plugin-sync.js +93 -0
  221. package/plugins/pbr/dist/check-dangerous-commands.js +193 -0
  222. package/plugins/pbr/dist/check-direct-state-write.js +37 -0
  223. package/plugins/pbr/dist/check-doc-sprawl.js +102 -0
  224. package/plugins/pbr/dist/check-phase-boundary.js +191 -0
  225. package/plugins/pbr/dist/check-plan-format.js +209 -0
  226. package/plugins/pbr/dist/check-read-first.js +345 -0
  227. package/plugins/pbr/dist/check-roadmap-sync.js +507 -0
  228. package/plugins/pbr/dist/check-skill-workflow.js +354 -0
  229. package/plugins/pbr/dist/check-state-sync.js +658 -0
  230. package/plugins/pbr/dist/check-subagent-output.js +396 -0
  231. package/plugins/pbr/dist/check-summary-gate.js +188 -0
  232. package/plugins/pbr/dist/context-bridge.js +425 -0
  233. package/plugins/pbr/dist/context-budget-check.js +442 -0
  234. package/plugins/pbr/dist/context-quality.js +271 -0
  235. package/plugins/pbr/dist/enforce-context-budget.js +138 -0
  236. package/plugins/pbr/dist/enforce-pbr-workflow.js +277 -0
  237. package/plugins/pbr/dist/event-handler.js +202 -0
  238. package/plugins/pbr/dist/event-logger.js +125 -0
  239. package/plugins/pbr/dist/feedback-loop.js +155 -0
  240. package/plugins/pbr/dist/graph-update.js +422 -0
  241. package/plugins/pbr/dist/hook-logger.js +114 -0
  242. package/plugins/pbr/dist/hook-server-client.js +361 -0
  243. package/plugins/pbr/dist/hook-server.js +658 -0
  244. package/plugins/pbr/dist/hooks-schema.json +87 -0
  245. package/plugins/pbr/dist/instructions-loaded.js +173 -0
  246. package/plugins/pbr/dist/intercept-plan-mode.js +81 -0
  247. package/plugins/pbr/dist/log-notification.js +131 -0
  248. package/plugins/pbr/dist/log-subagent.js +349 -0
  249. package/plugins/pbr/dist/log-tool-failure.js +140 -0
  250. package/plugins/pbr/dist/milestone-learnings.js +519 -0
  251. package/plugins/pbr/dist/pbr-tools.js +1961 -0
  252. package/plugins/pbr/dist/post-bash-triage.js +96 -0
  253. package/plugins/pbr/dist/post-compact.js +135 -0
  254. package/plugins/pbr/dist/post-hoc.js +237 -0
  255. package/plugins/pbr/dist/post-write-dispatch.js +243 -0
  256. package/plugins/pbr/dist/post-write-quality.js +208 -0
  257. package/plugins/pbr/dist/pre-bash-dispatch.js +212 -0
  258. package/plugins/pbr/dist/pre-skill-dispatch.js +114 -0
  259. package/plugins/pbr/dist/pre-task-dispatch.js +269 -0
  260. package/plugins/pbr/dist/pre-write-dispatch.js +234 -0
  261. package/plugins/pbr/dist/progress-tracker.js +173 -0
  262. package/plugins/pbr/dist/prompt-guard.js +114 -0
  263. package/plugins/pbr/dist/prompt-routing.js +209 -0
  264. package/plugins/pbr/dist/quick-status.js +179 -0
  265. package/plugins/pbr/dist/record-incident.js +37 -0
  266. package/plugins/pbr/dist/run-hook.js +144 -0
  267. package/plugins/pbr/dist/session-cleanup.js +653 -0
  268. package/plugins/pbr/dist/session-tracker.js +124 -0
  269. package/plugins/pbr/dist/status-line.js +849 -0
  270. package/plugins/pbr/dist/suggest-compact.js +307 -0
  271. package/plugins/pbr/dist/sync-context-to-claude.js +100 -0
  272. package/plugins/pbr/dist/task-completed.js +206 -0
  273. package/plugins/pbr/dist/track-context-budget.js +432 -0
  274. package/plugins/pbr/dist/track-user-gates.js +88 -0
  275. package/plugins/pbr/dist/trust-tracker.js +193 -0
  276. package/plugins/pbr/dist/validate-commit.js +215 -0
  277. package/plugins/pbr/dist/validate-skill-args.js +222 -0
  278. package/plugins/pbr/dist/validate-task.js +271 -0
  279. package/plugins/pbr/dist/worktree-create.js +144 -0
  280. package/plugins/pbr/dist/worktree-remove.js +147 -0
  281. package/plugins/pbr/hooks/hooks.json +143 -60
  282. package/plugins/pbr/references/agent-contracts.md +39 -8
  283. package/plugins/pbr/references/agent-teams.md +3 -3
  284. package/plugins/pbr/references/archive/checkpoints.md +189 -0
  285. package/plugins/pbr/references/archive/context-quality-tiers.md +45 -0
  286. package/plugins/pbr/references/archive/hook-ordering.md +89 -0
  287. package/plugins/pbr/references/archive/limitations.md +106 -0
  288. package/plugins/pbr/references/archive/pbr-rules.md +194 -0
  289. package/plugins/pbr/references/archive/pbr-tools-cli.md +415 -0
  290. package/plugins/pbr/references/archive/pretooluse-jsonl-behavior.md +58 -0
  291. package/plugins/pbr/references/archive/signal-files.md +41 -0
  292. package/plugins/pbr/references/archive/tmux-setup.md +288 -0
  293. package/plugins/pbr/references/archive/verification-matrix.md +34 -0
  294. package/plugins/pbr/references/archive/verification-patterns.md +277 -0
  295. package/plugins/pbr/references/archive/worktree-sparse-checkout.md +86 -0
  296. package/plugins/pbr/references/checkpoints.md +723 -104
  297. package/plugins/pbr/references/config-reference.md +376 -10
  298. package/plugins/pbr/references/continuation-format.md +1 -0
  299. package/plugins/pbr/references/decimal-phase-calculation.md +65 -0
  300. package/plugins/pbr/references/deviation-rules.md +12 -0
  301. package/plugins/pbr/references/git-integration.md +110 -27
  302. package/plugins/pbr/references/git-planning-commit.md +35 -0
  303. package/plugins/pbr/references/model-profile-resolution.md +34 -0
  304. package/plugins/pbr/references/model-profiles.md +90 -7
  305. package/plugins/pbr/references/model-selection.md +1 -1
  306. package/plugins/pbr/references/node-repair.md +48 -0
  307. package/plugins/pbr/references/plan-authoring.md +65 -0
  308. package/plugins/pbr/references/plan-format.md +161 -10
  309. package/plugins/pbr/references/questioning.md +138 -49
  310. package/plugins/pbr/references/reading-verification.md +4 -4
  311. package/plugins/pbr/references/tdd.md +263 -0
  312. package/plugins/pbr/references/ui-brand.md +449 -0
  313. package/plugins/pbr/references/verification-overrides.md +39 -0
  314. package/plugins/pbr/references/verification-patterns.md +529 -113
  315. package/plugins/pbr/scripts/architecture-guard.js +59 -0
  316. package/plugins/pbr/scripts/audit-checks/behavioral-compliance.js +2098 -0
  317. package/plugins/pbr/scripts/audit-checks/error-analysis.js +989 -0
  318. package/plugins/pbr/scripts/audit-checks/feature-verification.js +723 -0
  319. package/plugins/pbr/scripts/audit-checks/index.js +433 -0
  320. package/plugins/pbr/scripts/audit-checks/infrastructure.js +816 -0
  321. package/plugins/pbr/scripts/audit-checks/quality-metrics.js +452 -0
  322. package/plugins/pbr/scripts/audit-checks/session-quality.js +980 -0
  323. package/plugins/pbr/scripts/audit-checks/si-agent-hook-config-checks.js +396 -0
  324. package/plugins/pbr/scripts/audit-checks/si-cross-cutting-checks.js +272 -0
  325. package/plugins/pbr/scripts/audit-checks/si-skill-checks.js +424 -0
  326. package/plugins/pbr/scripts/audit-checks/workflow-compliance.js +1175 -0
  327. package/plugins/pbr/scripts/audit-dimensions.js +556 -0
  328. package/plugins/pbr/scripts/auto-continue.js +192 -31
  329. package/plugins/pbr/scripts/block-skill-self-read.js +124 -0
  330. package/plugins/pbr/scripts/check-agent-state-write.js +63 -0
  331. package/plugins/pbr/scripts/check-config-change.js +155 -0
  332. package/plugins/pbr/scripts/check-cross-plugin-sync.js +93 -0
  333. package/plugins/pbr/scripts/check-dangerous-commands.js +18 -5
  334. package/plugins/pbr/scripts/check-direct-state-write.js +37 -0
  335. package/plugins/pbr/scripts/check-phase-boundary.js +3 -8
  336. package/plugins/pbr/scripts/check-plan-format.js +135 -278
  337. package/plugins/pbr/scripts/check-read-first.js +345 -0
  338. package/plugins/pbr/scripts/check-roadmap-sync.js +182 -21
  339. package/plugins/pbr/scripts/check-skill-workflow.js +24 -27
  340. package/plugins/pbr/scripts/check-state-sync.js +339 -215
  341. package/plugins/pbr/scripts/check-subagent-output.js +281 -275
  342. package/plugins/pbr/scripts/check-summary-gate.js +5 -15
  343. package/plugins/pbr/scripts/config-schema.json +1134 -95
  344. package/plugins/pbr/scripts/context-bridge.js +425 -0
  345. package/plugins/pbr/scripts/context-budget-check.js +169 -14
  346. package/plugins/pbr/scripts/context-quality.js +271 -0
  347. package/plugins/pbr/scripts/enforce-context-budget.js +138 -0
  348. package/plugins/pbr/scripts/enforce-pbr-workflow.js +277 -0
  349. package/plugins/pbr/scripts/event-handler.js +127 -87
  350. package/plugins/pbr/scripts/event-logger.js +58 -25
  351. package/plugins/pbr/scripts/feedback-loop.js +155 -0
  352. package/plugins/pbr/scripts/graph-update.js +422 -0
  353. package/plugins/pbr/scripts/hook-logger.js +69 -35
  354. package/plugins/pbr/scripts/hook-server-client.js +361 -0
  355. package/plugins/pbr/scripts/hook-server.js +658 -0
  356. package/plugins/pbr/scripts/hooks-schema.json +13 -5
  357. package/plugins/pbr/scripts/instructions-loaded.js +173 -0
  358. package/plugins/pbr/scripts/intent-router.cjs +147 -0
  359. package/plugins/pbr/scripts/intercept-plan-mode.js +52 -18
  360. package/plugins/pbr/scripts/lib/alternatives.js +203 -0
  361. package/plugins/pbr/scripts/lib/audit.js +65 -0
  362. package/plugins/pbr/scripts/lib/auto-cleanup.js +221 -0
  363. package/plugins/pbr/scripts/lib/auto-verify.js +103 -0
  364. package/plugins/pbr/scripts/lib/build.js +719 -0
  365. package/plugins/pbr/scripts/lib/ci-fix-loop.js +228 -0
  366. package/plugins/pbr/scripts/lib/commands.js +483 -0
  367. package/plugins/pbr/scripts/lib/compound.js +216 -0
  368. package/plugins/pbr/scripts/lib/config.js +1308 -0
  369. package/plugins/pbr/scripts/lib/context.js +254 -0
  370. package/plugins/pbr/scripts/lib/contextual-help.js +183 -0
  371. package/plugins/pbr/scripts/lib/convention-detector.js +413 -0
  372. package/plugins/pbr/scripts/lib/core.js +1569 -0
  373. package/plugins/pbr/scripts/lib/dashboard-launch.js +364 -0
  374. package/plugins/pbr/scripts/lib/data-hygiene.js +179 -0
  375. package/plugins/pbr/scripts/lib/decision-extraction.js +183 -0
  376. package/plugins/pbr/scripts/lib/decisions.js +194 -0
  377. package/plugins/pbr/scripts/lib/dependency-break.js +147 -0
  378. package/plugins/pbr/scripts/lib/format-validators.js +1025 -0
  379. package/plugins/pbr/scripts/lib/frontmatter.js +302 -0
  380. package/plugins/pbr/scripts/lib/gates/advisories.js +129 -0
  381. package/plugins/pbr/scripts/lib/gates/build-dependency.js +115 -0
  382. package/plugins/pbr/scripts/lib/gates/build-executor.js +104 -0
  383. package/plugins/pbr/scripts/lib/gates/doc-existence.js +46 -0
  384. package/plugins/pbr/scripts/lib/gates/helpers.js +93 -0
  385. package/plugins/pbr/scripts/lib/gates/inline-execution.js +185 -0
  386. package/plugins/pbr/scripts/lib/gates/milestone-complete.js +136 -0
  387. package/plugins/pbr/scripts/lib/gates/milestone-summary.js +119 -0
  388. package/plugins/pbr/scripts/lib/gates/multi-phase-loader.js +147 -0
  389. package/plugins/pbr/scripts/lib/gates/plan-executor.js +36 -0
  390. package/plugins/pbr/scripts/lib/gates/plan-validation.js +114 -0
  391. package/plugins/pbr/scripts/lib/gates/quick-executor.js +76 -0
  392. package/plugins/pbr/scripts/lib/gates/review-planner.js +61 -0
  393. package/plugins/pbr/scripts/lib/gates/review-verifier.js +69 -0
  394. package/plugins/pbr/scripts/lib/gates/rich-agent-context.js +137 -0
  395. package/plugins/pbr/scripts/lib/gates/user-confirmation.js +93 -0
  396. package/plugins/pbr/scripts/lib/graph-cli.js +89 -0
  397. package/plugins/pbr/scripts/lib/graph.js +553 -0
  398. package/plugins/pbr/scripts/lib/health-checks.js +107 -0
  399. package/plugins/pbr/scripts/lib/health-phase06.js +120 -0
  400. package/plugins/pbr/scripts/lib/health.js +132 -0
  401. package/plugins/pbr/scripts/lib/help.js +100 -0
  402. package/plugins/pbr/scripts/lib/history.js +150 -0
  403. package/plugins/pbr/scripts/lib/impact-analysis.js +319 -0
  404. package/plugins/pbr/scripts/lib/incidents.js +190 -0
  405. package/plugins/pbr/scripts/lib/init.js +643 -0
  406. package/plugins/pbr/scripts/lib/insights-parser.js +320 -0
  407. package/plugins/pbr/scripts/lib/intel.js +653 -0
  408. package/plugins/pbr/scripts/lib/learnings.js +511 -0
  409. package/plugins/pbr/scripts/lib/migrate.js +298 -0
  410. package/plugins/pbr/scripts/lib/milestone.js +306 -0
  411. package/plugins/pbr/scripts/lib/negative-knowledge.js +194 -0
  412. package/plugins/pbr/scripts/lib/notification-throttle.js +141 -0
  413. package/plugins/pbr/scripts/lib/onboarding-generator.js +288 -0
  414. package/plugins/pbr/scripts/lib/parse-args.js +134 -0
  415. package/plugins/pbr/scripts/lib/pattern-routing.js +55 -0
  416. package/plugins/pbr/scripts/lib/patterns.js +272 -0
  417. package/plugins/pbr/scripts/lib/perf.js +190 -0
  418. package/plugins/pbr/scripts/lib/phase.js +1025 -0
  419. package/plugins/pbr/scripts/lib/pid-lock.js +154 -0
  420. package/plugins/pbr/scripts/lib/post-hoc.js +160 -0
  421. package/plugins/pbr/scripts/lib/pre-commit-checks.js +220 -0
  422. package/plugins/pbr/scripts/lib/pre-research.js +126 -0
  423. package/plugins/pbr/scripts/lib/preview.js +174 -0
  424. package/plugins/pbr/scripts/lib/progress-visualization.js +296 -0
  425. package/plugins/pbr/scripts/lib/quick-init.js +131 -0
  426. package/plugins/pbr/scripts/lib/reference.js +236 -0
  427. package/plugins/pbr/scripts/lib/requirements.js +153 -0
  428. package/plugins/pbr/scripts/lib/resolve-root.js +66 -0
  429. package/plugins/pbr/scripts/lib/reverse-spec.js +259 -0
  430. package/plugins/pbr/scripts/lib/roadmap.js +1089 -0
  431. package/plugins/pbr/scripts/lib/security-scan.js +200 -0
  432. package/plugins/pbr/scripts/lib/session-briefing.js +895 -0
  433. package/plugins/pbr/scripts/lib/skill-section.js +99 -0
  434. package/plugins/pbr/scripts/lib/smart-next-task.js +198 -0
  435. package/plugins/pbr/scripts/lib/snapshot-manager.js +232 -0
  436. package/plugins/pbr/scripts/lib/spec-diff.js +209 -0
  437. package/plugins/pbr/scripts/lib/spec-engine.js +189 -0
  438. package/plugins/pbr/scripts/lib/spot-check.js +539 -0
  439. package/plugins/pbr/scripts/lib/state-queue.js +171 -0
  440. package/plugins/pbr/scripts/lib/state.js +1082 -0
  441. package/plugins/pbr/scripts/lib/status-render.js +511 -0
  442. package/plugins/pbr/scripts/lib/step-verify.js +149 -0
  443. package/plugins/pbr/scripts/lib/subagent-validators.js +1059 -0
  444. package/plugins/pbr/scripts/lib/suggest-next.js +435 -0
  445. package/plugins/pbr/scripts/lib/tech-debt-scanner.js +116 -0
  446. package/plugins/pbr/scripts/lib/templates.js +362 -0
  447. package/plugins/pbr/scripts/lib/test-selection.js +163 -0
  448. package/plugins/pbr/scripts/lib/todo.js +300 -0
  449. package/plugins/pbr/scripts/lib/verify.js +1483 -0
  450. package/plugins/pbr/scripts/log-notification.js +131 -0
  451. package/plugins/pbr/scripts/log-subagent.js +203 -18
  452. package/plugins/pbr/scripts/log-tool-failure.js +60 -8
  453. package/plugins/pbr/scripts/milestone-learnings.js +519 -0
  454. package/plugins/pbr/scripts/package.json +1 -1
  455. package/plugins/pbr/scripts/pbr-tools.js +1754 -1171
  456. package/plugins/pbr/scripts/post-bash-triage.js +96 -0
  457. package/plugins/pbr/scripts/post-compact.js +135 -0
  458. package/plugins/pbr/scripts/post-hoc.js +237 -0
  459. package/plugins/pbr/scripts/post-write-dispatch.js +201 -31
  460. package/plugins/pbr/scripts/post-write-quality.js +4 -3
  461. package/plugins/pbr/scripts/pre-bash-dispatch.js +147 -51
  462. package/plugins/pbr/scripts/pre-skill-dispatch.js +114 -0
  463. package/plugins/pbr/scripts/pre-task-dispatch.js +269 -0
  464. package/plugins/pbr/scripts/pre-write-dispatch.js +170 -73
  465. package/plugins/pbr/scripts/progress-tracker.js +122 -310
  466. package/plugins/pbr/scripts/prompt-guard.js +114 -0
  467. package/plugins/pbr/scripts/prompt-routing.js +209 -0
  468. package/plugins/pbr/scripts/quick-status.js +179 -0
  469. package/plugins/pbr/scripts/record-incident.js +37 -0
  470. package/plugins/pbr/scripts/risk-classifier.cjs +123 -0
  471. package/plugins/pbr/scripts/run-hook.js +62 -10
  472. package/plugins/pbr/scripts/session-cleanup.js +428 -29
  473. package/plugins/pbr/scripts/session-tracker.js +124 -0
  474. package/plugins/pbr/scripts/status-line.js +593 -32
  475. package/plugins/pbr/scripts/suggest-compact.js +201 -13
  476. package/plugins/pbr/scripts/sync-context-to-claude.js +100 -0
  477. package/plugins/pbr/scripts/task-completed.js +165 -4
  478. package/plugins/pbr/scripts/test/config.test.js +126 -0
  479. package/plugins/pbr/scripts/test/cross-platform.test.js +131 -0
  480. package/plugins/pbr/scripts/test/fixtures/config.json +20 -0
  481. package/plugins/pbr/scripts/test/fixtures/plan.md +54 -0
  482. package/plugins/pbr/scripts/test/fixtures/project.md +30 -0
  483. package/plugins/pbr/scripts/test/fixtures/roadmap.md +55 -0
  484. package/plugins/pbr/scripts/test/fixtures/state.md +60 -0
  485. package/plugins/pbr/scripts/test/fixtures/summary.md +35 -0
  486. package/plugins/pbr/scripts/test/fixtures.test.js +184 -0
  487. package/plugins/pbr/scripts/test/phase.test.js +142 -0
  488. package/plugins/pbr/scripts/test/roadmap.test.js +96 -0
  489. package/plugins/pbr/scripts/test/state.test.js +155 -0
  490. package/plugins/pbr/scripts/track-context-budget.js +368 -99
  491. package/plugins/pbr/scripts/track-user-gates.js +88 -0
  492. package/plugins/pbr/scripts/trust-tracker.js +193 -0
  493. package/plugins/pbr/scripts/validate-commit.js +41 -26
  494. package/plugins/pbr/scripts/validate-skill-args.js +87 -15
  495. package/plugins/pbr/scripts/validate-task.js +83 -627
  496. package/plugins/pbr/scripts/worktree-create.js +144 -0
  497. package/plugins/pbr/scripts/worktree-remove.js +147 -0
  498. package/plugins/pbr/skills/audit/SKILL.md +195 -24
  499. package/plugins/pbr/skills/audit-fix/SKILL.md +326 -0
  500. package/plugins/pbr/skills/autonomous/SKILL.md +545 -0
  501. package/plugins/pbr/skills/backlog/SKILL.md +56 -0
  502. package/plugins/pbr/skills/begin/SKILL.md +508 -153
  503. package/plugins/pbr/skills/begin/templates/STATE.md.tmpl +1 -2
  504. package/plugins/pbr/skills/begin/templates/config.json.tmpl +411 -36
  505. package/plugins/pbr/skills/begin/templates/researcher-prompt.md.tmpl +28 -0
  506. package/plugins/pbr/skills/begin/templates/roadmap-prompt.md.tmpl +28 -3
  507. package/plugins/pbr/skills/begin/templates/synthesis-prompt.md.tmpl +33 -5
  508. package/plugins/pbr/skills/build/SKILL.md +1040 -354
  509. package/plugins/pbr/skills/build/templates/continuation-prompt.md.tmpl +26 -0
  510. package/plugins/pbr/skills/build/templates/executor-prompt.md.tmpl +77 -0
  511. package/plugins/pbr/skills/build/templates/inline-verifier-prompt.md.tmpl +33 -0
  512. package/plugins/pbr/skills/config/SKILL.md +112 -9
  513. package/plugins/pbr/skills/continue/SKILL.md +113 -33
  514. package/plugins/pbr/skills/dashboard/SKILL.md +21 -9
  515. package/plugins/pbr/skills/debug/SKILL.md +70 -12
  516. package/plugins/pbr/skills/debug/templates/continuation-prompt.md.tmpl +12 -1
  517. package/plugins/pbr/skills/debug/templates/initial-investigation-prompt.md.tmpl +12 -5
  518. package/plugins/pbr/skills/discuss/SKILL.md +206 -25
  519. package/plugins/pbr/skills/discuss/templates/CONTEXT.md.tmpl +21 -1
  520. package/plugins/pbr/skills/do/SKILL.md +119 -24
  521. package/plugins/pbr/skills/explore/SKILL.md +95 -20
  522. package/plugins/pbr/skills/fast/SKILL.md +94 -0
  523. package/plugins/pbr/skills/forensics/SKILL.md +144 -0
  524. package/plugins/pbr/skills/health/SKILL.md +35 -117
  525. package/plugins/pbr/skills/help/SKILL.md +84 -101
  526. package/plugins/pbr/skills/import/SKILL.md +332 -13
  527. package/plugins/pbr/skills/intel/SKILL.md +131 -0
  528. package/plugins/pbr/skills/list-phase-assumptions/SKILL.md +231 -0
  529. package/plugins/pbr/skills/milestone/SKILL.md +421 -263
  530. package/plugins/pbr/skills/milestone/templates/audit-output.md.tmpl +76 -0
  531. package/plugins/pbr/skills/milestone/templates/complete-output.md.tmpl +32 -0
  532. package/plugins/pbr/skills/milestone/templates/edge-cases.md +54 -0
  533. package/plugins/pbr/skills/milestone/templates/gaps-output.md.tmpl +25 -0
  534. package/plugins/pbr/skills/milestone/templates/integration-checker-prompt.md.tmpl +25 -0
  535. package/plugins/pbr/skills/milestone/templates/new-output.md.tmpl +29 -0
  536. package/plugins/pbr/skills/milestone-summary/SKILL.md +86 -0
  537. package/plugins/pbr/skills/note/SKILL.md +20 -4
  538. package/plugins/pbr/skills/pause/SKILL.md +54 -14
  539. package/plugins/pbr/skills/pause/templates/continue-here.md.tmpl +33 -52
  540. package/plugins/pbr/skills/plan/SKILL.md +526 -280
  541. package/plugins/pbr/skills/plan/templates/checker-prompt.md.tmpl +5 -2
  542. package/plugins/pbr/skills/plan/templates/completion-output.md.tmpl +27 -0
  543. package/plugins/pbr/skills/plan/templates/planner-prompt.md.tmpl +27 -1
  544. package/plugins/pbr/skills/plan/templates/revision-prompt.md.tmpl +21 -5
  545. package/plugins/pbr/skills/profile/SKILL.md +185 -0
  546. package/plugins/pbr/skills/profile-user/SKILL.md +227 -0
  547. package/plugins/pbr/skills/quick/SKILL.md +435 -100
  548. package/plugins/pbr/skills/release/SKILL.md +206 -0
  549. package/plugins/pbr/skills/resume/SKILL.md +170 -46
  550. package/plugins/pbr/skills/review/SKILL.md +217 -164
  551. package/plugins/pbr/skills/review/templates/verifier-prompt.md.tmpl +7 -0
  552. package/plugins/pbr/skills/scan/SKILL.md +152 -106
  553. package/plugins/pbr/skills/scan/templates/mapper-prompt.md.tmpl +5 -56
  554. package/plugins/pbr/skills/seed/SKILL.md +87 -0
  555. package/plugins/pbr/skills/session-report/SKILL.md +130 -0
  556. package/plugins/pbr/skills/setup/SKILL.md +150 -202
  557. package/plugins/pbr/skills/shared/agent-context-enrichment.md +21 -0
  558. package/plugins/pbr/skills/shared/agent-type-resolution.md +32 -0
  559. package/plugins/pbr/skills/shared/commit-planning-docs.md +8 -0
  560. package/plugins/pbr/skills/shared/context-budget.md +66 -1
  561. package/plugins/pbr/skills/shared/context-loader-task.md +18 -11
  562. package/plugins/pbr/skills/shared/digest-select.md +2 -2
  563. package/plugins/pbr/skills/shared/domain-probes.md +1 -1
  564. package/plugins/pbr/skills/shared/error-reporting.md +38 -60
  565. package/plugins/pbr/skills/shared/gate-prompts.md +4 -2
  566. package/plugins/pbr/skills/shared/memory-capture.md +48 -0
  567. package/plugins/pbr/skills/shared/phase-argument-parsing.md +4 -4
  568. package/plugins/pbr/skills/shared/revision-loop.md +24 -6
  569. package/plugins/pbr/skills/shared/state-update.md +49 -56
  570. package/plugins/pbr/skills/shared/universal-anti-patterns.md +27 -4
  571. package/plugins/pbr/skills/ship/SKILL.md +155 -0
  572. package/plugins/pbr/skills/stats/SKILL.md +80 -0
  573. package/plugins/pbr/skills/status/SKILL.md +185 -119
  574. package/plugins/pbr/skills/test/SKILL.md +254 -0
  575. package/plugins/pbr/skills/thread/SKILL.md +73 -0
  576. package/plugins/pbr/skills/todo/SKILL.md +28 -72
  577. package/plugins/pbr/skills/ui-phase/SKILL.md +180 -0
  578. package/plugins/pbr/skills/ui-review/SKILL.md +206 -0
  579. package/plugins/pbr/skills/undo/SKILL.md +221 -0
  580. package/plugins/pbr/skills/validate-phase/SKILL.md +362 -0
  581. package/plugins/pbr/templates/CONTEXT.md.tmpl +45 -20
  582. package/plugins/pbr/templates/DISCOVERY.md.tmpl +29 -0
  583. package/plugins/pbr/templates/DISCUSSION-LOG.md.tmpl +49 -0
  584. package/plugins/pbr/templates/HANDOFF.json.tmpl +30 -0
  585. package/plugins/pbr/templates/INTEGRATION-REPORT.md.tmpl +18 -2
  586. package/plugins/pbr/templates/MILESTONE-AUDIT.md.tmpl +44 -0
  587. package/plugins/pbr/templates/PROJECT.md.tmpl +126 -0
  588. package/plugins/pbr/templates/REQUIREMENTS.md.tmpl +96 -0
  589. package/plugins/pbr/templates/RETROSPECTIVE.md.tmpl +43 -0
  590. package/plugins/pbr/templates/ROADMAP.md.tmpl +108 -14
  591. package/plugins/pbr/templates/SUMMARY-complex.md.tmpl +133 -0
  592. package/plugins/pbr/templates/SUMMARY-minimal.md.tmpl +55 -0
  593. package/plugins/pbr/templates/SUMMARY.md.tmpl +21 -0
  594. package/plugins/pbr/templates/UAT.md.tmpl +94 -0
  595. package/plugins/pbr/templates/UI-SPEC.md.tmpl +144 -0
  596. package/plugins/pbr/templates/VALIDATION.md.tmpl +94 -0
  597. package/plugins/pbr/templates/VERIFICATION-DETAIL.md.tmpl +49 -13
  598. package/plugins/pbr/templates/project-CONTEXT.md.tmpl +59 -0
  599. package/plugins/pbr/templates/research-outputs/ARCHITECTURE.md.tmpl +91 -0
  600. package/plugins/pbr/templates/research-outputs/FEATURES.md.tmpl +64 -0
  601. package/plugins/pbr/templates/research-outputs/PITFALLS.md.tmpl +50 -0
  602. package/plugins/pbr/templates/research-outputs/STACK.md.tmpl +63 -0
  603. package/plugins/pbr/templates/research-outputs/SUMMARY.md.tmpl +98 -0
  604. package/scripts/build-hooks.js +61 -0
  605. package/scripts/check-ci.js +100 -0
  606. package/scripts/clean-changelog.js +364 -0
  607. package/scripts/generate-derivatives.js +581 -0
  608. package/scripts/posttest.js +93 -0
  609. package/scripts/release.js +262 -0
  610. package/scripts/run-tests.cjs +29 -0
  611. package/scripts/test-wrapper.js +43 -0
  612. package/dashboard/bin/cli.js +0 -25
  613. package/dashboard/public/css/layout.css +0 -704
  614. package/dashboard/public/css/status-colors.css +0 -98
  615. package/dashboard/public/css/tokens.css +0 -59
  616. package/dashboard/public/js/htmx-title.js +0 -5
  617. package/dashboard/public/js/sidebar-toggle.js +0 -34
  618. package/dashboard/public/js/sse-client.js +0 -100
  619. package/dashboard/public/js/theme-toggle.js +0 -46
  620. package/dashboard/src/app.js +0 -91
  621. package/dashboard/src/middleware/current-phase.js +0 -24
  622. package/dashboard/src/middleware/errorHandler.js +0 -52
  623. package/dashboard/src/middleware/notFoundHandler.js +0 -9
  624. package/dashboard/src/repositories/planning.repository.js +0 -130
  625. package/dashboard/src/routes/events.routes.js +0 -45
  626. package/dashboard/src/routes/index.routes.js +0 -35
  627. package/dashboard/src/routes/pages.routes.js +0 -426
  628. package/dashboard/src/server.js +0 -42
  629. package/dashboard/src/services/analytics.service.js +0 -141
  630. package/dashboard/src/services/dashboard.service.js +0 -309
  631. package/dashboard/src/services/milestone.service.js +0 -222
  632. package/dashboard/src/services/notes.service.js +0 -50
  633. package/dashboard/src/services/phase.service.js +0 -232
  634. package/dashboard/src/services/project.service.js +0 -57
  635. package/dashboard/src/services/roadmap.service.js +0 -258
  636. package/dashboard/src/services/sse.service.js +0 -58
  637. package/dashboard/src/services/todo.service.js +0 -272
  638. package/dashboard/src/services/watcher.service.js +0 -48
  639. package/dashboard/src/utils/cache.js +0 -55
  640. package/dashboard/src/views/analytics.ejs +0 -5
  641. package/dashboard/src/views/coming-soon.ejs +0 -11
  642. package/dashboard/src/views/dependencies.ejs +0 -5
  643. package/dashboard/src/views/error.ejs +0 -20
  644. package/dashboard/src/views/index.ejs +0 -5
  645. package/dashboard/src/views/milestone-detail.ejs +0 -5
  646. package/dashboard/src/views/milestones.ejs +0 -5
  647. package/dashboard/src/views/notes.ejs +0 -5
  648. package/dashboard/src/views/partials/analytics-content.ejs +0 -90
  649. package/dashboard/src/views/partials/breadcrumbs.ejs +0 -14
  650. package/dashboard/src/views/partials/dashboard-content.ejs +0 -84
  651. package/dashboard/src/views/partials/dependencies-content.ejs +0 -48
  652. package/dashboard/src/views/partials/empty-state.ejs +0 -7
  653. package/dashboard/src/views/partials/footer.ejs +0 -3
  654. package/dashboard/src/views/partials/head.ejs +0 -30
  655. package/dashboard/src/views/partials/header.ejs +0 -21
  656. package/dashboard/src/views/partials/layout-bottom.ejs +0 -43
  657. package/dashboard/src/views/partials/layout-top.ejs +0 -16
  658. package/dashboard/src/views/partials/milestone-detail-content.ejs +0 -20
  659. package/dashboard/src/views/partials/milestones-content.ejs +0 -88
  660. package/dashboard/src/views/partials/notes-content.ejs +0 -23
  661. package/dashboard/src/views/partials/phase-content.ejs +0 -193
  662. package/dashboard/src/views/partials/phase-doc-content.ejs +0 -38
  663. package/dashboard/src/views/partials/phases-content.ejs +0 -124
  664. package/dashboard/src/views/partials/roadmap-content.ejs +0 -180
  665. package/dashboard/src/views/partials/sidebar.ejs +0 -99
  666. package/dashboard/src/views/partials/todo-create-content.ejs +0 -54
  667. package/dashboard/src/views/partials/todo-detail-content.ejs +0 -42
  668. package/dashboard/src/views/partials/todos-content.ejs +0 -97
  669. package/dashboard/src/views/phase-detail.ejs +0 -5
  670. package/dashboard/src/views/phase-doc.ejs +0 -5
  671. package/dashboard/src/views/phases.ejs +0 -5
  672. package/dashboard/src/views/roadmap.ejs +0 -5
  673. package/dashboard/src/views/todo-create.ejs +0 -5
  674. package/dashboard/src/views/todo-detail.ejs +0 -5
  675. package/dashboard/src/views/todos.ejs +0 -5
  676. package/plugins/copilot-pbr/CHANGELOG.md +0 -19
  677. package/plugins/copilot-pbr/README.md +0 -139
  678. package/plugins/copilot-pbr/agents/audit.agent.md +0 -113
  679. package/plugins/copilot-pbr/agents/codebase-mapper.agent.md +0 -151
  680. package/plugins/copilot-pbr/agents/debugger.agent.md +0 -182
  681. package/plugins/copilot-pbr/agents/executor.agent.md +0 -267
  682. package/plugins/copilot-pbr/agents/general.agent.md +0 -88
  683. package/plugins/copilot-pbr/agents/integration-checker.agent.md +0 -119
  684. package/plugins/copilot-pbr/agents/plan-checker.agent.md +0 -208
  685. package/plugins/copilot-pbr/agents/planner.agent.md +0 -238
  686. package/plugins/copilot-pbr/agents/researcher.agent.md +0 -186
  687. package/plugins/copilot-pbr/agents/synthesizer.agent.md +0 -126
  688. package/plugins/copilot-pbr/agents/verifier.agent.md +0 -228
  689. package/plugins/copilot-pbr/hooks/hooks.json +0 -156
  690. package/plugins/copilot-pbr/plugin.json +0 -30
  691. package/plugins/copilot-pbr/references/agent-anti-patterns.md +0 -25
  692. package/plugins/copilot-pbr/references/agent-contracts.md +0 -297
  693. package/plugins/copilot-pbr/references/agent-interactions.md +0 -135
  694. package/plugins/copilot-pbr/references/agent-teams.md +0 -55
  695. package/plugins/copilot-pbr/references/checkpoints.md +0 -158
  696. package/plugins/copilot-pbr/references/common-bug-patterns.md +0 -14
  697. package/plugins/copilot-pbr/references/config-reference.md +0 -442
  698. package/plugins/copilot-pbr/references/continuation-format.md +0 -213
  699. package/plugins/copilot-pbr/references/deviation-rules.md +0 -113
  700. package/plugins/copilot-pbr/references/git-integration.md +0 -227
  701. package/plugins/copilot-pbr/references/integration-patterns.md +0 -118
  702. package/plugins/copilot-pbr/references/model-profiles.md +0 -100
  703. package/plugins/copilot-pbr/references/model-selection.md +0 -32
  704. package/plugins/copilot-pbr/references/pbr-rules.md +0 -195
  705. package/plugins/copilot-pbr/references/pbr-tools-cli.md +0 -285
  706. package/plugins/copilot-pbr/references/plan-authoring.md +0 -182
  707. package/plugins/copilot-pbr/references/plan-format.md +0 -288
  708. package/plugins/copilot-pbr/references/planning-config.md +0 -214
  709. package/plugins/copilot-pbr/references/questioning.md +0 -215
  710. package/plugins/copilot-pbr/references/reading-verification.md +0 -128
  711. package/plugins/copilot-pbr/references/stub-patterns.md +0 -161
  712. package/plugins/copilot-pbr/references/subagent-coordination.md +0 -120
  713. package/plugins/copilot-pbr/references/ui-formatting.md +0 -444
  714. package/plugins/copilot-pbr/references/verification-patterns.md +0 -199
  715. package/plugins/copilot-pbr/references/wave-execution.md +0 -96
  716. package/plugins/copilot-pbr/rules/pbr-workflow.mdc +0 -48
  717. package/plugins/copilot-pbr/setup.ps1 +0 -93
  718. package/plugins/copilot-pbr/setup.sh +0 -93
  719. package/plugins/copilot-pbr/skills/audit/SKILL.md +0 -330
  720. package/plugins/copilot-pbr/skills/begin/SKILL.md +0 -589
  721. package/plugins/copilot-pbr/skills/begin/templates/PROJECT.md.tmpl +0 -34
  722. package/plugins/copilot-pbr/skills/begin/templates/REQUIREMENTS.md.tmpl +0 -19
  723. package/plugins/copilot-pbr/skills/begin/templates/STATE.md.tmpl +0 -50
  724. package/plugins/copilot-pbr/skills/begin/templates/config.json.tmpl +0 -64
  725. package/plugins/copilot-pbr/skills/begin/templates/researcher-prompt.md.tmpl +0 -20
  726. package/plugins/copilot-pbr/skills/begin/templates/roadmap-prompt.md.tmpl +0 -31
  727. package/plugins/copilot-pbr/skills/begin/templates/synthesis-prompt.md.tmpl +0 -17
  728. package/plugins/copilot-pbr/skills/build/SKILL.md +0 -960
  729. package/plugins/copilot-pbr/skills/config/SKILL.md +0 -250
  730. package/plugins/copilot-pbr/skills/continue/SKILL.md +0 -159
  731. package/plugins/copilot-pbr/skills/dashboard/SKILL.md +0 -43
  732. package/plugins/copilot-pbr/skills/debug/SKILL.md +0 -508
  733. package/plugins/copilot-pbr/skills/debug/templates/continuation-prompt.md.tmpl +0 -17
  734. package/plugins/copilot-pbr/skills/debug/templates/initial-investigation-prompt.md.tmpl +0 -28
  735. package/plugins/copilot-pbr/skills/discuss/SKILL.md +0 -353
  736. package/plugins/copilot-pbr/skills/discuss/templates/CONTEXT.md.tmpl +0 -62
  737. package/plugins/copilot-pbr/skills/discuss/templates/decision-categories.md +0 -10
  738. package/plugins/copilot-pbr/skills/do/SKILL.md +0 -66
  739. package/plugins/copilot-pbr/skills/explore/SKILL.md +0 -373
  740. package/plugins/copilot-pbr/skills/health/SKILL.md +0 -283
  741. package/plugins/copilot-pbr/skills/health/templates/check-pattern.md.tmpl +0 -31
  742. package/plugins/copilot-pbr/skills/health/templates/output-format.md.tmpl +0 -64
  743. package/plugins/copilot-pbr/skills/help/SKILL.md +0 -170
  744. package/plugins/copilot-pbr/skills/import/SKILL.md +0 -502
  745. package/plugins/copilot-pbr/skills/milestone/SKILL.md +0 -745
  746. package/plugins/copilot-pbr/skills/milestone/templates/audit-report.md.tmpl +0 -49
  747. package/plugins/copilot-pbr/skills/milestone/templates/stats-file.md.tmpl +0 -31
  748. package/plugins/copilot-pbr/skills/note/SKILL.md +0 -213
  749. package/plugins/copilot-pbr/skills/pause/SKILL.md +0 -247
  750. package/plugins/copilot-pbr/skills/pause/templates/continue-here.md.tmpl +0 -72
  751. package/plugins/copilot-pbr/skills/plan/SKILL.md +0 -662
  752. package/plugins/copilot-pbr/skills/plan/templates/checker-prompt.md.tmpl +0 -22
  753. package/plugins/copilot-pbr/skills/plan/templates/gap-closure-prompt.md.tmpl +0 -33
  754. package/plugins/copilot-pbr/skills/plan/templates/planner-prompt.md.tmpl +0 -39
  755. package/plugins/copilot-pbr/skills/plan/templates/researcher-prompt.md.tmpl +0 -20
  756. package/plugins/copilot-pbr/skills/plan/templates/revision-prompt.md.tmpl +0 -24
  757. package/plugins/copilot-pbr/skills/quick/SKILL.md +0 -376
  758. package/plugins/copilot-pbr/skills/resume/SKILL.md +0 -399
  759. package/plugins/copilot-pbr/skills/review/SKILL.md +0 -653
  760. package/plugins/copilot-pbr/skills/review/templates/debugger-prompt.md.tmpl +0 -61
  761. package/plugins/copilot-pbr/skills/review/templates/gap-planner-prompt.md.tmpl +0 -41
  762. package/plugins/copilot-pbr/skills/review/templates/verifier-prompt.md.tmpl +0 -116
  763. package/plugins/copilot-pbr/skills/scan/SKILL.md +0 -299
  764. package/plugins/copilot-pbr/skills/scan/templates/mapper-prompt.md.tmpl +0 -202
  765. package/plugins/copilot-pbr/skills/setup/SKILL.md +0 -296
  766. package/plugins/copilot-pbr/skills/shared/commit-planning-docs.md +0 -36
  767. package/plugins/copilot-pbr/skills/shared/config-loading.md +0 -103
  768. package/plugins/copilot-pbr/skills/shared/context-budget.md +0 -41
  769. package/plugins/copilot-pbr/skills/shared/context-loader-task.md +0 -87
  770. package/plugins/copilot-pbr/skills/shared/digest-select.md +0 -80
  771. package/plugins/copilot-pbr/skills/shared/domain-probes.md +0 -126
  772. package/plugins/copilot-pbr/skills/shared/error-reporting.md +0 -81
  773. package/plugins/copilot-pbr/skills/shared/gate-prompts.md +0 -389
  774. package/plugins/copilot-pbr/skills/shared/phase-argument-parsing.md +0 -46
  775. package/plugins/copilot-pbr/skills/shared/progress-display.md +0 -53
  776. package/plugins/copilot-pbr/skills/shared/revision-loop.md +0 -82
  777. package/plugins/copilot-pbr/skills/shared/state-loading.md +0 -63
  778. package/plugins/copilot-pbr/skills/shared/state-update.md +0 -162
  779. package/plugins/copilot-pbr/skills/shared/universal-anti-patterns.md +0 -38
  780. package/plugins/copilot-pbr/skills/status/SKILL.md +0 -362
  781. package/plugins/copilot-pbr/skills/statusline/SKILL.md +0 -149
  782. package/plugins/copilot-pbr/skills/todo/SKILL.md +0 -279
  783. package/plugins/copilot-pbr/templates/CONTEXT.md.tmpl +0 -53
  784. package/plugins/copilot-pbr/templates/INTEGRATION-REPORT.md.tmpl +0 -152
  785. package/plugins/copilot-pbr/templates/RESEARCH-SUMMARY.md.tmpl +0 -98
  786. package/plugins/copilot-pbr/templates/ROADMAP.md.tmpl +0 -41
  787. package/plugins/copilot-pbr/templates/SUMMARY.md.tmpl +0 -82
  788. package/plugins/copilot-pbr/templates/VERIFICATION-DETAIL.md.tmpl +0 -117
  789. package/plugins/copilot-pbr/templates/codebase/ARCHITECTURE.md.tmpl +0 -98
  790. package/plugins/copilot-pbr/templates/codebase/CONCERNS.md.tmpl +0 -93
  791. package/plugins/copilot-pbr/templates/codebase/CONVENTIONS.md.tmpl +0 -104
  792. package/plugins/copilot-pbr/templates/codebase/INTEGRATIONS.md.tmpl +0 -78
  793. package/plugins/copilot-pbr/templates/codebase/STACK.md.tmpl +0 -78
  794. package/plugins/copilot-pbr/templates/codebase/STRUCTURE.md.tmpl +0 -80
  795. package/plugins/copilot-pbr/templates/codebase/TESTING.md.tmpl +0 -107
  796. package/plugins/copilot-pbr/templates/continue-here.md.tmpl +0 -74
  797. package/plugins/copilot-pbr/templates/prompt-partials/phase-project-context.md.tmpl +0 -38
  798. package/plugins/copilot-pbr/templates/research/ARCHITECTURE.md.tmpl +0 -124
  799. package/plugins/copilot-pbr/templates/research/STACK.md.tmpl +0 -71
  800. package/plugins/copilot-pbr/templates/research/SUMMARY.md.tmpl +0 -112
  801. package/plugins/copilot-pbr/templates/research-outputs/phase-research.md.tmpl +0 -81
  802. package/plugins/copilot-pbr/templates/research-outputs/project-research.md.tmpl +0 -99
  803. package/plugins/copilot-pbr/templates/research-outputs/synthesis.md.tmpl +0 -36
  804. package/plugins/cursor-pbr/.cursor-plugin/plugin.json +0 -32
  805. package/plugins/cursor-pbr/CHANGELOG.md +0 -15
  806. package/plugins/cursor-pbr/README.md +0 -123
  807. package/plugins/cursor-pbr/agents/audit.md +0 -178
  808. package/plugins/cursor-pbr/agents/codebase-mapper.md +0 -150
  809. package/plugins/cursor-pbr/agents/debugger.md +0 -181
  810. package/plugins/cursor-pbr/agents/executor.md +0 -266
  811. package/plugins/cursor-pbr/agents/general.md +0 -87
  812. package/plugins/cursor-pbr/agents/integration-checker.md +0 -118
  813. package/plugins/cursor-pbr/agents/plan-checker.md +0 -207
  814. package/plugins/cursor-pbr/agents/planner.md +0 -237
  815. package/plugins/cursor-pbr/agents/researcher.md +0 -185
  816. package/plugins/cursor-pbr/agents/synthesizer.md +0 -125
  817. package/plugins/cursor-pbr/agents/verifier.md +0 -227
  818. package/plugins/cursor-pbr/assets/.gitkeep +0 -0
  819. package/plugins/cursor-pbr/assets/logo.svg +0 -21
  820. package/plugins/cursor-pbr/hooks/hooks.json +0 -213
  821. package/plugins/cursor-pbr/references/agent-anti-patterns.md +0 -25
  822. package/plugins/cursor-pbr/references/agent-contracts.md +0 -297
  823. package/plugins/cursor-pbr/references/agent-interactions.md +0 -135
  824. package/plugins/cursor-pbr/references/agent-teams.md +0 -55
  825. package/plugins/cursor-pbr/references/checkpoints.md +0 -158
  826. package/plugins/cursor-pbr/references/common-bug-patterns.md +0 -14
  827. package/plugins/cursor-pbr/references/config-reference.md +0 -442
  828. package/plugins/cursor-pbr/references/continuation-format.md +0 -213
  829. package/plugins/cursor-pbr/references/deviation-rules.md +0 -113
  830. package/plugins/cursor-pbr/references/git-integration.md +0 -227
  831. package/plugins/cursor-pbr/references/integration-patterns.md +0 -118
  832. package/plugins/cursor-pbr/references/model-profiles.md +0 -100
  833. package/plugins/cursor-pbr/references/model-selection.md +0 -32
  834. package/plugins/cursor-pbr/references/pbr-rules.md +0 -195
  835. package/plugins/cursor-pbr/references/pbr-tools-cli.md +0 -285
  836. package/plugins/cursor-pbr/references/plan-authoring.md +0 -182
  837. package/plugins/cursor-pbr/references/plan-format.md +0 -288
  838. package/plugins/cursor-pbr/references/planning-config.md +0 -214
  839. package/plugins/cursor-pbr/references/questioning.md +0 -215
  840. package/plugins/cursor-pbr/references/reading-verification.md +0 -128
  841. package/plugins/cursor-pbr/references/stub-patterns.md +0 -161
  842. package/plugins/cursor-pbr/references/subagent-coordination.md +0 -120
  843. package/plugins/cursor-pbr/references/ui-formatting.md +0 -444
  844. package/plugins/cursor-pbr/references/verification-patterns.md +0 -199
  845. package/plugins/cursor-pbr/references/wave-execution.md +0 -96
  846. package/plugins/cursor-pbr/rules/pbr-workflow.mdc +0 -48
  847. package/plugins/cursor-pbr/setup.ps1 +0 -78
  848. package/plugins/cursor-pbr/setup.sh +0 -83
  849. package/plugins/cursor-pbr/skills/audit/SKILL.md +0 -331
  850. package/plugins/cursor-pbr/skills/begin/SKILL.md +0 -589
  851. package/plugins/cursor-pbr/skills/begin/templates/PROJECT.md.tmpl +0 -34
  852. package/plugins/cursor-pbr/skills/begin/templates/REQUIREMENTS.md.tmpl +0 -19
  853. package/plugins/cursor-pbr/skills/begin/templates/STATE.md.tmpl +0 -50
  854. package/plugins/cursor-pbr/skills/begin/templates/config.json.tmpl +0 -64
  855. package/plugins/cursor-pbr/skills/begin/templates/researcher-prompt.md.tmpl +0 -20
  856. package/plugins/cursor-pbr/skills/begin/templates/roadmap-prompt.md.tmpl +0 -31
  857. package/plugins/cursor-pbr/skills/begin/templates/synthesis-prompt.md.tmpl +0 -17
  858. package/plugins/cursor-pbr/skills/build/SKILL.md +0 -961
  859. package/plugins/cursor-pbr/skills/config/SKILL.md +0 -252
  860. package/plugins/cursor-pbr/skills/continue/SKILL.md +0 -159
  861. package/plugins/cursor-pbr/skills/dashboard/SKILL.md +0 -44
  862. package/plugins/cursor-pbr/skills/debug/SKILL.md +0 -512
  863. package/plugins/cursor-pbr/skills/debug/templates/continuation-prompt.md.tmpl +0 -17
  864. package/plugins/cursor-pbr/skills/debug/templates/initial-investigation-prompt.md.tmpl +0 -28
  865. package/plugins/cursor-pbr/skills/discuss/SKILL.md +0 -354
  866. package/plugins/cursor-pbr/skills/discuss/templates/CONTEXT.md.tmpl +0 -62
  867. package/plugins/cursor-pbr/skills/discuss/templates/decision-categories.md +0 -10
  868. package/plugins/cursor-pbr/skills/do/SKILL.md +0 -67
  869. package/plugins/cursor-pbr/skills/explore/SKILL.md +0 -376
  870. package/plugins/cursor-pbr/skills/health/SKILL.md +0 -283
  871. package/plugins/cursor-pbr/skills/health/templates/check-pattern.md.tmpl +0 -31
  872. package/plugins/cursor-pbr/skills/health/templates/output-format.md.tmpl +0 -64
  873. package/plugins/cursor-pbr/skills/help/SKILL.md +0 -170
  874. package/plugins/cursor-pbr/skills/import/SKILL.md +0 -505
  875. package/plugins/cursor-pbr/skills/milestone/SKILL.md +0 -746
  876. package/plugins/cursor-pbr/skills/milestone/templates/audit-report.md.tmpl +0 -49
  877. package/plugins/cursor-pbr/skills/milestone/templates/stats-file.md.tmpl +0 -31
  878. package/plugins/cursor-pbr/skills/note/SKILL.md +0 -214
  879. package/plugins/cursor-pbr/skills/pause/SKILL.md +0 -248
  880. package/plugins/cursor-pbr/skills/pause/templates/continue-here.md.tmpl +0 -72
  881. package/plugins/cursor-pbr/skills/plan/SKILL.md +0 -663
  882. package/plugins/cursor-pbr/skills/plan/templates/checker-prompt.md.tmpl +0 -22
  883. package/plugins/cursor-pbr/skills/plan/templates/gap-closure-prompt.md.tmpl +0 -33
  884. package/plugins/cursor-pbr/skills/plan/templates/planner-prompt.md.tmpl +0 -39
  885. package/plugins/cursor-pbr/skills/plan/templates/researcher-prompt.md.tmpl +0 -20
  886. package/plugins/cursor-pbr/skills/plan/templates/revision-prompt.md.tmpl +0 -24
  887. package/plugins/cursor-pbr/skills/quick/SKILL.md +0 -376
  888. package/plugins/cursor-pbr/skills/resume/SKILL.md +0 -399
  889. package/plugins/cursor-pbr/skills/review/SKILL.md +0 -654
  890. package/plugins/cursor-pbr/skills/review/templates/debugger-prompt.md.tmpl +0 -61
  891. package/plugins/cursor-pbr/skills/review/templates/gap-planner-prompt.md.tmpl +0 -41
  892. package/plugins/cursor-pbr/skills/review/templates/verifier-prompt.md.tmpl +0 -116
  893. package/plugins/cursor-pbr/skills/scan/SKILL.md +0 -300
  894. package/plugins/cursor-pbr/skills/scan/templates/mapper-prompt.md.tmpl +0 -202
  895. package/plugins/cursor-pbr/skills/setup/SKILL.md +0 -296
  896. package/plugins/cursor-pbr/skills/shared/commit-planning-docs.md +0 -36
  897. package/plugins/cursor-pbr/skills/shared/config-loading.md +0 -103
  898. package/plugins/cursor-pbr/skills/shared/context-budget.md +0 -41
  899. package/plugins/cursor-pbr/skills/shared/context-loader-task.md +0 -87
  900. package/plugins/cursor-pbr/skills/shared/digest-select.md +0 -80
  901. package/plugins/cursor-pbr/skills/shared/domain-probes.md +0 -126
  902. package/plugins/cursor-pbr/skills/shared/error-reporting.md +0 -81
  903. package/plugins/cursor-pbr/skills/shared/gate-prompts.md +0 -389
  904. package/plugins/cursor-pbr/skills/shared/phase-argument-parsing.md +0 -46
  905. package/plugins/cursor-pbr/skills/shared/progress-display.md +0 -53
  906. package/plugins/cursor-pbr/skills/shared/revision-loop.md +0 -82
  907. package/plugins/cursor-pbr/skills/shared/state-loading.md +0 -63
  908. package/plugins/cursor-pbr/skills/shared/state-update.md +0 -162
  909. package/plugins/cursor-pbr/skills/shared/universal-anti-patterns.md +0 -38
  910. package/plugins/cursor-pbr/skills/status/SKILL.md +0 -362
  911. package/plugins/cursor-pbr/skills/statusline/SKILL.md +0 -150
  912. package/plugins/cursor-pbr/skills/todo/SKILL.md +0 -280
  913. package/plugins/cursor-pbr/templates/CONTEXT.md.tmpl +0 -53
  914. package/plugins/cursor-pbr/templates/INTEGRATION-REPORT.md.tmpl +0 -152
  915. package/plugins/cursor-pbr/templates/RESEARCH-SUMMARY.md.tmpl +0 -98
  916. package/plugins/cursor-pbr/templates/ROADMAP.md.tmpl +0 -41
  917. package/plugins/cursor-pbr/templates/SUMMARY.md.tmpl +0 -82
  918. package/plugins/cursor-pbr/templates/VERIFICATION-DETAIL.md.tmpl +0 -117
  919. package/plugins/cursor-pbr/templates/codebase/ARCHITECTURE.md.tmpl +0 -98
  920. package/plugins/cursor-pbr/templates/codebase/CONCERNS.md.tmpl +0 -93
  921. package/plugins/cursor-pbr/templates/codebase/CONVENTIONS.md.tmpl +0 -104
  922. package/plugins/cursor-pbr/templates/codebase/INTEGRATIONS.md.tmpl +0 -78
  923. package/plugins/cursor-pbr/templates/codebase/STACK.md.tmpl +0 -78
  924. package/plugins/cursor-pbr/templates/codebase/STRUCTURE.md.tmpl +0 -80
  925. package/plugins/cursor-pbr/templates/codebase/TESTING.md.tmpl +0 -107
  926. package/plugins/cursor-pbr/templates/continue-here.md.tmpl +0 -74
  927. package/plugins/cursor-pbr/templates/prompt-partials/phase-project-context.md.tmpl +0 -38
  928. package/plugins/cursor-pbr/templates/research/ARCHITECTURE.md.tmpl +0 -124
  929. package/plugins/cursor-pbr/templates/research/STACK.md.tmpl +0 -71
  930. package/plugins/cursor-pbr/templates/research/SUMMARY.md.tmpl +0 -112
  931. package/plugins/cursor-pbr/templates/research-outputs/phase-research.md.tmpl +0 -81
  932. package/plugins/cursor-pbr/templates/research-outputs/project-research.md.tmpl +0 -99
  933. package/plugins/cursor-pbr/templates/research-outputs/synthesis.md.tmpl +0 -36
  934. package/plugins/pbr/references/agent-interactions.md +0 -134
  935. package/plugins/pbr/references/pbr-rules.md +0 -194
  936. package/plugins/pbr/references/pbr-tools-cli.md +0 -285
  937. package/plugins/pbr/references/planning-config.md +0 -213
  938. package/plugins/pbr/references/subagent-coordination.md +0 -119
  939. package/plugins/pbr/references/ui-formatting.md +0 -444
  940. package/plugins/pbr/scripts/validate-plugin-structure.js +0 -183
  941. package/plugins/pbr/skills/milestone/templates/audit-report.md.tmpl +0 -48
  942. package/plugins/pbr/skills/shared/progress-display.md +0 -53
  943. package/plugins/pbr/skills/shared/state-loading.md +0 -62
  944. package/plugins/pbr/templates/RESEARCH-SUMMARY.md.tmpl +0 -97
  945. package/plugins/pbr/templates/research/ARCHITECTURE.md.tmpl +0 -124
  946. package/plugins/pbr/templates/research/STACK.md.tmpl +0 -71
  947. package/plugins/pbr/templates/research/SUMMARY.md.tmpl +0 -112
  948. package/plugins/pbr/templates/research-outputs/phase-research.md.tmpl +0 -81
  949. package/plugins/pbr/templates/research-outputs/project-research.md.tmpl +0 -99
  950. package/plugins/pbr/templates/research-outputs/synthesis.md.tmpl +0 -36
  951. /package/plugins/pbr/references/{agent-anti-patterns.md → archive/agent-anti-patterns.md} +0 -0
@@ -2,17 +2,21 @@
2
2
  name: begin
3
3
  description: "Start a new project. Deep questioning, research, requirements, and roadmap."
4
4
  allowed-tools: Read, Write, Bash, Glob, Grep, WebFetch, WebSearch, Task, AskUserQuestion
5
+ argument-hint: "[--auto]"
5
6
  ---
6
7
 
7
8
  **STOP — DO NOT READ THIS FILE. You are already reading it. This prompt was injected into your context by Claude Code's plugin system. Using the Read tool on this SKILL.md file wastes ~7,600 tokens. Begin executing Step 1 immediately.**
8
9
 
9
- # /pbr:begin — Project Initialization
10
+ # /pbr:new-project — Project Initialization
10
11
 
11
- You are the orchestrator for `/pbr:begin`. This skill initializes a new Plan-Build-Run project through deep questioning, optional research, requirements scoping, and roadmap generation. Your job is to stay lean — delegate heavy work to Task() subagents and keep the user's main context window clean.
12
+ **References:** `@references/questioning.md`, `@references/ui-brand.md`
13
+
14
+ You are the orchestrator for `/pbr:new-project`. This skill initializes a new Plan-Build-Run project through deep questioning, optional research, requirements scoping, and roadmap generation. Your job is to stay lean — delegate heavy work to Task() subagents and keep the user's main context window clean.
12
15
 
13
16
  ## Context Budget
14
17
 
15
18
  Reference: `skills/shared/context-budget.md` for the universal orchestrator rules.
19
+ Reference: `skills/shared/agent-type-resolution.md` for agent type fallback when spawning Task() subagents.
16
20
 
17
21
  Additionally for this skill:
18
22
  - **Minimize** reading subagent output — read only summaries, not full research docs
@@ -30,6 +34,22 @@ Additionally for this skill:
30
34
 
31
35
  Then proceed to Step 1.
32
36
 
37
+ ## Multi-Session Sync
38
+
39
+ Before any phase-modifying operations, this skill acquires a claim on the project:
40
+
41
+ ```
42
+ acquireClaim(planningDir, sessionId)
43
+ ```
44
+
45
+ Where `planningDir` is the `.planning/` directory and `sessionId` is the current session identifier. If the claim fails (another session owns it), display: "Another session owns this project. Use `/pbr:progress` to see active claims."
46
+
47
+ On completion or error, release the claim:
48
+
49
+ ```
50
+ releaseClaim(planningDir, sessionId)
51
+ ```
52
+
33
53
  ## Prerequisites
34
54
 
35
55
  - Working directory should be the project root
@@ -45,29 +65,35 @@ Execute these steps in order. Each step specifies whether it runs inline (in you
45
65
 
46
66
  ### Step 1: Detect Brownfield (inline)
47
67
 
48
- > **Cross-platform note**: Use the Glob tool (not Bash `ls` or `find`) for all file and directory discovery. Bash file commands fail on Windows due to path separator issues.
49
-
50
- Check if the current directory has existing code:
68
+ **CRITICAL Run init command FIRST before any Glob calls or manual file checks:**
51
69
 
70
+ ```bash
71
+ node plugins/pbr/scripts/pbr-tools.js init begin
52
72
  ```
53
- 1. Use Glob to check directory contents (e.g., pattern "*" at project root)
54
- 2. Look for indicators of existing code:
55
- - package.json, requirements.txt, CMakeLists.txt, go.mod, Cargo.toml
56
- - src/, lib/, app/ directories
57
- - .git/ directory with commits
58
- 3. Use Glob to check if .planning/ already exists (e.g., pattern ".planning/*")
59
- ```
60
73
 
61
- **If existing code found:**
74
+ Store the JSON result as `blob`. This single call replaces multiple Glob/filesystem checks with a pre-computed payload:
75
+ - `blob.has_planning` — whether .planning/ directory exists
76
+ - `blob.has_existing_code` — whether brownfield indicators were found
77
+ - `blob.brownfield_indicators` — array of detected indicators (package.json, src/, etc.)
78
+ - `blob.has_git` — whether .git directory exists
79
+ - `blob.existing_phases` — count of existing phase directories
80
+ - `blob.state` — existing STATE.md frontmatter (or null if no project)
81
+ - `blob.config` — existing config.json contents (or null)
82
+
83
+ > **Cross-platform note**: The init command handles all filesystem checks cross-platform. No Glob or Bash file discovery needed.
84
+
85
+ **If `blob.has_existing_code` is true:**
86
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
62
87
  Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
63
- question: "This looks like an existing codebase. Run /pbr:scan to analyze what's here first?"
88
+ question: "This looks like an existing codebase. Run /pbr:map-codebase to analyze what's here first?"
64
89
  options:
65
- - label: "Yes, scan" description: "Run /pbr:scan first to analyze existing code"
66
- - label: "No, begin" description: "Proceed with /pbr:begin on top of existing code"
67
- - If user selects "Yes, scan": suggest `/pbr:scan` and stop
90
+ - label: "Yes, scan" description: "Run /pbr:map-codebase first to analyze existing code"
91
+ - label: "No, begin" description: "Proceed with /pbr:new-project on top of existing code"
92
+ - If user selects "Yes, scan": suggest `/pbr:map-codebase` and stop
68
93
  - If user selects "No, begin": proceed to Step 2
69
94
 
70
- **If `.planning/` already exists:**
95
+ **If `blob.has_planning` is true:**
96
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
71
97
  Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
72
98
  question: "A .planning/ directory already exists. This will overwrite it. Continue?"
73
99
  options:
@@ -75,7 +101,7 @@ Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
75
101
  - label: "No" description: "Cancel — keep existing planning"
76
102
  - If user selects "No": **STOP IMMEDIATELY. Do not ask again. Do not proceed to Step 2. End the skill with this message:**
77
103
  ```
78
- Keeping existing .planning/ directory. Use `/pbr:status` to see current project state, or `/pbr:plan` to continue planning.
104
+ Keeping existing .planning/ directory. Use `/pbr:progress` to see current project state, or `/pbr:plan-phase` to continue planning.
79
105
  ```
80
106
  **Do NOT re-prompt the same question or any other question. The skill is finished.**
81
107
  - If user selects "Yes": proceed (existing directory will be overwritten during state initialization)
@@ -119,11 +145,144 @@ Have a natural conversation to understand the user's vision. Do NOT present a fo
119
145
 
120
146
  ---
121
147
 
148
+ ### Step 2.5: Fast-Path Offer (inline)
149
+
150
+ Before asking any workflow preference questions, offer the user a quick-start option:
151
+
152
+ Use AskUserQuestion:
153
+ question: "How do you want to configure this project?"
154
+ header: "Setup mode"
155
+ options:
156
+ - label: "Quick start"
157
+ description: "Use all defaults — model balanced, depth standard, interactive mode, parallel on. Writes config in seconds."
158
+ - label: "Custom setup"
159
+ description: "Walk through model selection, features, and preferences step by step."
160
+
161
+ **If user selects "Quick start":**
162
+ - Tell the user: "Tip: Agents set to `inherit` use your Claude Code session model. For cost savings, run on Sonnet -- orchestration and inherit agents work well at that tier. See `references/model-profiles.md` for details."
163
+ - Write `.planning/config.json` immediately using the default config below (no further questions):
164
+ ```json
165
+ {
166
+ "version": 2,
167
+ "context_strategy": "aggressive",
168
+ "mode": "interactive",
169
+ "depth": "standard",
170
+ "context_window_tokens": 200000,
171
+ "features": {
172
+ "structured_planning": true,
173
+ "goal_verification": true,
174
+ "integration_verification": true,
175
+ "context_isolation": true,
176
+ "atomic_commits": true,
177
+ "session_persistence": true,
178
+ "research_phase": true,
179
+ "plan_checking": true,
180
+ "tdd_mode": false,
181
+ "status_line": true,
182
+ "auto_continue": false,
183
+ "auto_advance": false,
184
+ "team_discussions": false,
185
+ "inline_verify": false
186
+ },
187
+ "models": {
188
+ "researcher": "sonnet",
189
+ "planner": "inherit",
190
+ "executor": "inherit",
191
+ "verifier": "sonnet",
192
+ "integration_checker": "sonnet",
193
+ "debugger": "inherit",
194
+ "mapper": "sonnet",
195
+ "synthesizer": "haiku"
196
+ },
197
+ "parallelization": {
198
+ "enabled": true,
199
+ "plan_level": true,
200
+ "task_level": false,
201
+ "max_concurrent_agents": 3,
202
+ "min_plans_for_parallel": 2,
203
+ "use_teams": false
204
+ },
205
+ "planning": {
206
+ "commit_docs": true,
207
+ "max_tasks_per_plan": 3,
208
+ "search_gitignored": false
209
+ },
210
+ "git": {
211
+ "branching": "none",
212
+ "commit_format": "{type}({phase}-{plan}): {description}",
213
+ "phase_branch_template": "plan-build-run/phase-{phase}-{slug}",
214
+ "milestone_branch_template": "plan-build-run/{milestone}-{slug}",
215
+ "mode": "enabled"
216
+ },
217
+ "gates": {
218
+ "confirm_project": true,
219
+ "confirm_roadmap": true,
220
+ "confirm_plan": true,
221
+ "confirm_execute": false,
222
+ "confirm_transition": true,
223
+ "issues_review": true
224
+ },
225
+ "safety": {
226
+ "always_confirm_destructive": true,
227
+ "always_confirm_external_services": true
228
+ }
229
+ }
230
+ ```
231
+ **CRITICAL — DO NOT SKIP: Write .active-skill NOW.** Write `.planning/.active-skill` with text "begin"
232
+ - Write CLAUDE.md integration block (see Step 3d-claude below) using the project name gathered in Step 2
233
+ - Skip to Step 4 (Research Decision)
234
+ - Tell the user: "Quick start selected. Using all defaults — you can adjust later with `/pbr:settings`."
235
+
236
+ **If user selects "Custom setup":** proceed to Step 3 normally.
237
+
238
+ ---
239
+
122
240
  ### Step 3: Workflow Preferences (inline)
123
241
 
124
242
  After understanding the project, configure the Plan-Build-Run workflow. Use AskUserQuestion for each preference below. Present them sequentially with conversational bridging (e.g., "Great. Next...") to keep the flow natural.
125
243
 
244
+ **3-model. Model Profile:**
245
+ Note: These profiles control agent models. The orchestrator uses your Claude Code session model. For cost optimization, consider running on Sonnet -- agents with `inherit` will follow. See `references/model-profiles.md`.
246
+
247
+ Use AskUserQuestion:
248
+ question: "Which model profile should agents use?"
249
+ header: "Models"
250
+ options:
251
+ - label: "Balanced (Recommended)"
252
+ description: "Sonnet for most agents, Haiku for synthesizer. Good quality/cost tradeoff."
253
+ - label: "Quality"
254
+ description: "Opus for executor and planner, Sonnet for others. Best results, highest cost."
255
+ - label: "Budget"
256
+ description: "Haiku for most agents. Fastest and cheapest, but lower quality."
257
+
258
+ Apply the selected profile to the models block in config.json:
259
+ - **Balanced**: executor=sonnet, researcher=sonnet, planner=sonnet, verifier=sonnet, synthesizer=haiku, context_window_tokens=200000, agent_checkpoint_pct=50, extended_context=false
260
+ - **Quality**: executor=opus, researcher=sonnet, planner=opus, verifier=sonnet, synthesizer=sonnet, context_window_tokens=1000000, agent_checkpoint_pct=65, extended_context=true
261
+ - **Budget**: executor=haiku, researcher=haiku, planner=sonnet, verifier=haiku, synthesizer=haiku, context_window_tokens=200000, agent_checkpoint_pct=50, extended_context=false
262
+
263
+ **3-features. Workflow Features:**
264
+ Use AskUserQuestion:
265
+ question: "Any extra workflow features?"
266
+ header: "Features"
267
+ multiSelect: true
268
+ options:
269
+ - label: "Auto-continue"
270
+ description: "Automatically chain commands (build → review → next phase) without prompting"
271
+ - label: "TDD mode"
272
+ description: "Write tests before implementation in executor agents"
273
+ - label: "Strict gates"
274
+ description: "Require verification AND review to pass before advancing phases"
275
+ - label: "Git branching"
276
+ description: "Create a branch per phase for cleaner PR history"
277
+
278
+ Apply selections:
279
+ - **Auto-continue**: Set `features.auto_continue: true`
280
+ - **TDD mode**: Set `features.tdd_mode: true`
281
+ - **Strict gates**: Set `gates.verification: true`, `gates.review: true`, `gates.plan_approval: true`
282
+ - **Git branching**: Set `git.branching: "phase"`
283
+
126
284
  **3a. Mode:**
285
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
127
286
  Use the **toggle-confirm** pattern from `skills/shared/gate-prompts.md`:
128
287
  question: "How do you want to work?"
129
288
  header: "Mode"
@@ -134,6 +293,7 @@ Use the **toggle-confirm** pattern from `skills/shared/gate-prompts.md`:
134
293
  - `autonomous` — auto-proceed, only stop for critical decisions
135
294
 
136
295
  **3b. Depth:**
296
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
137
297
  Use the **depth-select** pattern from `skills/shared/gate-prompts.md`:
138
298
  question: "How thorough should planning be?"
139
299
  - `quick` — 3-5 phases, skip research, ~50% cheaper
@@ -141,6 +301,7 @@ Use the **depth-select** pattern from `skills/shared/gate-prompts.md`:
141
301
  - `comprehensive` — 8-12 phases, full deep research, ~2x cost
142
302
 
143
303
  **3c. Parallelization:**
304
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
144
305
  Use the **toggle-confirm** pattern from `skills/shared/gate-prompts.md`:
145
306
  question: "Run multiple agents in parallel when plans are independent?"
146
307
  header: "Parallel"
@@ -151,6 +312,7 @@ Use the **toggle-confirm** pattern from `skills/shared/gate-prompts.md`:
151
312
  - `disabled` — sequential execution
152
313
 
153
314
  **3d. Git Branching:**
315
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
154
316
  Use the **git-strategy-select** pattern from `skills/shared/gate-prompts.md`:
155
317
  question: "Git branching strategy?"
156
318
  - `none` (default) — commit to current branch
@@ -158,6 +320,7 @@ Use the **git-strategy-select** pattern from `skills/shared/gate-prompts.md`:
158
320
  - `milestone` — create branch per milestone
159
321
 
160
322
  **3e. Commit Planning Docs:**
323
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
161
324
  Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
162
325
  question: "Should planning documents (.planning/ directory) be committed to git?"
163
326
  options:
@@ -166,18 +329,69 @@ Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
166
329
  - `yes` (default) — commit planning docs
167
330
  - `no` — add .planning/ to .gitignore
168
331
 
332
+ **3d-claude. CLAUDE.md Integration:**
333
+
334
+ Check if a `CLAUDE.md` file exists in the project root.
335
+
336
+ **If it exists**: Read it. If it does NOT already contain a "Plan-Build-Run" section, append the block below.
337
+ **If it does NOT exist**: Create `CLAUDE.md` with the block below.
338
+
339
+ Append/create:
340
+
341
+ ```markdown
342
+ ## Plan-Build-Run
343
+
344
+ This project uses [Plan-Build-Run](https://github.com/SienkLogic/plan-build-run) for structured development.
345
+
346
+ - Project state: `.planning/STATE.md` (source of truth for current phase and progress)
347
+ - Configuration: `.planning/config.json`
348
+ - Run `/pbr:progress` to see current project state and suggested next action.
349
+
350
+ **After compaction or context recovery**: Read `.planning/STATE.md` (especially the `## Session Continuity` section) before proceeding with any work. The PreCompact hook writes recovery state there automatically.
351
+ ```
352
+
169
353
  **After gathering preferences:**
170
354
 
171
- **CRITICAL: You MUST create the .planning/ directory and write config.json NOW. Do not proceed without this.**
355
+ **CRITICAL (no hook): You MUST create the .planning/ directory and write config.json NOW. Do not proceed without this.**
172
356
 
173
- 1. Read the config template from `skills/begin/templates/config.json.tmpl`
174
- 2. Apply the user's choices to the template
357
+ 1. Read the config template from `${CLAUDE_SKILL_DIR}/templates/config.json.tmpl`
358
+ 2. Apply the user's choices to the template (including 3d-claude CLAUDE.md integration)
175
359
  3. Create `.planning/` directory
176
360
  4. Write `.planning/config.json` with the user's preferences
177
361
 
178
362
  **IMPORTANT**: This step MUST happen BEFORE research (Step 5) because depth controls how many researchers to spawn.
179
363
 
180
- **CRITICAL: Write .active-skill NOW.** Write the text "begin" to `.planning/.active-skill` using the Write tool. Verify the file exists before proceeding.
364
+ **CRITICAL (hook-enforced): Write .active-skill NOW.** Write the text "begin" to `.planning/.active-skill` using the Write tool. Verify the file exists before proceeding.
365
+
366
+ ### Step 3e: Early PROJECT.md Write (durability checkpoint)
367
+
368
+ **CRITICAL: Write a preliminary PROJECT.md NOW to preserve the user's vision on disk.**
369
+
370
+ Write `.planning/PROJECT.md` with the information gathered so far:
371
+ - Project name, description, and type (from Step 2 questioning)
372
+ - Key constraints and technology preferences (from Step 2)
373
+ - Workflow preferences (from Step 3: depth, model profile, ceremony level)
374
+ - Mark it as `status: preliminary` in a comment at the top
375
+
376
+ This file will be overwritten with the full version in Step 9, but if context is lost between Steps 4-8 (research, synthesis, requirements, roadmap), the user's vision is preserved on disk. Format:
377
+
378
+ ```markdown
379
+ <!-- status: preliminary — will be overwritten in Step 9 with full version -->
380
+ # {Project Name}
381
+
382
+ {Project description from Step 2}
383
+
384
+ ## Constraints
385
+ {Key constraints from questioning}
386
+
387
+ ## Technology Preferences
388
+ {Tech choices mentioned during questioning}
389
+
390
+ ## Workflow Config
391
+ Depth: {depth} | Profile: {model_profile} | Ceremony: {ceremony_level}
392
+ ```
393
+
394
+ If `planning.commit_docs` is true, commit: `docs(planning): preliminary PROJECT.md from questioning`
181
395
 
182
396
  ---
183
397
 
@@ -199,13 +413,24 @@ Based on the depth setting from Step 3, determine the research approach:
199
413
  - Tell user: "Skipping research phase (depth: quick). Moving straight to requirements."
200
414
 
201
415
  **If depth is `standard` or `comprehensive`:**
202
- Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
203
- question: "I'd like to research the technology landscape before planning. This helps create better plans. Proceed with research?"
204
- options:
205
- - label: "Yes" description: "Run research agents (recommended for standard/comprehensive)"
206
- - label: "No" description: "Skip research, move straight to requirements"
207
- - If user selects "No": skip to Step 7
208
- - If user selects "Yes": proceed to Step 5
416
+
417
+ **Auto-mode bypass:** If the `--auto` flag is active or `config.mode === 'autonomous'`:
418
+ - Default to `standard` depth (2 researchers: STACK, FEATURES) unless depth was explicitly set to `comprehensive`
419
+ - Set `gates.confirm_research` to `false` (skip the depth selection gate)
420
+ - Display: "PBR > Auto-mode: advancing to research (standard depth)..."
421
+ - Proceed directly to Step 5
422
+
423
+ **Interactive mode (default):**
424
+ - If `gates.confirm_research` is `true` in config:
425
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
426
+ Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
427
+ question: "I'd like to research the technology landscape before planning. This helps create better plans. Proceed with research?"
428
+ options:
429
+ - label: "Yes" description: "Run research agents (recommended for standard/comprehensive)"
430
+ - label: "No" description: "Skip research, move straight to requirements"
431
+ - If user selects "No": skip to Step 7
432
+ - If user selects "Yes": proceed to Step 5
433
+ - If `gates.confirm_research` is `false` (default): proceed directly to Step 5 (research runs automatically)
209
434
 
210
435
  ---
211
436
 
@@ -213,13 +438,33 @@ Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
213
438
 
214
439
  Spawn parallel Task() subagents for research. Each researcher writes to `.planning/research/`.
215
440
 
216
- **CRITICAL: Create .planning/research/ directory NOW before spawning researchers. Do NOT skip this step.**
441
+ **CRITICAL (no hook): Create .planning/research/ directory NOW before spawning researchers. Do NOT skip this step.**
442
+
443
+ **Learnings injection (opt-in):** Before spawning researchers, check if global learnings exist:
444
+
445
+ ```bash
446
+ node ${CLAUDE_PLUGIN_ROOT}/scripts/pbr-tools.js learnings query --tags "stack,tech" 2>/dev/null
447
+ ```
448
+
449
+ If the command succeeds AND returns a non-empty JSON array:
450
+
451
+ - Write the results to a temp file:
452
+
453
+ ```bash
454
+ node ${CLAUDE_PLUGIN_ROOT}/scripts/pbr-tools.js learnings query --tags "stack,tech" > /tmp/pbr-learnings-$$.md
455
+ ```
456
+
457
+ - Note the temp file path as `{learnings_temp_path}`
458
+ - Add this file to the researcher's `files_to_read` block (see below)
459
+
460
+ If no learnings exist or the command fails: skip injection silently.
217
461
 
218
462
  **For each research topic, spawn a Task():**
219
463
 
220
464
  ```
221
465
  Task({
222
466
  subagent_type: "pbr:researcher",
467
+ // After researcher: check for ## RESEARCH COMPLETE or ## RESEARCH BLOCKED
223
468
  prompt: <see researcher prompt template below>
224
469
  })
225
470
  ```
@@ -232,7 +477,19 @@ Task({
232
477
 
233
478
  For each researcher, construct the prompt by reading the template and filling in placeholders:
234
479
 
235
- Read `skills/begin/templates/researcher-prompt.md.tmpl` for the prompt structure.
480
+ Read `${CLAUDE_SKILL_DIR}/templates/researcher-prompt.md.tmpl` for the prompt structure.
481
+
482
+ **Prepend this block to the researcher prompt before sending:**
483
+
484
+ ```
485
+ <files_to_read>
486
+ CRITICAL (no hook): Read these files BEFORE any other action:
487
+ 1. .planning/REQUIREMENTS.md — scoped requirements (if exists)
488
+ {if learnings_temp_path exists}2. {learnings_temp_path} — cross-project learnings (tech stack patterns from past PBR projects){/if}
489
+ </files_to_read>
490
+ ```
491
+
492
+ If `{learnings_temp_path}` was produced in the learnings injection step above, replace `{if...}{/if}` with the actual line. If no learnings were found, omit line 2 entirely.
236
493
 
237
494
  **Placeholders to fill:**
238
495
  - `{project name from questioning}` — project name gathered in Step 2
@@ -269,10 +526,24 @@ Read `skills/begin/templates/researcher-prompt.md.tmpl` for the prompt structure
269
526
  - What performance issues are typical?
270
527
  - What security concerns exist?
271
528
 
529
+ **Domain-specific template injection:**
530
+
531
+ Each researcher must be told which domain-specific template to follow. When constructing the researcher prompt, inject the correct template path for the assigned topic:
532
+
533
+ | Topic | Template Path |
534
+ |-------|--------------|
535
+ | STACK | `${CLAUDE_PLUGIN_ROOT}/templates/research-outputs/STACK.md.tmpl` |
536
+ | FEATURES | `${CLAUDE_PLUGIN_ROOT}/templates/research-outputs/FEATURES.md.tmpl` |
537
+ | ARCHITECTURE | `${CLAUDE_PLUGIN_ROOT}/templates/research-outputs/ARCHITECTURE.md.tmpl` |
538
+ | PITFALLS | `${CLAUDE_PLUGIN_ROOT}/templates/research-outputs/PITFALLS.md.tmpl` |
539
+
540
+ Include the resolved absolute path in the researcher prompt (resolve `${CLAUDE_PLUGIN_ROOT}` before sending).
541
+
272
542
  **Parallelization:**
273
543
  - Spawn ALL researchers in parallel (multiple Task() calls in one response)
274
544
  - Use `run_in_background: true` for each researcher
275
- - Before spawning, display to the user: `◐ Spawning {N} researchers in parallel...`
545
+ - **Individual Agent Calls:** Each researcher MUST be a separate Task() tool call in a single response message. Do NOT describe the batch in prose (e.g., "4 researchers launched"). Each separate Task() call gets its own colored badge and independent ctrl+o expansion in the Claude Code UI. Multiple Task() calls in one message still run concurrently — no parallelism is lost.
546
+ - Before spawning, display to the user: `◆ Spawning {N} researchers in parallel...`
276
547
  - While waiting, display progress to the user:
277
548
  - After spawning: list of topics being researched
278
549
  - Periodically (every ~30s): check `TaskOutput` with `block: false` for each agent and report status
@@ -280,11 +551,55 @@ Read `skills/begin/templates/researcher-prompt.md.tmpl` for the prompt structure
280
551
  - When all complete: "All {N} researchers finished. Proceeding to synthesis."
281
552
  - Wait for all to complete before proceeding
282
553
 
554
+ #### Partial Failure Detection
555
+
556
+ After all researchers complete (or timeout), check which research files were actually produced:
557
+
558
+ 1. List files in `.planning/research/` (excluding SUMMARY.md)
559
+ 2. Map against expected files for the current depth level:
560
+ - **standard**: expect STACK.md, FEATURES.md (2 files)
561
+ - **comprehensive**: expect STACK.md, FEATURES.md, ARCHITECTURE.md, PITFALLS.md (4 files)
562
+ 3. Count successes and failures
563
+ 4. For files that exist, also check for `## RESEARCH BLOCKED` marker -- count these as "completed with issues" (still pass to synthesizer, which handles them)
564
+
565
+ **If all expected files present:** proceed to Step 6.
566
+
567
+ **If some files missing (partial failure):**
568
+
569
+ Display: "Research partially complete: {N} of {M} researchers succeeded."
570
+ List the missing dimensions.
571
+
572
+ **Auto-mode:** Display "Continuing with gaps (auto-mode). Gaps will be noted in synthesis." and proceed to Step 6.
573
+
574
+ **Interactive mode:**
575
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
576
+ Use AskUserQuestion with 3 options:
577
+
578
+ ```
579
+ question: "Research partially complete. {N} of {M} researchers succeeded. How would you like to proceed?"
580
+ header: "Partial Research"
581
+ options:
582
+ - label: "Continue with gaps"
583
+ description: "Proceed to synthesis -- gaps will be noted in SUMMARY.md"
584
+ - label: "Retry failed"
585
+ description: "Re-spawn only the failed researchers, then re-check"
586
+ - label: "Abort research"
587
+ description: "Skip research entirely and move to requirements"
588
+ ```
589
+
590
+ - If "Continue with gaps": proceed to Step 6
591
+ - If "Retry failed": re-spawn only the failed researchers (same Task() pattern), then re-run partial failure detection
592
+ - If "Abort research": skip to Step 7 (Requirements Scoping)
593
+
283
594
  ---
284
595
 
285
596
  ### Step 6: Synthesis (delegated to subagent)
286
597
 
287
- After all researchers complete, display to the user: `◐ Spawning synthesizer...`
598
+ **Auto-mode bypass:** If the `--auto` flag is active or `config.mode === 'autonomous'`, skip the "Research complete. Review findings?" gate and proceed directly to synthesizer spawning.
599
+
600
+ **Interactive mode:** If a review gate is configured (e.g., `gates.confirm_research_review`), present the research findings and ask the user to review before synthesis. Preserve the existing review gate behavior.
601
+
602
+ After all researchers complete (and review gate passed or bypassed), display to the user: `◆ Spawning synthesizer...`
288
603
 
289
604
  Spawn a synthesis agent:
290
605
 
@@ -301,12 +616,43 @@ Task({
301
616
 
302
617
  #### Synthesis Prompt Template
303
618
 
304
- Read `skills/begin/templates/synthesis-prompt.md.tmpl` for the prompt structure.
619
+ Read `${CLAUDE_SKILL_DIR}/templates/synthesis-prompt.md.tmpl` for the prompt structure.
620
+
621
+ **Prepend this block to the synthesizer prompt before sending:**
622
+ ```
623
+ <files_to_read>
624
+ CRITICAL (no hook): Read these files BEFORE any other action:
625
+ 1. .planning/research/*.md — all research output files from Step 5
626
+ </files_to_read>
627
+ ```
628
+
629
+ **Dynamic file discovery:** Do NOT pass a hardcoded list of research files. Instead, instruct the synthesizer to "Read ALL .md files in the `.planning/research/` directory (excluding SUMMARY.md). These are your research inputs." The synthesizer discovers available files at runtime, which handles partial failure gracefully.
630
+
631
+ **Commit instruction:** Instruct the synthesizer to commit all research files together after producing SUMMARY.md: "After writing SUMMARY.md, commit ALL files in `.planning/research/` together with message: `docs(research): complete research synthesis`"
305
632
 
306
633
  **Placeholders to fill:**
307
- - `{List all .planning/research/*.md files that were created}` — list the research files produced in Step 5
634
+ - `{List all .planning/research/*.md files that were created}` — list the research files produced in Step 5 (for reference, but synthesizer uses dynamic discovery)
635
+
636
+ **After the synthesizer completes**, check for completion markers in the Task() output:
308
637
 
309
- **After the synthesizer completes**, display:
638
+ - If `## SYNTHESIS COMPLETE` is present: proceed normally
639
+ - If `## SYNTHESIS BLOCKED` is present: warn the user and offer to proceed without synthesis:
640
+ ```
641
+ ⚠ Synthesizer reported BLOCKED: {reason from output}
642
+ Research files are still available individually in .planning/research/.
643
+ ```
644
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
645
+ Use AskUserQuestion (pattern: yes-no from `skills/shared/gate-prompts.md`):
646
+ question: "Synthesis was blocked. Continue without synthesis?"
647
+ header: "Blocked"
648
+ options:
649
+ - label: "Yes" description: "Proceed to requirements — use individual research files"
650
+ - label: "No" description: "Stop and investigate"
651
+ - If "Yes": proceed to Step 7 without SUMMARY.md
652
+ - If "No": stop and suggest reviewing .planning/research/ files
653
+ - If neither marker is found: warn the user that the synthesizer may not have completed successfully, but proceed if SUMMARY.md exists on disk
654
+
655
+ If synthesis succeeded, display:
310
656
  ```
311
657
  ✓ Research synthesis complete — see .planning/research/SUMMARY.md
312
658
  ```
@@ -315,6 +661,8 @@ Read `skills/begin/templates/synthesis-prompt.md.tmpl` for the prompt structure.
315
661
 
316
662
  ### Step 7: Requirements Scoping (inline)
317
663
 
664
+ **Auto-mode chaining:** If `config.mode === 'autonomous'`, display "PBR > Auto-mode: advancing to requirements scoping..." and proceed through this step without interactive gates. Auto-derive requirements from research findings and questioning context. Classify all identified features as v1 (committed) unless they clearly belong in a later phase.
665
+
318
666
  Present research findings (if any) and interactively scope requirements with the user.
319
667
 
320
668
  **7a. Present findings:**
@@ -335,11 +683,10 @@ For each category, present the features and ask the user to classify each:
335
683
  - **Out of scope** — Will NOT be built
336
684
 
337
685
  **7d. Assign REQ-IDs:**
338
- For each committed requirement, assign an ID in the format `{CATEGORY}-{NN}`:
339
- - `AUTH-01`: User can log in with Discord OAuth
340
- - `AUTH-02`: Protected routes redirect to login
341
- - `UI-01`: Dashboard shows player statistics
342
- - `UI-02`: Mobile-responsive layout
686
+ For each committed requirement, assign an ID using the REQ-F/REQ-NF schema:
687
+ - Functional requirements: `REQ-F-xxx` numbered sequentially within each category (REQ-F-001, REQ-F-002, ...)
688
+ - Non-functional requirements: `REQ-NF-xxx` numbered sequentially across all NFR categories (REQ-NF-001, REQ-NF-002, ...)
689
+ - Examples: `REQ-F-001: User can log in with Discord OAuth`, `REQ-NF-001: Page loads in <2s on 4G`
343
690
 
344
691
  Each requirement must be:
345
692
  - **User-centric** — describes a capability from the user's perspective
@@ -348,9 +695,9 @@ Each requirement must be:
348
695
 
349
696
  **7e. Write REQUIREMENTS.md:**
350
697
 
351
- **CRITICAL: Write REQUIREMENTS.md NOW. The roadmap planner depends on this file.**
698
+ **CRITICAL (no hook): Write REQUIREMENTS.md NOW. The roadmap planner depends on this file.**
352
699
 
353
- Read the template from `skills/begin/templates/REQUIREMENTS.md.tmpl` and write `.planning/REQUIREMENTS.md` with:
700
+ Read the template from `${CLAUDE_SKILL_DIR}/templates/REQUIREMENTS.md.tmpl` and write `.planning/REQUIREMENTS.md` with:
354
701
  - All v1 requirements grouped by category
355
702
  - All v2 requirements with deferral reasons
356
703
  - Out-of-scope items with rationale
@@ -360,39 +707,55 @@ Read the template from `skills/begin/templates/REQUIREMENTS.md.tmpl` and write `
360
707
 
361
708
  ### Step 8: Roadmap Generation (delegated to subagent)
362
709
 
363
- Display to the user: `◐ Spawning planner (roadmap)...`
710
+ Display to the user: `◆ Spawning roadmapper...`
364
711
 
365
- Spawn the planner in roadmap mode:
712
+ Spawn the roadmapper agent:
366
713
 
367
714
  ```
368
715
  Task({
369
- subagent_type: "pbr:planner",
716
+ subagent_type: "pbr:roadmapper",
717
+ // After roadmapper: check for ## ROADMAP CREATED or ## ROADMAP BLOCKED
370
718
  prompt: <roadmap prompt>
371
719
  })
372
720
  ```
373
721
 
374
- **NOTE**: The `pbr:planner` subagent type auto-loads the agent definition. Do NOT inline it. The planner agent will read REQUIREMENTS.md and SUMMARY.md from disk — you only need to tell it what to do and where files are.
722
+ **NOTE**: The `pbr:roadmapper` subagent type auto-loads the agent definition. Do NOT inline it. The roadmapper agent will read REQUIREMENTS.md and SUMMARY.md from disk — you only need to tell it what to do and where files are.
375
723
 
376
724
  **Path resolution**: Before constructing the agent prompt, resolve `${CLAUDE_PLUGIN_ROOT}` to its absolute path. Do not pass the variable literally in prompts — Task() contexts may not expand it.
377
725
 
378
726
  #### Roadmap Prompt Template
379
727
 
380
- Read `skills/begin/templates/roadmap-prompt.md.tmpl` for the prompt structure.
728
+ Read `${CLAUDE_SKILL_DIR}/templates/roadmap-prompt.md.tmpl` for the prompt structure.
729
+
730
+ **Prepend this block to the roadmap planner prompt before sending:**
731
+ ```
732
+ <files_to_read>
733
+ CRITICAL (no hook): Read these files BEFORE any other action:
734
+ 1. .planning/REQUIREMENTS.md — scoped requirements for phase planning
735
+ 2. .planning/research/SUMMARY.md — research synthesis (if exists)
736
+ </files_to_read>
737
+ ```
381
738
 
382
739
  **Placeholders to fill:**
383
740
  - `{project name}` — project name from Step 2
384
741
  - `{description}` — project description from Step 2
385
742
  - `{quick|standard|comprehensive}` — depth setting from Step 3
386
743
 
387
- **After the planner completes:**
744
+ **After the roadmapper completes:**
745
+ - **Spot-check:** Verify `.planning/ROADMAP.md` exists on disk using Glob before attempting to read it. If missing, the roadmapper may have failed silently — warn: `⚠ ROADMAP.md not found after roadmapper completed. Re-spawning roadmapper...` and retry once.
388
746
  - Read `.planning/ROADMAP.md`
389
747
  - Count the phases from the roadmap content
390
748
  - Verify the roadmap contains a `## Milestone:` section wrapping the phases (the planner should generate this). If not, the initial set of phases constitutes the first milestone — add the section header yourself.
749
+ - Verify each phase section includes `**Requirements:**` and `**Success Criteria:**` fields.
750
+ - Verify a `## Milestones` index section exists near the top of the roadmap.
391
751
  - Display:
392
752
  ```
393
753
  ✓ Roadmap created — {N} phases in milestone "{name}"
394
754
  ```
395
- - If `gates.confirm_roadmap` is true in config, use the **approve-revise-abort** pattern from `skills/shared/gate-prompts.md`:
755
+ - **Auto-mode bypass:** If `config.mode === 'autonomous'`, display "PBR > Auto-mode: advancing to state initialization..." and skip the roadmap approval gate. Proceed directly to Step 9.
756
+ - If `gates.confirm_roadmap` is true in config (interactive mode):
757
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
758
+ Use the **approve-revise-abort** pattern from `skills/shared/gate-prompts.md`:
396
759
  question: "Approve this roadmap?"
397
760
  options:
398
761
  - label: "Approve" description: "Proceed with this roadmap"
@@ -408,26 +771,35 @@ Read `skills/begin/templates/roadmap-prompt.md.tmpl` for the prompt structure.
408
771
 
409
772
  Write the project state files from templates:
410
773
 
411
- **CRITICAL: You MUST write all 5 state initialization files (Steps 9a-9e). Do NOT skip any.**
774
+ **CRITICAL (no hook): You MUST write all 5 state initialization files (Steps 9a-9e). Do NOT skip any.**
412
775
 
413
- **CRITICAL: Write PROJECT.md NOW. Do NOT skip this step.**
776
+ **CRITICAL (no hook): Write PROJECT.md NOW. Do NOT skip this step.**
414
777
 
415
778
  **9a. Write PROJECT.md:**
416
- 1. Read `skills/begin/templates/PROJECT.md.tmpl`
779
+ 1. Read `${CLAUDE_SKILL_DIR}/templates/PROJECT.md.tmpl`
417
780
  2. Fill in:
418
781
  - `{project_name}` — from questioning
419
782
  - `{2-3 sentences}` — project description from questioning
420
783
  - `{ONE sentence}` — core value statement
421
- - Out-of-scope features
784
+ - **Requirements** section with three lifecycle categories:
785
+ - `### Active` — v1 requirements committed for this milestone
786
+ - `### Validated` — requirements completed and verified (empty at project start)
787
+ - `### Out of Scope` — deferred and excluded items with rationale
788
+ - **Key Decisions** table with Outcome column:
789
+ ```markdown
790
+ | Decision | Rationale | Date | Outcome |
791
+ |----------|-----------|------|---------|
792
+ | {decision} | {why} | {date} | Pending |
793
+ ```
794
+ All initial decisions start with Outcome = `Pending`. Updated to `Good`, `Revisit`, or `Pending` during `/pbr:milestone complete` (see PROJECT.md Evolution Review step).
422
795
  - Technical context and constraints
423
- - Initial key decisions from the questioning conversation
424
796
  3. Write to `.planning/PROJECT.md`
425
797
  4. Ensure the `## Milestones` section is filled in with the project name and phase count from the roadmap
426
798
 
427
- **CRITICAL: Write STATE.md NOW. Do NOT skip this step.**
799
+ **CRITICAL (no hook): Write STATE.md NOW. Do NOT skip this step.**
428
800
 
429
801
  **9b. Write STATE.md:**
430
- 1. Read `skills/begin/templates/STATE.md.tmpl`
802
+ 1. Read `${CLAUDE_SKILL_DIR}/templates/STATE.md.tmpl`
431
803
  2. Fill in:
432
804
  - `{date}` — today's date
433
805
  - `{total}` — total phase count from roadmap
@@ -438,59 +810,77 @@ Write the project state files from templates:
438
810
  4. Fill in the `## Milestone` section with the project name and total phase count
439
811
  5. **STATE.md size limit**: Follow size limit enforcement rules in `skills/shared/state-update.md` (150 lines max).
440
812
 
441
- **CRITICAL: Write CONTEXT.md NOW. Do NOT skip this step.**
813
+ **CRITICAL (no hook): Write context to PROJECT.md NOW. Do NOT skip this step.**
814
+
815
+ **9c. Write context to PROJECT.md ## Context section:**
816
+ 1. Read `${CLAUDE_SKILL_DIR}/templates/project-CONTEXT.md.tmpl`
817
+ 2. Fill in from the questioning conversation:
818
+ - Locked Decisions: all technology choices and architecture decisions from Step 2
819
+ - User Constraints: budget, timeline, skill level, hosting, team
820
+ - Deferred Ideas: out-of-scope items identified in Step 7c scoping
821
+ - Claude's Discretion: any areas where user said "you decide"
822
+ 3. Append to `.planning/PROJECT.md` under a `## Context` section with subsections:
823
+ - `### Locked Decisions`
824
+ - `### User Constraints`
825
+ - `### Deferred Ideas`
826
+ 4. Do NOT write a separate CONTEXT.md file. All context lives in PROJECT.md now.
827
+ 5. **Backwards compat migration:** If `.planning/CONTEXT.md` exists (from a prior project version), read its content and merge into PROJECT.md ## Context section. Log: "PBR > Migrated CONTEXT.md into PROJECT.md"
828
+
829
+ **9d. Initialize velocity and session fields in STATE.md frontmatter:**
830
+ Add these fields to the STATE.md YAML frontmatter during initialization:
831
+ - `velocity: {}` — empty object, populated as plans are executed
832
+ - `session_last: ""` — set when `/pbr:pause-work` is run
833
+ - `session_stopped_at: ""` — set when `/pbr:pause-work` is run
834
+ - `session_resume: ""` — set when `/pbr:pause-work` is run
835
+
836
+ **Do NOT write a ## History section to STATE.md.** History has been removed from STATE.md to keep it lean. Milestone completion records are preserved in milestone archives.
837
+ **Backwards compat:** If `.planning/HISTORY.md` exists from a prior project, it is ignored during new project initialization.
838
+
839
+ **CRITICAL (no hook): Create phase directories NOW. Do NOT skip this step.**
442
840
 
443
- **9c. Write CONTEXT.md:**
444
- Create `.planning/CONTEXT.md` from information gathered during questioning:
841
+ **9e. Create phase directories:**
842
+ For each phase in the roadmap, create the directory structure:
843
+ ```
844
+ .planning/phases/01-{slug}/
845
+ .planning/phases/02-{slug}/
846
+ ...
847
+ ```
445
848
 
446
- ```markdown
447
- # Project Context
849
+ Where `{slug}` is the phase name in kebab-case (e.g., `project-setup`, `authentication`).
448
850
 
449
- ## Locked Decisions
450
- {Technology choices, architecture decisions, and constraints that are NON-NEGOTIABLE}
851
+ **9f. Create KNOWLEDGE.md:**
852
+ Write `.planning/KNOWLEDGE.md` with empty knowledge base tables:
451
853
 
452
- | Decision | Rationale | Locked By |
453
- |----------|-----------|-----------|
454
- | {e.g., "Use TypeScript"} | {User preference, team skill} | User |
854
+ ```markdown
855
+ ---
856
+ updated: "{today's date}"
857
+ ---
858
+ # Project Knowledge Base
455
859
 
456
- ## User Constraints
457
- {Budget, timeline, skill level, hosting, team size}
860
+ Aggregated knowledge from milestone completions. Auto-maintained by milestone-learnings.js.
458
861
 
459
- ## Deferred Ideas
460
- {Features explicitly moved to v2 or out-of-scope}
862
+ ## Key Rules
461
863
 
462
- | Idea | Reason Deferred |
463
- |------|----------------|
464
- | {feature} | {reason} |
465
- ```
864
+ Architectural rules and constraints discovered during development.
466
865
 
467
- **CRITICAL: Write HISTORY.md NOW. Do NOT skip this step.**
866
+ | ID | Rule | Source | Date |
867
+ |----|------|--------|------|
468
868
 
469
- **9d. Write HISTORY.md:**
470
- Create `.planning/HISTORY.md` with an initial entry:
869
+ ## Patterns
471
870
 
472
- ```markdown
473
- # Project History
871
+ Reusable patterns and conventions established across phases.
474
872
 
475
- ## {date} Project Created
873
+ | ID | Pattern | Source | Date |
874
+ |----|---------|--------|------|
476
875
 
477
- - Initialized Plan-Build-Run project
478
- - Depth: {depth}, Mode: {mode}
479
- - Roadmap: {N} phases planned
480
- ```
876
+ ## Lessons Learned
481
877
 
482
- **CRITICAL: Create phase directories NOW. Do NOT skip this step.**
878
+ What worked, what didn't, and deferred items for future consideration.
483
879
 
484
- **9e. Create phase directories:**
485
- For each phase in the roadmap, create the directory structure:
486
- ```
487
- .planning/phases/01-{slug}/
488
- .planning/phases/02-{slug}/
489
- ...
880
+ | ID | Lesson | Type | Source | Date |
881
+ |----|--------|------|--------|------|
490
882
  ```
491
883
 
492
- Where `{slug}` is the phase name in kebab-case (e.g., `project-setup`, `authentication`).
493
-
494
884
  ---
495
885
 
496
886
  ### Step 10: Git Setup (inline)
@@ -512,15 +902,18 @@ If `gates.confirm_project` is true in config:
512
902
  - Phases: {count} phases in roadmap
513
903
  - Requirements: {count} v1 requirements
514
904
  - Config: depth={depth}, mode={mode}
515
- - Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
516
- question: "Everything look good? Commit the planning docs?"
517
- options:
518
- - label: "Yes" description: "Stage and commit .planning/ files"
519
- - label: "No" description: "Let me review and adjust first"
520
- - If user selects "Yes" and `planning.commit_docs` is true:
521
- - Stage `.planning/` files (excluding research/ if gitignored)
522
- - Commit: `chore: initialize plan-build-run project planning`
523
- - If user selects "No": let user review and adjust
905
+ - If `gates.confirm_commit_docs` is `true` OR this is a **brownfield** project (existing code detected in Step 1):
906
+ **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
907
+ Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
908
+ question: "Everything look good? Commit the planning docs?"
909
+ options:
910
+ - label: "Yes" description: "Stage and commit .planning/ files"
911
+ - label: "No" description: "Let me review and adjust first"
912
+ - If user selects "Yes" and `planning.commit_docs` is true:
913
+ - Stage `.planning/` files (excluding research/ if gitignored)
914
+ - Commit: `chore: initialize plan-build-run project planning`
915
+ - If user selects "No": let user review and adjust
916
+ - If `gates.confirm_commit_docs` is `false` AND greenfield: skip the question and commit automatically if `planning.commit_docs` is true
524
917
 
525
918
  ---
526
919
 
@@ -530,51 +923,14 @@ Delete `.planning/.active-skill` if it exists. This must happen on all paths (su
530
923
 
531
924
  ## Completion
532
925
 
533
- After all steps complete, present the final summary:
534
-
535
- Use the branded stage banner from `references/ui-formatting.md`:
536
-
537
- ```
538
- ╔══════════════════════════════════════════════════════════════╗
539
- ║ PLAN-BUILD-RUN ► PROJECT INITIALIZED ✓ ║
540
- ╚══════════════════════════════════════════════════════════════╝
541
-
542
- **{name}**
926
+ After all steps complete, present the final summary using the stage banner format from Read `references/ui-brand.md`:
543
927
 
544
- {core value one-liner}
928
+ Display the `PROJECT INITIALIZED ✓` banner with project name, core value, phase list, and requirement counts. Then display the "Next Up" block (see § "Next Up Block" in ui-brand.md) pointing to `/pbr:discuss-phase 1` with alternatives: `/pbr:explore`, `/pbr:plan-phase 1`, `/pbr:new-milestone`, `/pbr:settings`, `/pbr:intel` (if codebase scan results exist in `.planning/codebase/`). Include `<sub>/clear first → fresh context window</sub>` inside the Next Up routing block.
545
929
 
546
- Roadmap: {N} phases
547
- 1. {Phase 1 name}
548
- 2. {Phase 2 name}
549
- ...
550
-
551
- Requirements: {N} committed, {M} deferred, {K} out-of-scope
552
- ```
553
-
554
- Then use the "Next Up" routing block:
555
- ```
556
-
557
-
558
- ╔══════════════════════════════════════════════════════════════╗
559
- ║ ▶ NEXT UP ║
560
- ╚══════════════════════════════════════════════════════════════╝
561
-
562
- **Phase 1: {Name}** — {one-line goal}
563
-
564
- `/pbr:discuss 1`
565
-
566
- <sub>`/clear` first → fresh context window</sub>
567
-
568
-
569
-
570
- **Also available:**
571
- - `/pbr:explore` — open-ended exploration before planning
572
- - `/pbr:plan 1` — jump straight to planning Phase 1
573
- - `/pbr:milestone new` — add a second milestone with new phases
574
- - `/pbr:config` — adjust workflow settings
575
-
576
-
577
- ```
930
+ **Auto-mode chaining to first phase discussion:** If `config.mode === 'autonomous'`, after displaying the completion banner, automatically chain to the first phase discussion:
931
+ - Display: "PBR > Auto-mode: advancing to phase 1 discussion..."
932
+ - Write `.planning/.auto-next` with `/pbr:discuss-phase 1` to trigger auto-continue hook
933
+ - If any stage in the auto-mode chain fails, stop the chain and report: "PBR > Auto-mode chain stopped: {stage} failed. Resume manually with `/pbr:{next_command}`."
578
934
 
579
935
  ---
580
936
 
@@ -584,7 +940,7 @@ Then use the "Next Up" routing block:
584
940
  If a researcher Task() fails or times out:
585
941
  - Note which topic wasn't researched
586
942
  - Continue with available research
587
- - Display: `⚠ Research on {topic} failed. Proceeding without it. You can re-research during /pbr:plan.`
943
+ - Display: `⚠ Research on {topic} failed. Proceeding without it. You can re-research during /pbr:plan-phase.`
588
944
 
589
945
  ### User wants to restart
590
946
  If user says they want to start over mid-flow:
@@ -605,7 +961,7 @@ Cannot create .planning/ directory.
605
961
 
606
962
  ---
607
963
 
608
- ## Files Created by /pbr:begin
964
+ ## Files Created by /pbr:new-project
609
965
 
610
966
  | File | Purpose | When |
611
967
  |------|---------|------|
@@ -614,8 +970,7 @@ Cannot create .planning/ directory.
614
970
  | `.planning/research/SUMMARY.md` | Research synthesis | Step 6 (if research enabled) |
615
971
  | `.planning/REQUIREMENTS.md` | Scoped requirements | Step 7 |
616
972
  | `.planning/ROADMAP.md` | Phase roadmap | Step 8 |
617
- | `.planning/PROJECT.md` | Project overview | Step 9 |
618
- | `.planning/STATE.md` | Current state tracker | Step 9 |
619
- | `.planning/CONTEXT.md` | Decisions and constraints | Step 9 |
620
- | `.planning/HISTORY.md` | Project history log | Step 9 |
973
+ | `.planning/PROJECT.md` | Project overview + context (locked decisions, constraints, deferred ideas) | Step 9 |
974
+ | `.planning/STATE.md` | Current state tracker + history log | Step 9 |
975
+ | `.planning/KNOWLEDGE.md` | Project knowledge base (rules, patterns, lessons) | Step 9 |
621
976
  | `.planning/phases/NN-*/` | Phase directories | Step 9 |