ocmm 0.5.3 → 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/.codex/agents/dw-builder.toml +3 -3
- package/.codex/agents/dw-clarifier.toml +2 -2
- package/.codex/agents/dw-code-search.toml +2 -2
- package/.codex/agents/dw-coding.toml +2 -2
- package/.codex/agents/dw-complex.toml +2 -2
- package/.codex/agents/dw-creative.toml +2 -2
- package/.codex/agents/dw-deep.toml +3 -3
- package/.codex/agents/dw-doc-search.toml +2 -2
- package/.codex/agents/dw-documenting.toml +2 -2
- package/.codex/agents/dw-explore.toml +2 -2
- package/.codex/agents/dw-frontend.toml +2 -2
- package/.codex/agents/dw-hard-reasoning.toml +2 -2
- package/.codex/agents/dw-media-reader.toml +2 -2
- package/.codex/agents/dw-normal-task.toml +2 -2
- package/.codex/agents/dw-oracle-2nd.toml +8 -0
- package/.codex/agents/dw-oracle.toml +3 -3
- package/.codex/agents/dw-orchestrator.toml +2 -2
- package/.codex/agents/dw-plan-critic.toml +2 -2
- package/.codex/agents/dw-planner.toml +3 -3
- package/.codex/agents/dw-quick.toml +2 -2
- package/.codex/agents/dw-research.toml +2 -2
- package/.codex/agents/dw-reviewer.toml +2 -2
- package/README.md +193 -46
- package/dist/cli/shim.d.ts +4 -2
- package/dist/cli/shim.js +26 -11
- package/dist/cli/shim.js.map +1 -1
- package/dist/codex/plugin-generator.js +121 -96
- package/dist/codex/plugin-generator.js.map +1 -1
- package/dist/config/load.d.ts +32 -23
- package/dist/config/load.js +384 -90
- package/dist/config/load.js.map +1 -1
- package/dist/config/merge.d.ts +18 -0
- package/dist/config/merge.js +46 -0
- package/dist/config/merge.js.map +1 -0
- package/dist/config/normalize.d.ts +1 -0
- package/dist/config/normalize.js +22 -16
- package/dist/config/normalize.js.map +1 -1
- package/dist/config/profile-aliases.d.ts +12 -0
- package/dist/config/profile-aliases.js +127 -0
- package/dist/config/profile-aliases.js.map +1 -0
- package/dist/config/profile-types.d.ts +13 -0
- package/dist/config/profile-types.js +2 -0
- package/dist/config/profile-types.js.map +1 -0
- package/dist/config/review-agent-migration.d.ts +89 -0
- package/dist/config/review-agent-migration.js +237 -0
- package/dist/config/review-agent-migration.js.map +1 -0
- package/dist/config/schema.d.ts +1364 -219
- package/dist/config/schema.js +169 -36
- package/dist/config/schema.js.map +1 -1
- package/dist/config/tolerant-parse.d.ts +41 -0
- package/dist/config/tolerant-parse.js +164 -0
- package/dist/config/tolerant-parse.js.map +1 -0
- package/dist/data/agents.d.ts +2 -1
- package/dist/data/agents.js +25 -10
- package/dist/data/agents.js.map +1 -1
- package/dist/data/categories.js +2 -1
- package/dist/data/categories.js.map +1 -1
- package/dist/hooks/chat-params.d.ts +2 -0
- package/dist/hooks/chat-params.js +182 -16
- package/dist/hooks/chat-params.js.map +1 -1
- package/dist/hooks/config.d.ts +14 -2
- package/dist/hooks/config.js +538 -60
- package/dist/hooks/config.js.map +1 -1
- package/dist/hooks/event.d.ts +3 -11
- package/dist/hooks/event.js +5 -9
- package/dist/hooks/event.js.map +1 -1
- package/dist/index.js +21 -14
- package/dist/index.js.map +1 -1
- package/dist/intent/model-family.d.ts +2 -0
- package/dist/intent/model-family.js +11 -0
- package/dist/intent/model-family.js.map +1 -1
- package/dist/intent/prompt-loader.d.ts +3 -3
- package/dist/intent/prompt-loader.js +3 -3
- package/dist/permissions/index.d.ts +3 -0
- package/dist/permissions/index.js +43 -28
- package/dist/permissions/index.js.map +1 -1
- package/dist/review-agents/expand.d.ts +36 -0
- package/dist/review-agents/expand.js +157 -0
- package/dist/review-agents/expand.js.map +1 -0
- package/dist/review-agents/names.d.ts +16 -0
- package/dist/review-agents/names.js +55 -0
- package/dist/review-agents/names.js.map +1 -0
- package/dist/routing/effective-route.d.ts +19 -0
- package/dist/routing/effective-route.js +133 -0
- package/dist/routing/effective-route.js.map +1 -0
- package/dist/routing/model-upgrades.d.ts +5 -0
- package/dist/routing/model-upgrades.js +59 -11
- package/dist/routing/model-upgrades.js.map +1 -1
- package/dist/routing/resolver.d.ts +8 -1
- package/dist/routing/resolver.js +29 -9
- package/dist/routing/resolver.js.map +1 -1
- package/dist/routing/route-registry.d.ts +13 -0
- package/dist/routing/route-registry.js +84 -0
- package/dist/routing/route-registry.js.map +1 -0
- package/dist/routing/variant-translator.js +7 -4
- package/dist/routing/variant-translator.js.map +1 -1
- package/dist/runtime-fallback/dispatcher.d.ts +1 -0
- package/dist/runtime-fallback/dispatcher.js +7 -5
- package/dist/runtime-fallback/dispatcher.js.map +1 -1
- package/dist/runtime-fallback/error-classifier.d.ts +3 -1
- package/dist/runtime-fallback/error-classifier.js +135 -1
- package/dist/runtime-fallback/error-classifier.js.map +1 -1
- package/dist/runtime-fallback/event-handler-generic-fallback.d.ts +26 -0
- package/dist/runtime-fallback/event-handler-generic-fallback.js +54 -0
- package/dist/runtime-fallback/event-handler-generic-fallback.js.map +1 -0
- package/dist/runtime-fallback/event-handler-idle-continuation.d.ts +9 -0
- package/dist/runtime-fallback/event-handler-idle-continuation.js +48 -0
- package/dist/runtime-fallback/event-handler-idle-continuation.js.map +1 -0
- package/dist/runtime-fallback/event-handler-support.d.ts +39 -0
- package/dist/runtime-fallback/event-handler-support.js +194 -0
- package/dist/runtime-fallback/event-handler-support.js.map +1 -0
- package/dist/runtime-fallback/event-handler-test-fixtures.d.ts +874 -0
- package/dist/runtime-fallback/event-handler-test-fixtures.js +150 -0
- package/dist/runtime-fallback/event-handler-test-fixtures.js.map +1 -0
- package/dist/runtime-fallback/event-handler.d.ts +13 -1
- package/dist/runtime-fallback/event-handler.js +334 -192
- package/dist/runtime-fallback/event-handler.js.map +1 -1
- package/dist/runtime-fallback/fallback-state.d.ts +8 -5
- package/dist/runtime-fallback/fallback-state.js +9 -6
- package/dist/runtime-fallback/fallback-state.js.map +1 -1
- package/dist/runtime-fallback/index.d.ts +21 -1
- package/dist/runtime-fallback/index.js +7 -1
- package/dist/runtime-fallback/index.js.map +1 -1
- package/dist/runtime-fallback/interruption-output-adapter.d.ts +7 -0
- package/dist/runtime-fallback/interruption-output-adapter.js +91 -0
- package/dist/runtime-fallback/interruption-output-adapter.js.map +1 -0
- package/dist/runtime-fallback/subagent-429-controller-fixture.d.ts +105 -0
- package/dist/runtime-fallback/subagent-429-controller-fixture.js +116 -0
- package/dist/runtime-fallback/subagent-429-controller-fixture.js.map +1 -0
- package/dist/runtime-fallback/subagent-429-controller.d.ts +167 -0
- package/dist/runtime-fallback/subagent-429-controller.js +334 -0
- package/dist/runtime-fallback/subagent-429-controller.js.map +1 -0
- package/dist/runtime-fallback/subagent-429-policy.d.ts +13 -0
- package/dist/runtime-fallback/subagent-429-policy.js +37 -0
- package/dist/runtime-fallback/subagent-429-policy.js.map +1 -0
- package/dist/runtime-fallback/subagent-429-session.d.ts +48 -0
- package/dist/runtime-fallback/subagent-429-session.js +316 -0
- package/dist/runtime-fallback/subagent-429-session.js.map +1 -0
- package/dist/shared/opencode-events.d.ts +22 -0
- package/dist/shared/opencode-events.js +75 -0
- package/dist/shared/opencode-events.js.map +1 -0
- package/dist/shared/types.d.ts +12 -1
- package/package.json +1 -1
- package/plugins/deepwork/.codex-plugin/plugin.json +1 -1
- package/plugins/deepwork/README.md +3 -2
- package/plugins/deepwork/agents/dw-builder.toml +3 -3
- package/plugins/deepwork/agents/dw-clarifier.toml +2 -2
- package/plugins/deepwork/agents/dw-code-search.toml +2 -2
- package/plugins/deepwork/agents/dw-coding.toml +2 -2
- package/plugins/deepwork/agents/dw-complex.toml +2 -2
- package/plugins/deepwork/agents/dw-creative.toml +2 -2
- package/plugins/deepwork/agents/dw-deep.toml +3 -3
- package/plugins/deepwork/agents/dw-doc-search.toml +2 -2
- package/plugins/deepwork/agents/dw-documenting.toml +2 -2
- package/plugins/deepwork/agents/dw-explore.toml +2 -2
- package/plugins/deepwork/agents/dw-frontend.toml +2 -2
- package/plugins/deepwork/agents/dw-hard-reasoning.toml +2 -2
- package/plugins/deepwork/agents/dw-media-reader.toml +2 -2
- package/plugins/deepwork/agents/dw-normal-task.toml +2 -2
- package/plugins/deepwork/agents/dw-oracle-2nd.toml +8 -0
- package/plugins/deepwork/agents/dw-oracle.toml +3 -3
- package/plugins/deepwork/agents/dw-orchestrator.toml +2 -2
- package/plugins/deepwork/agents/dw-plan-critic.toml +2 -2
- package/plugins/deepwork/agents/dw-planner.toml +3 -3
- package/plugins/deepwork/agents/dw-quick.toml +2 -2
- package/plugins/deepwork/agents/dw-research.toml +2 -2
- package/plugins/deepwork/agents/dw-reviewer.toml +2 -2
- package/plugins/deepwork/dist/cli/shim.d.ts +4 -2
- package/plugins/deepwork/dist/cli/shim.js +26 -11
- package/plugins/deepwork/dist/cli/shim.js.map +1 -1
- package/plugins/deepwork/dist/shared/opencode-events.d.ts +22 -0
- package/plugins/deepwork/dist/shared/opencode-events.js +75 -0
- package/plugins/deepwork/dist/shared/opencode-events.js.map +1 -0
- package/plugins/deepwork/dist/shared/types.d.ts +12 -1
- package/plugins/deepwork/package.json +1 -1
- package/plugins/deepwork/skills/deepwork/SKILL.md +74 -58
- package/plugins/deepwork/skills/deepwork-requesting-code-review/SKILL.md +53 -27
- package/plugins/deepwork/skills/deepwork-requesting-code-review/code-reviewer.md +11 -7
- package/plugins/deepwork/skills/deepwork-subagent-driven-development/SKILL.md +34 -21
- package/plugins/deepwork/skills/deepwork-subagent-driven-development/implementer-prompt.md +10 -3
- package/prompts/codex/agents/clarifier.md +4 -0
- package/prompts/codex/agents/orchestrator.md +12 -2
- package/prompts/codex/agents/plan-critic.md +4 -0
- package/prompts/codex/agents/planner.md +15 -10
- package/prompts/codex/agents/reviewer.md +8 -2
- package/prompts/codex/deepwork/gpt-5.6.md +20 -37
- package/prompts/omo/agents/clarifier.md +4 -0
- package/prompts/omo/agents/orchestrator.md +11 -0
- package/prompts/omo/agents/plan-critic.md +4 -0
- package/prompts/omo/agents/planner.md +15 -3
- package/prompts/omo/agents/reviewer.md +8 -2
- package/prompts/omo/deepwork/gpt-5.6.md +20 -37
- package/prompts/v1/agents/clarifier.md +4 -0
- package/prompts/v1/agents/orchestrator.md +12 -2
- package/prompts/v1/agents/plan-critic.md +4 -0
- package/prompts/v1/agents/planner.md +15 -10
- package/prompts/v1/agents/reviewer.md +8 -2
- package/prompts/v1/deepwork/gpt-5.6.md +20 -37
- package/skills/v1/requesting-code-review/SKILL.md +53 -27
- package/skills/v1/requesting-code-review/code-reviewer.md +11 -7
- package/skills/v1/subagent-driven-development/SKILL.md +34 -21
- package/skills/v1/subagent-driven-development/implementer-prompt.md +10 -3
package/dist/config/schema.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
|
|
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,6 +97,14 @@ const AGENT_NAMES = [
|
|
|
95
97
|
"builder",
|
|
96
98
|
"reviewer",
|
|
97
99
|
"oracle",
|
|
100
|
+
"oracle-2nd",
|
|
101
|
+
"oracle-3rd",
|
|
102
|
+
"oracle-4th",
|
|
103
|
+
"oracle-5th",
|
|
104
|
+
"oracle-6th",
|
|
105
|
+
"oracle-7th",
|
|
106
|
+
"oracle-8th",
|
|
107
|
+
"oracle-9th",
|
|
98
108
|
"doc-search",
|
|
99
109
|
"code-search",
|
|
100
110
|
"planner",
|
|
@@ -132,6 +142,12 @@ const defaultSkillsConfig = () => ({
|
|
|
132
142
|
enable: [],
|
|
133
143
|
disable: [],
|
|
134
144
|
});
|
|
145
|
+
const Subagent429ScopeSchema = z.enum(["model", "provider"]);
|
|
146
|
+
const defaultSubagent429Config = () => ({
|
|
147
|
+
enabled: true,
|
|
148
|
+
maxRetries: 5,
|
|
149
|
+
providerScopes: {},
|
|
150
|
+
});
|
|
135
151
|
const defaultRuntimeFallbackConfig = () => ({
|
|
136
152
|
enabled: true,
|
|
137
153
|
dispatch: true,
|
|
@@ -149,6 +165,7 @@ const defaultRuntimeFallbackConfig = () => ({
|
|
|
149
165
|
"capacity",
|
|
150
166
|
"try again",
|
|
151
167
|
],
|
|
168
|
+
subagent429: defaultSubagent429Config(),
|
|
152
169
|
});
|
|
153
170
|
const defaultIdleContinuationConfig = () => ({
|
|
154
171
|
enabled: false,
|
|
@@ -173,6 +190,27 @@ const defaultMcpConfig = () => ({
|
|
|
173
190
|
const defaultSubagentConfig = () => ({
|
|
174
191
|
maxDepth: 3,
|
|
175
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();
|
|
176
214
|
export const SkillSourceEntrySchema = z.union([
|
|
177
215
|
z.string().min(1),
|
|
178
216
|
z
|
|
@@ -180,8 +218,7 @@ export const SkillSourceEntrySchema = z.union([
|
|
|
180
218
|
path: z.string().min(1),
|
|
181
219
|
recursive: z.boolean().default(true),
|
|
182
220
|
glob: z.string().optional(),
|
|
183
|
-
})
|
|
184
|
-
.strict(),
|
|
221
|
+
}),
|
|
185
222
|
]);
|
|
186
223
|
export const SkillsConfigSchema = z
|
|
187
224
|
.object({
|
|
@@ -189,23 +226,117 @@ export const SkillsConfigSchema = z
|
|
|
189
226
|
enable: z.array(z.string()).default([]),
|
|
190
227
|
disable: z.array(z.string()).default([]),
|
|
191
228
|
})
|
|
192
|
-
.strict()
|
|
193
229
|
.default(defaultSkillsConfig);
|
|
194
230
|
const ProfileSkillsConfigSchema = z
|
|
195
231
|
.object({
|
|
196
232
|
sources: z.array(SkillSourceEntrySchema).optional(),
|
|
197
233
|
enable: z.array(z.string()).optional(),
|
|
198
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(),
|
|
199
263
|
})
|
|
200
264
|
.strict();
|
|
201
|
-
export const
|
|
202
|
-
export const AgentEntrySchema = z
|
|
203
|
-
.object({
|
|
265
|
+
export const AgentEntrySchema = z.object({
|
|
204
266
|
...ShorthandFields,
|
|
205
267
|
...AgentOverrideFields,
|
|
268
|
+
variants: ReviewVariantsSchema.optional(),
|
|
206
269
|
disabled: z.boolean().optional(),
|
|
207
|
-
})
|
|
208
|
-
|
|
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
|
+
});
|
|
209
340
|
/**
|
|
210
341
|
* Reactive runtime-fallback config.
|
|
211
342
|
*
|
|
@@ -215,12 +346,25 @@ export const AgentEntrySchema = z
|
|
|
215
346
|
*
|
|
216
347
|
* `dispatch: false` makes the hook observe-only (classify + log, no retry).
|
|
217
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
|
+
});
|
|
218
362
|
export const RuntimeFallbackConfigSchema = z
|
|
219
363
|
.object({
|
|
220
364
|
enabled: z.boolean().default(true),
|
|
221
365
|
/** When false, only classify + log; never call ctx.client.session.prompt. */
|
|
222
366
|
dispatch: z.boolean().default(true),
|
|
223
|
-
/** Max
|
|
367
|
+
/** Max committed fallback model switches per session. Same-model retries do not count. */
|
|
224
368
|
maxAttempts: z.number().int().positive().default(3),
|
|
225
369
|
/** Per-model cooldown window in seconds. */
|
|
226
370
|
cooldownSeconds: z.number().int().positive().default(60),
|
|
@@ -242,6 +386,7 @@ export const RuntimeFallbackConfigSchema = z
|
|
|
242
386
|
"capacity",
|
|
243
387
|
"try again",
|
|
244
388
|
]),
|
|
389
|
+
subagent429: Subagent429ConfigSchema,
|
|
245
390
|
})
|
|
246
391
|
.default(defaultRuntimeFallbackConfig);
|
|
247
392
|
export const IdleContinuationConfigSchema = z
|
|
@@ -255,26 +400,22 @@ export const HashlineConfigSchema = z
|
|
|
255
400
|
.object({
|
|
256
401
|
enabled: z.boolean().default(false),
|
|
257
402
|
})
|
|
258
|
-
.strict()
|
|
259
403
|
.default(defaultHashlineConfig);
|
|
260
404
|
const ProfileHashlineConfigSchema = z
|
|
261
405
|
.object({
|
|
262
406
|
enabled: z.boolean().optional(),
|
|
263
|
-
})
|
|
264
|
-
.strict();
|
|
407
|
+
});
|
|
265
408
|
export const RulesConfigSchema = z
|
|
266
409
|
.object({
|
|
267
410
|
enabled: z.boolean().default(false),
|
|
268
411
|
skipClaudeUserRules: z.boolean().default(false),
|
|
269
412
|
})
|
|
270
|
-
.strict()
|
|
271
413
|
.default(defaultRulesConfig);
|
|
272
414
|
const ProfileRulesConfigSchema = z
|
|
273
415
|
.object({
|
|
274
416
|
enabled: z.boolean().optional(),
|
|
275
417
|
skipClaudeUserRules: z.boolean().optional(),
|
|
276
|
-
})
|
|
277
|
-
.strict();
|
|
418
|
+
});
|
|
278
419
|
const McpLocalServerConfigSchema = z
|
|
279
420
|
.object({
|
|
280
421
|
type: z.literal("local"),
|
|
@@ -283,8 +424,7 @@ const McpLocalServerConfigSchema = z
|
|
|
283
424
|
env: z.record(z.string(), z.string()).optional(),
|
|
284
425
|
environment: z.record(z.string(), z.string()).optional(),
|
|
285
426
|
enabled: z.boolean().default(true),
|
|
286
|
-
})
|
|
287
|
-
.strict();
|
|
427
|
+
});
|
|
288
428
|
const McpRemoteServerConfigSchema = z
|
|
289
429
|
.object({
|
|
290
430
|
type: z.literal("remote"),
|
|
@@ -292,8 +432,7 @@ const McpRemoteServerConfigSchema = z
|
|
|
292
432
|
headers: z.record(z.string(), z.string()).optional(),
|
|
293
433
|
oauth: z.boolean().optional(),
|
|
294
434
|
enabled: z.boolean().default(true),
|
|
295
|
-
})
|
|
296
|
-
.strict();
|
|
435
|
+
});
|
|
297
436
|
export const McpServerConfigSchema = z.discriminatedUnion("type", [
|
|
298
437
|
McpLocalServerConfigSchema,
|
|
299
438
|
McpRemoteServerConfigSchema,
|
|
@@ -306,23 +445,19 @@ export const McpConfigSchema = z
|
|
|
306
445
|
.object({
|
|
307
446
|
provider: z.enum(["exa", "tavily"]).default("exa"),
|
|
308
447
|
})
|
|
309
|
-
.strict()
|
|
310
448
|
.default(defaultMcpWebsearchConfig),
|
|
311
449
|
servers: z.record(z.string(), McpServerConfigSchema).default({}),
|
|
312
450
|
})
|
|
313
|
-
.strict()
|
|
314
451
|
.default(defaultMcpConfig);
|
|
315
452
|
export const SubagentConfigSchema = z
|
|
316
453
|
.object({
|
|
317
454
|
maxDepth: z.number().int().min(0).max(20).default(3),
|
|
318
455
|
})
|
|
319
|
-
.strict()
|
|
320
456
|
.default(defaultSubagentConfig);
|
|
321
457
|
const ProfileSubagentConfigSchema = z
|
|
322
458
|
.object({
|
|
323
459
|
maxDepth: z.number().int().min(0).max(20).optional(),
|
|
324
|
-
})
|
|
325
|
-
.strict();
|
|
460
|
+
});
|
|
326
461
|
const ProfileMcpConfigSchema = z
|
|
327
462
|
.object({
|
|
328
463
|
enabled: z.boolean().optional(),
|
|
@@ -331,11 +466,9 @@ const ProfileMcpConfigSchema = z
|
|
|
331
466
|
.object({
|
|
332
467
|
provider: z.enum(["exa", "tavily"]).optional(),
|
|
333
468
|
})
|
|
334
|
-
.strict()
|
|
335
469
|
.optional(),
|
|
336
470
|
servers: z.record(z.string(), McpServerConfigSchema).optional(),
|
|
337
|
-
})
|
|
338
|
-
.strict();
|
|
471
|
+
});
|
|
339
472
|
/**
|
|
340
473
|
* A profile is a partial config overlay. It may carry any top-level field
|
|
341
474
|
* EXCEPT `profiles` and `activeProfile` themselves (nested profiles are not
|
|
@@ -347,7 +480,7 @@ const ProfileMcpConfigSchema = z
|
|
|
347
480
|
export const ProfileEntrySchema = z
|
|
348
481
|
.object({
|
|
349
482
|
categories: z.record(z.string(), CategoryEntrySchema).optional(),
|
|
350
|
-
agents:
|
|
483
|
+
agents: AgentsConfigSchema.optional(),
|
|
351
484
|
disabledAgents: z.array(z.union([AgentNameSchema, z.string()])).optional(),
|
|
352
485
|
...FeatureGateArrayFields,
|
|
353
486
|
skills: ProfileSkillsConfigSchema.optional(),
|
|
@@ -371,6 +504,7 @@ export const ProfileEntrySchema = z
|
|
|
371
504
|
cooldownSeconds: z.number().int().positive().optional(),
|
|
372
505
|
retryOnStatusCodes: z.array(z.number().int()).optional(),
|
|
373
506
|
retryOnPatterns: z.array(z.string()).optional(),
|
|
507
|
+
subagent429: ProfileSubagent429ConfigSchema.optional(),
|
|
374
508
|
})
|
|
375
509
|
.optional(),
|
|
376
510
|
idleContinuation: z
|
|
@@ -384,11 +518,11 @@ export const ProfileEntrySchema = z
|
|
|
384
518
|
rules: ProfileRulesConfigSchema.optional(),
|
|
385
519
|
mcp: ProfileMcpConfigSchema.optional(),
|
|
386
520
|
subagent: ProfileSubagentConfigSchema.optional(),
|
|
521
|
+
fastModels: ProfileFastModelsConfigSchema.optional(),
|
|
387
522
|
registerBuiltinAgents: z.boolean().optional(),
|
|
388
523
|
promptsRoot: z.string().optional(),
|
|
389
524
|
debug: z.boolean().optional(),
|
|
390
|
-
})
|
|
391
|
-
.strict();
|
|
525
|
+
});
|
|
392
526
|
export const IsolationModeSchema = z.enum(["none", "inline", "config-file", "config-dir", "xdg"]);
|
|
393
527
|
export const ShimConfigSchema = z
|
|
394
528
|
.object({
|
|
@@ -399,13 +533,12 @@ export const ShimConfigSchema = z
|
|
|
399
533
|
keepOmo: z.boolean().optional(),
|
|
400
534
|
noProviders: z.boolean().optional(),
|
|
401
535
|
noPlugins: z.boolean().optional(),
|
|
402
|
-
})
|
|
403
|
-
.strict();
|
|
536
|
+
});
|
|
404
537
|
export const OcmmConfigSchema = z
|
|
405
538
|
.object({
|
|
406
539
|
$schema: z.string().optional(),
|
|
407
540
|
categories: z.record(z.string(), CategoryEntrySchema).optional(),
|
|
408
|
-
agents:
|
|
541
|
+
agents: AgentsConfigSchema.optional(),
|
|
409
542
|
disabledAgents: z.array(z.union([AgentNameSchema, z.string()])).optional(),
|
|
410
543
|
...FeatureGateArrayFields,
|
|
411
544
|
skills: SkillsConfigSchema,
|
|
@@ -426,6 +559,7 @@ export const OcmmConfigSchema = z
|
|
|
426
559
|
rules: RulesConfigSchema,
|
|
427
560
|
mcp: McpConfigSchema,
|
|
428
561
|
subagent: SubagentConfigSchema,
|
|
562
|
+
fastModels: FastModelsConfigSchema,
|
|
429
563
|
/** Named partial overlays selectable via `activeProfile` or OCMM_PROFILE. */
|
|
430
564
|
profiles: z.record(z.string(), ProfileEntrySchema).default({}),
|
|
431
565
|
/**
|
|
@@ -441,8 +575,7 @@ export const OcmmConfigSchema = z
|
|
|
441
575
|
debug: z.boolean().default(false),
|
|
442
576
|
/** Defaults for the `ocmm` shim binary. CLI flags override these. */
|
|
443
577
|
shim: ShimConfigSchema.optional(),
|
|
444
|
-
})
|
|
445
|
-
.strict();
|
|
578
|
+
});
|
|
446
579
|
export function defaultConfig() {
|
|
447
580
|
return OcmmConfigSchema.parse({});
|
|
448
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
|