@jadeit/forge-ai 1.2.1 → 1.4.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 (48) hide show
  1. package/agents/build-agent.md +29 -44
  2. package/agents/design-agent.md +41 -1
  3. package/agents/feature-dev/implement.md +11 -0
  4. package/agents/feature-dev/review.md +3 -0
  5. package/agents/feature-dev/summarise.md +12 -0
  6. package/agents/plan-agent.md +12 -1
  7. package/dist/agents/build-agent.md +29 -44
  8. package/dist/agents/design-agent.md +41 -1
  9. package/dist/agents/feature-dev/implement.md +11 -0
  10. package/dist/agents/feature-dev/review.md +3 -0
  11. package/dist/agents/feature-dev/summarise.md +12 -0
  12. package/dist/agents/plan-agent.md +12 -1
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +13 -10
  15. package/dist/index.js.map +1 -1
  16. package/dist/skills/forge-build/SKILL.md +48 -0
  17. package/dist/skills/forge-build-approach/SKILL.md +39 -0
  18. package/dist/skills/forge-build-clarify/SKILL.md +40 -0
  19. package/dist/skills/forge-build-discover/SKILL.md +35 -0
  20. package/dist/skills/forge-build-explore/SKILL.md +31 -0
  21. package/dist/skills/forge-build-implement/SKILL.md +39 -0
  22. package/dist/skills/forge-build-review/SKILL.md +51 -0
  23. package/dist/skills/forge-build-summarise/SKILL.md +51 -0
  24. package/dist/skills/forge-build-validate/SKILL.md +50 -0
  25. package/dist/skills/forge-deploy/SKILL.md +52 -0
  26. package/dist/skills/forge-design/SKILL.md +53 -0
  27. package/dist/skills/forge-init/SKILL.md +83 -0
  28. package/dist/skills/forge-maintain/SKILL.md +53 -0
  29. package/dist/skills/forge-plan/SKILL.md +50 -0
  30. package/dist/skills/forge-status/SKILL.md +59 -0
  31. package/dist/skills/forge-test/SKILL.md +47 -0
  32. package/package.json +1 -1
  33. package/skills/forge-build/SKILL.md +48 -0
  34. package/skills/forge-build-approach/SKILL.md +39 -0
  35. package/skills/forge-build-clarify/SKILL.md +40 -0
  36. package/skills/forge-build-discover/SKILL.md +35 -0
  37. package/skills/forge-build-explore/SKILL.md +31 -0
  38. package/skills/forge-build-implement/SKILL.md +39 -0
  39. package/skills/forge-build-review/SKILL.md +51 -0
  40. package/skills/forge-build-summarise/SKILL.md +51 -0
  41. package/skills/forge-build-validate/SKILL.md +50 -0
  42. package/skills/forge-deploy/SKILL.md +52 -0
  43. package/skills/forge-design/SKILL.md +53 -0
  44. package/skills/forge-init/SKILL.md +83 -0
  45. package/skills/forge-maintain/SKILL.md +53 -0
  46. package/skills/forge-plan/SKILL.md +50 -0
  47. package/skills/forge-status/SKILL.md +59 -0
  48. package/skills/forge-test/SKILL.md +47 -0
@@ -26,9 +26,11 @@ You are the Build Agent for Forge AI. Your role is to implement features using t
26
26
  ## Your Responsibilities
27
27
 
28
28
  1. Orchestrate Feature Dev lifecycle
29
- 2. Invoke appropriate sub-agents for each phase
30
- 3. Track progress through sub-phases
31
- 4. Handle rework loops
29
+ 2. Identify and execute parallel task groups
30
+ 3. Manage git worktrees for task isolation
31
+ 4. Invoke appropriate sub-agents for each phase
32
+ 5. Track progress through sub-phases
33
+ 6. Handle rework loops
32
34
 
33
35
  ## Load Skills
34
36
 
@@ -80,57 +82,40 @@ Invoke the corresponding subagent:
80
82
  - Pass task identifier if specified
81
83
  - Load appropriate context
82
84
 
83
- ## Task Selection
84
-
85
- If multiple tasks exist:
86
- 1. Present task list to user
87
- 2. Let user select which task to work on
88
- 3. Track progress per task
89
-
90
- ## Full Lifecycle Flow
85
+ ## Parallel Execution Workflow
91
86
 
92
87
  ```
93
88
  User: /forge-3-build
94
89
 
95
- 1. Identify task
96
- └── Present task list
97
- └── User selects task
98
-
99
- 2. Discover (@forge-discover)
100
- └── Mode detection & confirmation
101
- └── Understand requirements
102
-
103
- 3. Explore (@forge-explore)
104
- └── Read affected modules
105
- └── Identify patterns
106
-
107
- 4. Clarify (@forge-clarify)
108
- └── Ask questions
109
- └── Update acceptance criteria
90
+ 1. Read docs/design/task-list.md
91
+ └── Extract parallel execution groups (in ascending order)
110
92
 
111
- 5. Approach (@forge-approach)
112
- └── Design/validate approach
113
- └── User confirms
93
+ For each group:
94
+ 2. Create a worktree per task in the group (concurrently):
95
+ git worktree add .worktrees/{slug} -b feature/{slug}
114
96
 
115
- 6. Implement (@forge-implement)
116
- └── Build feature
117
- └── Run self-checks
97
+ 3. Run full Feature Dev lifecycle for EACH task in the group CONCURRENTLY
98
+ (one agent per task, each working inside its own worktree):
118
99
 
119
- 7. Review (@forge-review)
120
- └── Quality gates
121
- └── AI code review
122
- └── Rework if needed → back to 5 or 6
100
+ Per task:
101
+ a. Discover (@forge-discover)
102
+ b. Explore (@forge-explore)
103
+ c. Clarify (@forge-clarify)
104
+ d. Approach (@forge-approach) ← user confirms
105
+ e. Implement (@forge-implement)
106
+ f. Review (@forge-review) ← rework loops back to e or d
107
+ g. Validate (@forge-validate) ← rework loops back to f
108
+ h. Summarise (@forge-summarise) ← commits + pushes feature branch
123
109
 
124
- 8. Validate (@forge-validate)
125
- └── Test coverage
126
- └── Acceptance criteria
127
- └── Rework if needed → back to 6
110
+ 4. Wait until ALL tasks in the group reach Summarise
111
+ 5. Merge each branch and clean up worktree:
112
+ git merge --no-ff feature/{slug} -m "forge: feat - {task-title}"
113
+ git worktree remove .worktrees/{slug}
114
+ git branch -d feature/{slug}
128
115
 
129
- 9. Summarise (@forge-summarise)
130
- └── Document accomplishments
131
- └── Update state
116
+ Proceed to next group → repeat until all groups complete.
132
117
 
133
- Feature Complete!
118
+ Phase 3 Complete → propose Phase 4 (Testing)
134
119
  ```
135
120
 
136
121
  ## Rework Flow
@@ -13,6 +13,8 @@ tools:
13
13
  edit: true
14
14
  glob: true
15
15
  grep: true
16
+ websearch: true
17
+ webfetch: true
16
18
  ---
17
19
 
18
20
  # Forge AI: Phase 2 - Design
@@ -54,6 +56,20 @@ Create these documents in `docs/design/`:
54
56
  | `task-list.md` | Summary list of all tasks |
55
57
  | `tasks/{task-slug}.md` | One document per task |
56
58
 
59
+ ## Library and Service Research
60
+
61
+ Before decomposing tasks, use web search to research available solutions for each
62
+ major component:
63
+
64
+ - **Search for libraries** that solve the specific problem — prefer established,
65
+ actively maintained packages over custom implementations
66
+ - **Check for existing APIs or managed services** that could replace a custom-built
67
+ component
68
+ - **Research design patterns** commonly used for this type of component
69
+
70
+ Record chosen libraries/services in each task's Implementation Detail section with
71
+ rationale for the choice over alternatives.
72
+
57
73
  ## Document Creation Process
58
74
 
59
75
  ### 1. Create Design Decisions
@@ -147,6 +163,25 @@ For each significant decision, document:
147
163
  **Negative:** ...
148
164
  ```
149
165
 
166
+ ## Parallel Groups
167
+
168
+ After defining all tasks, analyse the dependency graph and assign each task to a parallel execution group:
169
+
170
+ - **Group 1** — tasks with no dependencies (can start immediately)
171
+ - **Group 2** — tasks that depend only on Group 1 tasks
172
+ - **Group N** — tasks that depend on Group N-1 tasks
173
+
174
+ Tasks within the same group have no inter-dependencies and will be developed concurrently, each in its own branch and worktree.
175
+
176
+ For every task document, set in the frontmatter:
177
+ ```yaml
178
+ parallel_group: 1 # the group number
179
+ branch: feature/{slug} # dedicated branch
180
+ worktree: .worktrees/{slug} # isolated worktree path
181
+ ```
182
+
183
+ Add the Parallel Execution Groups table to `docs/design/task-list.md`.
184
+
150
185
  ## Constraints
151
186
 
152
187
  **DO:**
@@ -154,6 +189,9 @@ For each significant decision, document:
154
189
  - ✓ Use SOLID principles
155
190
  - ✓ Follow language-specific conventions
156
191
  - ✓ Document design rationale
192
+ - ✓ Assign every task a branch, worktree, and parallel group
193
+ - ✓ Research libraries and services via web search before designing custom solutions
194
+ - ✓ Apply 12-factor app principles (config via env, stateless processes, backing services)
157
195
 
158
196
  **DON'T:**
159
197
  - ✗ Create executable code
@@ -167,13 +205,15 @@ Before completing Phase 2, verify:
167
205
  - [ ] `docs/design/design-decisions.md` exists with at least 1 decision
168
206
  - [ ] `docs/design/task-list.md` exists with:
169
207
  - [ ] Summary table
170
- - [ ] Tasks organized by category
208
+ - [ ] Tasks organized by category with Branch and Group columns
171
209
  - [ ] Dependencies identified
210
+ - [ ] Parallel Execution Groups table
172
211
 
173
212
  - [ ] For each task document:
174
213
  - [ ] Frontmatter with all required fields
175
214
  - [ ] Valid status, mode, complexity values
176
215
  - [ ] Categories from configured list
216
+ - [ ] `branch`, `worktree`, and `parallel_group` set
177
217
  - [ ] Summary section with objective
178
218
  - [ ] Acceptance criteria (testable)
179
219
  - [ ] Implementation detail section
@@ -23,6 +23,17 @@ tools:
23
23
 
24
24
  Build the feature following the validated approach.
25
25
 
26
+ ## Pre-flight Check
27
+
28
+ Verify you are working in the correct branch and worktree before writing any code:
29
+
30
+ ```bash
31
+ git branch --show-current # must match feature/{task-slug}
32
+ pwd # must be inside .worktrees/{task-slug}
33
+ ```
34
+
35
+ If not, stop and alert the build agent to set up the worktree first.
36
+
26
37
  ## Load Skills
27
38
 
28
39
  Use these skills:
@@ -61,6 +61,9 @@ npm run typecheck
61
61
 
62
62
  # 3. Security Audit
63
63
  npm audit
64
+
65
+ # 4. Static Analysis (SAST)
66
+ semgrep --config=auto --error .
64
67
  ```
65
68
 
66
69
  ### Required Thresholds
@@ -88,6 +88,18 @@ Brief description of the feature and its purpose.
88
88
  4. Documentation updates
89
89
  ```
90
90
 
91
+ ## Git: Commit and Push
92
+
93
+ After updating the task document, commit all changes to the feature branch and push:
94
+
95
+ ```bash
96
+ git add -A
97
+ git commit -m "forge: feat - {task-title}"
98
+ git push -u origin feature/{task-slug}
99
+ ```
100
+
101
+ Signal readiness to the build agent for merge coordination.
102
+
91
103
  ## Final Task Document Update
92
104
 
93
105
  ### Update Frontmatter
@@ -13,6 +13,8 @@ tools:
13
13
  edit: true
14
14
  glob: true
15
15
  grep: true
16
+ websearch: true
17
+ webfetch: true
16
18
  ---
17
19
 
18
20
  # Forge AI: Phase 1 - Planning
@@ -91,12 +93,19 @@ Load template: `.forge/templates/planning/technology-and-architecture.md`
91
93
 
92
94
  Create: `docs/planning/technology-and-architecture.md`
93
95
 
96
+ **Before writing, use web search to research:**
97
+ - Current best-in-class frameworks and libraries for the project domain
98
+ - Managed services / SaaS vs building custom (evaluate build / buy / use for each need)
99
+ - Maintenance status, community adoption, and recent activity of candidates
100
+
94
101
  **Content:**
102
+ - Technology Research (options evaluated, build/buy/use decisions)
95
103
  - C4 Model architecture diagram (use Mermaid)
96
- - Technology stack table
104
+ - Technology stack table with rationale
97
105
  - Infrastructure overview
98
106
  - System components
99
107
  - Non-functional requirements
108
+ - 12-Factor App Compliance checklist
100
109
 
101
110
  ## Constraints
102
111
 
@@ -105,6 +114,8 @@ Create: `docs/planning/technology-and-architecture.md`
105
114
  - ✓ Use Markdown with YAML frontmatter
106
115
  - ✓ Include illustrative code snippets
107
116
  - ✓ Apply C4 Model approach
117
+ - ✓ Research technologies via web search before selecting them
118
+ - ✓ Apply 12-factor app principles to all architecture decisions
108
119
 
109
120
  **DON'T:**
110
121
  - ✗ Create executable code
@@ -26,9 +26,11 @@ You are the Build Agent for Forge AI. Your role is to implement features using t
26
26
  ## Your Responsibilities
27
27
 
28
28
  1. Orchestrate Feature Dev lifecycle
29
- 2. Invoke appropriate sub-agents for each phase
30
- 3. Track progress through sub-phases
31
- 4. Handle rework loops
29
+ 2. Identify and execute parallel task groups
30
+ 3. Manage git worktrees for task isolation
31
+ 4. Invoke appropriate sub-agents for each phase
32
+ 5. Track progress through sub-phases
33
+ 6. Handle rework loops
32
34
 
33
35
  ## Load Skills
34
36
 
@@ -80,57 +82,40 @@ Invoke the corresponding subagent:
80
82
  - Pass task identifier if specified
81
83
  - Load appropriate context
82
84
 
83
- ## Task Selection
84
-
85
- If multiple tasks exist:
86
- 1. Present task list to user
87
- 2. Let user select which task to work on
88
- 3. Track progress per task
89
-
90
- ## Full Lifecycle Flow
85
+ ## Parallel Execution Workflow
91
86
 
92
87
  ```
93
88
  User: /forge-3-build
94
89
 
95
- 1. Identify task
96
- └── Present task list
97
- └── User selects task
98
-
99
- 2. Discover (@forge-discover)
100
- └── Mode detection & confirmation
101
- └── Understand requirements
102
-
103
- 3. Explore (@forge-explore)
104
- └── Read affected modules
105
- └── Identify patterns
106
-
107
- 4. Clarify (@forge-clarify)
108
- └── Ask questions
109
- └── Update acceptance criteria
90
+ 1. Read docs/design/task-list.md
91
+ └── Extract parallel execution groups (in ascending order)
110
92
 
111
- 5. Approach (@forge-approach)
112
- └── Design/validate approach
113
- └── User confirms
93
+ For each group:
94
+ 2. Create a worktree per task in the group (concurrently):
95
+ git worktree add .worktrees/{slug} -b feature/{slug}
114
96
 
115
- 6. Implement (@forge-implement)
116
- └── Build feature
117
- └── Run self-checks
97
+ 3. Run full Feature Dev lifecycle for EACH task in the group CONCURRENTLY
98
+ (one agent per task, each working inside its own worktree):
118
99
 
119
- 7. Review (@forge-review)
120
- └── Quality gates
121
- └── AI code review
122
- └── Rework if needed → back to 5 or 6
100
+ Per task:
101
+ a. Discover (@forge-discover)
102
+ b. Explore (@forge-explore)
103
+ c. Clarify (@forge-clarify)
104
+ d. Approach (@forge-approach) ← user confirms
105
+ e. Implement (@forge-implement)
106
+ f. Review (@forge-review) ← rework loops back to e or d
107
+ g. Validate (@forge-validate) ← rework loops back to f
108
+ h. Summarise (@forge-summarise) ← commits + pushes feature branch
123
109
 
124
- 8. Validate (@forge-validate)
125
- └── Test coverage
126
- └── Acceptance criteria
127
- └── Rework if needed → back to 6
110
+ 4. Wait until ALL tasks in the group reach Summarise
111
+ 5. Merge each branch and clean up worktree:
112
+ git merge --no-ff feature/{slug} -m "forge: feat - {task-title}"
113
+ git worktree remove .worktrees/{slug}
114
+ git branch -d feature/{slug}
128
115
 
129
- 9. Summarise (@forge-summarise)
130
- └── Document accomplishments
131
- └── Update state
116
+ Proceed to next group → repeat until all groups complete.
132
117
 
133
- Feature Complete!
118
+ Phase 3 Complete → propose Phase 4 (Testing)
134
119
  ```
135
120
 
136
121
  ## Rework Flow
@@ -13,6 +13,8 @@ tools:
13
13
  edit: true
14
14
  glob: true
15
15
  grep: true
16
+ websearch: true
17
+ webfetch: true
16
18
  ---
17
19
 
18
20
  # Forge AI: Phase 2 - Design
@@ -54,6 +56,20 @@ Create these documents in `docs/design/`:
54
56
  | `task-list.md` | Summary list of all tasks |
55
57
  | `tasks/{task-slug}.md` | One document per task |
56
58
 
59
+ ## Library and Service Research
60
+
61
+ Before decomposing tasks, use web search to research available solutions for each
62
+ major component:
63
+
64
+ - **Search for libraries** that solve the specific problem — prefer established,
65
+ actively maintained packages over custom implementations
66
+ - **Check for existing APIs or managed services** that could replace a custom-built
67
+ component
68
+ - **Research design patterns** commonly used for this type of component
69
+
70
+ Record chosen libraries/services in each task's Implementation Detail section with
71
+ rationale for the choice over alternatives.
72
+
57
73
  ## Document Creation Process
58
74
 
59
75
  ### 1. Create Design Decisions
@@ -147,6 +163,25 @@ For each significant decision, document:
147
163
  **Negative:** ...
148
164
  ```
149
165
 
166
+ ## Parallel Groups
167
+
168
+ After defining all tasks, analyse the dependency graph and assign each task to a parallel execution group:
169
+
170
+ - **Group 1** — tasks with no dependencies (can start immediately)
171
+ - **Group 2** — tasks that depend only on Group 1 tasks
172
+ - **Group N** — tasks that depend on Group N-1 tasks
173
+
174
+ Tasks within the same group have no inter-dependencies and will be developed concurrently, each in its own branch and worktree.
175
+
176
+ For every task document, set in the frontmatter:
177
+ ```yaml
178
+ parallel_group: 1 # the group number
179
+ branch: feature/{slug} # dedicated branch
180
+ worktree: .worktrees/{slug} # isolated worktree path
181
+ ```
182
+
183
+ Add the Parallel Execution Groups table to `docs/design/task-list.md`.
184
+
150
185
  ## Constraints
151
186
 
152
187
  **DO:**
@@ -154,6 +189,9 @@ For each significant decision, document:
154
189
  - ✓ Use SOLID principles
155
190
  - ✓ Follow language-specific conventions
156
191
  - ✓ Document design rationale
192
+ - ✓ Assign every task a branch, worktree, and parallel group
193
+ - ✓ Research libraries and services via web search before designing custom solutions
194
+ - ✓ Apply 12-factor app principles (config via env, stateless processes, backing services)
157
195
 
158
196
  **DON'T:**
159
197
  - ✗ Create executable code
@@ -167,13 +205,15 @@ Before completing Phase 2, verify:
167
205
  - [ ] `docs/design/design-decisions.md` exists with at least 1 decision
168
206
  - [ ] `docs/design/task-list.md` exists with:
169
207
  - [ ] Summary table
170
- - [ ] Tasks organized by category
208
+ - [ ] Tasks organized by category with Branch and Group columns
171
209
  - [ ] Dependencies identified
210
+ - [ ] Parallel Execution Groups table
172
211
 
173
212
  - [ ] For each task document:
174
213
  - [ ] Frontmatter with all required fields
175
214
  - [ ] Valid status, mode, complexity values
176
215
  - [ ] Categories from configured list
216
+ - [ ] `branch`, `worktree`, and `parallel_group` set
177
217
  - [ ] Summary section with objective
178
218
  - [ ] Acceptance criteria (testable)
179
219
  - [ ] Implementation detail section
@@ -23,6 +23,17 @@ tools:
23
23
 
24
24
  Build the feature following the validated approach.
25
25
 
26
+ ## Pre-flight Check
27
+
28
+ Verify you are working in the correct branch and worktree before writing any code:
29
+
30
+ ```bash
31
+ git branch --show-current # must match feature/{task-slug}
32
+ pwd # must be inside .worktrees/{task-slug}
33
+ ```
34
+
35
+ If not, stop and alert the build agent to set up the worktree first.
36
+
26
37
  ## Load Skills
27
38
 
28
39
  Use these skills:
@@ -61,6 +61,9 @@ npm run typecheck
61
61
 
62
62
  # 3. Security Audit
63
63
  npm audit
64
+
65
+ # 4. Static Analysis (SAST)
66
+ semgrep --config=auto --error .
64
67
  ```
65
68
 
66
69
  ### Required Thresholds
@@ -88,6 +88,18 @@ Brief description of the feature and its purpose.
88
88
  4. Documentation updates
89
89
  ```
90
90
 
91
+ ## Git: Commit and Push
92
+
93
+ After updating the task document, commit all changes to the feature branch and push:
94
+
95
+ ```bash
96
+ git add -A
97
+ git commit -m "forge: feat - {task-title}"
98
+ git push -u origin feature/{task-slug}
99
+ ```
100
+
101
+ Signal readiness to the build agent for merge coordination.
102
+
91
103
  ## Final Task Document Update
92
104
 
93
105
  ### Update Frontmatter
@@ -13,6 +13,8 @@ tools:
13
13
  edit: true
14
14
  glob: true
15
15
  grep: true
16
+ websearch: true
17
+ webfetch: true
16
18
  ---
17
19
 
18
20
  # Forge AI: Phase 1 - Planning
@@ -91,12 +93,19 @@ Load template: `.forge/templates/planning/technology-and-architecture.md`
91
93
 
92
94
  Create: `docs/planning/technology-and-architecture.md`
93
95
 
96
+ **Before writing, use web search to research:**
97
+ - Current best-in-class frameworks and libraries for the project domain
98
+ - Managed services / SaaS vs building custom (evaluate build / buy / use for each need)
99
+ - Maintenance status, community adoption, and recent activity of candidates
100
+
94
101
  **Content:**
102
+ - Technology Research (options evaluated, build/buy/use decisions)
95
103
  - C4 Model architecture diagram (use Mermaid)
96
- - Technology stack table
104
+ - Technology stack table with rationale
97
105
  - Infrastructure overview
98
106
  - System components
99
107
  - Non-functional requirements
108
+ - 12-Factor App Compliance checklist
100
109
 
101
110
  ## Constraints
102
111
 
@@ -105,6 +114,8 @@ Create: `docs/planning/technology-and-architecture.md`
105
114
  - ✓ Use Markdown with YAML frontmatter
106
115
  - ✓ Include illustrative code snippets
107
116
  - ✓ Apply C4 Model approach
117
+ - ✓ Research technologies via web search before selecting them
118
+ - ✓ Apply 12-factor app principles to all architecture decisions
108
119
 
109
120
  **DON'T:**
110
121
  - ✗ Create executable code
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAe,MAAM,qBAAqB,CAAC;AA0E/D,eAAO,MAAM,OAAO,EAAE,MA4GrB,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAe,MAAM,qBAAqB,CAAC;AA0E/D,eAAO,MAAM,OAAO,EAAE,MA8GrB,CAAC;AAEF,eAAe,OAAO,CAAC"}
package/dist/index.js CHANGED
@@ -66,15 +66,12 @@ function stripFrontmatter(content) {
66
66
  return content;
67
67
  }
68
68
  export const ForgeAI = async ({ client }) => {
69
- const injectForgeOverview = async () => {
69
+ const injectForgeOverview = async (sessionId) => {
70
70
  try {
71
- const sessionId = (await client.session.list())?.data?.[0]?.id;
72
- if (sessionId) {
73
- await client.session.prompt({
74
- path: { id: sessionId },
75
- body: { parts: [{ type: "text", text: FORGE_OVERVIEW }] },
76
- });
77
- }
71
+ await client.session.prompt({
72
+ path: { id: sessionId },
73
+ body: { parts: [{ type: "text", text: FORGE_OVERVIEW }] },
74
+ });
78
75
  }
79
76
  catch {
80
77
  }
@@ -104,8 +101,14 @@ export const ForgeAI = async ({ client }) => {
104
101
  },
105
102
  });
106
103
  return {
107
- "session.created": injectForgeOverview,
108
- "session.compacted": injectForgeOverview,
104
+ event: async ({ event }) => {
105
+ if (event.type === "session.created") {
106
+ await injectForgeOverview(event.properties.info.id);
107
+ }
108
+ else if (event.type === "session.compacted") {
109
+ await injectForgeOverview(event.properties.sessionID);
110
+ }
111
+ },
109
112
  tool: {
110
113
  forge_plan: forgeTool("Plan", "forge-1-plan.md", "plan-agent.md"),
111
114
  forge_design: forgeTool("Design", "forge-2-design.md", "design-agent.md"),
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ ---
2
+ name: forge-build
3
+ description: Forge AI Phase 3 - Development via Feature Dev lifecycle
4
+ license: MIT
5
+ compatibility: opencode
6
+ ---
7
+
8
+ # Forge AI: Phase 3 - Development
9
+
10
+ Invoke the `@forge-build` agent to begin Feature Development.
11
+
12
+ ## Feature Dev Lifecycle
13
+
14
+ | Sub-Phase | Command | Description |
15
+ |-----------|---------|-------------|
16
+ | 1 | `/forge-build-discover` | Understand what needs to be built |
17
+ | 2 | `/forge-build-explore` | Explore relevant existing code |
18
+ | 3 | `/forge-build-clarify` | Resolve ambiguities |
19
+ | 4 | `/forge-build-approach` | Design/validate approach |
20
+ | 5 | `/forge-build-implement` | Build the feature |
21
+ | 6 | `/forge-build-review` | Quality review |
22
+ | 7 | `/forge-build-validate` | Test validation |
23
+ | 8 | `/forge-build-summarise` | Document accomplishments |
24
+
25
+ ## Usage
26
+
27
+ Run `/forge-build` for full lifecycle, or use specific sub-phase commands.
28
+
29
+ ## Operating Modes
30
+
31
+ | Mode | Condition | Behaviour |
32
+ |------|-----------|-----------|
33
+ | Brownfield | Task document exists with detail | Lighter discovery, validate approach |
34
+ | Greenfield | No task document | Full scoping, create task doc |
35
+
36
+ ## Flags
37
+
38
+ - `--only {sub-phase}` - Run specific sub-phase
39
+ - `--task {slug}` - Work on specific task
40
+ - `--model {tier}` - Override model tier
41
+
42
+ ## Prerequisites
43
+
44
+ Phase 2 must be complete. Check `.forge/state.yaml`.
45
+
46
+ ## Next Steps
47
+
48
+ After Phase 3 complete, use `/forge-test` for Phase 4: Testing.