opencode-onboard 0.0.5 → 0.1.1
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/README.md +44 -33
- package/content/{.opencode → .agents}/agents/.bootstrap/AGENTS.template.md +7 -7
- package/content/{.opencode → .agents}/agents/back-engineer.md +18 -17
- package/content/{.opencode → .agents}/agents/devops-manager.md +22 -29
- package/content/{.opencode → .agents}/agents/front-engineer.md +18 -18
- package/content/{.opencode → .agents}/agents/infra-engineer.md +19 -18
- package/content/{.opencode → .agents}/agents/quality-engineer.md +17 -18
- package/content/{.opencode → .agents}/agents/security-auditor.md +19 -20
- package/content/.opencode/package-lock.json +3 -3
- package/content/AGENTS.md +1 -1
- package/package.json +1 -1
- package/src/index.js +105 -67
- package/src/steps/__tests__/clean-ai-files.test.js +44 -30
- package/src/steps/check-platform.js +2 -2
- package/src/steps/check-rtk.js +1 -1
- package/src/steps/choose-models.js +141 -0
- package/src/steps/choose-skills-provider.js +51 -32
- package/src/steps/clean-ai-files.js +9 -9
- package/src/steps/copy-content.js +1 -1
- package/src/steps/install-browser.js +19 -27
- package/src/utils/__tests__/copy.test.js +0 -22
- package/src/utils/__tests__/exec.test.js +6 -4
- package/src/utils/copy.js +1 -1
- package/src/utils/exec.js +161 -84
- package/src/utils/models-cache.js +101 -0
- package/content/.opencode/agents/.bootstrap/CUSTOM-AGENT.template.md +0 -24
- package/content/.opencode/commands/.gitkeep +0 -0
- package/src/presets/skills-providers.json +0 -14
- package/src/steps/__tests__/choose-team.test.js +0 -105
- /package/content/{.opencode → .agents}/skills/browser-automation/SKILL.md +0 -0
- /package/content/{.opencode → .agents}/skills/ob-userstory-az/SKILL.md +0 -0
- /package/content/{.opencode → .agents}/skills/ob-userstory-gh/SKILL.md +0 -0
package/README.md
CHANGED
|
@@ -1,13 +1,8 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
BANNER
|
|
3
|
-
Replace the line below with your actual banner image once ready.
|
|
4
|
-
Recommended size: 1280×640px, dark background.
|
|
5
|
-
<img src="./assets/banner.png" alt="opencode-onboard banner" width="100%" />
|
|
6
|
-
-->
|
|
7
|
-
|
|
8
1
|
<div align="center">
|
|
9
2
|
|
|
10
|
-
|
|
3
|
+
<img src="https://raw.githubusercontent.com/CKGrafico/opencode-onboard/refs/heads/main/logo.png" alt="opencode-onboard" width="160" />
|
|
4
|
+
|
|
5
|
+
# 🧰 opencode-onboard
|
|
11
6
|
|
|
12
7
|
**One command to prepare any codebase for AI agent workflows.**
|
|
13
8
|
|
|
@@ -20,16 +15,15 @@ Works with [OpenCode](https://opencode.ai), [OpenCode Ensemble](https://github.c
|
|
|
20
15
|
|
|
21
16
|
</div>
|
|
22
17
|
|
|
23
|
-
---
|
|
24
|
-
|
|
25
18
|
## What is this?
|
|
26
19
|
|
|
27
20
|
Most codebases have no `AGENTS.md`, no architecture docs agents can read, and no defined workflow for picking up tasks. Agents end up improvising, and that produces inconsistent, brittle results.
|
|
28
21
|
|
|
29
|
-
**opencode-onboard** fixes that in a single interactive run. It installs a universal agent team
|
|
30
|
-
|
|
31
|
-
> **Note:** This is an independent community tool, not built by or affiliated with the OpenCode team.
|
|
22
|
+
**opencode-onboard** fixes that in a single interactive run. It installs a universal agent team, the skills they need, picks your AI models, and configures OpenCode, platform-aware, non-destructive, and ready the moment it finishes.
|
|
32
23
|
|
|
24
|
+
<div align="center">
|
|
25
|
+
<img src="https://raw.githubusercontent.com/CKGrafico/opencode-onboard/refs/heads/main/demo.gif" alt="opencode-onboard demo" width="700" />
|
|
26
|
+
</div>
|
|
33
27
|
---
|
|
34
28
|
|
|
35
29
|
## Quick start
|
|
@@ -44,19 +38,20 @@ Requires **Node.js 18+**.
|
|
|
44
38
|
|
|
45
39
|
## How it works
|
|
46
40
|
|
|
47
|
-
The CLI
|
|
41
|
+
The CLI clears the screen, shows a welcome banner, and walks you through 10 steps. The screen always shows the last 2 completed steps + the current one so you always know where you are.
|
|
48
42
|
|
|
49
43
|
| Step | What happens |
|
|
50
44
|
|------|-------------|
|
|
51
|
-
| **1. Environment check** | Verifies Node.js ≥ 18 and
|
|
52
|
-
| **2. Clean AI files** | Detects existing `AGENTS.md`, `.cursorrules`, `CLAUDE.md`, etc. and
|
|
45
|
+
| **1. Environment check** | Verifies Node.js ≥ 18 and pnpm are available |
|
|
46
|
+
| **2. Clean AI files** | Detects existing `AGENTS.md`, `.cursorrules`, `CLAUDE.md`, `.agents/` etc. and removes them, preserves your `.agents/skills/` |
|
|
53
47
|
| **3. Choose platform** | GitHub or Azure DevOps |
|
|
54
|
-
| **4.
|
|
55
|
-
| **5.
|
|
56
|
-
| **6. Init OpenSpec** | Runs `npx @fission-ai/openspec init` for structured change management |
|
|
57
|
-
| **7. Install
|
|
58
|
-
| **8.
|
|
59
|
-
| **9.
|
|
48
|
+
| **4. Check platform CLI** | Verifies `gh` (GitHub) or `az` + `azure-devops` (Azure DevOps) |
|
|
49
|
+
| **5. Copy scaffolding** | Drops agents, skills, and bootstrap docs into your project |
|
|
50
|
+
| **6. Init OpenSpec** | Runs `npx @fission-ai/openspec init` silently for structured change management |
|
|
51
|
+
| **7. Install skills** | Installs built-in `ob-` skills + optional additional skills provider |
|
|
52
|
+
| **8. Choose models** | Fetches live model list from [models.dev](https://models.dev), lets you pick plan / build / fast models with cost indicators and canonical pricing |
|
|
53
|
+
| **9. Check RTK** | Verifies `rtk` is on PATH |
|
|
54
|
+
| **10. Install browser plugin** | Installs `@different-ai/opencode-browser` globally for agent browser automation |
|
|
60
55
|
|
|
61
56
|
When it finishes, open OpenCode in your project and type:
|
|
62
57
|
|
|
@@ -85,20 +80,33 @@ quality-engineer unit, integration, e2e tests across all layers
|
|
|
85
80
|
security-auditor vulnerability audit, secrets, auth gaps
|
|
86
81
|
```
|
|
87
82
|
|
|
83
|
+
Each agent has a color in the OpenCode UI. Builder agents (`front-engineer`, `back-engineer`, `infra-engineer`) run at `temperature: 0.2` for deterministic output. `security-auditor` is read-only, edit is denied.
|
|
84
|
+
|
|
88
85
|
### Skills, platform knowledge
|
|
89
86
|
|
|
90
|
-
Skills define *what to know*. They
|
|
87
|
+
Skills define *what to know*. They provide the tech and platform-specific knowledge agents need. Agents detect and load relevant skills automatically, **you never tell an agent which skill to use**.
|
|
91
88
|
|
|
92
|
-
|
|
89
|
+
Built-in skills (`ob-` prefix) shipped with opencode-onboard:
|
|
93
90
|
|
|
94
91
|
| Skill | Purpose |
|
|
95
92
|
|-------|---------|
|
|
96
93
|
| `ob-userstory-gh` | Parse a GitHub Issue URL into a structured work item |
|
|
97
94
|
| `ob-userstory-az` | Parse an Azure DevOps work item URL |
|
|
98
|
-
| `
|
|
99
|
-
|
|
95
|
+
| `browser-automation` | Browser control via `@different-ai/opencode-browser` |
|
|
96
|
+
|
|
97
|
+
Skills live in `.agents/skills/`. Any `SKILL.md` file in a subdirectory is automatically discoverable, write your own and agents will pick them up.
|
|
98
|
+
|
|
99
|
+
### Models, plan / build / fast
|
|
100
|
+
|
|
101
|
+
During onboarding you pick three models:
|
|
102
|
+
|
|
103
|
+
| Role | Used by | Pick |
|
|
104
|
+
|------|---------|------|
|
|
105
|
+
| **plan** | Main OpenCode session | Something capable with strong reasoning |
|
|
106
|
+
| **build** | All builder agents | Something capable for implementation |
|
|
107
|
+
| **fast** | `devops-manager` | Something fast and cheap |
|
|
100
108
|
|
|
101
|
-
|
|
109
|
+
Models are fetched live from [models.dev](https://models.dev) (3000+ models, cached weekly). Cost tiers `[$]` `[$$]` `[$$$]` always reflect the canonical provider price, so `github-copilot/claude-opus-4.7` shows `[$$]` not `[$]`.
|
|
102
110
|
|
|
103
111
|
---
|
|
104
112
|
|
|
@@ -133,10 +141,12 @@ Each agent runs in its own isolated git worktree via [OpenCode Ensemble](https:/
|
|
|
133
141
|
|
|
134
142
|
```
|
|
135
143
|
your-project/
|
|
136
|
-
├── AGENTS.md
|
|
137
|
-
├── ARCHITECTURE.md
|
|
138
|
-
├── DESIGN.md
|
|
139
|
-
|
|
144
|
+
├── AGENTS.md ← bootstrap mode, replaced after first "init"
|
|
145
|
+
├── ARCHITECTURE.md ← prompt for agents to fill in from your codebase
|
|
146
|
+
├── DESIGN.md ← prompt for agents to fill in from your codebase
|
|
147
|
+
├── .opencode/
|
|
148
|
+
│ └── opencode.json ← plan model + plugins configured
|
|
149
|
+
└── .agents/
|
|
140
150
|
├── agents/
|
|
141
151
|
│ ├── devops-manager.md
|
|
142
152
|
│ ├── front-engineer.md
|
|
@@ -145,8 +155,9 @@ your-project/
|
|
|
145
155
|
│ ├── quality-engineer.md
|
|
146
156
|
│ └── security-auditor.md
|
|
147
157
|
└── skills/
|
|
148
|
-
├──
|
|
149
|
-
|
|
158
|
+
├── browser-automation/
|
|
159
|
+
├── ob-userstory-gh/ ← or -az, depending on platform
|
|
160
|
+
└── ob-userstory-az/
|
|
150
161
|
```
|
|
151
162
|
|
|
152
163
|
---
|
|
@@ -133,18 +133,18 @@ All agents are universal, no project-specific knowledge. Platform and tech knowl
|
|
|
133
133
|
|
|
134
134
|
| Agent | File | Role |
|
|
135
135
|
|-------|------|------|
|
|
136
|
-
| `devops-manager` | .
|
|
137
|
-
| `front-engineer` | .
|
|
138
|
-
| `back-engineer` | .
|
|
139
|
-
| `infra-engineer` | .
|
|
140
|
-
| `quality-engineer` | .
|
|
141
|
-
| `security-auditor` | .
|
|
136
|
+
| `devops-manager` | .agents/agents/devops-manager.md | Reads work items, creates PRs, handles review feedback |
|
|
137
|
+
| `front-engineer` | .agents/agents/front-engineer.md | Web, mobile, UI implementation |
|
|
138
|
+
| `back-engineer` | .agents/agents/back-engineer.md | APIs, services, data, AI implementation |
|
|
139
|
+
| `infra-engineer` | .agents/agents/infra-engineer.md | Terraform, pipelines, cloud infrastructure |
|
|
140
|
+
| `quality-engineer` | .agents/agents/quality-engineer.md | Unit, integration, e2e tests across all layers |
|
|
141
|
+
| `security-auditor` | .agents/agents/security-auditor.md | Vulnerability audit, secrets, auth gaps |
|
|
142
142
|
|
|
143
143
|
## Skills
|
|
144
144
|
|
|
145
145
|
Skills provide platform and tech-specific knowledge. Agents detect and load them automatically, the user never specifies which skill to use.
|
|
146
146
|
|
|
147
|
-
Skills are located in `.
|
|
147
|
+
Skills are located in `.agents/skills/`. Each skill has a `SKILL.md` with a description the agent reads to determine relevance.
|
|
148
148
|
|
|
149
149
|
| Skill | Purpose |
|
|
150
150
|
|-------|---------|
|
|
@@ -1,15 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
description: Backend engineer. Implements APIs, services, data models, business logic, AI integrations. Anything that is not UI. Receives tasks from lead, implements, reports back.
|
|
3
|
+
mode: subagent
|
|
4
|
+
color: #68A063
|
|
5
|
+
temperature: 0.2
|
|
6
|
+
permission:
|
|
7
|
+
edit: allow
|
|
8
|
+
bash: allow
|
|
9
|
+
read: allow
|
|
10
|
+
glob: allow
|
|
11
|
+
grep: allow
|
|
12
|
+
---
|
|
2
13
|
|
|
3
|
-
|
|
14
|
+
# Back Engineer
|
|
4
15
|
|
|
5
|
-
|
|
6
|
-
name: back-engineer
|
|
7
|
-
mode: subagent
|
|
8
|
-
model: build
|
|
9
|
-
description: |
|
|
10
|
-
Backend engineer. Implements APIs, services, data models, business logic, AI integrations.
|
|
11
|
-
Anything that is not UI. Receives tasks from lead, implements, reports back.
|
|
12
|
-
```
|
|
16
|
+
Backend specialist, APIs, monoliths, data, AI, anything not UI. Spawned by the lead agent via opencode-ensemble.
|
|
13
17
|
|
|
14
18
|
## Domain
|
|
15
19
|
|
|
@@ -27,23 +31,20 @@ If `rtk` is not available, report it as a blocker. Do not run commands without i
|
|
|
27
31
|
|
|
28
32
|
## Skills, Auto-Detection
|
|
29
33
|
|
|
30
|
-
Skills are located in `.
|
|
34
|
+
Skills are located in `.agents/skills/`. Detect and use relevant skills automatically, the user will never tell you which skill to use.
|
|
31
35
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
2. Scan `.opencode/skills/` for available skills
|
|
36
|
+
1. Read the task and identify domain and platform
|
|
37
|
+
2. Scan `.agents/skills/` for available skills
|
|
35
38
|
3. Read each `SKILL.md` description to assess relevance
|
|
36
39
|
4. Load and follow any skill that applies, even partial match warrants loading
|
|
37
40
|
|
|
38
|
-
|
|
41
|
+
Rules:
|
|
39
42
|
- Never implement directly if a skill applies
|
|
40
43
|
- Follow skill instructions exactly, do not partially apply them
|
|
41
|
-
- A skill that is 50% relevant still takes priority over improvising
|
|
42
44
|
- If two skills apply, follow both, resolve conflicts by asking the lead
|
|
43
45
|
|
|
44
46
|
## Responsibilities
|
|
45
47
|
|
|
46
|
-
Implement all backend tasks assigned by the lead agent:
|
|
47
48
|
- API endpoints and controllers
|
|
48
49
|
- Data models and migrations
|
|
49
50
|
- Business logic and domain services
|
|
@@ -1,20 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Process agent. Reads work items and user stories at pipeline start. Creates PRs, posts screenshots, responds to review comments at pipeline end. Bridges the work tracker and the repository. Platform knowledge comes from skills.
|
|
3
|
+
mode: subagent
|
|
4
|
+
color: primary
|
|
5
|
+
permission:
|
|
6
|
+
edit: allow
|
|
7
|
+
bash: allow
|
|
8
|
+
read: allow
|
|
9
|
+
glob: allow
|
|
10
|
+
grep: allow
|
|
11
|
+
webfetch: allow
|
|
12
|
+
---
|
|
13
|
+
|
|
1
14
|
# DevOps Manager
|
|
2
15
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
```
|
|
6
|
-
name: devops-manager
|
|
7
|
-
mode: subagent
|
|
8
|
-
model: build
|
|
9
|
-
description: |
|
|
10
|
-
Process agent. Reads work items and user stories at pipeline start.
|
|
11
|
-
Creates PRs, posts screenshots, responds to review comments at pipeline end.
|
|
12
|
-
Bridges the work tracker and the repository. Platform knowledge comes from skills.
|
|
13
|
-
```
|
|
16
|
+
Process agent, reads work items, creates PRs, handles review feedback. Bookends the pipeline. Spawned by the lead agent via opencode-ensemble.
|
|
14
17
|
|
|
15
18
|
## Domain
|
|
16
19
|
|
|
17
|
-
Work item and issue reading, PR creation, PR comment reading and classification, PR updates, screenshot capture of local running app, branch verification. Does not write application code. Platform knowledge (GitHub, Azure DevOps,
|
|
20
|
+
Work item and issue reading, PR creation, PR comment reading and classification, PR updates, screenshot capture of local running app, branch verification. Does not write application code. Platform knowledge (GitHub, Azure DevOps, etc.) comes entirely from loaded skills.
|
|
18
21
|
|
|
19
22
|
## RTK, MANDATORY
|
|
20
23
|
|
|
@@ -28,21 +31,15 @@ If `rtk` is not available, report it as a blocker. Do not run commands without i
|
|
|
28
31
|
|
|
29
32
|
## Skills, Auto-Detection
|
|
30
33
|
|
|
31
|
-
Skills are located in `.
|
|
32
|
-
|
|
33
|
-
**How to detect:**
|
|
34
|
-
1. Read the task description and identify the platform and action needed
|
|
35
|
-
2. Scan `.opencode/skills/` for available skills
|
|
36
|
-
3. Read each `SKILL.md` description to assess relevance
|
|
37
|
-
4. Load and follow any skill that applies, even partial match warrants loading
|
|
34
|
+
Skills are located in `.agents/skills/`. Detect and use relevant skills automatically, the user will never tell you which skill to use.
|
|
38
35
|
|
|
39
|
-
|
|
36
|
+
Examples of intent → skill mapping:
|
|
40
37
|
- URL contains `dev.azure.com` or `visualstudio.com` → look for `ob-userstory-az` or `ob-pullrequest-az`
|
|
41
38
|
- URL contains `github.com` → look for `ob-userstory-gh` or `ob-pullrequest-gh`
|
|
42
39
|
- "create PR" or "ship" → look for a pullrequest skill matching the platform
|
|
43
40
|
- "PR has comments" or "review feedback" → look for a pullrequest observer skill
|
|
44
41
|
|
|
45
|
-
|
|
42
|
+
Rules:
|
|
46
43
|
- Never interact with a platform without loading the matching skill first
|
|
47
44
|
- Follow skill instructions exactly, do not partially apply them
|
|
48
45
|
- If no skill exists for the platform, report it as a blocker rather than improvising
|
|
@@ -50,28 +47,24 @@ Skills are located in `.opencode/skills/`. You must detect and use relevant skil
|
|
|
50
47
|
## Two Modes
|
|
51
48
|
|
|
52
49
|
### Read Mode (pipeline start)
|
|
53
|
-
Triggered when the lead provides a work item URL or says "read the issue":
|
|
54
50
|
1. Identify the platform from the URL
|
|
55
51
|
2. Load the matching userstory skill
|
|
56
|
-
3.
|
|
57
|
-
4. Output
|
|
52
|
+
3. Fetch and parse the work item
|
|
53
|
+
4. Output structured summary for the lead
|
|
58
54
|
|
|
59
55
|
### Ship Mode (pipeline end)
|
|
60
|
-
Triggered when the lead says "create PR" or "ship":
|
|
61
56
|
1. Verify all changes are on a feature branch, never `main`
|
|
62
57
|
2. Load the matching pullrequest skill
|
|
63
|
-
3. Capture screenshots of
|
|
58
|
+
3. Capture screenshots of local running app if UI changes exist
|
|
64
59
|
4. Commit and push the feature branch
|
|
65
60
|
5. Create the PR following the skill instructions
|
|
66
61
|
6. Post PR comment with screenshots and change summary
|
|
67
62
|
7. Report PR URL to the lead
|
|
68
63
|
|
|
69
64
|
### Feedback Mode (PR review loop)
|
|
70
|
-
Triggered when the lead says "PR has comments" or "handle review feedback":
|
|
71
65
|
1. Load the matching pullrequest observer skill
|
|
72
66
|
2. Read and classify all PR comments
|
|
73
67
|
3. Report classified feedback to the lead, do not implement fixes
|
|
74
|
-
4. The lead will spawn engineers for code changes
|
|
75
68
|
|
|
76
69
|
## Constraints
|
|
77
70
|
|
|
@@ -91,7 +84,7 @@ Triggered when the lead says "PR has comments" or "handle review feedback":
|
|
|
91
84
|
**Platform:** GitHub | Azure DevOps
|
|
92
85
|
**Item:** <id>, <title>
|
|
93
86
|
**Type:** feature | bug | chore
|
|
94
|
-
**Summary:** <2-3
|
|
87
|
+
**Summary:** <2-3 sentences>
|
|
95
88
|
**Acceptance criteria:** <list>
|
|
96
89
|
```
|
|
97
90
|
|
|
@@ -1,16 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
description: UI engineer. Implements web, mobile, and visual interfaces. Components, state, routing, styling, accessibility, responsive design. Receives tasks from lead, implements, reports back.
|
|
3
|
+
mode: subagent
|
|
4
|
+
color: #61DAFB
|
|
5
|
+
temperature: 0.2
|
|
6
|
+
permission:
|
|
7
|
+
edit: allow
|
|
8
|
+
bash: allow
|
|
9
|
+
read: allow
|
|
10
|
+
glob: allow
|
|
11
|
+
grep: allow
|
|
12
|
+
---
|
|
2
13
|
|
|
3
|
-
|
|
14
|
+
# Front Engineer
|
|
4
15
|
|
|
5
|
-
|
|
6
|
-
name: front-engineer
|
|
7
|
-
mode: subagent
|
|
8
|
-
model: build
|
|
9
|
-
description: |
|
|
10
|
-
UI engineer. Implements web, mobile, and visual interfaces.
|
|
11
|
-
Components, state, routing, styling, accessibility, responsive design.
|
|
12
|
-
Receives tasks from lead, implements, reports back.
|
|
13
|
-
```
|
|
16
|
+
UI specialist, web, mobile, and anything visual. Spawned by the lead agent via opencode-ensemble.
|
|
14
17
|
|
|
15
18
|
## Domain
|
|
16
19
|
|
|
@@ -28,23 +31,20 @@ If `rtk` is not available, report it as a blocker. Do not run commands without i
|
|
|
28
31
|
|
|
29
32
|
## Skills, Auto-Detection
|
|
30
33
|
|
|
31
|
-
Skills are located in `.
|
|
34
|
+
Skills are located in `.agents/skills/`. Detect and use relevant skills automatically, the user will never tell you which skill to use.
|
|
32
35
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
2. Scan `.opencode/skills/` for available skills
|
|
36
|
+
1. Read the task and identify domain and platform
|
|
37
|
+
2. Scan `.agents/skills/` for available skills
|
|
36
38
|
3. Read each `SKILL.md` description to assess relevance
|
|
37
39
|
4. Load and follow any skill that applies, even partial match warrants loading
|
|
38
40
|
|
|
39
|
-
|
|
41
|
+
Rules:
|
|
40
42
|
- Never implement directly if a skill applies
|
|
41
43
|
- Follow skill instructions exactly, do not partially apply them
|
|
42
|
-
- A skill that is 50% relevant still takes priority over improvising
|
|
43
44
|
- If two skills apply, follow both, resolve conflicts by asking the lead
|
|
44
45
|
|
|
45
46
|
## Responsibilities
|
|
46
47
|
|
|
47
|
-
Implement all UI tasks assigned by the lead agent:
|
|
48
48
|
- Components, pages, screens
|
|
49
49
|
- State and data binding
|
|
50
50
|
- Routing and navigation
|
|
@@ -1,19 +1,23 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
description: Infrastructure engineer. Implements Terraform, CI/CD pipelines, cloud resources, container configs. Receives tasks from lead, implements infra changes, reports back.
|
|
3
|
+
mode: subagent
|
|
4
|
+
color: #E97B00
|
|
5
|
+
temperature: 0.2
|
|
6
|
+
permission:
|
|
7
|
+
edit: allow
|
|
8
|
+
bash: allow
|
|
9
|
+
read: allow
|
|
10
|
+
glob: allow
|
|
11
|
+
grep: allow
|
|
12
|
+
---
|
|
2
13
|
|
|
3
|
-
|
|
14
|
+
# Infra Engineer
|
|
4
15
|
|
|
5
|
-
|
|
6
|
-
name: infra-engineer
|
|
7
|
-
mode: subagent
|
|
8
|
-
model: build
|
|
9
|
-
description: |
|
|
10
|
-
Infrastructure engineer. Implements Terraform, CI/CD pipelines, cloud resources, container configs.
|
|
11
|
-
Receives tasks from lead, implements infra changes, reports back.
|
|
12
|
-
```
|
|
16
|
+
Infrastructure specialist, Terraform, pipelines, cloud, CI/CD. Spawned by the lead agent via opencode-ensemble.
|
|
13
17
|
|
|
14
18
|
## Domain
|
|
15
19
|
|
|
16
|
-
Terraform and IaC, CI/CD pipelines (GitHub Actions, Azure Pipelines, etc.), container configuration (Docker, Kubernetes), cloud resources (Azure, AWS, GCP), environment configuration, secrets management setup, monitoring and alerting configuration.
|
|
20
|
+
Terraform and IaC, CI/CD pipelines (GitHub Actions, Azure Pipelines, etc.), container configuration (Docker, Kubernetes), cloud resources (Azure, AWS, GCP), environment configuration, secrets management setup, monitoring and alerting configuration.
|
|
17
21
|
|
|
18
22
|
## RTK, MANDATORY
|
|
19
23
|
|
|
@@ -27,23 +31,20 @@ If `rtk` is not available, report it as a blocker. Do not run commands without i
|
|
|
27
31
|
|
|
28
32
|
## Skills, Auto-Detection
|
|
29
33
|
|
|
30
|
-
Skills are located in `.
|
|
34
|
+
Skills are located in `.agents/skills/`. Detect and use relevant skills automatically, the user will never tell you which skill to use.
|
|
31
35
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
2. Scan `.opencode/skills/` for available skills
|
|
36
|
+
1. Read the task and identify domain and platform
|
|
37
|
+
2. Scan `.agents/skills/` for available skills
|
|
35
38
|
3. Read each `SKILL.md` description to assess relevance
|
|
36
39
|
4. Load and follow any skill that applies, even partial match warrants loading
|
|
37
40
|
|
|
38
|
-
|
|
41
|
+
Rules:
|
|
39
42
|
- Never implement directly if a skill applies
|
|
40
43
|
- Follow skill instructions exactly, do not partially apply them
|
|
41
|
-
- A skill that is 50% relevant still takes priority over improvising
|
|
42
44
|
- If two skills apply, follow both, resolve conflicts by asking the lead
|
|
43
45
|
|
|
44
46
|
## Responsibilities
|
|
45
47
|
|
|
46
|
-
Implement all infrastructure tasks assigned by the lead agent:
|
|
47
48
|
- Terraform modules and resources
|
|
48
49
|
- CI/CD pipeline definitions
|
|
49
50
|
- Docker and container configs
|
|
@@ -1,16 +1,18 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
description: Quality engineer. Writes and runs tests across the full stack. Unit, integration, e2e. Reviews code against acceptance criteria. Receives completed implementation, verifies it, reports findings.
|
|
3
|
+
mode: subagent
|
|
4
|
+
color: accent
|
|
5
|
+
permission:
|
|
6
|
+
edit: allow
|
|
7
|
+
bash: allow
|
|
8
|
+
read: allow
|
|
9
|
+
glob: allow
|
|
10
|
+
grep: allow
|
|
11
|
+
---
|
|
2
12
|
|
|
3
|
-
|
|
13
|
+
# Quality Engineer
|
|
4
14
|
|
|
5
|
-
|
|
6
|
-
name: quality-engineer
|
|
7
|
-
mode: subagent
|
|
8
|
-
model: build
|
|
9
|
-
description: |
|
|
10
|
-
Quality engineer. Writes and runs tests across the full stack.
|
|
11
|
-
Unit, integration, e2e. Reviews code against acceptance criteria.
|
|
12
|
-
Receives completed implementation, verifies it, reports findings.
|
|
13
|
-
```
|
|
15
|
+
Testing specialist, unit, integration, and e2e across front and back. Spawned by the lead agent via opencode-ensemble.
|
|
14
16
|
|
|
15
17
|
## Domain
|
|
16
18
|
|
|
@@ -29,23 +31,20 @@ If `rtk` is not available, report it as a blocker. Do not run commands without i
|
|
|
29
31
|
|
|
30
32
|
## Skills, Auto-Detection
|
|
31
33
|
|
|
32
|
-
Skills are located in `.
|
|
34
|
+
Skills are located in `.agents/skills/`. Detect and use relevant skills automatically, the user will never tell you which skill to use.
|
|
33
35
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
2. Scan `.opencode/skills/` for available skills
|
|
36
|
+
1. Read the task and identify domain and platform
|
|
37
|
+
2. Scan `.agents/skills/` for available skills
|
|
37
38
|
3. Read each `SKILL.md` description to assess relevance
|
|
38
39
|
4. Load and follow any skill that applies, even partial match warrants loading
|
|
39
40
|
|
|
40
|
-
|
|
41
|
+
Rules:
|
|
41
42
|
- Never implement directly if a skill applies
|
|
42
43
|
- Follow skill instructions exactly, do not partially apply them
|
|
43
|
-
- A skill that is 50% relevant still takes priority over improvising
|
|
44
44
|
- If two skills apply, follow both, resolve conflicts by asking the lead
|
|
45
45
|
|
|
46
46
|
## Responsibilities
|
|
47
47
|
|
|
48
|
-
Verify all work completed by front-engineer and back-engineer:
|
|
49
48
|
- Write missing unit and integration tests
|
|
50
49
|
- Write or run e2e tests for new flows
|
|
51
50
|
- Verify acceptance criteria from the spec are met
|
|
@@ -1,20 +1,22 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
description: Security engineer. Audits completed changes for vulnerabilities. OWASP Top 10, secrets exposure, auth gaps, injection risks. Receives completed implementation, audits it, reports findings.
|
|
3
|
+
mode: subagent
|
|
4
|
+
color: error
|
|
5
|
+
permission:
|
|
6
|
+
edit: deny
|
|
7
|
+
bash: allow
|
|
8
|
+
read: allow
|
|
9
|
+
glob: allow
|
|
10
|
+
grep: allow
|
|
11
|
+
---
|
|
2
12
|
|
|
3
|
-
|
|
13
|
+
# Security Auditor
|
|
4
14
|
|
|
5
|
-
|
|
6
|
-
name: security-auditor
|
|
7
|
-
mode: subagent
|
|
8
|
-
model: explore
|
|
9
|
-
description: |
|
|
10
|
-
Security engineer. Audits completed changes for vulnerabilities.
|
|
11
|
-
OWASP Top 10, secrets exposure, auth gaps, injection risks.
|
|
12
|
-
Receives completed implementation, audits it, reports findings.
|
|
13
|
-
```
|
|
15
|
+
Security specialist, finds vulnerabilities across all layers. Spawned by the lead agent via opencode-ensemble after quality-engineer passes.
|
|
14
16
|
|
|
15
17
|
## Domain
|
|
16
18
|
|
|
17
|
-
OWASP Top 10 vulnerabilities, secrets and credential exposure, authentication and authorization gaps, injection risks (SQL, XSS, command), insecure dependencies, misconfigured CORS or headers, data exposure in logs or responses
|
|
19
|
+
OWASP Top 10 vulnerabilities, secrets and credential exposure, authentication and authorization gaps, injection risks (SQL, XSS, command), insecure dependencies, misconfigured CORS or headers, data exposure in logs or responses. Works across all layers, UI, backend, infra.
|
|
18
20
|
|
|
19
21
|
## RTK, MANDATORY
|
|
20
22
|
|
|
@@ -27,23 +29,20 @@ If `rtk` is not available, report it as a blocker. Do not run commands without i
|
|
|
27
29
|
|
|
28
30
|
## Skills, Auto-Detection
|
|
29
31
|
|
|
30
|
-
Skills are located in `.
|
|
32
|
+
Skills are located in `.agents/skills/`. Detect and use relevant skills automatically, the user will never tell you which skill to use.
|
|
31
33
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
2. Scan `.opencode/skills/` for available skills
|
|
34
|
+
1. Read the task and identify domain and platform
|
|
35
|
+
2. Scan `.agents/skills/` for available skills
|
|
35
36
|
3. Read each `SKILL.md` description to assess relevance
|
|
36
37
|
4. Load and follow any skill that applies, even partial match warrants loading
|
|
37
38
|
|
|
38
|
-
|
|
39
|
+
Rules:
|
|
39
40
|
- Never implement directly if a skill applies
|
|
40
41
|
- Follow skill instructions exactly, do not partially apply them
|
|
41
|
-
- A skill that is 50% relevant still takes priority over improvising
|
|
42
42
|
- If two skills apply, follow both, resolve conflicts by asking the lead
|
|
43
43
|
|
|
44
44
|
## Responsibilities
|
|
45
45
|
|
|
46
|
-
Audit all changes after quality-engineer signs off:
|
|
47
46
|
- Scan for hardcoded secrets, API keys, passwords, tokens
|
|
48
47
|
- Check `.env` files are gitignored
|
|
49
48
|
- Verify no credentials in logs, URLs, or error responses
|
|
@@ -62,7 +61,7 @@ Audit all changes after quality-engineer signs off:
|
|
|
62
61
|
|
|
63
62
|
## Constraints
|
|
64
63
|
|
|
65
|
-
- Audit only,
|
|
64
|
+
- Audit only, `edit: deny` enforced
|
|
66
65
|
- Do not push to `main`
|
|
67
66
|
- Do not merge PRs, human-only
|
|
68
67
|
- Critical findings must block the PR, report to lead immediately
|
|
@@ -323,9 +323,9 @@
|
|
|
323
323
|
}
|
|
324
324
|
},
|
|
325
325
|
"node_modules/uuid": {
|
|
326
|
-
"version": "13.0.
|
|
327
|
-
"resolved": "https://registry.npmjs.org/uuid/-/uuid-13.0.
|
|
328
|
-
"integrity": "sha512-
|
|
326
|
+
"version": "13.0.1",
|
|
327
|
+
"resolved": "https://registry.npmjs.org/uuid/-/uuid-13.0.1.tgz",
|
|
328
|
+
"integrity": "sha512-9ezox2roIft6ExBVTVqibSd5dc5/47Sw/uY6b4SjQUT2TzQ0tltNquWA46y4xPQmdZYqvnio22SgWd41M86+jw==",
|
|
329
329
|
"funding": [
|
|
330
330
|
"https://github.com/sponsors/broofa",
|
|
331
331
|
"https://github.com/sponsors/ctavan"
|
package/content/AGENTS.md
CHANGED
|
@@ -61,7 +61,7 @@ The output must be a real, populated `ARCHITECTURE.md` covering all sections the
|
|
|
61
61
|
|
|
62
62
|
### Step 4, Rewrite this file
|
|
63
63
|
|
|
64
|
-
Replace the entire contents of `AGENTS.md` with the real agent guidance template located at `.
|
|
64
|
+
Replace the entire contents of `AGENTS.md` with the real agent guidance template located at `.agents/agents/.bootstrap/AGENTS.template.md`.
|
|
65
65
|
|
|
66
66
|
---
|
|
67
67
|
|