oh-my-opencode 3.7.3 → 3.8.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 (146) hide show
  1. package/README.ja.md +206 -243
  2. package/README.ko.md +205 -244
  3. package/README.md +176 -174
  4. package/README.zh-cn.md +211 -255
  5. package/dist/agents/atlas/default.d.ts +1 -1
  6. package/dist/agents/atlas/gpt.d.ts +1 -1
  7. package/dist/agents/atlas/prompt-section-builder.d.ts +1 -1
  8. package/dist/agents/builtin-agents/environment-context.d.ts +5 -1
  9. package/dist/agents/builtin-agents/general-agents.d.ts +1 -0
  10. package/dist/agents/builtin-agents/hephaestus-agent.d.ts +1 -0
  11. package/dist/agents/builtin-agents/sisyphus-agent.d.ts +1 -0
  12. package/dist/agents/builtin-agents.d.ts +1 -1
  13. package/dist/agents/dynamic-agent-prompt-builder.d.ts +0 -5
  14. package/dist/agents/index.d.ts +2 -1
  15. package/dist/agents/metis.d.ts +1 -1
  16. package/dist/agents/prometheus/behavioral-summary.d.ts +1 -1
  17. package/dist/agents/prometheus/gpt.d.ts +24 -0
  18. package/dist/agents/prometheus/identity-constraints.d.ts +1 -1
  19. package/dist/agents/prometheus/index.d.ts +3 -1
  20. package/dist/agents/prometheus/interview-mode.d.ts +1 -1
  21. package/dist/agents/prometheus/plan-generation.d.ts +1 -1
  22. package/dist/agents/prometheus/plan-template.d.ts +1 -1
  23. package/dist/agents/prometheus/system-prompt.d.ts +13 -2
  24. package/dist/agents/sisyphus-junior/agent.d.ts +1 -1
  25. package/dist/agents/types.d.ts +1 -0
  26. package/dist/cli/config-manager/antigravity-provider-configuration.d.ts +2 -2
  27. package/dist/cli/fallback-chain-resolution.d.ts +1 -1
  28. package/dist/cli/index.js +527 -175
  29. package/dist/cli/model-fallback-requirements.d.ts +3 -0
  30. package/dist/cli/provider-model-id-transform.d.ts +1 -1
  31. package/dist/cli/run/event-state.d.ts +4 -0
  32. package/dist/cli/run/stdin-suppression.d.ts +12 -0
  33. package/dist/cli/run/timestamp-output.d.ts +5 -0
  34. package/dist/cli/run/types.d.ts +1 -0
  35. package/dist/config/index.d.ts +2 -2
  36. package/dist/config/schema/agent-overrides.d.ts +75 -0
  37. package/dist/config/schema/categories.d.ts +2 -0
  38. package/dist/config/schema/experimental.d.ts +2 -0
  39. package/dist/config/schema/fallback-models.d.ts +3 -0
  40. package/dist/config/schema/hooks.d.ts +4 -3
  41. package/dist/config/schema/oh-my-opencode-config.d.ts +87 -47
  42. package/dist/config/schema/ralph-loop.d.ts +4 -0
  43. package/dist/config/schema/runtime-fallback.d.ts +10 -0
  44. package/dist/config/schema.d.ts +2 -0
  45. package/dist/create-hooks.d.ts +8 -5
  46. package/dist/features/background-agent/manager.d.ts +3 -0
  47. package/dist/features/background-agent/parent-session-context-resolver.d.ts +1 -0
  48. package/dist/features/background-agent/types.d.ts +7 -0
  49. package/dist/features/builtin-commands/templates/ralph-loop.d.ts +1 -1
  50. package/dist/features/claude-code-session-state/state.d.ts +1 -0
  51. package/dist/features/task-toast-manager/manager.d.ts +5 -0
  52. package/dist/features/task-toast-manager/types.d.ts +2 -1
  53. package/dist/features/tmux-subagent/action-executor.d.ts +10 -3
  54. package/dist/features/tmux-subagent/grid-planning.d.ts +5 -3
  55. package/dist/features/tmux-subagent/manager.d.ts +12 -0
  56. package/dist/features/tmux-subagent/pane-split-availability.d.ts +0 -1
  57. package/dist/features/tmux-subagent/spawn-target-finder.d.ts +2 -2
  58. package/dist/features/tmux-subagent/tmux-grid-constants.d.ts +4 -0
  59. package/dist/features/tmux-subagent/types.d.ts +2 -0
  60. package/dist/hooks/atlas/recent-model-resolver.d.ts +6 -0
  61. package/dist/hooks/atlas/system-reminder-templates.d.ts +1 -1
  62. package/dist/hooks/hashline-edit-diff-enhancer/hook.d.ts +28 -0
  63. package/dist/hooks/hashline-edit-diff-enhancer/index.d.ts +1 -0
  64. package/dist/hooks/index.d.ts +5 -2
  65. package/dist/hooks/model-fallback/hook.d.ts +60 -0
  66. package/dist/hooks/no-hephaestus-non-gpt/hook.d.ts +16 -0
  67. package/dist/hooks/no-hephaestus-non-gpt/index.d.ts +1 -0
  68. package/dist/hooks/{sisyphus-gpt-hephaestus-reminder → no-sisyphus-gpt}/hook.d.ts +6 -1
  69. package/dist/hooks/no-sisyphus-gpt/index.d.ts +1 -0
  70. package/dist/hooks/ralph-loop/command-arguments.d.ts +8 -0
  71. package/dist/hooks/ralph-loop/continuation-prompt-injector.d.ts +1 -0
  72. package/dist/hooks/ralph-loop/iteration-continuation.d.ts +12 -0
  73. package/dist/hooks/ralph-loop/loop-state-controller.d.ts +2 -0
  74. package/dist/hooks/ralph-loop/ralph-loop-event-handler.d.ts +1 -0
  75. package/dist/hooks/ralph-loop/ralph-loop-hook.d.ts +1 -0
  76. package/dist/hooks/ralph-loop/session-reset-strategy.d.ts +3 -0
  77. package/dist/hooks/ralph-loop/types.d.ts +1 -0
  78. package/dist/hooks/runtime-fallback/agent-resolver.d.ts +5 -0
  79. package/dist/hooks/runtime-fallback/auto-retry.d.ts +10 -0
  80. package/dist/hooks/runtime-fallback/chat-message-handler.d.ts +20 -0
  81. package/dist/hooks/runtime-fallback/constants.d.ts +19 -0
  82. package/dist/hooks/runtime-fallback/error-classifier.d.ts +17 -0
  83. package/dist/hooks/runtime-fallback/event-handler.d.ts +8 -0
  84. package/dist/hooks/runtime-fallback/fallback-models.d.ts +2 -0
  85. package/dist/hooks/runtime-fallback/fallback-state.d.ts +6 -0
  86. package/dist/hooks/runtime-fallback/hook.d.ts +3 -0
  87. package/dist/hooks/runtime-fallback/index.d.ts +2 -0
  88. package/dist/hooks/runtime-fallback/message-update-handler.d.ts +5 -0
  89. package/dist/hooks/runtime-fallback/types.d.ts +59 -0
  90. package/dist/hooks/session-recovery/detect-error-type.d.ts +2 -1
  91. package/dist/hooks/session-recovery/recover-unavailable-tool.d.ts +5 -0
  92. package/dist/hooks/session-recovery/types.d.ts +1 -0
  93. package/dist/hooks/todo-continuation-enforcer/continuation-injection.d.ts +1 -0
  94. package/dist/hooks/todo-continuation-enforcer/countdown.d.ts +1 -0
  95. package/dist/hooks/unstable-agent-babysitter/task-message-analyzer.d.ts +1 -0
  96. package/dist/hooks/unstable-agent-babysitter/unstable-agent-babysitter-hook.d.ts +2 -0
  97. package/dist/hooks/write-existing-file-guard/hook.d.ts +1 -0
  98. package/dist/index.js +6614 -3149
  99. package/dist/oh-my-opencode.schema.json +3681 -0
  100. package/dist/plugin/chat-headers.d.ts +4 -0
  101. package/dist/plugin/chat-message.d.ts +9 -8
  102. package/dist/plugin/chat-params.d.ts +2 -3
  103. package/dist/plugin/event.d.ts +2 -6
  104. package/dist/plugin/hooks/create-core-hooks.d.ts +8 -5
  105. package/dist/plugin/hooks/create-session-hooks.d.ts +7 -5
  106. package/dist/plugin/hooks/create-tool-guard-hooks.d.ts +2 -1
  107. package/dist/plugin/hooks/create-transform-hooks.d.ts +1 -1
  108. package/dist/plugin/system-transform.d.ts +5 -0
  109. package/dist/plugin/types.d.ts +7 -1
  110. package/dist/plugin/ultrawork-db-model-override.d.ts +11 -0
  111. package/dist/plugin/ultrawork-model-override.d.ts +37 -0
  112. package/dist/shared/index.d.ts +4 -0
  113. package/dist/shared/internal-initiator-marker.d.ts +5 -0
  114. package/dist/shared/model-error-classifier.d.ts +31 -0
  115. package/dist/shared/model-resolution-pipeline.d.ts +1 -0
  116. package/dist/shared/model-resolver.d.ts +6 -0
  117. package/dist/shared/prompt-tools.d.ts +3 -0
  118. package/dist/shared/provider-model-id-transform.d.ts +1 -0
  119. package/dist/shared/session-category-registry.d.ts +32 -0
  120. package/dist/shared/session-model-state.d.ts +7 -0
  121. package/dist/shared/tmux/tmux-utils/layout.d.ts +17 -2
  122. package/dist/tools/delegate-task/background-task.d.ts +2 -1
  123. package/dist/tools/delegate-task/category-resolver.d.ts +2 -0
  124. package/dist/tools/delegate-task/constants.d.ts +1 -1
  125. package/dist/tools/delegate-task/skill-resolver.d.ts +1 -0
  126. package/dist/tools/delegate-task/subagent-resolver.d.ts +2 -0
  127. package/dist/tools/delegate-task/sync-task.d.ts +1 -1
  128. package/dist/tools/hashline-edit/constants.d.ts +5 -2
  129. package/dist/tools/hashline-edit/diff-utils.d.ts +6 -0
  130. package/dist/tools/hashline-edit/edit-operations.d.ts +4 -4
  131. package/dist/tools/hashline-edit/hash-computation.d.ts +1 -1
  132. package/dist/tools/hashline-edit/index.d.ts +1 -1
  133. package/dist/tools/hashline-edit/types.d.ts +4 -4
  134. package/dist/tools/hashline-edit/validation.d.ts +1 -0
  135. package/dist/tools/index.d.ts +2 -2
  136. package/dist/tools/skill/constants.d.ts +2 -2
  137. package/dist/tools/skill/types.d.ts +4 -0
  138. package/dist/tools/slashcommand/index.d.ts +1 -1
  139. package/dist/tools/slashcommand/types.d.ts +1 -7
  140. package/package.json +10 -10
  141. package/dist/cli/run/opencode-bin-path.d.ts +0 -3
  142. package/dist/hooks/sisyphus-gpt-hephaestus-reminder/index.d.ts +0 -1
  143. package/dist/tools/slashcommand/skill-command-converter.d.ts +0 -3
  144. package/dist/tools/slashcommand/slashcommand-description.d.ts +0 -3
  145. package/dist/tools/slashcommand/slashcommand-tool.d.ts +0 -4
  146. package/dist/tools/slashcommand/tools.d.ts +0 -2
@@ -0,0 +1,3 @@
1
+ import type { ModelRequirement } from "../shared/model-requirements";
2
+ export declare const CLI_AGENT_MODEL_REQUIREMENTS: Record<string, ModelRequirement>;
3
+ export declare const CLI_CATEGORY_MODEL_REQUIREMENTS: Record<string, ModelRequirement>;
@@ -1 +1 @@
1
- export declare function transformModelForProvider(provider: string, model: string): string;
1
+ export { transformModelForProvider } from "../shared/provider-model-id-transform";
@@ -39,5 +39,9 @@ export interface EventState {
39
39
  thinkingAtLineStart: boolean;
40
40
  /** Current assistant message ID — prevents counter resets on repeated message.updated for same message */
41
41
  currentMessageId: string | null;
42
+ /** Assistant message start timestamp by message ID */
43
+ messageStartedAtById: Record<string, number>;
44
+ /** Prevent duplicate completion metadata lines per message */
45
+ completionMetaPrintedByMessageId: Record<string, boolean>;
42
46
  }
43
47
  export declare function createEventState(): EventState;
@@ -0,0 +1,12 @@
1
+ type StdinLike = {
2
+ isTTY?: boolean;
3
+ isRaw?: boolean;
4
+ setRawMode?: (mode: boolean) => void;
5
+ isPaused?: () => boolean;
6
+ resume: () => void;
7
+ pause: () => void;
8
+ on: (event: "data", listener: (chunk: string | Uint8Array) => void) => void;
9
+ removeListener: (event: "data", listener: (chunk: string | Uint8Array) => void) => void;
10
+ };
11
+ export declare function suppressRunInput(stdin?: StdinLike, onInterrupt?: () => void): () => void;
12
+ export {};
@@ -0,0 +1,5 @@
1
+ export declare function createTimestampTransformer(now?: () => Date): (chunk: string) => string;
2
+ export declare function createTimestampedStdoutController(stdout?: NodeJS.WriteStream): {
3
+ enable: () => void;
4
+ restore: () => void;
5
+ };
@@ -3,6 +3,7 @@ export type { OpencodeClient };
3
3
  export interface RunOptions {
4
4
  message: string;
5
5
  agent?: string;
6
+ timestamp?: boolean;
6
7
  verbose?: boolean;
7
8
  directory?: string;
8
9
  port?: number;
@@ -1,2 +1,2 @@
1
- export { OhMyOpenCodeConfigSchema, AgentOverrideConfigSchema, AgentOverridesSchema, McpNameSchema, AgentNameSchema, HookNameSchema, BuiltinCommandNameSchema, SisyphusAgentConfigSchema, ExperimentalConfigSchema, RalphLoopConfigSchema, TmuxConfigSchema, TmuxLayoutSchema, } from "./schema";
2
- export type { OhMyOpenCodeConfig, AgentOverrideConfig, AgentOverrides, McpName, AgentName, HookName, BuiltinCommandName, SisyphusAgentConfig, ExperimentalConfig, DynamicContextPruningConfig, RalphLoopConfig, TmuxConfig, TmuxLayout, SisyphusConfig, SisyphusTasksConfig, } from "./schema";
1
+ export { OhMyOpenCodeConfigSchema, AgentOverrideConfigSchema, AgentOverridesSchema, McpNameSchema, AgentNameSchema, HookNameSchema, BuiltinCommandNameSchema, SisyphusAgentConfigSchema, ExperimentalConfigSchema, RalphLoopConfigSchema, TmuxConfigSchema, TmuxLayoutSchema, RuntimeFallbackConfigSchema, FallbackModelsSchema, } from "./schema";
2
+ export type { OhMyOpenCodeConfig, AgentOverrideConfig, AgentOverrides, McpName, AgentName, HookName, BuiltinCommandName, SisyphusAgentConfig, ExperimentalConfig, DynamicContextPruningConfig, RalphLoopConfig, TmuxConfig, TmuxLayout, SisyphusConfig, SisyphusTasksConfig, RuntimeFallbackConfig, FallbackModels, } from "./schema";
@@ -1,6 +1,7 @@
1
1
  import { z } from "zod";
2
2
  export declare const AgentOverrideConfigSchema: z.ZodObject<{
3
3
  model: z.ZodOptional<z.ZodString>;
4
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
4
5
  variant: z.ZodOptional<z.ZodString>;
5
6
  category: z.ZodOptional<z.ZodString>;
6
7
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -73,10 +74,15 @@ export declare const AgentOverrideConfigSchema: z.ZodObject<{
73
74
  high: "high";
74
75
  }>>;
75
76
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
77
+ ultrawork: z.ZodOptional<z.ZodObject<{
78
+ model: z.ZodOptional<z.ZodString>;
79
+ variant: z.ZodOptional<z.ZodString>;
80
+ }, z.core.$strip>>;
76
81
  }, z.core.$strip>;
77
82
  export declare const AgentOverridesSchema: z.ZodObject<{
78
83
  build: z.ZodOptional<z.ZodObject<{
79
84
  model: z.ZodOptional<z.ZodString>;
85
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
80
86
  variant: z.ZodOptional<z.ZodString>;
81
87
  category: z.ZodOptional<z.ZodString>;
82
88
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -149,9 +155,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
149
155
  high: "high";
150
156
  }>>;
151
157
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
158
+ ultrawork: z.ZodOptional<z.ZodObject<{
159
+ model: z.ZodOptional<z.ZodString>;
160
+ variant: z.ZodOptional<z.ZodString>;
161
+ }, z.core.$strip>>;
152
162
  }, z.core.$strip>>;
153
163
  plan: z.ZodOptional<z.ZodObject<{
154
164
  model: z.ZodOptional<z.ZodString>;
165
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
155
166
  variant: z.ZodOptional<z.ZodString>;
156
167
  category: z.ZodOptional<z.ZodString>;
157
168
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -224,9 +235,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
224
235
  high: "high";
225
236
  }>>;
226
237
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
238
+ ultrawork: z.ZodOptional<z.ZodObject<{
239
+ model: z.ZodOptional<z.ZodString>;
240
+ variant: z.ZodOptional<z.ZodString>;
241
+ }, z.core.$strip>>;
227
242
  }, z.core.$strip>>;
228
243
  sisyphus: z.ZodOptional<z.ZodObject<{
229
244
  model: z.ZodOptional<z.ZodString>;
245
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
230
246
  variant: z.ZodOptional<z.ZodString>;
231
247
  category: z.ZodOptional<z.ZodString>;
232
248
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -299,9 +315,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
299
315
  high: "high";
300
316
  }>>;
301
317
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
318
+ ultrawork: z.ZodOptional<z.ZodObject<{
319
+ model: z.ZodOptional<z.ZodString>;
320
+ variant: z.ZodOptional<z.ZodString>;
321
+ }, z.core.$strip>>;
302
322
  }, z.core.$strip>>;
303
323
  hephaestus: z.ZodOptional<z.ZodObject<{
304
324
  model: z.ZodOptional<z.ZodString>;
325
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
305
326
  variant: z.ZodOptional<z.ZodString>;
306
327
  category: z.ZodOptional<z.ZodString>;
307
328
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -374,9 +395,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
374
395
  high: "high";
375
396
  }>>;
376
397
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
398
+ ultrawork: z.ZodOptional<z.ZodObject<{
399
+ model: z.ZodOptional<z.ZodString>;
400
+ variant: z.ZodOptional<z.ZodString>;
401
+ }, z.core.$strip>>;
377
402
  }, z.core.$strip>>;
378
403
  "sisyphus-junior": z.ZodOptional<z.ZodObject<{
379
404
  model: z.ZodOptional<z.ZodString>;
405
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
380
406
  variant: z.ZodOptional<z.ZodString>;
381
407
  category: z.ZodOptional<z.ZodString>;
382
408
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -449,9 +475,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
449
475
  high: "high";
450
476
  }>>;
451
477
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
478
+ ultrawork: z.ZodOptional<z.ZodObject<{
479
+ model: z.ZodOptional<z.ZodString>;
480
+ variant: z.ZodOptional<z.ZodString>;
481
+ }, z.core.$strip>>;
452
482
  }, z.core.$strip>>;
453
483
  "OpenCode-Builder": z.ZodOptional<z.ZodObject<{
454
484
  model: z.ZodOptional<z.ZodString>;
485
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
455
486
  variant: z.ZodOptional<z.ZodString>;
456
487
  category: z.ZodOptional<z.ZodString>;
457
488
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -524,9 +555,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
524
555
  high: "high";
525
556
  }>>;
526
557
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
558
+ ultrawork: z.ZodOptional<z.ZodObject<{
559
+ model: z.ZodOptional<z.ZodString>;
560
+ variant: z.ZodOptional<z.ZodString>;
561
+ }, z.core.$strip>>;
527
562
  }, z.core.$strip>>;
528
563
  prometheus: z.ZodOptional<z.ZodObject<{
529
564
  model: z.ZodOptional<z.ZodString>;
565
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
530
566
  variant: z.ZodOptional<z.ZodString>;
531
567
  category: z.ZodOptional<z.ZodString>;
532
568
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -599,9 +635,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
599
635
  high: "high";
600
636
  }>>;
601
637
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
638
+ ultrawork: z.ZodOptional<z.ZodObject<{
639
+ model: z.ZodOptional<z.ZodString>;
640
+ variant: z.ZodOptional<z.ZodString>;
641
+ }, z.core.$strip>>;
602
642
  }, z.core.$strip>>;
603
643
  metis: z.ZodOptional<z.ZodObject<{
604
644
  model: z.ZodOptional<z.ZodString>;
645
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
605
646
  variant: z.ZodOptional<z.ZodString>;
606
647
  category: z.ZodOptional<z.ZodString>;
607
648
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -674,9 +715,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
674
715
  high: "high";
675
716
  }>>;
676
717
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
718
+ ultrawork: z.ZodOptional<z.ZodObject<{
719
+ model: z.ZodOptional<z.ZodString>;
720
+ variant: z.ZodOptional<z.ZodString>;
721
+ }, z.core.$strip>>;
677
722
  }, z.core.$strip>>;
678
723
  momus: z.ZodOptional<z.ZodObject<{
679
724
  model: z.ZodOptional<z.ZodString>;
725
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
680
726
  variant: z.ZodOptional<z.ZodString>;
681
727
  category: z.ZodOptional<z.ZodString>;
682
728
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -749,9 +795,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
749
795
  high: "high";
750
796
  }>>;
751
797
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
798
+ ultrawork: z.ZodOptional<z.ZodObject<{
799
+ model: z.ZodOptional<z.ZodString>;
800
+ variant: z.ZodOptional<z.ZodString>;
801
+ }, z.core.$strip>>;
752
802
  }, z.core.$strip>>;
753
803
  oracle: z.ZodOptional<z.ZodObject<{
754
804
  model: z.ZodOptional<z.ZodString>;
805
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
755
806
  variant: z.ZodOptional<z.ZodString>;
756
807
  category: z.ZodOptional<z.ZodString>;
757
808
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -824,9 +875,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
824
875
  high: "high";
825
876
  }>>;
826
877
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
878
+ ultrawork: z.ZodOptional<z.ZodObject<{
879
+ model: z.ZodOptional<z.ZodString>;
880
+ variant: z.ZodOptional<z.ZodString>;
881
+ }, z.core.$strip>>;
827
882
  }, z.core.$strip>>;
828
883
  librarian: z.ZodOptional<z.ZodObject<{
829
884
  model: z.ZodOptional<z.ZodString>;
885
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
830
886
  variant: z.ZodOptional<z.ZodString>;
831
887
  category: z.ZodOptional<z.ZodString>;
832
888
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -899,9 +955,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
899
955
  high: "high";
900
956
  }>>;
901
957
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
958
+ ultrawork: z.ZodOptional<z.ZodObject<{
959
+ model: z.ZodOptional<z.ZodString>;
960
+ variant: z.ZodOptional<z.ZodString>;
961
+ }, z.core.$strip>>;
902
962
  }, z.core.$strip>>;
903
963
  explore: z.ZodOptional<z.ZodObject<{
904
964
  model: z.ZodOptional<z.ZodString>;
965
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
905
966
  variant: z.ZodOptional<z.ZodString>;
906
967
  category: z.ZodOptional<z.ZodString>;
907
968
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -974,9 +1035,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
974
1035
  high: "high";
975
1036
  }>>;
976
1037
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1038
+ ultrawork: z.ZodOptional<z.ZodObject<{
1039
+ model: z.ZodOptional<z.ZodString>;
1040
+ variant: z.ZodOptional<z.ZodString>;
1041
+ }, z.core.$strip>>;
977
1042
  }, z.core.$strip>>;
978
1043
  "multimodal-looker": z.ZodOptional<z.ZodObject<{
979
1044
  model: z.ZodOptional<z.ZodString>;
1045
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
980
1046
  variant: z.ZodOptional<z.ZodString>;
981
1047
  category: z.ZodOptional<z.ZodString>;
982
1048
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -1049,9 +1115,14 @@ export declare const AgentOverridesSchema: z.ZodObject<{
1049
1115
  high: "high";
1050
1116
  }>>;
1051
1117
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1118
+ ultrawork: z.ZodOptional<z.ZodObject<{
1119
+ model: z.ZodOptional<z.ZodString>;
1120
+ variant: z.ZodOptional<z.ZodString>;
1121
+ }, z.core.$strip>>;
1052
1122
  }, z.core.$strip>>;
1053
1123
  atlas: z.ZodOptional<z.ZodObject<{
1054
1124
  model: z.ZodOptional<z.ZodString>;
1125
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
1055
1126
  variant: z.ZodOptional<z.ZodString>;
1056
1127
  category: z.ZodOptional<z.ZodString>;
1057
1128
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -1124,6 +1195,10 @@ export declare const AgentOverridesSchema: z.ZodObject<{
1124
1195
  high: "high";
1125
1196
  }>>;
1126
1197
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1198
+ ultrawork: z.ZodOptional<z.ZodObject<{
1199
+ model: z.ZodOptional<z.ZodString>;
1200
+ variant: z.ZodOptional<z.ZodString>;
1201
+ }, z.core.$strip>>;
1127
1202
  }, z.core.$strip>>;
1128
1203
  }, z.core.$strip>;
1129
1204
  export type AgentOverrideConfig = z.infer<typeof AgentOverrideConfigSchema>;
@@ -2,6 +2,7 @@ import { z } from "zod";
2
2
  export declare const CategoryConfigSchema: z.ZodObject<{
3
3
  description: z.ZodOptional<z.ZodString>;
4
4
  model: z.ZodOptional<z.ZodString>;
5
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
5
6
  variant: z.ZodOptional<z.ZodString>;
6
7
  temperature: z.ZodOptional<z.ZodNumber>;
7
8
  top_p: z.ZodOptional<z.ZodNumber>;
@@ -42,6 +43,7 @@ export declare const BuiltinCategoryNameSchema: z.ZodEnum<{
42
43
  export declare const CategoriesConfigSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
43
44
  description: z.ZodOptional<z.ZodString>;
44
45
  model: z.ZodOptional<z.ZodString>;
46
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
45
47
  variant: z.ZodOptional<z.ZodString>;
46
48
  temperature: z.ZodOptional<z.ZodNumber>;
47
49
  top_p: z.ZodOptional<z.ZodNumber>;
@@ -33,6 +33,8 @@ export declare const ExperimentalConfigSchema: z.ZodObject<{
33
33
  task_system: z.ZodOptional<z.ZodBoolean>;
34
34
  plugin_load_timeout_ms: z.ZodOptional<z.ZodNumber>;
35
35
  safe_hook_creation: z.ZodOptional<z.ZodBoolean>;
36
+ disable_omo_env: z.ZodOptional<z.ZodBoolean>;
36
37
  hashline_edit: z.ZodOptional<z.ZodBoolean>;
38
+ model_fallback_title: z.ZodOptional<z.ZodBoolean>;
37
39
  }, z.core.$strip>;
38
40
  export type ExperimentalConfig = z.infer<typeof ExperimentalConfigSchema>;
@@ -0,0 +1,3 @@
1
+ import { z } from "zod";
2
+ export declare const FallbackModelsSchema: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>;
3
+ export type FallbackModels = z.infer<typeof FallbackModelsSchema>;
@@ -8,13 +8,13 @@ export declare const HookNameSchema: z.ZodEnum<{
8
8
  "session-recovery": "session-recovery";
9
9
  "session-notification": "session-notification";
10
10
  "comment-checker": "comment-checker";
11
- "grep-output-truncator": "grep-output-truncator";
12
11
  "tool-output-truncator": "tool-output-truncator";
13
12
  "question-label-truncator": "question-label-truncator";
14
13
  "directory-agents-injector": "directory-agents-injector";
15
14
  "directory-readme-injector": "directory-readme-injector";
16
15
  "empty-task-response-detector": "empty-task-response-detector";
17
16
  "think-mode": "think-mode";
17
+ "model-fallback": "model-fallback";
18
18
  "anthropic-context-window-limit-recovery": "anthropic-context-window-limit-recovery";
19
19
  "preemptive-compaction": "preemptive-compaction";
20
20
  "rules-injector": "rules-injector";
@@ -36,12 +36,13 @@ export declare const HookNameSchema: z.ZodEnum<{
36
36
  "delegate-task-retry": "delegate-task-retry";
37
37
  "prometheus-md-only": "prometheus-md-only";
38
38
  "sisyphus-junior-notepad": "sisyphus-junior-notepad";
39
- "sisyphus-gpt-hephaestus-reminder": "sisyphus-gpt-hephaestus-reminder";
39
+ "no-sisyphus-gpt": "no-sisyphus-gpt";
40
+ "no-hephaestus-non-gpt": "no-hephaestus-non-gpt";
40
41
  "unstable-agent-babysitter": "unstable-agent-babysitter";
41
- "task-reminder": "task-reminder";
42
42
  "task-resume-info": "task-resume-info";
43
43
  "stop-continuation-guard": "stop-continuation-guard";
44
44
  "tasks-todowrite-disabler": "tasks-todowrite-disabler";
45
+ "runtime-fallback": "runtime-fallback";
45
46
  "write-existing-file-guard": "write-existing-file-guard";
46
47
  "anthropic-effort": "anthropic-effort";
47
48
  "hashline-read-enhancer": "hashline-read-enhancer";
@@ -23,53 +23,7 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
23
23
  "frontend-ui-ux": "frontend-ui-ux";
24
24
  "git-master": "git-master";
25
25
  }>>>;
26
- disabled_hooks: z.ZodOptional<z.ZodArray<z.ZodEnum<{
27
- atlas: "atlas";
28
- "ralph-loop": "ralph-loop";
29
- "start-work": "start-work";
30
- "todo-continuation-enforcer": "todo-continuation-enforcer";
31
- "context-window-monitor": "context-window-monitor";
32
- "session-recovery": "session-recovery";
33
- "session-notification": "session-notification";
34
- "comment-checker": "comment-checker";
35
- "grep-output-truncator": "grep-output-truncator";
36
- "tool-output-truncator": "tool-output-truncator";
37
- "question-label-truncator": "question-label-truncator";
38
- "directory-agents-injector": "directory-agents-injector";
39
- "directory-readme-injector": "directory-readme-injector";
40
- "empty-task-response-detector": "empty-task-response-detector";
41
- "think-mode": "think-mode";
42
- "anthropic-context-window-limit-recovery": "anthropic-context-window-limit-recovery";
43
- "preemptive-compaction": "preemptive-compaction";
44
- "rules-injector": "rules-injector";
45
- "background-notification": "background-notification";
46
- "auto-update-checker": "auto-update-checker";
47
- "startup-toast": "startup-toast";
48
- "keyword-detector": "keyword-detector";
49
- "agent-usage-reminder": "agent-usage-reminder";
50
- "non-interactive-env": "non-interactive-env";
51
- "interactive-bash-session": "interactive-bash-session";
52
- "thinking-block-validator": "thinking-block-validator";
53
- "category-skill-reminder": "category-skill-reminder";
54
- "compaction-context-injector": "compaction-context-injector";
55
- "compaction-todo-preserver": "compaction-todo-preserver";
56
- "claude-code-hooks": "claude-code-hooks";
57
- "auto-slash-command": "auto-slash-command";
58
- "edit-error-recovery": "edit-error-recovery";
59
- "json-error-recovery": "json-error-recovery";
60
- "delegate-task-retry": "delegate-task-retry";
61
- "prometheus-md-only": "prometheus-md-only";
62
- "sisyphus-junior-notepad": "sisyphus-junior-notepad";
63
- "sisyphus-gpt-hephaestus-reminder": "sisyphus-gpt-hephaestus-reminder";
64
- "unstable-agent-babysitter": "unstable-agent-babysitter";
65
- "task-reminder": "task-reminder";
66
- "task-resume-info": "task-resume-info";
67
- "stop-continuation-guard": "stop-continuation-guard";
68
- "tasks-todowrite-disabler": "tasks-todowrite-disabler";
69
- "write-existing-file-guard": "write-existing-file-guard";
70
- "anthropic-effort": "anthropic-effort";
71
- "hashline-read-enhancer": "hashline-read-enhancer";
72
- }>>>;
26
+ disabled_hooks: z.ZodOptional<z.ZodArray<z.ZodString>>;
73
27
  disabled_commands: z.ZodOptional<z.ZodArray<z.ZodEnum<{
74
28
  "init-deep": "init-deep";
75
29
  "ralph-loop": "ralph-loop";
@@ -80,9 +34,11 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
80
34
  "stop-continuation": "stop-continuation";
81
35
  }>>>;
82
36
  disabled_tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
37
+ hashline_edit: z.ZodOptional<z.ZodBoolean>;
83
38
  agents: z.ZodOptional<z.ZodObject<{
84
39
  build: z.ZodOptional<z.ZodObject<{
85
40
  model: z.ZodOptional<z.ZodString>;
41
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
86
42
  variant: z.ZodOptional<z.ZodString>;
87
43
  category: z.ZodOptional<z.ZodString>;
88
44
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -155,9 +111,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
155
111
  high: "high";
156
112
  }>>;
157
113
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
114
+ ultrawork: z.ZodOptional<z.ZodObject<{
115
+ model: z.ZodOptional<z.ZodString>;
116
+ variant: z.ZodOptional<z.ZodString>;
117
+ }, z.core.$strip>>;
158
118
  }, z.core.$strip>>;
159
119
  plan: z.ZodOptional<z.ZodObject<{
160
120
  model: z.ZodOptional<z.ZodString>;
121
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
161
122
  variant: z.ZodOptional<z.ZodString>;
162
123
  category: z.ZodOptional<z.ZodString>;
163
124
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -230,9 +191,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
230
191
  high: "high";
231
192
  }>>;
232
193
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
194
+ ultrawork: z.ZodOptional<z.ZodObject<{
195
+ model: z.ZodOptional<z.ZodString>;
196
+ variant: z.ZodOptional<z.ZodString>;
197
+ }, z.core.$strip>>;
233
198
  }, z.core.$strip>>;
234
199
  sisyphus: z.ZodOptional<z.ZodObject<{
235
200
  model: z.ZodOptional<z.ZodString>;
201
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
236
202
  variant: z.ZodOptional<z.ZodString>;
237
203
  category: z.ZodOptional<z.ZodString>;
238
204
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -305,9 +271,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
305
271
  high: "high";
306
272
  }>>;
307
273
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
274
+ ultrawork: z.ZodOptional<z.ZodObject<{
275
+ model: z.ZodOptional<z.ZodString>;
276
+ variant: z.ZodOptional<z.ZodString>;
277
+ }, z.core.$strip>>;
308
278
  }, z.core.$strip>>;
309
279
  hephaestus: z.ZodOptional<z.ZodObject<{
310
280
  model: z.ZodOptional<z.ZodString>;
281
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
311
282
  variant: z.ZodOptional<z.ZodString>;
312
283
  category: z.ZodOptional<z.ZodString>;
313
284
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -380,9 +351,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
380
351
  high: "high";
381
352
  }>>;
382
353
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
354
+ ultrawork: z.ZodOptional<z.ZodObject<{
355
+ model: z.ZodOptional<z.ZodString>;
356
+ variant: z.ZodOptional<z.ZodString>;
357
+ }, z.core.$strip>>;
383
358
  }, z.core.$strip>>;
384
359
  "sisyphus-junior": z.ZodOptional<z.ZodObject<{
385
360
  model: z.ZodOptional<z.ZodString>;
361
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
386
362
  variant: z.ZodOptional<z.ZodString>;
387
363
  category: z.ZodOptional<z.ZodString>;
388
364
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -455,9 +431,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
455
431
  high: "high";
456
432
  }>>;
457
433
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
434
+ ultrawork: z.ZodOptional<z.ZodObject<{
435
+ model: z.ZodOptional<z.ZodString>;
436
+ variant: z.ZodOptional<z.ZodString>;
437
+ }, z.core.$strip>>;
458
438
  }, z.core.$strip>>;
459
439
  "OpenCode-Builder": z.ZodOptional<z.ZodObject<{
460
440
  model: z.ZodOptional<z.ZodString>;
441
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
461
442
  variant: z.ZodOptional<z.ZodString>;
462
443
  category: z.ZodOptional<z.ZodString>;
463
444
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -530,9 +511,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
530
511
  high: "high";
531
512
  }>>;
532
513
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
514
+ ultrawork: z.ZodOptional<z.ZodObject<{
515
+ model: z.ZodOptional<z.ZodString>;
516
+ variant: z.ZodOptional<z.ZodString>;
517
+ }, z.core.$strip>>;
533
518
  }, z.core.$strip>>;
534
519
  prometheus: z.ZodOptional<z.ZodObject<{
535
520
  model: z.ZodOptional<z.ZodString>;
521
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
536
522
  variant: z.ZodOptional<z.ZodString>;
537
523
  category: z.ZodOptional<z.ZodString>;
538
524
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -605,9 +591,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
605
591
  high: "high";
606
592
  }>>;
607
593
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
594
+ ultrawork: z.ZodOptional<z.ZodObject<{
595
+ model: z.ZodOptional<z.ZodString>;
596
+ variant: z.ZodOptional<z.ZodString>;
597
+ }, z.core.$strip>>;
608
598
  }, z.core.$strip>>;
609
599
  metis: z.ZodOptional<z.ZodObject<{
610
600
  model: z.ZodOptional<z.ZodString>;
601
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
611
602
  variant: z.ZodOptional<z.ZodString>;
612
603
  category: z.ZodOptional<z.ZodString>;
613
604
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -680,9 +671,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
680
671
  high: "high";
681
672
  }>>;
682
673
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
674
+ ultrawork: z.ZodOptional<z.ZodObject<{
675
+ model: z.ZodOptional<z.ZodString>;
676
+ variant: z.ZodOptional<z.ZodString>;
677
+ }, z.core.$strip>>;
683
678
  }, z.core.$strip>>;
684
679
  momus: z.ZodOptional<z.ZodObject<{
685
680
  model: z.ZodOptional<z.ZodString>;
681
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
686
682
  variant: z.ZodOptional<z.ZodString>;
687
683
  category: z.ZodOptional<z.ZodString>;
688
684
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -755,9 +751,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
755
751
  high: "high";
756
752
  }>>;
757
753
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
754
+ ultrawork: z.ZodOptional<z.ZodObject<{
755
+ model: z.ZodOptional<z.ZodString>;
756
+ variant: z.ZodOptional<z.ZodString>;
757
+ }, z.core.$strip>>;
758
758
  }, z.core.$strip>>;
759
759
  oracle: z.ZodOptional<z.ZodObject<{
760
760
  model: z.ZodOptional<z.ZodString>;
761
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
761
762
  variant: z.ZodOptional<z.ZodString>;
762
763
  category: z.ZodOptional<z.ZodString>;
763
764
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -830,9 +831,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
830
831
  high: "high";
831
832
  }>>;
832
833
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
834
+ ultrawork: z.ZodOptional<z.ZodObject<{
835
+ model: z.ZodOptional<z.ZodString>;
836
+ variant: z.ZodOptional<z.ZodString>;
837
+ }, z.core.$strip>>;
833
838
  }, z.core.$strip>>;
834
839
  librarian: z.ZodOptional<z.ZodObject<{
835
840
  model: z.ZodOptional<z.ZodString>;
841
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
836
842
  variant: z.ZodOptional<z.ZodString>;
837
843
  category: z.ZodOptional<z.ZodString>;
838
844
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -905,9 +911,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
905
911
  high: "high";
906
912
  }>>;
907
913
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
914
+ ultrawork: z.ZodOptional<z.ZodObject<{
915
+ model: z.ZodOptional<z.ZodString>;
916
+ variant: z.ZodOptional<z.ZodString>;
917
+ }, z.core.$strip>>;
908
918
  }, z.core.$strip>>;
909
919
  explore: z.ZodOptional<z.ZodObject<{
910
920
  model: z.ZodOptional<z.ZodString>;
921
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
911
922
  variant: z.ZodOptional<z.ZodString>;
912
923
  category: z.ZodOptional<z.ZodString>;
913
924
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -980,9 +991,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
980
991
  high: "high";
981
992
  }>>;
982
993
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
994
+ ultrawork: z.ZodOptional<z.ZodObject<{
995
+ model: z.ZodOptional<z.ZodString>;
996
+ variant: z.ZodOptional<z.ZodString>;
997
+ }, z.core.$strip>>;
983
998
  }, z.core.$strip>>;
984
999
  "multimodal-looker": z.ZodOptional<z.ZodObject<{
985
1000
  model: z.ZodOptional<z.ZodString>;
1001
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
986
1002
  variant: z.ZodOptional<z.ZodString>;
987
1003
  category: z.ZodOptional<z.ZodString>;
988
1004
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -1055,9 +1071,14 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
1055
1071
  high: "high";
1056
1072
  }>>;
1057
1073
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1074
+ ultrawork: z.ZodOptional<z.ZodObject<{
1075
+ model: z.ZodOptional<z.ZodString>;
1076
+ variant: z.ZodOptional<z.ZodString>;
1077
+ }, z.core.$strip>>;
1058
1078
  }, z.core.$strip>>;
1059
1079
  atlas: z.ZodOptional<z.ZodObject<{
1060
1080
  model: z.ZodOptional<z.ZodString>;
1081
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
1061
1082
  variant: z.ZodOptional<z.ZodString>;
1062
1083
  category: z.ZodOptional<z.ZodString>;
1063
1084
  skills: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -1130,11 +1151,16 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
1130
1151
  high: "high";
1131
1152
  }>>;
1132
1153
  providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1154
+ ultrawork: z.ZodOptional<z.ZodObject<{
1155
+ model: z.ZodOptional<z.ZodString>;
1156
+ variant: z.ZodOptional<z.ZodString>;
1157
+ }, z.core.$strip>>;
1133
1158
  }, z.core.$strip>>;
1134
1159
  }, z.core.$strip>>;
1135
1160
  categories: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
1136
1161
  description: z.ZodOptional<z.ZodString>;
1137
1162
  model: z.ZodOptional<z.ZodString>;
1163
+ fallback_models: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
1138
1164
  variant: z.ZodOptional<z.ZodString>;
1139
1165
  temperature: z.ZodOptional<z.ZodNumber>;
1140
1166
  top_p: z.ZodOptional<z.ZodNumber>;
@@ -1214,7 +1240,9 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
1214
1240
  task_system: z.ZodOptional<z.ZodBoolean>;
1215
1241
  plugin_load_timeout_ms: z.ZodOptional<z.ZodNumber>;
1216
1242
  safe_hook_creation: z.ZodOptional<z.ZodBoolean>;
1243
+ disable_omo_env: z.ZodOptional<z.ZodBoolean>;
1217
1244
  hashline_edit: z.ZodOptional<z.ZodBoolean>;
1245
+ model_fallback_title: z.ZodOptional<z.ZodBoolean>;
1218
1246
  }, z.core.$strip>>;
1219
1247
  auto_update: z.ZodOptional<z.ZodBoolean>;
1220
1248
  skills: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodObject<{
@@ -1243,7 +1271,19 @@ export declare const OhMyOpenCodeConfigSchema: z.ZodObject<{
1243
1271
  enabled: z.ZodDefault<z.ZodBoolean>;
1244
1272
  default_max_iterations: z.ZodDefault<z.ZodNumber>;
1245
1273
  state_dir: z.ZodOptional<z.ZodString>;
1274
+ default_strategy: z.ZodDefault<z.ZodEnum<{
1275
+ reset: "reset";
1276
+ continue: "continue";
1277
+ }>>;
1246
1278
  }, z.core.$strip>>;
1279
+ runtime_fallback: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
1280
+ enabled: z.ZodOptional<z.ZodBoolean>;
1281
+ retry_on_errors: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
1282
+ max_fallback_attempts: z.ZodOptional<z.ZodNumber>;
1283
+ cooldown_seconds: z.ZodOptional<z.ZodNumber>;
1284
+ timeout_seconds: z.ZodOptional<z.ZodNumber>;
1285
+ notify_on_fallback: z.ZodOptional<z.ZodBoolean>;
1286
+ }, z.core.$strip>]>>;
1247
1287
  background_task: z.ZodOptional<z.ZodObject<{
1248
1288
  defaultConcurrency: z.ZodOptional<z.ZodNumber>;
1249
1289
  providerConcurrency: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;