ocmm 0.5.4 → 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.
Files changed (195) hide show
  1. package/.codex/agents/dw-builder.toml +1 -1
  2. package/.codex/agents/dw-clarifier.toml +1 -1
  3. package/.codex/agents/dw-code-search.toml +1 -1
  4. package/.codex/agents/dw-coding.toml +1 -1
  5. package/.codex/agents/dw-complex.toml +1 -1
  6. package/.codex/agents/dw-creative.toml +1 -1
  7. package/.codex/agents/dw-deep.toml +1 -1
  8. package/.codex/agents/dw-doc-search.toml +1 -1
  9. package/.codex/agents/dw-documenting.toml +1 -1
  10. package/.codex/agents/dw-explore.toml +1 -1
  11. package/.codex/agents/dw-frontend.toml +1 -1
  12. package/.codex/agents/dw-hard-reasoning.toml +1 -1
  13. package/.codex/agents/dw-media-reader.toml +1 -1
  14. package/.codex/agents/dw-normal-task.toml +1 -1
  15. package/.codex/agents/dw-oracle-2nd.toml +8 -0
  16. package/.codex/agents/dw-oracle.toml +1 -1
  17. package/.codex/agents/dw-orchestrator.toml +1 -1
  18. package/.codex/agents/dw-plan-critic.toml +1 -1
  19. package/.codex/agents/dw-planner.toml +1 -1
  20. package/.codex/agents/dw-quick.toml +1 -1
  21. package/.codex/agents/dw-research.toml +1 -1
  22. package/.codex/agents/dw-reviewer.toml +1 -1
  23. package/README.md +158 -13
  24. package/dist/cli/shim.d.ts +4 -2
  25. package/dist/cli/shim.js +26 -11
  26. package/dist/cli/shim.js.map +1 -1
  27. package/dist/codex/plugin-generator.js +82 -56
  28. package/dist/codex/plugin-generator.js.map +1 -1
  29. package/dist/config/load.d.ts +32 -23
  30. package/dist/config/load.js +384 -90
  31. package/dist/config/load.js.map +1 -1
  32. package/dist/config/merge.d.ts +18 -0
  33. package/dist/config/merge.js +46 -0
  34. package/dist/config/merge.js.map +1 -0
  35. package/dist/config/normalize.d.ts +1 -0
  36. package/dist/config/normalize.js +22 -16
  37. package/dist/config/normalize.js.map +1 -1
  38. package/dist/config/profile-aliases.d.ts +12 -0
  39. package/dist/config/profile-aliases.js +127 -0
  40. package/dist/config/profile-aliases.js.map +1 -0
  41. package/dist/config/profile-types.d.ts +13 -0
  42. package/dist/config/profile-types.js +2 -0
  43. package/dist/config/profile-types.js.map +1 -0
  44. package/dist/config/review-agent-migration.d.ts +89 -0
  45. package/dist/config/review-agent-migration.js +237 -0
  46. package/dist/config/review-agent-migration.js.map +1 -0
  47. package/dist/config/schema.d.ts +1364 -222
  48. package/dist/config/schema.js +169 -37
  49. package/dist/config/schema.js.map +1 -1
  50. package/dist/config/tolerant-parse.d.ts +41 -0
  51. package/dist/config/tolerant-parse.js +164 -0
  52. package/dist/config/tolerant-parse.js.map +1 -0
  53. package/dist/data/agents.d.ts +1 -1
  54. package/dist/data/agents.js +7 -7
  55. package/dist/data/agents.js.map +1 -1
  56. package/dist/hooks/chat-params.d.ts +2 -0
  57. package/dist/hooks/chat-params.js +113 -4
  58. package/dist/hooks/chat-params.js.map +1 -1
  59. package/dist/hooks/config.d.ts +14 -2
  60. package/dist/hooks/config.js +538 -60
  61. package/dist/hooks/config.js.map +1 -1
  62. package/dist/hooks/event.d.ts +3 -11
  63. package/dist/hooks/event.js +5 -9
  64. package/dist/hooks/event.js.map +1 -1
  65. package/dist/index.js +21 -14
  66. package/dist/index.js.map +1 -1
  67. package/dist/permissions/index.d.ts +3 -0
  68. package/dist/permissions/index.js +43 -28
  69. package/dist/permissions/index.js.map +1 -1
  70. package/dist/review-agents/expand.d.ts +36 -0
  71. package/dist/review-agents/expand.js +157 -0
  72. package/dist/review-agents/expand.js.map +1 -0
  73. package/dist/review-agents/names.d.ts +16 -0
  74. package/dist/review-agents/names.js +55 -0
  75. package/dist/review-agents/names.js.map +1 -0
  76. package/dist/routing/effective-route.d.ts +19 -0
  77. package/dist/routing/effective-route.js +133 -0
  78. package/dist/routing/effective-route.js.map +1 -0
  79. package/dist/routing/model-upgrades.d.ts +5 -0
  80. package/dist/routing/model-upgrades.js +59 -12
  81. package/dist/routing/model-upgrades.js.map +1 -1
  82. package/dist/routing/resolver.d.ts +8 -1
  83. package/dist/routing/resolver.js +29 -9
  84. package/dist/routing/resolver.js.map +1 -1
  85. package/dist/routing/route-registry.d.ts +13 -0
  86. package/dist/routing/route-registry.js +84 -0
  87. package/dist/routing/route-registry.js.map +1 -0
  88. package/dist/runtime-fallback/dispatcher.d.ts +1 -0
  89. package/dist/runtime-fallback/dispatcher.js +7 -5
  90. package/dist/runtime-fallback/dispatcher.js.map +1 -1
  91. package/dist/runtime-fallback/error-classifier.d.ts +3 -1
  92. package/dist/runtime-fallback/error-classifier.js +135 -1
  93. package/dist/runtime-fallback/error-classifier.js.map +1 -1
  94. package/dist/runtime-fallback/event-handler-generic-fallback.d.ts +26 -0
  95. package/dist/runtime-fallback/event-handler-generic-fallback.js +54 -0
  96. package/dist/runtime-fallback/event-handler-generic-fallback.js.map +1 -0
  97. package/dist/runtime-fallback/event-handler-idle-continuation.d.ts +9 -0
  98. package/dist/runtime-fallback/event-handler-idle-continuation.js +48 -0
  99. package/dist/runtime-fallback/event-handler-idle-continuation.js.map +1 -0
  100. package/dist/runtime-fallback/event-handler-support.d.ts +39 -0
  101. package/dist/runtime-fallback/event-handler-support.js +194 -0
  102. package/dist/runtime-fallback/event-handler-support.js.map +1 -0
  103. package/dist/runtime-fallback/event-handler-test-fixtures.d.ts +874 -0
  104. package/dist/runtime-fallback/event-handler-test-fixtures.js +150 -0
  105. package/dist/runtime-fallback/event-handler-test-fixtures.js.map +1 -0
  106. package/dist/runtime-fallback/event-handler.d.ts +13 -1
  107. package/dist/runtime-fallback/event-handler.js +334 -192
  108. package/dist/runtime-fallback/event-handler.js.map +1 -1
  109. package/dist/runtime-fallback/fallback-state.d.ts +8 -5
  110. package/dist/runtime-fallback/fallback-state.js +9 -6
  111. package/dist/runtime-fallback/fallback-state.js.map +1 -1
  112. package/dist/runtime-fallback/index.d.ts +21 -1
  113. package/dist/runtime-fallback/index.js +7 -1
  114. package/dist/runtime-fallback/index.js.map +1 -1
  115. package/dist/runtime-fallback/interruption-output-adapter.d.ts +7 -0
  116. package/dist/runtime-fallback/interruption-output-adapter.js +91 -0
  117. package/dist/runtime-fallback/interruption-output-adapter.js.map +1 -0
  118. package/dist/runtime-fallback/subagent-429-controller-fixture.d.ts +105 -0
  119. package/dist/runtime-fallback/subagent-429-controller-fixture.js +116 -0
  120. package/dist/runtime-fallback/subagent-429-controller-fixture.js.map +1 -0
  121. package/dist/runtime-fallback/subagent-429-controller.d.ts +167 -0
  122. package/dist/runtime-fallback/subagent-429-controller.js +334 -0
  123. package/dist/runtime-fallback/subagent-429-controller.js.map +1 -0
  124. package/dist/runtime-fallback/subagent-429-policy.d.ts +13 -0
  125. package/dist/runtime-fallback/subagent-429-policy.js +37 -0
  126. package/dist/runtime-fallback/subagent-429-policy.js.map +1 -0
  127. package/dist/runtime-fallback/subagent-429-session.d.ts +48 -0
  128. package/dist/runtime-fallback/subagent-429-session.js +316 -0
  129. package/dist/runtime-fallback/subagent-429-session.js.map +1 -0
  130. package/dist/shared/opencode-events.d.ts +22 -0
  131. package/dist/shared/opencode-events.js +75 -0
  132. package/dist/shared/opencode-events.js.map +1 -0
  133. package/dist/shared/types.d.ts +12 -1
  134. package/package.json +1 -1
  135. package/plugins/deepwork/.codex-plugin/plugin.json +1 -1
  136. package/plugins/deepwork/README.md +2 -1
  137. package/plugins/deepwork/agents/dw-builder.toml +1 -1
  138. package/plugins/deepwork/agents/dw-clarifier.toml +1 -1
  139. package/plugins/deepwork/agents/dw-code-search.toml +1 -1
  140. package/plugins/deepwork/agents/dw-coding.toml +1 -1
  141. package/plugins/deepwork/agents/dw-complex.toml +1 -1
  142. package/plugins/deepwork/agents/dw-creative.toml +1 -1
  143. package/plugins/deepwork/agents/dw-deep.toml +1 -1
  144. package/plugins/deepwork/agents/dw-doc-search.toml +1 -1
  145. package/plugins/deepwork/agents/dw-documenting.toml +1 -1
  146. package/plugins/deepwork/agents/dw-explore.toml +1 -1
  147. package/plugins/deepwork/agents/dw-frontend.toml +1 -1
  148. package/plugins/deepwork/agents/dw-hard-reasoning.toml +1 -1
  149. package/plugins/deepwork/agents/dw-media-reader.toml +1 -1
  150. package/plugins/deepwork/agents/dw-normal-task.toml +1 -1
  151. package/plugins/deepwork/agents/dw-oracle-2nd.toml +8 -0
  152. package/plugins/deepwork/agents/dw-oracle.toml +1 -1
  153. package/plugins/deepwork/agents/dw-orchestrator.toml +1 -1
  154. package/plugins/deepwork/agents/dw-plan-critic.toml +1 -1
  155. package/plugins/deepwork/agents/dw-planner.toml +1 -1
  156. package/plugins/deepwork/agents/dw-quick.toml +1 -1
  157. package/plugins/deepwork/agents/dw-research.toml +1 -1
  158. package/plugins/deepwork/agents/dw-reviewer.toml +1 -1
  159. package/plugins/deepwork/dist/cli/shim.d.ts +4 -2
  160. package/plugins/deepwork/dist/cli/shim.js +26 -11
  161. package/plugins/deepwork/dist/cli/shim.js.map +1 -1
  162. package/plugins/deepwork/dist/shared/opencode-events.d.ts +22 -0
  163. package/plugins/deepwork/dist/shared/opencode-events.js +75 -0
  164. package/plugins/deepwork/dist/shared/opencode-events.js.map +1 -0
  165. package/plugins/deepwork/dist/shared/types.d.ts +12 -1
  166. package/plugins/deepwork/package.json +1 -1
  167. package/plugins/deepwork/skills/deepwork/SKILL.md +30 -14
  168. package/plugins/deepwork/skills/deepwork-requesting-code-review/SKILL.md +53 -31
  169. package/plugins/deepwork/skills/deepwork-requesting-code-review/code-reviewer.md +11 -7
  170. package/plugins/deepwork/skills/deepwork-subagent-driven-development/SKILL.md +28 -19
  171. package/plugins/deepwork/skills/deepwork-subagent-driven-development/implementer-prompt.md +10 -3
  172. package/prompts/codex/agents/clarifier.md +4 -0
  173. package/prompts/codex/agents/orchestrator.md +12 -2
  174. package/prompts/codex/agents/plan-critic.md +4 -0
  175. package/prompts/codex/agents/planner.md +15 -10
  176. package/prompts/codex/agents/reviewer.md +8 -2
  177. package/prompts/codex/deepwork/gpt-5.6.md +20 -37
  178. package/prompts/omo/agents/clarifier.md +4 -0
  179. package/prompts/omo/agents/orchestrator.md +11 -0
  180. package/prompts/omo/agents/plan-critic.md +4 -0
  181. package/prompts/omo/agents/planner.md +15 -3
  182. package/prompts/omo/agents/reviewer.md +8 -2
  183. package/prompts/omo/deepwork/gpt-5.6.md +20 -37
  184. package/prompts/v1/agents/clarifier.md +4 -0
  185. package/prompts/v1/agents/orchestrator.md +12 -2
  186. package/prompts/v1/agents/plan-critic.md +4 -0
  187. package/prompts/v1/agents/planner.md +15 -10
  188. package/prompts/v1/agents/reviewer.md +8 -2
  189. package/prompts/v1/deepwork/gpt-5.6.md +20 -37
  190. package/skills/v1/requesting-code-review/SKILL.md +53 -31
  191. package/skills/v1/requesting-code-review/code-reviewer.md +11 -7
  192. package/skills/v1/subagent-driven-development/SKILL.md +28 -19
  193. package/skills/v1/subagent-driven-development/implementer-prompt.md +10 -3
  194. package/.codex/agents/dw-oracle-high.toml +0 -8
  195. package/plugins/deepwork/agents/dw-oracle-high.toml +0 -8
@@ -1,5 +1,6 @@
1
1
  import { z } from "zod";
2
- const VariantEnum = z.enum([
2
+ import { isReservedReviewAgentName, parseReviewAgentName } from "../review-agents/names.js";
3
+ export const VariantEnum = z.enum([
3
4
  "low",
4
5
  "medium",
5
6
  "high",
@@ -88,6 +89,7 @@ const HOOK_NAMES = [
88
89
  "commit-guard-injector",
89
90
  "subagent-git-guard",
90
91
  "subagent-depth-guard",
92
+ "subagent-interruption-recovery",
91
93
  ];
92
94
  const HookNameSchema = z.enum(HOOK_NAMES);
93
95
  const AGENT_NAMES = [
@@ -95,7 +97,14 @@ const AGENT_NAMES = [
95
97
  "builder",
96
98
  "reviewer",
97
99
  "oracle",
98
- "oracle-high",
100
+ "oracle-2nd",
101
+ "oracle-3rd",
102
+ "oracle-4th",
103
+ "oracle-5th",
104
+ "oracle-6th",
105
+ "oracle-7th",
106
+ "oracle-8th",
107
+ "oracle-9th",
99
108
  "doc-search",
100
109
  "code-search",
101
110
  "planner",
@@ -133,6 +142,12 @@ const defaultSkillsConfig = () => ({
133
142
  enable: [],
134
143
  disable: [],
135
144
  });
145
+ const Subagent429ScopeSchema = z.enum(["model", "provider"]);
146
+ const defaultSubagent429Config = () => ({
147
+ enabled: true,
148
+ maxRetries: 5,
149
+ providerScopes: {},
150
+ });
136
151
  const defaultRuntimeFallbackConfig = () => ({
137
152
  enabled: true,
138
153
  dispatch: true,
@@ -150,6 +165,7 @@ const defaultRuntimeFallbackConfig = () => ({
150
165
  "capacity",
151
166
  "try again",
152
167
  ],
168
+ subagent429: defaultSubagent429Config(),
153
169
  });
154
170
  const defaultIdleContinuationConfig = () => ({
155
171
  enabled: false,
@@ -174,6 +190,27 @@ const defaultMcpConfig = () => ({
174
190
  const defaultSubagentConfig = () => ({
175
191
  maxDepth: 3,
176
192
  });
193
+ const defaultFastModelsConfig = () => ({
194
+ providers: [],
195
+ mappings: {},
196
+ });
197
+ const FastModelMappingKeySchema = z.string().regex(/^[^/]+\/.+$/);
198
+ const FastModelMappingValueSchema = z.string().refine((value) => /\S/.test(value), {
199
+ message: "Fast model mapping values must contain non-whitespace text.",
200
+ });
201
+ export const FastModelsConfigSchema = z
202
+ .object({
203
+ providers: z.array(z.string().min(1)).default([]),
204
+ mappings: z.record(FastModelMappingKeySchema, FastModelMappingValueSchema).default({}),
205
+ })
206
+ .strict()
207
+ .default(defaultFastModelsConfig);
208
+ const ProfileFastModelsConfigSchema = z
209
+ .object({
210
+ providers: z.array(z.string().min(1)).optional(),
211
+ mappings: z.record(FastModelMappingKeySchema, FastModelMappingValueSchema).optional(),
212
+ })
213
+ .strict();
177
214
  export const SkillSourceEntrySchema = z.union([
178
215
  z.string().min(1),
179
216
  z
@@ -181,8 +218,7 @@ export const SkillSourceEntrySchema = z.union([
181
218
  path: z.string().min(1),
182
219
  recursive: z.boolean().default(true),
183
220
  glob: z.string().optional(),
184
- })
185
- .strict(),
221
+ }),
186
222
  ]);
187
223
  export const SkillsConfigSchema = z
188
224
  .object({
@@ -190,23 +226,117 @@ export const SkillsConfigSchema = z
190
226
  enable: z.array(z.string()).default([]),
191
227
  disable: z.array(z.string()).default([]),
192
228
  })
193
- .strict()
194
229
  .default(defaultSkillsConfig);
195
230
  const ProfileSkillsConfigSchema = z
196
231
  .object({
197
232
  sources: z.array(SkillSourceEntrySchema).optional(),
198
233
  enable: z.array(z.string()).optional(),
199
234
  disable: z.array(z.string()).optional(),
235
+ });
236
+ export const CategoryEntrySchema = z.object(ShorthandFields);
237
+ /**
238
+ * Logical review-tier override for a canonical Oracle/Reviewer normal slot.
239
+ *
240
+ * - A string materializes the native variant for that tier.
241
+ * - An object may override `model` and/or `variant`; at least one is required.
242
+ * `normal` is not a tier key (the unsuffixed slot IS normal).
243
+ */
244
+ export const ReviewVariantOverrideSchema = z.union([
245
+ VariantEnum,
246
+ z
247
+ .object({
248
+ model: z.string().min(1),
249
+ variant: VariantEnum.optional(),
250
+ })
251
+ .strict(),
252
+ z
253
+ .object({
254
+ variant: VariantEnum,
255
+ })
256
+ .strict(),
257
+ ]);
258
+ export const ReviewVariantsSchema = z
259
+ .object({
260
+ low: ReviewVariantOverrideSchema.optional(),
261
+ high: ReviewVariantOverrideSchema.optional(),
262
+ max: ReviewVariantOverrideSchema.optional(),
200
263
  })
201
264
  .strict();
202
- export const CategoryEntrySchema = z.object(ShorthandFields).strict();
203
- export const AgentEntrySchema = z
204
- .object({
265
+ export const AgentEntrySchema = z.object({
205
266
  ...ShorthandFields,
206
267
  ...AgentOverrideFields,
268
+ variants: ReviewVariantsSchema.optional(),
207
269
  disabled: z.boolean().optional(),
208
- })
209
- .strict();
270
+ });
271
+ const LATER_ORACLE_SLOT_NAMES = new Set([
272
+ "oracle-3rd",
273
+ "oracle-4th",
274
+ "oracle-5th",
275
+ "oracle-6th",
276
+ "oracle-7th",
277
+ "oracle-8th",
278
+ "oracle-9th",
279
+ ]);
280
+ function hasDirectNormalRequirement(entry) {
281
+ return entry.requirement !== undefined
282
+ || (typeof entry.model === "string" && entry.model.trim().length > 0)
283
+ || (Array.isArray(entry.fallbackModels) && entry.fallbackModels.length > 0);
284
+ }
285
+ function resolvesNormalRequirement(name, agents, visited = new Set()) {
286
+ if (visited.has(name))
287
+ return false;
288
+ const entry = agents[name];
289
+ if (!entry)
290
+ return false;
291
+ if (hasDirectNormalRequirement(entry))
292
+ return true;
293
+ const alias = entry.alias?.trim();
294
+ if (!alias)
295
+ return false;
296
+ return resolvesNormalRequirement(alias, agents, new Set([...visited, name]));
297
+ }
298
+ /**
299
+ * Declarative `agents` map schema used for JSON-schema generation. The
300
+ * runtime schema below adds cross-entry review-agent constraints that JSON
301
+ * Schema cannot express.
302
+ */
303
+ export const AgentsConfigSchemaForJsonSchema = z.record(z.string(), AgentEntrySchema);
304
+ /**
305
+ * Strict configuration boundary for every agent map. Generic runtime loading
306
+ * applies `tolerantParse` before this schema, but direct callers must receive
307
+ * errors for any malformed entry or invalid review-agent declaration.
308
+ */
309
+ export const AgentsConfigSchema = z.record(z.string(), AgentEntrySchema).superRefine((agents, ctx) => {
310
+ for (const [name, entry] of Object.entries(agents)) {
311
+ const identity = parseReviewAgentName(name);
312
+ const canonicalNormal = identity?.logicalTier === "normal" && identity.canonicalName === name;
313
+ if (isReservedReviewAgentName(name) && !canonicalNormal) {
314
+ ctx.addIssue({
315
+ code: "custom",
316
+ path: [name],
317
+ message: "review-agent config keys must be canonical unsuffixed slots",
318
+ });
319
+ }
320
+ if (entry.variants !== undefined && !canonicalNormal) {
321
+ ctx.addIssue({
322
+ code: "custom",
323
+ path: [name, "variants"],
324
+ message: "variants is allowed only on canonical Oracle or Reviewer normal-slot entries",
325
+ });
326
+ }
327
+ }
328
+ for (const name of Object.keys(agents)) {
329
+ const entry = agents[name];
330
+ const hasDeferredQualifiedRequirement = entry?.alias?.includes(":") === true;
331
+ if (LATER_ORACLE_SLOT_NAMES.has(name) && !hasDeferredQualifiedRequirement && !resolvesNormalRequirement(name, agents)) {
332
+ ctx.addIssue({
333
+ code: "custom",
334
+ path: [name],
335
+ message: "later Oracle slots must resolve a normal model requirement through model, fallbackModels, requirement, or alias",
336
+ });
337
+ }
338
+ }
339
+ });
210
340
  /**
211
341
  * Reactive runtime-fallback config.
212
342
  *
@@ -216,12 +346,25 @@ export const AgentEntrySchema = z
216
346
  *
217
347
  * `dispatch: false` makes the hook observe-only (classify + log, no retry).
218
348
  */
349
+ export const Subagent429ConfigSchema = z
350
+ .object({
351
+ enabled: z.boolean().default(true),
352
+ maxRetries: z.number().int().min(0).default(5),
353
+ providerScopes: z.record(z.string(), Subagent429ScopeSchema).default({}),
354
+ })
355
+ .default(defaultSubagent429Config);
356
+ const ProfileSubagent429ConfigSchema = z
357
+ .object({
358
+ enabled: z.boolean().optional(),
359
+ maxRetries: z.number().int().min(0).optional(),
360
+ providerScopes: z.record(z.string(), Subagent429ScopeSchema).optional(),
361
+ });
219
362
  export const RuntimeFallbackConfigSchema = z
220
363
  .object({
221
364
  enabled: z.boolean().default(true),
222
365
  /** When false, only classify + log; never call ctx.client.session.prompt. */
223
366
  dispatch: z.boolean().default(true),
224
- /** Max retries per session before giving up. */
367
+ /** Max committed fallback model switches per session. Same-model retries do not count. */
225
368
  maxAttempts: z.number().int().positive().default(3),
226
369
  /** Per-model cooldown window in seconds. */
227
370
  cooldownSeconds: z.number().int().positive().default(60),
@@ -243,6 +386,7 @@ export const RuntimeFallbackConfigSchema = z
243
386
  "capacity",
244
387
  "try again",
245
388
  ]),
389
+ subagent429: Subagent429ConfigSchema,
246
390
  })
247
391
  .default(defaultRuntimeFallbackConfig);
248
392
  export const IdleContinuationConfigSchema = z
@@ -256,26 +400,22 @@ export const HashlineConfigSchema = z
256
400
  .object({
257
401
  enabled: z.boolean().default(false),
258
402
  })
259
- .strict()
260
403
  .default(defaultHashlineConfig);
261
404
  const ProfileHashlineConfigSchema = z
262
405
  .object({
263
406
  enabled: z.boolean().optional(),
264
- })
265
- .strict();
407
+ });
266
408
  export const RulesConfigSchema = z
267
409
  .object({
268
410
  enabled: z.boolean().default(false),
269
411
  skipClaudeUserRules: z.boolean().default(false),
270
412
  })
271
- .strict()
272
413
  .default(defaultRulesConfig);
273
414
  const ProfileRulesConfigSchema = z
274
415
  .object({
275
416
  enabled: z.boolean().optional(),
276
417
  skipClaudeUserRules: z.boolean().optional(),
277
- })
278
- .strict();
418
+ });
279
419
  const McpLocalServerConfigSchema = z
280
420
  .object({
281
421
  type: z.literal("local"),
@@ -284,8 +424,7 @@ const McpLocalServerConfigSchema = z
284
424
  env: z.record(z.string(), z.string()).optional(),
285
425
  environment: z.record(z.string(), z.string()).optional(),
286
426
  enabled: z.boolean().default(true),
287
- })
288
- .strict();
427
+ });
289
428
  const McpRemoteServerConfigSchema = z
290
429
  .object({
291
430
  type: z.literal("remote"),
@@ -293,8 +432,7 @@ const McpRemoteServerConfigSchema = z
293
432
  headers: z.record(z.string(), z.string()).optional(),
294
433
  oauth: z.boolean().optional(),
295
434
  enabled: z.boolean().default(true),
296
- })
297
- .strict();
435
+ });
298
436
  export const McpServerConfigSchema = z.discriminatedUnion("type", [
299
437
  McpLocalServerConfigSchema,
300
438
  McpRemoteServerConfigSchema,
@@ -307,23 +445,19 @@ export const McpConfigSchema = z
307
445
  .object({
308
446
  provider: z.enum(["exa", "tavily"]).default("exa"),
309
447
  })
310
- .strict()
311
448
  .default(defaultMcpWebsearchConfig),
312
449
  servers: z.record(z.string(), McpServerConfigSchema).default({}),
313
450
  })
314
- .strict()
315
451
  .default(defaultMcpConfig);
316
452
  export const SubagentConfigSchema = z
317
453
  .object({
318
454
  maxDepth: z.number().int().min(0).max(20).default(3),
319
455
  })
320
- .strict()
321
456
  .default(defaultSubagentConfig);
322
457
  const ProfileSubagentConfigSchema = z
323
458
  .object({
324
459
  maxDepth: z.number().int().min(0).max(20).optional(),
325
- })
326
- .strict();
460
+ });
327
461
  const ProfileMcpConfigSchema = z
328
462
  .object({
329
463
  enabled: z.boolean().optional(),
@@ -332,11 +466,9 @@ const ProfileMcpConfigSchema = z
332
466
  .object({
333
467
  provider: z.enum(["exa", "tavily"]).optional(),
334
468
  })
335
- .strict()
336
469
  .optional(),
337
470
  servers: z.record(z.string(), McpServerConfigSchema).optional(),
338
- })
339
- .strict();
471
+ });
340
472
  /**
341
473
  * A profile is a partial config overlay. It may carry any top-level field
342
474
  * EXCEPT `profiles` and `activeProfile` themselves (nested profiles are not
@@ -348,7 +480,7 @@ const ProfileMcpConfigSchema = z
348
480
  export const ProfileEntrySchema = z
349
481
  .object({
350
482
  categories: z.record(z.string(), CategoryEntrySchema).optional(),
351
- agents: z.record(z.string(), AgentEntrySchema).optional(),
483
+ agents: AgentsConfigSchema.optional(),
352
484
  disabledAgents: z.array(z.union([AgentNameSchema, z.string()])).optional(),
353
485
  ...FeatureGateArrayFields,
354
486
  skills: ProfileSkillsConfigSchema.optional(),
@@ -372,6 +504,7 @@ export const ProfileEntrySchema = z
372
504
  cooldownSeconds: z.number().int().positive().optional(),
373
505
  retryOnStatusCodes: z.array(z.number().int()).optional(),
374
506
  retryOnPatterns: z.array(z.string()).optional(),
507
+ subagent429: ProfileSubagent429ConfigSchema.optional(),
375
508
  })
376
509
  .optional(),
377
510
  idleContinuation: z
@@ -385,11 +518,11 @@ export const ProfileEntrySchema = z
385
518
  rules: ProfileRulesConfigSchema.optional(),
386
519
  mcp: ProfileMcpConfigSchema.optional(),
387
520
  subagent: ProfileSubagentConfigSchema.optional(),
521
+ fastModels: ProfileFastModelsConfigSchema.optional(),
388
522
  registerBuiltinAgents: z.boolean().optional(),
389
523
  promptsRoot: z.string().optional(),
390
524
  debug: z.boolean().optional(),
391
- })
392
- .strict();
525
+ });
393
526
  export const IsolationModeSchema = z.enum(["none", "inline", "config-file", "config-dir", "xdg"]);
394
527
  export const ShimConfigSchema = z
395
528
  .object({
@@ -400,13 +533,12 @@ export const ShimConfigSchema = z
400
533
  keepOmo: z.boolean().optional(),
401
534
  noProviders: z.boolean().optional(),
402
535
  noPlugins: z.boolean().optional(),
403
- })
404
- .strict();
536
+ });
405
537
  export const OcmmConfigSchema = z
406
538
  .object({
407
539
  $schema: z.string().optional(),
408
540
  categories: z.record(z.string(), CategoryEntrySchema).optional(),
409
- agents: z.record(z.string(), AgentEntrySchema).optional(),
541
+ agents: AgentsConfigSchema.optional(),
410
542
  disabledAgents: z.array(z.union([AgentNameSchema, z.string()])).optional(),
411
543
  ...FeatureGateArrayFields,
412
544
  skills: SkillsConfigSchema,
@@ -427,6 +559,7 @@ export const OcmmConfigSchema = z
427
559
  rules: RulesConfigSchema,
428
560
  mcp: McpConfigSchema,
429
561
  subagent: SubagentConfigSchema,
562
+ fastModels: FastModelsConfigSchema,
430
563
  /** Named partial overlays selectable via `activeProfile` or OCMM_PROFILE. */
431
564
  profiles: z.record(z.string(), ProfileEntrySchema).default({}),
432
565
  /**
@@ -442,8 +575,7 @@ export const OcmmConfigSchema = z
442
575
  debug: z.boolean().default(false),
443
576
  /** Defaults for the `ocmm` shim binary. CLI flags override these. */
444
577
  shim: ShimConfigSchema.optional(),
445
- })
446
- .strict();
578
+ });
447
579
  export function defaultConfig() {
448
580
  return OcmmConfigSchema.parse({});
449
581
  }
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import type { ZodType } from "zod";
2
+ type Issue = {
3
+ path: readonly PropertyKey[];
4
+ code?: string;
5
+ errors?: readonly (readonly Issue[])[];
6
+ };
7
+ export type TolerantParseLayer = {
8
+ value: unknown;
9
+ profileOverlay?: boolean;
10
+ };
11
+ export type TolerantParseResult<T> = {
12
+ success: true;
13
+ data: T;
14
+ } | {
15
+ success: false;
16
+ issues: readonly Issue[];
17
+ };
18
+ export type TolerantParseLayersResult<T> = {
19
+ success: true;
20
+ data: T;
21
+ layers: TolerantParseLayer[];
22
+ } | {
23
+ success: false;
24
+ issues: readonly Issue[];
25
+ };
26
+ /**
27
+ * Parse a JSON-object-like config value while retaining valid siblings.
28
+ *
29
+ * Each retry removes the deepest invalid field or array element identified
30
+ * by Zod. If that terminal field was already removed, the closest surviving
31
+ * parent entry is removed instead. Zod applies defaults on the successful
32
+ * parse after the invalid input has been discarded.
33
+ */
34
+ export declare function tolerantParse<T>(schema: ZodType<T>, value: unknown): TolerantParseResult<T>;
35
+ /**
36
+ * Parse layered config inputs without letting an invalid override erase a
37
+ * valid lower-priority value. The merge callback is invoked again after every
38
+ * removal, so each discarded value behaves exactly as if its layer omitted it.
39
+ */
40
+ export declare function tolerantParseLayers<T>(schema: ZodType<T>, layers: readonly TolerantParseLayer[], merge: (layers: readonly TolerantParseLayer[]) => unknown): TolerantParseLayersResult<T>;
41
+ export {};
@@ -0,0 +1,164 @@
1
+ /**
2
+ * Parse a JSON-object-like config value while retaining valid siblings.
3
+ *
4
+ * Each retry removes the deepest invalid field or array element identified
5
+ * by Zod. If that terminal field was already removed, the closest surviving
6
+ * parent entry is removed instead. Zod applies defaults on the successful
7
+ * parse after the invalid input has been discarded.
8
+ */
9
+ export function tolerantParse(schema, value) {
10
+ let result = schema.safeParse(value);
11
+ if (result.success)
12
+ return result;
13
+ if (!isPlainObject(value))
14
+ return { success: false, issues: result.error.issues };
15
+ const candidate = cloneValue(value);
16
+ while (!result.success) {
17
+ if (!discardIssues([candidate], result.error.issues)) {
18
+ return { success: false, issues: result.error.issues };
19
+ }
20
+ result = schema.safeParse(candidate);
21
+ }
22
+ return result;
23
+ }
24
+ /**
25
+ * Parse layered config inputs without letting an invalid override erase a
26
+ * valid lower-priority value. The merge callback is invoked again after every
27
+ * removal, so each discarded value behaves exactly as if its layer omitted it.
28
+ */
29
+ export function tolerantParseLayers(schema, layers, merge) {
30
+ const candidates = layers.map((layer) => ({ ...layer, value: cloneValue(layer.value) }));
31
+ let result = schema.safeParse(merge(candidates));
32
+ while (!result.success) {
33
+ if (discardIssues(candidates.map(({ value }) => value), result.error.issues)) {
34
+ result = schema.safeParse(merge(candidates));
35
+ continue;
36
+ }
37
+ if (!hasRootIssue(result.error.issues) || !clearHighestPriorityLayer(candidates)) {
38
+ return { success: false, issues: result.error.issues };
39
+ }
40
+ result = schema.safeParse(merge(candidates));
41
+ }
42
+ return { success: true, data: result.data, layers: candidates };
43
+ }
44
+ function isPlainObject(value) {
45
+ return typeof value === "object" && value !== null && !Array.isArray(value);
46
+ }
47
+ function cloneValue(value) {
48
+ if (Array.isArray(value))
49
+ return value.map(cloneValue);
50
+ if (!isPlainObject(value))
51
+ return value;
52
+ return Object.fromEntries(Object.entries(value).map(([key, child]) => [key, cloneValue(child)]));
53
+ }
54
+ function discardIssues(values, issues) {
55
+ const paths = issues
56
+ .flatMap((issue) => issuePaths(issue))
57
+ .sort((left, right) => right.length - left.length);
58
+ for (const path of paths) {
59
+ for (let index = values.length - 1; index >= 0; index--) {
60
+ if (discardAtPath(values[index], path))
61
+ return true;
62
+ }
63
+ }
64
+ let fallback;
65
+ for (const path of paths) {
66
+ for (let length = path.length - 1; length > 0; length--) {
67
+ const parentPath = path.slice(0, length);
68
+ for (let index = values.length - 1; index >= 0; index--) {
69
+ if (!canDiscardAtPath(values[index], parentPath))
70
+ continue;
71
+ if (!fallback
72
+ || parentPath.length > fallback.path.length
73
+ || (parentPath.length === fallback.path.length && index > fallback.layer)) {
74
+ fallback = { value: values[index], path: parentPath, layer: index };
75
+ }
76
+ }
77
+ }
78
+ }
79
+ if (fallback)
80
+ return discardAtPath(fallback.value, fallback.path);
81
+ return false;
82
+ }
83
+ function hasRootIssue(issues) {
84
+ return issues.some((issue) => issue.path.length === 0);
85
+ }
86
+ function clearHighestPriorityLayer(layers) {
87
+ for (let index = layers.length - 1; index >= 0; index--) {
88
+ if (isEmptyLayer(layers[index].value))
89
+ continue;
90
+ layers[index].value = undefined;
91
+ return true;
92
+ }
93
+ return false;
94
+ }
95
+ function isEmptyLayer(value) {
96
+ if (value === undefined)
97
+ return true;
98
+ return isPlainObject(value) && Object.keys(value).length === 0;
99
+ }
100
+ function isPathSegment(segment) {
101
+ return typeof segment === "string" || typeof segment === "number";
102
+ }
103
+ function issuePaths(issue, prefix = []) {
104
+ const path = asPath(issue.path);
105
+ if (!path)
106
+ return [];
107
+ const fullPath = [...prefix, ...path];
108
+ if (issue.code === "invalid_union" && issue.errors) {
109
+ const nested = issue.errors.flatMap((branch) => branch.flatMap((child) => issuePaths(child, fullPath)));
110
+ if (nested.length > 0)
111
+ return nested;
112
+ }
113
+ return [fullPath];
114
+ }
115
+ function asPath(path) {
116
+ if (!path.every(isPathSegment))
117
+ return undefined;
118
+ return path;
119
+ }
120
+ function canDiscardAtPath(value, path) {
121
+ return parentAtPath(value, path) !== undefined;
122
+ }
123
+ function discardAtPath(value, path) {
124
+ const parentAndTarget = parentAtPath(value, path);
125
+ if (!parentAndTarget)
126
+ return false;
127
+ if (typeof parentAndTarget.target === "number") {
128
+ const parent = parentAndTarget.parent;
129
+ parent.splice(parentAndTarget.target, 1);
130
+ return true;
131
+ }
132
+ delete parentAndTarget.parent[parentAndTarget.target];
133
+ return true;
134
+ }
135
+ function parentAtPath(value, path) {
136
+ const target = path.at(-1);
137
+ if (target === undefined)
138
+ return undefined;
139
+ let parent = value;
140
+ for (const segment of path.slice(0, -1)) {
141
+ parent = getChild(parent, segment);
142
+ if (parent === undefined)
143
+ return undefined;
144
+ }
145
+ if (Array.isArray(parent)) {
146
+ if (typeof target !== "number" || !Number.isInteger(target) || target < 0 || target >= parent.length)
147
+ return undefined;
148
+ return { parent, target };
149
+ }
150
+ if (!isPlainObject(parent) || !Object.hasOwn(parent, String(target)))
151
+ return undefined;
152
+ return { parent, target: String(target) };
153
+ }
154
+ function getChild(value, segment) {
155
+ if (Array.isArray(value)) {
156
+ if (typeof segment !== "number" || !Number.isInteger(segment) || segment < 0 || segment >= value.length)
157
+ return undefined;
158
+ return value[segment];
159
+ }
160
+ if (!isPlainObject(value) || !Object.hasOwn(value, String(segment)))
161
+ return undefined;
162
+ return value[String(segment)];
163
+ }
164
+ //# sourceMappingURL=tolerant-parse.js.map