oh-my-opencode-slim 0.5.6 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +369 -169
- package/dist/cli/custom-skills.d.ts +29 -0
- package/dist/cli/index.js +205 -243
- package/dist/cli/skills.d.ts +35 -0
- package/dist/cli/types.d.ts +3 -0
- package/dist/config/agent-mcps.d.ts +15 -0
- package/dist/config/constants.d.ts +1 -0
- package/dist/config/index.d.ts +1 -0
- package/dist/config/utils.d.ts +10 -0
- package/dist/index.js +28572 -39832
- package/dist/tools/cartography/index.d.ts +6 -0
- package/dist/tools/cartography/tool.d.ts +2 -0
- package/dist/tools/index.d.ts +0 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
<img src="img/team.png" alt="The Pantheon - Agent Team" width="800">
|
|
8
8
|
|
|
9
|
-
*Six divine beings
|
|
9
|
+
*Six divine beings emerged from the dawn of code, each an immortal master of their craft await your command to forge order from chaos and build what was once thought impossible.*
|
|
10
10
|
|
|
11
11
|
</div>
|
|
12
12
|
|
|
@@ -20,25 +20,22 @@
|
|
|
20
20
|
- [For Humans](#for-humans)
|
|
21
21
|
- [For LLM Agents](#for-llm-agents)
|
|
22
22
|
- [🏛️ Meet the Pantheon](#️-meet-the-pantheon)
|
|
23
|
-
- [Orchestrator: The Embodiment Of Order](#orchestrator-the-embodiment-of-order)
|
|
24
|
-
- [Explorer: The Eternal Wanderer](#explorer-the-eternal-wanderer)
|
|
25
|
-
- [Oracle: The Guardian of Paths](#oracle-the-guardian-of-paths)
|
|
26
|
-
- [Librarian: The Weaver of Knowledge](#librarian-the-weaver-of-knowledge)
|
|
27
|
-
- [Designer: The Guardian of Aesthetics](#designer-the-guardian-of-aesthetics)
|
|
28
|
-
- [Fixer: The Last Builder](#fixer-the-last-builder)
|
|
23
|
+
- [01. Orchestrator: The Embodiment Of Order](#01-orchestrator-the-embodiment-of-order)
|
|
24
|
+
- [02. Explorer: The Eternal Wanderer](#02-explorer-the-eternal-wanderer)
|
|
25
|
+
- [03. Oracle: The Guardian of Paths](#03-oracle-the-guardian-of-paths)
|
|
26
|
+
- [04. Librarian: The Weaver of Knowledge](#04-librarian-the-weaver-of-knowledge)
|
|
27
|
+
- [05. Designer: The Guardian of Aesthetics](#05-designer-the-guardian-of-aesthetics)
|
|
28
|
+
- [06. Fixer: The Last Builder](#06-fixer-the-last-builder)
|
|
29
29
|
- [🎚️ Presets](#️-presets)
|
|
30
30
|
- [Switching Presets](#switching-presets)
|
|
31
31
|
- [OpenAI Preset](#openai-preset)
|
|
32
32
|
- [Antigravity via CLIProxy Preset](#antigravity-via-cliproxy-preset)
|
|
33
33
|
- [Author's Preset](#authors-preset)
|
|
34
|
-
- [Creating Custom Presets](#creating-custom-presets)
|
|
35
|
-
- [Option Reference](#option-reference)
|
|
36
34
|
- [🧩 Skills](#-skills)
|
|
37
|
-
- [Available Skills](#available-skills)
|
|
38
|
-
- [Default Skill Assignments](#default-skill-assignments)
|
|
39
|
-
- [Configuration & Syntax](#configuration--syntax)
|
|
40
35
|
- [Simplify](#simplify)
|
|
41
|
-
- [
|
|
36
|
+
- [Agent Browser](#agent-browser)
|
|
37
|
+
- [Cartography](#cartography)
|
|
38
|
+
- [Skills Assignment](#skills-assignment)
|
|
42
39
|
- [🔌 MCP Servers](#-mcp-servers)
|
|
43
40
|
- [MCP Permissions](#mcp-permissions)
|
|
44
41
|
- [Configuration & Syntax](#configuration--syntax-1)
|
|
@@ -65,13 +62,13 @@
|
|
|
65
62
|
Run the interactive installer:
|
|
66
63
|
|
|
67
64
|
```bash
|
|
68
|
-
bunx oh-my-opencode-slim install
|
|
65
|
+
bunx oh-my-opencode-slim@latest install
|
|
69
66
|
```
|
|
70
67
|
|
|
71
68
|
Or use non-interactive mode:
|
|
72
69
|
|
|
73
70
|
```bash
|
|
74
|
-
bunx oh-my-opencode-slim install --no-tui --antigravity=yes --openai=yes --tmux=no
|
|
71
|
+
bunx oh-my-opencode-slim@latest install --no-tui --antigravity=yes --openai=yes --tmux=no
|
|
75
72
|
```
|
|
76
73
|
|
|
77
74
|
After installation, authenticate with your providers:
|
|
@@ -135,19 +132,19 @@ Help the user understand the tradeoffs:
|
|
|
135
132
|
Based on answers, run:
|
|
136
133
|
|
|
137
134
|
```bash
|
|
138
|
-
bunx oh-my-opencode-slim install --no-tui --antigravity=<yes|no> --openai=<yes|no>
|
|
135
|
+
bunx oh-my-opencode-slim@latest install --no-tui --antigravity=<yes|no> --openai=<yes|no>
|
|
139
136
|
```
|
|
140
137
|
|
|
141
138
|
**Examples:**
|
|
142
139
|
```bash
|
|
143
140
|
# Antigravity + OpenAI
|
|
144
|
-
bunx oh-my-opencode-slim install --no-tui --antigravity=yes --openai=yes --tmux=no
|
|
141
|
+
bunx oh-my-opencode-slim@latest install --no-tui --antigravity=yes --openai=yes --tmux=no
|
|
145
142
|
|
|
146
143
|
# OpenAI only
|
|
147
|
-
bunx oh-my-opencode-slim install --no-tui --antigravity=no --openai=yes --tmux=no
|
|
144
|
+
bunx oh-my-opencode-slim@latest install --no-tui --antigravity=no --openai=yes --tmux=no
|
|
148
145
|
|
|
149
146
|
# No providers (Zen free models only)
|
|
150
|
-
bunx oh-my-opencode-slim install --no-tui --antigravity=no --openai=no --tmux=no
|
|
147
|
+
bunx oh-my-opencode-slim@latest install --no-tui --antigravity=no --openai=no --tmux=no
|
|
151
148
|
```
|
|
152
149
|
|
|
153
150
|
The installer automatically:
|
|
@@ -180,11 +177,11 @@ curl -fsSL https://raw.githubusercontent.com/brokechubb/cliproxyapi-installer/re
|
|
|
180
177
|
**Authenticate with Antigravity:**
|
|
181
178
|
```bash
|
|
182
179
|
./cli-proxy-api --antigravity-login
|
|
183
|
-
# Add --no-browser to print login URL instead of opening browser
|
|
184
|
-
# The local OAuth callback uses port 51121
|
|
185
180
|
```
|
|
186
181
|
|
|
187
182
|
**For OpenAI (if enabled):**
|
|
183
|
+
Ask user to run the following command.
|
|
184
|
+
Don't run it yourself, it requires user interaction.
|
|
188
185
|
```bash
|
|
189
186
|
opencode auth login
|
|
190
187
|
# Select your provider and complete OAuth flow
|
|
@@ -196,7 +193,7 @@ opencode auth login
|
|
|
196
193
|
|
|
197
194
|
If the installer fails, check the expected config format:
|
|
198
195
|
```bash
|
|
199
|
-
bunx oh-my-opencode-slim install --help
|
|
196
|
+
bunx oh-my-opencode-slim@latest install --help
|
|
200
197
|
```
|
|
201
198
|
|
|
202
199
|
Then manually create the config files at:
|
|
@@ -208,99 +205,285 @@ Then manually create the config files at:
|
|
|
208
205
|
|
|
209
206
|
## 🏛️ Meet the Pantheon
|
|
210
207
|
|
|
211
|
-
### Orchestrator: The Embodiment Of Order
|
|
212
|
-
|
|
213
|
-
<
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
208
|
+
### 01. Orchestrator: The Embodiment Of Order
|
|
209
|
+
|
|
210
|
+
<table>
|
|
211
|
+
<tr>
|
|
212
|
+
<td width="30%" align="center" valign="top">
|
|
213
|
+
<img src="img/orchestrator.png" width="240" style="border-radius: 10px;">
|
|
214
|
+
<br><sub><i>Forged in the void of complexity.</i></sub>
|
|
215
|
+
</td>
|
|
216
|
+
<td width="70%" valign="top">
|
|
217
|
+
The Orchestrator was born when the first codebase collapsed under its own complexity. Neither god nor mortal would claim responsibility - so The Orchestrator emerged from the void, forging order from chaos. It determines the optimal path to any goal, balancing speed, quality, and cost. It guides the team, summoning the right specialist for each task and delegating to achieve the best possible outcome.
|
|
218
|
+
</td>
|
|
219
|
+
</tr>
|
|
220
|
+
<tr>
|
|
221
|
+
<td colspan="2">
|
|
222
|
+
<b>Role:</b> <code>Master delegator and strategic coordinator</code>
|
|
223
|
+
</td>
|
|
224
|
+
</tr>
|
|
225
|
+
<tr>
|
|
226
|
+
<td colspan="2">
|
|
227
|
+
<b>Prompt:</b> <a href="src/agents/orchestrator.ts"><code>orchestrator.ts</code></a>
|
|
228
|
+
</td>
|
|
229
|
+
</tr>
|
|
230
|
+
<tr>
|
|
231
|
+
<td colspan="2">
|
|
232
|
+
<b>Recommended Models:</b> <code>cliproxy/gemini-claude-opus-4-5-thinking</code> <code>openai/gpt-5.2-codex</code>
|
|
233
|
+
</td>
|
|
234
|
+
</tr>
|
|
235
|
+
<tr>
|
|
236
|
+
<td colspan="2">
|
|
237
|
+
<b>MCPs:</b> <code>websearch</code>
|
|
238
|
+
</td>
|
|
239
|
+
</tr>
|
|
240
|
+
<tr>
|
|
241
|
+
<td colspan="2">
|
|
242
|
+
<b>Skills:</b> <code>simplify</code> <code>*</code>
|
|
243
|
+
</td>
|
|
244
|
+
</tr>
|
|
245
|
+
<tr>
|
|
246
|
+
<td colspan="2">
|
|
247
|
+
<b>Capabilities:</b><br>
|
|
248
|
+
Write and execute code, orchestrate multi-agent workflows, parse the unspoken from the spoken, summon specialists mid-battle. <i>Shape reality directly - and assign realms to others when the universe grows too vast.</i>
|
|
249
|
+
</td>
|
|
250
|
+
</tr>
|
|
251
|
+
</table>
|
|
224
252
|
|
|
225
253
|
---
|
|
226
254
|
|
|
227
|
-
### Explorer: The Eternal Wanderer
|
|
228
|
-
|
|
229
|
-
<
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
255
|
+
### 02. Explorer: The Eternal Wanderer
|
|
256
|
+
|
|
257
|
+
<table>
|
|
258
|
+
<tr>
|
|
259
|
+
<td width="30%" align="center" valign="top">
|
|
260
|
+
<img src="img/explorer.png" width="240" style="border-radius: 10px;">
|
|
261
|
+
<br><sub><i>The wind that carries knowledge.</i></sub>
|
|
262
|
+
</td>
|
|
263
|
+
<td width="70%" valign="top">
|
|
264
|
+
The Explorer is an immortal wanderer who has traversed the corridors of a million codebases since the dawn of programming. Cursed with the gift of eternal curiosity, they cannot rest until every file is known, every pattern understood, every secret revealed. Legends say they once searched the entire internet in a single heartbeat. They are the wind that carries knowledge, the eyes that see all, the spirit that never sleeps.
|
|
265
|
+
</td>
|
|
266
|
+
</tr>
|
|
267
|
+
<tr>
|
|
268
|
+
<td colspan="2">
|
|
269
|
+
<b>Role:</b> <code>Codebase reconnaissance</code>
|
|
270
|
+
</td>
|
|
271
|
+
</tr>
|
|
272
|
+
<tr>
|
|
273
|
+
<td colspan="2">
|
|
274
|
+
<b>Prompt:</b> <a href="src/agents/explorer.ts"><code>explorer.ts</code></a>
|
|
275
|
+
</td>
|
|
276
|
+
</tr>
|
|
277
|
+
<tr>
|
|
278
|
+
<td colspan="2">
|
|
279
|
+
<b>Recommended Models:</b> <code>cerebras/zai-glm-4.7</code> <code>google/gemini-3-flash</code> <code>openai/gpt-5.1-codex-mini</code>
|
|
280
|
+
</td>
|
|
281
|
+
</tr>
|
|
282
|
+
<tr>
|
|
283
|
+
<td colspan="2">
|
|
284
|
+
<b>MCPs:</b> none
|
|
285
|
+
</td>
|
|
286
|
+
</tr>
|
|
287
|
+
<tr>
|
|
288
|
+
<td colspan="2">
|
|
289
|
+
<b>Skills:</b> none
|
|
290
|
+
</td>
|
|
291
|
+
</tr>
|
|
292
|
+
<tr>
|
|
293
|
+
<td colspan="2">
|
|
294
|
+
<b>Capabilities:</b><br>
|
|
295
|
+
Regex search, AST pattern matching, file discovery, parallel exploration. <i>Read-only: they chart the territory; others conquer it.</i>
|
|
296
|
+
</td>
|
|
297
|
+
</tr>
|
|
298
|
+
</table>
|
|
240
299
|
|
|
241
300
|
---
|
|
242
301
|
|
|
243
|
-
### Oracle: The Guardian of Paths
|
|
244
|
-
|
|
245
|
-
<
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
302
|
+
### 03. Oracle: The Guardian of Paths
|
|
303
|
+
|
|
304
|
+
<table>
|
|
305
|
+
<tr>
|
|
306
|
+
<td width="30%" align="center" valign="top">
|
|
307
|
+
<img src="img/oracle.png" width="240" style="border-radius: 10px;">
|
|
308
|
+
<br><sub><i>The voice at the crossroads.</i></sub>
|
|
309
|
+
</td>
|
|
310
|
+
<td width="70%" valign="top">
|
|
311
|
+
The Oracle stands at the crossroads of every architectural decision. They have walked every road, seen every destination, know every trap that lies ahead. When you stand at the precipice of a major refactor, they are the voice that whispers which way leads to ruin and which way leads to glory. They don't choose for you - they illuminate the path so you can choose wisely.
|
|
312
|
+
</td>
|
|
313
|
+
</tr>
|
|
314
|
+
<tr>
|
|
315
|
+
<td colspan="2">
|
|
316
|
+
<b>Role:</b> <code>Strategic advisor and debugger of last resort</code>
|
|
317
|
+
</td>
|
|
318
|
+
</tr>
|
|
319
|
+
<tr>
|
|
320
|
+
<td colspan="2">
|
|
321
|
+
<b>Prompt:</b> <a href="src/agents/oracle.ts"><code>oracle.ts</code></a>
|
|
322
|
+
</td>
|
|
323
|
+
</tr>
|
|
324
|
+
<tr>
|
|
325
|
+
<td colspan="2">
|
|
326
|
+
<b>Recommended Models:</b> <code>openai/gpt-5.2-codex</code> <code>cliproxy/gemini-3-pro-high</code>
|
|
327
|
+
</td>
|
|
328
|
+
</tr>
|
|
329
|
+
<tr>
|
|
330
|
+
<td colspan="2">
|
|
331
|
+
<b>MCPs:</b> none
|
|
332
|
+
</td>
|
|
333
|
+
</tr>
|
|
334
|
+
<tr>
|
|
335
|
+
<td colspan="2">
|
|
336
|
+
<b>Skills:</b> none
|
|
337
|
+
</td>
|
|
338
|
+
</tr>
|
|
339
|
+
<tr>
|
|
340
|
+
<td colspan="2">
|
|
341
|
+
<b>Capabilities:</b><br>
|
|
342
|
+
Root cause analysis, architecture review, debugging guidance, tradeoff analysis. <i>Read-only: Oracles advise; they don't intervene.</i>
|
|
343
|
+
</td>
|
|
344
|
+
</tr>
|
|
345
|
+
</table>
|
|
256
346
|
|
|
257
347
|
---
|
|
258
348
|
|
|
259
|
-
### Librarian: The Weaver of Knowledge
|
|
260
|
-
|
|
261
|
-
<
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
349
|
+
### 04. Librarian: The Weaver of Knowledge
|
|
350
|
+
|
|
351
|
+
<table>
|
|
352
|
+
<tr>
|
|
353
|
+
<td width="30%" align="center" valign="top">
|
|
354
|
+
<img src="img/librarian.png" width="240" style="border-radius: 10px;">
|
|
355
|
+
<br><sub><i>The weaver of understanding.</i></sub>
|
|
356
|
+
</td>
|
|
357
|
+
<td width="70%" valign="top">
|
|
358
|
+
The Librarian was forged when humanity realized that no single mind could hold all knowledge. They are the weaver who connects disparate threads of information into a tapestry of understanding. They traverse the infinite library of human knowledge, gathering insights from every corner and binding them into answers that transcend mere facts. What they return is not information - it's understanding.
|
|
359
|
+
</td>
|
|
360
|
+
</tr>
|
|
361
|
+
<tr>
|
|
362
|
+
<td colspan="2">
|
|
363
|
+
<b>Role:</b> <code>External knowledge retrieval</code>
|
|
364
|
+
</td>
|
|
365
|
+
</tr>
|
|
366
|
+
<tr>
|
|
367
|
+
<td colspan="2">
|
|
368
|
+
<b>Prompt:</b> <a href="src/agents/librarian.ts"><code>librarian.ts</code></a>
|
|
369
|
+
</td>
|
|
370
|
+
</tr>
|
|
371
|
+
<tr>
|
|
372
|
+
<td colspan="2">
|
|
373
|
+
<b>Recommended Models:</b> <code>google/gemini-3-flash</code> <code>openai/gpt-5.1-codex-mini</code>
|
|
374
|
+
</td>
|
|
375
|
+
</tr>
|
|
376
|
+
<tr>
|
|
377
|
+
<td colspan="2">
|
|
378
|
+
<b>MCPs:</b> <code>websearch</code> <code>context7</code> <code>grep_app</code>
|
|
379
|
+
</td>
|
|
380
|
+
</tr>
|
|
381
|
+
<tr>
|
|
382
|
+
<td colspan="2">
|
|
383
|
+
<b>Skills:</b> none
|
|
384
|
+
</td>
|
|
385
|
+
</tr>
|
|
386
|
+
<tr>
|
|
387
|
+
<td colspan="2">
|
|
388
|
+
<b>Capabilities:</b><br>
|
|
389
|
+
Documentation lookup, GitHub code search, library research, best practice retrieval. <i>Read-only: they fetch wisdom; implementation is for others.</i>
|
|
390
|
+
</td>
|
|
391
|
+
</tr>
|
|
392
|
+
</table>
|
|
272
393
|
|
|
273
394
|
---
|
|
274
395
|
|
|
275
|
-
### Designer: The Guardian of Aesthetics
|
|
276
|
-
|
|
277
|
-
<
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
396
|
+
### 05. Designer: The Guardian of Aesthetics
|
|
397
|
+
|
|
398
|
+
<table>
|
|
399
|
+
<tr>
|
|
400
|
+
<td width="30%" align="center" valign="top">
|
|
401
|
+
<img src="img/designer.png" width="240" style="border-radius: 10px;">
|
|
402
|
+
<br><sub><i>Beauty is essential.</i></sub>
|
|
403
|
+
</td>
|
|
404
|
+
<td width="70%" valign="top">
|
|
405
|
+
The Designer is an immortal guardian of beauty in a world that often forgets it matters. They have seen a million interfaces rise and fall, and they remember which ones were remembered and which were forgotten. They carry the sacred duty to ensure that every pixel serves a purpose, every animation tells a story, every interaction delights. Beauty is not optional - it's essential.
|
|
406
|
+
</td>
|
|
407
|
+
</tr>
|
|
408
|
+
<tr>
|
|
409
|
+
<td colspan="2">
|
|
410
|
+
<b>Role:</b> <code>UI/UX implementation and visual excellence</code>
|
|
411
|
+
</td>
|
|
412
|
+
</tr>
|
|
413
|
+
<tr>
|
|
414
|
+
<td colspan="2">
|
|
415
|
+
<b>Prompt:</b> <a href="src/agents/designer.ts"><code>designer.ts</code></a>
|
|
416
|
+
</td>
|
|
417
|
+
</tr>
|
|
418
|
+
<tr>
|
|
419
|
+
<td colspan="2">
|
|
420
|
+
<b>Recommended Models:</b> <code>google/gemini-3-flash</code>
|
|
421
|
+
</td>
|
|
422
|
+
</tr>
|
|
423
|
+
<tr>
|
|
424
|
+
<td colspan="2">
|
|
425
|
+
<b>MCPs:</b> none
|
|
426
|
+
</td>
|
|
427
|
+
</tr>
|
|
428
|
+
<tr>
|
|
429
|
+
<td colspan="2">
|
|
430
|
+
<b>Skills:</b> <code>agent-browser</code>
|
|
431
|
+
</td>
|
|
432
|
+
</tr>
|
|
433
|
+
<tr>
|
|
434
|
+
<td colspan="2">
|
|
435
|
+
<b>Capabilities:</b><br>
|
|
436
|
+
Modern responsive design, CSS/Tailwind mastery, micro-animations, component architecture. <i>Visual excellence over code perfection - beauty is the priority.</i>
|
|
437
|
+
</td>
|
|
438
|
+
</tr>
|
|
439
|
+
</table>
|
|
288
440
|
|
|
289
441
|
---
|
|
290
442
|
|
|
291
|
-
### Fixer: The Last Builder
|
|
292
|
-
|
|
293
|
-
<
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
443
|
+
### 06. Fixer: The Last Builder
|
|
444
|
+
|
|
445
|
+
<table>
|
|
446
|
+
<tr>
|
|
447
|
+
<td width="30%" align="center" valign="top">
|
|
448
|
+
<img src="img/fixer.png" width="240" style="border-radius: 10px;">
|
|
449
|
+
<br><sub><i>The final step between vision and reality.</i></sub>
|
|
450
|
+
</td>
|
|
451
|
+
<td width="70%" valign="top">
|
|
452
|
+
The Fixer is the last of a lineage of builders who once constructed the foundations of the digital world. When the age of planning and debating began, they remained - the ones who actually build. They carry the ancient knowledge of how to turn thought into thing, how to transform specification into implementation. They are the final step between vision and reality.
|
|
453
|
+
</td>
|
|
454
|
+
</tr>
|
|
455
|
+
<tr>
|
|
456
|
+
<td colspan="2">
|
|
457
|
+
<b>Role:</b> <code>Fast implementation specialist</code>
|
|
458
|
+
</td>
|
|
459
|
+
</tr>
|
|
460
|
+
<tr>
|
|
461
|
+
<td colspan="2">
|
|
462
|
+
<b>Prompt:</b> <a href="src/agents/fixer.ts"><code>fixer.ts</code></a>
|
|
463
|
+
</td>
|
|
464
|
+
</tr>
|
|
465
|
+
<tr>
|
|
466
|
+
<td colspan="2">
|
|
467
|
+
<b>Recommended Models:</b> <code>cerebras/zai-glm-4.7</code> <code>google/gemini-3-flash</code> <code>openai/gpt-5.1-codex-mini</code>
|
|
468
|
+
</td>
|
|
469
|
+
</tr>
|
|
470
|
+
<tr>
|
|
471
|
+
<td colspan="2">
|
|
472
|
+
<b>MCPs:</b> none
|
|
473
|
+
</td>
|
|
474
|
+
</tr>
|
|
475
|
+
<tr>
|
|
476
|
+
<td colspan="2">
|
|
477
|
+
<b>Skills:</b> none
|
|
478
|
+
</td>
|
|
479
|
+
</tr>
|
|
480
|
+
<tr>
|
|
481
|
+
<td colspan="2">
|
|
482
|
+
<b>Capabilities:</b><br>
|
|
483
|
+
Code implementation, refactoring, testing, verification. <i>Execute the plan - no research, no delegation, no planning.</i>
|
|
484
|
+
</td>
|
|
485
|
+
</tr>
|
|
486
|
+
</table>
|
|
304
487
|
|
|
305
488
|
---
|
|
306
489
|
|
|
@@ -345,7 +528,7 @@ Uses OpenAI models exclusively:
|
|
|
345
528
|
"oracle": { "model": "openai/gpt-5.2-codex", "variant": "high", "skills": [], "mcps": [] },
|
|
346
529
|
"librarian": { "model": "openai/gpt-5.1-codex-mini", "variant": "low", "skills": [], "mcps": ["websearch", "context7", "grep_app"] },
|
|
347
530
|
"explorer": { "model": "openai/gpt-5.1-codex-mini", "variant": "low", "skills": [], "mcps": [] },
|
|
348
|
-
"designer": { "model": "openai/gpt-5.1-codex-mini", "variant": "medium", "skills": ["
|
|
531
|
+
"designer": { "model": "openai/gpt-5.1-codex-mini", "variant": "medium", "skills": ["agent-browser"], "mcps": [] },
|
|
349
532
|
"fixer": { "model": "openai/gpt-5.1-codex-mini", "variant": "low", "skills": [], "mcps": [] }
|
|
350
533
|
}
|
|
351
534
|
}
|
|
@@ -365,14 +548,15 @@ Routes through Antigravity's CLIProxy for Claude + Gemini models:
|
|
|
365
548
|
"oracle": { "model": "cliproxy/gemini-3-pro-preview", "variant": "high", "skills": [], "mcps": [] },
|
|
366
549
|
"librarian": { "model": "cliproxy/gemini-3-flash-preview", "variant": "low", "skills": [], "mcps": ["websearch", "context7", "grep_app"] },
|
|
367
550
|
"explorer": { "model": "cliproxy/gemini-3-flash-preview", "variant": "low", "skills": [], "mcps": [] },
|
|
368
|
-
"designer": { "model": "cliproxy/gemini-3-flash-preview", "variant": "medium", "skills": ["
|
|
551
|
+
"designer": { "model": "cliproxy/gemini-3-flash-preview", "variant": "medium", "skills": ["agent-browser"], "mcps": [] },
|
|
369
552
|
"fixer": { "model": "cliproxy/gemini-3-flash-preview", "variant": "low", "skills": [], "mcps": [] }
|
|
370
553
|
}
|
|
371
554
|
}
|
|
372
555
|
}
|
|
373
556
|
```
|
|
374
557
|
|
|
375
|
-
|
|
558
|
+
<details>
|
|
559
|
+
<summary>Verify provider configuration in ~/.config/opencode/opencode.json</summary>
|
|
376
560
|
|
|
377
561
|
```json
|
|
378
562
|
{
|
|
@@ -416,6 +600,8 @@ Requires provider configuration:
|
|
|
416
600
|
}
|
|
417
601
|
```
|
|
418
602
|
|
|
603
|
+
</details>
|
|
604
|
+
|
|
419
605
|
### Author's Preset
|
|
420
606
|
|
|
421
607
|
Mixed setup combining multiple providers:
|
|
@@ -429,81 +615,102 @@ Mixed setup combining multiple providers:
|
|
|
429
615
|
"oracle": { "model": "openai/gpt-5.2-codex", "variant": "high", "skills": [], "mcps": [] },
|
|
430
616
|
"librarian": { "model": "cliproxy/gemini-3-flash-preview", "variant": "low", "skills": [], "mcps": ["websearch", "context7", "grep_app"] },
|
|
431
617
|
"explorer": { "model": "cerebras/zai-glm-4.7", "variant": "low", "skills": [], "mcps": [] },
|
|
432
|
-
"designer": { "model": "cliproxy/gemini-3-flash-preview", "variant": "medium", "skills": ["
|
|
618
|
+
"designer": { "model": "cliproxy/gemini-3-flash-preview", "variant": "medium", "skills": ["agent-browser"], "mcps": [] },
|
|
433
619
|
"fixer": { "model": "cerebras/zai-glm-4.7", "variant": "low", "skills": [], "mcps": [] }
|
|
434
620
|
}
|
|
435
621
|
}
|
|
436
622
|
}
|
|
437
623
|
```
|
|
438
624
|
|
|
439
|
-
|
|
625
|
+
---
|
|
440
626
|
|
|
441
|
-
|
|
627
|
+
## 🧩 Skills
|
|
442
628
|
|
|
443
|
-
|
|
444
|
-
{
|
|
445
|
-
"presets": {
|
|
446
|
-
"my-custom": {
|
|
447
|
-
"orchestrator": { "model": "google/claude-opus-4-5-thinking", "skills": ["*"], "mcps": ["websearch"] },
|
|
448
|
-
"oracle": { "model": "openai/gpt-5.2-codex", "variant": "high", "skills": [], "mcps": [] },
|
|
449
|
-
"librarian": { "model": "google/gemini-3-flash", "variant": "low", "skills": [], "mcps": ["websearch", "context7", "grep_app"] },
|
|
450
|
-
"explorer": { "model": "google/gemini-3-flash", "variant": "low", "skills": [], "mcps": [] },
|
|
451
|
-
"designer": { "model": "google/gemini-3-flash", "variant": "medium", "skills": ["playwright"], "mcps": [] },
|
|
452
|
-
"fixer": { "model": "google/gemini-3-flash", "variant": "low", "skills": [], "mcps": [] }
|
|
453
|
-
}
|
|
454
|
-
}
|
|
455
|
-
}
|
|
456
|
-
```
|
|
629
|
+
Skills are specialized capabilities provided by external agents and tools. Unlike MCPs which are servers, skills are prompt-based tool configurations installed via `npx skills add` during installation.
|
|
457
630
|
|
|
458
|
-
|
|
631
|
+
### Recommended Skills (via npx)
|
|
459
632
|
|
|
460
|
-
|
|
633
|
+
| Skill | Description | Assigned To |
|
|
634
|
+
|-------|-------------|-------------|
|
|
635
|
+
| [`simplify`](#simplify) | YAGNI code simplification expert | `orchestrator` |
|
|
636
|
+
| [`agent-browser`](#agent-browser) | High-performance browser automation | `designer` |
|
|
461
637
|
|
|
462
|
-
|
|
463
|
-
|--------|------|---------|-------------|
|
|
464
|
-
| `preset` | string | - | Name of the preset to use (e.g., `"openai"`, `"cliproxy"`) |
|
|
465
|
-
| `presets` | object | - | Named preset configurations containing agent mappings |
|
|
466
|
-
| `presets.<name>.<agent>.model` | string | - | Model ID for the agent (e.g., `"google/claude-opus-4-5-thinking"`) |
|
|
467
|
-
| `presets.<name>.<agent>.temperature` | number | - | Temperature setting (0-2) for the agent |
|
|
468
|
-
| `presets.<name>.<agent>.variant` | string | - | Agent variant for reasoning effort (e.g., `"low"`, `"medium"`, `"high"`) |
|
|
469
|
-
| `presets.<name>.<agent>.skills` | string[] | - | Array of skill names the agent can use (`"*"` for all, `"!item"` to exclude) |
|
|
470
|
-
| `presets.<name>.<agent>.mcps` | string[] | - | Array of MCP names the agent can use (`"*"` for all, `"!item"` to exclude) |
|
|
638
|
+
### Custom Skills (bundled in repo)
|
|
471
639
|
|
|
472
|
-
|
|
640
|
+
| Skill | Description | Assigned To |
|
|
641
|
+
|-------|-------------|-------------|
|
|
642
|
+
| [`cartography`](#cartography) | Repository understanding and hierarchical codemap generation | `orchestrator` |
|
|
473
643
|
|
|
474
|
-
|
|
644
|
+
### Simplify
|
|
475
645
|
|
|
476
|
-
|
|
646
|
+
**The Minimalist's sacred truth: every line of code is a liability.**
|
|
477
647
|
|
|
478
|
-
|
|
648
|
+
`simplify` is a specialized skill for complexity analysis and YAGNI enforcement. It identifies unnecessary abstractions and suggests minimal implementations.
|
|
479
649
|
|
|
480
|
-
|
|
481
|
-
|-------|-------------|
|
|
482
|
-
| `simplify` | Code complexity analysis and YAGNI enforcement |
|
|
483
|
-
| `playwright` | Browser automation via Playwright MCP |
|
|
650
|
+
### Agent Browser
|
|
484
651
|
|
|
485
|
-
|
|
652
|
+
**External browser automation for visual verification and testing.**
|
|
486
653
|
|
|
487
|
-
|
|
488
|
-
|-------|----------------|
|
|
489
|
-
| `orchestrator` | `*` (all skills) |
|
|
490
|
-
| `designer` | `playwright` |
|
|
491
|
-
| `oracle` | none |
|
|
492
|
-
| `librarian` | none |
|
|
493
|
-
| `explorer` | none |
|
|
494
|
-
| `fixer` | none |
|
|
654
|
+
`agent-browser` provides full high-performance browser automation capabilities. It allows agents to browse the web, interact with elements, and capture screenshots for visual state verification.
|
|
495
655
|
|
|
496
|
-
###
|
|
656
|
+
### Cartography
|
|
657
|
+
|
|
658
|
+
**Automated repository mapping through hierarchical codemaps.**
|
|
659
|
+
|
|
660
|
+
<img src="img/cartography.png" alt="Cartography Skill" width="800" style="border-radius: 10px; margin: 20px 0;">
|
|
661
|
+
|
|
662
|
+
`cartography` empowers the Orchestrator to build and maintain a deep architectural understanding of any codebase. Instead of reading thousands of lines of code every time, agents refer to hierarchical `codemap.md` files that describe the *why* and *how* of each directory.
|
|
663
|
+
|
|
664
|
+
**How to use:**
|
|
665
|
+
|
|
666
|
+
Just ask the **Orchestrator** to `run cartography`. It will automatically detect if it needs to initialize a new map or update an existing one.
|
|
667
|
+
|
|
668
|
+
**Why it's useful:**
|
|
669
|
+
|
|
670
|
+
- **Instant Onboarding:** Help agents (and humans) understand unfamiliar codebases in seconds.
|
|
671
|
+
- **Efficient Context:** Agents only read architectural summaries, saving tokens and improving accuracy.
|
|
672
|
+
- **Change Detection:** Only modified folders are re-analyzed, making updates fast and efficient.
|
|
673
|
+
- **Timeless Documentation:** Focuses on high-level design patterns that don't get stale.
|
|
674
|
+
|
|
675
|
+
<details>
|
|
676
|
+
<summary><b>Technical Details & Manual Control</b></summary>
|
|
677
|
+
|
|
678
|
+
The skill uses a background Python engine (`cartographer.py`) to manage state and detect changes.
|
|
679
|
+
|
|
680
|
+
**How it works under the hood:**
|
|
681
|
+
|
|
682
|
+
1. **Initialize** - Orchestrator analyzes repo structure and runs `init` to create `.slim/cartography.json` (hashes) and empty templates.
|
|
683
|
+
2. **Map** - Orchestrator spawns specialized **Explorer** sub-agents to fill codemaps with timeless architectural details (Responsibility, Design, Flow, Integration).
|
|
684
|
+
3. **Update** - On subsequent runs, the engine detects changed files and only refreshes codemaps for affected folders.
|
|
685
|
+
|
|
686
|
+
**Manual Commands:**
|
|
497
687
|
|
|
498
|
-
|
|
688
|
+
```bash
|
|
689
|
+
# Initialize mapping manually
|
|
690
|
+
python3 ~/.config/opencode/skills/cartography/scripts/cartographer.py init \
|
|
691
|
+
--root . \
|
|
692
|
+
--include "src/**/*.ts" \
|
|
693
|
+
--exclude "**/*.test.ts"
|
|
694
|
+
|
|
695
|
+
# Check for changes since last map
|
|
696
|
+
python3 ~/.config/opencode/skills/cartography/scripts/cartographer.py changes --root .
|
|
697
|
+
|
|
698
|
+
# Sync hashes after manual map updates
|
|
699
|
+
python3 ~/.config/opencode/skills/cartography/scripts/cartographer.py update --root .
|
|
700
|
+
```
|
|
701
|
+
</details>
|
|
702
|
+
|
|
703
|
+
### Skills Assignment
|
|
704
|
+
|
|
705
|
+
You can customize which skills each agent is allowed to use in `~/.config/opencode/oh-my-opencode-slim.json`.
|
|
499
706
|
|
|
500
707
|
**Syntax:**
|
|
501
708
|
|
|
502
709
|
| Syntax | Description | Example |
|
|
503
710
|
|--------|-------------|---------|
|
|
504
|
-
| `"*"` | All skills | `["*"]` |
|
|
505
|
-
| `"!item"` | Exclude specific skill | `["*", "!
|
|
506
|
-
| Explicit list | Only listed skills | `["simplify"
|
|
711
|
+
| `"*"` | All installed skills | `["*"]` |
|
|
712
|
+
| `"!item"` | Exclude specific skill | `["*", "!agent-browser"]` |
|
|
713
|
+
| Explicit list | Only listed skills | `["simplify"]` |
|
|
507
714
|
| `"!*"` | Deny all skills | `["!*"]` |
|
|
508
715
|
|
|
509
716
|
**Rules:**
|
|
@@ -519,30 +726,16 @@ You can customize which skills each agent uses by editing your plugin configurat
|
|
|
519
726
|
"presets": {
|
|
520
727
|
"my-preset": {
|
|
521
728
|
"orchestrator": {
|
|
522
|
-
"skills": ["*", "!
|
|
729
|
+
"skills": ["*", "!agent-browser"]
|
|
523
730
|
},
|
|
524
731
|
"designer": {
|
|
525
|
-
"skills": ["
|
|
732
|
+
"skills": ["agent-browser", "simplify"]
|
|
526
733
|
}
|
|
527
734
|
}
|
|
528
735
|
}
|
|
529
736
|
}
|
|
530
737
|
```
|
|
531
738
|
|
|
532
|
-
### Simplify
|
|
533
|
-
|
|
534
|
-
**The Minimalist's sacred truth: every line of code is a liability.**
|
|
535
|
-
|
|
536
|
-
Use after major refactors or before finalizing PRs. Identifies unnecessary complexity, challenges premature abstractions, estimates LOC reduction, and enforces minimalism.
|
|
537
|
-
|
|
538
|
-
### Playwright Integration
|
|
539
|
-
|
|
540
|
-
**Browser automation for visual verification and testing.**
|
|
541
|
-
|
|
542
|
-
- **Browser Automation**: Full Playwright capabilities (browsing, clicking, typing, scraping).
|
|
543
|
-
- **Screenshots**: Capture visual state of any web page.
|
|
544
|
-
- **Sandboxed Output**: Screenshots saved to session subdirectory (check tool output for path).
|
|
545
|
-
|
|
546
739
|
---
|
|
547
740
|
|
|
548
741
|
## 🔌 MCP Servers
|
|
@@ -765,6 +958,13 @@ The installer generates this file based on your providers. You can manually cust
|
|
|
765
958
|
|
|
766
959
|
| Option | Type | Default | Description |
|
|
767
960
|
|--------|------|---------|-------------|
|
|
961
|
+
| `preset` | string | - | Name of the preset to use (e.g., `"openai"`, `"cliproxy"`) |
|
|
962
|
+
| `presets` | object | - | Named preset configurations containing agent mappings |
|
|
963
|
+
| `presets.<name>.<agent>.model` | string | - | Model ID for the agent (e.g., `"google/claude-opus-4-5-thinking"`) |
|
|
964
|
+
| `presets.<name>.<agent>.temperature` | number | - | Temperature setting (0-2) for the agent |
|
|
965
|
+
| `presets.<name>.<agent>.variant` | string | - | Agent variant for reasoning effort (e.g., `"low"`, `"medium"`, `"high"`) |
|
|
966
|
+
| `presets.<name>.<agent>.skills` | string[] | - | Array of skill names the agent can use (`"*"` for all, `"!item"` to exclude) |
|
|
967
|
+
| `presets.<name>.<agent>.mcps` | string[] | - | Array of MCP names the agent can use (`"*"` for all, `"!item"` to exclude) |
|
|
768
968
|
| `tmux.enabled` | boolean | `false` | Enable tmux pane spawning for sub-agents |
|
|
769
969
|
| `tmux.layout` | string | `"main-vertical"` | Layout preset: `main-vertical`, `main-horizontal`, `tiled`, `even-horizontal`, `even-vertical` |
|
|
770
970
|
| `tmux.main_pane_size` | number | `60` | Main pane size as percentage (20-80) |
|