oh-my-claudecode-opencode 0.1.0 → 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.
- package/README.md +113 -43
- package/assets/omco.example.json +74 -10
- package/assets/omco.schema.json +192 -3
- package/dist/config/index.d.ts +124 -1
- package/dist/index.js +13423 -13243
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# oh-my-claudecode-opencode (omco)
|
|
2
2
|
|
|
3
|
-
> 🔄 **OpenCode port of [oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode) v3.
|
|
3
|
+
> 🔄 **OpenCode port of [oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode) v3.3.6**
|
|
4
4
|
|
|
5
5
|
**oh-my-claudecode-opencode** (omco) - Multi-agent orchestration plugin that brings [oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode) features to [OpenCode](https://github.com/opencode-ai/opencode).
|
|
6
6
|
|
|
@@ -10,7 +10,7 @@ Like Sisyphus condemned to roll his boulder eternally, this plugin ensures your
|
|
|
10
10
|
|
|
11
11
|
## 🎯 What is this?
|
|
12
12
|
|
|
13
|
-
This project **ports the powerful features** of [oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode) v3.
|
|
13
|
+
This project **ports the powerful features** of [oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode) v3.3.6 (a Claude Code plugin) to the **OpenCode platform**.
|
|
14
14
|
|
|
15
15
|
| Original (Claude Code) | This Port (OpenCode) |
|
|
16
16
|
|------------------------|----------------------|
|
|
@@ -171,26 +171,40 @@ call_omo_agent(
|
|
|
171
171
|
|
|
172
172
|
## Configuration
|
|
173
173
|
|
|
174
|
-
Create `.opencode/omco.json` in your project:
|
|
174
|
+
Create `.opencode/omco.json` in your project (see `assets/omco.example.json` for full example):
|
|
175
175
|
|
|
176
176
|
```json
|
|
177
177
|
{
|
|
178
|
-
"
|
|
178
|
+
"$schema": "node_modules/oh-my-claudecode-opencode/assets/omco.schema.json",
|
|
179
|
+
|
|
180
|
+
"agents": {
|
|
181
|
+
"architect": { "tier": "opus", "enabled": true },
|
|
182
|
+
"explore": { "tier": "haiku" }
|
|
183
|
+
},
|
|
184
|
+
|
|
179
185
|
"background_task": {
|
|
180
|
-
"
|
|
181
|
-
"timeout_ms": 300000
|
|
186
|
+
"defaultConcurrency": 5
|
|
182
187
|
},
|
|
188
|
+
|
|
183
189
|
"ralph_loop": {
|
|
184
|
-
"
|
|
185
|
-
"
|
|
190
|
+
"enabled": true,
|
|
191
|
+
"default_max_iterations": 100
|
|
186
192
|
},
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
"
|
|
193
|
+
|
|
194
|
+
"autopilot": {
|
|
195
|
+
"enabled": true,
|
|
196
|
+
"maxPhaseRetries": 3,
|
|
197
|
+
"delegationEnforcement": "warn"
|
|
198
|
+
},
|
|
199
|
+
|
|
200
|
+
"ultraqa": {
|
|
201
|
+
"enabled": true,
|
|
202
|
+
"maxIterations": 10
|
|
190
203
|
},
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
"
|
|
204
|
+
|
|
205
|
+
"orchestrator": {
|
|
206
|
+
"delegationEnforcement": "warn",
|
|
207
|
+
"auditLogEnabled": true
|
|
194
208
|
}
|
|
195
209
|
}
|
|
196
210
|
```
|
|
@@ -199,23 +213,26 @@ Create `.opencode/omco.json` in your project:
|
|
|
199
213
|
|
|
200
214
|
| Option | Description | Default |
|
|
201
215
|
|--------|-------------|---------|
|
|
202
|
-
| `
|
|
203
|
-
| `
|
|
204
|
-
| `
|
|
205
|
-
| `
|
|
206
|
-
| `
|
|
207
|
-
| `
|
|
208
|
-
| `
|
|
216
|
+
| `background_task.defaultConcurrency` | Max parallel background tasks | `5` |
|
|
217
|
+
| `ralph_loop.enabled` | Enable Ralph Loop | `true` |
|
|
218
|
+
| `ralph_loop.default_max_iterations` | Max loop iterations | `100` |
|
|
219
|
+
| `autopilot.enabled` | Enable Autopilot mode | `true` |
|
|
220
|
+
| `autopilot.maxPhaseRetries` | Max retries per phase | `3` |
|
|
221
|
+
| `autopilot.delegationEnforcement` | `strict`, `warn`, `off` | `warn` |
|
|
222
|
+
| `ultraqa.enabled` | Enable UltraQA | `true` |
|
|
223
|
+
| `ultraqa.maxIterations` | Max QA iterations | `10` |
|
|
224
|
+
| `orchestrator.delegationEnforcement` | Delegation enforcement level | `warn` |
|
|
225
|
+
| `orchestrator.auditLogEnabled` | Enable audit logging | `true` |
|
|
209
226
|
|
|
210
227
|
### Model Provider Configuration
|
|
211
228
|
|
|
212
|
-
By default, oh-my-claudecode-opencode uses **GitHub Copilot Claude 4
|
|
229
|
+
By default, oh-my-claudecode-opencode uses **GitHub Copilot Claude 4 models** for the three tiers:
|
|
213
230
|
|
|
214
231
|
| Tier | Default Model |
|
|
215
232
|
|------|---------------|
|
|
216
|
-
| `haiku` | `github-copilot/claude-haiku-4
|
|
217
|
-
| `sonnet` | `github-copilot/claude-sonnet-4
|
|
218
|
-
| `opus` | `github-copilot/claude-opus-4
|
|
233
|
+
| `haiku` / `LOW` | `github-copilot/claude-haiku-4` |
|
|
234
|
+
| `sonnet` / `MEDIUM` | `github-copilot/claude-sonnet-4` |
|
|
235
|
+
| `opus` / `HIGH` | `github-copilot/claude-opus-4` |
|
|
219
236
|
|
|
220
237
|
To use other providers like Google or OpenAI, configure `model_mapping.tierDefaults`:
|
|
221
238
|
|
|
@@ -224,42 +241,95 @@ To use other providers like Google or OpenAI, configure `model_mapping.tierDefau
|
|
|
224
241
|
"model_mapping": {
|
|
225
242
|
"tierDefaults": {
|
|
226
243
|
"haiku": "google/gemini-3-flash",
|
|
227
|
-
"sonnet": "google/gemini-3-pro
|
|
228
|
-
"opus": "openai/gpt-5
|
|
244
|
+
"sonnet": "google/gemini-3-pro",
|
|
245
|
+
"opus": "openai/gpt-5"
|
|
229
246
|
}
|
|
230
247
|
}
|
|
231
248
|
}
|
|
232
249
|
```
|
|
233
250
|
|
|
234
|
-
|
|
251
|
+
### Intelligent Routing
|
|
235
252
|
|
|
236
|
-
|
|
237
|
-
| Tier | Purpose | Typical Use |
|
|
238
|
-
|------|---------|-------------|
|
|
239
|
-
| `haiku` | Fast, cheap | explore, simple lookups, quick checks |
|
|
240
|
-
| `sonnet` | Balanced | executor, designer, most agents |
|
|
241
|
-
| `opus` | Most capable | architect, planner, complex reasoning |
|
|
253
|
+
The plugin includes intelligent model routing with automatic tier escalation:
|
|
242
254
|
|
|
243
|
-
|
|
255
|
+
```json
|
|
256
|
+
{
|
|
257
|
+
"routing": {
|
|
258
|
+
"enabled": true,
|
|
259
|
+
"defaultTier": "MEDIUM",
|
|
260
|
+
"escalationEnabled": true,
|
|
261
|
+
"maxEscalations": 2,
|
|
262
|
+
"tierModels": {
|
|
263
|
+
"LOW": "github-copilot/claude-haiku-4",
|
|
264
|
+
"MEDIUM": "github-copilot/claude-sonnet-4",
|
|
265
|
+
"HIGH": "github-copilot/claude-opus-4"
|
|
266
|
+
},
|
|
267
|
+
"agentOverrides": {
|
|
268
|
+
"architect": { "tier": "HIGH", "reason": "Deep reasoning required" },
|
|
269
|
+
"explore": { "tier": "LOW", "reason": "Search-focused" }
|
|
270
|
+
},
|
|
271
|
+
"escalationKeywords": ["critical", "production", "urgent", "security"],
|
|
272
|
+
"simplificationKeywords": ["find", "list", "show", "where"]
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
### Features Configuration
|
|
244
278
|
|
|
245
|
-
|
|
279
|
+
Toggle platform features:
|
|
246
280
|
|
|
247
281
|
```json
|
|
248
282
|
{
|
|
249
|
-
"
|
|
250
|
-
"
|
|
251
|
-
"
|
|
252
|
-
"
|
|
283
|
+
"features": {
|
|
284
|
+
"parallelExecution": true,
|
|
285
|
+
"lspTools": true,
|
|
286
|
+
"astTools": true,
|
|
287
|
+
"continuationEnforcement": true,
|
|
288
|
+
"autoContextInjection": true
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
### MCP Servers
|
|
294
|
+
|
|
295
|
+
Configure MCP server integrations:
|
|
296
|
+
|
|
297
|
+
```json
|
|
298
|
+
{
|
|
299
|
+
"mcpServers": {
|
|
300
|
+
"exa": { "enabled": true, "apiKey": "your-api-key" },
|
|
301
|
+
"context7": { "enabled": true },
|
|
302
|
+
"grepApp": { "enabled": true }
|
|
253
303
|
}
|
|
254
304
|
}
|
|
255
305
|
```
|
|
256
306
|
|
|
257
|
-
|
|
307
|
+
### Permissions
|
|
308
|
+
|
|
309
|
+
Control allowed operations:
|
|
258
310
|
|
|
259
311
|
```json
|
|
260
312
|
{
|
|
261
|
-
"
|
|
262
|
-
"
|
|
313
|
+
"permissions": {
|
|
314
|
+
"allowBash": true,
|
|
315
|
+
"allowEdit": true,
|
|
316
|
+
"allowWrite": true,
|
|
317
|
+
"maxBackgroundTasks": 5
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
### Magic Keywords
|
|
323
|
+
|
|
324
|
+
Customize trigger keywords:
|
|
325
|
+
|
|
326
|
+
```json
|
|
327
|
+
{
|
|
328
|
+
"magicKeywords": {
|
|
329
|
+
"ultrawork": ["ultrawork", "ulw", "uw"],
|
|
330
|
+
"search": ["search", "find", "locate"],
|
|
331
|
+
"analyze": ["analyze", "investigate", "examine"],
|
|
332
|
+
"ultrathink": ["ultrathink", "think", "reason", "ponder"]
|
|
263
333
|
}
|
|
264
334
|
}
|
|
265
335
|
```
|
package/assets/omco.example.json
CHANGED
|
@@ -1,28 +1,76 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "./
|
|
2
|
+
"$schema": "./omco.schema.json",
|
|
3
3
|
|
|
4
4
|
"model_mapping": {
|
|
5
5
|
"tierDefaults": {
|
|
6
|
-
"haiku": "github-copilot/claude-haiku-4
|
|
7
|
-
"sonnet": "github-copilot/claude-sonnet-4
|
|
8
|
-
"opus": "github-copilot/claude-opus-4
|
|
6
|
+
"haiku": "github-copilot/claude-haiku-4",
|
|
7
|
+
"sonnet": "github-copilot/claude-sonnet-4",
|
|
8
|
+
"opus": "github-copilot/claude-opus-4"
|
|
9
9
|
},
|
|
10
10
|
"debugLogging": false
|
|
11
11
|
},
|
|
12
12
|
|
|
13
13
|
"agents": {
|
|
14
14
|
"architect": {
|
|
15
|
-
"tier": "opus"
|
|
16
|
-
|
|
17
|
-
"executor": {
|
|
18
|
-
"model": "github-copilot/claude-sonnet-4.5",
|
|
19
|
-
"temperature": 0.3
|
|
15
|
+
"tier": "opus",
|
|
16
|
+
"enabled": true
|
|
20
17
|
},
|
|
21
18
|
"explore": {
|
|
22
|
-
"tier": "haiku"
|
|
19
|
+
"tier": "haiku",
|
|
20
|
+
"enabled": true
|
|
21
|
+
},
|
|
22
|
+
"frontendEngineer": {
|
|
23
|
+
"model": "github-copilot/claude-sonnet-4",
|
|
24
|
+
"temperature": 0.7
|
|
23
25
|
}
|
|
24
26
|
},
|
|
25
27
|
|
|
28
|
+
"features": {
|
|
29
|
+
"parallelExecution": true,
|
|
30
|
+
"lspTools": true,
|
|
31
|
+
"astTools": true,
|
|
32
|
+
"continuationEnforcement": true,
|
|
33
|
+
"autoContextInjection": true
|
|
34
|
+
},
|
|
35
|
+
|
|
36
|
+
"mcpServers": {
|
|
37
|
+
"exa": { "enabled": true },
|
|
38
|
+
"context7": { "enabled": true },
|
|
39
|
+
"grepApp": { "enabled": true }
|
|
40
|
+
},
|
|
41
|
+
|
|
42
|
+
"permissions": {
|
|
43
|
+
"allowBash": true,
|
|
44
|
+
"allowEdit": true,
|
|
45
|
+
"allowWrite": true,
|
|
46
|
+
"maxBackgroundTasks": 5
|
|
47
|
+
},
|
|
48
|
+
|
|
49
|
+
"magicKeywords": {
|
|
50
|
+
"ultrawork": ["ultrawork", "ulw", "uw"],
|
|
51
|
+
"search": ["search", "find", "locate"],
|
|
52
|
+
"analyze": ["analyze", "investigate", "examine"],
|
|
53
|
+
"ultrathink": ["ultrathink", "think", "reason", "ponder"]
|
|
54
|
+
},
|
|
55
|
+
|
|
56
|
+
"routing": {
|
|
57
|
+
"enabled": true,
|
|
58
|
+
"defaultTier": "MEDIUM",
|
|
59
|
+
"escalationEnabled": true,
|
|
60
|
+
"maxEscalations": 2,
|
|
61
|
+
"tierModels": {
|
|
62
|
+
"LOW": "github-copilot/claude-haiku-4",
|
|
63
|
+
"MEDIUM": "github-copilot/claude-sonnet-4",
|
|
64
|
+
"HIGH": "github-copilot/claude-opus-4"
|
|
65
|
+
},
|
|
66
|
+
"agentOverrides": {
|
|
67
|
+
"architect": { "tier": "HIGH", "reason": "Advisory agent requires deep reasoning" },
|
|
68
|
+
"explore": { "tier": "LOW", "reason": "Exploration is search-focused" }
|
|
69
|
+
},
|
|
70
|
+
"escalationKeywords": ["critical", "production", "urgent", "security"],
|
|
71
|
+
"simplificationKeywords": ["find", "list", "show", "where"]
|
|
72
|
+
},
|
|
73
|
+
|
|
26
74
|
"background_task": {
|
|
27
75
|
"defaultConcurrency": 5
|
|
28
76
|
},
|
|
@@ -30,5 +78,21 @@
|
|
|
30
78
|
"ralph_loop": {
|
|
31
79
|
"enabled": true,
|
|
32
80
|
"default_max_iterations": 100
|
|
81
|
+
},
|
|
82
|
+
|
|
83
|
+
"autopilot": {
|
|
84
|
+
"enabled": true,
|
|
85
|
+
"maxPhaseRetries": 3,
|
|
86
|
+
"delegationEnforcement": "warn"
|
|
87
|
+
},
|
|
88
|
+
|
|
89
|
+
"ultraqa": {
|
|
90
|
+
"enabled": true,
|
|
91
|
+
"maxIterations": 10
|
|
92
|
+
},
|
|
93
|
+
|
|
94
|
+
"orchestrator": {
|
|
95
|
+
"delegationEnforcement": "warn",
|
|
96
|
+
"auditLogEnabled": true
|
|
33
97
|
}
|
|
34
98
|
}
|
package/assets/omco.schema.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
-
"title": "
|
|
4
|
-
"description": "Configuration schema for Oh My OpenCode
|
|
3
|
+
"title": "omco Configuration",
|
|
4
|
+
"description": "Configuration schema for Oh My OpenCode plugin",
|
|
5
5
|
"type": "object",
|
|
6
6
|
"properties": {
|
|
7
7
|
"$schema": {
|
|
@@ -73,9 +73,13 @@
|
|
|
73
73
|
"maximum": 1,
|
|
74
74
|
"description": "Override top_p for this agent"
|
|
75
75
|
},
|
|
76
|
+
"enabled": {
|
|
77
|
+
"type": "boolean",
|
|
78
|
+
"description": "Enable or disable this agent"
|
|
79
|
+
},
|
|
76
80
|
"disable": {
|
|
77
81
|
"type": "boolean",
|
|
78
|
-
"description": "Disable this agent"
|
|
82
|
+
"description": "Disable this agent (legacy field)"
|
|
79
83
|
},
|
|
80
84
|
"prompt_append": {
|
|
81
85
|
"type": "string",
|
|
@@ -85,6 +89,191 @@
|
|
|
85
89
|
"additionalProperties": false
|
|
86
90
|
}
|
|
87
91
|
},
|
|
92
|
+
"features": {
|
|
93
|
+
"type": "object",
|
|
94
|
+
"description": "Feature toggles",
|
|
95
|
+
"properties": {
|
|
96
|
+
"parallelExecution": {
|
|
97
|
+
"type": "boolean",
|
|
98
|
+
"default": true,
|
|
99
|
+
"description": "Enable parallel execution of tasks"
|
|
100
|
+
},
|
|
101
|
+
"lspTools": {
|
|
102
|
+
"type": "boolean",
|
|
103
|
+
"default": true,
|
|
104
|
+
"description": "Enable LSP integration with language servers"
|
|
105
|
+
},
|
|
106
|
+
"astTools": {
|
|
107
|
+
"type": "boolean",
|
|
108
|
+
"default": true,
|
|
109
|
+
"description": "Enable AST tools using ast-grep"
|
|
110
|
+
},
|
|
111
|
+
"continuationEnforcement": {
|
|
112
|
+
"type": "boolean",
|
|
113
|
+
"default": true,
|
|
114
|
+
"description": "Enforce task continuation until completion"
|
|
115
|
+
},
|
|
116
|
+
"autoContextInjection": {
|
|
117
|
+
"type": "boolean",
|
|
118
|
+
"default": true,
|
|
119
|
+
"description": "Automatically inject context from AGENTS.md/CLAUDE.md"
|
|
120
|
+
}
|
|
121
|
+
},
|
|
122
|
+
"additionalProperties": false
|
|
123
|
+
},
|
|
124
|
+
"mcpServers": {
|
|
125
|
+
"type": "object",
|
|
126
|
+
"description": "MCP server configurations",
|
|
127
|
+
"properties": {
|
|
128
|
+
"exa": {
|
|
129
|
+
"type": "object",
|
|
130
|
+
"properties": {
|
|
131
|
+
"enabled": { "type": "boolean" },
|
|
132
|
+
"apiKey": { "type": "string" }
|
|
133
|
+
},
|
|
134
|
+
"additionalProperties": false
|
|
135
|
+
},
|
|
136
|
+
"context7": {
|
|
137
|
+
"type": "object",
|
|
138
|
+
"properties": {
|
|
139
|
+
"enabled": { "type": "boolean" }
|
|
140
|
+
},
|
|
141
|
+
"additionalProperties": false
|
|
142
|
+
},
|
|
143
|
+
"grepApp": {
|
|
144
|
+
"type": "object",
|
|
145
|
+
"properties": {
|
|
146
|
+
"enabled": { "type": "boolean" }
|
|
147
|
+
},
|
|
148
|
+
"additionalProperties": false
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
"additionalProperties": false
|
|
152
|
+
},
|
|
153
|
+
"permissions": {
|
|
154
|
+
"type": "object",
|
|
155
|
+
"description": "Permission settings",
|
|
156
|
+
"properties": {
|
|
157
|
+
"allowBash": {
|
|
158
|
+
"type": "boolean",
|
|
159
|
+
"default": true,
|
|
160
|
+
"description": "Allow bash command execution"
|
|
161
|
+
},
|
|
162
|
+
"allowEdit": {
|
|
163
|
+
"type": "boolean",
|
|
164
|
+
"default": true,
|
|
165
|
+
"description": "Allow file editing"
|
|
166
|
+
},
|
|
167
|
+
"allowWrite": {
|
|
168
|
+
"type": "boolean",
|
|
169
|
+
"default": true,
|
|
170
|
+
"description": "Allow file writing"
|
|
171
|
+
},
|
|
172
|
+
"maxBackgroundTasks": {
|
|
173
|
+
"type": "integer",
|
|
174
|
+
"minimum": 1,
|
|
175
|
+
"maximum": 20,
|
|
176
|
+
"default": 5,
|
|
177
|
+
"description": "Maximum concurrent background tasks"
|
|
178
|
+
}
|
|
179
|
+
},
|
|
180
|
+
"additionalProperties": false
|
|
181
|
+
},
|
|
182
|
+
"magicKeywords": {
|
|
183
|
+
"type": "object",
|
|
184
|
+
"description": "Magic keyword triggers for modes",
|
|
185
|
+
"properties": {
|
|
186
|
+
"ultrawork": {
|
|
187
|
+
"type": "array",
|
|
188
|
+
"items": { "type": "string" },
|
|
189
|
+
"description": "Keywords that trigger ultrawork mode"
|
|
190
|
+
},
|
|
191
|
+
"search": {
|
|
192
|
+
"type": "array",
|
|
193
|
+
"items": { "type": "string" },
|
|
194
|
+
"description": "Keywords that trigger search mode"
|
|
195
|
+
},
|
|
196
|
+
"analyze": {
|
|
197
|
+
"type": "array",
|
|
198
|
+
"items": { "type": "string" },
|
|
199
|
+
"description": "Keywords that trigger analyze mode"
|
|
200
|
+
},
|
|
201
|
+
"ultrathink": {
|
|
202
|
+
"type": "array",
|
|
203
|
+
"items": { "type": "string" },
|
|
204
|
+
"description": "Keywords that trigger ultrathink mode"
|
|
205
|
+
}
|
|
206
|
+
},
|
|
207
|
+
"additionalProperties": false
|
|
208
|
+
},
|
|
209
|
+
"routing": {
|
|
210
|
+
"type": "object",
|
|
211
|
+
"description": "Intelligent model routing configuration",
|
|
212
|
+
"properties": {
|
|
213
|
+
"enabled": {
|
|
214
|
+
"type": "boolean",
|
|
215
|
+
"default": true,
|
|
216
|
+
"description": "Enable intelligent model routing"
|
|
217
|
+
},
|
|
218
|
+
"defaultTier": {
|
|
219
|
+
"type": "string",
|
|
220
|
+
"enum": ["LOW", "MEDIUM", "HIGH"],
|
|
221
|
+
"default": "MEDIUM",
|
|
222
|
+
"description": "Default tier for unspecified agents"
|
|
223
|
+
},
|
|
224
|
+
"escalationEnabled": {
|
|
225
|
+
"type": "boolean",
|
|
226
|
+
"default": true,
|
|
227
|
+
"description": "Enable automatic tier escalation"
|
|
228
|
+
},
|
|
229
|
+
"maxEscalations": {
|
|
230
|
+
"type": "integer",
|
|
231
|
+
"minimum": 0,
|
|
232
|
+
"maximum": 5,
|
|
233
|
+
"default": 2,
|
|
234
|
+
"description": "Maximum number of tier escalations"
|
|
235
|
+
},
|
|
236
|
+
"tierModels": {
|
|
237
|
+
"type": "object",
|
|
238
|
+
"description": "Model mapping for each tier",
|
|
239
|
+
"properties": {
|
|
240
|
+
"LOW": { "type": "string" },
|
|
241
|
+
"MEDIUM": { "type": "string" },
|
|
242
|
+
"HIGH": { "type": "string" }
|
|
243
|
+
},
|
|
244
|
+
"additionalProperties": false
|
|
245
|
+
},
|
|
246
|
+
"agentOverrides": {
|
|
247
|
+
"type": "object",
|
|
248
|
+
"description": "Per-agent tier overrides",
|
|
249
|
+
"additionalProperties": {
|
|
250
|
+
"type": "object",
|
|
251
|
+
"properties": {
|
|
252
|
+
"tier": {
|
|
253
|
+
"type": "string",
|
|
254
|
+
"enum": ["LOW", "MEDIUM", "HIGH"]
|
|
255
|
+
},
|
|
256
|
+
"reason": {
|
|
257
|
+
"type": "string"
|
|
258
|
+
}
|
|
259
|
+
},
|
|
260
|
+
"required": ["tier"],
|
|
261
|
+
"additionalProperties": false
|
|
262
|
+
}
|
|
263
|
+
},
|
|
264
|
+
"escalationKeywords": {
|
|
265
|
+
"type": "array",
|
|
266
|
+
"items": { "type": "string" },
|
|
267
|
+
"description": "Keywords that trigger tier escalation"
|
|
268
|
+
},
|
|
269
|
+
"simplificationKeywords": {
|
|
270
|
+
"type": "array",
|
|
271
|
+
"items": { "type": "string" },
|
|
272
|
+
"description": "Keywords that trigger tier simplification"
|
|
273
|
+
}
|
|
274
|
+
},
|
|
275
|
+
"additionalProperties": false
|
|
276
|
+
},
|
|
88
277
|
"disabled_hooks": {
|
|
89
278
|
"type": "array",
|
|
90
279
|
"items": {
|