oh-my-opencode-slim 2.0.5 → 2.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.
Files changed (67) hide show
  1. package/README.ja-JP.md +64 -38
  2. package/README.ko-KR.md +62 -36
  3. package/README.md +82 -47
  4. package/README.zh-CN.md +63 -39
  5. package/dist/agents/council.d.ts +1 -1
  6. package/dist/agents/index.d.ts +7 -2
  7. package/dist/agents/orchestrator.d.ts +1 -1
  8. package/dist/cli/custom-skills-registry.d.ts +18 -0
  9. package/dist/cli/custom-skills.d.ts +3 -19
  10. package/dist/cli/index.js +1130 -195
  11. package/dist/cli/providers.d.ts +12 -16
  12. package/dist/cli/skills.d.ts +2 -2
  13. package/dist/companion/manager.d.ts +10 -0
  14. package/dist/config/constants.d.ts +2 -1
  15. package/dist/config/council-schema.d.ts +37 -12
  16. package/dist/config/loader.d.ts +5 -2
  17. package/dist/config/schema.d.ts +17 -6
  18. package/dist/council/council-manager.d.ts +7 -3
  19. package/dist/hooks/auto-update-checker/skill-sync.d.ts +59 -1
  20. package/dist/hooks/filter-available-skills/index.d.ts +1 -2
  21. package/dist/hooks/foreground-fallback/index.d.ts +40 -2
  22. package/dist/hooks/image-hook.d.ts +1 -1
  23. package/dist/hooks/index.d.ts +2 -0
  24. package/dist/hooks/loop-command/index.d.ts +13 -0
  25. package/dist/hooks/phase-reminder/index.d.ts +4 -3
  26. package/dist/hooks/post-file-tool-nudge/index.d.ts +15 -9
  27. package/dist/hooks/session-lifecycle.d.ts +11 -0
  28. package/dist/hooks/task-session-manager/index.d.ts +15 -4
  29. package/dist/hooks/task-session-manager/pending-call-tracker.d.ts +13 -0
  30. package/dist/hooks/task-session-manager/task-context-tracker.d.ts +14 -0
  31. package/dist/hooks/types.d.ts +3 -1
  32. package/dist/index.js +2890 -986
  33. package/dist/interview/dashboard-manager.d.ts +21 -0
  34. package/dist/interview/manager.d.ts +0 -14
  35. package/dist/interview/service.d.ts +9 -0
  36. package/dist/interview/session-server.d.ts +21 -0
  37. package/dist/interview/types.d.ts +3 -1
  38. package/dist/loop/loop-session.d.ts +64 -0
  39. package/dist/multiplexer/factory.d.ts +5 -5
  40. package/dist/multiplexer/herdr/index.d.ts +33 -0
  41. package/dist/multiplexer/index.d.ts +1 -0
  42. package/dist/multiplexer/session-manager.d.ts +6 -5
  43. package/dist/multiplexer/shared.d.ts +24 -0
  44. package/dist/multiplexer/tmux/index.d.ts +0 -1
  45. package/dist/multiplexer/types.d.ts +4 -4
  46. package/dist/multiplexer/zellij/index.d.ts +0 -1
  47. package/dist/tools/cancel-task.d.ts +2 -2
  48. package/dist/tui.d.ts +1 -0
  49. package/dist/tui.js +123 -45
  50. package/dist/utils/background-job-board.d.ts +22 -2
  51. package/dist/utils/background-job-coordinator.d.ts +72 -0
  52. package/dist/utils/background-job-store.d.ts +46 -0
  53. package/dist/utils/councillor-models.d.ts +20 -0
  54. package/dist/utils/index.d.ts +2 -0
  55. package/dist/utils/internal-initiator.d.ts +6 -1
  56. package/dist/utils/session.d.ts +2 -2
  57. package/oh-my-opencode-slim.schema.json +18 -1
  58. package/package.json +1 -1
  59. package/src/skills/clonedeps/SKILL.md +2 -2
  60. package/src/skills/clonedeps/codemap.md +23 -32
  61. package/src/skills/codemap/SKILL.md +2 -2
  62. package/src/skills/codemap.md +63 -36
  63. package/src/skills/loop-engineering/SKILL.md +30 -0
  64. package/src/skills/oh-my-opencode-slim/SKILL.md +3 -3
  65. package/src/skills/reflect/SKILL.md +133 -0
  66. package/src/skills/release-smoke-test/SKILL.md +159 -0
  67. package/src/skills/simplify/SKILL.md +6 -6
package/README.md CHANGED
@@ -83,10 +83,38 @@ Install and configure oh-my-opencode-slim: https://raw.githubusercontent.com/alv
83
83
  bunx oh-my-opencode-slim@latest install
84
84
  ```
85
85
 
86
+ ### Run from Master
87
+
88
+ Use this if you want the latest code, easier bug fixes, or a local setup for
89
+ development and contributions:
90
+
91
+ ```bash
92
+ git clone https://github.com/alvinunreal/oh-my-opencode-slim.git ~/repos/oh-my-opencode-slim
93
+ cd ~/repos/oh-my-opencode-slim
94
+ bun install
95
+ bun run build
96
+ bun dist/cli/index.js install
97
+ ```
98
+
99
+ The installer adds the local repo path to the `plugin` array in
100
+ `~/.config/opencode/opencode.json`, so OpenCode loads the plugin from that
101
+ folder. To update later:
102
+
103
+ ```bash
104
+ cd ~/repos/oh-my-opencode-slim
105
+ git pull
106
+ bun install
107
+ bun run build
108
+ ```
109
+
86
110
  ### Getting Started
87
111
 
88
112
  The installer generates both OpenAI and OpenCode Go presets, with OpenAI active by default.
89
113
 
114
+ > [!TIP]
115
+ > Tune the models and agents for your own workflow. The defaults are only a
116
+ > starting point; the plugin is designed for deep flexibility and customization.
117
+
90
118
  To make OpenCode Go active during install, run `bunx oh-my-opencode-slim@latest install --preset=opencode-go` or change the default preset name in `~/.config/opencode/oh-my-opencode-slim.json` after installation.
91
119
 
92
120
  Then:
@@ -109,7 +137,7 @@ Then:
109
137
  > It's **recommended** to understand how background orchestration works. The **[Orchestrator prompt](https://github.com/alvinunreal/oh-my-opencode-slim/blob/master/src/agents/orchestrator.ts#L28)** contains the scheduler rules, specialist routing logic, and thresholds for when work should be assigned to background agents. You can always delegate manually by calling a subagent via: `@agentName <task>`
110
138
 
111
139
  > [!TIP]
112
- > Because background agents are now the default workflow, it is **highly recommended** to enable and configure **[Multiplexer Integration](docs/multiplexer-integration.md)**. It automatically opens each agent in a dedicated Tmux or Zellij pane, so you can watch specialists work live while the Orchestrator continues coordinating the session.
140
+ > Because background agents are now the default workflow, it is **highly recommended** to enable and configure **[Multiplexer Integration](docs/multiplexer-integration.md)**. It automatically opens each agent in a dedicated Tmux, Zellij, or Herdr pane, so you can watch specialists work live while the Orchestrator continues coordinating the session.
113
141
 
114
142
  The default generated configuration includes both `openai` and `opencode-go` presets.
115
143
 
@@ -119,41 +147,36 @@ The default generated configuration includes both `openai` and `opencode-go` pre
119
147
  "preset": "openai",
120
148
  "presets": {
121
149
  "openai": {
122
- "orchestrator": { "model": "openai/gpt-5.5", "variant": "medium", "skills": ["*"], "mcps": ["*", "!context7"] },
123
- "oracle": { "model": "openai/gpt-5.5", "variant": "high", "skills": ["simplify"], "mcps": [] },
124
- "librarian": { "model": "openai/gpt-5.4-mini", "variant": "low", "skills": [], "mcps": ["websearch", "context7", "gh_grep"] },
125
- "explorer": { "model": "openai/gpt-5.4-mini", "variant": "low", "skills": [], "mcps": [] },
126
- "designer": { "model": "openai/gpt-5.4-mini", "variant": "medium", "skills": [], "mcps": [] },
127
- "fixer": { "model": "openai/gpt-5.5", "variant": "low", "skills": [], "mcps": [] }
150
+ "orchestrator": { "model": "openai/gpt-5.6-terra", "variant": "medium", "skills": ["*"], "mcps": ["*", "!context7"] },
151
+ "oracle": { "model": "openai/gpt-5.6-sol", "variant": "high", "skills": ["simplify"], "mcps": [] },
152
+ "librarian": { "model": "openai/gpt-5.6-luna", "variant": "low", "skills": [], "mcps": ["websearch", "context7", "gh_grep"] },
153
+ "explorer": { "model": "openai/gpt-5.6-luna", "variant": "low", "skills": [], "mcps": [] },
154
+ "designer": { "model": "openai/gpt-5.6-luna", "variant": "medium", "skills": [], "mcps": [] },
155
+ "fixer": { "model": "openai/gpt-5.6-luna", "variant": "medium", "skills": [], "mcps": [] }
128
156
  },
129
157
  "opencode-go": {
130
- "orchestrator": { "model": "opencode-go/glm-5.1", "skills": [ "*" ], "mcps": [ "*", "!context7" ] },
131
- "oracle": { "model": "opencode-go/deepseek-v4-pro", "variant": "max", "skills": ["simplify"], "mcps": [] },
132
- "council": { "model": "opencode-go/deepseek-v4-pro", "variant": "high", "skills": [], "mcps": [] },
133
- "librarian": { "model": "opencode-go/minimax-m2.7", "skills": [], "mcps": [ "websearch", "context7", "gh_grep" ] },
134
- "explorer": { "model": "opencode-go/minimax-m2.7", "skills": [], "mcps": [] },
135
- "designer": { "model": "opencode-go/kimi-k2.6", "variant": "medium", "skills": [], "mcps": [] },
158
+ "orchestrator": { "model": "opencode-go/glm-5.2", "skills": [ "*" ], "mcps": [ "*", "!context7" ] },
159
+ "oracle": { "model": "opencode-go/qwen3.7-max", "variant": "max", "skills": ["simplify"], "mcps": [] },
160
+ "librarian": { "model": "opencode-go/deepseek-v4-flash", "skills": [], "mcps": [ "websearch", "context7", "gh_grep" ] },
161
+ "explorer": { "model": "opencode-go/deepseek-v4-flash", "skills": [], "mcps": [] },
162
+ "designer": { "model": "opencode-go/kimi-k2.7-code", "variant": "medium", "skills": [], "mcps": [] },
136
163
  "fixer": { "model": "opencode-go/deepseek-v4-flash", "variant": "high", "skills": [], "mcps": [] }
137
164
  }
138
165
  }
139
166
  }
140
167
  ```
141
168
 
142
- ### For Alternative Providers
143
-
144
- To use custom providers or a mixed-provider setup, use **[Configuration](docs/configuration.md)** for the full reference. If you want a ready-made starting point, check the **[Author's Preset](docs/authors-preset.md)** and **[$30 Preset](docs/thirty-dollars-preset.md)** - the `$30` preset is the best cheap setup.
145
-
146
- ### Temporarily Disable the Plugin
169
+ ### Preset Docs
147
170
 
148
- Set `OH_MY_OPENCODE_SLIM_DISABLE=1` when starting OpenCode to make the plugin
149
- return without registering agents, tools, MCPs, hooks, Companion, or the TUI
150
- sidebar:
171
+ - **[OpenAI Preset](docs/openai-preset.md)** the default generated preset; runs all agents on OpenAI models.
172
+ - **[OpenCode Go Preset](docs/opencode-go-preset.md)** — runs the agents on OpenCode Go models; enables the Observer agent for visual analysis since its orchestrator model isn't multimodal.
173
+ - **[Author's Preset](docs/authors-preset.md)** — the exact config the author runs day to day, with third-party skills.
174
+ - **[$30 Preset](docs/thirty-dollars-preset.md)** — a mixed-provider setup built around Codex Plus and GitHub Copilot Pro for about $30/month.
175
+ - **[OpenCode Zen Free Preset](docs/opencode-zen-free-preset.md)** — every agent runs on an opencode free model; no usage cost.
151
176
 
152
- ```bash
153
- OH_MY_OPENCODE_SLIM_DISABLE=1 opencode
154
- ```
177
+ ### For Alternative Providers
155
178
 
156
- Truthy values are `1`, `true`, `yes`, and `on`.
179
+ To use custom providers or a mixed-provider setup, use **[Configuration](docs/configuration.md)** for the full reference.
157
180
 
158
181
  ### ✅ Verify Your Setup
159
182
 
@@ -184,18 +207,18 @@ V2 turns oh-my-opencode-slim into a scheduler-first multi-agent workflow system.
184
207
  The Orchestrator stays focused on planning, delegation, reconciliation, and
185
208
  verification while specialists do the work in their own lanes.
186
209
 
187
- - **[Background agents](#background-agents)** the Orchestrator now dispatches
210
+ - **[Background agents](#background-agents)** - the Orchestrator now dispatches
188
211
  specialists as background tasks, tracks task/session IDs, waits for completion
189
212
  events, and reconciles results before continuing.
190
- - **[Companion](#companion)** an optional floating desktop window shows which
213
+ - **[Companion](#companion)** - an optional floating desktop window shows which
191
214
  agents are currently active, including parallel background specialists.
192
- - **[Deepwork](#deepwork)** a structured workflow for large, multi-file, risky,
215
+ - **[Deepwork](#deepwork)** - a structured workflow for large, multi-file, risky,
193
216
  or phased coding work using persistent plan files and Oracle review gates.
194
- - **[Reflect](#reflect)** reviews repeated work patterns and suggests reusable skills,
217
+ - **[Reflect](#reflect)** - reviews repeated work patterns and suggests reusable skills,
195
218
  agents, commands, config rules, prompt rules, or project playbooks.
196
- - **[Worktrees](#worktrees)** manages Git worktrees as isolated coding lanes
219
+ - **[Worktrees](#worktrees)** - manages Git worktrees as isolated coding lanes
197
220
  with safety protocols for complex, risky, or parallel tasks.
198
- - **[oh-my-opencode-slim skill](#oh-my-opencode-slim-skill)** a bundled
221
+ - **[oh-my-opencode-slim skill](#oh-my-opencode-slim-skill)** - a bundled
199
222
  configuration skill that helps tune models, prompts, custom agents, MCP access,
200
223
  presets, and plugin behavior safely.
201
224
 
@@ -220,7 +243,7 @@ background work is easier to follow at a glance.
220
243
  </div>
221
244
 
222
245
  During interactive install, the installer asks whether to enable Companion and
223
- defaults to `yes`. For automation, enable it explicitly with:
246
+ defaults to `no`. For automation, enable it explicitly with:
224
247
 
225
248
  ```bash
226
249
  bunx oh-my-opencode-slim@latest install --companion=yes
@@ -320,12 +343,12 @@ rules.
320
343
  </tr>
321
344
  <tr>
322
345
  <td colspan="2">
323
- <b>Default Model:</b> <code>openai/gpt-5.5 (medium)</code>
346
+ <b>Default Model:</b> <code>openai/gpt-5.6-terra (medium)</code>
324
347
  </td>
325
348
  </tr>
326
349
  <tr>
327
350
  <td colspan="2">
328
- <b>Recommended Models:</b> <code>openai/gpt-5.5 (medium)</code> <code>anthropic/claude-fable-5</code> <code>anthropic/claude-opus-4-8</code>
351
+ <b>Recommended Models:</b> <code>openai/gpt-5.6-terra (medium)</code> <code>anthropic/claude-fable-5</code> <code>anthropic/claude-opus-4-8</code>
329
352
  </td>
330
353
  </tr>
331
354
  <tr>
@@ -361,7 +384,7 @@ rules.
361
384
  </tr>
362
385
  <tr>
363
386
  <td colspan="2">
364
- <b>Default Model:</b> <code>openai/gpt-5.4-mini</code>
387
+ <b>Default Model:</b> <code>openai/gpt-5.6-luna</code>
365
388
  </td>
366
389
  </tr>
367
390
  <tr>
@@ -402,12 +425,12 @@ rules.
402
425
  </tr>
403
426
  <tr>
404
427
  <td colspan="2">
405
- <b>Default Model:</b> <code>openai/gpt-5.5 (high)</code>
428
+ <b>Default Model:</b> <code>openai/gpt-5.6-sol (high)</code>
406
429
  </td>
407
430
  </tr>
408
431
  <tr>
409
432
  <td colspan="2">
410
- <b>Recommended Models:</b> <code>openai/gpt-5.5 (xhigh)</code> <code>anthropic/claude-fable-5</code> <code>anthropic/claude-opus-4-8 (xhigh)</code>
433
+ <b>Recommended Models:</b> <code>openai/gpt-5.6-sol (xhigh)</code> <code>anthropic/claude-fable-5</code> <code>anthropic/claude-opus-4-8 (xhigh)</code>
411
434
  </td>
412
435
  </tr>
413
436
  <tr>
@@ -451,7 +474,7 @@ rules.
451
474
  </tr>
452
475
  <tr>
453
476
  <td colspan="2">
454
- <b>Default Setup:</b> <code>Config-driven</code> councillors come from <code>council.presets</code> and the Council agent model comes from your normal <code>council</code> agent config
477
+ <b>Default Setup:</b> <code>Config-driven</code> - councillors come from <code>council.presets</code> and the Council agent model comes from your normal <code>council</code> agent config
455
478
  </td>
456
479
  </tr>
457
480
  <tr>
@@ -492,7 +515,7 @@ rules.
492
515
  </tr>
493
516
  <tr>
494
517
  <td colspan="2">
495
- <b>Default Model:</b> <code>openai/gpt-5.4-mini</code>
518
+ <b>Default Model:</b> <code>openai/gpt-5.6-luna</code>
496
519
  </td>
497
520
  </tr>
498
521
  <tr>
@@ -533,7 +556,7 @@ rules.
533
556
  </tr>
534
557
  <tr>
535
558
  <td colspan="2">
536
- <b>Default Model:</b> <code>openai/gpt-5.4-mini</code>
559
+ <b>Default Model:</b> <code>openai/gpt-5.6-luna</code>
537
560
  </td>
538
561
  </tr>
539
562
  <tr>
@@ -574,12 +597,12 @@ rules.
574
597
  </tr>
575
598
  <tr>
576
599
  <td colspan="2">
577
- <b>Default Model:</b> <code>openai/gpt-5.5 (low)</code>
600
+ <b>Default Model:</b> <code>openai/gpt-5.6-luna (medium)</code>
578
601
  </td>
579
602
  </tr>
580
603
  <tr>
581
604
  <td colspan="2">
582
- <b>Recommended Models:</b> <code>openai/gpt-5.5 (low)</code> <code>anthropic/claude-sonnet-4-6</code>
605
+ <b>Recommended Models:</b> <code>openai/gpt-5.6-luna (medium)</code> <code>anthropic/claude-sonnet-4-6</code>
583
606
  </td>
584
607
  </tr>
585
608
  <tr>
@@ -606,11 +629,11 @@ rules.
606
629
  </td>
607
630
  <td width="70%" valign="top">
608
631
 
609
- **Read-only visual analysis** interprets images, screenshots, PDFs, and diagrams. Returns structured observations to the orchestrator without loading raw file bytes into the main context window.
632
+ **Read-only visual analysis** - interprets images, screenshots, PDFs, and diagrams. Returns structured observations to the orchestrator without loading raw file bytes into the main context window.
610
633
 
611
634
  - Images, screenshots, diagrams → `read` tool (native image support)
612
635
  - PDFs and binary documents → `read` tool (text + structure extraction)
613
- - **Disabled by default** enable with `"disabled_agents": []` and configure a vision-capable model; installing with `--preset=opencode-go` enables it with `opencode-go/kimi-k2.6`
636
+ - **Disabled by default** - enable with `"disabled_agents": []` and configure a vision-capable model; installing with `--preset=opencode-go` enables it with `opencode-go/kimi-k2.6`
614
637
 
615
638
  </td>
616
639
  </tr>
@@ -621,7 +644,7 @@ rules.
621
644
  </tr>
622
645
  <tr>
623
646
  <td colspan="2">
624
- <b>Default Model:</b> <code>openai/gpt-5.4-mini</code> <i>configure a vision-capable model to enable</i>
647
+ <b>Default Model:</b> <code>openai/gpt-5.6-luna</code> - <i>configure a vision-capable model to enable</i>
625
648
  </td>
626
649
  </tr>
627
650
  <tr>
@@ -646,7 +669,7 @@ Use this section as a map: start with installation, then jump to features, confi
646
669
  | **[Council](docs/council.md)** | Run multiple models in parallel and synthesize a single answer with `@council` |
647
670
  | **[Custom Agents](docs/configuration.md#custom-agents)** | Define your own specialists with custom prompts, models, MCP access, and Orchestrator delegation rules |
648
671
  | **[ACP Agents](docs/acp-agents.md)** | Connect external ACP-compatible agents such as Claude Code ACP or Gemini ACP as delegatable subagents |
649
- | **[Multiplexer Integration](docs/multiplexer-integration.md)** | Watch agents work live in Tmux or Zellij panes |
672
+ | **[Multiplexer Integration](docs/multiplexer-integration.md)** | Watch agents work live in Tmux, Zellij, or Herdr panes |
650
673
  | **[Codemap](docs/codemap.md)** | Generate hierarchical codemaps to understand large codebases faster |
651
674
  | **[Clonedeps](docs/clonedeps.md)** | Clone selected dependency source into an ignored local workspace for inspection |
652
675
  | **[Worktrees](docs/worktrees.md)** | Use `.slim/worktrees/` lanes for isolated parallel or risky coding work |
@@ -660,6 +683,7 @@ Use this section as a map: start with installation, then jump to features, confi
660
683
  |-----|----------------|
661
684
  | **[Installation Guide](docs/installation.md)** | Install the plugin, use CLI flags, reset config, and troubleshoot setup |
662
685
  | **[Configuration](docs/configuration.md)** | Config file locations, JSONC support, prompt overrides, and full option reference |
686
+ | **[Project Customization](docs/project-local-customization.md)** | Repository-specific custom agents, prompt overrides, per-agent skills, and precedence |
663
687
  | **[Background Orchestration](docs/background-orchestration.md)** | Scheduler-first orchestrator model built around native background subagents |
664
688
  | **[Maintainer Guide](docs/maintainers.md)** | Issue triage rules, label meanings, support routing, and repo maintenance workflow |
665
689
  | **[Skills](docs/skills.md)** | Bundled skills such as `simplify`, `codemap`, `clonedeps`, `deepwork`, `reflect`, `worktrees`, and `oh-my-opencode-slim` |
@@ -683,7 +707,7 @@ Use this section as a map: start with installation, then jump to features, confi
683
707
  <p><sub>Every merged contribution leaves a mark on the realm.</sub></p>
684
708
 
685
709
  <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
686
- [![All Contributors](https://img.shields.io/badge/all_contributors-66-orange.svg?style=flat-square)](#contributors-)
710
+ [![All Contributors](https://img.shields.io/badge/all_contributors-73-orange.svg?style=flat-square)](#contributors-)
687
711
  <!-- ALL-CONTRIBUTORS-BADGE:END -->
688
712
  </div>
689
713
 
@@ -782,6 +806,17 @@ Use this section as a map: start with installation, then jump to features, confi
782
806
  <td align="center" valign="top" width="16.66%"><a href="https://github.com/linze0721"><img src="https://avatars.githubusercontent.com/u/178997622?v=4?s=100" width="100px;" alt="萧瑟"/><br /><sub><b>萧瑟</b></sub></a><br /><a href="https://github.com/alvinunreal/oh-my-opencode-slim/commits?author=linze0721" title="Code">💻</a></td>
783
807
  <td align="center" valign="top" width="16.66%"><a href="https://github.com/SisyphusZheng"><img src="https://avatars.githubusercontent.com/u/146103794?v=4?s=100" width="100px;" alt="Zhi"/><br /><sub><b>Zhi</b></sub></a><br /><a href="https://github.com/alvinunreal/oh-my-opencode-slim/commits?author=SisyphusZheng" title="Code">💻</a></td>
784
808
  </tr>
809
+ <tr>
810
+ <td align="center" valign="top" width="16.66%"><a href="https://github.com/824156793"><img src="https://avatars.githubusercontent.com/u/19755784?v=4?s=100" width="100px;" alt="lilili"/><br /><sub><b>lilili</b></sub></a><br /><a href="https://github.com/alvinunreal/oh-my-opencode-slim/commits?author=824156793" title="Code">💻</a></td>
811
+ <td align="center" valign="top" width="16.66%"><a href="http://mikehenke.com/"><img src="https://avatars.githubusercontent.com/u/119844?v=4?s=100" width="100px;" alt="Mike Henke"/><br /><sub><b>Mike Henke</b></sub></a><br /><a href="https://github.com/alvinunreal/oh-my-opencode-slim/commits?author=mhenke" title="Code">💻</a></td>
812
+ <td align="center" valign="top" width="16.66%"><a href="https://github.com/imVinayPandya"><img src="https://avatars.githubusercontent.com/u/5011197?v=4?s=100" width="100px;" alt="Vinay Pandya"/><br /><sub><b>Vinay Pandya</b></sub></a><br /><a href="https://github.com/alvinunreal/oh-my-opencode-slim/commits?author=imVinayPandya" title="Code">💻</a></td>
813
+ <td align="center" valign="top" width="16.66%"><a href="https://github.com/s-shank"><img src="https://avatars.githubusercontent.com/u/241541918?v=4?s=100" width="100px;" alt="Shank"/><br /><sub><b>Shank</b></sub></a><br /><a href="https://github.com/alvinunreal/oh-my-opencode-slim/commits?author=s-shank" title="Code">💻</a></td>
814
+ <td align="center" valign="top" width="16.66%"><a href="https://rgutzen.github.io/"><img src="https://avatars.githubusercontent.com/u/16289604?v=4?s=100" width="100px;" alt="Robin Gutzen"/><br /><sub><b>Robin Gutzen</b></sub></a><br /><a href="https://github.com/alvinunreal/oh-my-opencode-slim/commits?author=rgutzen" title="Code">💻</a></td>
815
+ <td align="center" valign="top" width="16.66%"><a href="https://github.com/dragon-Elec"><img src="https://avatars.githubusercontent.com/u/197374270?v=4?s=100" width="100px;" alt="Yash"/><br /><sub><b>Yash</b></sub></a><br /><a href="https://github.com/alvinunreal/oh-my-opencode-slim/commits?author=dragon-Elec" title="Code">💻</a></td>
816
+ </tr>
817
+ <tr>
818
+ <td align="center" valign="top" width="16.66%"><a href="https://github.com/Jiajun0413"><img src="https://avatars.githubusercontent.com/u/184531967?v=4?s=100" width="100px;" alt="Liu Jiajun"/><br /><sub><b>Liu Jiajun</b></sub></a><br /><a href="https://github.com/alvinunreal/oh-my-opencode-slim/commits?author=Jiajun0413" title="Code">💻</a></td>
819
+ </tr>
785
820
  </tbody>
786
821
  </table>
787
822
 
package/README.zh-CN.md CHANGED
@@ -83,10 +83,35 @@ Install and configure oh-my-opencode-slim: https://raw.githubusercontent.com/alv
83
83
  bunx oh-my-opencode-slim@latest install
84
84
  ```
85
85
 
86
+ ### 从 Master 分支运行
87
+
88
+ 如果您想使用最新代码、方便修复问题,或进行本地开发和贡献,可以使用这种方式:
89
+
90
+ ```bash
91
+ git clone https://github.com/alvinunreal/oh-my-opencode-slim.git ~/repos/oh-my-opencode-slim
92
+ cd ~/repos/oh-my-opencode-slim
93
+ bun install
94
+ bun run build
95
+ bun dist/cli/index.js install
96
+ ```
97
+
98
+ 安装程序会把本地仓库路径加入 `~/.config/opencode/opencode.json` 的
99
+ `plugin` 数组,因此 OpenCode 会从该文件夹加载插件。之后要更新:
100
+
101
+ ```bash
102
+ cd ~/repos/oh-my-opencode-slim
103
+ git pull
104
+ bun install
105
+ bun run build
106
+ ```
107
+
86
108
  ### 入门指南
87
109
 
88
110
  安装程序会同时生成 OpenAI 和 OpenCode Go 预设,默认启用 OpenAI。
89
111
 
112
+ > [!TIP]
113
+ > 根据自己的工作流自由微调模型和智能体。默认预设只是起点;本插件的目标是为用户提供深度灵活性和可定制性。
114
+
90
115
  要在安装期间启用 OpenCode Go,请运行 `bunx oh-my-opencode-slim@latest install --preset=opencode-go`,或在安装后修改 `~/.config/opencode/oh-my-opencode-slim.json` 中的默认预设名称。
91
116
 
92
117
  然后:
@@ -109,7 +134,7 @@ bunx oh-my-opencode-slim@latest install
109
134
  > **建议**了解后台编排的工作原理。**[编排者提示词 (Orchestrator prompt)](https://github.com/alvinunreal/oh-my-opencode-slim/blob/master/src/agents/orchestrator.ts#L28)** 包含调度规则、专家路由逻辑,以及何时应把工作分配给后台智能体的阈值。您始终可以通过以下方式手动委派任务:`@智能体名称 <任务内容>`
110
135
 
111
136
  > [!TIP]
112
- > 由于后台智能体现在是默认工作流,**强烈建议**启用并配置 **[Multiplexer Integration](docs/multiplexer-integration.md)**。它会自动在专用的 Tmux 或 Zellij 窗格中打开每个智能体,让您在 Orchestrator 继续协调会话时,实时跟进各个专家智能体的工作。
137
+ > 由于后台智能体现在是默认工作流,**强烈建议**启用并配置 **[Multiplexer Integration](docs/multiplexer-integration.md)**。它会自动在专用的 Tmux、ZellijHerdr 窗格中打开每个智能体,让您在 Orchestrator 继续协调会话时,实时跟进各个专家智能体的工作。
113
138
 
114
139
  默认生成的配置包含 `openai` 和 `opencode-go` 两个预设:
115
140
 
@@ -119,20 +144,19 @@ bunx oh-my-opencode-slim@latest install
119
144
  "preset": "openai",
120
145
  "presets": {
121
146
  "openai": {
122
- "orchestrator": { "model": "openai/gpt-5.5", "variant": "medium", "skills": ["*"], "mcps": ["*", "!context7"] },
123
- "oracle": { "model": "openai/gpt-5.5", "variant": "high", "skills": ["simplify"], "mcps": [] },
124
- "librarian": { "model": "openai/gpt-5.4-mini", "variant": "low", "skills": [], "mcps": ["websearch", "context7", "gh_grep"] },
125
- "explorer": { "model": "openai/gpt-5.4-mini", "variant": "low", "skills": [], "mcps": [] },
126
- "designer": { "model": "openai/gpt-5.4-mini", "variant": "medium", "skills": [], "mcps": [] },
127
- "fixer": { "model": "openai/gpt-5.5", "variant": "low", "skills": [], "mcps": [] }
147
+ "orchestrator": { "model": "openai/gpt-5.6-terra", "variant": "medium", "skills": ["*"], "mcps": ["*", "!context7"] },
148
+ "oracle": { "model": "openai/gpt-5.6-sol", "variant": "high", "skills": ["simplify"], "mcps": [] },
149
+ "librarian": { "model": "openai/gpt-5.6-luna", "variant": "low", "skills": [], "mcps": ["websearch", "context7", "gh_grep"] },
150
+ "explorer": { "model": "openai/gpt-5.6-luna", "variant": "low", "skills": [], "mcps": [] },
151
+ "designer": { "model": "openai/gpt-5.6-luna", "variant": "medium", "skills": [], "mcps": [] },
152
+ "fixer": { "model": "openai/gpt-5.6-luna", "variant": "medium", "skills": [], "mcps": [] }
128
153
  },
129
154
  "opencode-go": {
130
- "orchestrator": { "model": "opencode-go/glm-5.1", "skills": [ "*" ], "mcps": [ "*", "!context7" ] },
131
- "oracle": { "model": "opencode-go/deepseek-v4-pro", "variant": "max", "skills": ["simplify"], "mcps": [] },
132
- "council": { "model": "opencode-go/deepseek-v4-pro", "variant": "high", "skills": [], "mcps": [] },
133
- "librarian": { "model": "opencode-go/minimax-m2.7", "skills": [], "mcps": [ "websearch", "context7", "gh_grep" ] },
134
- "explorer": { "model": "opencode-go/minimax-m2.7", "skills": [], "mcps": [] },
135
- "designer": { "model": "opencode-go/kimi-k2.6", "variant": "medium", "skills": [], "mcps": [] },
155
+ "orchestrator": { "model": "opencode-go/glm-5.2", "skills": [ "*" ], "mcps": [ "*", "!context7" ] },
156
+ "oracle": { "model": "opencode-go/qwen3.7-max", "variant": "max", "skills": ["simplify"], "mcps": [] },
157
+ "librarian": { "model": "opencode-go/deepseek-v4-flash", "skills": [], "mcps": [ "websearch", "context7", "gh_grep" ] },
158
+ "explorer": { "model": "opencode-go/deepseek-v4-flash", "skills": [], "mcps": [] },
159
+ "designer": { "model": "opencode-go/kimi-k2.7-code", "variant": "medium", "skills": [], "mcps": [] },
136
160
  "fixer": { "model": "opencode-go/deepseek-v4-flash", "variant": "high", "skills": [], "mcps": [] }
137
161
  }
138
162
  }
@@ -170,12 +194,12 @@ ping all agents
170
194
 
171
195
  V2 将 oh-my-opencode-slim 变成了以调度器为核心的多智能体工作流系统。Orchestrator 专注于规划、委派、结果整合与验证,而专家智能体在各自的工作通道中完成任务。
172
196
 
173
- - **[后台智能体](#后台智能体)** Orchestrator 现在会把专家作为后台任务派发,跟踪任务/会话 ID,等待完成事件,并在继续之前整合结果。
174
- - **[Companion](#companion)** 可选的浮动桌面窗口会显示当前活跃的智能体,包括并行运行的后台专家。
175
- - **[Deepwork](#deepwork)** 面向大型、多文件、高风险或分阶段编码工作的结构化工作流,使用持久化计划文件和 Oracle 评审关卡。
176
- - **[Reflect](#reflect)** 回顾重复出现的工作模式,并建议可复用的 skill、智能体、命令、配置规则、提示词规则或项目 playbook。
177
- - **[Worktrees](#worktrees)** 将 Git worktree 作为隔离编码通道管理,并为复杂、高风险或并行任务提供安全协议。
178
- - **[oh-my-opencode-slim Skill](#oh-my-opencode-slim-skill)** 随包提供的配置技能,可安全调优模型、提示词、自定义智能体、MCP 访问、预设和插件行为。
197
+ - **[后台智能体](#后台智能体)** - Orchestrator 现在会把专家作为后台任务派发,跟踪任务/会话 ID,等待完成事件,并在继续之前整合结果。
198
+ - **[Companion](#companion)** - 可选的浮动桌面窗口会显示当前活跃的智能体,包括并行运行的后台专家。
199
+ - **[Deepwork](#deepwork)** - 面向大型、多文件、高风险或分阶段编码工作的结构化工作流,使用持久化计划文件和 Oracle 评审关卡。
200
+ - **[Reflect](#reflect)** - 回顾重复出现的工作模式,并建议可复用的 skill、智能体、命令、配置规则、提示词规则或项目 playbook。
201
+ - **[Worktrees](#worktrees)** - 将 Git worktree 作为隔离编码通道管理,并为复杂、高风险或并行任务提供安全协议。
202
+ - **[oh-my-opencode-slim Skill](#oh-my-opencode-slim-skill)** - 随包提供的配置技能,可安全调优模型、提示词、自定义智能体、MCP 访问、预设和插件行为。
179
203
 
180
204
  #### 后台智能体
181
205
 
@@ -192,7 +216,7 @@ V2 将后台专家作为默认心智模型:Orchestrator 规划工作图,启
192
216
  <p><i>左下角视觉伴侣。</i></p>
193
217
  </div>
194
218
 
195
- 交互式安装期间,安装器会询问是否启用 Companion,并默认选择 `yes`。自动化安装可显式启用:
219
+ 交互式安装期间,安装器会询问是否启用 Companion,并默认选择 `no`。自动化安装可显式启用:
196
220
 
197
221
  ```bash
198
222
  bunx oh-my-opencode-slim@latest install --companion=yes
@@ -264,7 +288,7 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
264
288
  <br><sub><i>在复杂性的深渊中锻造而成。</i></sub>
265
289
  </td>
266
290
  <td width="70%" valign="top">
267
- 当第一个代码库在自身的复杂性下崩溃时,Orchestrator 诞生了。神明与凡人都无法承担责任——因此 Orchestrator 从虚无中显现,从混沌中建立秩序。它确定实现任何目标的最优路径,平衡速度、质量和成本。它引导整个团队,为每项任务召唤合适的专家,并通过委派任务以获得最佳成果。
291
+ 当第一个代码库在自身的复杂性下崩溃时,Orchestrator 诞生了。神明与凡人都无法承担责任--因此 Orchestrator 从虚无中显现,从混沌中建立秩序。它确定实现任何目标的最优路径,平衡速度、质量和成本。它引导整个团队,为每项任务召唤合适的专家,并通过委派任务以获得最佳成果。
268
292
  </td>
269
293
  </tr>
270
294
  <tr>
@@ -279,12 +303,12 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
279
303
  </tr>
280
304
  <tr>
281
305
  <td colspan="2">
282
- <b>默认模型:</b> <code>openai/gpt-5.5 (medium)</code>
306
+ <b>默认模型:</b> <code>openai/gpt-5.6-terra (medium)</code>
283
307
  </td>
284
308
  </tr>
285
309
  <tr>
286
310
  <td colspan="2">
287
- <b>推荐模型:</b> <code>openai/gpt-5.5 (medium)</code> <code>anthropic/claude-opus-4.6</code>
311
+ <b>推荐模型:</b> <code>openai/gpt-5.6-terra (medium)</code> <code>anthropic/claude-opus-4.6</code>
288
312
  </td>
289
313
  </tr>
290
314
  <tr>
@@ -320,7 +344,7 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
320
344
  </tr>
321
345
  <tr>
322
346
  <td colspan="2">
323
- <b>默认模型:</b> <code>openai/gpt-5.4-mini</code>
347
+ <b>默认模型:</b> <code>openai/gpt-5.6-luna</code>
324
348
  </td>
325
349
  </tr>
326
350
  <tr>
@@ -346,7 +370,7 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
346
370
  <br><sub><i>十字路口的声音。</i></sub>
347
371
  </td>
348
372
  <td width="70%" valign="top">
349
- Oracle 伫立在每个架构决策的十字路口。它走过每一条路,见过每一个终点,了解前方潜伏的所有陷阱。当您站在重大重构的悬崖边时,它是向您耳语哪条路通往毁灭、哪条路通往荣耀的声音。它不会替您做选择——但它会照亮道路,让您明智地抉择。
373
+ Oracle 伫立在每个架构决策的十字路口。它走过每一条路,见过每一个终点,了解前方潜伏的所有陷阱。当您站在重大重构的悬崖边时,它是向您耳语哪条路通往毁灭、哪条路通往荣耀的声音。它不会替您做选择--但它会照亮道路,让您明智地抉择。
350
374
  </td>
351
375
  </tr>
352
376
  <tr>
@@ -361,12 +385,12 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
361
385
  </tr>
362
386
  <tr>
363
387
  <td colspan="2">
364
- <b>默认模型:</b> <code>openai/gpt-5.5 (high)</code>
388
+ <b>默认模型:</b> <code>openai/gpt-5.6-sol (high)</code>
365
389
  </td>
366
390
  </tr>
367
391
  <tr>
368
392
  <td colspan="2">
369
- <b>推荐模型:</b> <code>openai/gpt-5.5 (high)</code> <code>google/gemini-3.1-pro-preview (high)</code>
393
+ <b>推荐模型:</b> <code>openai/gpt-5.6-sol (high)</code> <code>google/gemini-3.1-pro-preview (high)</code>
370
394
  </td>
371
395
  </tr>
372
396
  <tr>
@@ -410,7 +434,7 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
410
434
  </tr>
411
435
  <tr>
412
436
  <td colspan="2">
413
- <b>默认设置:</b> <code>配置驱动</code> 议员(councillors)来自 <code>council.presets</code>,而 Council 智能体本身的模型来自您的常规 <code>council</code> 智能体配置。
437
+ <b>默认设置:</b> <code>配置驱动</code> - 议员(councillors)来自 <code>council.presets</code>,而 Council 智能体本身的模型来自您的常规 <code>council</code> 智能体配置。
414
438
  </td>
415
439
  </tr>
416
440
  <tr>
@@ -436,7 +460,7 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
436
460
  <br><sub><i>理解的编织者。</i></sub>
437
461
  </td>
438
462
  <td width="70%" valign="top">
439
- 当人类意识到没有任何单一思想能容纳所有知识时,Librarian 诞生了。它是一位编织者,将零散的信息线索连接成一幅理解的织锦。它穿梭于无限的人类知识图书馆中,从各个角落收集洞察,并将它们绑定为超越单纯事实的答案。它所返回的不是碎片信息——而是深层的理解。
463
+ 当人类意识到没有任何单一思想能容纳所有知识时,Librarian 诞生了。它是一位编织者,将零散的信息线索连接成一幅理解的织锦。它穿梭于无限的人类知识图书馆中,从各个角落收集洞察,并将它们绑定为超越单纯事实的答案。它所返回的不是碎片信息--而是深层的理解。
440
464
  </td>
441
465
  </tr>
442
466
  <tr>
@@ -451,7 +475,7 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
451
475
  </tr>
452
476
  <tr>
453
477
  <td colspan="2">
454
- <b>默认模型:</b> <code>openai/gpt-5.4-mini</code>
478
+ <b>默认模型:</b> <code>openai/gpt-5.6-luna</code>
455
479
  </td>
456
480
  </tr>
457
481
  <tr>
@@ -477,7 +501,7 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
477
501
  <br><sub><i>美是不可或缺的。</i></sub>
478
502
  </td>
479
503
  <td width="70%" valign="top">
480
- 在这个经常遗忘美学价值的世界里,Designer 是美的不朽守护者。它见证了数以百万计的界面兴衰更替,它记得哪些被铭记,哪些被遗忘。它背负着神圣的使命,确保每一个像素都有其用途,每一个动画都在讲述故事,每一次交互都令人愉悦。美不是可选的——而是不可或缺的。
504
+ 在这个经常遗忘美学价值的世界里,Designer 是美的不朽守护者。它见证了数以百万计的界面兴衰更替,它记得哪些被铭记,哪些被遗忘。它背负着神圣的使命,确保每一个像素都有其用途,每一个动画都在讲述故事,每一次交互都令人愉悦。美不是可选的--而是不可或缺的。
481
505
  </td>
482
506
  </tr>
483
507
  <tr>
@@ -492,7 +516,7 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
492
516
  </tr>
493
517
  <tr>
494
518
  <td colspan="2">
495
- <b>默认模型:</b> <code>openai/gpt-5.4-mini</code>
519
+ <b>默认模型:</b> <code>openai/gpt-5.6-luna</code>
496
520
  </td>
497
521
  </tr>
498
522
  <tr>
@@ -518,7 +542,7 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
518
542
  <br><sub><i>愿景与现实之间的最后一步。</i></sub>
519
543
  </td>
520
544
  <td width="70%" valign="top">
521
- Fixer 是曾经构建数字世界基石的建造者血脉的最后传人。当规划和辩论的时代开启时,它们依然坚守——它们是真正动手建造的人。它们掌握着如何将想法转化为实物、如何将规范转化为具体实现的古老知识。它们是愿景与现实之间的最后一步。
545
+ Fixer 是曾经构建数字世界基石的建造者血脉的最后传人。当规划和辩论的时代开启时,它们依然坚守--它们是真正动手建造的人。它们掌握着如何将想法转化为实物、如何将规范转化为具体实现的古老知识。它们是愿景与现实之间的最后一步。
522
546
  </td>
523
547
  </tr>
524
548
  <tr>
@@ -533,12 +557,12 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
533
557
  </tr>
534
558
  <tr>
535
559
  <td colspan="2">
536
- <b>默认模型:</b> <code>openai/gpt-5.5 (low)</code>
560
+ <b>默认模型:</b> <code>openai/gpt-5.6-luna (medium)</code>
537
561
  </td>
538
562
  </tr>
539
563
  <tr>
540
564
  <td colspan="2">
541
- <b>推荐模型:</b> <code>openai/gpt-5.5 (low)</code>
565
+ <b>推荐模型:</b> <code>openai/gpt-5.6-luna (medium)</code>
542
566
  </td>
543
567
  </tr>
544
568
  <tr>
@@ -565,11 +589,11 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
565
589
  </td>
566
590
  <td width="70%" valign="top">
567
591
 
568
- **只读视觉分析** —— 解读图像、屏幕截图、PDF 和图表。将结构化的观察结果返回给 Orchestrator,而无需将原始文件字节加载到主上下文窗口中。
592
+ **只读视觉分析** -- 解读图像、屏幕截图、PDF 和图表。将结构化的观察结果返回给 Orchestrator,而无需将原始文件字节加载到主上下文窗口中。
569
593
 
570
594
  - 图像、屏幕截图、图表 → `read` 工具(原生图像支持)
571
595
  - PDF 和二进制文档 → `read` 工具(文本 + 结构提取)
572
- - **默认禁用** —— 通过设置 `"disabled_agents": []` 和配置具有视觉能力的模型来启用;若使用 `--preset=opencode-go` 预设安装,将自动使用 `opencode-go/kimi-k2.6` 启用它。
596
+ - **默认禁用** -- 通过设置 `"disabled_agents": []` 和配置具有视觉能力的模型来启用;若使用 `--preset=opencode-go` 预设安装,将自动使用 `opencode-go/kimi-k2.6` 启用它。
573
597
 
574
598
  </td>
575
599
  </tr>
@@ -580,7 +604,7 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
580
604
  </tr>
581
605
  <tr>
582
606
  <td colspan="2">
583
- <b>默认模型:</b> <code>openai/gpt-5.4-mini</code> <i>需配置具有视觉能力的模型以启用</i>
607
+ <b>默认模型:</b> <code>openai/gpt-5.6-luna</code> - <i>需配置具有视觉能力的模型以启用</i>
584
608
  </td>
585
609
  </tr>
586
610
  <tr>
@@ -605,7 +629,7 @@ Worktrees 将 Git worktree 作为安全、隔离的编码通道管理,默认
605
629
  | **[Council](docs/council.md)** | 使用 `@council` 并行运行多个模型并合成单一答案 |
606
630
  | **[自定义智能体](docs/configuration.md#custom-agents)** | 使用自定义提示词、模型、MCP 访问和 Orchestrator 委派规则定义自己的专家 |
607
631
  | **[ACP Agents](docs/acp-agents.md)** | 将 Claude Code ACP 或 Gemini ACP 等外部 ACP 兼容智能体连接为可委派子智能体 |
608
- | **[多路复用器集成](docs/multiplexer-integration.md)** | 在 Tmux 或 Zellij 窗格中实时观看智能体工作 |
632
+ | **[多路复用器集成](docs/multiplexer-integration.md)** | 在 Tmux、ZellijHerdr 窗格中实时观看智能体工作 |
609
633
  | **[Codemap](docs/codemap.md)** | 生成层级代码地图,更快理解大型代码库 |
610
634
  | **[Clonedeps](docs/clonedeps.md)** | 将选定的依赖源码克隆到被忽略的本地工作区中以供检查 |
611
635
  | **[Worktrees](docs/worktrees.md)** | 使用 `.slim/worktrees/` 通道进行隔离的并行或高风险编码工作 |
@@ -3,7 +3,7 @@ export declare function createCouncilAgent(model: string, customPrompt?: string,
3
3
  /**
4
4
  * Build the prompt for a specific councillor session.
5
5
  *
6
- * Returns the raw user prompt the agent factory (councillor.ts) provides
6
+ * Returns the raw user prompt - the agent factory (councillor.ts) provides
7
7
  * the system prompt with tool-aware instructions. No duplication.
8
8
  *
9
9
  * If a per-councillor prompt override is provided, it is prepended as
@@ -11,15 +11,20 @@ export declare function isSubagent(name: string): name is SubagentName;
11
11
  * @param config - Optional plugin configuration with agent overrides
12
12
  * @returns Array of agent definitions (orchestrator first, then subagents)
13
13
  */
14
- export declare function createAgents(config?: PluginConfig): AgentDefinition[];
14
+ export declare function createAgents(config?: PluginConfig, options?: {
15
+ projectDirectory?: string;
16
+ }): AgentDefinition[];
15
17
  /**
16
18
  * Get agent configurations formatted for the OpenCode SDK.
17
19
  * Converts agent definitions to SDK config format and applies classification metadata.
18
20
  *
19
21
  * @param config - Optional plugin configuration with agent overrides
22
+ * @param options - Optional options including projectDirectory
20
23
  * @returns Record mapping agent names to their SDK configurations
21
24
  */
22
- export declare function getAgentConfigs(config?: PluginConfig): Record<string, SDKAgentConfig>;
25
+ export declare function getAgentConfigs(config?: PluginConfig, options?: {
26
+ projectDirectory?: string;
27
+ }): Record<string, SDKAgentConfig>;
23
28
  /**
24
29
  * Get the set of disabled agent names from config, applying protection rules.
25
30
  */
@@ -13,7 +13,7 @@ export interface AgentDefinition {
13
13
  /**
14
14
  * Resolve agent prompt from base/custom/append inputs.
15
15
  * If customPrompt is provided, it replaces the base entirely.
16
- * Otherwise, customAppendPrompt is appended to the base.
16
+ * If customAppendPrompt is provided, it appends after whichever base won.
17
17
  */
18
18
  export declare function resolvePrompt(base: string, customPrompt?: string, customAppendPrompt?: string): string;
19
19
  /**
@@ -0,0 +1,18 @@
1
+ /**
2
+ * A custom skill bundled in this repository.
3
+ * Unlike npx-installed skills, these are copied from src/skills/ to the OpenCode skills directory
4
+ */
5
+ export interface CustomSkill {
6
+ /** Skill name (folder name) */
7
+ name: string;
8
+ /** Human-readable description */
9
+ description: string;
10
+ /** List of agents that should auto-allow this skill */
11
+ allowedAgents: string[];
12
+ /** Source path in this repo (relative to project root) */
13
+ sourcePath: string;
14
+ }
15
+ /**
16
+ * Registry of custom skills bundled in this repository.
17
+ */
18
+ export declare const CUSTOM_SKILLS: CustomSkill[];