@oh-my-pi/pi-coding-agent 17.2.6 → 17.2.8

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 (162) hide show
  1. package/CHANGELOG.md +23 -1
  2. package/dist/{CHANGELOG-gs76k6wc.md → CHANGELOG-0b0w17se.md} +23 -1
  3. package/dist/cli.js +3850 -3887
  4. package/dist/types/advisor/advise-tool.d.ts +10 -4
  5. package/dist/types/autoresearch/tools/init-experiment.d.ts +19 -7
  6. package/dist/types/autoresearch/tools/log-experiment.d.ts +19 -11
  7. package/dist/types/autoresearch/tools/run-experiment.d.ts +4 -2
  8. package/dist/types/autoresearch/tools/update-notes.d.ts +5 -2
  9. package/dist/types/commit/agentic/tools/analyze-file.d.ts +5 -2
  10. package/dist/types/commit/agentic/tools/git-file-diff.d.ts +5 -2
  11. package/dist/types/commit/agentic/tools/git-hunk.d.ts +6 -2
  12. package/dist/types/commit/agentic/tools/git-overview.d.ts +5 -2
  13. package/dist/types/commit/agentic/tools/propose-changelog.d.ts +29 -7
  14. package/dist/types/commit/agentic/tools/propose-commit.d.ts +14 -4
  15. package/dist/types/commit/agentic/tools/recent-commits.d.ts +4 -2
  16. package/dist/types/commit/agentic/tools/schemas.d.ts +7 -3
  17. package/dist/types/commit/agentic/tools/split-commit.d.ts +37 -10
  18. package/dist/types/commit/changelog/generate.d.ts +13 -3
  19. package/dist/types/commit/shared-llm.d.ts +13 -4
  20. package/dist/types/config/config-file.d.ts +1 -1
  21. package/dist/types/config/models-config-schema-bundle.d.ts +1992 -981
  22. package/dist/types/config/models-config-schema.d.ts +1201 -580
  23. package/dist/types/config/models-config.d.ts +355 -371
  24. package/dist/types/edit/hashline/params.d.ts +4 -2
  25. package/dist/types/edit/modes/apply-patch.d.ts +4 -2
  26. package/dist/types/edit/modes/patch.d.ts +16 -5
  27. package/dist/types/edit/modes/replace.d.ts +8 -3
  28. package/dist/types/eval/bridge-timeout.d.ts +5 -2
  29. package/dist/types/eval/completion-bridge.d.ts +13 -0
  30. package/dist/types/eval/py/tool-bridge.d.ts +12 -0
  31. package/dist/types/extensibility/custom-commands/types.d.ts +4 -4
  32. package/dist/types/extensibility/custom-tools/types.d.ts +4 -4
  33. package/dist/types/extensibility/extensions/types.d.ts +4 -4
  34. package/dist/types/extensibility/hooks/types.d.ts +4 -4
  35. package/dist/types/extensibility/legacy-pi-ai-shim.d.ts +1 -1
  36. package/dist/types/extensibility/legacy-pi-coding-agent-shim.d.ts +1 -1
  37. package/dist/types/extensibility/legacy-typebox.d.ts +8 -0
  38. package/dist/types/extensibility/plugins/legacy-pi-compat.d.ts +6 -13
  39. package/dist/types/goals/tools/goal-tool.d.ts +12 -4
  40. package/dist/types/lsp/index.d.ts +15 -5
  41. package/dist/types/lsp/types.d.ts +15 -5
  42. package/dist/types/security/contracts/schemas.d.ts +985 -409
  43. package/dist/types/security/publication.d.ts +92 -34
  44. package/dist/types/session/agent-session-types.d.ts +1 -1
  45. package/dist/types/session/session-entries.d.ts +1 -1
  46. package/dist/types/session/session-manager.d.ts +1 -1
  47. package/dist/types/task/types.d.ts +63 -18
  48. package/dist/types/tools/ask.d.ts +34 -8
  49. package/dist/types/tools/ast-edit.d.ts +16 -4
  50. package/dist/types/tools/ast-grep.d.ts +12 -4
  51. package/dist/types/tools/bash.d.ts +20 -11
  52. package/dist/types/tools/browser.d.ts +64 -20
  53. package/dist/types/tools/checkpoint.d.ts +16 -8
  54. package/dist/types/tools/computer.d.ts +1 -1
  55. package/dist/types/tools/debug.d.ts +118 -48
  56. package/dist/types/tools/eval.d.ts +11 -5
  57. package/dist/types/tools/gh.d.ts +74 -26
  58. package/dist/types/tools/glob.d.ts +16 -6
  59. package/dist/types/tools/grep.d.ts +18 -6
  60. package/dist/types/tools/hub/index.d.ts +116 -46
  61. package/dist/types/tools/image-gen.d.ts +25 -8
  62. package/dist/types/tools/inspect-image.d.ts +10 -4
  63. package/dist/types/tools/learn.d.ts +26 -8
  64. package/dist/types/tools/manage-skill.d.ts +16 -6
  65. package/dist/types/tools/memory-edit.d.ts +18 -6
  66. package/dist/types/tools/memory-recall.d.ts +8 -4
  67. package/dist/types/tools/memory-reflect.d.ts +10 -4
  68. package/dist/types/tools/memory-retain.d.ts +14 -4
  69. package/dist/types/tools/read.d.ts +8 -4
  70. package/dist/types/tools/security-scan.d.ts +82 -30
  71. package/dist/types/tools/todo.d.ts +30 -10
  72. package/dist/types/tools/tts.d.ts +12 -5
  73. package/dist/types/tools/vibe.d.ts +42 -18
  74. package/dist/types/tools/write.d.ts +10 -4
  75. package/dist/types/web/search/index.d.ts +20 -6
  76. package/package.json +13 -13
  77. package/scripts/legacy-pi-virtual-module.ts +2 -2
  78. package/src/advisor/advise-tool.ts +1 -1
  79. package/src/advisor/config.ts +1 -1
  80. package/src/autoresearch/tools/init-experiment.ts +1 -2
  81. package/src/autoresearch/tools/log-experiment.ts +1 -2
  82. package/src/autoresearch/tools/run-experiment.ts +1 -1
  83. package/src/autoresearch/tools/update-notes.ts +1 -1
  84. package/src/commit/agentic/tools/analyze-file.ts +1 -1
  85. package/src/commit/agentic/tools/git-file-diff.ts +1 -1
  86. package/src/commit/agentic/tools/git-hunk.ts +1 -1
  87. package/src/commit/agentic/tools/git-overview.ts +1 -1
  88. package/src/commit/agentic/tools/propose-changelog.ts +1 -1
  89. package/src/commit/agentic/tools/propose-commit.ts +1 -1
  90. package/src/commit/agentic/tools/recent-commits.ts +1 -1
  91. package/src/commit/agentic/tools/schemas.ts +1 -1
  92. package/src/commit/agentic/tools/split-commit.ts +1 -1
  93. package/src/commit/analysis/summary.ts +1 -1
  94. package/src/commit/changelog/generate.ts +1 -1
  95. package/src/config/config-file.ts +2 -2
  96. package/src/config/models-config-schema-bundle.ts +1 -8
  97. package/src/discovery/codex.ts +22 -9
  98. package/src/edit/hashline/params.ts +1 -1
  99. package/src/edit/modes/apply-patch.ts +1 -1
  100. package/src/edit/modes/patch.ts +1 -1
  101. package/src/edit/modes/replace.ts +2 -1
  102. package/src/eval/agent-bridge.ts +4 -2
  103. package/src/eval/bridge-timeout.ts +5 -2
  104. package/src/eval/completion-bridge.ts +3 -2
  105. package/src/eval/executor-base.ts +20 -1
  106. package/src/eval/js/context-manager.ts +94 -6
  107. package/src/eval/py/tool-bridge.ts +29 -9
  108. package/src/extensibility/custom-commands/loader.ts +3 -3
  109. package/src/extensibility/custom-commands/types.ts +4 -4
  110. package/src/extensibility/custom-tools/loader.ts +3 -3
  111. package/src/extensibility/custom-tools/types.ts +5 -4
  112. package/src/extensibility/extensions/loader.ts +3 -3
  113. package/src/extensibility/extensions/types.ts +5 -4
  114. package/src/extensibility/hooks/loader.ts +3 -3
  115. package/src/extensibility/hooks/types.ts +4 -4
  116. package/src/extensibility/legacy-pi-ai-shim.ts +1 -1
  117. package/src/extensibility/legacy-pi-coding-agent-shim.ts +2 -2
  118. package/src/extensibility/legacy-typebox.ts +101 -0
  119. package/src/extensibility/plugins/legacy-pi-compat.ts +13 -22
  120. package/src/goals/tools/goal-tool.ts +1 -1
  121. package/src/lsp/types.ts +1 -1
  122. package/src/modes/theme/theme.ts +3 -3
  123. package/src/security/contracts/schemas.ts +1 -5
  124. package/src/security/contracts/validation.ts +1 -1
  125. package/src/security/publication.ts +1 -1
  126. package/src/session/agent-session-types.ts +1 -1
  127. package/src/session/agent-session.ts +1 -2
  128. package/src/session/session-context.ts +3 -3
  129. package/src/session/session-entries.ts +1 -1
  130. package/src/session/session-manager.ts +1 -1
  131. package/src/slash-commands/builtin-registry.ts +3 -4
  132. package/src/task/types.ts +1 -1
  133. package/src/tools/ask.ts +1 -1
  134. package/src/tools/ast-edit.ts +1 -1
  135. package/src/tools/ast-grep.ts +1 -1
  136. package/src/tools/bash.ts +61 -3
  137. package/src/tools/browser.ts +1 -1
  138. package/src/tools/checkpoint.ts +1 -1
  139. package/src/tools/computer.ts +1 -1
  140. package/src/tools/debug.ts +1 -1
  141. package/src/tools/eval.ts +1 -1
  142. package/src/tools/gh.ts +1 -2
  143. package/src/tools/glob.ts +1 -1
  144. package/src/tools/grep.ts +1 -1
  145. package/src/tools/hub/index.ts +1 -1
  146. package/src/tools/image-gen.ts +1 -1
  147. package/src/tools/inspect-image.ts +1 -1
  148. package/src/tools/learn.ts +1 -1
  149. package/src/tools/manage-skill.ts +1 -1
  150. package/src/tools/memory-edit.ts +1 -1
  151. package/src/tools/memory-recall.ts +1 -1
  152. package/src/tools/memory-reflect.ts +1 -1
  153. package/src/tools/memory-retain.ts +1 -1
  154. package/src/tools/read.ts +1 -1
  155. package/src/tools/security-scan.ts +1 -1
  156. package/src/tools/todo.ts +1 -1
  157. package/src/tools/tts.ts +1 -1
  158. package/src/tools/vibe.ts +2 -1
  159. package/src/tools/write.ts +1 -1
  160. package/src/web/search/index.ts +2 -1
  161. package/dist/types/extensibility/typebox.d.ts +0 -181
  162. package/src/extensibility/typebox.ts +0 -958
@@ -1,739 +1,1360 @@
1
- export declare const OpenAICompatSchema: import("arktype/internal/variants/object.ts").ObjectType<{
2
- supportsStore?: boolean | undefined;
3
- supportsDeveloperRole?: boolean | undefined;
4
- supportsMultipleSystemMessages?: boolean | undefined;
5
- supportsReasoningEffort?: boolean | undefined;
1
+ export declare const OpenAICompatSchema: import("@oh-my-pi/omptype").FluentType<{
2
+ allowAnthropicHeaderOverrides?: boolean | undefined;
3
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
4
+ alwaysSendMaxTokens?: boolean | undefined;
5
+ cacheControlFormat?: "anthropic" | undefined;
6
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
7
+ disableReasoningOnToolChoice?: boolean | undefined;
8
+ extraBody?: Record<string, unknown> | undefined;
9
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
10
+ openRouterRouting?: {
11
+ only?: string[] | undefined;
12
+ order?: string[] | undefined;
13
+ } | undefined;
14
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
6
15
  reasoningEffortMap?: {
7
- minimal?: string | undefined;
16
+ high?: string | undefined;
8
17
  low?: string | undefined;
18
+ max?: string | undefined;
9
19
  medium?: string | undefined;
10
- high?: string | undefined;
20
+ minimal?: string | undefined;
11
21
  xhigh?: string | undefined;
12
- max?: string | undefined;
13
22
  } | undefined;
14
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
15
- supportsUsageInStreaming?: boolean | undefined;
16
- requiresToolResultName?: boolean | undefined;
17
- requiresMistralToolIds?: boolean | undefined;
23
+ replayUnsignedThinking?: boolean | undefined;
18
24
  requiresAssistantAfterToolResult?: boolean | undefined;
19
- requiresThinkingAsText?: boolean | undefined;
20
- reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
21
- requiresReasoningContentForToolCalls?: boolean | undefined;
22
- allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
23
25
  requiresAssistantContentForToolCalls?: boolean | undefined;
24
- supportsToolChoice?: boolean | undefined;
26
+ requiresMistralToolIds?: boolean | undefined;
27
+ requiresReasoningContentForToolCalls?: boolean | undefined;
28
+ requiresThinkingAsText?: boolean | undefined;
29
+ requiresToolResultId?: boolean | undefined;
30
+ requiresToolResultName?: boolean | undefined;
31
+ streamIdleTimeoutMs?: number | undefined;
32
+ strictResponsesPairing?: boolean | undefined;
33
+ supportsDeveloperRole?: boolean | undefined;
34
+ supportsEagerToolInputStreaming?: boolean | undefined;
25
35
  supportsForcedToolChoice?: boolean | undefined;
26
- disableReasoningOnForcedToolChoice?: boolean | undefined;
27
- disableReasoningOnToolChoice?: boolean | undefined;
36
+ supportsImageDetailOriginal?: boolean | undefined;
37
+ supportsLongPromptCacheRetention?: boolean | undefined;
38
+ supportsMultipleSystemMessages?: boolean | undefined;
39
+ supportsReasoningEffort?: boolean | undefined;
40
+ supportsReasoningParams?: boolean | undefined;
41
+ supportsStore?: boolean | undefined;
42
+ supportsStrictMode?: boolean | undefined;
43
+ supportsToolChoice?: boolean | undefined;
44
+ supportsUsageInStreaming?: boolean | undefined;
28
45
  thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
29
- openRouterRouting?: {
46
+ toolStrictMode?: "all_strict" | "none" | undefined;
47
+ vercelGatewayRouting?: {
30
48
  only?: string[] | undefined;
31
49
  order?: string[] | undefined;
32
50
  } | undefined;
33
- vercelGatewayRouting?: {
51
+ whenThinking?: {
52
+ allowAnthropicHeaderOverrides?: boolean | undefined;
53
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
54
+ alwaysSendMaxTokens?: boolean | undefined;
55
+ cacheControlFormat?: "anthropic" | undefined;
56
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
57
+ disableReasoningOnToolChoice?: boolean | undefined;
58
+ extraBody?: Record<string, unknown> | undefined;
59
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
60
+ openRouterRouting?: {
61
+ only?: string[] | undefined;
62
+ order?: string[] | undefined;
63
+ } | undefined;
64
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
65
+ reasoningEffortMap?: {
66
+ high?: string | undefined;
67
+ low?: string | undefined;
68
+ max?: string | undefined;
69
+ medium?: string | undefined;
70
+ minimal?: string | undefined;
71
+ xhigh?: string | undefined;
72
+ } | undefined;
73
+ replayUnsignedThinking?: boolean | undefined;
74
+ requiresAssistantAfterToolResult?: boolean | undefined;
75
+ requiresAssistantContentForToolCalls?: boolean | undefined;
76
+ requiresMistralToolIds?: boolean | undefined;
77
+ requiresReasoningContentForToolCalls?: boolean | undefined;
78
+ requiresThinkingAsText?: boolean | undefined;
79
+ requiresToolResultId?: boolean | undefined;
80
+ requiresToolResultName?: boolean | undefined;
81
+ streamIdleTimeoutMs?: number | undefined;
82
+ strictResponsesPairing?: boolean | undefined;
83
+ supportsDeveloperRole?: boolean | undefined;
84
+ supportsEagerToolInputStreaming?: boolean | undefined;
85
+ supportsForcedToolChoice?: boolean | undefined;
86
+ supportsImageDetailOriginal?: boolean | undefined;
87
+ supportsLongPromptCacheRetention?: boolean | undefined;
88
+ supportsMultipleSystemMessages?: boolean | undefined;
89
+ supportsReasoningEffort?: boolean | undefined;
90
+ supportsReasoningParams?: boolean | undefined;
91
+ supportsStore?: boolean | undefined;
92
+ supportsStrictMode?: boolean | undefined;
93
+ supportsToolChoice?: boolean | undefined;
94
+ supportsUsageInStreaming?: boolean | undefined;
95
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
96
+ toolStrictMode?: "all_strict" | "none" | undefined;
97
+ vercelGatewayRouting?: {
98
+ only?: string[] | undefined;
99
+ order?: string[] | undefined;
100
+ } | undefined;
101
+ } | undefined;
102
+ }, {
103
+ allowAnthropicHeaderOverrides?: boolean | undefined;
104
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
105
+ alwaysSendMaxTokens?: boolean | undefined;
106
+ cacheControlFormat?: "anthropic" | undefined;
107
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
108
+ disableReasoningOnToolChoice?: boolean | undefined;
109
+ extraBody?: Record<string, unknown> | undefined;
110
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
111
+ openRouterRouting?: {
34
112
  only?: string[] | undefined;
35
113
  order?: string[] | undefined;
36
114
  } | undefined;
37
- extraBody?: {
38
- [x: string]: unknown;
115
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
116
+ reasoningEffortMap?: {
117
+ high?: string | undefined;
118
+ low?: string | undefined;
119
+ max?: string | undefined;
120
+ medium?: string | undefined;
121
+ minimal?: string | undefined;
122
+ xhigh?: string | undefined;
39
123
  } | undefined;
40
- cacheControlFormat?: "anthropic" | undefined;
41
- supportsStrictMode?: boolean | undefined;
42
- toolStrictMode?: "all_strict" | "none" | undefined;
124
+ replayUnsignedThinking?: boolean | undefined;
125
+ requiresAssistantAfterToolResult?: boolean | undefined;
126
+ requiresAssistantContentForToolCalls?: boolean | undefined;
127
+ requiresMistralToolIds?: boolean | undefined;
128
+ requiresReasoningContentForToolCalls?: boolean | undefined;
129
+ requiresThinkingAsText?: boolean | undefined;
130
+ requiresToolResultId?: boolean | undefined;
131
+ requiresToolResultName?: boolean | undefined;
43
132
  streamIdleTimeoutMs?: number | undefined;
44
- supportsLongPromptCacheRetention?: boolean | undefined;
45
- supportsReasoningParams?: boolean | undefined;
46
- alwaysSendMaxTokens?: boolean | undefined;
47
133
  strictResponsesPairing?: boolean | undefined;
48
- supportsImageDetailOriginal?: boolean | undefined;
134
+ supportsDeveloperRole?: boolean | undefined;
49
135
  supportsEagerToolInputStreaming?: boolean | undefined;
50
- allowAnthropicHeaderOverrides?: boolean | undefined;
51
- requiresToolResultId?: boolean | undefined;
52
- replayUnsignedThinking?: boolean | undefined;
136
+ supportsForcedToolChoice?: boolean | undefined;
137
+ supportsImageDetailOriginal?: boolean | undefined;
138
+ supportsLongPromptCacheRetention?: boolean | undefined;
139
+ supportsMultipleSystemMessages?: boolean | undefined;
140
+ supportsReasoningEffort?: boolean | undefined;
141
+ supportsReasoningParams?: boolean | undefined;
142
+ supportsStore?: boolean | undefined;
143
+ supportsStrictMode?: boolean | undefined;
144
+ supportsToolChoice?: boolean | undefined;
145
+ supportsUsageInStreaming?: boolean | undefined;
146
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
147
+ toolStrictMode?: "all_strict" | "none" | undefined;
148
+ vercelGatewayRouting?: {
149
+ only?: string[] | undefined;
150
+ order?: string[] | undefined;
151
+ } | undefined;
53
152
  whenThinking?: {
54
- supportsStore?: boolean | undefined;
55
- supportsDeveloperRole?: boolean | undefined;
56
- supportsMultipleSystemMessages?: boolean | undefined;
57
- supportsReasoningEffort?: boolean | undefined;
153
+ allowAnthropicHeaderOverrides?: boolean | undefined;
154
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
155
+ alwaysSendMaxTokens?: boolean | undefined;
156
+ cacheControlFormat?: "anthropic" | undefined;
157
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
158
+ disableReasoningOnToolChoice?: boolean | undefined;
159
+ extraBody?: Record<string, unknown> | undefined;
160
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
161
+ openRouterRouting?: {
162
+ only?: string[] | undefined;
163
+ order?: string[] | undefined;
164
+ } | undefined;
165
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
58
166
  reasoningEffortMap?: {
59
- minimal?: string | undefined;
167
+ high?: string | undefined;
60
168
  low?: string | undefined;
169
+ max?: string | undefined;
61
170
  medium?: string | undefined;
62
- high?: string | undefined;
171
+ minimal?: string | undefined;
63
172
  xhigh?: string | undefined;
64
- max?: string | undefined;
65
173
  } | undefined;
66
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
67
- supportsUsageInStreaming?: boolean | undefined;
68
- requiresToolResultName?: boolean | undefined;
69
- requiresMistralToolIds?: boolean | undefined;
174
+ replayUnsignedThinking?: boolean | undefined;
70
175
  requiresAssistantAfterToolResult?: boolean | undefined;
71
- requiresThinkingAsText?: boolean | undefined;
72
- reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
73
- requiresReasoningContentForToolCalls?: boolean | undefined;
74
- allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
75
176
  requiresAssistantContentForToolCalls?: boolean | undefined;
76
- supportsToolChoice?: boolean | undefined;
177
+ requiresMistralToolIds?: boolean | undefined;
178
+ requiresReasoningContentForToolCalls?: boolean | undefined;
179
+ requiresThinkingAsText?: boolean | undefined;
180
+ requiresToolResultId?: boolean | undefined;
181
+ requiresToolResultName?: boolean | undefined;
182
+ streamIdleTimeoutMs?: number | undefined;
183
+ strictResponsesPairing?: boolean | undefined;
184
+ supportsDeveloperRole?: boolean | undefined;
185
+ supportsEagerToolInputStreaming?: boolean | undefined;
77
186
  supportsForcedToolChoice?: boolean | undefined;
78
- disableReasoningOnForcedToolChoice?: boolean | undefined;
79
- disableReasoningOnToolChoice?: boolean | undefined;
187
+ supportsImageDetailOriginal?: boolean | undefined;
188
+ supportsLongPromptCacheRetention?: boolean | undefined;
189
+ supportsMultipleSystemMessages?: boolean | undefined;
190
+ supportsReasoningEffort?: boolean | undefined;
191
+ supportsReasoningParams?: boolean | undefined;
192
+ supportsStore?: boolean | undefined;
193
+ supportsStrictMode?: boolean | undefined;
194
+ supportsToolChoice?: boolean | undefined;
195
+ supportsUsageInStreaming?: boolean | undefined;
80
196
  thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
81
- openRouterRouting?: {
197
+ toolStrictMode?: "all_strict" | "none" | undefined;
198
+ vercelGatewayRouting?: {
82
199
  only?: string[] | undefined;
83
200
  order?: string[] | undefined;
84
201
  } | undefined;
85
- vercelGatewayRouting?: {
202
+ } | undefined;
203
+ }>, ModelOverrideSchema: import("@oh-my-pi/omptype").FluentType<{
204
+ compactionModel?: string | undefined;
205
+ compat?: ({
206
+ allowAnthropicHeaderOverrides?: boolean | undefined;
207
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
208
+ alwaysSendMaxTokens?: boolean | undefined;
209
+ cacheControlFormat?: "anthropic" | undefined;
210
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
211
+ disableReasoningOnToolChoice?: boolean | undefined;
212
+ extraBody?: Record<string, unknown> | undefined;
213
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
214
+ openRouterRouting?: {
86
215
  only?: string[] | undefined;
87
216
  order?: string[] | undefined;
88
217
  } | undefined;
89
- extraBody?: {
90
- [x: string]: unknown;
91
- } | undefined;
92
- cacheControlFormat?: "anthropic" | undefined;
93
- supportsStrictMode?: boolean | undefined;
94
- toolStrictMode?: "all_strict" | "none" | undefined;
95
- streamIdleTimeoutMs?: number | undefined;
96
- supportsLongPromptCacheRetention?: boolean | undefined;
97
- supportsReasoningParams?: boolean | undefined;
98
- alwaysSendMaxTokens?: boolean | undefined;
99
- strictResponsesPairing?: boolean | undefined;
100
- supportsImageDetailOriginal?: boolean | undefined;
101
- supportsEagerToolInputStreaming?: boolean | undefined;
102
- allowAnthropicHeaderOverrides?: boolean | undefined;
103
- requiresToolResultId?: boolean | undefined;
104
- replayUnsignedThinking?: boolean | undefined;
105
- } | undefined;
106
- }, {}>, ModelOverrideSchema: import("arktype/internal/variants/object.ts").ObjectType<{
107
- name?: string | undefined;
108
- reasoning?: boolean | undefined;
109
- thinking?: ((In: {
110
- mode: "anthropic-adaptive" | "anthropic-budget-effort" | "budget" | "effort" | "google-level";
111
- efforts?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
112
- defaultLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
113
- effortMap?: {
114
- minimal?: string | undefined;
218
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
219
+ reasoningEffortMap?: {
220
+ high?: string | undefined;
115
221
  low?: string | undefined;
222
+ max?: string | undefined;
116
223
  medium?: string | undefined;
117
- high?: string | undefined;
224
+ minimal?: string | undefined;
118
225
  xhigh?: string | undefined;
119
- max?: string | undefined;
120
226
  } | undefined;
121
- supportsDisplay?: boolean | undefined;
122
- minLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
123
- maxLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
124
- levels?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
125
- }) => import("arktype").Out<{
126
- mode: any;
127
- efforts: any;
128
- defaultLevel?: any;
129
- effortMap?: any;
130
- supportsDisplay?: any;
131
- }>) | undefined;
132
- input?: ("image" | "text")[] | undefined;
133
- supportsTools?: boolean | undefined;
227
+ replayUnsignedThinking?: boolean | undefined;
228
+ requiresAssistantAfterToolResult?: boolean | undefined;
229
+ requiresAssistantContentForToolCalls?: boolean | undefined;
230
+ requiresMistralToolIds?: boolean | undefined;
231
+ requiresReasoningContentForToolCalls?: boolean | undefined;
232
+ requiresThinkingAsText?: boolean | undefined;
233
+ requiresToolResultId?: boolean | undefined;
234
+ requiresToolResultName?: boolean | undefined;
235
+ streamIdleTimeoutMs?: number | undefined;
236
+ strictResponsesPairing?: boolean | undefined;
237
+ supportsDeveloperRole?: boolean | undefined;
238
+ supportsEagerToolInputStreaming?: boolean | undefined;
239
+ supportsForcedToolChoice?: boolean | undefined;
240
+ supportsImageDetailOriginal?: boolean | undefined;
241
+ supportsLongPromptCacheRetention?: boolean | undefined;
242
+ supportsMultipleSystemMessages?: boolean | undefined;
243
+ supportsReasoningEffort?: boolean | undefined;
244
+ supportsReasoningParams?: boolean | undefined;
245
+ supportsStore?: boolean | undefined;
246
+ supportsStrictMode?: boolean | undefined;
247
+ supportsToolChoice?: boolean | undefined;
248
+ supportsUsageInStreaming?: boolean | undefined;
249
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
250
+ toolStrictMode?: "all_strict" | "none" | undefined;
251
+ vercelGatewayRouting?: {
252
+ only?: string[] | undefined;
253
+ order?: string[] | undefined;
254
+ } | undefined;
255
+ whenThinking?: {
256
+ allowAnthropicHeaderOverrides?: boolean | undefined;
257
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
258
+ alwaysSendMaxTokens?: boolean | undefined;
259
+ cacheControlFormat?: "anthropic" | undefined;
260
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
261
+ disableReasoningOnToolChoice?: boolean | undefined;
262
+ extraBody?: Record<string, unknown> | undefined;
263
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
264
+ openRouterRouting?: {
265
+ only?: string[] | undefined;
266
+ order?: string[] | undefined;
267
+ } | undefined;
268
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
269
+ reasoningEffortMap?: {
270
+ high?: string | undefined;
271
+ low?: string | undefined;
272
+ max?: string | undefined;
273
+ medium?: string | undefined;
274
+ minimal?: string | undefined;
275
+ xhigh?: string | undefined;
276
+ } | undefined;
277
+ replayUnsignedThinking?: boolean | undefined;
278
+ requiresAssistantAfterToolResult?: boolean | undefined;
279
+ requiresAssistantContentForToolCalls?: boolean | undefined;
280
+ requiresMistralToolIds?: boolean | undefined;
281
+ requiresReasoningContentForToolCalls?: boolean | undefined;
282
+ requiresThinkingAsText?: boolean | undefined;
283
+ requiresToolResultId?: boolean | undefined;
284
+ requiresToolResultName?: boolean | undefined;
285
+ streamIdleTimeoutMs?: number | undefined;
286
+ strictResponsesPairing?: boolean | undefined;
287
+ supportsDeveloperRole?: boolean | undefined;
288
+ supportsEagerToolInputStreaming?: boolean | undefined;
289
+ supportsForcedToolChoice?: boolean | undefined;
290
+ supportsImageDetailOriginal?: boolean | undefined;
291
+ supportsLongPromptCacheRetention?: boolean | undefined;
292
+ supportsMultipleSystemMessages?: boolean | undefined;
293
+ supportsReasoningEffort?: boolean | undefined;
294
+ supportsReasoningParams?: boolean | undefined;
295
+ supportsStore?: boolean | undefined;
296
+ supportsStrictMode?: boolean | undefined;
297
+ supportsToolChoice?: boolean | undefined;
298
+ supportsUsageInStreaming?: boolean | undefined;
299
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
300
+ toolStrictMode?: "all_strict" | "none" | undefined;
301
+ vercelGatewayRouting?: {
302
+ only?: string[] | undefined;
303
+ order?: string[] | undefined;
304
+ } | undefined;
305
+ } | undefined;
306
+ } & {
307
+ promptCacheMaximumCheckpoints?: number | undefined;
308
+ promptCacheMinimumTokens?: number | undefined;
309
+ promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
310
+ supportsLongPromptCacheRetention?: boolean | undefined;
311
+ }) | undefined;
312
+ contextPromotionTarget?: string | undefined;
313
+ contextWindow?: number | undefined;
134
314
  cost?: {
135
- input?: number | undefined;
136
- output?: number | undefined;
137
315
  cacheRead?: number | undefined;
138
316
  cacheWrite?: number | undefined;
317
+ input?: number | undefined;
318
+ output?: number | undefined;
139
319
  } | undefined;
140
- premiumMultiplier?: number | undefined;
141
- contextWindow?: number | undefined;
320
+ headers?: Record<string, string> | undefined;
321
+ input?: ("image" | "text")[] | undefined;
142
322
  maxTokens?: number | undefined;
323
+ name?: string | undefined;
143
324
  omitMaxOutputTokens?: boolean | undefined;
144
- headers?: {
145
- [x: string]: string;
325
+ premiumMultiplier?: number | undefined;
326
+ reasoning?: boolean | undefined;
327
+ remoteCompaction?: {
328
+ api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
329
+ enabled?: boolean | undefined;
330
+ endpoint?: string | undefined;
331
+ model?: string | undefined;
332
+ streamingEndpoint?: string | undefined;
333
+ v2Endpoint?: string | undefined;
334
+ v2StreamingEnabled?: boolean | undefined;
146
335
  } | undefined;
147
- compat?: {
148
- supportsStore?: boolean | undefined;
149
- supportsDeveloperRole?: boolean | undefined;
150
- supportsMultipleSystemMessages?: boolean | undefined;
151
- supportsReasoningEffort?: boolean | undefined;
336
+ supportsTools?: boolean | undefined;
337
+ thinking?: {
338
+ mode: any;
339
+ efforts: any;
340
+ defaultLevel?: any;
341
+ effortMap?: any;
342
+ supportsDisplay?: any;
343
+ } | undefined;
344
+ }, {
345
+ compactionModel?: string | undefined;
346
+ compat?: ({
347
+ allowAnthropicHeaderOverrides?: boolean | undefined;
348
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
349
+ alwaysSendMaxTokens?: boolean | undefined;
350
+ cacheControlFormat?: "anthropic" | undefined;
351
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
352
+ disableReasoningOnToolChoice?: boolean | undefined;
353
+ extraBody?: Record<string, unknown> | undefined;
354
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
355
+ openRouterRouting?: {
356
+ only?: string[] | undefined;
357
+ order?: string[] | undefined;
358
+ } | undefined;
359
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
152
360
  reasoningEffortMap?: {
153
- minimal?: string | undefined;
361
+ high?: string | undefined;
154
362
  low?: string | undefined;
363
+ max?: string | undefined;
155
364
  medium?: string | undefined;
156
- high?: string | undefined;
365
+ minimal?: string | undefined;
157
366
  xhigh?: string | undefined;
158
- max?: string | undefined;
159
367
  } | undefined;
160
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
161
- supportsUsageInStreaming?: boolean | undefined;
162
- requiresToolResultName?: boolean | undefined;
163
- requiresMistralToolIds?: boolean | undefined;
368
+ replayUnsignedThinking?: boolean | undefined;
164
369
  requiresAssistantAfterToolResult?: boolean | undefined;
165
- requiresThinkingAsText?: boolean | undefined;
166
- reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
167
- requiresReasoningContentForToolCalls?: boolean | undefined;
168
- allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
169
370
  requiresAssistantContentForToolCalls?: boolean | undefined;
170
- supportsToolChoice?: boolean | undefined;
371
+ requiresMistralToolIds?: boolean | undefined;
372
+ requiresReasoningContentForToolCalls?: boolean | undefined;
373
+ requiresThinkingAsText?: boolean | undefined;
374
+ requiresToolResultId?: boolean | undefined;
375
+ requiresToolResultName?: boolean | undefined;
376
+ streamIdleTimeoutMs?: number | undefined;
377
+ strictResponsesPairing?: boolean | undefined;
378
+ supportsDeveloperRole?: boolean | undefined;
379
+ supportsEagerToolInputStreaming?: boolean | undefined;
171
380
  supportsForcedToolChoice?: boolean | undefined;
172
- disableReasoningOnForcedToolChoice?: boolean | undefined;
173
- disableReasoningOnToolChoice?: boolean | undefined;
381
+ supportsImageDetailOriginal?: boolean | undefined;
382
+ supportsLongPromptCacheRetention?: boolean | undefined;
383
+ supportsMultipleSystemMessages?: boolean | undefined;
384
+ supportsReasoningEffort?: boolean | undefined;
385
+ supportsReasoningParams?: boolean | undefined;
386
+ supportsStore?: boolean | undefined;
387
+ supportsStrictMode?: boolean | undefined;
388
+ supportsToolChoice?: boolean | undefined;
389
+ supportsUsageInStreaming?: boolean | undefined;
174
390
  thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
175
- openRouterRouting?: {
176
- only?: string[] | undefined;
177
- order?: string[] | undefined;
178
- } | undefined;
391
+ toolStrictMode?: "all_strict" | "none" | undefined;
179
392
  vercelGatewayRouting?: {
180
393
  only?: string[] | undefined;
181
394
  order?: string[] | undefined;
182
395
  } | undefined;
183
- extraBody?: {
184
- [x: string]: unknown;
185
- } | undefined;
186
- cacheControlFormat?: "anthropic" | undefined;
187
- supportsStrictMode?: boolean | undefined;
188
- toolStrictMode?: "all_strict" | "none" | undefined;
189
- streamIdleTimeoutMs?: number | undefined;
190
- supportsLongPromptCacheRetention?: boolean | undefined;
191
- supportsReasoningParams?: boolean | undefined;
192
- alwaysSendMaxTokens?: boolean | undefined;
193
- strictResponsesPairing?: boolean | undefined;
194
- supportsImageDetailOriginal?: boolean | undefined;
195
- supportsEagerToolInputStreaming?: boolean | undefined;
196
- allowAnthropicHeaderOverrides?: boolean | undefined;
197
- requiresToolResultId?: boolean | undefined;
198
- replayUnsignedThinking?: boolean | undefined;
199
396
  whenThinking?: {
200
- supportsStore?: boolean | undefined;
201
- supportsDeveloperRole?: boolean | undefined;
202
- supportsMultipleSystemMessages?: boolean | undefined;
203
- supportsReasoningEffort?: boolean | undefined;
397
+ allowAnthropicHeaderOverrides?: boolean | undefined;
398
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
399
+ alwaysSendMaxTokens?: boolean | undefined;
400
+ cacheControlFormat?: "anthropic" | undefined;
401
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
402
+ disableReasoningOnToolChoice?: boolean | undefined;
403
+ extraBody?: Record<string, unknown> | undefined;
404
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
405
+ openRouterRouting?: {
406
+ only?: string[] | undefined;
407
+ order?: string[] | undefined;
408
+ } | undefined;
409
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
204
410
  reasoningEffortMap?: {
205
- minimal?: string | undefined;
411
+ high?: string | undefined;
206
412
  low?: string | undefined;
413
+ max?: string | undefined;
207
414
  medium?: string | undefined;
208
- high?: string | undefined;
415
+ minimal?: string | undefined;
209
416
  xhigh?: string | undefined;
210
- max?: string | undefined;
211
417
  } | undefined;
212
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
213
- supportsUsageInStreaming?: boolean | undefined;
214
- requiresToolResultName?: boolean | undefined;
215
- requiresMistralToolIds?: boolean | undefined;
418
+ replayUnsignedThinking?: boolean | undefined;
216
419
  requiresAssistantAfterToolResult?: boolean | undefined;
217
- requiresThinkingAsText?: boolean | undefined;
218
- reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
219
- requiresReasoningContentForToolCalls?: boolean | undefined;
220
- allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
221
420
  requiresAssistantContentForToolCalls?: boolean | undefined;
222
- supportsToolChoice?: boolean | undefined;
421
+ requiresMistralToolIds?: boolean | undefined;
422
+ requiresReasoningContentForToolCalls?: boolean | undefined;
423
+ requiresThinkingAsText?: boolean | undefined;
424
+ requiresToolResultId?: boolean | undefined;
425
+ requiresToolResultName?: boolean | undefined;
426
+ streamIdleTimeoutMs?: number | undefined;
427
+ strictResponsesPairing?: boolean | undefined;
428
+ supportsDeveloperRole?: boolean | undefined;
429
+ supportsEagerToolInputStreaming?: boolean | undefined;
223
430
  supportsForcedToolChoice?: boolean | undefined;
224
- disableReasoningOnForcedToolChoice?: boolean | undefined;
225
- disableReasoningOnToolChoice?: boolean | undefined;
431
+ supportsImageDetailOriginal?: boolean | undefined;
432
+ supportsLongPromptCacheRetention?: boolean | undefined;
433
+ supportsMultipleSystemMessages?: boolean | undefined;
434
+ supportsReasoningEffort?: boolean | undefined;
435
+ supportsReasoningParams?: boolean | undefined;
436
+ supportsStore?: boolean | undefined;
437
+ supportsStrictMode?: boolean | undefined;
438
+ supportsToolChoice?: boolean | undefined;
439
+ supportsUsageInStreaming?: boolean | undefined;
226
440
  thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
227
- openRouterRouting?: {
228
- only?: string[] | undefined;
229
- order?: string[] | undefined;
230
- } | undefined;
441
+ toolStrictMode?: "all_strict" | "none" | undefined;
231
442
  vercelGatewayRouting?: {
232
443
  only?: string[] | undefined;
233
444
  order?: string[] | undefined;
234
445
  } | undefined;
235
- extraBody?: {
236
- [x: string]: unknown;
237
- } | undefined;
238
- cacheControlFormat?: "anthropic" | undefined;
239
- supportsStrictMode?: boolean | undefined;
240
- toolStrictMode?: "all_strict" | "none" | undefined;
241
- streamIdleTimeoutMs?: number | undefined;
242
- supportsLongPromptCacheRetention?: boolean | undefined;
243
- supportsReasoningParams?: boolean | undefined;
244
- alwaysSendMaxTokens?: boolean | undefined;
245
- strictResponsesPairing?: boolean | undefined;
246
- supportsImageDetailOriginal?: boolean | undefined;
247
- supportsEagerToolInputStreaming?: boolean | undefined;
248
- allowAnthropicHeaderOverrides?: boolean | undefined;
249
- requiresToolResultId?: boolean | undefined;
250
- replayUnsignedThinking?: boolean | undefined;
251
446
  } | undefined;
252
- promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
253
- promptCacheMinimumTokens?: number | undefined;
447
+ } & {
254
448
  promptCacheMaximumCheckpoints?: number | undefined;
255
- } | undefined;
449
+ promptCacheMinimumTokens?: number | undefined;
450
+ promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
451
+ supportsLongPromptCacheRetention?: boolean | undefined;
452
+ }) | undefined;
256
453
  contextPromotionTarget?: string | undefined;
257
- compactionModel?: string | undefined;
454
+ contextWindow?: number | undefined;
455
+ cost?: {
456
+ cacheRead?: number | undefined;
457
+ cacheWrite?: number | undefined;
458
+ input?: number | undefined;
459
+ output?: number | undefined;
460
+ } | undefined;
461
+ headers?: Record<string, string> | undefined;
462
+ input?: ("image" | "text")[] | undefined;
463
+ maxTokens?: number | undefined;
464
+ name?: string | undefined;
465
+ omitMaxOutputTokens?: boolean | undefined;
466
+ premiumMultiplier?: number | undefined;
467
+ reasoning?: boolean | undefined;
258
468
  remoteCompaction?: {
259
- enabled?: boolean | undefined;
260
469
  api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
470
+ enabled?: boolean | undefined;
261
471
  endpoint?: string | undefined;
262
472
  model?: string | undefined;
263
- v2StreamingEnabled?: boolean | undefined;
264
- v2Endpoint?: string | undefined;
265
473
  streamingEndpoint?: string | undefined;
474
+ v2Endpoint?: string | undefined;
475
+ v2StreamingEnabled?: boolean | undefined;
476
+ } | undefined;
477
+ supportsTools?: boolean | undefined;
478
+ thinking?: {
479
+ defaultLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
480
+ effortMap?: {
481
+ high?: string | undefined;
482
+ low?: string | undefined;
483
+ max?: string | undefined;
484
+ medium?: string | undefined;
485
+ minimal?: string | undefined;
486
+ xhigh?: string | undefined;
487
+ } | undefined;
488
+ efforts?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
489
+ levels?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
490
+ maxLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
491
+ minLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
492
+ mode: "anthropic-adaptive" | "anthropic-budget-effort" | "budget" | "effort" | "google-level";
493
+ supportsDisplay?: boolean | undefined;
266
494
  } | undefined;
267
- }, {}>, ProviderDiscoverySchema: import("arktype/internal/variants/object.ts").ObjectType<{
495
+ }>, ProviderDiscoverySchema: import("@oh-my-pi/omptype").FluentType<{
496
+ timeoutMs?: number | undefined;
268
497
  type: "litellm" | "llama.cpp" | "lm-studio" | "ollama" | "openai-models-list" | "proxy";
498
+ }, {
269
499
  timeoutMs?: number | undefined;
270
- }, {}>, ProviderAuthSchema: import("arktype/internal/variants/string.ts").StringType<"apiKey" | "none" | "oauth", {}>, ModelsConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
271
- providers?: {
272
- [x: string]: {
273
- baseUrl?: string | undefined;
274
- apiKey?: string | undefined;
275
- api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
276
- headers?: {
277
- [x: string]: string;
500
+ type: "litellm" | "llama.cpp" | "lm-studio" | "ollama" | "openai-models-list" | "proxy";
501
+ }>, ProviderAuthSchema: import("@oh-my-pi/omptype").FluentType<"apiKey" | "none" | "oauth", "apiKey" | "none" | "oauth">, ModelsConfigSchema: import("@oh-my-pi/omptype").FluentType<{
502
+ providers?: Record<string, {
503
+ api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
504
+ apiKey?: string | undefined;
505
+ auth?: "apiKey" | "none" | "oauth" | undefined;
506
+ authHeader?: boolean | undefined;
507
+ baseUrl?: string | undefined;
508
+ compat?: ({
509
+ allowAnthropicHeaderOverrides?: boolean | undefined;
510
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
511
+ alwaysSendMaxTokens?: boolean | undefined;
512
+ cacheControlFormat?: "anthropic" | undefined;
513
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
514
+ disableReasoningOnToolChoice?: boolean | undefined;
515
+ extraBody?: Record<string, unknown> | undefined;
516
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
517
+ openRouterRouting?: {
518
+ only?: string[] | undefined;
519
+ order?: string[] | undefined;
278
520
  } | undefined;
279
- compat?: {
280
- supportsStore?: boolean | undefined;
521
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
522
+ reasoningEffortMap?: {
523
+ high?: string | undefined;
524
+ low?: string | undefined;
525
+ max?: string | undefined;
526
+ medium?: string | undefined;
527
+ minimal?: string | undefined;
528
+ xhigh?: string | undefined;
529
+ } | undefined;
530
+ replayUnsignedThinking?: boolean | undefined;
531
+ requiresAssistantAfterToolResult?: boolean | undefined;
532
+ requiresAssistantContentForToolCalls?: boolean | undefined;
533
+ requiresMistralToolIds?: boolean | undefined;
534
+ requiresReasoningContentForToolCalls?: boolean | undefined;
535
+ requiresThinkingAsText?: boolean | undefined;
536
+ requiresToolResultId?: boolean | undefined;
537
+ requiresToolResultName?: boolean | undefined;
538
+ streamIdleTimeoutMs?: number | undefined;
539
+ strictResponsesPairing?: boolean | undefined;
540
+ supportsDeveloperRole?: boolean | undefined;
541
+ supportsEagerToolInputStreaming?: boolean | undefined;
542
+ supportsForcedToolChoice?: boolean | undefined;
543
+ supportsImageDetailOriginal?: boolean | undefined;
544
+ supportsLongPromptCacheRetention?: boolean | undefined;
545
+ supportsMultipleSystemMessages?: boolean | undefined;
546
+ supportsReasoningEffort?: boolean | undefined;
547
+ supportsReasoningParams?: boolean | undefined;
548
+ supportsStore?: boolean | undefined;
549
+ supportsStrictMode?: boolean | undefined;
550
+ supportsToolChoice?: boolean | undefined;
551
+ supportsUsageInStreaming?: boolean | undefined;
552
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
553
+ toolStrictMode?: "all_strict" | "none" | undefined;
554
+ vercelGatewayRouting?: {
555
+ only?: string[] | undefined;
556
+ order?: string[] | undefined;
557
+ } | undefined;
558
+ whenThinking?: {
559
+ allowAnthropicHeaderOverrides?: boolean | undefined;
560
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
561
+ alwaysSendMaxTokens?: boolean | undefined;
562
+ cacheControlFormat?: "anthropic" | undefined;
563
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
564
+ disableReasoningOnToolChoice?: boolean | undefined;
565
+ extraBody?: Record<string, unknown> | undefined;
566
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
567
+ openRouterRouting?: {
568
+ only?: string[] | undefined;
569
+ order?: string[] | undefined;
570
+ } | undefined;
571
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
572
+ reasoningEffortMap?: {
573
+ high?: string | undefined;
574
+ low?: string | undefined;
575
+ max?: string | undefined;
576
+ medium?: string | undefined;
577
+ minimal?: string | undefined;
578
+ xhigh?: string | undefined;
579
+ } | undefined;
580
+ replayUnsignedThinking?: boolean | undefined;
581
+ requiresAssistantAfterToolResult?: boolean | undefined;
582
+ requiresAssistantContentForToolCalls?: boolean | undefined;
583
+ requiresMistralToolIds?: boolean | undefined;
584
+ requiresReasoningContentForToolCalls?: boolean | undefined;
585
+ requiresThinkingAsText?: boolean | undefined;
586
+ requiresToolResultId?: boolean | undefined;
587
+ requiresToolResultName?: boolean | undefined;
588
+ streamIdleTimeoutMs?: number | undefined;
589
+ strictResponsesPairing?: boolean | undefined;
281
590
  supportsDeveloperRole?: boolean | undefined;
591
+ supportsEagerToolInputStreaming?: boolean | undefined;
592
+ supportsForcedToolChoice?: boolean | undefined;
593
+ supportsImageDetailOriginal?: boolean | undefined;
594
+ supportsLongPromptCacheRetention?: boolean | undefined;
282
595
  supportsMultipleSystemMessages?: boolean | undefined;
283
596
  supportsReasoningEffort?: boolean | undefined;
597
+ supportsReasoningParams?: boolean | undefined;
598
+ supportsStore?: boolean | undefined;
599
+ supportsStrictMode?: boolean | undefined;
600
+ supportsToolChoice?: boolean | undefined;
601
+ supportsUsageInStreaming?: boolean | undefined;
602
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
603
+ toolStrictMode?: "all_strict" | "none" | undefined;
604
+ vercelGatewayRouting?: {
605
+ only?: string[] | undefined;
606
+ order?: string[] | undefined;
607
+ } | undefined;
608
+ } | undefined;
609
+ } & {
610
+ promptCacheMaximumCheckpoints?: number | undefined;
611
+ promptCacheMinimumTokens?: number | undefined;
612
+ promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
613
+ supportsLongPromptCacheRetention?: boolean | undefined;
614
+ }) | undefined;
615
+ disableStrictTools?: boolean | undefined;
616
+ discovery?: {
617
+ timeoutMs?: number | undefined;
618
+ type: "litellm" | "llama.cpp" | "lm-studio" | "ollama" | "openai-models-list" | "proxy";
619
+ } | undefined;
620
+ headers?: Record<string, string> | undefined;
621
+ modelOverrides?: Record<string, {
622
+ compactionModel?: string | undefined;
623
+ compat?: ({
624
+ allowAnthropicHeaderOverrides?: boolean | undefined;
625
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
626
+ alwaysSendMaxTokens?: boolean | undefined;
627
+ cacheControlFormat?: "anthropic" | undefined;
628
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
629
+ disableReasoningOnToolChoice?: boolean | undefined;
630
+ extraBody?: Record<string, unknown> | undefined;
631
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
632
+ openRouterRouting?: {
633
+ only?: string[] | undefined;
634
+ order?: string[] | undefined;
635
+ } | undefined;
636
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
284
637
  reasoningEffortMap?: {
285
- minimal?: string | undefined;
638
+ high?: string | undefined;
286
639
  low?: string | undefined;
640
+ max?: string | undefined;
287
641
  medium?: string | undefined;
288
- high?: string | undefined;
642
+ minimal?: string | undefined;
289
643
  xhigh?: string | undefined;
290
- max?: string | undefined;
291
644
  } | undefined;
292
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
293
- supportsUsageInStreaming?: boolean | undefined;
294
- requiresToolResultName?: boolean | undefined;
295
- requiresMistralToolIds?: boolean | undefined;
645
+ replayUnsignedThinking?: boolean | undefined;
296
646
  requiresAssistantAfterToolResult?: boolean | undefined;
297
- requiresThinkingAsText?: boolean | undefined;
298
- reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
299
- requiresReasoningContentForToolCalls?: boolean | undefined;
300
- allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
301
647
  requiresAssistantContentForToolCalls?: boolean | undefined;
302
- supportsToolChoice?: boolean | undefined;
648
+ requiresMistralToolIds?: boolean | undefined;
649
+ requiresReasoningContentForToolCalls?: boolean | undefined;
650
+ requiresThinkingAsText?: boolean | undefined;
651
+ requiresToolResultId?: boolean | undefined;
652
+ requiresToolResultName?: boolean | undefined;
653
+ streamIdleTimeoutMs?: number | undefined;
654
+ strictResponsesPairing?: boolean | undefined;
655
+ supportsDeveloperRole?: boolean | undefined;
656
+ supportsEagerToolInputStreaming?: boolean | undefined;
303
657
  supportsForcedToolChoice?: boolean | undefined;
658
+ supportsImageDetailOriginal?: boolean | undefined;
659
+ supportsLongPromptCacheRetention?: boolean | undefined;
660
+ supportsMultipleSystemMessages?: boolean | undefined;
661
+ supportsReasoningEffort?: boolean | undefined;
662
+ supportsReasoningParams?: boolean | undefined;
663
+ supportsStore?: boolean | undefined;
664
+ supportsStrictMode?: boolean | undefined;
665
+ supportsToolChoice?: boolean | undefined;
666
+ supportsUsageInStreaming?: boolean | undefined;
667
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
668
+ toolStrictMode?: "all_strict" | "none" | undefined;
669
+ vercelGatewayRouting?: {
670
+ only?: string[] | undefined;
671
+ order?: string[] | undefined;
672
+ } | undefined;
673
+ whenThinking?: {
674
+ allowAnthropicHeaderOverrides?: boolean | undefined;
675
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
676
+ alwaysSendMaxTokens?: boolean | undefined;
677
+ cacheControlFormat?: "anthropic" | undefined;
678
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
679
+ disableReasoningOnToolChoice?: boolean | undefined;
680
+ extraBody?: Record<string, unknown> | undefined;
681
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
682
+ openRouterRouting?: {
683
+ only?: string[] | undefined;
684
+ order?: string[] | undefined;
685
+ } | undefined;
686
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
687
+ reasoningEffortMap?: {
688
+ high?: string | undefined;
689
+ low?: string | undefined;
690
+ max?: string | undefined;
691
+ medium?: string | undefined;
692
+ minimal?: string | undefined;
693
+ xhigh?: string | undefined;
694
+ } | undefined;
695
+ replayUnsignedThinking?: boolean | undefined;
696
+ requiresAssistantAfterToolResult?: boolean | undefined;
697
+ requiresAssistantContentForToolCalls?: boolean | undefined;
698
+ requiresMistralToolIds?: boolean | undefined;
699
+ requiresReasoningContentForToolCalls?: boolean | undefined;
700
+ requiresThinkingAsText?: boolean | undefined;
701
+ requiresToolResultId?: boolean | undefined;
702
+ requiresToolResultName?: boolean | undefined;
703
+ streamIdleTimeoutMs?: number | undefined;
704
+ strictResponsesPairing?: boolean | undefined;
705
+ supportsDeveloperRole?: boolean | undefined;
706
+ supportsEagerToolInputStreaming?: boolean | undefined;
707
+ supportsForcedToolChoice?: boolean | undefined;
708
+ supportsImageDetailOriginal?: boolean | undefined;
709
+ supportsLongPromptCacheRetention?: boolean | undefined;
710
+ supportsMultipleSystemMessages?: boolean | undefined;
711
+ supportsReasoningEffort?: boolean | undefined;
712
+ supportsReasoningParams?: boolean | undefined;
713
+ supportsStore?: boolean | undefined;
714
+ supportsStrictMode?: boolean | undefined;
715
+ supportsToolChoice?: boolean | undefined;
716
+ supportsUsageInStreaming?: boolean | undefined;
717
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
718
+ toolStrictMode?: "all_strict" | "none" | undefined;
719
+ vercelGatewayRouting?: {
720
+ only?: string[] | undefined;
721
+ order?: string[] | undefined;
722
+ } | undefined;
723
+ } | undefined;
724
+ } & {
725
+ promptCacheMaximumCheckpoints?: number | undefined;
726
+ promptCacheMinimumTokens?: number | undefined;
727
+ promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
728
+ supportsLongPromptCacheRetention?: boolean | undefined;
729
+ }) | undefined;
730
+ contextPromotionTarget?: string | undefined;
731
+ contextWindow?: number | undefined;
732
+ cost?: {
733
+ cacheRead?: number | undefined;
734
+ cacheWrite?: number | undefined;
735
+ input?: number | undefined;
736
+ output?: number | undefined;
737
+ } | undefined;
738
+ headers?: Record<string, string> | undefined;
739
+ input?: ("image" | "text")[] | undefined;
740
+ maxTokens?: number | undefined;
741
+ name?: string | undefined;
742
+ omitMaxOutputTokens?: boolean | undefined;
743
+ premiumMultiplier?: number | undefined;
744
+ reasoning?: boolean | undefined;
745
+ remoteCompaction?: {
746
+ api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
747
+ enabled?: boolean | undefined;
748
+ endpoint?: string | undefined;
749
+ model?: string | undefined;
750
+ streamingEndpoint?: string | undefined;
751
+ v2Endpoint?: string | undefined;
752
+ v2StreamingEnabled?: boolean | undefined;
753
+ } | undefined;
754
+ supportsTools?: boolean | undefined;
755
+ thinking?: {
756
+ mode: any;
757
+ efforts: any;
758
+ defaultLevel?: any;
759
+ effortMap?: any;
760
+ supportsDisplay?: any;
761
+ } | undefined;
762
+ }> | undefined;
763
+ models?: {
764
+ api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
765
+ baseUrl?: string | undefined;
766
+ compactionModel?: string | undefined;
767
+ compat?: ({
768
+ allowAnthropicHeaderOverrides?: boolean | undefined;
769
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
770
+ alwaysSendMaxTokens?: boolean | undefined;
771
+ cacheControlFormat?: "anthropic" | undefined;
304
772
  disableReasoningOnForcedToolChoice?: boolean | undefined;
305
773
  disableReasoningOnToolChoice?: boolean | undefined;
306
- thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
774
+ extraBody?: Record<string, unknown> | undefined;
775
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
307
776
  openRouterRouting?: {
308
777
  only?: string[] | undefined;
309
778
  order?: string[] | undefined;
310
779
  } | undefined;
780
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
781
+ reasoningEffortMap?: {
782
+ high?: string | undefined;
783
+ low?: string | undefined;
784
+ max?: string | undefined;
785
+ medium?: string | undefined;
786
+ minimal?: string | undefined;
787
+ xhigh?: string | undefined;
788
+ } | undefined;
789
+ replayUnsignedThinking?: boolean | undefined;
790
+ requiresAssistantAfterToolResult?: boolean | undefined;
791
+ requiresAssistantContentForToolCalls?: boolean | undefined;
792
+ requiresMistralToolIds?: boolean | undefined;
793
+ requiresReasoningContentForToolCalls?: boolean | undefined;
794
+ requiresThinkingAsText?: boolean | undefined;
795
+ requiresToolResultId?: boolean | undefined;
796
+ requiresToolResultName?: boolean | undefined;
797
+ streamIdleTimeoutMs?: number | undefined;
798
+ strictResponsesPairing?: boolean | undefined;
799
+ supportsDeveloperRole?: boolean | undefined;
800
+ supportsEagerToolInputStreaming?: boolean | undefined;
801
+ supportsForcedToolChoice?: boolean | undefined;
802
+ supportsImageDetailOriginal?: boolean | undefined;
803
+ supportsLongPromptCacheRetention?: boolean | undefined;
804
+ supportsMultipleSystemMessages?: boolean | undefined;
805
+ supportsReasoningEffort?: boolean | undefined;
806
+ supportsReasoningParams?: boolean | undefined;
807
+ supportsStore?: boolean | undefined;
808
+ supportsStrictMode?: boolean | undefined;
809
+ supportsToolChoice?: boolean | undefined;
810
+ supportsUsageInStreaming?: boolean | undefined;
811
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
812
+ toolStrictMode?: "all_strict" | "none" | undefined;
311
813
  vercelGatewayRouting?: {
312
814
  only?: string[] | undefined;
313
815
  order?: string[] | undefined;
314
816
  } | undefined;
315
- extraBody?: {
316
- [x: string]: unknown;
817
+ whenThinking?: {
818
+ allowAnthropicHeaderOverrides?: boolean | undefined;
819
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
820
+ alwaysSendMaxTokens?: boolean | undefined;
821
+ cacheControlFormat?: "anthropic" | undefined;
822
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
823
+ disableReasoningOnToolChoice?: boolean | undefined;
824
+ extraBody?: Record<string, unknown> | undefined;
825
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
826
+ openRouterRouting?: {
827
+ only?: string[] | undefined;
828
+ order?: string[] | undefined;
829
+ } | undefined;
830
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
831
+ reasoningEffortMap?: {
832
+ high?: string | undefined;
833
+ low?: string | undefined;
834
+ max?: string | undefined;
835
+ medium?: string | undefined;
836
+ minimal?: string | undefined;
837
+ xhigh?: string | undefined;
838
+ } | undefined;
839
+ replayUnsignedThinking?: boolean | undefined;
840
+ requiresAssistantAfterToolResult?: boolean | undefined;
841
+ requiresAssistantContentForToolCalls?: boolean | undefined;
842
+ requiresMistralToolIds?: boolean | undefined;
843
+ requiresReasoningContentForToolCalls?: boolean | undefined;
844
+ requiresThinkingAsText?: boolean | undefined;
845
+ requiresToolResultId?: boolean | undefined;
846
+ requiresToolResultName?: boolean | undefined;
847
+ streamIdleTimeoutMs?: number | undefined;
848
+ strictResponsesPairing?: boolean | undefined;
849
+ supportsDeveloperRole?: boolean | undefined;
850
+ supportsEagerToolInputStreaming?: boolean | undefined;
851
+ supportsForcedToolChoice?: boolean | undefined;
852
+ supportsImageDetailOriginal?: boolean | undefined;
853
+ supportsLongPromptCacheRetention?: boolean | undefined;
854
+ supportsMultipleSystemMessages?: boolean | undefined;
855
+ supportsReasoningEffort?: boolean | undefined;
856
+ supportsReasoningParams?: boolean | undefined;
857
+ supportsStore?: boolean | undefined;
858
+ supportsStrictMode?: boolean | undefined;
859
+ supportsToolChoice?: boolean | undefined;
860
+ supportsUsageInStreaming?: boolean | undefined;
861
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
862
+ toolStrictMode?: "all_strict" | "none" | undefined;
863
+ vercelGatewayRouting?: {
864
+ only?: string[] | undefined;
865
+ order?: string[] | undefined;
866
+ } | undefined;
317
867
  } | undefined;
868
+ } & {
869
+ promptCacheMaximumCheckpoints?: number | undefined;
870
+ promptCacheMinimumTokens?: number | undefined;
871
+ promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
872
+ supportsLongPromptCacheRetention?: boolean | undefined;
873
+ }) | undefined;
874
+ contextPromotionTarget?: string | undefined;
875
+ contextWindow?: number | undefined;
876
+ cost?: {
877
+ cacheRead: number;
878
+ cacheWrite: number;
879
+ input: number;
880
+ output: number;
881
+ } | undefined;
882
+ headers?: Record<string, string> | undefined;
883
+ id: string;
884
+ input?: ("image" | "text")[] | undefined;
885
+ maxTokens?: number | undefined;
886
+ name?: string | undefined;
887
+ omitMaxOutputTokens?: boolean | undefined;
888
+ premiumMultiplier?: number | undefined;
889
+ reasoning?: boolean | undefined;
890
+ remoteCompaction?: {
891
+ api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
892
+ enabled?: boolean | undefined;
893
+ endpoint?: string | undefined;
894
+ model?: string | undefined;
895
+ streamingEndpoint?: string | undefined;
896
+ v2Endpoint?: string | undefined;
897
+ v2StreamingEnabled?: boolean | undefined;
898
+ } | undefined;
899
+ supportsTools?: boolean | undefined;
900
+ thinking?: {
901
+ mode: any;
902
+ efforts: any;
903
+ defaultLevel?: any;
904
+ effortMap?: any;
905
+ supportsDisplay?: any;
906
+ } | undefined;
907
+ }[] | undefined;
908
+ remoteCompaction?: {
909
+ api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
910
+ enabled?: boolean | undefined;
911
+ endpoint?: string | undefined;
912
+ model?: string | undefined;
913
+ streamingEndpoint?: string | undefined;
914
+ v2Endpoint?: string | undefined;
915
+ v2StreamingEnabled?: boolean | undefined;
916
+ } | undefined;
917
+ transport?: "pi-native" | undefined;
918
+ }> | undefined;
919
+ }, {
920
+ providers?: Record<string, {
921
+ api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
922
+ apiKey?: string | undefined;
923
+ auth?: "apiKey" | "none" | "oauth" | undefined;
924
+ authHeader?: boolean | undefined;
925
+ baseUrl?: string | undefined;
926
+ compat?: ({
927
+ allowAnthropicHeaderOverrides?: boolean | undefined;
928
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
929
+ alwaysSendMaxTokens?: boolean | undefined;
930
+ cacheControlFormat?: "anthropic" | undefined;
931
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
932
+ disableReasoningOnToolChoice?: boolean | undefined;
933
+ extraBody?: Record<string, unknown> | undefined;
934
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
935
+ openRouterRouting?: {
936
+ only?: string[] | undefined;
937
+ order?: string[] | undefined;
938
+ } | undefined;
939
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
940
+ reasoningEffortMap?: {
941
+ high?: string | undefined;
942
+ low?: string | undefined;
943
+ max?: string | undefined;
944
+ medium?: string | undefined;
945
+ minimal?: string | undefined;
946
+ xhigh?: string | undefined;
947
+ } | undefined;
948
+ replayUnsignedThinking?: boolean | undefined;
949
+ requiresAssistantAfterToolResult?: boolean | undefined;
950
+ requiresAssistantContentForToolCalls?: boolean | undefined;
951
+ requiresMistralToolIds?: boolean | undefined;
952
+ requiresReasoningContentForToolCalls?: boolean | undefined;
953
+ requiresThinkingAsText?: boolean | undefined;
954
+ requiresToolResultId?: boolean | undefined;
955
+ requiresToolResultName?: boolean | undefined;
956
+ streamIdleTimeoutMs?: number | undefined;
957
+ strictResponsesPairing?: boolean | undefined;
958
+ supportsDeveloperRole?: boolean | undefined;
959
+ supportsEagerToolInputStreaming?: boolean | undefined;
960
+ supportsForcedToolChoice?: boolean | undefined;
961
+ supportsImageDetailOriginal?: boolean | undefined;
962
+ supportsLongPromptCacheRetention?: boolean | undefined;
963
+ supportsMultipleSystemMessages?: boolean | undefined;
964
+ supportsReasoningEffort?: boolean | undefined;
965
+ supportsReasoningParams?: boolean | undefined;
966
+ supportsStore?: boolean | undefined;
967
+ supportsStrictMode?: boolean | undefined;
968
+ supportsToolChoice?: boolean | undefined;
969
+ supportsUsageInStreaming?: boolean | undefined;
970
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
971
+ toolStrictMode?: "all_strict" | "none" | undefined;
972
+ vercelGatewayRouting?: {
973
+ only?: string[] | undefined;
974
+ order?: string[] | undefined;
975
+ } | undefined;
976
+ whenThinking?: {
977
+ allowAnthropicHeaderOverrides?: boolean | undefined;
978
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
979
+ alwaysSendMaxTokens?: boolean | undefined;
318
980
  cacheControlFormat?: "anthropic" | undefined;
319
- supportsStrictMode?: boolean | undefined;
320
- toolStrictMode?: "all_strict" | "none" | undefined;
981
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
982
+ disableReasoningOnToolChoice?: boolean | undefined;
983
+ extraBody?: Record<string, unknown> | undefined;
984
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
985
+ openRouterRouting?: {
986
+ only?: string[] | undefined;
987
+ order?: string[] | undefined;
988
+ } | undefined;
989
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
990
+ reasoningEffortMap?: {
991
+ high?: string | undefined;
992
+ low?: string | undefined;
993
+ max?: string | undefined;
994
+ medium?: string | undefined;
995
+ minimal?: string | undefined;
996
+ xhigh?: string | undefined;
997
+ } | undefined;
998
+ replayUnsignedThinking?: boolean | undefined;
999
+ requiresAssistantAfterToolResult?: boolean | undefined;
1000
+ requiresAssistantContentForToolCalls?: boolean | undefined;
1001
+ requiresMistralToolIds?: boolean | undefined;
1002
+ requiresReasoningContentForToolCalls?: boolean | undefined;
1003
+ requiresThinkingAsText?: boolean | undefined;
1004
+ requiresToolResultId?: boolean | undefined;
1005
+ requiresToolResultName?: boolean | undefined;
321
1006
  streamIdleTimeoutMs?: number | undefined;
1007
+ strictResponsesPairing?: boolean | undefined;
1008
+ supportsDeveloperRole?: boolean | undefined;
1009
+ supportsEagerToolInputStreaming?: boolean | undefined;
1010
+ supportsForcedToolChoice?: boolean | undefined;
1011
+ supportsImageDetailOriginal?: boolean | undefined;
322
1012
  supportsLongPromptCacheRetention?: boolean | undefined;
1013
+ supportsMultipleSystemMessages?: boolean | undefined;
1014
+ supportsReasoningEffort?: boolean | undefined;
323
1015
  supportsReasoningParams?: boolean | undefined;
1016
+ supportsStore?: boolean | undefined;
1017
+ supportsStrictMode?: boolean | undefined;
1018
+ supportsToolChoice?: boolean | undefined;
1019
+ supportsUsageInStreaming?: boolean | undefined;
1020
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
1021
+ toolStrictMode?: "all_strict" | "none" | undefined;
1022
+ vercelGatewayRouting?: {
1023
+ only?: string[] | undefined;
1024
+ order?: string[] | undefined;
1025
+ } | undefined;
1026
+ } | undefined;
1027
+ } & {
1028
+ promptCacheMaximumCheckpoints?: number | undefined;
1029
+ promptCacheMinimumTokens?: number | undefined;
1030
+ promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
1031
+ supportsLongPromptCacheRetention?: boolean | undefined;
1032
+ }) | undefined;
1033
+ disableStrictTools?: boolean | undefined;
1034
+ discovery?: {
1035
+ timeoutMs?: number | undefined;
1036
+ type: "litellm" | "llama.cpp" | "lm-studio" | "ollama" | "openai-models-list" | "proxy";
1037
+ } | undefined;
1038
+ headers?: Record<string, string> | undefined;
1039
+ modelOverrides?: Record<string, {
1040
+ compactionModel?: string | undefined;
1041
+ compat?: ({
1042
+ allowAnthropicHeaderOverrides?: boolean | undefined;
1043
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
324
1044
  alwaysSendMaxTokens?: boolean | undefined;
1045
+ cacheControlFormat?: "anthropic" | undefined;
1046
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
1047
+ disableReasoningOnToolChoice?: boolean | undefined;
1048
+ extraBody?: Record<string, unknown> | undefined;
1049
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
1050
+ openRouterRouting?: {
1051
+ only?: string[] | undefined;
1052
+ order?: string[] | undefined;
1053
+ } | undefined;
1054
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
1055
+ reasoningEffortMap?: {
1056
+ high?: string | undefined;
1057
+ low?: string | undefined;
1058
+ max?: string | undefined;
1059
+ medium?: string | undefined;
1060
+ minimal?: string | undefined;
1061
+ xhigh?: string | undefined;
1062
+ } | undefined;
1063
+ replayUnsignedThinking?: boolean | undefined;
1064
+ requiresAssistantAfterToolResult?: boolean | undefined;
1065
+ requiresAssistantContentForToolCalls?: boolean | undefined;
1066
+ requiresMistralToolIds?: boolean | undefined;
1067
+ requiresReasoningContentForToolCalls?: boolean | undefined;
1068
+ requiresThinkingAsText?: boolean | undefined;
1069
+ requiresToolResultId?: boolean | undefined;
1070
+ requiresToolResultName?: boolean | undefined;
1071
+ streamIdleTimeoutMs?: number | undefined;
325
1072
  strictResponsesPairing?: boolean | undefined;
326
- supportsImageDetailOriginal?: boolean | undefined;
1073
+ supportsDeveloperRole?: boolean | undefined;
327
1074
  supportsEagerToolInputStreaming?: boolean | undefined;
328
- allowAnthropicHeaderOverrides?: boolean | undefined;
329
- requiresToolResultId?: boolean | undefined;
330
- replayUnsignedThinking?: boolean | undefined;
1075
+ supportsForcedToolChoice?: boolean | undefined;
1076
+ supportsImageDetailOriginal?: boolean | undefined;
1077
+ supportsLongPromptCacheRetention?: boolean | undefined;
1078
+ supportsMultipleSystemMessages?: boolean | undefined;
1079
+ supportsReasoningEffort?: boolean | undefined;
1080
+ supportsReasoningParams?: boolean | undefined;
1081
+ supportsStore?: boolean | undefined;
1082
+ supportsStrictMode?: boolean | undefined;
1083
+ supportsToolChoice?: boolean | undefined;
1084
+ supportsUsageInStreaming?: boolean | undefined;
1085
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
1086
+ toolStrictMode?: "all_strict" | "none" | undefined;
1087
+ vercelGatewayRouting?: {
1088
+ only?: string[] | undefined;
1089
+ order?: string[] | undefined;
1090
+ } | undefined;
331
1091
  whenThinking?: {
332
- supportsStore?: boolean | undefined;
333
- supportsDeveloperRole?: boolean | undefined;
334
- supportsMultipleSystemMessages?: boolean | undefined;
335
- supportsReasoningEffort?: boolean | undefined;
1092
+ allowAnthropicHeaderOverrides?: boolean | undefined;
1093
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
1094
+ alwaysSendMaxTokens?: boolean | undefined;
1095
+ cacheControlFormat?: "anthropic" | undefined;
1096
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
1097
+ disableReasoningOnToolChoice?: boolean | undefined;
1098
+ extraBody?: Record<string, unknown> | undefined;
1099
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
1100
+ openRouterRouting?: {
1101
+ only?: string[] | undefined;
1102
+ order?: string[] | undefined;
1103
+ } | undefined;
1104
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
336
1105
  reasoningEffortMap?: {
337
- minimal?: string | undefined;
1106
+ high?: string | undefined;
338
1107
  low?: string | undefined;
1108
+ max?: string | undefined;
339
1109
  medium?: string | undefined;
340
- high?: string | undefined;
1110
+ minimal?: string | undefined;
341
1111
  xhigh?: string | undefined;
342
- max?: string | undefined;
343
1112
  } | undefined;
344
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
345
- supportsUsageInStreaming?: boolean | undefined;
346
- requiresToolResultName?: boolean | undefined;
347
- requiresMistralToolIds?: boolean | undefined;
1113
+ replayUnsignedThinking?: boolean | undefined;
348
1114
  requiresAssistantAfterToolResult?: boolean | undefined;
349
- requiresThinkingAsText?: boolean | undefined;
350
- reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
351
- requiresReasoningContentForToolCalls?: boolean | undefined;
352
- allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
353
1115
  requiresAssistantContentForToolCalls?: boolean | undefined;
354
- supportsToolChoice?: boolean | undefined;
1116
+ requiresMistralToolIds?: boolean | undefined;
1117
+ requiresReasoningContentForToolCalls?: boolean | undefined;
1118
+ requiresThinkingAsText?: boolean | undefined;
1119
+ requiresToolResultId?: boolean | undefined;
1120
+ requiresToolResultName?: boolean | undefined;
1121
+ streamIdleTimeoutMs?: number | undefined;
1122
+ strictResponsesPairing?: boolean | undefined;
1123
+ supportsDeveloperRole?: boolean | undefined;
1124
+ supportsEagerToolInputStreaming?: boolean | undefined;
355
1125
  supportsForcedToolChoice?: boolean | undefined;
356
- disableReasoningOnForcedToolChoice?: boolean | undefined;
357
- disableReasoningOnToolChoice?: boolean | undefined;
1126
+ supportsImageDetailOriginal?: boolean | undefined;
1127
+ supportsLongPromptCacheRetention?: boolean | undefined;
1128
+ supportsMultipleSystemMessages?: boolean | undefined;
1129
+ supportsReasoningEffort?: boolean | undefined;
1130
+ supportsReasoningParams?: boolean | undefined;
1131
+ supportsStore?: boolean | undefined;
1132
+ supportsStrictMode?: boolean | undefined;
1133
+ supportsToolChoice?: boolean | undefined;
1134
+ supportsUsageInStreaming?: boolean | undefined;
358
1135
  thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
359
- openRouterRouting?: {
360
- only?: string[] | undefined;
361
- order?: string[] | undefined;
362
- } | undefined;
1136
+ toolStrictMode?: "all_strict" | "none" | undefined;
363
1137
  vercelGatewayRouting?: {
364
1138
  only?: string[] | undefined;
365
1139
  order?: string[] | undefined;
366
1140
  } | undefined;
367
- extraBody?: {
368
- [x: string]: unknown;
369
- } | undefined;
370
- cacheControlFormat?: "anthropic" | undefined;
371
- supportsStrictMode?: boolean | undefined;
372
- toolStrictMode?: "all_strict" | "none" | undefined;
373
- streamIdleTimeoutMs?: number | undefined;
374
- supportsLongPromptCacheRetention?: boolean | undefined;
375
- supportsReasoningParams?: boolean | undefined;
376
- alwaysSendMaxTokens?: boolean | undefined;
377
- strictResponsesPairing?: boolean | undefined;
378
- supportsImageDetailOriginal?: boolean | undefined;
379
- supportsEagerToolInputStreaming?: boolean | undefined;
380
- allowAnthropicHeaderOverrides?: boolean | undefined;
381
- requiresToolResultId?: boolean | undefined;
382
- replayUnsignedThinking?: boolean | undefined;
383
1141
  } | undefined;
384
- promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
385
- promptCacheMinimumTokens?: number | undefined;
1142
+ } & {
386
1143
  promptCacheMaximumCheckpoints?: number | undefined;
1144
+ promptCacheMinimumTokens?: number | undefined;
1145
+ promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
1146
+ supportsLongPromptCacheRetention?: boolean | undefined;
1147
+ }) | undefined;
1148
+ contextPromotionTarget?: string | undefined;
1149
+ contextWindow?: number | undefined;
1150
+ cost?: {
1151
+ cacheRead?: number | undefined;
1152
+ cacheWrite?: number | undefined;
1153
+ input?: number | undefined;
1154
+ output?: number | undefined;
387
1155
  } | undefined;
1156
+ headers?: Record<string, string> | undefined;
1157
+ input?: ("image" | "text")[] | undefined;
1158
+ maxTokens?: number | undefined;
1159
+ name?: string | undefined;
1160
+ omitMaxOutputTokens?: boolean | undefined;
1161
+ premiumMultiplier?: number | undefined;
1162
+ reasoning?: boolean | undefined;
388
1163
  remoteCompaction?: {
389
- enabled?: boolean | undefined;
390
1164
  api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
1165
+ enabled?: boolean | undefined;
391
1166
  endpoint?: string | undefined;
392
1167
  model?: string | undefined;
393
- v2StreamingEnabled?: boolean | undefined;
394
- v2Endpoint?: string | undefined;
395
1168
  streamingEndpoint?: string | undefined;
1169
+ v2Endpoint?: string | undefined;
1170
+ v2StreamingEnabled?: boolean | undefined;
396
1171
  } | undefined;
397
- authHeader?: boolean | undefined;
398
- auth?: "apiKey" | "none" | "oauth" | undefined;
399
- discovery?: {
400
- type: "litellm" | "llama.cpp" | "lm-studio" | "ollama" | "openai-models-list" | "proxy";
401
- timeoutMs?: number | undefined;
1172
+ supportsTools?: boolean | undefined;
1173
+ thinking?: {
1174
+ defaultLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
1175
+ effortMap?: {
1176
+ high?: string | undefined;
1177
+ low?: string | undefined;
1178
+ max?: string | undefined;
1179
+ medium?: string | undefined;
1180
+ minimal?: string | undefined;
1181
+ xhigh?: string | undefined;
1182
+ } | undefined;
1183
+ efforts?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
1184
+ levels?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
1185
+ maxLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
1186
+ minLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
1187
+ mode: "anthropic-adaptive" | "anthropic-budget-effort" | "budget" | "effort" | "google-level";
1188
+ supportsDisplay?: boolean | undefined;
402
1189
  } | undefined;
403
- models?: {
404
- id: string;
405
- name?: string | undefined;
406
- api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
407
- baseUrl?: string | undefined;
408
- reasoning?: boolean | undefined;
409
- thinking?: ((In: {
410
- mode: "anthropic-adaptive" | "anthropic-budget-effort" | "budget" | "effort" | "google-level";
411
- efforts?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
412
- defaultLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
413
- effortMap?: {
414
- minimal?: string | undefined;
415
- low?: string | undefined;
416
- medium?: string | undefined;
417
- high?: string | undefined;
418
- xhigh?: string | undefined;
419
- max?: string | undefined;
420
- } | undefined;
421
- supportsDisplay?: boolean | undefined;
422
- minLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
423
- maxLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
424
- levels?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
425
- }) => import("arktype").Out<{
426
- mode: any;
427
- efforts: any;
428
- defaultLevel?: any;
429
- effortMap?: any;
430
- supportsDisplay?: any;
431
- }>) | undefined;
432
- input?: ("image" | "text")[] | undefined;
433
- supportsTools?: boolean | undefined;
434
- cost?: {
435
- input: number;
436
- output: number;
437
- cacheRead: number;
438
- cacheWrite: number;
1190
+ }> | undefined;
1191
+ models?: {
1192
+ api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
1193
+ baseUrl?: string | undefined;
1194
+ compactionModel?: string | undefined;
1195
+ compat?: ({
1196
+ allowAnthropicHeaderOverrides?: boolean | undefined;
1197
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
1198
+ alwaysSendMaxTokens?: boolean | undefined;
1199
+ cacheControlFormat?: "anthropic" | undefined;
1200
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
1201
+ disableReasoningOnToolChoice?: boolean | undefined;
1202
+ extraBody?: Record<string, unknown> | undefined;
1203
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
1204
+ openRouterRouting?: {
1205
+ only?: string[] | undefined;
1206
+ order?: string[] | undefined;
1207
+ } | undefined;
1208
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
1209
+ reasoningEffortMap?: {
1210
+ high?: string | undefined;
1211
+ low?: string | undefined;
1212
+ max?: string | undefined;
1213
+ medium?: string | undefined;
1214
+ minimal?: string | undefined;
1215
+ xhigh?: string | undefined;
439
1216
  } | undefined;
440
- premiumMultiplier?: number | undefined;
441
- contextWindow?: number | undefined;
442
- maxTokens?: number | undefined;
443
- omitMaxOutputTokens?: boolean | undefined;
444
- headers?: {
445
- [x: string]: string;
1217
+ replayUnsignedThinking?: boolean | undefined;
1218
+ requiresAssistantAfterToolResult?: boolean | undefined;
1219
+ requiresAssistantContentForToolCalls?: boolean | undefined;
1220
+ requiresMistralToolIds?: boolean | undefined;
1221
+ requiresReasoningContentForToolCalls?: boolean | undefined;
1222
+ requiresThinkingAsText?: boolean | undefined;
1223
+ requiresToolResultId?: boolean | undefined;
1224
+ requiresToolResultName?: boolean | undefined;
1225
+ streamIdleTimeoutMs?: number | undefined;
1226
+ strictResponsesPairing?: boolean | undefined;
1227
+ supportsDeveloperRole?: boolean | undefined;
1228
+ supportsEagerToolInputStreaming?: boolean | undefined;
1229
+ supportsForcedToolChoice?: boolean | undefined;
1230
+ supportsImageDetailOriginal?: boolean | undefined;
1231
+ supportsLongPromptCacheRetention?: boolean | undefined;
1232
+ supportsMultipleSystemMessages?: boolean | undefined;
1233
+ supportsReasoningEffort?: boolean | undefined;
1234
+ supportsReasoningParams?: boolean | undefined;
1235
+ supportsStore?: boolean | undefined;
1236
+ supportsStrictMode?: boolean | undefined;
1237
+ supportsToolChoice?: boolean | undefined;
1238
+ supportsUsageInStreaming?: boolean | undefined;
1239
+ thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
1240
+ toolStrictMode?: "all_strict" | "none" | undefined;
1241
+ vercelGatewayRouting?: {
1242
+ only?: string[] | undefined;
1243
+ order?: string[] | undefined;
446
1244
  } | undefined;
447
- compat?: {
448
- supportsStore?: boolean | undefined;
449
- supportsDeveloperRole?: boolean | undefined;
450
- supportsMultipleSystemMessages?: boolean | undefined;
451
- supportsReasoningEffort?: boolean | undefined;
1245
+ whenThinking?: {
1246
+ allowAnthropicHeaderOverrides?: boolean | undefined;
1247
+ allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
1248
+ alwaysSendMaxTokens?: boolean | undefined;
1249
+ cacheControlFormat?: "anthropic" | undefined;
1250
+ disableReasoningOnForcedToolChoice?: boolean | undefined;
1251
+ disableReasoningOnToolChoice?: boolean | undefined;
1252
+ extraBody?: Record<string, unknown> | undefined;
1253
+ maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
1254
+ openRouterRouting?: {
1255
+ only?: string[] | undefined;
1256
+ order?: string[] | undefined;
1257
+ } | undefined;
1258
+ reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
452
1259
  reasoningEffortMap?: {
453
- minimal?: string | undefined;
1260
+ high?: string | undefined;
454
1261
  low?: string | undefined;
1262
+ max?: string | undefined;
455
1263
  medium?: string | undefined;
456
- high?: string | undefined;
1264
+ minimal?: string | undefined;
457
1265
  xhigh?: string | undefined;
458
- max?: string | undefined;
459
1266
  } | undefined;
460
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
461
- supportsUsageInStreaming?: boolean | undefined;
462
- requiresToolResultName?: boolean | undefined;
463
- requiresMistralToolIds?: boolean | undefined;
1267
+ replayUnsignedThinking?: boolean | undefined;
464
1268
  requiresAssistantAfterToolResult?: boolean | undefined;
465
- requiresThinkingAsText?: boolean | undefined;
466
- reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
467
- requiresReasoningContentForToolCalls?: boolean | undefined;
468
- allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
469
1269
  requiresAssistantContentForToolCalls?: boolean | undefined;
470
- supportsToolChoice?: boolean | undefined;
1270
+ requiresMistralToolIds?: boolean | undefined;
1271
+ requiresReasoningContentForToolCalls?: boolean | undefined;
1272
+ requiresThinkingAsText?: boolean | undefined;
1273
+ requiresToolResultId?: boolean | undefined;
1274
+ requiresToolResultName?: boolean | undefined;
1275
+ streamIdleTimeoutMs?: number | undefined;
1276
+ strictResponsesPairing?: boolean | undefined;
1277
+ supportsDeveloperRole?: boolean | undefined;
1278
+ supportsEagerToolInputStreaming?: boolean | undefined;
471
1279
  supportsForcedToolChoice?: boolean | undefined;
472
- disableReasoningOnForcedToolChoice?: boolean | undefined;
473
- disableReasoningOnToolChoice?: boolean | undefined;
1280
+ supportsImageDetailOriginal?: boolean | undefined;
1281
+ supportsLongPromptCacheRetention?: boolean | undefined;
1282
+ supportsMultipleSystemMessages?: boolean | undefined;
1283
+ supportsReasoningEffort?: boolean | undefined;
1284
+ supportsReasoningParams?: boolean | undefined;
1285
+ supportsStore?: boolean | undefined;
1286
+ supportsStrictMode?: boolean | undefined;
1287
+ supportsToolChoice?: boolean | undefined;
1288
+ supportsUsageInStreaming?: boolean | undefined;
474
1289
  thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
475
- openRouterRouting?: {
476
- only?: string[] | undefined;
477
- order?: string[] | undefined;
478
- } | undefined;
1290
+ toolStrictMode?: "all_strict" | "none" | undefined;
479
1291
  vercelGatewayRouting?: {
480
1292
  only?: string[] | undefined;
481
1293
  order?: string[] | undefined;
482
1294
  } | undefined;
483
- extraBody?: {
484
- [x: string]: unknown;
485
- } | undefined;
486
- cacheControlFormat?: "anthropic" | undefined;
487
- supportsStrictMode?: boolean | undefined;
488
- toolStrictMode?: "all_strict" | "none" | undefined;
489
- streamIdleTimeoutMs?: number | undefined;
490
- supportsLongPromptCacheRetention?: boolean | undefined;
491
- supportsReasoningParams?: boolean | undefined;
492
- alwaysSendMaxTokens?: boolean | undefined;
493
- strictResponsesPairing?: boolean | undefined;
494
- supportsImageDetailOriginal?: boolean | undefined;
495
- supportsEagerToolInputStreaming?: boolean | undefined;
496
- allowAnthropicHeaderOverrides?: boolean | undefined;
497
- requiresToolResultId?: boolean | undefined;
498
- replayUnsignedThinking?: boolean | undefined;
499
- whenThinking?: {
500
- supportsStore?: boolean | undefined;
501
- supportsDeveloperRole?: boolean | undefined;
502
- supportsMultipleSystemMessages?: boolean | undefined;
503
- supportsReasoningEffort?: boolean | undefined;
504
- reasoningEffortMap?: {
505
- minimal?: string | undefined;
506
- low?: string | undefined;
507
- medium?: string | undefined;
508
- high?: string | undefined;
509
- xhigh?: string | undefined;
510
- max?: string | undefined;
511
- } | undefined;
512
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
513
- supportsUsageInStreaming?: boolean | undefined;
514
- requiresToolResultName?: boolean | undefined;
515
- requiresMistralToolIds?: boolean | undefined;
516
- requiresAssistantAfterToolResult?: boolean | undefined;
517
- requiresThinkingAsText?: boolean | undefined;
518
- reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
519
- requiresReasoningContentForToolCalls?: boolean | undefined;
520
- allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
521
- requiresAssistantContentForToolCalls?: boolean | undefined;
522
- supportsToolChoice?: boolean | undefined;
523
- supportsForcedToolChoice?: boolean | undefined;
524
- disableReasoningOnForcedToolChoice?: boolean | undefined;
525
- disableReasoningOnToolChoice?: boolean | undefined;
526
- thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
527
- openRouterRouting?: {
528
- only?: string[] | undefined;
529
- order?: string[] | undefined;
530
- } | undefined;
531
- vercelGatewayRouting?: {
532
- only?: string[] | undefined;
533
- order?: string[] | undefined;
534
- } | undefined;
535
- extraBody?: {
536
- [x: string]: unknown;
537
- } | undefined;
538
- cacheControlFormat?: "anthropic" | undefined;
539
- supportsStrictMode?: boolean | undefined;
540
- toolStrictMode?: "all_strict" | "none" | undefined;
541
- streamIdleTimeoutMs?: number | undefined;
542
- supportsLongPromptCacheRetention?: boolean | undefined;
543
- supportsReasoningParams?: boolean | undefined;
544
- alwaysSendMaxTokens?: boolean | undefined;
545
- strictResponsesPairing?: boolean | undefined;
546
- supportsImageDetailOriginal?: boolean | undefined;
547
- supportsEagerToolInputStreaming?: boolean | undefined;
548
- allowAnthropicHeaderOverrides?: boolean | undefined;
549
- requiresToolResultId?: boolean | undefined;
550
- replayUnsignedThinking?: boolean | undefined;
551
- } | undefined;
552
- promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
553
- promptCacheMinimumTokens?: number | undefined;
554
- promptCacheMaximumCheckpoints?: number | undefined;
555
1295
  } | undefined;
556
- contextPromotionTarget?: string | undefined;
557
- compactionModel?: string | undefined;
558
- remoteCompaction?: {
559
- enabled?: boolean | undefined;
560
- api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
561
- endpoint?: string | undefined;
562
- model?: string | undefined;
563
- v2StreamingEnabled?: boolean | undefined;
564
- v2Endpoint?: string | undefined;
565
- streamingEndpoint?: string | undefined;
1296
+ } & {
1297
+ promptCacheMaximumCheckpoints?: number | undefined;
1298
+ promptCacheMinimumTokens?: number | undefined;
1299
+ promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
1300
+ supportsLongPromptCacheRetention?: boolean | undefined;
1301
+ }) | undefined;
1302
+ contextPromotionTarget?: string | undefined;
1303
+ contextWindow?: number | undefined;
1304
+ cost?: {
1305
+ cacheRead: number;
1306
+ cacheWrite: number;
1307
+ input: number;
1308
+ output: number;
1309
+ } | undefined;
1310
+ headers?: Record<string, string> | undefined;
1311
+ id: string;
1312
+ input?: ("image" | "text")[] | undefined;
1313
+ maxTokens?: number | undefined;
1314
+ name?: string | undefined;
1315
+ omitMaxOutputTokens?: boolean | undefined;
1316
+ premiumMultiplier?: number | undefined;
1317
+ reasoning?: boolean | undefined;
1318
+ remoteCompaction?: {
1319
+ api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
1320
+ enabled?: boolean | undefined;
1321
+ endpoint?: string | undefined;
1322
+ model?: string | undefined;
1323
+ streamingEndpoint?: string | undefined;
1324
+ v2Endpoint?: string | undefined;
1325
+ v2StreamingEnabled?: boolean | undefined;
1326
+ } | undefined;
1327
+ supportsTools?: boolean | undefined;
1328
+ thinking?: {
1329
+ defaultLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
1330
+ effortMap?: {
1331
+ high?: string | undefined;
1332
+ low?: string | undefined;
1333
+ max?: string | undefined;
1334
+ medium?: string | undefined;
1335
+ minimal?: string | undefined;
1336
+ xhigh?: string | undefined;
566
1337
  } | undefined;
567
- }[] | undefined;
568
- modelOverrides?: {
569
- [x: string]: {
570
- name?: string | undefined;
571
- reasoning?: boolean | undefined;
572
- thinking?: ((In: {
573
- mode: "anthropic-adaptive" | "anthropic-budget-effort" | "budget" | "effort" | "google-level";
574
- efforts?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
575
- defaultLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
576
- effortMap?: {
577
- minimal?: string | undefined;
578
- low?: string | undefined;
579
- medium?: string | undefined;
580
- high?: string | undefined;
581
- xhigh?: string | undefined;
582
- max?: string | undefined;
583
- } | undefined;
584
- supportsDisplay?: boolean | undefined;
585
- minLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
586
- maxLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
587
- levels?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
588
- }) => import("arktype").Out<{
589
- mode: any;
590
- efforts: any;
591
- defaultLevel?: any;
592
- effortMap?: any;
593
- supportsDisplay?: any;
594
- }>) | undefined;
595
- input?: ("image" | "text")[] | undefined;
596
- supportsTools?: boolean | undefined;
597
- cost?: {
598
- input?: number | undefined;
599
- output?: number | undefined;
600
- cacheRead?: number | undefined;
601
- cacheWrite?: number | undefined;
602
- } | undefined;
603
- premiumMultiplier?: number | undefined;
604
- contextWindow?: number | undefined;
605
- maxTokens?: number | undefined;
606
- omitMaxOutputTokens?: boolean | undefined;
607
- headers?: {
608
- [x: string]: string;
609
- } | undefined;
610
- compat?: {
611
- supportsStore?: boolean | undefined;
612
- supportsDeveloperRole?: boolean | undefined;
613
- supportsMultipleSystemMessages?: boolean | undefined;
614
- supportsReasoningEffort?: boolean | undefined;
615
- reasoningEffortMap?: {
616
- minimal?: string | undefined;
617
- low?: string | undefined;
618
- medium?: string | undefined;
619
- high?: string | undefined;
620
- xhigh?: string | undefined;
621
- max?: string | undefined;
622
- } | undefined;
623
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
624
- supportsUsageInStreaming?: boolean | undefined;
625
- requiresToolResultName?: boolean | undefined;
626
- requiresMistralToolIds?: boolean | undefined;
627
- requiresAssistantAfterToolResult?: boolean | undefined;
628
- requiresThinkingAsText?: boolean | undefined;
629
- reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
630
- requiresReasoningContentForToolCalls?: boolean | undefined;
631
- allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
632
- requiresAssistantContentForToolCalls?: boolean | undefined;
633
- supportsToolChoice?: boolean | undefined;
634
- supportsForcedToolChoice?: boolean | undefined;
635
- disableReasoningOnForcedToolChoice?: boolean | undefined;
636
- disableReasoningOnToolChoice?: boolean | undefined;
637
- thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
638
- openRouterRouting?: {
639
- only?: string[] | undefined;
640
- order?: string[] | undefined;
641
- } | undefined;
642
- vercelGatewayRouting?: {
643
- only?: string[] | undefined;
644
- order?: string[] | undefined;
645
- } | undefined;
646
- extraBody?: {
647
- [x: string]: unknown;
648
- } | undefined;
649
- cacheControlFormat?: "anthropic" | undefined;
650
- supportsStrictMode?: boolean | undefined;
651
- toolStrictMode?: "all_strict" | "none" | undefined;
652
- streamIdleTimeoutMs?: number | undefined;
653
- supportsLongPromptCacheRetention?: boolean | undefined;
654
- supportsReasoningParams?: boolean | undefined;
655
- alwaysSendMaxTokens?: boolean | undefined;
656
- strictResponsesPairing?: boolean | undefined;
657
- supportsImageDetailOriginal?: boolean | undefined;
658
- supportsEagerToolInputStreaming?: boolean | undefined;
659
- allowAnthropicHeaderOverrides?: boolean | undefined;
660
- requiresToolResultId?: boolean | undefined;
661
- replayUnsignedThinking?: boolean | undefined;
662
- whenThinking?: {
663
- supportsStore?: boolean | undefined;
664
- supportsDeveloperRole?: boolean | undefined;
665
- supportsMultipleSystemMessages?: boolean | undefined;
666
- supportsReasoningEffort?: boolean | undefined;
667
- reasoningEffortMap?: {
668
- minimal?: string | undefined;
669
- low?: string | undefined;
670
- medium?: string | undefined;
671
- high?: string | undefined;
672
- xhigh?: string | undefined;
673
- max?: string | undefined;
674
- } | undefined;
675
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
676
- supportsUsageInStreaming?: boolean | undefined;
677
- requiresToolResultName?: boolean | undefined;
678
- requiresMistralToolIds?: boolean | undefined;
679
- requiresAssistantAfterToolResult?: boolean | undefined;
680
- requiresThinkingAsText?: boolean | undefined;
681
- reasoningContentField?: "reasoning" | "reasoning_content" | "reasoning_text" | undefined;
682
- requiresReasoningContentForToolCalls?: boolean | undefined;
683
- allowsSyntheticReasoningContentForToolCalls?: boolean | undefined;
684
- requiresAssistantContentForToolCalls?: boolean | undefined;
685
- supportsToolChoice?: boolean | undefined;
686
- supportsForcedToolChoice?: boolean | undefined;
687
- disableReasoningOnForcedToolChoice?: boolean | undefined;
688
- disableReasoningOnToolChoice?: boolean | undefined;
689
- thinkingFormat?: "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "zai" | undefined;
690
- openRouterRouting?: {
691
- only?: string[] | undefined;
692
- order?: string[] | undefined;
693
- } | undefined;
694
- vercelGatewayRouting?: {
695
- only?: string[] | undefined;
696
- order?: string[] | undefined;
697
- } | undefined;
698
- extraBody?: {
699
- [x: string]: unknown;
700
- } | undefined;
701
- cacheControlFormat?: "anthropic" | undefined;
702
- supportsStrictMode?: boolean | undefined;
703
- toolStrictMode?: "all_strict" | "none" | undefined;
704
- streamIdleTimeoutMs?: number | undefined;
705
- supportsLongPromptCacheRetention?: boolean | undefined;
706
- supportsReasoningParams?: boolean | undefined;
707
- alwaysSendMaxTokens?: boolean | undefined;
708
- strictResponsesPairing?: boolean | undefined;
709
- supportsImageDetailOriginal?: boolean | undefined;
710
- supportsEagerToolInputStreaming?: boolean | undefined;
711
- allowAnthropicHeaderOverrides?: boolean | undefined;
712
- requiresToolResultId?: boolean | undefined;
713
- replayUnsignedThinking?: boolean | undefined;
714
- } | undefined;
715
- promptCacheMode?: "automatic" | "explicit" | "none" | undefined;
716
- promptCacheMinimumTokens?: number | undefined;
717
- promptCacheMaximumCheckpoints?: number | undefined;
718
- } | undefined;
719
- contextPromotionTarget?: string | undefined;
720
- compactionModel?: string | undefined;
721
- remoteCompaction?: {
722
- enabled?: boolean | undefined;
723
- api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
724
- endpoint?: string | undefined;
725
- model?: string | undefined;
726
- v2StreamingEnabled?: boolean | undefined;
727
- v2Endpoint?: string | undefined;
728
- streamingEndpoint?: string | undefined;
729
- } | undefined;
730
- };
1338
+ efforts?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
1339
+ levels?: ("high" | "low" | "max" | "medium" | "minimal" | "xhigh")[] | undefined;
1340
+ maxLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
1341
+ minLevel?: "high" | "low" | "max" | "medium" | "minimal" | "xhigh" | undefined;
1342
+ mode: "anthropic-adaptive" | "anthropic-budget-effort" | "budget" | "effort" | "google-level";
1343
+ supportsDisplay?: boolean | undefined;
731
1344
  } | undefined;
732
- disableStrictTools?: boolean | undefined;
733
- transport?: "pi-native" | undefined;
734
- };
735
- } | undefined;
736
- }, {}>;
1345
+ }[] | undefined;
1346
+ remoteCompaction?: {
1347
+ api?: "anthropic-messages" | "azure-openai-responses" | "bedrock-converse-stream" | "google-gemini-cli" | "google-generative-ai" | "google-vertex" | "openai-codex-responses" | "openai-completions" | "openai-responses" | undefined;
1348
+ enabled?: boolean | undefined;
1349
+ endpoint?: string | undefined;
1350
+ model?: string | undefined;
1351
+ streamingEndpoint?: string | undefined;
1352
+ v2Endpoint?: string | undefined;
1353
+ v2StreamingEnabled?: boolean | undefined;
1354
+ } | undefined;
1355
+ transport?: "pi-native" | undefined;
1356
+ }> | undefined;
1357
+ }>;
737
1358
  export type ModelOverride = typeof ModelOverrideSchema.infer;
738
1359
  export type ProviderAuthMode = typeof ProviderAuthSchema.infer;
739
1360
  export type ProviderDiscovery = typeof ProviderDiscoverySchema.infer;