@sienklogic/plan-build-run 2.10.0 → 2.12.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.
- package/CHANGELOG.md +51 -0
- package/package.json +1 -1
- package/plugins/copilot-pbr/agents/codebase-mapper.agent.md +42 -0
- package/plugins/copilot-pbr/agents/debugger.agent.md +4 -1
- package/plugins/copilot-pbr/agents/executor.agent.md +31 -1
- package/plugins/copilot-pbr/agents/integration-checker.agent.md +33 -2
- package/plugins/copilot-pbr/agents/planner.agent.md +58 -1
- package/plugins/copilot-pbr/agents/researcher.agent.md +23 -0
- package/plugins/copilot-pbr/agents/synthesizer.agent.md +24 -0
- package/plugins/copilot-pbr/agents/verifier.agent.md +35 -1
- package/plugins/copilot-pbr/plugin.json +1 -1
- package/plugins/copilot-pbr/references/agent-contracts.md +297 -0
- package/plugins/copilot-pbr/references/ui-formatting.md +38 -56
- package/plugins/copilot-pbr/skills/begin/SKILL.md +30 -7
- package/plugins/copilot-pbr/skills/build/SKILL.md +28 -31
- package/plugins/copilot-pbr/skills/config/SKILL.md +9 -12
- package/plugins/copilot-pbr/skills/continue/SKILL.md +6 -6
- package/plugins/copilot-pbr/skills/dashboard/SKILL.md +3 -3
- package/plugins/copilot-pbr/skills/debug/SKILL.md +23 -26
- package/plugins/copilot-pbr/skills/discuss/SKILL.md +20 -10
- package/plugins/copilot-pbr/skills/do/SKILL.md +3 -3
- package/plugins/copilot-pbr/skills/explore/SKILL.md +11 -14
- package/plugins/copilot-pbr/skills/health/SKILL.md +75 -19
- package/plugins/copilot-pbr/skills/help/SKILL.md +6 -6
- package/plugins/copilot-pbr/skills/import/SKILL.md +22 -18
- package/plugins/copilot-pbr/skills/milestone/SKILL.md +90 -48
- package/plugins/copilot-pbr/skills/note/SKILL.md +3 -3
- package/plugins/copilot-pbr/skills/pause/SKILL.md +11 -10
- package/plugins/copilot-pbr/skills/plan/SKILL.md +22 -9
- package/plugins/copilot-pbr/skills/plan/templates/planner-prompt.md.tmpl +1 -1
- package/plugins/copilot-pbr/skills/quick/SKILL.md +9 -12
- package/plugins/copilot-pbr/skills/resume/SKILL.md +9 -9
- package/plugins/copilot-pbr/skills/review/SKILL.md +17 -12
- package/plugins/copilot-pbr/skills/scan/SKILL.md +9 -11
- package/plugins/copilot-pbr/skills/setup/SKILL.md +31 -8
- package/plugins/copilot-pbr/skills/shared/error-reporting.md +2 -1
- package/plugins/copilot-pbr/skills/shared/progress-display.md +0 -1
- package/plugins/copilot-pbr/skills/shared/universal-anti-patterns.md +10 -6
- package/plugins/copilot-pbr/skills/status/SKILL.md +3 -3
- package/plugins/copilot-pbr/skills/statusline/SKILL.md +12 -8
- package/plugins/copilot-pbr/skills/todo/SKILL.md +51 -28
- package/plugins/cursor-pbr/.cursor-plugin/plugin.json +1 -1
- package/plugins/cursor-pbr/agents/codebase-mapper.md +42 -0
- package/plugins/cursor-pbr/agents/debugger.md +4 -1
- package/plugins/cursor-pbr/agents/executor.md +31 -1
- package/plugins/cursor-pbr/agents/integration-checker.md +33 -2
- package/plugins/cursor-pbr/agents/planner.md +58 -1
- package/plugins/cursor-pbr/agents/researcher.md +23 -0
- package/plugins/cursor-pbr/agents/synthesizer.md +24 -0
- package/plugins/cursor-pbr/agents/verifier.md +35 -1
- package/plugins/cursor-pbr/references/agent-contracts.md +297 -0
- package/plugins/cursor-pbr/references/ui-formatting.md +38 -56
- package/plugins/cursor-pbr/skills/begin/SKILL.md +30 -7
- package/plugins/cursor-pbr/skills/build/SKILL.md +28 -31
- package/plugins/cursor-pbr/skills/config/SKILL.md +9 -10
- package/plugins/cursor-pbr/skills/continue/SKILL.md +6 -6
- package/plugins/cursor-pbr/skills/dashboard/SKILL.md +3 -3
- package/plugins/cursor-pbr/skills/debug/SKILL.md +23 -23
- package/plugins/cursor-pbr/skills/discuss/SKILL.md +20 -10
- package/plugins/cursor-pbr/skills/do/SKILL.md +3 -3
- package/plugins/cursor-pbr/skills/explore/SKILL.md +11 -12
- package/plugins/cursor-pbr/skills/health/SKILL.md +75 -19
- package/plugins/cursor-pbr/skills/help/SKILL.md +6 -6
- package/plugins/cursor-pbr/skills/import/SKILL.md +22 -16
- package/plugins/cursor-pbr/skills/milestone/SKILL.md +90 -48
- package/plugins/cursor-pbr/skills/note/SKILL.md +3 -3
- package/plugins/cursor-pbr/skills/pause/SKILL.md +11 -9
- package/plugins/cursor-pbr/skills/plan/SKILL.md +22 -9
- package/plugins/cursor-pbr/skills/plan/templates/planner-prompt.md.tmpl +1 -1
- package/plugins/cursor-pbr/skills/quick/SKILL.md +9 -12
- package/plugins/cursor-pbr/skills/resume/SKILL.md +9 -9
- package/plugins/cursor-pbr/skills/review/SKILL.md +17 -12
- package/plugins/cursor-pbr/skills/scan/SKILL.md +9 -10
- package/plugins/cursor-pbr/skills/setup/SKILL.md +31 -8
- package/plugins/cursor-pbr/skills/shared/error-reporting.md +2 -1
- package/plugins/cursor-pbr/skills/shared/progress-display.md +0 -1
- package/plugins/cursor-pbr/skills/shared/universal-anti-patterns.md +10 -6
- package/plugins/cursor-pbr/skills/status/SKILL.md +3 -3
- package/plugins/cursor-pbr/skills/statusline/SKILL.md +12 -8
- package/plugins/cursor-pbr/skills/todo/SKILL.md +51 -28
- package/plugins/pbr/.claude-plugin/plugin.json +1 -1
- package/plugins/pbr/agents/codebase-mapper.md +42 -0
- package/plugins/pbr/agents/debugger.md +4 -1
- package/plugins/pbr/agents/executor.md +31 -1
- package/plugins/pbr/agents/integration-checker.md +34 -2
- package/plugins/pbr/agents/planner.md +58 -1
- package/plugins/pbr/agents/researcher.md +23 -0
- package/plugins/pbr/agents/synthesizer.md +24 -0
- package/plugins/pbr/agents/verifier.md +36 -1
- package/plugins/pbr/references/agent-contracts.md +297 -0
- package/plugins/pbr/references/ui-formatting.md +37 -54
- package/plugins/pbr/scripts/check-roadmap-sync.js +9 -1
- package/plugins/pbr/scripts/check-skill-workflow.js +11 -0
- package/plugins/pbr/scripts/check-state-sync.js +58 -0
- package/plugins/pbr/scripts/check-subagent-output.js +75 -6
- package/plugins/pbr/scripts/log-tool-failure.js +1 -1
- package/plugins/pbr/scripts/progress-tracker.js +14 -0
- package/plugins/pbr/scripts/track-context-budget.js +10 -1
- package/plugins/pbr/scripts/validate-task.js +81 -17
- package/plugins/pbr/skills/begin/SKILL.md +36 -11
- package/plugins/pbr/skills/build/SKILL.md +37 -25
- package/plugins/pbr/skills/config/SKILL.md +12 -10
- package/plugins/pbr/skills/continue/SKILL.md +11 -9
- package/plugins/pbr/skills/dashboard/SKILL.md +3 -3
- package/plugins/pbr/skills/debug/SKILL.md +29 -23
- package/plugins/pbr/skills/discuss/SKILL.md +20 -10
- package/plugins/pbr/skills/do/SKILL.md +3 -3
- package/plugins/pbr/skills/explore/SKILL.md +14 -12
- package/plugins/pbr/skills/health/SKILL.md +76 -20
- package/plugins/pbr/skills/help/SKILL.md +8 -6
- package/plugins/pbr/skills/import/SKILL.md +25 -16
- package/plugins/pbr/skills/milestone/SKILL.md +88 -45
- package/plugins/pbr/skills/note/SKILL.md +3 -3
- package/plugins/pbr/skills/pause/SKILL.md +13 -9
- package/plugins/pbr/skills/plan/SKILL.md +28 -13
- package/plugins/pbr/skills/plan/templates/planner-prompt.md.tmpl +1 -1
- package/plugins/pbr/skills/quick/SKILL.md +12 -10
- package/plugins/pbr/skills/resume/SKILL.md +11 -9
- package/plugins/pbr/skills/review/SKILL.md +35 -24
- package/plugins/pbr/skills/scan/SKILL.md +12 -10
- package/plugins/pbr/skills/setup/SKILL.md +30 -7
- package/plugins/pbr/skills/shared/error-reporting.md +2 -0
- package/plugins/pbr/skills/shared/universal-anti-patterns.md +10 -6
- package/plugins/pbr/skills/status/SKILL.md +8 -6
- package/plugins/pbr/skills/statusline/SKILL.md +12 -8
- package/plugins/pbr/skills/todo/SKILL.md +51 -28
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
# Agent Contracts
|
|
2
|
+
|
|
3
|
+
Input/output schemas for agent-to-agent handoffs in Plan-Build-Run.
|
|
4
|
+
|
|
5
|
+
Each contract defines: the file exchanged, required frontmatter fields, body structure, and special handling notes. Agents MUST produce output matching these schemas — consumers depend on them.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Contract: Researcher -> Synthesizer
|
|
10
|
+
|
|
11
|
+
**File**: `.planning/research/{topic-slug}.md` (project) or `.planning/phases/{NN}-{slug}/RESEARCH.md` (phase)
|
|
12
|
+
**Direction**: Researcher writes, Synthesizer reads 2-4 of these
|
|
13
|
+
|
|
14
|
+
### Required Frontmatter
|
|
15
|
+
|
|
16
|
+
```yaml
|
|
17
|
+
---
|
|
18
|
+
confidence: high|medium|low
|
|
19
|
+
sources_checked: N # integer count of sources consulted
|
|
20
|
+
coverage: "complete|partial|minimal"
|
|
21
|
+
---
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### Required Body Sections
|
|
25
|
+
|
|
26
|
+
- `## Key Findings` — each finding tagged with source level (`[S1]`..`[S6]`) and confidence
|
|
27
|
+
- `## Gaps` — areas not covered and why
|
|
28
|
+
- `## Sources` — source list with what each provided
|
|
29
|
+
|
|
30
|
+
### Special Handling
|
|
31
|
+
|
|
32
|
+
- Every factual claim must have a source attribution tag
|
|
33
|
+
- Version-sensitive info (API signatures, config syntax) must come from S1-S3 sources
|
|
34
|
+
- `[SPECULATIVE]` tag marks unverified reasoning — synthesizer must not upgrade confidence
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Contract: Synthesizer -> Planner
|
|
39
|
+
|
|
40
|
+
**File**: `.planning/research/SUMMARY.md` (or specified path)
|
|
41
|
+
**Direction**: Synthesizer writes, Planner reads
|
|
42
|
+
|
|
43
|
+
### Required Frontmatter
|
|
44
|
+
|
|
45
|
+
```yaml
|
|
46
|
+
---
|
|
47
|
+
confidence: high|medium|low
|
|
48
|
+
sources: N # integer count of input documents
|
|
49
|
+
conflicts: N # integer count of contradictions found
|
|
50
|
+
---
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Required Body Sections
|
|
54
|
+
|
|
55
|
+
- `## Resolved Decisions` — table with Topic, Decision, Confidence, Sources columns
|
|
56
|
+
- `## Open Questions` — items marked `[NEEDS DECISION]` for planner to handle
|
|
57
|
+
- `## Deferred Ideas` — items out of scope
|
|
58
|
+
|
|
59
|
+
### Special Handling
|
|
60
|
+
|
|
61
|
+
- `[NEEDS DECISION]` flags: planner creates `checkpoint:decision` tasks OR decides within discretion scope
|
|
62
|
+
- Confidence levels never upgraded beyond what input documents support
|
|
63
|
+
- Contradictions always documented, never silently dropped
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## Contract: Planner -> Executor
|
|
68
|
+
|
|
69
|
+
**File**: `.planning/phases/{NN}-{slug}/PLAN-{NN}.md`
|
|
70
|
+
**Direction**: Planner writes, Executor reads and executes sequentially
|
|
71
|
+
|
|
72
|
+
### Required Frontmatter
|
|
73
|
+
|
|
74
|
+
```yaml
|
|
75
|
+
---
|
|
76
|
+
phase: "{phase-slug}"
|
|
77
|
+
plan: "{NN-MM}"
|
|
78
|
+
wave: N
|
|
79
|
+
depends_on: []
|
|
80
|
+
files_modified: ["{path}"]
|
|
81
|
+
must_haves:
|
|
82
|
+
truths: ["{observable condition}"]
|
|
83
|
+
artifacts: ["{file: description}"]
|
|
84
|
+
key_links: ["{connection description}"]
|
|
85
|
+
provides: ["{exported item}"]
|
|
86
|
+
consumes: ["{required item}"]
|
|
87
|
+
requirement_ids: []
|
|
88
|
+
---
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Required Body: XML Tasks (each task needs all 5 elements)
|
|
92
|
+
|
|
93
|
+
```xml
|
|
94
|
+
<task id="{plan}-T{n}" type="{type}" tdd="{bool}" complexity="{simple|medium|complex}">
|
|
95
|
+
<name>{imperative verb phrase}</name>
|
|
96
|
+
<files>{file paths, one per line}</files>
|
|
97
|
+
<action>{numbered steps}</action>
|
|
98
|
+
<verify>{executable shell command}</verify>
|
|
99
|
+
<done>{observable outcome}</done>
|
|
100
|
+
</task>
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Special Handling
|
|
104
|
+
|
|
105
|
+
- Task types: `auto`, `tdd`, `checkpoint:human-verify`, `checkpoint:decision`, `checkpoint:human-action`
|
|
106
|
+
- Complexity drives model selection: simple=haiku, medium=sonnet, complex=inherit
|
|
107
|
+
- Executor stages ONLY files listed in `<files>` per task
|
|
108
|
+
- Plans end with a `## Summary` section (plan ID, task list, key files, must-haves, provides/consumes)
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## Contract: Planner -> Plan-Checker
|
|
113
|
+
|
|
114
|
+
**File**: Same `PLAN-{NN}.md` files (read-only)
|
|
115
|
+
**Direction**: Planner writes, Plan-Checker reads and returns text assessment
|
|
116
|
+
**Returns**: Inline text report (no file output)
|
|
117
|
+
|
|
118
|
+
### Expected Input
|
|
119
|
+
|
|
120
|
+
Plan-Checker reads plan frontmatter + XML tasks and evaluates across 9 dimensions (D1-D9). Optionally receives CONTEXT.md path.
|
|
121
|
+
|
|
122
|
+
### Output Format
|
|
123
|
+
|
|
124
|
+
```
|
|
125
|
+
VERIFICATION PASSED | ISSUES FOUND
|
|
126
|
+
Plans: N | Tasks: N | Blockers: N | Warnings: N | Info: N
|
|
127
|
+
|
|
128
|
+
## Blockers
|
|
129
|
+
- [{plan_id}] D{N} {severity}: {description} -> Fix: {hint}
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Special Handling
|
|
133
|
+
|
|
134
|
+
- Blockers must be fixed before execution; warnings are advisory
|
|
135
|
+
- Plan-Checker never modifies plans — only reports issues
|
|
136
|
+
- Planner enters Revision Mode to address feedback
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## Contract: Executor -> Verifier
|
|
141
|
+
|
|
142
|
+
**File**: `.planning/phases/{NN}-{slug}/SUMMARY-{plan_id}.md`
|
|
143
|
+
**Direction**: Executor writes after completing plan tasks, Verifier reads
|
|
144
|
+
|
|
145
|
+
### Required Frontmatter
|
|
146
|
+
|
|
147
|
+
```yaml
|
|
148
|
+
---
|
|
149
|
+
plan: "{plan_id}"
|
|
150
|
+
status: complete|partial|checkpoint
|
|
151
|
+
commits: ["{sha1}", "{sha2}"]
|
|
152
|
+
provides: ["{exported item}"]
|
|
153
|
+
must_haves:
|
|
154
|
+
- "{must-have description}: DONE|PARTIAL|SKIPPED"
|
|
155
|
+
---
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
### Required Body Sections
|
|
159
|
+
|
|
160
|
+
- `## Task Results` — table with Task, Status, Notes columns
|
|
161
|
+
- `## Deviations` — list of deviations from plan, or "None"
|
|
162
|
+
|
|
163
|
+
### Special Handling
|
|
164
|
+
|
|
165
|
+
- Verifier does NOT trust SUMMARY.md claims — verifies against actual codebase
|
|
166
|
+
- Verifier checks must-haves from PLAN.md frontmatter, not SUMMARY.md self-reports
|
|
167
|
+
- One SUMMARY per plan execution; status reflects final state
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## Contract: Verifier -> Planner (Gap Closure)
|
|
172
|
+
|
|
173
|
+
**File**: `.planning/phases/{NN}-{slug}/VERIFICATION.md`
|
|
174
|
+
**Direction**: Verifier writes, Planner reads to create gap-closure plans
|
|
175
|
+
|
|
176
|
+
### Required Frontmatter
|
|
177
|
+
|
|
178
|
+
```yaml
|
|
179
|
+
---
|
|
180
|
+
status: passed|gaps_found|human_needed
|
|
181
|
+
attempt: N
|
|
182
|
+
must_haves_total: N
|
|
183
|
+
must_haves_passed: M
|
|
184
|
+
gaps: ["gap description"]
|
|
185
|
+
overrides: []
|
|
186
|
+
---
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
### Required Body Sections
|
|
190
|
+
|
|
191
|
+
- `## Must-Have Verification` — table with #, Must-Have, Status, Evidence columns
|
|
192
|
+
- `## Gaps` — per-gap detail with Evidence and Suggested fix
|
|
193
|
+
|
|
194
|
+
### Special Handling
|
|
195
|
+
|
|
196
|
+
- `gaps_found` triggers Planner Gap Closure Mode — planner creates targeted fix plans
|
|
197
|
+
- `overrides` list: must-haves marked as override by user, counted as passed
|
|
198
|
+
- Re-verification increments `attempt` counter; checks regressions on previously-passed items
|
|
199
|
+
- Verifier has Write access ONLY for VERIFICATION.md — cannot fix source code
|
|
200
|
+
|
|
201
|
+
---
|
|
202
|
+
|
|
203
|
+
## Contract: Integration-Checker -> Planner
|
|
204
|
+
|
|
205
|
+
**File**: `.planning/phases/{NN}-{slug}/INTEGRATION-REPORT.md`
|
|
206
|
+
**Direction**: Integration-Checker writes, Planner reads for cross-phase fixes
|
|
207
|
+
|
|
208
|
+
### Required Frontmatter
|
|
209
|
+
|
|
210
|
+
```yaml
|
|
211
|
+
---
|
|
212
|
+
status: passed|issues_found
|
|
213
|
+
checks_total: N
|
|
214
|
+
checks_passed: M
|
|
215
|
+
critical_issues: K
|
|
216
|
+
---
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
### Required Body Sections
|
|
220
|
+
|
|
221
|
+
- `## Integration Checks` — table with Check, Status, Evidence columns
|
|
222
|
+
- `## E2E Flows` — table with Flow, Status, Broken Link columns
|
|
223
|
+
- `## Critical Issues` — detailed issue descriptions
|
|
224
|
+
|
|
225
|
+
### Special Handling
|
|
226
|
+
|
|
227
|
+
- Checks ACROSS phases (unlike Verifier which checks single phase)
|
|
228
|
+
- 5 check categories: Export/Import Wiring, API Route Coverage, Auth Protection, E2E Flows, Cross-Phase Dependencies
|
|
229
|
+
- Integration-Checker has Write access ONLY for INTEGRATION-REPORT.md — cannot fix source code
|
|
230
|
+
|
|
231
|
+
---
|
|
232
|
+
|
|
233
|
+
## Contract: Debugger (Self-Contained)
|
|
234
|
+
|
|
235
|
+
**File**: `.planning/debug/{slug}.md`
|
|
236
|
+
**Direction**: Debugger creates, updates, and resolves within a single session
|
|
237
|
+
|
|
238
|
+
### Required Frontmatter
|
|
239
|
+
|
|
240
|
+
```yaml
|
|
241
|
+
---
|
|
242
|
+
slug: "{slug}"
|
|
243
|
+
status: "gathering|investigating|fixing|verifying|resolved"
|
|
244
|
+
created: "{ISO-8601}"
|
|
245
|
+
updated: "{ISO-8601}"
|
|
246
|
+
mode: "find_and_fix|find_root_cause_only"
|
|
247
|
+
---
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
### Required Body Sections
|
|
251
|
+
|
|
252
|
+
- `## Current Focus` — Hypothesis, Test, Expecting, Disconfirm, Next action
|
|
253
|
+
- `## Symptoms` — IMMUTABLE after gathering phase
|
|
254
|
+
- `## Hypotheses` — Active (unchecked) and Eliminated (checked, append-only)
|
|
255
|
+
- `## Evidence Log` — append-only timestamped entries
|
|
256
|
+
- `## Resolution` — root cause, mechanism, fix, commit hash (when resolved)
|
|
257
|
+
|
|
258
|
+
### Special Handling
|
|
259
|
+
|
|
260
|
+
- Status transitions: `gathering -> investigating -> fixing -> verifying -> resolved`
|
|
261
|
+
- Symptoms and Evidence Log are append-only / immutable — prevents mutation bias
|
|
262
|
+
- Fix commits use format: `fix({scope}): {description}` with root cause in body
|
|
263
|
+
- May emit checkpoints (`HUMAN-VERIFY`, `HUMAN-ACTION`, `DECISION`) for user input
|
|
264
|
+
|
|
265
|
+
---
|
|
266
|
+
|
|
267
|
+
## Contract: Codebase-Mapper (Self-Contained)
|
|
268
|
+
|
|
269
|
+
**Files**: `.planning/codebase/{STACK,ARCHITECTURE,CONVENTIONS,CONCERNS}.md` (varies by focus)
|
|
270
|
+
**Direction**: Codebase-Mapper writes, consumed by Researcher (as S0 local prior) and Planner
|
|
271
|
+
|
|
272
|
+
### Focus Areas and Outputs
|
|
273
|
+
|
|
274
|
+
| Focus | Output Files |
|
|
275
|
+
|-------|-------------|
|
|
276
|
+
| `tech` | STACK.md, INTEGRATIONS.md |
|
|
277
|
+
| `arch` | ARCHITECTURE.md, STRUCTURE.md |
|
|
278
|
+
| `quality` | CONVENTIONS.md, TESTING.md |
|
|
279
|
+
| `concerns` | CONCERNS.md |
|
|
280
|
+
|
|
281
|
+
### Fallback Frontmatter (per file)
|
|
282
|
+
|
|
283
|
+
No YAML frontmatter required — these are reference documents with markdown tables.
|
|
284
|
+
|
|
285
|
+
### Required Body Structure (minimum per file)
|
|
286
|
+
|
|
287
|
+
- **STACK.md**: `## Tech Stack` table (Category, Technology, Version, Config File) + `## Package Manager`
|
|
288
|
+
- **ARCHITECTURE.md**: `## Architecture Overview` (pattern name) + `## Key Components` table + `## Data Flow`
|
|
289
|
+
- **CONVENTIONS.md**: `## Code Conventions` table (Convention, Pattern, Example File) + `## Naming Patterns`
|
|
290
|
+
- **CONCERNS.md**: `## Concerns` table (Severity, Area, Description, File) + `## Security Considerations`
|
|
291
|
+
|
|
292
|
+
### Special Handling
|
|
293
|
+
|
|
294
|
+
- Every claim must reference actual file paths — no vague references
|
|
295
|
+
- Codebase-Mapper does NOT commit — the orchestrator handles commits
|
|
296
|
+
- Researcher treats these as S0 (highest confidence) local prior research
|
|
297
|
+
- One focus area per invocation
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
<!-- canonical: ../../pbr/references/ui-formatting.md -->
|
|
2
1
|
# Plan-Build-Run UI Brand & Formatting Reference
|
|
3
2
|
|
|
4
3
|
Consistent output formatting for all Plan-Build-Run skills. Every skill that produces user-facing output should follow these patterns.
|
|
@@ -8,9 +7,9 @@ Consistent output formatting for all Plan-Build-Run skills. Every skill that pro
|
|
|
8
7
|
Use for major workflow transitions. Always use `PLAN-BUILD-RUN` prefix.
|
|
9
8
|
|
|
10
9
|
```
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
11
|
+
║ PLAN-BUILD-RUN ► {STAGE NAME} ║
|
|
12
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
14
13
|
```
|
|
15
14
|
|
|
16
15
|
**Stage names (uppercase):**
|
|
@@ -22,7 +21,7 @@ Use for major workflow transitions. Always use `PLAN-BUILD-RUN` prefix.
|
|
|
22
21
|
- `EXECUTING WAVE {N}`
|
|
23
22
|
- `VERIFYING`
|
|
24
23
|
- `PHASE {N} COMPLETE ✓`
|
|
25
|
-
- `MILESTONE COMPLETE
|
|
24
|
+
- `MILESTONE COMPLETE`
|
|
26
25
|
- `SCANNING CODEBASE`
|
|
27
26
|
- `DEBUGGING`
|
|
28
27
|
|
|
@@ -34,9 +33,9 @@ Use for major workflow transitions. Always use `PLAN-BUILD-RUN` prefix.
|
|
|
34
33
|
|
|
35
34
|
Format:
|
|
36
35
|
```
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
36
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
37
|
+
║ PLAN-BUILD-RUN ► {SKILL NAME} ║
|
|
38
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
40
39
|
```
|
|
41
40
|
|
|
42
41
|
**Skill names (uppercase):**
|
|
@@ -156,7 +155,7 @@ For research agents:
|
|
|
156
155
|
|
|
157
156
|
## Checkpoint Boxes
|
|
158
157
|
|
|
159
|
-
User action required. Use double-line box drawing, 62-character width.
|
|
158
|
+
User action required. Use double-line box drawing, 62-character inner width.
|
|
160
159
|
|
|
161
160
|
```
|
|
162
161
|
╔══════════════════════════════════════════════════════════════╗
|
|
@@ -165,9 +164,7 @@ User action required. Use double-line box drawing, 62-character width.
|
|
|
165
164
|
|
|
166
165
|
{Content}
|
|
167
166
|
|
|
168
|
-
──────────────────────────────────────────────────────────────
|
|
169
167
|
→ {ACTION PROMPT}
|
|
170
|
-
──────────────────────────────────────────────────────────────
|
|
171
168
|
```
|
|
172
169
|
|
|
173
170
|
**Types:**
|
|
@@ -261,25 +258,21 @@ Use plain conversational prompts for these cases instead.
|
|
|
261
258
|
Always present at end of major completions (phase complete, milestone complete, project init).
|
|
262
259
|
|
|
263
260
|
```
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
261
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
262
|
+
║ ▶ NEXT UP ║
|
|
263
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
267
264
|
|
|
268
265
|
**{Identifier}: {Name}** — {one-line description}
|
|
269
266
|
|
|
270
267
|
`{copy-paste command}`
|
|
271
268
|
|
|
272
269
|
<sub>`/clear` first → fresh context window</sub>
|
|
273
|
-
|
|
274
|
-
───────────────────────────────────────────────────────────────
|
|
270
|
+
```
|
|
275
271
|
|
|
276
272
|
**Also available:**
|
|
277
273
|
- `/pbr:alternative-1` — description
|
|
278
274
|
- `/pbr:alternative-2` — description
|
|
279
275
|
|
|
280
|
-
───────────────────────────────────────────────────────────────
|
|
281
|
-
```
|
|
282
|
-
|
|
283
276
|
**Shorter routing (for minor completions):**
|
|
284
277
|
```
|
|
285
278
|
What's next?
|
|
@@ -334,18 +327,18 @@ Use tables for structured data:
|
|
|
334
327
|
### Phase Complete
|
|
335
328
|
|
|
336
329
|
```
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
330
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
331
|
+
║ PLAN-BUILD-RUN ► PHASE {N} COMPLETE ✓ ║
|
|
332
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
340
333
|
|
|
341
334
|
**Phase {N}: {Name}**
|
|
342
335
|
|
|
343
336
|
{X} plans executed
|
|
344
337
|
Goal verified ✓
|
|
345
338
|
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
339
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
340
|
+
║ ▶ NEXT UP ║
|
|
341
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
349
342
|
|
|
350
343
|
**Phase {N+1}: {Name}** — {Goal from ROADMAP.md}
|
|
351
344
|
|
|
@@ -353,30 +346,26 @@ Goal verified ✓
|
|
|
353
346
|
|
|
354
347
|
<sub>/clear first → fresh context window</sub>
|
|
355
348
|
|
|
356
|
-
───────────────────────────────────────────────────────────────
|
|
357
|
-
|
|
358
349
|
**Also available:**
|
|
359
350
|
- /pbr:plan {N+1} — skip discussion, plan directly
|
|
360
351
|
- /pbr:review {N} — manual acceptance testing before continuing
|
|
361
|
-
|
|
362
|
-
───────────────────────────────────────────────────────────────
|
|
363
352
|
```
|
|
364
353
|
|
|
365
354
|
### Milestone Complete
|
|
366
355
|
|
|
367
356
|
```
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
357
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
358
|
+
║ PLAN-BUILD-RUN ► MILESTONE COMPLETE ║
|
|
359
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
371
360
|
|
|
372
361
|
**{version}**
|
|
373
362
|
|
|
374
363
|
{N} phases completed
|
|
375
364
|
All phase goals verified ✓
|
|
376
365
|
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
366
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
367
|
+
║ ▶ NEXT UP ║
|
|
368
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
380
369
|
|
|
381
370
|
**Audit milestone** — verify requirements, cross-phase integration, E2E flows
|
|
382
371
|
|
|
@@ -384,21 +373,17 @@ All phase goals verified ✓
|
|
|
384
373
|
|
|
385
374
|
<sub>/clear first → fresh context window</sub>
|
|
386
375
|
|
|
387
|
-
───────────────────────────────────────────────────────────────
|
|
388
|
-
|
|
389
376
|
**Also available:**
|
|
390
377
|
- /pbr:review — manual acceptance testing
|
|
391
|
-
- /pbr:milestone complete —
|
|
392
|
-
|
|
393
|
-
───────────────────────────────────────────────────────────────
|
|
378
|
+
- /pbr:milestone complete — archive milestone after audit passes
|
|
394
379
|
```
|
|
395
380
|
|
|
396
381
|
### Gaps Found
|
|
397
382
|
|
|
398
383
|
```
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
384
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
385
|
+
║ PLAN-BUILD-RUN ► PHASE {N} GAPS FOUND ⚠ ║
|
|
386
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
402
387
|
|
|
403
388
|
**Phase {N}: {Name}**
|
|
404
389
|
|
|
@@ -409,9 +394,9 @@ Report: .planning/phases/{phase_dir}/VERIFICATION.md
|
|
|
409
394
|
|
|
410
395
|
{Extract gap summaries from VERIFICATION.md}
|
|
411
396
|
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
397
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
398
|
+
║ ▶ NEXT UP ║
|
|
399
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
415
400
|
|
|
416
401
|
**Plan gap closure** — create additional plans to complete the phase
|
|
417
402
|
|
|
@@ -419,13 +404,9 @@ Report: .planning/phases/{phase_dir}/VERIFICATION.md
|
|
|
419
404
|
|
|
420
405
|
<sub>/clear first → fresh context window</sub>
|
|
421
406
|
|
|
422
|
-
───────────────────────────────────────────────────────────────
|
|
423
|
-
|
|
424
407
|
**Also available:**
|
|
425
408
|
- cat .planning/phases/{phase_dir}/VERIFICATION.md — see full report
|
|
426
409
|
- /pbr:review {N} — manual testing before planning
|
|
427
|
-
|
|
428
|
-
───────────────────────────────────────────────────────────────
|
|
429
410
|
```
|
|
430
411
|
|
|
431
412
|
---
|
|
@@ -435,9 +416,9 @@ Report: .planning/phases/{phase_dir}/VERIFICATION.md
|
|
|
435
416
|
Use for session lifecycle transitions (pause/resume):
|
|
436
417
|
|
|
437
418
|
```
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
419
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
420
|
+
║ PLAN-BUILD-RUN ► SESSION RESTORED ✓ ║
|
|
421
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
441
422
|
|
|
442
423
|
Position: Phase {N} — {phase name}, Plan {M}
|
|
443
424
|
Paused: {ISO datetime}
|
|
@@ -453,10 +434,11 @@ Other session banners: `SESSION SAVED ✓` (pause), `RESUMING SESSION` (resume s
|
|
|
453
434
|
## Anti-Patterns
|
|
454
435
|
|
|
455
436
|
Do NOT:
|
|
456
|
-
- Use varying box/banner widths
|
|
457
|
-
-
|
|
437
|
+
- Use varying box/banner widths — always 62-character inner width
|
|
438
|
+
- Use `━━━` heavy bars or `───` thin dividers for banners/sections — use `╔═╗║╚═╝` boxes
|
|
439
|
+
- Mix banner styles (`===`, `---`, `***`) with double-line boxes
|
|
458
440
|
- Skip `PLAN-BUILD-RUN ►` prefix in stage banners
|
|
459
|
-
- Use random emoji (only
|
|
441
|
+
- Use random emoji (only for milestone complete, `✓` for phase complete)
|
|
460
442
|
- Skip the "Next Up" block after major completions
|
|
461
443
|
- Reference non-Plan-Build-Run commands (always use `/pbr:*` commands)
|
|
462
444
|
- Use non-Plan-Build-Run branding in banners
|
|
@@ -20,9 +20,9 @@ Additionally for this skill:
|
|
|
20
20
|
**Before ANY tool calls**, display this banner:
|
|
21
21
|
|
|
22
22
|
```
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
24
|
+
║ PLAN-BUILD-RUN ► STARTING PROJECT ║
|
|
25
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
26
26
|
```
|
|
27
27
|
|
|
28
28
|
Then proceed to Step 1.
|
|
@@ -165,6 +165,8 @@ Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
|
|
|
165
165
|
|
|
166
166
|
**After gathering preferences:**
|
|
167
167
|
|
|
168
|
+
**CRITICAL: You MUST create the .planning/ directory and write config.json NOW. Do not proceed without this.**
|
|
169
|
+
|
|
168
170
|
1. Read the config template from `skills/begin/templates/config.json.tmpl`
|
|
169
171
|
2. Apply the user's choices to the template
|
|
170
172
|
3. Create `.planning/` directory
|
|
@@ -172,6 +174,8 @@ Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
|
|
|
172
174
|
|
|
173
175
|
**IMPORTANT**: This step MUST happen BEFORE research (Step 5) because depth controls how many researchers to spawn.
|
|
174
176
|
|
|
177
|
+
**CRITICAL: Write .active-skill NOW.** Write the text "begin" to `.planning/.active-skill` using the Write tool. Verify the file exists before proceeding.
|
|
178
|
+
|
|
175
179
|
---
|
|
176
180
|
|
|
177
181
|
### Step 4: Research Decision (inline)
|
|
@@ -206,7 +210,7 @@ Use the **yes-no** pattern from `skills/shared/gate-prompts.md`:
|
|
|
206
210
|
|
|
207
211
|
Spawn parallel agents for research. Each researcher writes to `.planning/research/`.
|
|
208
212
|
|
|
209
|
-
**Create
|
|
213
|
+
**CRITICAL: Create .planning/research/ directory NOW before spawning researchers. Do NOT skip this step.**
|
|
210
214
|
|
|
211
215
|
**For each research topic, invoke the @researcher agent:**
|
|
212
216
|
|
|
@@ -324,6 +328,9 @@ Each requirement must be:
|
|
|
324
328
|
- **Specific** — not vague ("fast" is bad, "page loads in <2s" is good)
|
|
325
329
|
|
|
326
330
|
**7e. Write REQUIREMENTS.md:**
|
|
331
|
+
|
|
332
|
+
**CRITICAL: Write REQUIREMENTS.md NOW. The roadmap planner depends on this file.**
|
|
333
|
+
|
|
327
334
|
Read the template from `skills/begin/templates/REQUIREMENTS.md.tmpl` and write `.planning/REQUIREMENTS.md` with:
|
|
328
335
|
- All v1 requirements grouped by category
|
|
329
336
|
- All v2 requirements with deferral reasons
|
|
@@ -374,6 +381,10 @@ Read `skills/begin/templates/roadmap-prompt.md.tmpl` for the prompt structure.
|
|
|
374
381
|
|
|
375
382
|
Write the project state files from templates:
|
|
376
383
|
|
|
384
|
+
**CRITICAL: You MUST write all 5 state initialization files (Steps 9a-9e). Do NOT skip any.**
|
|
385
|
+
|
|
386
|
+
**CRITICAL: Write PROJECT.md NOW. Do NOT skip this step.**
|
|
387
|
+
|
|
377
388
|
**9a. Write PROJECT.md:**
|
|
378
389
|
1. Read `skills/begin/templates/PROJECT.md.tmpl`
|
|
379
390
|
2. Fill in:
|
|
@@ -386,6 +397,8 @@ Write the project state files from templates:
|
|
|
386
397
|
3. Write to `.planning/PROJECT.md`
|
|
387
398
|
4. Ensure the `## Milestones` section is filled in with the project name and phase count from the roadmap
|
|
388
399
|
|
|
400
|
+
**CRITICAL: Write STATE.md NOW. Do NOT skip this step.**
|
|
401
|
+
|
|
389
402
|
**9b. Write STATE.md:**
|
|
390
403
|
1. Read `skills/begin/templates/STATE.md.tmpl`
|
|
391
404
|
2. Fill in:
|
|
@@ -398,6 +411,8 @@ Write the project state files from templates:
|
|
|
398
411
|
4. Fill in the `## Milestone` section with the project name and total phase count
|
|
399
412
|
5. **STATE.md size limit**: Follow size limit enforcement rules in `skills/shared/state-update.md` (150 lines max).
|
|
400
413
|
|
|
414
|
+
**CRITICAL: Write CONTEXT.md NOW. Do NOT skip this step.**
|
|
415
|
+
|
|
401
416
|
**9c. Write CONTEXT.md:**
|
|
402
417
|
Create `.planning/CONTEXT.md` from information gathered during questioning:
|
|
403
418
|
|
|
@@ -422,6 +437,8 @@ Create `.planning/CONTEXT.md` from information gathered during questioning:
|
|
|
422
437
|
| {feature} | {reason} |
|
|
423
438
|
```
|
|
424
439
|
|
|
440
|
+
**CRITICAL: Write HISTORY.md NOW. Do NOT skip this step.**
|
|
441
|
+
|
|
425
442
|
**9d. Write HISTORY.md:**
|
|
426
443
|
Create `.planning/HISTORY.md` with an initial entry:
|
|
427
444
|
|
|
@@ -435,6 +452,8 @@ Create `.planning/HISTORY.md` with an initial entry:
|
|
|
435
452
|
- Roadmap: {N} phases planned
|
|
436
453
|
```
|
|
437
454
|
|
|
455
|
+
**CRITICAL: Create phase directories NOW. Do NOT skip this step.**
|
|
456
|
+
|
|
438
457
|
**9e. Create phase directories:**
|
|
439
458
|
For each phase in the roadmap, create the directory structure:
|
|
440
459
|
```
|
|
@@ -478,6 +497,10 @@ If `gates.confirm_project` is true in config:
|
|
|
478
497
|
|
|
479
498
|
---
|
|
480
499
|
|
|
500
|
+
## Cleanup
|
|
501
|
+
|
|
502
|
+
Delete `.planning/.active-skill` if it exists. This must happen on all paths (success, partial, and failure) before reporting results.
|
|
503
|
+
|
|
481
504
|
## Completion
|
|
482
505
|
|
|
483
506
|
After all steps complete, present the final summary:
|
|
@@ -485,9 +508,9 @@ After all steps complete, present the final summary:
|
|
|
485
508
|
Use the branded stage banner from `references/ui-formatting.md`:
|
|
486
509
|
|
|
487
510
|
```
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
511
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
512
|
+
║ PLAN-BUILD-RUN ► PROJECT INITIALIZED ║
|
|
513
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
491
514
|
|
|
492
515
|
**{name}**
|
|
493
516
|
|