oh-my-claudecode-opencode 0.1.0 → 0.2.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.
@@ -1,28 +1,76 @@
1
1
  {
2
- "$schema": "./omo-omcs.schema.json",
2
+ "$schema": "./omco.schema.json",
3
3
 
4
4
  "model_mapping": {
5
5
  "tierDefaults": {
6
- "haiku": "github-copilot/claude-haiku-4.5",
7
- "sonnet": "github-copilot/claude-sonnet-4.5",
8
- "opus": "github-copilot/claude-opus-4.5"
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
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
- "title": "omo-omcs Configuration",
4
- "description": "Configuration schema for Oh My OpenCode Sisyphus plugin",
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": {
@@ -9,8 +9,67 @@ declare const AgentConfigSchema: z.ZodObject<{
9
9
  temperature: z.ZodOptional<z.ZodNumber>;
10
10
  top_p: z.ZodOptional<z.ZodNumber>;
11
11
  disable: z.ZodOptional<z.ZodBoolean>;
12
+ enabled: z.ZodOptional<z.ZodBoolean>;
12
13
  prompt_append: z.ZodOptional<z.ZodString>;
13
14
  }, z.core.$strip>;
15
+ declare const FeaturesConfigSchema: z.ZodObject<{
16
+ parallelExecution: z.ZodOptional<z.ZodBoolean>;
17
+ lspTools: z.ZodOptional<z.ZodBoolean>;
18
+ astTools: z.ZodOptional<z.ZodBoolean>;
19
+ continuationEnforcement: z.ZodOptional<z.ZodBoolean>;
20
+ autoContextInjection: z.ZodOptional<z.ZodBoolean>;
21
+ }, z.core.$strip>;
22
+ declare const McpServersConfigSchema: z.ZodObject<{
23
+ exa: z.ZodOptional<z.ZodObject<{
24
+ enabled: z.ZodOptional<z.ZodBoolean>;
25
+ apiKey: z.ZodOptional<z.ZodString>;
26
+ }, z.core.$strip>>;
27
+ context7: z.ZodOptional<z.ZodObject<{
28
+ enabled: z.ZodOptional<z.ZodBoolean>;
29
+ apiKey: z.ZodOptional<z.ZodString>;
30
+ }, z.core.$strip>>;
31
+ grepApp: z.ZodOptional<z.ZodObject<{
32
+ enabled: z.ZodOptional<z.ZodBoolean>;
33
+ apiKey: z.ZodOptional<z.ZodString>;
34
+ }, z.core.$strip>>;
35
+ }, z.core.$strip>;
36
+ declare const PermissionsConfigSchema: z.ZodObject<{
37
+ allowBash: z.ZodOptional<z.ZodBoolean>;
38
+ allowEdit: z.ZodOptional<z.ZodBoolean>;
39
+ allowWrite: z.ZodOptional<z.ZodBoolean>;
40
+ maxBackgroundTasks: z.ZodOptional<z.ZodNumber>;
41
+ }, z.core.$strip>;
42
+ declare const MagicKeywordsConfigSchema: z.ZodObject<{
43
+ ultrawork: z.ZodOptional<z.ZodArray<z.ZodString>>;
44
+ search: z.ZodOptional<z.ZodArray<z.ZodString>>;
45
+ analyze: z.ZodOptional<z.ZodArray<z.ZodString>>;
46
+ ultrathink: z.ZodOptional<z.ZodArray<z.ZodString>>;
47
+ }, z.core.$strip>;
48
+ declare const RoutingConfigSchema: z.ZodObject<{
49
+ enabled: z.ZodOptional<z.ZodBoolean>;
50
+ defaultTier: z.ZodOptional<z.ZodEnum<{
51
+ LOW: "LOW";
52
+ MEDIUM: "MEDIUM";
53
+ HIGH: "HIGH";
54
+ }>>;
55
+ escalationEnabled: z.ZodOptional<z.ZodBoolean>;
56
+ maxEscalations: z.ZodOptional<z.ZodNumber>;
57
+ tierModels: z.ZodOptional<z.ZodObject<{
58
+ LOW: z.ZodOptional<z.ZodString>;
59
+ MEDIUM: z.ZodOptional<z.ZodString>;
60
+ HIGH: z.ZodOptional<z.ZodString>;
61
+ }, z.core.$strip>>;
62
+ agentOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
63
+ tier: z.ZodEnum<{
64
+ LOW: "LOW";
65
+ MEDIUM: "MEDIUM";
66
+ HIGH: "HIGH";
67
+ }>;
68
+ reason: z.ZodOptional<z.ZodString>;
69
+ }, z.core.$strip>>>;
70
+ escalationKeywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
71
+ simplificationKeywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
72
+ }, z.core.$strip>;
14
73
  declare const ModelMappingConfigSchema: z.ZodObject<{
15
74
  tierDefaults: z.ZodOptional<z.ZodObject<{
16
75
  haiku: z.ZodOptional<z.ZodString>;
@@ -87,6 +146,7 @@ declare const OmoOmcsConfigSchema: z.ZodObject<{
87
146
  temperature: z.ZodOptional<z.ZodNumber>;
88
147
  top_p: z.ZodOptional<z.ZodNumber>;
89
148
  disable: z.ZodOptional<z.ZodBoolean>;
149
+ enabled: z.ZodOptional<z.ZodBoolean>;
90
150
  prompt_append: z.ZodOptional<z.ZodString>;
91
151
  }, z.core.$strip>>>;
92
152
  model_mapping: z.ZodOptional<z.ZodObject<{
@@ -97,6 +157,64 @@ declare const OmoOmcsConfigSchema: z.ZodObject<{
97
157
  }, z.core.$strip>>;
98
158
  debugLogging: z.ZodOptional<z.ZodBoolean>;
99
159
  }, z.core.$strip>>;
160
+ features: z.ZodOptional<z.ZodObject<{
161
+ parallelExecution: z.ZodOptional<z.ZodBoolean>;
162
+ lspTools: z.ZodOptional<z.ZodBoolean>;
163
+ astTools: z.ZodOptional<z.ZodBoolean>;
164
+ continuationEnforcement: z.ZodOptional<z.ZodBoolean>;
165
+ autoContextInjection: z.ZodOptional<z.ZodBoolean>;
166
+ }, z.core.$strip>>;
167
+ mcpServers: z.ZodOptional<z.ZodObject<{
168
+ exa: z.ZodOptional<z.ZodObject<{
169
+ enabled: z.ZodOptional<z.ZodBoolean>;
170
+ apiKey: z.ZodOptional<z.ZodString>;
171
+ }, z.core.$strip>>;
172
+ context7: z.ZodOptional<z.ZodObject<{
173
+ enabled: z.ZodOptional<z.ZodBoolean>;
174
+ apiKey: z.ZodOptional<z.ZodString>;
175
+ }, z.core.$strip>>;
176
+ grepApp: z.ZodOptional<z.ZodObject<{
177
+ enabled: z.ZodOptional<z.ZodBoolean>;
178
+ apiKey: z.ZodOptional<z.ZodString>;
179
+ }, z.core.$strip>>;
180
+ }, z.core.$strip>>;
181
+ permissions: z.ZodOptional<z.ZodObject<{
182
+ allowBash: z.ZodOptional<z.ZodBoolean>;
183
+ allowEdit: z.ZodOptional<z.ZodBoolean>;
184
+ allowWrite: z.ZodOptional<z.ZodBoolean>;
185
+ maxBackgroundTasks: z.ZodOptional<z.ZodNumber>;
186
+ }, z.core.$strip>>;
187
+ magicKeywords: z.ZodOptional<z.ZodObject<{
188
+ ultrawork: z.ZodOptional<z.ZodArray<z.ZodString>>;
189
+ search: z.ZodOptional<z.ZodArray<z.ZodString>>;
190
+ analyze: z.ZodOptional<z.ZodArray<z.ZodString>>;
191
+ ultrathink: z.ZodOptional<z.ZodArray<z.ZodString>>;
192
+ }, z.core.$strip>>;
193
+ routing: z.ZodOptional<z.ZodObject<{
194
+ enabled: z.ZodOptional<z.ZodBoolean>;
195
+ defaultTier: z.ZodOptional<z.ZodEnum<{
196
+ LOW: "LOW";
197
+ MEDIUM: "MEDIUM";
198
+ HIGH: "HIGH";
199
+ }>>;
200
+ escalationEnabled: z.ZodOptional<z.ZodBoolean>;
201
+ maxEscalations: z.ZodOptional<z.ZodNumber>;
202
+ tierModels: z.ZodOptional<z.ZodObject<{
203
+ LOW: z.ZodOptional<z.ZodString>;
204
+ MEDIUM: z.ZodOptional<z.ZodString>;
205
+ HIGH: z.ZodOptional<z.ZodString>;
206
+ }, z.core.$strip>>;
207
+ agentOverrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
208
+ tier: z.ZodEnum<{
209
+ LOW: "LOW";
210
+ MEDIUM: "MEDIUM";
211
+ HIGH: "HIGH";
212
+ }>;
213
+ reason: z.ZodOptional<z.ZodString>;
214
+ }, z.core.$strip>>>;
215
+ escalationKeywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
216
+ simplificationKeywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
217
+ }, z.core.$strip>>;
100
218
  disabled_hooks: z.ZodOptional<z.ZodArray<z.ZodString>>;
101
219
  disabled_agents: z.ZodOptional<z.ZodArray<z.ZodString>>;
102
220
  disabled_skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -173,7 +291,12 @@ export type ScientistConfig = z.infer<typeof ScientistConfigSchema>;
173
291
  export type OrchestratorConfig = z.infer<typeof OrchestratorConfigSchema>;
174
292
  export type ContextRecoveryConfig = z.infer<typeof ContextRecoveryConfigSchema>;
175
293
  export type EditErrorRecoveryConfig = z.infer<typeof EditErrorRecoveryConfigSchema>;
294
+ export type FeaturesConfig = z.infer<typeof FeaturesConfigSchema>;
295
+ export type McpServersConfig = z.infer<typeof McpServersConfigSchema>;
296
+ export type PermissionsConfig = z.infer<typeof PermissionsConfigSchema>;
297
+ export type MagicKeywordsConfig = z.infer<typeof MagicKeywordsConfigSchema>;
298
+ export type RoutingConfig = z.infer<typeof RoutingConfigSchema>;
176
299
  export type HookName = "todo-continuation-enforcer" | "keyword-detector" | "ralph-loop" | "session-recovery" | "agent-usage-reminder" | "context-window-monitor" | "comment-checker" | "tool-output-truncator" | "system-prompt-injector" | "persistent-mode" | "remember-tag-processor" | "autopilot" | "ultraqa-loop" | "context-recovery" | "edit-error-recovery" | "omc-orchestrator";
177
- export type AgentName = "oracle" | "librarian" | "explore" | "frontend-ui-ux-engineer" | "document-writer" | "multimodal-looker";
300
+ export type AgentName = "omc" | "architect" | "researcher" | "explore" | "frontendEngineer" | "documentWriter" | "multimodalLooker" | "critic" | "analyst" | "planner" | "oracle" | "librarian" | "frontend-ui-ux-engineer" | "document-writer" | "multimodal-looker";
178
301
  export declare function loadConfig(directory: string): OmoOmcsConfig;
179
302
  export {};
package/dist/index.js CHANGED
@@ -13553,8 +13553,55 @@ var AgentConfigSchema = exports_external.object({
13553
13553
  temperature: exports_external.number().min(0).max(2).optional(),
13554
13554
  top_p: exports_external.number().min(0).max(1).optional(),
13555
13555
  disable: exports_external.boolean().optional(),
13556
+ enabled: exports_external.boolean().optional(),
13556
13557
  prompt_append: exports_external.string().optional()
13557
13558
  });
13559
+ var FeaturesConfigSchema = exports_external.object({
13560
+ parallelExecution: exports_external.boolean().optional(),
13561
+ lspTools: exports_external.boolean().optional(),
13562
+ astTools: exports_external.boolean().optional(),
13563
+ continuationEnforcement: exports_external.boolean().optional(),
13564
+ autoContextInjection: exports_external.boolean().optional()
13565
+ });
13566
+ var McpServerConfigSchema = exports_external.object({
13567
+ enabled: exports_external.boolean().optional(),
13568
+ apiKey: exports_external.string().optional()
13569
+ });
13570
+ var McpServersConfigSchema = exports_external.object({
13571
+ exa: McpServerConfigSchema.optional(),
13572
+ context7: McpServerConfigSchema.optional(),
13573
+ grepApp: McpServerConfigSchema.optional()
13574
+ });
13575
+ var PermissionsConfigSchema = exports_external.object({
13576
+ allowBash: exports_external.boolean().optional(),
13577
+ allowEdit: exports_external.boolean().optional(),
13578
+ allowWrite: exports_external.boolean().optional(),
13579
+ maxBackgroundTasks: exports_external.number().min(1).max(20).optional()
13580
+ });
13581
+ var MagicKeywordsConfigSchema = exports_external.object({
13582
+ ultrawork: exports_external.array(exports_external.string()).optional(),
13583
+ search: exports_external.array(exports_external.string()).optional(),
13584
+ analyze: exports_external.array(exports_external.string()).optional(),
13585
+ ultrathink: exports_external.array(exports_external.string()).optional()
13586
+ });
13587
+ var AgentOverrideSchema = exports_external.object({
13588
+ tier: exports_external.enum(["LOW", "MEDIUM", "HIGH"]),
13589
+ reason: exports_external.string().optional()
13590
+ });
13591
+ var RoutingConfigSchema = exports_external.object({
13592
+ enabled: exports_external.boolean().optional(),
13593
+ defaultTier: exports_external.enum(["LOW", "MEDIUM", "HIGH"]).optional(),
13594
+ escalationEnabled: exports_external.boolean().optional(),
13595
+ maxEscalations: exports_external.number().min(0).max(5).optional(),
13596
+ tierModels: exports_external.object({
13597
+ LOW: exports_external.string().optional(),
13598
+ MEDIUM: exports_external.string().optional(),
13599
+ HIGH: exports_external.string().optional()
13600
+ }).optional(),
13601
+ agentOverrides: exports_external.record(exports_external.string(), AgentOverrideSchema).optional(),
13602
+ escalationKeywords: exports_external.array(exports_external.string()).optional(),
13603
+ simplificationKeywords: exports_external.array(exports_external.string()).optional()
13604
+ });
13558
13605
  var ModelMappingConfigSchema = exports_external.object({
13559
13606
  tierDefaults: exports_external.object({
13560
13607
  haiku: exports_external.string().optional(),
@@ -13611,6 +13658,11 @@ var OmoOmcsConfigSchema = exports_external.object({
13611
13658
  $schema: exports_external.string().optional(),
13612
13659
  agents: exports_external.record(exports_external.string(), AgentConfigSchema).optional(),
13613
13660
  model_mapping: ModelMappingConfigSchema.optional(),
13661
+ features: FeaturesConfigSchema.optional(),
13662
+ mcpServers: McpServersConfigSchema.optional(),
13663
+ permissions: PermissionsConfigSchema.optional(),
13664
+ magicKeywords: MagicKeywordsConfigSchema.optional(),
13665
+ routing: RoutingConfigSchema.optional(),
13614
13666
  disabled_hooks: exports_external.array(exports_external.string()).optional(),
13615
13667
  disabled_agents: exports_external.array(exports_external.string()).optional(),
13616
13668
  disabled_skills: exports_external.array(exports_external.string()).optional(),
@@ -13654,12 +13706,79 @@ function loadConfig(directory) {
13654
13706
  }
13655
13707
  return {
13656
13708
  agents: {
13657
- oracle: { model: "openai/gpt-5.2" },
13658
- librarian: { model: "google/gemini-3-flash" },
13659
- explore: { model: "google/gemini-3-flash" },
13660
- "frontend-ui-ux-engineer": { model: "google/gemini-3-pro-preview" },
13661
- "document-writer": { model: "google/gemini-3-flash" },
13662
- "multimodal-looker": { model: "google/gemini-3-flash" }
13709
+ omc: { model: "github-copilot/claude-opus-4", enabled: true },
13710
+ architect: { model: "github-copilot/claude-opus-4", enabled: true },
13711
+ researcher: { model: "github-copilot/claude-sonnet-4", enabled: true },
13712
+ explore: { model: "github-copilot/claude-haiku-4", enabled: true },
13713
+ frontendEngineer: { model: "github-copilot/claude-sonnet-4", enabled: true },
13714
+ documentWriter: { model: "github-copilot/claude-haiku-4", enabled: true },
13715
+ multimodalLooker: { model: "github-copilot/claude-sonnet-4", enabled: true },
13716
+ critic: { model: "github-copilot/claude-opus-4", enabled: true },
13717
+ analyst: { model: "github-copilot/claude-opus-4", enabled: true },
13718
+ planner: { model: "github-copilot/claude-opus-4", enabled: true }
13719
+ },
13720
+ features: {
13721
+ parallelExecution: true,
13722
+ lspTools: true,
13723
+ astTools: true,
13724
+ continuationEnforcement: true,
13725
+ autoContextInjection: true
13726
+ },
13727
+ mcpServers: {
13728
+ exa: { enabled: true },
13729
+ context7: { enabled: true },
13730
+ grepApp: { enabled: true }
13731
+ },
13732
+ permissions: {
13733
+ allowBash: true,
13734
+ allowEdit: true,
13735
+ allowWrite: true,
13736
+ maxBackgroundTasks: 5
13737
+ },
13738
+ magicKeywords: {
13739
+ ultrawork: ["ultrawork", "ulw", "uw"],
13740
+ search: ["search", "find", "locate"],
13741
+ analyze: ["analyze", "investigate", "examine"],
13742
+ ultrathink: ["ultrathink", "think", "reason", "ponder"]
13743
+ },
13744
+ routing: {
13745
+ enabled: true,
13746
+ defaultTier: "MEDIUM",
13747
+ escalationEnabled: true,
13748
+ maxEscalations: 2,
13749
+ tierModels: {
13750
+ LOW: "github-copilot/claude-haiku-4",
13751
+ MEDIUM: "github-copilot/claude-sonnet-4",
13752
+ HIGH: "github-copilot/claude-opus-4"
13753
+ },
13754
+ agentOverrides: {
13755
+ architect: { tier: "HIGH", reason: "Advisory agent requires deep reasoning" },
13756
+ planner: { tier: "HIGH", reason: "Strategic planning requires deep reasoning" },
13757
+ critic: { tier: "HIGH", reason: "Critical review requires deep reasoning" },
13758
+ analyst: { tier: "HIGH", reason: "Pre-planning analysis requires deep reasoning" },
13759
+ explore: { tier: "LOW", reason: "Exploration is search-focused" },
13760
+ documentWriter: { tier: "LOW", reason: "Documentation is straightforward" }
13761
+ },
13762
+ escalationKeywords: [
13763
+ "critical",
13764
+ "production",
13765
+ "urgent",
13766
+ "security",
13767
+ "breaking",
13768
+ "architecture",
13769
+ "refactor",
13770
+ "redesign",
13771
+ "root cause"
13772
+ ],
13773
+ simplificationKeywords: [
13774
+ "find",
13775
+ "list",
13776
+ "show",
13777
+ "where",
13778
+ "search",
13779
+ "locate",
13780
+ "grep"
13781
+ ]
13663
13782
  },
13664
13783
  background_task: {
13665
13784
  defaultConcurrency: 5
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-claudecode-opencode",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "OpenCode port of oh-my-claudecode - Multi-agent orchestration plugin (omco)",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",