forge-orkes 0.3.9 → 0.3.11
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/bin/create-forge.js +16 -5
- package/package.json +1 -1
- package/template/.claude/agents/executor.md +37 -50
- package/template/.claude/agents/planner.md +33 -41
- package/template/.claude/agents/researcher.md +24 -26
- package/template/.claude/agents/reviewer.md +45 -53
- package/template/.claude/agents/verifier.md +30 -50
- package/template/.claude/skills/architecting/SKILL.md +32 -46
- package/template/.claude/skills/beads-integration/SKILL.md +27 -43
- package/template/.claude/skills/debugging/SKILL.md +34 -35
- package/template/.claude/skills/designing/SKILL.md +33 -52
- package/template/.claude/skills/discussing/SKILL.md +139 -180
- package/template/.claude/skills/executing/SKILL.md +85 -157
- package/template/.claude/skills/forge/SKILL.md +98 -142
- package/template/.claude/skills/initializing/SKILL.md +104 -144
- package/template/.claude/skills/planning/SKILL.md +65 -67
- package/template/.claude/skills/quick-tasking/SKILL.md +25 -31
- package/template/.claude/skills/researching/SKILL.md +22 -32
- package/template/.claude/skills/reviewing/SKILL.md +133 -164
- package/template/.claude/skills/securing/SKILL.md +19 -19
- package/template/.claude/skills/upgrading/SKILL.md +19 -27
- package/template/.claude/skills/verifying/SKILL.md +52 -80
|
@@ -1,56 +1,55 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: planning
|
|
3
|
-
description: "
|
|
3
|
+
description: "Break work into executable tasks with verification gates. Trigger after researching when context is sufficient. Enforces constitutional gates, structures requirements, decomposes tasks, sets up goal-backward verification."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Planning
|
|
7
7
|
|
|
8
8
|
Turn research and requirements into executable, verifiable plans.
|
|
9
9
|
|
|
10
|
-
> **
|
|
10
|
+
> **Do NOT use `EnterPlanMode`.** All planning output goes to `.forge/phases/` as structured plan files. Follow the steps below directly.
|
|
11
11
|
|
|
12
12
|
## Step 1: Resolution Gate
|
|
13
13
|
|
|
14
14
|
Read `.forge/context.md`. Check the **Needs Resolution** section.
|
|
15
15
|
|
|
16
|
-
If
|
|
16
|
+
If unresolved items exist (unchecked `- [ ]` items):
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
Present all items and ask the user to decide on each:
|
|
19
|
+
*"Before we plan, {N} items need your input: [list]. For each: lock, defer, fix, or drop?"*
|
|
19
20
|
|
|
20
|
-
|
|
21
|
-
|
|
21
|
+
| Choice | Action |
|
|
22
|
+
|--------|--------|
|
|
23
|
+
| Lock | Record in Locked Decisions |
|
|
24
|
+
| Defer | Move to Deferred Ideas with revisit date |
|
|
25
|
+
| Fix | Add as FR-xxx in `.forge/requirements.yml` — flows into the plan |
|
|
26
|
+
| Drop | Note in Amendment Log |
|
|
22
27
|
|
|
23
|
-
|
|
24
|
-
- **→ Lock it**: The answer is clear. Record in Locked Decisions section.
|
|
25
|
-
- **→ Defer it**: Not now. Move to Deferred Ideas with revisit date.
|
|
26
|
-
- **→ Fix it**: This is a gap/bug. Add as a requirement (FR-xxx) in `.forge/requirements.yml` — it flows into the plan being created.
|
|
27
|
-
- **→ Drop it**: No longer relevant. Note in Amendment Log.
|
|
28
|
+
Check off each resolved item `- [x]` and move to the appropriate section.
|
|
28
29
|
|
|
29
|
-
|
|
30
|
+
Target: 2-5 minutes. Quick human decisions so planning proceeds with accurate info.
|
|
30
31
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
Also scan the **Carried Forward** section — items here that affect the current phase should be triaged the same way.
|
|
32
|
+
Also scan **Carried Forward** — items affecting the current phase get the same triage.
|
|
34
33
|
|
|
35
34
|
## Step 2: Constitutional Gate Check
|
|
36
35
|
|
|
37
|
-
Read `.forge/constitution.md`. For each
|
|
36
|
+
Read `.forge/constitution.md`. For each relevant article:
|
|
38
37
|
- Check the gate checkboxes
|
|
39
|
-
-
|
|
40
|
-
-
|
|
38
|
+
- Gate fails → **STOP.** Resolve before planning.
|
|
39
|
+
- Article needs amendment → flag for user decision (discuss phase)
|
|
41
40
|
|
|
42
41
|
Document gate results in the plan frontmatter.
|
|
43
42
|
|
|
44
43
|
## Step 3: Lock User Decisions
|
|
45
44
|
|
|
46
|
-
If not
|
|
45
|
+
If not done, create `.forge/context.md` from template:
|
|
47
46
|
|
|
48
47
|
1. Ask user about key decisions (framework choices, constraints, preferences)
|
|
49
48
|
2. Record as **Locked Decisions** — these are contracts
|
|
50
49
|
3. Record **Deferred Ideas** — explicitly out of scope
|
|
51
50
|
4. Record **Discretion Areas** — agent picks best approach
|
|
52
51
|
|
|
53
|
-
|
|
52
|
+
Do this BEFORE creating plans. Plans must reference context.md.
|
|
54
53
|
|
|
55
54
|
## Step 4: Structure Requirements
|
|
56
55
|
|
|
@@ -77,14 +76,14 @@ If `.forge/roadmap.yml` doesn't exist (Full tier only):
|
|
|
77
76
|
|
|
78
77
|
## Step 6: Decompose into Tasks
|
|
79
78
|
|
|
80
|
-
For each phase (or
|
|
79
|
+
For each phase (or single feature in Standard tier):
|
|
81
80
|
|
|
82
81
|
1. Copy `.forge/templates/plan.md` → `.forge/phases/m{M}-{N}-{name}/plan-{NN}.md`
|
|
83
|
-
-
|
|
84
|
-
-
|
|
85
|
-
-
|
|
86
|
-
-
|
|
87
|
-
- Example: `.forge/phases/m3-2-providers/plan-01.md`
|
|
82
|
+
- `{M}` = milestone ID from `roadmap.yml`
|
|
83
|
+
- `{N}` = phase number within milestone (sequential)
|
|
84
|
+
- `{name}` = phase `name` from `roadmap.yml` in kebab-case
|
|
85
|
+
- `{NN}` = plan sequence within the phase (`01`, `02`, etc.)
|
|
86
|
+
- Example: `.forge/phases/m3-2-providers/plan-01.md`
|
|
88
87
|
2. Fill in frontmatter (phase, plan number, wave, dependencies)
|
|
89
88
|
3. Create goal-backward must_haves:
|
|
90
89
|
- **Truths:** Observable from user perspective when done (3-7)
|
|
@@ -103,15 +102,21 @@ For each phase (or the single feature in Standard tier):
|
|
|
103
102
|
```
|
|
104
103
|
|
|
105
104
|
### Task Sizing
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
105
|
+
|
|
106
|
+
| Duration | Action |
|
|
107
|
+
|----------|--------|
|
|
108
|
+
| < 15 min | Too small — combine with adjacent task |
|
|
109
|
+
| 15-60 min | Right size |
|
|
110
|
+
| > 60 min | Too large — split into separate plan |
|
|
109
111
|
|
|
110
112
|
### Task Types
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
113
|
+
|
|
114
|
+
| Type | Use |
|
|
115
|
+
|------|-----|
|
|
116
|
+
| `auto` | Fully autonomous (90% of tasks) |
|
|
117
|
+
| `checkpoint:human-verify` | Pause for visual/functional check |
|
|
118
|
+
| `checkpoint:decision` | Pause for user choice between options |
|
|
119
|
+
| `checkpoint:human-action` | Pause for manual action (email verification, 2FA) |
|
|
115
120
|
|
|
116
121
|
### Vertical Slices (Preferred)
|
|
117
122
|
```
|
|
@@ -130,36 +135,32 @@ Forces sequential execution. Only use when architecturally necessary.
|
|
|
130
135
|
|
|
131
136
|
## Step 7: Test Spec Generation (Optional)
|
|
132
137
|
|
|
133
|
-
**When to use:**
|
|
134
|
-
|
|
135
|
-
**The user can also explicitly request this:** *"Generate test specs for this plan."*
|
|
138
|
+
**When to use:** Work involves testable contracts — APIs with defined endpoints, libraries with public interfaces, data transformations with known inputs/outputs, or services with observable behavior. Skip for UI-heavy work. User can request explicitly: *"Generate test specs for this plan."*
|
|
136
139
|
|
|
137
140
|
### Detect Testable Contracts
|
|
138
141
|
|
|
139
|
-
Scan
|
|
140
|
-
-
|
|
141
|
-
-
|
|
142
|
-
-
|
|
143
|
-
-
|
|
144
|
-
-
|
|
142
|
+
Scan tasks from Step 6. A task is a testable contract candidate if it involves:
|
|
143
|
+
- API endpoints — defined request/response shapes, status codes, error cases
|
|
144
|
+
- Library/module interfaces — public functions with typed inputs and expected outputs
|
|
145
|
+
- Data transformations — parsers, formatters, validators with known input→output mappings
|
|
146
|
+
- Service integrations — external API calls with expected payloads and error handling
|
|
147
|
+
- Business logic — calculations, rules engines, state machines with deterministic behavior
|
|
145
148
|
|
|
146
|
-
|
|
149
|
+
No testable contracts found → skip to Step 8.
|
|
147
150
|
|
|
148
151
|
### Generate Test Specifications
|
|
149
152
|
|
|
150
|
-
For each testable contract, create a test spec file alongside the plan:
|
|
151
|
-
|
|
152
153
|
**Location:** `.forge/phases/m{M}-{N}-{name}/specs/`
|
|
153
154
|
|
|
154
|
-
**Format:** Language-appropriate test files (
|
|
155
|
+
**Format:** Language-appropriate test files (`.test.ts`, `_test.go`, `test_*.py`) that:
|
|
155
156
|
|
|
156
|
-
1.
|
|
157
|
-
2.
|
|
158
|
-
- Happy path
|
|
157
|
+
1. Import the module that will exist (path from task's `<files>`)
|
|
158
|
+
2. Describe expected behavior from requirements, not implementation:
|
|
159
|
+
- Happy path from acceptance criteria
|
|
159
160
|
- Edge cases from requirements (empty input, max limits, invalid data)
|
|
160
|
-
- Error cases from
|
|
161
|
-
3.
|
|
162
|
-
4.
|
|
161
|
+
- Error cases from `<done>` criteria
|
|
162
|
+
3. Assert outcomes, not internals
|
|
163
|
+
4. Mark as pending/skipped (`it.skip()`, `@pytest.mark.skip`, `t.Skip()`) so CI doesn't break before implementation
|
|
163
164
|
|
|
164
165
|
```typescript
|
|
165
166
|
// Example: .forge/phases/m1-1-auth/specs/login-endpoint.test.ts
|
|
@@ -197,33 +198,32 @@ For tasks with generated test specs, update the task XML to reference the spec:
|
|
|
197
198
|
</task>
|
|
198
199
|
```
|
|
199
200
|
|
|
200
|
-
|
|
201
|
+
Task type changes to `tdd` when a spec exists. The executor's TDD flow (RED → GREEN → REFACTOR) kicks in automatically.
|
|
201
202
|
|
|
202
203
|
### What NOT to Spec
|
|
203
|
-
|
|
204
|
-
- UI component rendering (use must_haves truths instead)
|
|
204
|
+
- UI component rendering (use must_haves truths)
|
|
205
205
|
- Visual layout and styling (use human verification)
|
|
206
206
|
- Integration flows spanning many components (use key_links verification)
|
|
207
|
-
-
|
|
207
|
+
- Undefined interfaces (spec after architecting, not before)
|
|
208
208
|
|
|
209
|
-
## Step 8: Verify Plans
|
|
209
|
+
## Step 8: Verify Plans
|
|
210
210
|
|
|
211
|
-
Before passing to executor,
|
|
211
|
+
Before passing to executor, check 8 dimensions:
|
|
212
212
|
|
|
213
213
|
1. **Requirement Coverage** — Every phase requirement has task(s)
|
|
214
214
|
2. **Task Completeness** — All tasks have files + action + verify + done
|
|
215
215
|
3. **Dependency Correctness** — Valid DAG, no circular deps
|
|
216
|
-
4. **Key Links Planned** — Artifacts will be wired together
|
|
216
|
+
4. **Key Links Planned** — Artifacts will be wired together, not orphaned
|
|
217
217
|
5. **Scope Sanity** — 2-3 tasks per plan, targeting ~50% context
|
|
218
218
|
6. **Verification Derivation** — must_haves trace to phase goal
|
|
219
219
|
7. **Context Compliance** — Plans honor locked decisions, exclude deferred ideas
|
|
220
|
-
8. **Spec Validity** (when Step 7
|
|
220
|
+
8. **Spec Validity** (when Step 7 used) — Valid syntax, correct paths, derived from requirements not assumptions
|
|
221
221
|
|
|
222
|
-
|
|
222
|
+
Issues found → fix and re-verify. Max 3 revision cycles.
|
|
223
223
|
|
|
224
224
|
## Step 9: Present to User
|
|
225
225
|
|
|
226
|
-
Show
|
|
226
|
+
Show:
|
|
227
227
|
1. Requirements summary (P1/P2/P3 counts, clarifications needed)
|
|
228
228
|
2. Phase/plan structure with wave analysis
|
|
229
229
|
3. Estimated effort per phase
|
|
@@ -233,12 +233,10 @@ Planning is complete when user approves.
|
|
|
233
233
|
|
|
234
234
|
## Phase Handoff
|
|
235
235
|
|
|
236
|
-
After
|
|
236
|
+
After user approves:
|
|
237
237
|
|
|
238
|
-
1. **Verify persistence** — Confirm
|
|
238
|
+
1. **Verify persistence** — Confirm plans written to `.forge/phases/m{M}-{N}-{name}/plan-{NN}.md`, requirements to `.forge/requirements.yml`, roadmap to `.forge/roadmap.yml`, context to `.forge/context.md`
|
|
239
239
|
2. **Update state** — Set `current.status` to `executing` in `.forge/state/milestone-{id}.yml`
|
|
240
240
|
3. **Recommend context clear:**
|
|
241
241
|
|
|
242
|
-
*"
|
|
243
|
-
|
|
244
|
-
*Ready to continue? Clear context and invoke `/forge` to resume."*
|
|
242
|
+
*"Plan written. `/clear` then `/forge` to continue with executing."*
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: quick-tasking
|
|
3
|
-
description: "
|
|
3
|
+
description: "Small, scoped changes: typo fixes, config updates, minor bugs, dependency bumps, doc tweaks. Under 50 lines, 1-2 files, no architectural decisions. Quick tier — skip ceremony."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Quick-Tasking
|
|
7
7
|
|
|
8
|
-
Small change? Skip
|
|
8
|
+
Small change? Skip ceremony. Do it right, do it fast.
|
|
9
9
|
|
|
10
10
|
## Qualifies as Quick
|
|
11
11
|
|
|
@@ -13,62 +13,56 @@ Small change? Skip the ceremony. Do it right, do it fast.
|
|
|
13
13
|
- Typo, grammar, or formatting fix
|
|
14
14
|
- Config or environment variable update
|
|
15
15
|
- Dependency version bump
|
|
16
|
-
-
|
|
16
|
+
- Bug fix with obvious root cause
|
|
17
17
|
- Documentation update
|
|
18
18
|
- CSS/style tweak within design system
|
|
19
19
|
- Adding a missing import or export
|
|
20
20
|
|
|
21
|
-
## Does NOT Qualify
|
|
21
|
+
## Does NOT Qualify
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
-
|
|
25
|
-
- Requires new component, function, or module
|
|
26
|
-
-
|
|
23
|
+
Escalate to Standard tier if any are true:
|
|
24
|
+
- Touches 3+ files
|
|
25
|
+
- Requires a new component, function, or module
|
|
26
|
+
- Logic changes affecting multiple features
|
|
27
27
|
- Needs a new dependency
|
|
28
|
-
- Requires architectural decision
|
|
28
|
+
- Requires an architectural decision
|
|
29
29
|
- Estimated at more than 30 minutes
|
|
30
|
-
-
|
|
30
|
+
- Unsure about the right approach
|
|
31
31
|
|
|
32
|
-
##
|
|
32
|
+
## Workflow
|
|
33
33
|
|
|
34
34
|
### 1. Identify
|
|
35
|
-
What
|
|
35
|
+
What needs to change? Which file, which line, what's wrong.
|
|
36
36
|
|
|
37
37
|
### 2. Validate Scope
|
|
38
|
-
Confirm it's truly quick:
|
|
39
38
|
- [ ] Under 50 lines of changes
|
|
40
|
-
- [ ] 1-2 files
|
|
39
|
+
- [ ] 1-2 files max
|
|
41
40
|
- [ ] No architectural decisions needed
|
|
42
|
-
- [ ] Root cause is obvious
|
|
41
|
+
- [ ] Root cause is obvious
|
|
43
42
|
|
|
44
|
-
|
|
43
|
+
Any check fails → escalate to Standard tier.
|
|
45
44
|
|
|
46
45
|
### 3. Execute
|
|
47
|
-
Make the change. Follow existing patterns
|
|
46
|
+
Make the change. Follow existing codebase patterns.
|
|
48
47
|
|
|
49
48
|
### 4. Test
|
|
50
49
|
- Run relevant tests: `npm test -- --filter={related}`
|
|
51
|
-
-
|
|
52
|
-
-
|
|
50
|
+
- No tests for this area → at minimum confirm it compiles/builds
|
|
51
|
+
- UI changes → visually confirm the fix
|
|
53
52
|
|
|
54
53
|
### 5. Commit
|
|
55
|
-
Atomic commit
|
|
54
|
+
Atomic commit:
|
|
56
55
|
```
|
|
57
56
|
{type}({scope}): {description}
|
|
58
57
|
```
|
|
59
|
-
|
|
60
|
-
- `fix(docs): correct typo in API reference`
|
|
61
|
-
- `chore(deps): bump react to 19.1.0`
|
|
62
|
-
- `fix(ui): align header padding with design system`
|
|
58
|
+
Example: `fix(docs): correct typo in API reference`
|
|
63
59
|
|
|
64
60
|
### 6. Done
|
|
65
|
-
No verification ceremony
|
|
61
|
+
No verification ceremony. Move on.
|
|
66
62
|
|
|
67
63
|
## Scope Creep Detection
|
|
68
64
|
|
|
69
|
-
|
|
70
|
-
-
|
|
71
|
-
- Related issues that should
|
|
72
|
-
- An architectural question → **STOP**. Escalate to Standard with a note
|
|
73
|
-
|
|
74
|
-
Quick-tasking is about discipline: do the small thing, only the small thing, and move on.
|
|
65
|
+
During execution, if you discover:
|
|
66
|
+
- Fix is bigger than expected → **STOP**. Escalate to Standard.
|
|
67
|
+
- Related issues that should be fixed → **LOG** to `.forge/deferred-issues.md`. Don't fix now.
|
|
68
|
+
- An architectural question → **STOP**. Escalate to Standard with a note on what triggered it.
|
|
@@ -5,67 +5,65 @@ description: "Use when you need to investigate before building: understand the c
|
|
|
5
5
|
|
|
6
6
|
# Researching
|
|
7
7
|
|
|
8
|
-
Gather context before planning. Bad research
|
|
8
|
+
Gather context before planning. Bad research leads to bad plans.
|
|
9
9
|
|
|
10
10
|
## Research Types
|
|
11
11
|
|
|
12
12
|
### 1. Codebase Research
|
|
13
13
|
**When:** Joining existing project, planning changes to existing code, brownfield work.
|
|
14
14
|
|
|
15
|
-
Steps:
|
|
16
15
|
1. Map directory structure (`ls`, `find`, `tree`)
|
|
17
16
|
2. Identify key files: entry points, config, routes, models, components
|
|
18
17
|
3. Read conventions: naming, imports, error handling, testing patterns
|
|
19
18
|
4. Identify tech stack: framework, libraries, versions
|
|
20
|
-
5. Find existing patterns similar to planned work
|
|
19
|
+
5. Find existing patterns similar to planned work — reuse, don't reinvent
|
|
21
20
|
6. Document concerns: tech debt, fragile areas, missing tests
|
|
22
21
|
|
|
23
|
-
Output
|
|
22
|
+
**Output:** Research summary with file paths, patterns found, reuse opportunities.
|
|
24
23
|
|
|
25
24
|
### 2. Requirements Research
|
|
26
25
|
**When:** Requirements are vague, conflicting, or incomplete.
|
|
27
26
|
|
|
28
|
-
Steps:
|
|
29
27
|
1. Read all available requirements/specs/user stories
|
|
30
28
|
2. Identify gaps — what's not specified?
|
|
31
29
|
3. Mark uncertainties with `[NEEDS CLARIFICATION]`
|
|
32
30
|
4. Draft acceptance criteria (Given/When/Then)
|
|
33
31
|
5. Present clarification questions to user
|
|
34
32
|
|
|
35
|
-
Output
|
|
33
|
+
**Output:** Structured requirements draft with uncertainty markers.
|
|
36
34
|
|
|
37
35
|
### 3. Technology Research
|
|
38
36
|
**When:** Evaluating libraries, frameworks, APIs, or integration approaches.
|
|
39
37
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
2. Read official documentation (not blog posts)
|
|
38
|
+
1. Check MCP servers first — structured data beats web scraping
|
|
39
|
+
2. Read official documentation, not blog posts
|
|
43
40
|
3. Check version compatibility with existing stack
|
|
44
41
|
4. Look for known issues, migration guides, breaking changes
|
|
45
42
|
5. Find working code examples from official sources
|
|
46
43
|
|
|
47
|
-
Output
|
|
44
|
+
**Output:** Technology assessment with recommendation and confidence level.
|
|
48
45
|
|
|
49
46
|
### 4. Feasibility Research
|
|
50
47
|
**When:** Unsure if approach will work, need to spike a risky idea.
|
|
51
48
|
|
|
52
|
-
Steps:
|
|
53
49
|
1. Identify the riskiest assumption
|
|
54
50
|
2. Build minimal proof-of-concept (< 30 minutes)
|
|
55
51
|
3. Test the critical path only
|
|
56
52
|
4. Document: works / doesn't work / works with caveats
|
|
57
53
|
|
|
58
|
-
Output
|
|
54
|
+
**Output:** Feasibility verdict with evidence.
|
|
59
55
|
|
|
60
56
|
## Tool Priority
|
|
61
57
|
|
|
62
|
-
Use
|
|
58
|
+
Use in this order (highest confidence first):
|
|
63
59
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
60
|
+
| Priority | Source | Notes |
|
|
61
|
+
|----------|--------|-------|
|
|
62
|
+
| 1 | Codebase | Read actual code. Highest confidence. |
|
|
63
|
+
| 2 | MCP servers | Structured data from Notion, GitHub, Linear, etc. |
|
|
64
|
+
| 3 | Official docs | Framework/library docs via WebFetch. |
|
|
65
|
+
| 4 | Web search | Community solutions, Stack Overflow, blogs. |
|
|
66
|
+
| 5 | Training data | Hypothesis only. Verify before trusting. |
|
|
69
67
|
|
|
70
68
|
## Confidence Levels
|
|
71
69
|
|
|
@@ -79,12 +77,11 @@ Tag every finding:
|
|
|
79
77
|
|
|
80
78
|
## Parallel Research
|
|
81
79
|
|
|
82
|
-
|
|
83
|
-
- Spawn separate research agents
|
|
84
|
-
- Each agent gets a focused scope
|
|
80
|
+
For independent topics, research simultaneously:
|
|
81
|
+
- Spawn separate research agents per topic with focused scope
|
|
85
82
|
- Collect and synthesize results
|
|
86
83
|
|
|
87
|
-
|
|
84
|
+
Never research sequentially when topics are independent.
|
|
88
85
|
|
|
89
86
|
## Output Template
|
|
90
87
|
|
|
@@ -111,19 +108,12 @@ Do NOT research sequentially when topics are independent.
|
|
|
111
108
|
|
|
112
109
|
## Size Gate
|
|
113
110
|
|
|
114
|
-
Research output
|
|
115
|
-
- `research-codebase.md` for codebase findings
|
|
116
|
-
- `research-tech.md` for technology evaluation
|
|
117
|
-
- `research-requirements.md` for requirements analysis
|
|
111
|
+
Research output under 500 lines. If larger, split into focused documents: `research-codebase.md`, `research-tech.md`, `research-requirements.md`.
|
|
118
112
|
|
|
119
113
|
## Phase Handoff
|
|
120
114
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
1. **Persist findings** — Write research summary to `.forge/phases/` or present inline (for Standard tier, inline is fine; for Full tier with multiple research topics, write to files)
|
|
115
|
+
1. **Persist findings** — Write research summary to `.forge/phases/m{M}-{N}-{name}/` or present inline. Standard tier: inline is fine. Full tier with multiple topics: write to files.
|
|
124
116
|
2. **Update state** — Set `current.status` to `discussing` in `.forge/state/milestone-{id}.yml`
|
|
125
117
|
3. **Recommend context clear:**
|
|
126
118
|
|
|
127
|
-
*"Research
|
|
128
|
-
|
|
129
|
-
*Ready to continue? Clear context and invoke `/forge` to resume."*
|
|
119
|
+
*"Research complete. State written. `/clear` then `/forge` to continue with discussing."*
|