@tudeorangbiasa/sdd-multiagent-opencode 0.1.4 → 0.2.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.
Files changed (56) hide show
  1. package/.opencode/agents/sdd-explorer.md +1 -2
  2. package/.opencode/agents/sdd-implementer.md +4 -5
  3. package/.opencode/agents/sdd-orchestrator.md +17 -127
  4. package/.opencode/agents/sdd-planner.md +5 -6
  5. package/.opencode/agents/sdd-reviewer.md +0 -1
  6. package/.opencode/agents/sdd-verifier.md +3 -4
  7. package/.opencode/commands/sdd-apply.md +83 -0
  8. package/.opencode/commands/sdd-explore.md +63 -0
  9. package/.opencode/commands/sdd-propose.md +116 -0
  10. package/.opencode/commands/sdd-ship.md +71 -0
  11. package/.opencode/plugins/sdd-register.js +22 -0
  12. package/.opencode/skills/sdd-audit/SKILL.md +5 -5
  13. package/.opencode/skills/sdd-implementation/SKILL.md +10 -12
  14. package/.opencode/skills/sdd-planning/SKILL.md +20 -29
  15. package/.opencode/skills/sdd-research/SKILL.md +5 -5
  16. package/.sdd/config.json +10 -10
  17. package/.sdd/templates/design-template.md +21 -0
  18. package/.sdd/templates/model-profile-template.json +20 -3
  19. package/.sdd/templates/progress-template.md +23 -0
  20. package/.sdd/templates/project-profile-template.json +2 -2
  21. package/.sdd/templates/proposal-template.md +22 -0
  22. package/.sdd/templates/reasoning-profile-template.json +4 -8
  23. package/.sdd/templates/spec-template.md +19 -0
  24. package/.sdd/templates/tasks-template.md +8 -0
  25. package/.sdd/templates/verification-template.md +17 -0
  26. package/GUIDE.md +128 -0
  27. package/README.md +259 -155
  28. package/bin/sdd-opencode.js +7 -9
  29. package/opencode.json +6 -14
  30. package/package.json +6 -4
  31. package/.opencode/commands/audit.md +0 -75
  32. package/.opencode/commands/brief.md +0 -190
  33. package/.opencode/commands/evolve.md +0 -87
  34. package/.opencode/commands/execute-parallel.md +0 -116
  35. package/.opencode/commands/execute-task.md +0 -81
  36. package/.opencode/commands/generate-prd.md +0 -82
  37. package/.opencode/commands/generate-rules.md +0 -67
  38. package/.opencode/commands/grill-me.md +0 -99
  39. package/.opencode/commands/implement.md +0 -149
  40. package/.opencode/commands/init-sdd.md +0 -141
  41. package/.opencode/commands/plan.md +0 -96
  42. package/.opencode/commands/refine.md +0 -115
  43. package/.opencode/commands/research.md +0 -194
  44. package/.opencode/commands/sdd-full-plan.md +0 -91
  45. package/.opencode/commands/specify.md +0 -124
  46. package/.opencode/commands/tasks.md +0 -110
  47. package/.opencode/commands/upgrade.md +0 -107
  48. package/.opencode/skills/sdd-evolve/SKILL.md +0 -95
  49. package/.sdd/templates/feature-brief-v2.md +0 -65
  50. package/.sdd/templates/plan-compact.md +0 -50
  51. package/.sdd/templates/research-compact.md +0 -114
  52. package/.sdd/templates/roadmap-template.json +0 -29
  53. package/.sdd/templates/roadmap-template.md +0 -66
  54. package/.sdd/templates/spec-compact.md +0 -71
  55. package/.sdd/templates/tasks-compact.md +0 -48
  56. package/.sdd/templates/todo-compact.md +0 -30
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # SDD Multi-Agent OpenCode
2
2
 
3
- Spec-Driven Development framework for OpenCode with multi-agent orchestration, DAG-based parallel execution, and free-tier model optimization.
3
+ Spec-Driven Development workflow kit for OpenCode with four core commands, multi-agent support, and configurable model routing.
4
4
 
5
5
  Inspired by [spec-kit-command-cursor](https://github.com/madebyaris/spec-kit-command-cursor), rebuilt from scratch for OpenCode's multi-agent architecture.
6
6
 
@@ -20,38 +20,67 @@ external UI skills # impeccable, taste, nothing-design, etc.
20
20
 
21
21
  | Aspect | Original (Cursor) | This (OpenCode) |
22
22
  |--------|-------------------|-----------------|
23
- | **Models** | Single `inherit` model | 4 models optimized per agent role |
24
- | **Parallel Execution** | Cursor `is_background: true` | OpenCode subagent spawning via Task tool |
23
+ | **Models** | Single `inherit` model | Configurable per-agent routing |
24
+ | **Parallel Execution** | Cursor `is_background: true` | Safe subagent spawning with file conflict detection |
25
25
  | **Codebase Search** | grep/glob | `codebase-memory-mcp` graph queries |
26
26
  | **Web Research** | Cursor web search | `exa_web_search_exa` |
27
27
  | **Visual Verification** | N/A | Chrome DevTools + Qwen (image-capable) |
28
28
  | **Hooks** | `hooks.json` | Plugin JS/TS with event system |
29
- | **Cost** | Per-token billing | All free-tier models |
29
+ | **Commands** | 15+ slash commands | 4 core commands: explore, propose, apply, ship |
30
+ | **Cost** | Per-token billing | Free-tier optimized with paid model routing |
30
31
 
31
32
  ## Multi-Agent Architecture
32
33
 
33
- | Agent | Model | Role |
34
- |-------|-------|------|
35
- | **sdd-orchestrator** | `opencode/minimax-m2.5-free` | DAG scheduling, conflict detection, deadlock handling |
36
- | **sdd-planner** | `opencode/qwen3.6-plus-free` | Architecture design, technical planning |
37
- | **sdd-explorer** | `opencode/deepseek-v4-flash-free` | Codebase discovery (readonly) |
38
- | **sdd-implementer** | `opencode/deepseek-v4-flash-free` | Code generation (high token usage) |
39
- | **sdd-verifier** | `opencode/qwen3.6-plus-free` | Completeness check + visual/UI verification (Chrome DevTools) |
40
- | **sdd-reviewer** | `opencode/minimax-m2.5-free` | Code review (security, performance, spec compliance) |
34
+ | Agent | Default Model | Role |
35
+ |-------|--------------|------|
36
+ | **sdd-orchestrator** | configurable | DAG scheduling, conflict detection, deadlock handling |
37
+ | **sdd-planner** | configurable | Architecture design, technical planning |
38
+ | **sdd-explorer** | configurable | Codebase discovery (readonly) |
39
+ | **sdd-implementer** | configurable | Code generation (high token usage) |
40
+ | **sdd-verifier** | configurable | Completeness check + visual/UI verification (Chrome DevTools) |
41
+ | **sdd-reviewer** | configurable | Code review (security, performance, spec compliance) |
42
+
43
+ **All models are configurable** via `.sdd/model-profile.json`. Edit this file to change which model each agent uses. See [Model Settings](#model-settings) below.
41
44
 
42
45
  ## Quick Start
43
46
 
44
- ### npx Install (Recommended)
47
+ ### Plugin Install (Recommended)
48
+
49
+ Add to your `opencode.json` (global or project-level):
50
+
51
+ ```json
52
+ {
53
+ "plugin": [
54
+ "@tudeorangbiasa/sdd-multiagent-opencode@latest"
55
+ ]
56
+ }
57
+ ```
58
+
59
+ Restart OpenCode. The plugin auto-registers skills, agents, commands, and internal plugins (model router, auto reasoning).
60
+
61
+ To pin a specific version:
62
+
63
+ ```json
64
+ {
65
+ "plugin": [
66
+ "@tudeorangbiasa/sdd-multiagent-opencode@0.2.0"
67
+ ]
68
+ }
69
+ ```
70
+
71
+ Verify by asking: "What SDD commands do you have?"
72
+
73
+ **Why npm instead of GitHub?** GitHub installs pull the latest commit which may include beta/unstable changes. npm packages are versioned and tested before publish, so you get a stable, mature release.
74
+
75
+ ### npx Install (Fallback)
76
+
77
+ For projects that prefer local files instead of a plugin:
45
78
 
46
79
  ```bash
47
80
  cd your-project
48
81
  npx -y -p @tudeorangbiasa/sdd-multiagent-opencode sdd-opencode init
49
82
  ```
50
83
 
51
- This installs both:
52
- - Base OpenCode agent rules (verification, CLI-first, context budget)
53
- - SDD multi-agent workflow (commands, agents, skills, templates)
54
-
55
84
  **Flags:**
56
85
  ```bash
57
86
  npx -y -p @tudeorangbiasa/sdd-multiagent-opencode sdd-opencode init # Install everything
@@ -61,19 +90,147 @@ npx -y -p @tudeorangbiasa/sdd-multiagent-opencode sdd-opencode init --force
61
90
  npx -y -p @tudeorangbiasa/sdd-multiagent-opencode sdd-opencode init --dry-run # Preview only
62
91
  ```
63
92
 
64
- ### Model Settings
93
+ ### Updating
94
+
95
+ Plugin installs from npm update when you bump the version in your `opencode.json` and restart OpenCode. Check [npm](https://www.npmjs.com/package/@tudeorangbiasa/sdd-multiagent-opencode) for the latest version.
96
+
97
+ For npx installs, run the installer again with `--force` to overwrite existing files.
98
+
99
+ ## Command Flow Guide
100
+
101
+ See [GUIDE.md](GUIDE.md) for the practical command flow.
102
+
103
+ Default workflow:
104
+
105
+ ```text
106
+ /sdd-explore # investigate unclear ideas, bugs, or code areas; no code changes
107
+ /sdd-propose # create proposal.md, spec.md, design.md, tasks.md; no code changes
108
+ /sdd-apply # implement an approved change
109
+ /sdd-ship # final verification and readiness review
110
+ ```
111
+
112
+ Most work starts with `/sdd-propose`, then `/sdd-apply`, then `/sdd-ship`. Use `/sdd-explore` first only when the problem is unclear.
113
+
114
+ ## Model Settings
65
115
 
66
116
  The installer creates `.sdd/model-profile.json`. Edit this file to change which model each OpenCode agent uses.
67
117
 
68
- Default profile avoids paid GPT models:
118
+ **⚠️ Requirement:** SDD works best with at least **ONE paid/subscription model** for orchestrator and planner. These roles need strong reasoning + multimodal capabilities that free models lack.
119
+
120
+ ### Provider Prefix Format
121
+
122
+ OpenCode supports 75+ providers. Model IDs use the format `provider_id/model_id`. Run `opencode provider list` for the full list on your system.
123
+
124
+ | Provider | Prefix | Example |
125
+ |----------|--------|---------|
126
+ | OpenAI | `openai/` | `openai/gpt-5.5` |
127
+ | Anthropic | `anthropic/` | `anthropic/claude-sonnet-4-5` |
128
+ | Google Gemini | `google/` | `google/gemini-3-pro` |
129
+ | OpenCode Zen | `opencode/` | `opencode/claude-opus-4-7` |
130
+ | OpenCode Go | `opencode-go/` | `opencode-go/deepseek-v4-pro` |
131
+ | OpenRouter | `openrouter/` | `openrouter/anthropic/claude-sonnet-4-5` |
132
+ | Groq | `groq/` | `groq/qwen-qwq` |
133
+ | DeepSeek | `deepseek/` | `deepseek/deepseek-chat` |
134
+ | MiniMax | `minimax/` | `minimax/minimax-m2.7` |
135
+ | Moonshot AI | `moonshot/` | `moonshot/kimi-k2.6` |
136
+ | Z.AI | `zai/` | `zai/glm-5.1` |
137
+
138
+ ### OpenAI (Frontier Models)
139
+
140
+ Best for orchestration and complex planning. Access via OpenAI API key.
141
+
142
+ | Model | ID | Best For | Notes |
143
+ |-------|----|----------|-------|
144
+ | GPT 5.5 | `openai/gpt-5.5` | Orchestrator, Planner | Strongest reasoning + multimodal |
145
+ | GPT 5.5 Pro | `openai/gpt-5.5-pro` | Planner (complex) | Maximum capability, slower |
146
+ | GPT 5.5 Fast | `openai/gpt-5.5-fast` | Explorer, Implementer | Optimized for speed |
147
+ | GPT 5.2 | `openai/gpt-5.2` | General | Previous generation |
148
+
149
+ ### Anthropic (Claude)
150
+
151
+ Access via Anthropic API key or OpenCode Zen.
152
+
153
+ | Model | ID (Zen) | Best For | Notes |
154
+ |-------|----------|----------|-------|
155
+ | Claude Opus 4.7 | `opencode/claude-opus-4-7` | Planner (complex) | Latest, strongest reasoning |
156
+ | Claude Opus 4.6 | `opencode/claude-opus-4-6` | Planner | Same price as 4.7, good alternative |
157
+ | Claude Opus 4.5 | `opencode/claude-opus-4-5` | Planner | Proven, stable |
158
+ | Claude Sonnet 4.6 | `opencode/claude-sonnet-4-6` | Planner, Reviewer | Balanced cost/performance |
159
+ | Claude Sonnet 4.5 | `opencode/claude-sonnet-4-5` | Planner, Reviewer | Excellent code understanding |
160
+
161
+ ### OpenCode Zen (Curated Paid Models)
162
+
163
+ Models tested and verified by the OpenCode team. Access via OpenCode API key.
164
+
165
+ | Model | ID | Best For | Price (Input/Output per 1M) |
166
+ |-------|----|----------|----------------------------|
167
+ | Claude Opus 4.7 | `opencode/claude-opus-4-7` | Planner (complex) | $5.00 / $25.00 |
168
+ | Claude Opus 4.6 | `opencode/claude-opus-4-6` | Planner | $5.00 / $25.00 |
169
+ | Claude Sonnet 4.6 | `opencode/claude-sonnet-4-6` | Planner, Reviewer | $3.00 / $15.00 |
170
+ | Claude Sonnet 4.5 | `opencode/claude-sonnet-4-5` | Planner, Reviewer | $3.00 / $15.00 |
171
+ | Gemini 3.1 Pro | `opencode/gemini-3.1-pro` | Verifier, Planner | $2.00 / $12.00 |
172
+ | Gemini 3 Flash | `opencode/gemini-3-flash` | Explorer | $0.50 / $3.00 |
173
+ | MiniMax M2.7 | `opencode/minimax-m2.7` | Reviewer | $0.30 / $1.20 |
174
+ | MiniMax M2.5 | `opencode/minimax-m2.5` | Reviewer | $0.30 / $1.20 |
175
+ | GLM 5.1 | `opencode/glm-5.1` | Explorer, Planner | $1.40 / $4.40 |
176
+ | GLM 5 | `opencode/glm-5` | Explorer | $1.00 / $3.20 |
177
+ | Kimi K2.6 | `opencode/kimi-k2.6` | Verifier | $0.95 / $4.00 |
178
+ | Kimi K2.5 | `opencode/kimi-k2.5` | Explorer | $0.60 / $3.00 |
179
+ | Qwen3.6 Plus | `opencode/qwen3.6-plus` | General | $0.50 / $3.00 |
180
+ | Qwen3.5 Plus | `opencode/qwen3.5-plus` | General | $0.20 / $1.20 |
181
+
182
+ ### OpenCode Go (Budget Subscription — $10/month)
183
+
184
+ Curated open-source models with generous limits. Best value for planner/orchestrator on a budget.
185
+
186
+ | Model | ID | Best For | Notes |
187
+ |-------|----|----------|-------|
188
+ | DeepSeek V4 Pro | `opencode-go/deepseek-v4-pro` | Orchestrator, Planner | Strong reasoning, 1M context, MIT license |
189
+ | DeepSeek V4 Flash | `opencode-go/deepseek-v4-flash` | Explorer, Implementer | Fast code gen |
190
+ | GLM 5.1 | `opencode-go/glm-5.1` | Planner | Strong reasoning |
191
+ | GLM 5 | `opencode-go/glm-5` | Explorer | Budget reasoning |
192
+ | Kimi K2.6 | `opencode-go/kimi-k2.6` | Verifier | Vision support, open weights |
193
+ | Kimi K2.5 | `opencode-go/kimi-k2.5` | Explorer | Fast exploration |
194
+ | MiniMax M2.7 | `opencode-go/minimax-m2.7` | Reviewer | Structured output |
195
+ | MiniMax M2.5 | `opencode-go/minimax-m2.5` | Reviewer | Fast review |
196
+ | Qwen3.6 Plus | `opencode-go/qwen3.6-plus` | General | Balanced |
197
+ | Qwen3.5 Plus | `opencode-go/qwen3.5-plus` | General | Budget |
198
+ | MiMo-V2.5-Pro | `opencode-go/mimo-v2.5-pro` | Explorer | Alternative |
199
+ | MiMo-V2.5 | `opencode-go/mimo-v2.5` | Explorer | Alternative |
200
+
201
+ **DeepSeek V4 Pro vs MiniMax M2.7:** Based on [Artificial Analysis benchmarks](https://artificialanalysis.ai/models/comparisons/deepseek-v4-pro-vs-minimax-m2-7), DeepSeek V4 Pro scores higher on intelligence index, has 1M context (vs 205K), MIT license (vs non-commercial), and is more recent. Recommended for orchestrator/planner over MiniMax M2.7.
202
+
203
+ ### Free-Tier Models
204
+
205
+ Models available at no cost via OpenCode Zen. Run `opencode models opencode | grep "free"` to check current availability — free models change frequently.
206
+
207
+ **Current free models (verified):**
208
+
209
+ | Model | ID | Best For | Notes |
210
+ |-------|----|----------|-------|
211
+ | DeepSeek V4 Flash Free | `opencode/deepseek-v4-flash-free` | Explorer, Implementer | Code generation |
212
+ | MiniMax M2.5 Free | `opencode/minimax-m2.5-free` | Reviewer, Compaction | Structured output |
213
+ | Nemotron 3 Super Free | `opencode/nemotron-3-super-free` | Explorer | NVIDIA model, 1M context |
214
+ | Qwen3.6 Plus Free | `opencode/qwen3.6-plus-free` | Verifier, General | Multimodal support |
215
+
216
+ ⚠️ Free models are limited-time offers and may be removed or rotated without notice. Not recommended for production SDD workflows. Use `opencode models opencode | grep "free"` to verify what's currently available.
217
+
218
+ **Alternative free options via other providers:**
219
+ - `groq/qwen-qwq` — Qwen QwQ 32B via Groq (free tier available)
220
+ - `groq/llama-3.3-70b-versatile` — Llama 3.3 70B via Groq
221
+ - `openrouter/deepseek-r1-free` — DeepSeek R1 via OpenRouter (free)
222
+
223
+ ### Default Profile
224
+
225
+ Recommended starting configuration (orchestrator/planner use OpenAI GPT 5.5, others use free):
69
226
 
70
227
  ```json
71
228
  {
72
- "defaultPrimary": "opencode/minimax-m2.5-free",
229
+ "defaultPrimary": "openai/gpt-5.5",
73
230
  "small": "opencode/deepseek-v4-flash-free",
74
231
  "agents": {
75
- "sdd-orchestrator": "opencode/minimax-m2.5-free",
76
- "sdd-planner": "opencode/qwen3.6-plus-free",
232
+ "sdd-orchestrator": "openai/gpt-5.5",
233
+ "sdd-planner": "openai/gpt-5.5",
77
234
  "sdd-explorer": "opencode/deepseek-v4-flash-free",
78
235
  "sdd-implementer": "opencode/deepseek-v4-flash-free",
79
236
  "sdd-verifier": "opencode/qwen3.6-plus-free",
@@ -82,7 +239,34 @@ Default profile avoids paid GPT models:
82
239
  }
83
240
  ```
84
241
 
85
- `.opencode/plugins/sdd-model-router.js` reads this file at OpenCode startup and applies the model settings. Restart OpenCode after editing it.
242
+ **Budget alternative** (OpenCode Go $10/month):
243
+
244
+ ```json
245
+ {
246
+ "defaultPrimary": "opencode-go/deepseek-v4-pro",
247
+ "small": "opencode/deepseek-v4-flash-free",
248
+ "agents": {
249
+ "sdd-orchestrator": "opencode-go/deepseek-v4-pro",
250
+ "sdd-planner": "opencode-go/deepseek-v4-pro",
251
+ "sdd-explorer": "opencode/deepseek-v4-flash-free",
252
+ "sdd-implementer": "opencode/deepseek-v4-flash-free",
253
+ "sdd-verifier": "opencode-go/kimi-k2.6",
254
+ "sdd-reviewer": "opencode/minimax-m2.5-free"
255
+ }
256
+ }
257
+ ```
258
+
259
+ **Model routing rationale:**
260
+ - **Orchestrator** → GPT 5.5 (OpenAI) or DeepSeek V4 Pro (Go): needs strongest reasoning for DAG coordination, deadlock detection
261
+ - **Planner** → GPT 5.5 (OpenAI) or DeepSeek V4 Pro (Go): needs maximum reasoning for architecture design, risk assessment
262
+ - **Explorer** → DeepSeek free: fast readonly exploration, token-efficient
263
+ - **Implementer** → DeepSeek free: code generation, handles high token usage
264
+ - **Verifier** → Qwen3.6 Plus free: multimodal for Chrome DevTools screenshots
265
+ - **Reviewer** → MiniMax M2.5 free: structured code review output
266
+
267
+ `.opencode/plugins/sdd-model-router.js` reads this file at OpenCode startup and applies the model settings. **Restart OpenCode after editing it.**
268
+
269
+ **Important:** Do NOT set models in `opencode.json` — they will be ignored. All model routing goes through `model-profile.json`.
86
270
 
87
271
  ### Auto Reasoning
88
272
 
@@ -109,27 +293,14 @@ Default routing:
109
293
 
110
294
  Restart OpenCode after editing `.sdd/reasoning-profile.json`.
111
295
 
112
- ### 1. Install (Manual)
113
-
114
- #### Option A: Using Commands (Recommended)
115
-
116
- If you have OpenCode running, you can use the init commands:
117
-
118
- ```
119
- /init-rules # Install base agent rules first
120
- /init-sdd # Install SDD workflow layer
121
- ```
296
+ ### Manual Install
122
297
 
123
- #### Option B: Manual Copy
298
+ If you prefer local files over a plugin:
124
299
 
125
300
  ```bash
126
- # Recommended: install base agent rules first
127
301
  git clone https://github.com/TudeOrangBiasa/opencode-agent-rules.git
128
-
129
- # Clone into your project
130
302
  git clone https://github.com/TudeOrangBiasa/sdd-multiagent-opencode.git
131
303
 
132
- # Or copy the .opencode/ and .sdd/ directories into your project
133
304
  cp opencode-agent-rules/AGENTS.md /your-project/
134
305
  cp -r opencode-agent-rules/.opencode/rules /your-project/.opencode/
135
306
  cp -r opencode-agent-rules/.opencode/plugins /your-project/.opencode/
@@ -138,158 +309,92 @@ cp -r sdd-multiagent-opencode/.sdd /your-project/
138
309
  cp sdd-multiagent-opencode/opencode.json /your-project/
139
310
  ```
140
311
 
141
- ### 2. Configure
142
-
143
312
  Merge the `agent` and `permission` sections from `opencode.json` into your project's `opencode.json`.
144
313
 
145
- ### 3. Update Project Profile
314
+ ## Usage
146
315
 
147
- Edit `.sdd/project-profile.json` with your stack:
148
- - framework (e.g., "next", "react", "express")
149
- - language (e.g., "typescript", "javascript")
150
- - packageManager (e.g., "pnpm", "npm", "yarn")
151
- - commands (dev, build, test, lint)
316
+ See [GUIDE.md](GUIDE.md) for the practical flow.
152
317
 
153
- ### 4. Use
318
+ ```text
319
+ /sdd-propose auth-reset "add secure password reset by email"
320
+ /sdd-apply auth-reset
321
+ /sdd-ship auth-reset
322
+ ```
154
323
 
155
- ```bash
156
- # Quick planning (80% of features)
157
- /brief user-auth JWT authentication with login/logout
158
-
159
- # Full planning (complex features)
160
- /research database-engine Best database for our use case --deep
161
- /specify user-auth User authentication with login, logout, password reset
162
- /plan user-auth
163
- /tasks user-auth
164
- /implement user-auth
165
-
166
- # TDD workflow (test-driven development)
167
- /tasks user-auth --tdd
168
- /implement user-auth --tdd
169
-
170
- # Full project roadmap
171
- /sdd-full-plan blog-platform Full-featured blog with CMS and analytics
172
- /execute-parallel blog-platform --until-finish
173
-
174
- # Audit
175
- /audit user-auth
324
+ If the problem is unclear, start with exploration:
325
+
326
+ ```text
327
+ /sdd-explore "admin UI feels messy, find reusable component opportunities"
176
328
  ```
177
329
 
178
330
  ## Commands
179
331
 
180
- | Command | Purpose | Output |
181
- |---------|---------|--------|
182
- | `/init-rules` | Install base agent rules | Base rules files |
183
- | `/init-sdd` | Install SDD workflow | SDD files + project profile |
184
- | `/brief` | Lightweight feature brief (~30 min) | `feature-brief.md` |
185
- | `/research` | Pattern investigation (supports `--deep`) | `research.md` |
186
- | `/specify` | Detailed requirements | `spec.md` |
187
- | `/plan` | Technical architecture | `plan.md` |
188
- | `/tasks` | Task breakdown | `tasks.md` |
189
- | `/implement` | Execute implementation with todo tracking | Code + `todo-list.md` |
190
- | `/sdd-full-plan` | Complete project roadmap | `roadmap.json` + tasks |
191
- | `/execute-parallel` | Parallel DAG execution | Updated roadmap |
192
- | `/execute-task` | Single task execution | Updated roadmap |
193
- | `/evolve` | Update specs with discoveries | Updated specs |
194
- | `/refine` | Iterate on specs through discussion | Updated docs |
195
- | `/upgrade` | Brief → Full SDD planning | Full SDD docs |
196
- | `/audit` | Compare implementation against specs | Audit report |
197
- | `/generate-prd` | PRD via Socratic questions | `full-prd.md` |
198
- | `/generate-rules` | Auto-generate coding rules | Rule files |
199
- | `/grill-me` | Clarify product requirements | Clarified brief |
332
+ | Command | Purpose | Writes Code? |
333
+ |---------|---------|--------------|
334
+ | `/sdd-explore` | Investigate unclear ideas, bugs, or code areas | No |
335
+ | `/sdd-propose` | Create one focused change plan | No |
336
+ | `/sdd-apply` | Implement an approved change | Yes |
337
+ | `/sdd-ship` | Final verification and readiness review | No, unless explicitly asked |
200
338
 
201
339
  ## Project Structure
202
340
 
203
341
  ```
204
342
  .opencode/
205
- ├── opencode.json # Agent configs, permissions, model assignments
206
343
  ├── agents/
207
- │ ├── sdd-orchestrator.md # DAG coordinator (GPT 5.5)
208
- │ ├── sdd-planner.md # Architecture designer (GPT 5.5)
209
- │ ├── sdd-explorer.md # Codebase investigator (DeepSeek)
210
- │ ├── sdd-implementer.md # Code generator (DeepSeek)
211
- │ ├── sdd-verifier.md # Completeness checker (Qwen + Chrome)
212
- │ └── sdd-reviewer.md # Code reviewer (MiniMax)
344
+ │ ├── sdd-orchestrator.md # Multi-agent coordination internals
345
+ │ ├── sdd-planner.md # Proposal/spec/design/tasks planning
346
+ │ ├── sdd-explorer.md # Readonly codebase investigation
347
+ │ ├── sdd-implementer.md # Approved implementation work
348
+ │ ├── sdd-verifier.md # Completeness and UI verification
349
+ │ └── sdd-reviewer.md # Final review and readiness checks
213
350
  ├── commands/
214
- │ ├── brief.md # /brief
215
- │ ├── research.md # /research
216
- │ ├── specify.md # /specify
217
- ├── plan.md # /plan
218
- │ ├── tasks.md # /tasks
219
- │ ├── implement.md # /implement
220
- │ ├── sdd-full-plan.md # /sdd-full-plan
221
- │ ├── execute-parallel.md # /execute-parallel
222
- │ ├── execute-task.md # /execute-task
223
- │ ├── evolve.md # /evolve
224
- │ ├── refine.md # /refine
225
- │ ├── upgrade.md # /upgrade
226
- │ ├── audit.md # /audit
227
- │ ├── generate-prd.md # /generate-prd
228
- │ └── generate-rules.md # /generate-rules
351
+ │ ├── sdd-explore.md # /sdd-explore
352
+ │ ├── sdd-propose.md # /sdd-propose
353
+ │ ├── sdd-apply.md # /sdd-apply
354
+ └── sdd-ship.md # /sdd-ship
229
355
  └── skills/
230
356
  ├── sdd-research/SKILL.md
231
357
  ├── sdd-planning/SKILL.md
232
358
  ├── sdd-implementation/SKILL.md
233
- ├── sdd-audit/SKILL.md
234
- └── sdd-evolve/SKILL.md
359
+ └── sdd-audit/SKILL.md
235
360
 
236
361
  .sdd/
237
362
  ├── config.json # Project configuration
238
363
  ├── project-profile.json # Stack and skill routing config
239
364
  └── templates/ # Document templates
240
- ├── feature-brief-v2.md
241
- ├── spec-compact.md
242
- ├── plan-compact.md
243
- ├── tasks-compact.md
244
- ├── research-compact.md
245
- ├── todo-compact.md
246
- ├── roadmap-template.json
247
- └── roadmap-template.md
365
+ ├── proposal-template.md
366
+ ├── spec-template.md
367
+ ├── design-template.md
368
+ ├── tasks-template.md
369
+ ├── progress-template.md
370
+ └── verification-template.md
248
371
 
249
372
  specs/
250
- ├── active/ # Features in development
251
- ├── backlog/ # Future features
252
- ├── completed/ # Delivered features
253
- └── todo-roadmap/ # Project roadmaps with DAG
373
+ └── active/
374
+ └── <change-id>/
375
+ ├── proposal.md
376
+ ├── spec.md
377
+ ├── design.md
378
+ ├── tasks.md
379
+ ├── progress.md
380
+ └── verification.md
254
381
  ```
255
382
 
256
383
  ## Workflows
257
384
 
258
- ### Quick Planning (80% of features)
259
- ```
260
- /brief → /evolve → /refine → /implement
261
- ```
262
-
263
- ### Full Planning (complex features)
264
- ```
265
- /research → /specify → /plan → /tasks → /implement
266
- ```
267
-
268
- ### Deep Research (unfamiliar domain)
269
- ```
270
- /research --deep → /specify → /plan → /tasks → /implement
271
- ```
385
+ Most changes use:
272
386
 
273
- ### Parallel Execution (project roadmap)
274
- ```
275
- /sdd-full-plan → /execute-parallel --until-finish
387
+ ```text
388
+ /sdd-propose -> /sdd-apply -> /sdd-ship
276
389
  ```
277
390
 
278
- ### TDD Workflow (Test-Driven Development)
391
+ Unclear changes use:
279
392
 
393
+ ```text
394
+ /sdd-explore -> /sdd-propose -> /sdd-apply -> /sdd-ship
280
395
  ```
281
- /brief feature-x → /tasks feature-x --tdd → /implement feature-x --tdd
282
- ```
283
-
284
- With `--tdd` flag:
285
- - `/tasks` generates TDD-specific tasks with test-first structure
286
- - `/implement` writes failing test → implements minimum code → verifies pass → refactors
287
396
 
288
- **Example:**
289
- ```
290
- /tasks user-auth --tdd
291
- /implement user-auth --tdd
292
- ```
397
+ This kit intentionally avoids fake CLI flags such as `--deep` or `--until-finish`. If deeper research or parallel execution is needed, describe that in normal language and let the agent plan it explicitly.
293
398
 
294
399
  ## Tools Integration
295
400
 
@@ -302,11 +407,10 @@ Used by `sdd-explorer` and `sdd-implementer` for:
302
407
  - `get_architecture` — high-level project structure
303
408
 
304
409
  ### exa_web_search_exa
305
- Used by `sdd-explorer` and `sdd-research` skill for:
410
+ Used by `sdd-explorer` when external research is relevant:
306
411
  - External pattern research
307
412
  - Documentation lookup
308
413
  - Technology comparison
309
- - Deep research mode (`--deep`)
310
414
 
311
415
  ### chrome-devtools
312
416
  Used by `sdd-verifier` for:
@@ -332,15 +332,9 @@ function patchOpencodeJson(ctx) {
332
332
  }
333
333
  }
334
334
 
335
- if (pkgConfig.model) {
336
- targetConfig.model = pkgConfig.model;
337
- ctx.installed.push("opencode.json (model patch)");
338
- }
339
-
340
- if (pkgConfig.small_model) {
341
- targetConfig.small_model = pkgConfig.small_model;
342
- ctx.installed.push("opencode.json (small_model patch)");
343
- }
335
+ // NOTE: model and small_model are NOT patched from opencode.json.
336
+ // Model routing is handled by .sdd/model-profile.json + sdd-model-router.js plugin.
337
+ // Users edit model-profile.json to change models — opencode.json models are ignored.
344
338
 
345
339
  if (pkgConfig.agents && !targetConfig.agents) {
346
340
  targetConfig.agents = pkgConfig.agents;
@@ -360,6 +354,10 @@ function patchOpencodeJson(ctx) {
360
354
  targetConfig.permission = pkgConfig.permission;
361
355
  ctx.installed.push("opencode.json (permission patch)");
362
356
  }
357
+
358
+ // NOTE: model and small_model are NOT patched here.
359
+ // Model routing is handled by .sdd/model-profile.json + sdd-model-router.js plugin.
360
+ // Users should edit model-profile.json to change models, not opencode.json.
363
361
  }
364
362
 
365
363
  if (ctx.dryRun) {
package/opencode.json CHANGED
@@ -1,16 +1,13 @@
1
1
  {
2
2
  "$schema": "https://opencode.ai/config.json",
3
- "model": "opencode/minimax-m2.5-free",
4
- "small_model": "opencode/deepseek-v4-flash-free",
5
3
  "plugin": [
6
4
  "./plugins/sdd-model-router.js",
7
5
  "./plugins/sdd-auto-reasoning.js"
8
6
  ],
9
7
  "agent": {
10
8
  "sdd-orchestrator": {
11
- "description": "Parallel task coordination and DAG-based execution for SDD workflows. Use for /execute-parallel, --until-finish automation, and coordinating multiple subagents across complex projects.",
9
+ "description": "Internal coordination agent for complex SDD changes. Use only when a core command needs multi-agent scheduling.",
12
10
  "mode": "subagent",
13
- "model": "opencode/minimax-m2.5-free",
14
11
  "temperature": 0.3,
15
12
  "permission": {
16
13
  "edit": "allow",
@@ -22,9 +19,8 @@
22
19
  "color": "accent"
23
20
  },
24
21
  "sdd-planner": {
25
- "description": "Architecture design and technical planning for SDD workflows. Use when generating plans from specifications, designing system architecture, or breaking down features into tasks.",
22
+ "description": "Creates compact SDD proposal, spec, design, and task artifacts for /sdd-propose.",
26
23
  "mode": "subagent",
27
- "model": "opencode/qwen3.6-plus-free",
28
24
  "temperature": 0.3,
29
25
  "permission": {
30
26
  "edit": "allow",
@@ -36,9 +32,8 @@
36
32
  "color": "info"
37
33
  },
38
34
  "sdd-explorer": {
39
- "description": "Deep codebase exploration for SDD workflows using codebase-memory-mcp. Use proactively when technical approach is unclear, before /research or /specify, or when investigating existing patterns.",
35
+ "description": "Readonly codebase exploration for /sdd-explore and uncertain /sdd-propose requests.",
40
36
  "mode": "subagent",
41
- "model": "opencode/deepseek-v4-flash-free",
42
37
  "temperature": 0.1,
43
38
  "permission": {
44
39
  "edit": "deny",
@@ -54,9 +49,8 @@
54
49
  "color": "secondary"
55
50
  },
56
51
  "sdd-implementer": {
57
- "description": "Systematic code implementation following SDD plans and todo-lists. Use for executing planned implementations, code generation, and building features according to specifications.",
52
+ "description": "Systematic implementation for approved /sdd-apply changes.",
58
53
  "mode": "subagent",
59
- "model": "opencode/deepseek-v4-flash-free",
60
54
  "temperature": 0.3,
61
55
  "permission": {
62
56
  "edit": "allow",
@@ -68,9 +62,8 @@
68
62
  "color": "success"
69
63
  },
70
64
  "sdd-verifier": {
71
- "description": "Independent validation that implementations are actually complete. Uses Chrome DevTools for visual/UI verification and codebase-memory-mcp for structural checks. Spawns after implementation phases.",
65
+ "description": "Independent validation for /sdd-ship, including browser checks when needed.",
72
66
  "mode": "subagent",
73
- "model": "opencode/qwen3.6-plus-free",
74
67
  "temperature": 0.1,
75
68
  "permission": {
76
69
  "edit": "deny",
@@ -80,9 +73,8 @@
80
73
  "color": "warning"
81
74
  },
82
75
  "sdd-reviewer": {
83
- "description": "Code review specialist for security, performance, and spec compliance. Use before marking tasks complete, during pull request reviews, or for quality assurance audits.",
76
+ "description": "Final review specialist for /sdd-ship readiness checks.",
84
77
  "mode": "subagent",
85
- "model": "opencode/minimax-m2.5-free",
86
78
  "temperature": 0.2,
87
79
  "permission": {
88
80
  "edit": "deny",
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@tudeorangbiasa/sdd-multiagent-opencode",
3
- "version": "0.1.4",
4
- "description": "Spec-Driven Development multi-agent workflow for OpenCode",
3
+ "version": "0.2.1",
4
+ "description": "Spec-Driven Development workflow kit for OpenCode with 4 core commands, multi-agent support, and configurable model routing",
5
5
  "type": "module",
6
+ "main": ".opencode/plugins/sdd-register.js",
6
7
  "bin": {
7
- "sdd-multiagent-opencode": "bin/sdd-opencode.js",
8
8
  "sdd-opencode": "bin/sdd-opencode.js"
9
9
  },
10
10
  "files": [
@@ -13,6 +13,7 @@
13
13
  ".sdd",
14
14
  "vendor",
15
15
  "README.md",
16
+ "GUIDE.md",
16
17
  "opencode.json"
17
18
  ],
18
19
  "scripts": {
@@ -22,7 +23,8 @@
22
23
  "opencode",
23
24
  "sdd",
24
25
  "spec-driven-development",
25
- "multi-agent"
26
+ "multi-agent",
27
+ "opencode-plugin"
26
28
  ],
27
29
  "license": "MIT"
28
30
  }