@sienklogic/plan-build-run 2.51.0 → 2.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/package.json +4 -2
  3. package/plugins/copilot-pbr/agents/audit.agent.md +2 -5
  4. package/plugins/copilot-pbr/agents/codebase-mapper.agent.md +1 -4
  5. package/plugins/copilot-pbr/agents/debugger.agent.md +1 -4
  6. package/plugins/copilot-pbr/agents/dev-sync.agent.md +6 -9
  7. package/plugins/copilot-pbr/agents/executor.agent.md +1 -6
  8. package/plugins/copilot-pbr/agents/general.agent.md +1 -4
  9. package/plugins/copilot-pbr/agents/integration-checker.agent.md +1 -4
  10. package/plugins/copilot-pbr/agents/plan-checker.agent.md +1 -4
  11. package/plugins/copilot-pbr/agents/planner.agent.md +1 -4
  12. package/plugins/copilot-pbr/agents/researcher.agent.md +1 -4
  13. package/plugins/copilot-pbr/agents/synthesizer.agent.md +1 -4
  14. package/plugins/copilot-pbr/agents/verifier.agent.md +2 -4
  15. package/plugins/copilot-pbr/commands/audit.md +5 -0
  16. package/plugins/copilot-pbr/commands/begin.md +5 -0
  17. package/plugins/copilot-pbr/commands/build.md +5 -0
  18. package/plugins/copilot-pbr/commands/config.md +5 -0
  19. package/plugins/copilot-pbr/commands/continue.md +5 -0
  20. package/plugins/copilot-pbr/commands/dashboard.md +5 -0
  21. package/plugins/copilot-pbr/commands/debug.md +5 -0
  22. package/plugins/copilot-pbr/commands/discuss.md +5 -0
  23. package/plugins/copilot-pbr/commands/do.md +5 -0
  24. package/plugins/copilot-pbr/commands/explore.md +5 -0
  25. package/plugins/copilot-pbr/commands/health.md +5 -0
  26. package/plugins/copilot-pbr/commands/help.md +5 -0
  27. package/plugins/copilot-pbr/commands/import.md +5 -0
  28. package/plugins/copilot-pbr/commands/milestone.md +5 -0
  29. package/plugins/copilot-pbr/commands/note.md +5 -0
  30. package/plugins/copilot-pbr/commands/pause.md +5 -0
  31. package/plugins/copilot-pbr/commands/plan.md +5 -0
  32. package/plugins/copilot-pbr/commands/quick.md +5 -0
  33. package/plugins/copilot-pbr/commands/resume.md +5 -0
  34. package/plugins/copilot-pbr/commands/review.md +5 -0
  35. package/plugins/copilot-pbr/commands/scan.md +5 -0
  36. package/plugins/copilot-pbr/commands/setup.md +5 -0
  37. package/plugins/copilot-pbr/commands/status.md +5 -0
  38. package/plugins/copilot-pbr/commands/statusline.md +5 -0
  39. package/plugins/copilot-pbr/commands/todo.md +5 -0
  40. package/plugins/copilot-pbr/plugin.json +1 -1
  41. package/plugins/copilot-pbr/references/agent-teams.md +0 -1
  42. package/plugins/copilot-pbr/references/common-bug-patterns.md +0 -1
  43. package/plugins/copilot-pbr/references/config-reference.md +0 -1
  44. package/plugins/copilot-pbr/references/continuation-format.md +0 -1
  45. package/plugins/copilot-pbr/references/deviation-rules.md +0 -1
  46. package/plugins/copilot-pbr/references/git-integration.md +0 -1
  47. package/plugins/copilot-pbr/references/integration-patterns.md +0 -1
  48. package/plugins/copilot-pbr/references/model-profiles.md +0 -1
  49. package/plugins/copilot-pbr/references/model-selection.md +0 -1
  50. package/plugins/copilot-pbr/references/plan-authoring.md +0 -1
  51. package/plugins/copilot-pbr/references/plan-format.md +0 -1
  52. package/plugins/copilot-pbr/references/reading-verification.md +0 -1
  53. package/plugins/copilot-pbr/references/signal-files.md +41 -0
  54. package/plugins/copilot-pbr/references/stub-patterns.md +0 -1
  55. package/plugins/copilot-pbr/references/wave-execution.md +0 -1
  56. package/plugins/copilot-pbr/skills/begin/SKILL.md +74 -52
  57. package/plugins/copilot-pbr/skills/build/SKILL.md +55 -69
  58. package/plugins/copilot-pbr/skills/config/SKILL.md +7 -0
  59. package/plugins/copilot-pbr/skills/continue/SKILL.md +31 -24
  60. package/plugins/copilot-pbr/skills/dashboard/SKILL.md +8 -7
  61. package/plugins/copilot-pbr/skills/debug/SKILL.md +11 -0
  62. package/plugins/copilot-pbr/skills/discuss/SKILL.md +2 -0
  63. package/plugins/copilot-pbr/skills/do/SKILL.md +2 -0
  64. package/plugins/copilot-pbr/skills/explore/SKILL.md +7 -1
  65. package/plugins/copilot-pbr/skills/health/SKILL.md +2 -0
  66. package/plugins/copilot-pbr/skills/help/SKILL.md +6 -0
  67. package/plugins/copilot-pbr/skills/import/SKILL.md +9 -0
  68. package/plugins/copilot-pbr/skills/milestone/SKILL.md +20 -196
  69. package/plugins/copilot-pbr/skills/note/SKILL.md +2 -0
  70. package/plugins/copilot-pbr/skills/pause/SKILL.md +5 -0
  71. package/plugins/copilot-pbr/skills/plan/SKILL.md +87 -119
  72. package/plugins/copilot-pbr/skills/quick/SKILL.md +13 -8
  73. package/plugins/copilot-pbr/skills/resume/SKILL.md +4 -0
  74. package/plugins/copilot-pbr/skills/review/SKILL.md +85 -47
  75. package/plugins/copilot-pbr/skills/scan/SKILL.md +6 -0
  76. package/plugins/copilot-pbr/skills/setup/SKILL.md +2 -0
  77. package/plugins/copilot-pbr/skills/shared/commit-planning-docs.md +0 -1
  78. package/plugins/copilot-pbr/skills/shared/config-loading.md +0 -1
  79. package/plugins/copilot-pbr/skills/shared/context-budget.md +0 -1
  80. package/plugins/copilot-pbr/skills/shared/context-loader-task.md +0 -1
  81. package/plugins/copilot-pbr/skills/shared/digest-select.md +0 -1
  82. package/plugins/copilot-pbr/skills/shared/domain-probes.md +0 -1
  83. package/plugins/copilot-pbr/skills/shared/gate-prompts.md +0 -1
  84. package/plugins/copilot-pbr/skills/shared/phase-argument-parsing.md +0 -1
  85. package/plugins/copilot-pbr/skills/shared/revision-loop.md +0 -1
  86. package/plugins/copilot-pbr/skills/shared/state-update.md +0 -1
  87. package/plugins/copilot-pbr/skills/shared/universal-anti-patterns.md +1 -2
  88. package/plugins/copilot-pbr/skills/status/SKILL.md +35 -26
  89. package/plugins/copilot-pbr/skills/test/SKILL.md +2 -2
  90. package/plugins/copilot-pbr/skills/todo/SKILL.md +2 -0
  91. package/plugins/copilot-pbr/templates/CONTEXT.md.tmpl +0 -1
  92. package/plugins/copilot-pbr/templates/INTEGRATION-REPORT.md.tmpl +0 -1
  93. package/plugins/copilot-pbr/templates/RESEARCH-SUMMARY.md.tmpl +0 -1
  94. package/plugins/copilot-pbr/templates/ROADMAP.md.tmpl +0 -1
  95. package/plugins/copilot-pbr/templates/SUMMARY.md.tmpl +0 -1
  96. package/plugins/copilot-pbr/templates/VERIFICATION-DETAIL.md.tmpl +0 -1
  97. package/plugins/copilot-pbr/templates/continue-here.md.tmpl +0 -1
  98. package/plugins/copilot-pbr/templates/prompt-partials/phase-project-context.md.tmpl +0 -1
  99. package/plugins/cursor-pbr/.cursor-plugin/plugin.json +1 -1
  100. package/plugins/cursor-pbr/agents/audit.md +1 -1
  101. package/plugins/cursor-pbr/agents/codebase-mapper.md +1 -1
  102. package/plugins/cursor-pbr/agents/debugger.md +1 -1
  103. package/plugins/cursor-pbr/agents/dev-sync.md +6 -6
  104. package/plugins/cursor-pbr/agents/executor.md +1 -3
  105. package/plugins/cursor-pbr/agents/general.md +1 -1
  106. package/plugins/cursor-pbr/agents/integration-checker.md +2 -2
  107. package/plugins/cursor-pbr/agents/plan-checker.md +2 -2
  108. package/plugins/cursor-pbr/agents/planner.md +1 -1
  109. package/plugins/cursor-pbr/agents/researcher.md +2 -2
  110. package/plugins/cursor-pbr/agents/synthesizer.md +1 -1
  111. package/plugins/cursor-pbr/agents/verifier.md +3 -2
  112. package/plugins/cursor-pbr/commands/audit.md +5 -0
  113. package/plugins/cursor-pbr/commands/begin.md +5 -0
  114. package/plugins/cursor-pbr/commands/build.md +5 -0
  115. package/plugins/cursor-pbr/commands/config.md +5 -0
  116. package/plugins/cursor-pbr/commands/continue.md +5 -0
  117. package/plugins/cursor-pbr/commands/dashboard.md +5 -0
  118. package/plugins/cursor-pbr/commands/debug.md +5 -0
  119. package/plugins/cursor-pbr/commands/discuss.md +5 -0
  120. package/plugins/cursor-pbr/commands/do.md +5 -0
  121. package/plugins/cursor-pbr/commands/explore.md +5 -0
  122. package/plugins/cursor-pbr/commands/health.md +5 -0
  123. package/plugins/cursor-pbr/commands/help.md +5 -0
  124. package/plugins/cursor-pbr/commands/import.md +5 -0
  125. package/plugins/cursor-pbr/commands/milestone.md +5 -0
  126. package/plugins/cursor-pbr/commands/note.md +5 -0
  127. package/plugins/cursor-pbr/commands/pause.md +5 -0
  128. package/plugins/cursor-pbr/commands/plan.md +5 -0
  129. package/plugins/cursor-pbr/commands/quick.md +5 -0
  130. package/plugins/cursor-pbr/commands/resume.md +5 -0
  131. package/plugins/cursor-pbr/commands/review.md +5 -0
  132. package/plugins/cursor-pbr/commands/scan.md +5 -0
  133. package/plugins/cursor-pbr/commands/setup.md +5 -0
  134. package/plugins/cursor-pbr/commands/status.md +5 -0
  135. package/plugins/cursor-pbr/commands/statusline.md +5 -0
  136. package/plugins/cursor-pbr/commands/todo.md +5 -0
  137. package/plugins/cursor-pbr/hooks/hooks.json +4 -10
  138. package/plugins/cursor-pbr/references/agent-teams.md +0 -1
  139. package/plugins/{copilot-pbr/references → cursor-pbr/references/archive}/agent-anti-patterns.md +0 -1
  140. package/plugins/cursor-pbr/references/{pbr-rules.md → archive/pbr-rules.md} +0 -1
  141. package/plugins/cursor-pbr/references/common-bug-patterns.md +0 -1
  142. package/plugins/cursor-pbr/references/config-reference.md +0 -1
  143. package/plugins/cursor-pbr/references/continuation-format.md +0 -1
  144. package/plugins/cursor-pbr/references/deviation-rules.md +0 -1
  145. package/plugins/cursor-pbr/references/git-integration.md +0 -1
  146. package/plugins/cursor-pbr/references/integration-patterns.md +0 -1
  147. package/plugins/cursor-pbr/references/model-profiles.md +0 -1
  148. package/plugins/cursor-pbr/references/model-selection.md +0 -1
  149. package/plugins/cursor-pbr/references/plan-authoring.md +0 -1
  150. package/plugins/cursor-pbr/references/plan-format.md +0 -1
  151. package/plugins/cursor-pbr/references/reading-verification.md +0 -1
  152. package/plugins/cursor-pbr/references/signal-files.md +41 -0
  153. package/plugins/cursor-pbr/references/stub-patterns.md +0 -1
  154. package/plugins/cursor-pbr/references/wave-execution.md +0 -1
  155. package/plugins/cursor-pbr/skills/begin/SKILL.md +74 -52
  156. package/plugins/cursor-pbr/skills/build/SKILL.md +58 -70
  157. package/plugins/cursor-pbr/skills/config/SKILL.md +5 -0
  158. package/plugins/cursor-pbr/skills/continue/SKILL.md +31 -24
  159. package/plugins/cursor-pbr/skills/dashboard/SKILL.md +8 -7
  160. package/plugins/cursor-pbr/skills/debug/SKILL.md +8 -0
  161. package/plugins/cursor-pbr/skills/discuss/SKILL.md +2 -0
  162. package/plugins/cursor-pbr/skills/do/SKILL.md +2 -0
  163. package/plugins/cursor-pbr/skills/explore/SKILL.md +5 -1
  164. package/plugins/cursor-pbr/skills/health/SKILL.md +2 -0
  165. package/plugins/cursor-pbr/skills/help/SKILL.md +6 -0
  166. package/plugins/cursor-pbr/skills/import/SKILL.md +7 -0
  167. package/plugins/cursor-pbr/skills/milestone/SKILL.md +20 -196
  168. package/plugins/cursor-pbr/skills/note/SKILL.md +2 -0
  169. package/plugins/cursor-pbr/skills/pause/SKILL.md +4 -0
  170. package/plugins/cursor-pbr/skills/plan/SKILL.md +87 -119
  171. package/plugins/cursor-pbr/skills/quick/SKILL.md +13 -8
  172. package/plugins/cursor-pbr/skills/resume/SKILL.md +4 -0
  173. package/plugins/cursor-pbr/skills/review/SKILL.md +85 -47
  174. package/plugins/cursor-pbr/skills/scan/SKILL.md +5 -0
  175. package/plugins/cursor-pbr/skills/setup/SKILL.md +2 -0
  176. package/plugins/cursor-pbr/skills/shared/commit-planning-docs.md +0 -1
  177. package/plugins/cursor-pbr/skills/shared/config-loading.md +0 -1
  178. package/plugins/cursor-pbr/skills/shared/context-budget.md +0 -1
  179. package/plugins/cursor-pbr/skills/shared/context-loader-task.md +0 -1
  180. package/plugins/cursor-pbr/skills/shared/digest-select.md +0 -1
  181. package/plugins/cursor-pbr/skills/shared/domain-probes.md +0 -1
  182. package/plugins/cursor-pbr/skills/shared/gate-prompts.md +0 -1
  183. package/plugins/cursor-pbr/skills/shared/phase-argument-parsing.md +0 -1
  184. package/plugins/cursor-pbr/skills/shared/revision-loop.md +0 -1
  185. package/plugins/cursor-pbr/skills/shared/state-update.md +0 -1
  186. package/plugins/cursor-pbr/skills/shared/universal-anti-patterns.md +1 -2
  187. package/plugins/cursor-pbr/skills/status/SKILL.md +35 -26
  188. package/plugins/cursor-pbr/skills/test/SKILL.md +2 -2
  189. package/plugins/cursor-pbr/skills/todo/SKILL.md +2 -0
  190. package/plugins/cursor-pbr/templates/CONTEXT.md.tmpl +0 -1
  191. package/plugins/cursor-pbr/templates/INTEGRATION-REPORT.md.tmpl +0 -1
  192. package/plugins/cursor-pbr/templates/RESEARCH-SUMMARY.md.tmpl +0 -1
  193. package/plugins/cursor-pbr/templates/ROADMAP.md.tmpl +0 -1
  194. package/plugins/cursor-pbr/templates/SUMMARY.md.tmpl +0 -1
  195. package/plugins/cursor-pbr/templates/VERIFICATION-DETAIL.md.tmpl +0 -1
  196. package/plugins/cursor-pbr/templates/continue-here.md.tmpl +0 -1
  197. package/plugins/cursor-pbr/templates/prompt-partials/phase-project-context.md.tmpl +0 -1
  198. package/plugins/pbr/.claude-plugin/plugin.json +1 -1
  199. package/plugins/pbr/agents/executor.md +0 -2
  200. package/plugins/{cursor-pbr/references → pbr/references/archive}/agent-anti-patterns.md +0 -1
  201. package/plugins/{copilot-pbr/references → pbr/references/archive}/pbr-rules.md +0 -1
  202. package/plugins/pbr/references/signal-files.md +41 -0
  203. package/plugins/pbr/scripts/check-skill-workflow.js +7 -8
  204. package/plugins/pbr/scripts/check-subagent-output.js +7 -6
  205. package/plugins/pbr/scripts/context-budget-check.js +13 -1
  206. package/plugins/pbr/scripts/enforce-pbr-workflow.js +15 -6
  207. package/plugins/pbr/scripts/lib/core.js +53 -1
  208. package/plugins/pbr/scripts/log-subagent.js +7 -10
  209. package/plugins/pbr/scripts/pbr-tools.js +49 -3
  210. package/plugins/pbr/scripts/progress-tracker.js +13 -3
  211. package/plugins/pbr/scripts/session-cleanup.js +6 -0
  212. package/plugins/pbr/scripts/suggest-compact.js +13 -1
  213. package/plugins/pbr/skills/begin/SKILL.md +13 -13
  214. package/plugins/pbr/skills/build/SKILL.md +24 -7
  215. package/plugins/pbr/skills/milestone/SKILL.md +10 -10
  216. package/plugins/pbr/skills/plan/SKILL.md +9 -9
  217. package/plugins/pbr/skills/quick/SKILL.md +3 -3
  218. package/plugins/pbr/skills/review/SKILL.md +6 -6
  219. /package/plugins/{pbr/references → copilot-pbr/references/archive}/agent-anti-patterns.md +0 -0
  220. /package/plugins/copilot-pbr/references/{checkpoints.md → archive/checkpoints.md} +0 -0
  221. /package/plugins/copilot-pbr/references/{context-quality-tiers.md → archive/context-quality-tiers.md} +0 -0
  222. /package/plugins/{pbr/references → copilot-pbr/references/archive}/pbr-rules.md +0 -0
  223. /package/plugins/copilot-pbr/references/{verification-patterns.md → archive/verification-patterns.md} +0 -0
  224. /package/plugins/cursor-pbr/references/{checkpoints.md → archive/checkpoints.md} +0 -0
  225. /package/plugins/cursor-pbr/references/{context-quality-tiers.md → archive/context-quality-tiers.md} +0 -0
  226. /package/plugins/cursor-pbr/references/{verification-patterns.md → archive/verification-patterns.md} +0 -0
  227. /package/plugins/pbr/references/{checkpoints.md → archive/checkpoints.md} +0 -0
  228. /package/plugins/pbr/references/{context-quality-tiers.md → archive/context-quality-tiers.md} +0 -0
  229. /package/plugins/pbr/references/{verification-patterns.md → archive/verification-patterns.md} +0 -0
@@ -4,6 +4,8 @@ description: "Verify the build matched the plan. Automated checks + walkthrough
4
4
  argument-hint: "<phase-number> [--auto-fix] [--teams]"
5
5
  ---
6
6
 
7
+ **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
+
7
9
  # /pbr:review — Phase Review and Verification
8
10
 
9
11
  You are the orchestrator for `/pbr:review`. This skill verifies that what was built matches what was planned. It runs automated three-layer checks against must-haves, then walks the user through a conversational UAT (user acceptance testing) for each deliverable. Your job is to present findings clearly and help the user decide what's good enough versus what needs fixes.
@@ -13,7 +15,7 @@ You are the orchestrator for `/pbr:review`. This skill verifies that what was bu
13
15
  Reference: `skills/shared/context-budget.md` for the universal orchestrator rules.
14
16
 
15
17
  Additionally for this skill:
16
- - **Minimize** reading agent output — read only VERIFICATION.md frontmatter for summaries
18
+ - **Minimize** reading subagent output — read only VERIFICATION.md frontmatter for summaries
17
19
 
18
20
  ## Step 0 — Immediate Output
19
21
 
@@ -34,7 +36,7 @@ Where `{N}` is the phase number from `$ARGUMENTS`. Then proceed to Step 1.
34
36
 
35
37
  ### Event-Driven Auto-Verification
36
38
 
37
- When `features.goal_verification` is enabled and depth is "standard" or "comprehensive", event hooks automatically queue verification after executor completion. The hook writes `.planning/.auto-verify` as a signal file. The build skill's orchestrator detects this signal and invokes the verifier agent.
39
+ When `features.goal_verification` is enabled and depth is "standard" or "comprehensive", the `event-handler.js` hook automatically queues verification after executor completion. The hook writes `.planning/.auto-verify` as a signal file. The build skill's orchestrator detects this signal and spawns the verifier agent.
38
40
 
39
41
  **This is additive**: `/pbr:review` can always be invoked manually regardless of auto-verification settings. If auto-verification already ran, `/pbr:review` re-runs verification (useful for re-checking after fixes).
40
42
 
@@ -65,20 +67,22 @@ Execute these steps in order.
65
67
 
66
68
  1. Parse `$ARGUMENTS` for phase number and `--auto-fix` flag
67
69
  2. Read `.planning/config.json`
68
- **CRITICAL: Write .active-skill NOW.** Write the text "review" to `.planning/.active-skill` using the Write tool.
70
+ **CRITICAL (hook-enforced): Write .active-skill NOW.** Write the text "review" to `.planning/.active-skill` using the Write tool.
69
71
  3. Resolve depth profile: run `node ${PLUGIN_ROOT}/scripts/pbr-tools.js config resolve-depth` to get the effective feature/gate settings for the current depth. Store the result for use in later gating decisions.
70
72
  4. Validate:
71
73
  - Phase directory exists at `.planning/phases/{NN}-{slug}/`
72
74
  - SUMMARY.md files exist (phase has been built)
73
75
  - PLAN.md files exist (needed for must-have extraction)
74
76
  5. If no phase number given, read current phase from `.planning/STATE.md`
75
- 6. If `.planning/.auto-verify` signal file exists, read it and note the auto-verification was already queued. Delete the signal file after reading (one-shot).
77
+ 6. If `.planning/.auto-verify` signal file exists, read it and note the auto-verification was already queued. Delete the signal file after reading (one-shot, same pattern as auto-continue.js).
76
78
 
77
79
  **Validation errors — use branded error boxes:**
78
80
 
79
81
  If no SUMMARY.md files:
80
82
  ```
81
- ERROR
83
+ ╔══════════════════════════════════════════════════════════════╗
84
+ ║ ERROR ║
85
+ ╚══════════════════════════════════════════════════════════════╝
82
86
 
83
87
  Phase {N} hasn't been built yet.
84
88
 
@@ -87,7 +91,9 @@ Phase {N} hasn't been built yet.
87
91
 
88
92
  If no PLAN.md files:
89
93
  ```
90
- ERROR
94
+ ╔══════════════════════════════════════════════════════════════╗
95
+ ║ ERROR ║
96
+ ╚══════════════════════════════════════════════════════════════╝
91
97
 
92
98
  Phase {N} has no plans.
93
99
 
@@ -115,30 +121,35 @@ Check if a VERIFICATION.md already exists from `/pbr:build`'s auto-verification
115
121
 
116
122
  ### Step 3: Automated Verification (delegated)
117
123
 
118
- **Depth profile gate:** Before invoking the verifier, resolve the depth profile. If `features.goal_verification` is false in the profile, skip automated verification and proceed directly to Step 5 (Conversational UAT). Note to user: "Automated verification skipped (depth: {depth}). Proceeding to manual review."
124
+ **Depth profile gate:** Before spawning the verifier, resolve the depth profile. If `features.goal_verification` is false in the profile, skip automated verification and proceed directly to Step 5 (Conversational UAT). Note to user: "Automated verification skipped (depth: {depth}). Proceeding to manual review."
119
125
 
120
126
  #### Team Review Mode
121
127
 
122
128
  If `--teams` flag is present OR `config.parallelization.use_teams` is true:
123
129
 
124
130
  1. Create team output directory: `.planning/phases/{NN}-{slug}/team/` (if not exists)
125
- 2. Display to the user: `Spawning 3 verifiers in parallel (functional, security, performance)...`
131
+ 2. Display to the user: `◐ Spawning 3 verifiers in parallel (functional, security, performance)...`
126
132
 
127
- Invoke THREE `@verifier` agents in parallel:
133
+ Spawn THREE verifier agents in parallel using Task():
128
134
 
129
135
  **Agent 1 -- Functional Reviewer**:
130
- - Invoke `@verifier` with: "You are the FUNCTIONAL REVIEWER in a review team. Focus on: must-haves met, code correctness, completeness, integration points. Write output to `.planning/phases/{NN}-{slug}/team/functional-VERIFY.md`."
136
+ - subagent_type: "pbr:verifier"
137
+ - Prompt includes: "You are the FUNCTIONAL REVIEWER in a review team. Focus on: must-haves met, code correctness, completeness, integration points. Write output to `.planning/phases/{NN}-{slug}/team/functional-VERIFY.md`."
131
138
 
132
139
  **Agent 2 -- Security Auditor**:
133
- - Invoke `@verifier` with: "You are the SECURITY AUDITOR in a review team. Focus on: vulnerabilities, auth bypass paths, injection risks, secrets exposure, permission escalation. Write output to `.planning/phases/{NN}-{slug}/team/security-VERIFY.md`."
140
+ - subagent_type: "pbr:verifier"
141
+ - Prompt includes: "You are the SECURITY AUDITOR in a review team. Focus on: vulnerabilities, auth bypass paths, injection risks, secrets exposure, permission escalation. Write output to `.planning/phases/{NN}-{slug}/team/security-VERIFY.md`."
134
142
 
135
143
  **Agent 3 -- Performance Analyst**:
136
- - Invoke `@verifier` with: "You are the PERFORMANCE ANALYST in a review team. Focus on: N+1 queries, memory leaks, unnecessary allocations, bundle size impact, blocking operations. Write output to `.planning/phases/{NN}-{slug}/team/performance-VERIFY.md`."
144
+ - subagent_type: "pbr:verifier"
145
+ - Prompt includes: "You are the PERFORMANCE ANALYST in a review team. Focus on: N+1 queries, memory leaks, unnecessary allocations, bundle size impact, blocking operations. Write output to `.planning/phases/{NN}-{slug}/team/performance-VERIFY.md`."
137
146
 
138
147
  3. Wait for all three to complete
139
- 4. Display to the user: `Spawning synthesizer...`
148
+ 4. Display to the user: `◐ Spawning synthesizer...`
140
149
 
141
- Invoke `@synthesizer` with: "Read all *-VERIFY.md files in `.planning/phases/{NN}-{slug}/team/`. Synthesize into a unified VERIFICATION.md. Merge pass/fail verdicts -- a must-have fails if ANY reviewer flags it. Combine gap lists. Security and performance findings go into dedicated sections."
150
+ Spawn synthesizer:
151
+ - subagent_type: "pbr:synthesizer"
152
+ - Prompt: "Read all *-VERIFY.md files in `.planning/phases/{NN}-{slug}/team/`. Synthesize into a unified VERIFICATION.md. Merge pass/fail verdicts -- a must-have fails if ANY reviewer flags it. Combine gap lists. Security and performance findings go into dedicated sections."
142
153
  5. Proceed to UAT walkthrough with the unified VERIFICATION.md
143
154
 
144
155
  If teams not enabled, proceed with existing single-verifier flow.
@@ -147,11 +158,19 @@ Reference: `references/agent-teams.md`
147
158
 
148
159
  #### Single-Verifier Flow (default)
149
160
 
150
- Display to the user: `Spawning verifier...`
161
+ Display to the user: `◐ Spawning verifier...`
151
162
 
152
- Invoke the `@verifier` agent to run three-layer checks.
163
+ Spawn a verifier Task() to run three-layer checks:
153
164
 
154
- **Path resolution**: Before constructing any agent prompt, resolve plugin root to its absolute path. Do not pass the variable literally in prompts. Use the resolved absolute path for any pbr-tools.js or template references included in the prompt.
165
+ ```
166
+ Task({
167
+ subagent_type: "pbr:verifier",
168
+ // After verifier completes, check for: ## VERIFICATION COMPLETE
169
+ prompt: <verifier prompt>
170
+ })
171
+ ```
172
+
173
+ **Path resolution**: Before constructing any agent prompt, resolve `${PLUGIN_ROOT}` to its absolute path. Do not pass the variable literally in prompts — Task() contexts may not expand it. Use the resolved absolute path for any pbr-tools.js or template references included in the prompt.
155
174
 
156
175
  #### Verifier Prompt Template
157
176
 
@@ -160,7 +179,7 @@ Read `skills/review/templates/verifier-prompt.md.tmpl` and use its content as th
160
179
  **Prepend this block to the verifier prompt before sending:**
161
180
  ```
162
181
  <files_to_read>
163
- CRITICAL: Read these files BEFORE any other action:
182
+ CRITICAL (no hook): Read these files BEFORE any other action:
164
183
  1. .planning/phases/{NN}-{slug}/PLAN-*.md — must-haves to verify against
165
184
  2. .planning/phases/{NN}-{slug}/SUMMARY-*.md — executor build summaries
166
185
  3. .planning/phases/{NN}-{slug}/VERIFICATION.md — prior verification results (if exists)
@@ -179,7 +198,7 @@ Wait for the verifier to complete.
179
198
  **After the verifier completes**, read VERIFICATION.md frontmatter and display a quick summary before the full results:
180
199
 
181
200
  ```
182
- Verifier: {passed}/{total} must-haves verified
201
+ Verifier: {passed}/{total} must-haves verified
183
202
  ```
184
203
 
185
204
  Then show a brief table of must-haves with pass/fail status:
@@ -187,15 +206,15 @@ Then show a brief table of must-haves with pass/fail status:
187
206
  ```
188
207
  | Must-Have | Status |
189
208
  |-----------|--------|
190
- | {name} | PASS |
191
- | {name} | FAIL |
209
+ | {name} | |
210
+ | {name} | |
192
211
  ```
193
212
 
194
213
  Then display the overall verdict (`PASSED`, `GAPS FOUND`, or `HUMAN NEEDED`) before proceeding to the full results presentation.
195
214
 
196
215
  ### Step 3a: Spot-Check Verifier Output
197
216
 
198
- CRITICAL: Verify verifier output before proceeding.
217
+ CRITICAL (no hook): Verify verifier output before proceeding.
199
218
 
200
219
  1. **VERIFICATION.md exists**: Check `.planning/phases/{NN}-{slug}/VERIFICATION.md` exists on disk
201
220
  2. **Status field present**: Read VERIFICATION.md frontmatter — verify `status` field is present and is one of: pass, fail, partial
@@ -233,16 +252,16 @@ The same gaps have persisted across {attempt} verification attempts.
233
252
  Remaining gaps: {count}
234
253
  ```
235
254
 
236
- Use the multi-option-escalation pattern from `skills/shared/gate-prompts.md`:
255
+ Use AskUserQuestion (pattern: multi-option-escalation from `skills/shared/gate-prompts.md`):
237
256
  question: "Phase {N} has failed verification {attempt} times with {count} persistent gaps. How should we proceed?"
238
257
  header: "Escalate"
239
258
  options:
240
259
  - label: "Accept gaps" description: "Mark as complete-with-gaps and move on"
241
260
  - label: "Re-plan" description: "Go back to /pbr:plan {N} with gap context"
242
- - label: "Debug" description: "Invoke /pbr:debug to investigate root causes"
261
+ - label: "Debug" description: "Spawn /pbr:debug to investigate root causes"
243
262
  - label: "Retry" description: "Try one more verification cycle"
244
263
 
245
- - **If user selects "Accept gaps":** Follow up with a second question:
264
+ - **If user selects "Accept gaps":** Follow up with a second AskUserQuestion:
246
265
  question: "Accept all gaps or pick specific ones to override?"
247
266
  header: "Override?"
248
267
  options:
@@ -349,7 +368,7 @@ If all automated checks and UAT items passed:
349
368
  4. Update the `Status` column to `verified`
350
369
  5. Update the `Completed` column to the current date (YYYY-MM-DD)
351
370
  6. Save the file — do NOT skip this step
352
- 2. Update `.planning/STATE.md` **(CRITICAL — update BOTH frontmatter AND body):**
371
+ 2. Update `.planning/STATE.md` **(CRITICAL (no hook) — update BOTH frontmatter AND body):**
353
372
  - Frontmatter: `status: "verified"`, `progress_percent`, `last_activity`, `last_command`
354
373
  - Body `## Current Position`: `Status:` line, `Last activity:` line, `Progress:` bar
355
374
  - These MUST stay in sync — see `skills/shared/state-update.md`
@@ -359,11 +378,12 @@ If all automated checks and UAT items passed:
359
378
 
360
379
  Use the branded output from `references/ui-formatting.md`:
361
380
  - If more phases remain: use the "Phase Complete" banner template
362
- - If this was the last phase: use the "Milestone Complete" banner template
381
+ - If this was the last phase in the current milestone: use the "Milestone Complete" banner template
382
+ - **Milestone boundary detection:** Read ROADMAP.md and find the `## Milestone:` section containing the current phase. Check its `**Phases:** start - end` range. If the current phase equals `end`, this is the last phase in the milestone.
363
383
  - Always include the "Next Up" routing block
364
384
 
365
385
  4. If `gates.confirm_transition` is true in config AND `features.auto_advance` is NOT true:
366
- - Use the yes-no pattern from `skills/shared/gate-prompts.md`:
386
+ - Use AskUserQuestion (pattern: yes-no from `skills/shared/gate-prompts.md`):
367
387
  question: "Phase {N} verified. Ready to move to Phase {N+1}?"
368
388
  header: "Continue?"
369
389
  options:
@@ -373,9 +393,9 @@ Use the branded output from `references/ui-formatting.md`:
373
393
  - If "No" or "Other": stop
374
394
 
375
395
  5. **If `features.auto_advance` is `true` AND `mode` is `autonomous` AND more phases remain:**
376
- - Chain directly to plan next phase
377
- - This continues the build->review->plan cycle automatically
378
- - **If this is the last phase:** HARD STOP — do NOT auto-advance past milestone boundaries
396
+ - Chain directly to plan: `Skill({ skill: "pbr:plan", args: "{N+1}" })`
397
+ - This continues the buildreviewplan cycle automatically
398
+ - **If this is the last phase in the current milestone:** HARD STOP — do NOT auto-advance past milestone boundaries. Display: "auto_advance pauses at milestone boundaries — your sign-off is required."
379
399
 
380
400
  #### Gaps Found WITH `--auto-fix`
381
401
 
@@ -383,9 +403,16 @@ If gaps were found and `--auto-fix` was specified:
383
403
 
384
404
  **Step 6a: Diagnose**
385
405
 
386
- Display to the user: `Spawning debugger...`
406
+ Display to the user: `◐ Spawning debugger...`
407
+
408
+ Spawn a debugger Task() to analyze each failure:
387
409
 
388
- Invoke the `@debugger` agent to analyze each failure.
410
+ ```
411
+ Task({
412
+ subagent_type: "pbr:debugger",
413
+ prompt: <debugger prompt>
414
+ })
415
+ ```
389
416
 
390
417
  ##### Debugger Prompt Template
391
418
 
@@ -394,7 +421,7 @@ Read `skills/review/templates/debugger-prompt.md.tmpl` and use its content as th
394
421
  **Prepend this block to the debugger prompt before sending:**
395
422
  ```
396
423
  <files_to_read>
397
- CRITICAL: Read these files BEFORE any other action:
424
+ CRITICAL (no hook): Read these files BEFORE any other action:
398
425
  1. .planning/phases/{NN}-{slug}/VERIFICATION.md — gaps and failure details
399
426
  2. .planning/phases/{NN}-{slug}/SUMMARY-*.md — what was built
400
427
  3. .planning/phases/{NN}-{slug}/PLAN-*.md — original plan must-haves
@@ -408,9 +435,16 @@ CRITICAL: Read these files BEFORE any other action:
408
435
 
409
436
  **Step 6b: Create Gap-Closure Plans**
410
437
 
411
- After receiving the root cause analysis, display to the user: `Spawning planner (gap closure)...`
438
+ After receiving the root cause analysis, display to the user: `◐ Spawning planner (gap closure)...`
439
+
440
+ Spawn the planner in gap-closure mode:
412
441
 
413
- Invoke the `@planner` agent in gap-closure mode.
442
+ ```
443
+ Task({
444
+ subagent_type: "pbr:planner",
445
+ prompt: <gap planner prompt>
446
+ })
447
+ ```
414
448
 
415
449
  ##### Gap Planner Prompt Template
416
450
 
@@ -419,7 +453,7 @@ Read `skills/review/templates/gap-planner-prompt.md.tmpl` and use its content as
419
453
  **Prepend this block to the gap planner prompt before sending:**
420
454
  ```
421
455
  <files_to_read>
422
- CRITICAL: Read these files BEFORE any other action:
456
+ CRITICAL (no hook): Read these files BEFORE any other action:
423
457
  1. .planning/phases/{NN}-{slug}/VERIFICATION.md — gaps to close
424
458
  2. .planning/phases/{NN}-{slug}/PLAN-*.md — existing plans for context
425
459
  3. .planning/CONTEXT.md — locked decisions and constraints (if exists)
@@ -436,8 +470,8 @@ CRITICAL: Read these files BEFORE any other action:
436
470
  **Step 6c: Validate gap-closure plans (conditional)**
437
471
 
438
472
  If `features.plan_checking` is true in config:
439
- - Display to the user: `Spawning plan checker...`
440
- - Invoke `@plan-checker` on the new gap-closure plans
473
+ - Display to the user: `◐ Spawning plan checker...`
474
+ - Spawn plan checker Task() on the new gap-closure plans
441
475
  - Same process as `/pbr:plan` Step 6
442
476
 
443
477
  **Step 6d: Present gap-closure plans to user**
@@ -453,7 +487,7 @@ Plans:
453
487
  {plan_id}: {name} — fixes: {gap description} ({difficulty})
454
488
  {plan_id}: {name} — fixes: {gap description} ({difficulty})
455
489
 
456
- Use the approve-revise-abort pattern from `skills/shared/gate-prompts.md`:
490
+ Use AskUserQuestion (pattern: approve-revise-abort from `skills/shared/gate-prompts.md`):
457
491
  question: "Approve these {count} gap-closure plans?"
458
492
  header: "Approve?"
459
493
  options:
@@ -484,7 +518,7 @@ Phase {N}: {name} — Gaps Found
484
518
  2. {gap description}
485
519
  ...
486
520
 
487
- Use the multi-option-gaps pattern from `skills/shared/gate-prompts.md`:
521
+ Use AskUserQuestion (pattern: multi-option-gaps from `skills/shared/gate-prompts.md`):
488
522
  question: "{count} verification gaps need attention. How should we proceed?"
489
523
  header: "Gaps"
490
524
  options:
@@ -549,9 +583,11 @@ After Step 3, also check cross-phase integration:
549
583
  ## Error Handling
550
584
 
551
585
  ### Verifier agent fails
552
- If the verifier agent fails, display:
586
+ If the verifier Task() fails, display:
553
587
  ```
554
- ERROR
588
+ ╔══════════════════════════════════════════════════════════════╗
589
+ ║ ERROR ║
590
+ ╚══════════════════════════════════════════════════════════════╝
555
591
 
556
592
  Automated verification failed.
557
593
 
@@ -561,7 +597,7 @@ Fall back to manual UAT only (skip automated checks).
561
597
 
562
598
  ### No must-haves to check
563
599
  If plans have empty must_haves:
564
- - Warn user: "Plans don't have defined must-haves. UAT will be based on plan descriptions only."
600
+ - Warn user: `⚠ Plans don't have defined must-haves. UAT will be based on plan descriptions only.`
565
601
  - Use SUMMARY.md content as the basis for UAT
566
602
 
567
603
  ### User can't verify something
@@ -571,9 +607,11 @@ If user can't verify an item (e.g., needs server running, needs credentials):
571
607
  - Suggest how to verify later
572
608
 
573
609
  ### Debugger fails during auto-fix
574
- If the debugger agent fails, display:
610
+ If the debugger Task() fails, display:
575
611
  ```
576
- ERROR
612
+ ╔══════════════════════════════════════════════════════════════╗
613
+ ║ ERROR ║
614
+ ╚══════════════════════════════════════════════════════════════╝
577
615
 
578
616
  Auto-diagnosis failed.
579
617
 
@@ -589,7 +627,7 @@ Ask user: "Would you like to proceed with gap-closure plans without root cause a
589
627
  |------|---------|------|
590
628
  | `.planning/phases/{NN}-{slug}/VERIFICATION.md` | Verification report | Step 3 (created or updated with UAT) |
591
629
  | `.planning/phases/{NN}-{slug}/*-PLAN.md` | Gap-closure plans | Step 6b (--auto-fix only) |
592
- | `.planning/ROADMAP.md` | Status -> `verified` + Completed date | Step 6 |
630
+ | `.planning/ROADMAP.md` | Status `verified` + Completed date | Step 6 |
593
631
  | `.planning/STATE.md` | Updated with review status | Step 6 |
594
632
 
595
633
  ---
@@ -3,6 +3,8 @@ name: scan
3
3
  description: "Analyze an existing codebase. Maps structure, architecture, conventions, and concerns."
4
4
  ---
5
5
 
6
+ **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.**
7
+
6
8
  ## Step 0 — Immediate Output
7
9
 
8
10
  **Before ANY tool calls**, display this banner:
@@ -227,6 +229,7 @@ Top concerns:
227
229
  Then use the "Next Up" routing block:
228
230
  ```
229
231
 
232
+
230
233
  ╔══════════════════════════════════════════════════════════════╗
231
234
  ║ ▶ NEXT UP ║
232
235
  ╚══════════════════════════════════════════════════════════════╝
@@ -238,10 +241,12 @@ Then use the "Next Up" routing block:
238
241
  <sub>`/clear` first → fresh context window</sub>
239
242
 
240
243
 
244
+
241
245
  **Also available:**
242
246
  - `/pbr:milestone new` — create a milestone to address concerns
243
247
  - `/pbr:status` — see project status
244
248
 
249
+
245
250
  ```
246
251
 
247
252
  ### Step 7: Git Integration
@@ -3,6 +3,8 @@ name: setup
3
3
  description: "Onboarding wizard. Initialize project, select models, verify setup."
4
4
  ---
5
5
 
6
+ **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.**
7
+
6
8
  ## Step 0 — Immediate Output
7
9
 
8
10
  **Before ANY tool calls**, display this banner:
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../../pbr/skills/shared/commit-planning-docs.md -->
2
1
  # Commit Planning Docs Pattern
3
2
 
4
3
  Standard pattern for committing planning artifacts to git. Reference this fragment in skills that create or modify `.planning/` files.
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../../pbr/skills/shared/config-loading.md -->
2
1
  # Config Loading Pattern
3
2
 
4
3
  Standard pattern for loading `.planning/config.json` fields at the start of a skill invocation.
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../../pbr/skills/shared/context-budget.md -->
2
1
  # Context Budget Rules
3
2
 
4
3
  Standard rules for keeping orchestrator context lean. Reference this fragment in skills that spawn Task() agents.
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../../pbr/skills/shared/context-loader-task.md -->
2
1
  # Context Loader Task Pattern
3
2
 
4
3
  Standard pattern for spawning a lightweight Task() to build a project briefing before the main skill logic runs. Used by skills that need project context but want to keep the orchestrator lean.
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../../pbr/skills/shared/digest-select.md -->
2
1
  # Digest-Select Pattern
3
2
 
4
3
  Selective reading depth for prior phase SUMMARY.md files. Saves tokens by reading only what is needed based on the relationship to the current phase.
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../../pbr/skills/shared/domain-probes.md -->
2
1
  # Domain-Aware Probing Patterns
3
2
 
4
3
  Shared reference for `/pbr:explore`, `/pbr:begin`, and `/pbr:discuss`.
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../../pbr/skills/shared/gate-prompts.md -->
2
1
  # Gate Prompt Patterns
3
2
 
4
3
  > Referenced by: plan, build, import, scan, review, milestone, config, status, resume, quick, begin, discuss, explore, debug skills
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../../pbr/skills/shared/phase-argument-parsing.md -->
2
1
  # Phase Argument Parsing
3
2
 
4
3
  How skills parse and validate phase number arguments from `$ARGUMENTS`.
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../../pbr/skills/shared/revision-loop.md -->
2
1
  # Revision Loop Pattern
3
2
 
4
3
  Standard pattern for iterative agent revision with feedback. Used when a checker/validator finds issues and the producing agent needs to revise its output.
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../../pbr/skills/shared/state-update.md -->
2
1
  # STATE.md Update Pattern
3
2
 
4
3
  Standard pattern for updating `.planning/STATE.md`. Include this fragment in skills that modify project state.
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../../pbr/skills/shared/universal-anti-patterns.md -->
2
1
  # Universal Anti-Patterns
3
2
 
4
3
  Rules that apply to ALL skills. Individual skills may have additional skill-specific anti-patterns listed in their own SKILL.md.
@@ -26,7 +25,7 @@ These rules prevent context rot -- quality degradation as the context window fil
26
25
 
27
26
  ## Task/Subagent Rules (apply to every skill)
28
27
 
29
- 10. **Never** invoke `Skill()` inside a `Task()` subagent -- the Skill tool is not available in subagent contexts. Subagents spawned by `Task()` cannot resolve `/pbr:*` skill prefixes, so `Skill({ skill: "pbr:plan" })` will silently fail. Instead, chain skills at the orchestrator level (return control to the orchestrator, then call `Skill()` from there). For subagent work, use `subagent_type: "pbr:{agent}"` which auto-loads agent definitions.
28
+ 10. **Never** invoke `Skill()` inside a `Task()` subagent -- the Skill tool is not available in subagent contexts. Agents spawned by `Task()` cannot resolve `/pbr:*` skill prefixes, so `Skill({ skill: "pbr:plan" })` will silently fail. Instead, chain skills at the orchestrator level (return control to the orchestrator, then call `Skill()` from there). For subagent work, use `subagent_type: "pbr:{agent}"` which auto-loads agent definitions.
30
29
 
31
30
  ## Behavioral Rules (apply to every skill)
32
31
 
@@ -3,6 +3,8 @@ name: status
3
3
  description: "Show current project status and suggest what to do next."
4
4
  ---
5
5
 
6
+ **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.**
7
+
6
8
  ## Step 0 — Immediate Output
7
9
 
8
10
  **Before ANY tool calls**, display this banner:
@@ -48,7 +50,9 @@ Read the following files (skip any that don't exist):
48
50
  1. **`.planning/config.json`** — Project settings
49
51
  - If this doesn't exist, display:
50
52
  ```
51
- ERROR
53
+ ╔══════════════════════════════════════════════════════════════╗
54
+ ║ ERROR ║
55
+ ╚══════════════════════════════════════════════════════════════╝
52
56
 
53
57
  No Plan-Build-Run project found.
54
58
 
@@ -240,8 +244,8 @@ Generate a 20-character progress bar:
240
244
  ```
241
245
 
242
246
  Use Unicode block characters:
243
- - Filled: full block (U+2588)
244
- - Empty: light shade (U+2591)
247
+ - Filled: `█` (full block, U+2588)
248
+ - Empty: `░` (light shade, U+2591)
245
249
 
246
250
  ### Status Indicators
247
251
 
@@ -263,57 +267,59 @@ Based on the project state, suggest the single most logical next action:
263
267
 
264
268
  ```
265
269
  1. Is there paused work (.continue-here.md)?
266
- YES -> "Resume your work: `/pbr:resume`"
270
+ YES "Resume your work: `/pbr:resume`"
267
271
 
268
272
  2. Is there a verification with gaps?
269
- YES -> "Fix verification gaps: `/pbr:plan {N} --gaps`"
273
+ YES "Fix verification gaps: `/pbr:plan {N} --gaps`"
270
274
 
271
275
  3. Is the current phase planned but not built?
272
- YES -> "Build the current phase: `/pbr:build {N}`"
276
+ YES "Build the current phase: `/pbr:build {N}`"
273
277
 
274
278
  4. Is the current phase built but not reviewed?
275
- YES -> "Review what was built: `/pbr:review {N}`"
279
+ YES "Review what was built: `/pbr:review {N}`"
276
280
 
277
281
  5. Is the current phase verified (complete)?
278
- YES -> Is there a next phase?
279
- YES -> Was next phase already planned?
280
- YES -> Does it need re-planning? (dependency phase changed)
281
- YES -> "Re-plan with updated context: `/pbr:plan {N+1}`"
282
- NO -> "Build the next phase: `/pbr:build {N+1}`"
283
- NO -> "Plan the next phase: `/pbr:plan {N+1}`"
284
- NO -> "All phases complete! Your next steps:\n -> /pbr:milestone audit verify cross-phase integration (recommended)\n -> /pbr:milestone complete archive this milestone and create a git tag\n -> /pbr:milestone new start planning the next set of features"
282
+ YES Is there a next phase?
283
+ YES Was next phase already planned?
284
+ YES Does it need re-planning? (dependency phase changed)
285
+ YES "Re-plan with updated context: `/pbr:plan {N+1}`"
286
+ NO "Build the next phase: `/pbr:build {N+1}`"
287
+ NO "Plan the next phase: `/pbr:plan {N+1}`"
288
+ NO Check for existing `*-MILESTONE-AUDIT.md` in `.planning/`:\n IF audit passed → "All phases complete and audited! `/pbr:milestone complete` to archive and tag."\n IF audit has gaps "Audit found gaps. `/pbr:milestone gaps` to address them."\n IF no audit → "All phases complete! `/pbr:milestone audit` to verify cross-phase integration (recommended), then `/pbr:milestone complete`."
285
289
 
286
290
  6. Is the current phase not started?
287
- YES -> Has it been discussed?
288
- YES -> "Plan this phase: `/pbr:plan {N}`"
289
- NO -> "Start with a discussion: `/pbr:discuss {N}` or jump to `/pbr:plan {N}`"
291
+ YES Has it been discussed?
292
+ YES "Plan this phase: `/pbr:plan {N}`"
293
+ NO "Start with a discussion: `/pbr:discuss {N}` or jump to `/pbr:plan {N}`"
290
294
 
291
295
  7. Active debug sessions?
292
- YES -> "Continue debugging: `/pbr:debug`"
296
+ YES "Continue debugging: `/pbr:debug`"
293
297
 
294
298
  8. Nothing active?
295
- -> "Start your project: `/pbr:begin`"
299
+ "Start your project: `/pbr:begin`"
296
300
  ```
297
301
 
298
302
  **If only one reasonable next action exists**, present it with branded routing:
299
303
 
300
304
  ```
301
- ---
302
305
 
303
- ## Next Up
306
+
307
+ ╔══════════════════════════════════════════════════════════════╗
308
+ ║ ▶ NEXT UP ║
309
+ ╚══════════════════════════════════════════════════════════════╝
304
310
 
305
311
  **{brief explanation}**
306
312
 
307
313
  `{suggested command}`
308
314
 
309
- `/clear` first for a fresh context window
315
+ <sub>`/clear` first fresh context window</sub>
316
+
310
317
 
311
- ---
312
318
  ```
313
319
 
314
320
  **If multiple reasonable next actions exist** (2-3 alternatives), use the **action-routing** pattern (see `skills/shared/gate-prompts.md`):
315
321
 
316
- Present options:
322
+ Use AskUserQuestion:
317
323
  question: "What would you like to do next?"
318
324
  header: "Next Step"
319
325
  options:
@@ -347,7 +353,10 @@ Build options dynamically from the decision tree results. Always include "Someth
347
353
 
348
354
  ### All phases complete
349
355
  - Celebrate briefly: "All phases complete!"
350
- - Suggest: `/pbr:milestone audit` to verify cross-phase integration (recommended first)
356
+ - Check for existing audit report: look for `*-MILESTONE-AUDIT.md` in `.planning/`
357
+ - **If audit exists and passed:** Suggest `/pbr:milestone complete` to archive (audit already done)
358
+ - **If audit exists with gaps:** Suggest `/pbr:milestone gaps` to address issues
359
+ - **If no audit exists:** Suggest `/pbr:milestone audit` to verify cross-phase integration (recommended first)
351
360
  - Then: `/pbr:milestone complete` to archive the milestone and tag it
352
361
  - Or: `/pbr:milestone new` to start the next set of features
353
362
 
@@ -382,7 +391,7 @@ This skill should be fast. It's a status check, not an analysis.
382
391
  - Read plan file contents (just check existence)
383
392
  - Run Bash commands except for Step 1b (2-3 `pbr-tools` calls only when `local_llm.enabled: true`, skipped entirely otherwise)
384
393
  - Modify any files
385
- - Invoke any agents
394
+ - Spawn any Task agents
386
395
 
387
396
  ---
388
397
 
@@ -4,7 +4,7 @@ description: "Generate tests for completed phase code. Detects test framework an
4
4
  argument-hint: "<phase-number>"
5
5
  ---
6
6
 
7
- **STOP — DO NOT READ THIS FILE. You are already reading it. This prompt was injected into your context by the plugin system. Using the Read tool on this SKILL.md file wastes ~7,600 tokens. Begin executing Step 1 immediately.**
7
+ **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
8
 
9
9
  # /pbr:test — Post-Phase Test Generation
10
10
 
@@ -126,7 +126,7 @@ Output: tests/auth/login.test.js
126
126
  For each target file (or batch of related files), spawn an executor agent:
127
127
 
128
128
  ```
129
- Spawn agent_type: "pbr:executor"
129
+ Spawn subagent_type: "pbr:executor"
130
130
 
131
131
  Task: Generate tests for the following file(s):
132
132
 
@@ -4,6 +4,8 @@ description: "File-based persistent todos. Add, list, complete — survives sess
4
4
  argument-hint: "add <description> | list [theme] | done <NNN> | work <NNN>"
5
5
  ---
6
6
 
7
+ **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
+
7
9
  ## Step 0 — Immediate Output
8
10
 
9
11
  **Before ANY tool calls**, display this banner:
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../pbr/templates/CONTEXT.md.tmpl -->
2
1
  # CONTEXT.md Template
3
2
 
4
3
  > Referenced by: begin skill (Step 9c), discuss skill, plan skill
@@ -1,4 +1,3 @@
1
- <!-- canonical: ../../pbr/templates/INTEGRATION-REPORT.md.tmpl -->
2
1
  <!-- Source: agents/integration-checker.md | Purpose: Output format for cross-phase integration verification reports -->
3
2
 
4
3
  ```markdown