@jadeit/forge-ai 1.2.1 → 1.5.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/agents/audit-agent.md +171 -0
- package/agents/build-agent.md +29 -44
- package/agents/design-agent.md +41 -1
- package/agents/feature-dev/implement.md +11 -0
- package/agents/feature-dev/review.md +3 -0
- package/agents/feature-dev/summarise.md +12 -0
- package/agents/plan-agent.md +12 -1
- package/commands/forge-audit.md +54 -0
- package/dist/agents/audit-agent.md +171 -0
- package/dist/agents/build-agent.md +29 -44
- package/dist/agents/design-agent.md +41 -1
- package/dist/agents/feature-dev/implement.md +11 -0
- package/dist/agents/feature-dev/review.md +3 -0
- package/dist/agents/feature-dev/summarise.md +12 -0
- package/dist/agents/plan-agent.md +12 -1
- package/dist/commands/forge-audit.md +54 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -10
- package/dist/index.js.map +1 -1
- package/dist/skills/forge-build/SKILL.md +48 -0
- package/dist/skills/forge-build-approach/SKILL.md +39 -0
- package/dist/skills/forge-build-clarify/SKILL.md +40 -0
- package/dist/skills/forge-build-discover/SKILL.md +35 -0
- package/dist/skills/forge-build-explore/SKILL.md +31 -0
- package/dist/skills/forge-build-implement/SKILL.md +39 -0
- package/dist/skills/forge-build-review/SKILL.md +51 -0
- package/dist/skills/forge-build-summarise/SKILL.md +51 -0
- package/dist/skills/forge-build-validate/SKILL.md +50 -0
- package/dist/skills/forge-deploy/SKILL.md +52 -0
- package/dist/skills/forge-design/SKILL.md +53 -0
- package/dist/skills/forge-init/SKILL.md +83 -0
- package/dist/skills/forge-maintain/SKILL.md +53 -0
- package/dist/skills/forge-plan/SKILL.md +50 -0
- package/dist/skills/forge-status/SKILL.md +59 -0
- package/dist/skills/forge-test/SKILL.md +47 -0
- package/package.json +1 -1
- package/skills/forge-build/SKILL.md +48 -0
- package/skills/forge-build-approach/SKILL.md +39 -0
- package/skills/forge-build-clarify/SKILL.md +40 -0
- package/skills/forge-build-discover/SKILL.md +35 -0
- package/skills/forge-build-explore/SKILL.md +31 -0
- package/skills/forge-build-implement/SKILL.md +39 -0
- package/skills/forge-build-review/SKILL.md +51 -0
- package/skills/forge-build-summarise/SKILL.md +51 -0
- package/skills/forge-build-validate/SKILL.md +50 -0
- package/skills/forge-deploy/SKILL.md +52 -0
- package/skills/forge-design/SKILL.md +53 -0
- package/skills/forge-init/SKILL.md +83 -0
- package/skills/forge-maintain/SKILL.md +53 -0
- package/skills/forge-plan/SKILL.md +50 -0
- package/skills/forge-status/SKILL.md +59 -0
- 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.
|
|
30
|
-
3.
|
|
31
|
-
4.
|
|
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
|
-
##
|
|
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.
|
|
96
|
-
└──
|
|
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
|
-
|
|
112
|
-
|
|
113
|
-
|
|
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
|
-
|
|
116
|
-
|
|
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
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
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
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
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
|
-
|
|
130
|
-
└── Document accomplishments
|
|
131
|
-
└── Update state
|
|
116
|
+
Proceed to next group → repeat until all groups complete.
|
|
132
117
|
|
|
133
|
-
|
|
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:
|
|
@@ -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
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Forge AI - Audit methodology compliance and offer remediation"
|
|
3
|
+
argument-hint: "[--fix] [--only <category>] [--report-only]"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Forge Audit — Methodology Compliance
|
|
7
|
+
|
|
8
|
+
Scan the project for Forge AI methodology compliance and offer to remediate gaps.
|
|
9
|
+
|
|
10
|
+
## What It Checks
|
|
11
|
+
|
|
12
|
+
| # | Category | What |
|
|
13
|
+
|---|----------|------|
|
|
14
|
+
| 1 | **Forge Structure** | `.forge/` scaffolding, `docs/` directories, templates |
|
|
15
|
+
| 2 | **Planning Artifacts** | Phase 1 docs exist and contain required sections |
|
|
16
|
+
| 3 | **Design Artifacts** | task-list, design-decisions, and each task document |
|
|
17
|
+
| 4 | **Phase State** | `state.yaml` consistent with artifacts on disk |
|
|
18
|
+
| 5 | **Code Quality Tooling** | Linter, type checker, test framework, semgrep |
|
|
19
|
+
| 6 | **12-Factor Compliance** | Heuristic scan for config, deps, and log violations |
|
|
20
|
+
|
|
21
|
+
## Usage
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
forge audit
|
|
25
|
+
forge audit --fix
|
|
26
|
+
forge audit --only planning
|
|
27
|
+
forge audit --report-only
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Remediation Routing
|
|
31
|
+
|
|
32
|
+
| Gap | Route |
|
|
33
|
+
|-----|-------|
|
|
34
|
+
| No Forge structure | `forge init` |
|
|
35
|
+
| Missing planning docs | `forge 1:plan` |
|
|
36
|
+
| Missing/incomplete design docs | `forge 2:design` |
|
|
37
|
+
| Task frontmatter gaps | Auto-fix with `--fix` |
|
|
38
|
+
| State inconsistency | `forge status` |
|
|
39
|
+
| Missing quality tooling | Installation instructions |
|
|
40
|
+
| 12-factor violations | Flagged for manual review |
|
|
41
|
+
|
|
42
|
+
## Flags
|
|
43
|
+
|
|
44
|
+
- `--fix` — Auto-apply safe remediations
|
|
45
|
+
- `--only {category}` — Run one check: `structure`, `planning`, `design`, `state`, `quality`, `12factor`
|
|
46
|
+
- `--report-only` — Write report without interactive remediation
|
|
47
|
+
|
|
48
|
+
## Output
|
|
49
|
+
|
|
50
|
+
Report written to: `docs/audit/forge-audit-{YYYY-MM-DD}.md`
|
|
51
|
+
|
|
52
|
+
## Prerequisites
|
|
53
|
+
|
|
54
|
+
None — can be run on any project, with or without existing Forge structure.
|
package/dist/index.d.ts.map
CHANGED
|
@@ -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,
|
|
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
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
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
|
-
|
|
108
|
-
|
|
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":"AACA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCtB,CAAC;AAEF,SAAS,aAAa;IACpB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB;IACvC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;IACxD,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzB,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,SAAiB;IACtC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,SAAS,KAAK,CAAC,CAAC;IAC/D,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzB,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe;IACvC,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC3C,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;YACpB,OAAO,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAW,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IAClD,MAAM,mBAAmB,GAAG,KAAK,
|
|
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.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: forge-build-approach
|
|
3
|
+
description: Forge Feature Dev - Sub-phase 4: Design/validate approach
|
|
4
|
+
license: MIT
|
|
5
|
+
compatibility: opencode
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Forge AI: Phase 3 - Sub-phase 4: Approach
|
|
9
|
+
|
|
10
|
+
Invoke the `@forge-approach` subagent for Feature Dev sub-phase 4.
|
|
11
|
+
|
|
12
|
+
## Purpose
|
|
13
|
+
|
|
14
|
+
Design (greenfield) or validate (brownfield) the implementation approach.
|
|
15
|
+
|
|
16
|
+
## Approach Activities
|
|
17
|
+
|
|
18
|
+
### Brownfield Mode
|
|
19
|
+
- Validate existing approach against current code
|
|
20
|
+
- Check for changes in dependencies or patterns
|
|
21
|
+
- Flag any deviations from original design
|
|
22
|
+
|
|
23
|
+
### Greenfield Mode
|
|
24
|
+
- Identify components needed
|
|
25
|
+
- Define interfaces between components
|
|
26
|
+
- Choose appropriate patterns (SOLID principles)
|
|
27
|
+
- Plan file structure and module boundaries
|
|
28
|
+
|
|
29
|
+
## Documentation
|
|
30
|
+
|
|
31
|
+
Document in task document:
|
|
32
|
+
- Implementation plan with steps
|
|
33
|
+
- Micro-decisions with rationale
|
|
34
|
+
- File structure
|
|
35
|
+
- SOLID compliance approach
|
|
36
|
+
|
|
37
|
+
## Next Steps
|
|
38
|
+
|
|
39
|
+
After approach confirmed by user, proceed to `/forge-build-implement`.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: forge-build-clarify
|
|
3
|
+
description: Forge Feature Dev - Sub-phase 3: Resolve ambiguities
|
|
4
|
+
license: MIT
|
|
5
|
+
compatibility: opencode
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Forge AI: Phase 3 - Sub-phase 3: Clarify
|
|
9
|
+
|
|
10
|
+
Invoke the `@forge-clarify` subagent for Feature Dev sub-phase 3.
|
|
11
|
+
|
|
12
|
+
## Purpose
|
|
13
|
+
|
|
14
|
+
Fill in gaps and resolve ambiguities. Output updates the task document.
|
|
15
|
+
|
|
16
|
+
## Clarify Activities
|
|
17
|
+
|
|
18
|
+
- Review findings from discover and explore phases
|
|
19
|
+
- Identify gaps in requirements
|
|
20
|
+
- Form questions for user
|
|
21
|
+
- Update acceptance criteria
|
|
22
|
+
|
|
23
|
+
## Question Format
|
|
24
|
+
|
|
25
|
+
Present questions clearly:
|
|
26
|
+
```
|
|
27
|
+
**Q1:** [Specific question]
|
|
28
|
+
**Context:** [Why this matters]
|
|
29
|
+
**Options:** [If multiple solutions exist]
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Prioritization
|
|
33
|
+
|
|
34
|
+
- **Must** - Blockers for implementation
|
|
35
|
+
- **Should** - Important for optimal solution
|
|
36
|
+
- **Could** - Nice to have clarification
|
|
37
|
+
|
|
38
|
+
## Next Steps
|
|
39
|
+
|
|
40
|
+
After clarify complete (all "Must" questions answered), proceed to `/forge-build-approach`.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: forge-build-discover
|
|
3
|
+
description: Forge Feature Dev - Sub-phase 1: Understand what needs to be built
|
|
4
|
+
license: MIT
|
|
5
|
+
compatibility: opencode
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Forge AI: Phase 3 - Sub-phase 1: Discover
|
|
9
|
+
|
|
10
|
+
Invoke the `@forge-discover` subagent for Feature Dev sub-phase 1.
|
|
11
|
+
|
|
12
|
+
## Purpose
|
|
13
|
+
|
|
14
|
+
Understand what needs to be built by orienting within existing context.
|
|
15
|
+
|
|
16
|
+
## Discover Activities
|
|
17
|
+
|
|
18
|
+
- Read existing task document (brownfield) or create new one (greenfield)
|
|
19
|
+
- Understand the problem, scope, and approach
|
|
20
|
+
- Identify what needs clarification
|
|
21
|
+
|
|
22
|
+
## Operating Modes
|
|
23
|
+
|
|
24
|
+
**Brownfield:** Task document exists with implementation detail
|
|
25
|
+
**Greenfield:** No task document or stub only
|
|
26
|
+
|
|
27
|
+
## Mode Detection
|
|
28
|
+
|
|
29
|
+
1. Check for task document in `docs/design/tasks/{task-slug}.md`
|
|
30
|
+
2. Propose mode with reasoning
|
|
31
|
+
3. Wait for confirmation before proceeding
|
|
32
|
+
|
|
33
|
+
## Next Steps
|
|
34
|
+
|
|
35
|
+
After discover complete, proceed to `/forge-build-explore`.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: forge-build-explore
|
|
3
|
+
description: Forge Feature Dev - Sub-phase 2: Explore relevant existing code
|
|
4
|
+
license: MIT
|
|
5
|
+
compatibility: opencode
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Forge AI: Phase 3 - Sub-phase 2: Explore
|
|
9
|
+
|
|
10
|
+
Invoke the `@forge-explore` subagent for Feature Dev sub-phase 2.
|
|
11
|
+
|
|
12
|
+
## Purpose
|
|
13
|
+
|
|
14
|
+
Understand relevant existing code, patterns, and conventions.
|
|
15
|
+
|
|
16
|
+
## Explore Activities
|
|
17
|
+
|
|
18
|
+
- Read affected modules from task frontmatter
|
|
19
|
+
- Identify coding style and patterns
|
|
20
|
+
- Find related code and shared utilities
|
|
21
|
+
- Understand dependencies and integration points
|
|
22
|
+
|
|
23
|
+
## Context
|
|
24
|
+
|
|
25
|
+
Load from task document:
|
|
26
|
+
- `affected_modules` - directories to explore
|
|
27
|
+
- `dependencies` - related task documents
|
|
28
|
+
|
|
29
|
+
## Next Steps
|
|
30
|
+
|
|
31
|
+
After explore complete, proceed to `/forge-build-clarify`.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: forge-build-implement
|
|
3
|
+
description: Forge Feature Dev - Sub-phase 5: Build the feature
|
|
4
|
+
license: MIT
|
|
5
|
+
compatibility: opencode
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Forge AI: Phase 3 - Sub-phase 5: Implement
|
|
9
|
+
|
|
10
|
+
Invoke the `@forge-implement` subagent for Feature Dev sub-phase 5.
|
|
11
|
+
|
|
12
|
+
## Purpose
|
|
13
|
+
|
|
14
|
+
Build the feature following the validated approach.
|
|
15
|
+
|
|
16
|
+
## Implementation Order
|
|
17
|
+
|
|
18
|
+
1. Foundation (types, constants, utilities)
|
|
19
|
+
2. Core domain/business logic
|
|
20
|
+
3. Data layer (if applicable)
|
|
21
|
+
4. API layer (if applicable)
|
|
22
|
+
5. Integration points
|
|
23
|
+
6. Tests
|
|
24
|
+
|
|
25
|
+
## Quality Checks
|
|
26
|
+
|
|
27
|
+
After implementation:
|
|
28
|
+
- Run linting
|
|
29
|
+
- Run type checking
|
|
30
|
+
- Write tests
|
|
31
|
+
|
|
32
|
+
## Flags
|
|
33
|
+
|
|
34
|
+
- `--task {slug}` - Specific task to implement
|
|
35
|
+
- `--model {tier}` - Override model tier
|
|
36
|
+
|
|
37
|
+
## Next Steps
|
|
38
|
+
|
|
39
|
+
After implementation complete, proceed to `/forge-build-review`.
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: forge-build-review
|
|
3
|
+
description: Forge Feature Dev - Sub-phase 6: Quality review
|
|
4
|
+
license: MIT
|
|
5
|
+
compatibility: opencode
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Forge AI: Phase 3 - Sub-phase 6: Review
|
|
9
|
+
|
|
10
|
+
Invoke the `@forge-review` subagent for Feature Dev sub-phase 6.
|
|
11
|
+
|
|
12
|
+
## Purpose
|
|
13
|
+
|
|
14
|
+
Quality review using automated checks followed by AI code review.
|
|
15
|
+
|
|
16
|
+
## Quality Gates
|
|
17
|
+
|
|
18
|
+
Run these automated checks:
|
|
19
|
+
1. **Lint Check** - Code style
|
|
20
|
+
2. **Type Check** - Type safety
|
|
21
|
+
3. **Security Audit** - Vulnerabilities
|
|
22
|
+
4. **Tests** - All must pass
|
|
23
|
+
5. **Coverage** - Must meet threshold (default 80%)
|
|
24
|
+
|
|
25
|
+
## AI Code Review
|
|
26
|
+
|
|
27
|
+
After automated checks pass, review for:
|
|
28
|
+
- SOLID principles compliance
|
|
29
|
+
- Design pattern usage
|
|
30
|
+
- Error handling
|
|
31
|
+
- Security
|
|
32
|
+
- Performance
|
|
33
|
+
- Maintainability
|
|
34
|
+
|
|
35
|
+
## Issue Severity
|
|
36
|
+
|
|
37
|
+
| Severity | Action |
|
|
38
|
+
|----------|--------|
|
|
39
|
+
| Critical | Must fix before proceeding |
|
|
40
|
+
| High | Should fix |
|
|
41
|
+
| Medium | Consider fixing |
|
|
42
|
+
| Low | Nice to have |
|
|
43
|
+
|
|
44
|
+
## Rework Decision
|
|
45
|
+
|
|
46
|
+
- **Minor issues** → Loop to `/forge-build-implement`
|
|
47
|
+
- **Approach issues** → Loop to `/forge-build-approach`
|
|
48
|
+
|
|
49
|
+
## Next Steps
|
|
50
|
+
|
|
51
|
+
After review passes, proceed to `/forge-build-validate`.
|