@code-yeongyu/senpi 2026.6.6-3 → 2026.6.10-2

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 (342) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +102 -100
  3. package/dist/cli/args.d.ts.map +1 -1
  4. package/dist/cli/args.js +1 -2
  5. package/dist/cli/args.js.map +1 -1
  6. package/dist/cli/project-trust.d.ts +10 -0
  7. package/dist/cli/project-trust.d.ts.map +1 -0
  8. package/dist/cli/project-trust.js +48 -0
  9. package/dist/cli/project-trust.js.map +1 -0
  10. package/dist/cli/startup-ui.d.ts +7 -0
  11. package/dist/cli/startup-ui.d.ts.map +1 -0
  12. package/dist/cli/startup-ui.js +59 -0
  13. package/dist/cli/startup-ui.js.map +1 -0
  14. package/dist/cli.js +10 -1
  15. package/dist/cli.js.map +1 -1
  16. package/dist/core/agent-session-runtime.d.ts +3 -1
  17. package/dist/core/agent-session-runtime.d.ts.map +1 -1
  18. package/dist/core/agent-session-runtime.js +4 -1
  19. package/dist/core/agent-session-runtime.js.map +1 -1
  20. package/dist/core/agent-session-services.d.ts +2 -1
  21. package/dist/core/agent-session-services.d.ts.map +1 -1
  22. package/dist/core/agent-session-services.js +2 -2
  23. package/dist/core/agent-session-services.js.map +1 -1
  24. package/dist/core/agent-session.d.ts +1 -0
  25. package/dist/core/agent-session.d.ts.map +1 -1
  26. package/dist/core/agent-session.js +6 -0
  27. package/dist/core/agent-session.js.map +1 -1
  28. package/dist/core/compaction/utils.d.ts +1 -1
  29. package/dist/core/compaction/utils.d.ts.map +1 -1
  30. package/dist/core/compaction/utils.js +1 -1
  31. package/dist/core/compaction/utils.js.map +1 -1
  32. package/dist/core/extensions/builtin/compaction/degradation-monitor.d.ts +0 -1
  33. package/dist/core/extensions/builtin/compaction/degradation-monitor.d.ts.map +1 -1
  34. package/dist/core/extensions/builtin/compaction/degradation-monitor.js +0 -1
  35. package/dist/core/extensions/builtin/compaction/degradation-monitor.js.map +1 -1
  36. package/dist/core/extensions/builtin/compaction/index.d.ts.map +1 -1
  37. package/dist/core/extensions/builtin/compaction/index.js +4 -4
  38. package/dist/core/extensions/builtin/compaction/index.js.map +1 -1
  39. package/dist/core/extensions/builtin/compaction/policy.d.ts +0 -5
  40. package/dist/core/extensions/builtin/compaction/policy.d.ts.map +1 -1
  41. package/dist/core/extensions/builtin/compaction/policy.js +0 -4
  42. package/dist/core/extensions/builtin/compaction/policy.js.map +1 -1
  43. package/dist/core/extensions/builtin/compaction/speculative.d.ts +0 -6
  44. package/dist/core/extensions/builtin/compaction/speculative.d.ts.map +1 -1
  45. package/dist/core/extensions/builtin/compaction/speculative.js +0 -3
  46. package/dist/core/extensions/builtin/compaction/speculative.js.map +1 -1
  47. package/dist/core/extensions/builtin/gpt-apply-patch/extension.d.ts +1 -1
  48. package/dist/core/extensions/builtin/gpt-apply-patch/extension.d.ts.map +1 -1
  49. package/dist/core/extensions/builtin/gpt-apply-patch/extension.js +10 -2
  50. package/dist/core/extensions/builtin/gpt-apply-patch/extension.js.map +1 -1
  51. package/dist/core/extensions/builtin/permission-system/cli.d.ts +0 -3
  52. package/dist/core/extensions/builtin/permission-system/cli.d.ts.map +1 -1
  53. package/dist/core/extensions/builtin/permission-system/cli.js +0 -13
  54. package/dist/core/extensions/builtin/permission-system/cli.js.map +1 -1
  55. package/dist/core/extensions/builtin/todotools/index.d.ts.map +1 -1
  56. package/dist/core/extensions/builtin/todotools/index.js +0 -2
  57. package/dist/core/extensions/builtin/todotools/index.js.map +1 -1
  58. package/dist/core/extensions/builtin/todotools/prompt.d.ts +1 -1
  59. package/dist/core/extensions/builtin/todotools/prompt.d.ts.map +1 -1
  60. package/dist/core/extensions/builtin/todotools/prompt.js +0 -2
  61. package/dist/core/extensions/builtin/todotools/prompt.js.map +1 -1
  62. package/dist/core/extensions/index.d.ts +1 -1
  63. package/dist/core/extensions/index.d.ts.map +1 -1
  64. package/dist/core/extensions/index.js.map +1 -1
  65. package/dist/core/extensions/loader.d.ts +1 -1
  66. package/dist/core/extensions/loader.d.ts.map +1 -1
  67. package/dist/core/extensions/loader.js +4 -4
  68. package/dist/core/extensions/loader.js.map +1 -1
  69. package/dist/core/extensions/runner.d.ts +7 -2
  70. package/dist/core/extensions/runner.d.ts.map +1 -1
  71. package/dist/core/extensions/runner.js +34 -0
  72. package/dist/core/extensions/runner.js.map +1 -1
  73. package/dist/core/extensions/types.d.ts +21 -1
  74. package/dist/core/extensions/types.d.ts.map +1 -1
  75. package/dist/core/extensions/types.js.map +1 -1
  76. package/dist/core/model-registry.d.ts +3 -4
  77. package/dist/core/model-registry.d.ts.map +1 -1
  78. package/dist/core/model-registry.js +23 -6
  79. package/dist/core/model-registry.js.map +1 -1
  80. package/dist/core/project-trust.d.ts +15 -0
  81. package/dist/core/project-trust.d.ts.map +1 -0
  82. package/dist/core/project-trust.js +58 -0
  83. package/dist/core/project-trust.js.map +1 -0
  84. package/dist/core/prompt-templates.d.ts +2 -1
  85. package/dist/core/prompt-templates.d.ts.map +1 -1
  86. package/dist/core/prompt-templates.js +24 -26
  87. package/dist/core/prompt-templates.js.map +1 -1
  88. package/dist/core/resolve-config-value.d.ts +0 -4
  89. package/dist/core/resolve-config-value.d.ts.map +1 -1
  90. package/dist/core/resolve-config-value.js +0 -15
  91. package/dist/core/resolve-config-value.js.map +1 -1
  92. package/dist/core/resource-loader.d.ts +14 -3
  93. package/dist/core/resource-loader.d.ts.map +1 -1
  94. package/dist/core/resource-loader.js +128 -58
  95. package/dist/core/resource-loader.js.map +1 -1
  96. package/dist/core/session-manager.d.ts +3 -0
  97. package/dist/core/session-manager.d.ts.map +1 -1
  98. package/dist/core/session-manager.js +34 -17
  99. package/dist/core/session-manager.js.map +1 -1
  100. package/dist/core/session-resident-store.d.ts +16 -0
  101. package/dist/core/session-resident-store.d.ts.map +1 -0
  102. package/dist/core/session-resident-store.js +48 -0
  103. package/dist/core/session-resident-store.js.map +1 -0
  104. package/dist/core/settings-manager.d.ts +4 -0
  105. package/dist/core/settings-manager.d.ts.map +1 -1
  106. package/dist/core/settings-manager.js +9 -0
  107. package/dist/core/settings-manager.js.map +1 -1
  108. package/dist/core/tools/edit-diff.d.ts +0 -5
  109. package/dist/core/tools/edit-diff.d.ts.map +1 -1
  110. package/dist/core/tools/edit-diff.js +0 -7
  111. package/dist/core/tools/edit-diff.js.map +1 -1
  112. package/dist/core/tools/index.d.ts +0 -5
  113. package/dist/core/tools/index.d.ts.map +1 -1
  114. package/dist/core/tools/index.js +0 -67
  115. package/dist/core/tools/index.js.map +1 -1
  116. package/dist/core/trust-manager.d.ts +22 -0
  117. package/dist/core/trust-manager.d.ts.map +1 -1
  118. package/dist/core/trust-manager.js +75 -22
  119. package/dist/core/trust-manager.js.map +1 -1
  120. package/dist/index.d.ts +5 -5
  121. package/dist/index.d.ts.map +1 -1
  122. package/dist/index.js +2 -2
  123. package/dist/index.js.map +1 -1
  124. package/dist/main.d.ts.map +1 -1
  125. package/dist/main.js +92 -129
  126. package/dist/main.js.map +1 -1
  127. package/dist/migrations.d.ts.map +1 -1
  128. package/dist/migrations.js +39 -34
  129. package/dist/migrations.js.map +1 -1
  130. package/dist/modes/index.d.ts +1 -1
  131. package/dist/modes/index.d.ts.map +1 -1
  132. package/dist/modes/index.js.map +1 -1
  133. package/dist/modes/interactive/components/login-dialog.d.ts +1 -0
  134. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  135. package/dist/modes/interactive/components/login-dialog.js +7 -1
  136. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  137. package/dist/modes/interactive/components/settings-selector.d.ts +3 -1
  138. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  139. package/dist/modes/interactive/components/settings-selector.js +20 -0
  140. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  141. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  142. package/dist/modes/interactive/components/tool-execution.js +26 -4
  143. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  144. package/dist/modes/interactive/components/trust-selector.d.ts +6 -3
  145. package/dist/modes/interactive/components/trust-selector.d.ts.map +1 -1
  146. package/dist/modes/interactive/components/trust-selector.js +22 -18
  147. package/dist/modes/interactive/components/trust-selector.js.map +1 -1
  148. package/dist/modes/interactive/interactive-mode.d.ts +15 -0
  149. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  150. package/dist/modes/interactive/interactive-mode.js +158 -19
  151. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  152. package/dist/modes/interactive/theme/theme.d.ts +0 -4
  153. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  154. package/dist/modes/interactive/theme/theme.js +0 -7
  155. package/dist/modes/interactive/theme/theme.js.map +1 -1
  156. package/dist/modes/interactive/working-status.d.ts +2 -0
  157. package/dist/modes/interactive/working-status.d.ts.map +1 -1
  158. package/dist/modes/interactive/working-status.js +34 -0
  159. package/dist/modes/interactive/working-status.js.map +1 -1
  160. package/dist/modes/rpc/rpc-types.d.ts +0 -1
  161. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  162. package/dist/modes/rpc/rpc-types.js.map +1 -1
  163. package/dist/package-manager-cli.d.ts +6 -2
  164. package/dist/package-manager-cli.d.ts.map +1 -1
  165. package/dist/package-manager-cli.js +58 -11
  166. package/dist/package-manager-cli.js.map +1 -1
  167. package/dist/senpi +10 -1
  168. package/dist/utils/changelog.d.ts +1 -0
  169. package/dist/utils/changelog.d.ts.map +1 -1
  170. package/dist/utils/changelog.js +78 -0
  171. package/dist/utils/changelog.js.map +1 -1
  172. package/docs/compaction-guide.md +9 -9
  173. package/docs/compaction.md +2 -2
  174. package/docs/containerization.md +22 -22
  175. package/docs/custom-provider.md +13 -13
  176. package/docs/development.md +4 -2
  177. package/docs/docs.json +4 -0
  178. package/docs/extensions.md +46 -18
  179. package/docs/index.md +5 -4
  180. package/docs/json.md +21 -15
  181. package/docs/keybindings.md +6 -3
  182. package/docs/models.md +10 -43
  183. package/docs/packages.md +11 -13
  184. package/docs/prompt-templates.md +10 -3
  185. package/docs/providers.md +9 -9
  186. package/docs/rpc.md +14 -13
  187. package/docs/sdk.md +18 -9
  188. package/docs/security.md +55 -0
  189. package/docs/session-format.md +4 -4
  190. package/docs/sessions.md +14 -14
  191. package/docs/settings.md +14 -11
  192. package/docs/skills.md +8 -8
  193. package/docs/terminal-setup.md +38 -4
  194. package/docs/termux.md +3 -3
  195. package/docs/tmux.md +4 -2
  196. package/docs/tui.md +4 -4
  197. package/docs/usage.md +55 -57
  198. package/examples/extensions/README.md +1 -0
  199. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  200. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  201. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  202. package/examples/extensions/gondolin/package-lock.json +2 -2
  203. package/examples/extensions/gondolin/package.json +1 -1
  204. package/examples/extensions/project-trust.ts +64 -0
  205. package/examples/extensions/sandbox/package-lock.json +2 -2
  206. package/examples/extensions/sandbox/package.json +1 -1
  207. package/examples/extensions/with-deps/package-lock.json +2 -2
  208. package/examples/extensions/with-deps/package.json +1 -1
  209. package/node_modules/@earendil-works/pi-agent-core/README.md +4 -3
  210. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js +125 -77
  211. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js.map +1 -1
  212. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.d.ts +1 -1
  213. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.d.ts.map +1 -1
  214. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.js +1 -1
  215. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.js.map +1 -1
  216. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.d.ts +0 -2
  217. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.d.ts.map +1 -1
  218. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.js +0 -4
  219. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.js.map +1 -1
  220. package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts +7 -4
  221. package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts.map +1 -1
  222. package/node_modules/@earendil-works/pi-agent-core/dist/types.js.map +1 -1
  223. package/node_modules/@earendil-works/pi-agent-core/package.json +2 -2
  224. package/node_modules/@earendil-works/pi-ai/README.md +4 -5
  225. package/node_modules/@earendil-works/pi-ai/dist/api-registry.d.ts +0 -1
  226. package/node_modules/@earendil-works/pi-ai/dist/api-registry.d.ts.map +1 -1
  227. package/node_modules/@earendil-works/pi-ai/dist/api-registry.js +0 -3
  228. package/node_modules/@earendil-works/pi-ai/dist/api-registry.js.map +1 -1
  229. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts +2 -2
  230. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js +6 -6
  231. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js.map +1 -1
  232. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts +355 -313
  233. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts.map +1 -1
  234. package/node_modules/@earendil-works/pi-ai/dist/models.generated.js +376 -431
  235. package/node_modules/@earendil-works/pi-ai/dist/models.generated.js.map +1 -1
  236. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.d.ts.map +1 -1
  237. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.js +15 -7
  238. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.js.map +1 -1
  239. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.d.ts +1 -1
  240. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.d.ts.map +1 -1
  241. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.js +17 -7
  242. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.js.map +1 -1
  243. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.js +1 -0
  244. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.js.map +1 -1
  245. package/node_modules/@earendil-works/pi-ai/dist/providers/google-shared.d.ts +0 -4
  246. package/node_modules/@earendil-works/pi-ai/dist/providers/google-shared.d.ts.map +1 -1
  247. package/node_modules/@earendil-works/pi-ai/dist/providers/google-shared.js +0 -13
  248. package/node_modules/@earendil-works/pi-ai/dist/providers/google-shared.js.map +1 -1
  249. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-completions.d.ts.map +1 -1
  250. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-completions.js +4 -3
  251. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-completions.js.map +1 -1
  252. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses-shared.d.ts.map +1 -1
  253. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses-shared.js +2 -1
  254. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses-shared.js.map +1 -1
  255. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses.d.ts.map +1 -1
  256. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses.js +3 -2
  257. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses.js.map +1 -1
  258. package/node_modules/@earendil-works/pi-ai/dist/providers/simple-options.d.ts +1 -7
  259. package/node_modules/@earendil-works/pi-ai/dist/providers/simple-options.d.ts.map +1 -1
  260. package/node_modules/@earendil-works/pi-ai/dist/providers/simple-options.js +2 -16
  261. package/node_modules/@earendil-works/pi-ai/dist/providers/simple-options.js.map +1 -1
  262. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +5 -1
  263. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
  264. package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
  265. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts +0 -4
  266. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts.map +1 -1
  267. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js +0 -6
  268. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js.map +1 -1
  269. package/node_modules/@earendil-works/pi-ai/package.json +1 -1
  270. package/node_modules/@earendil-works/pi-tui/README.md +1 -2
  271. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts +2 -0
  272. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts.map +1 -1
  273. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.js.map +1 -1
  274. package/node_modules/@earendil-works/pi-tui/dist/components/editor.d.ts +6 -1
  275. package/node_modules/@earendil-works/pi-tui/dist/components/editor.d.ts.map +1 -1
  276. package/node_modules/@earendil-works/pi-tui/dist/components/editor.js +89 -39
  277. package/node_modules/@earendil-works/pi-tui/dist/components/editor.js.map +1 -1
  278. package/node_modules/@earendil-works/pi-tui/dist/components/loader.d.ts +5 -0
  279. package/node_modules/@earendil-works/pi-tui/dist/components/loader.d.ts.map +1 -1
  280. package/node_modules/@earendil-works/pi-tui/dist/components/loader.js +18 -4
  281. package/node_modules/@earendil-works/pi-tui/dist/components/loader.js.map +1 -1
  282. package/node_modules/@earendil-works/pi-tui/dist/fuzzy.d.ts.map +1 -1
  283. package/node_modules/@earendil-works/pi-tui/dist/fuzzy.js +131 -61
  284. package/node_modules/@earendil-works/pi-tui/dist/fuzzy.js.map +1 -1
  285. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts +1 -1
  286. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts.map +1 -1
  287. package/node_modules/@earendil-works/pi-tui/dist/index.js +1 -1
  288. package/node_modules/@earendil-works/pi-tui/dist/index.js.map +1 -1
  289. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts +0 -1
  290. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts.map +1 -1
  291. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js +4 -7
  292. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js.map +1 -1
  293. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts +4 -7
  294. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts.map +1 -1
  295. package/node_modules/@earendil-works/pi-tui/dist/terminal.js +38 -76
  296. package/node_modules/@earendil-works/pi-tui/dist/terminal.js.map +1 -1
  297. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts.map +1 -1
  298. package/node_modules/@earendil-works/pi-tui/dist/tui.js +14 -4
  299. package/node_modules/@earendil-works/pi-tui/dist/tui.js.map +1 -1
  300. package/node_modules/@earendil-works/pi-tui/dist/utils.d.ts +0 -4
  301. package/node_modules/@earendil-works/pi-tui/dist/utils.d.ts.map +1 -1
  302. package/node_modules/@earendil-works/pi-tui/dist/utils.js +43 -21
  303. package/node_modules/@earendil-works/pi-tui/dist/utils.js.map +1 -1
  304. package/node_modules/@earendil-works/pi-tui/package.json +1 -1
  305. package/npm-shrinkwrap.json +12 -12
  306. package/package.json +4 -8
  307. package/dist/core/extensions/builtin/compaction/overflow-detection.d.ts +0 -11
  308. package/dist/core/extensions/builtin/compaction/overflow-detection.d.ts.map +0 -1
  309. package/dist/core/extensions/builtin/compaction/overflow-detection.js +0 -40
  310. package/dist/core/extensions/builtin/compaction/overflow-detection.js.map +0 -1
  311. package/dist/core/extensions/builtin/system-messages.d.ts +0 -47
  312. package/dist/core/extensions/builtin/system-messages.d.ts.map +0 -1
  313. package/dist/core/extensions/builtin/system-messages.js +0 -117
  314. package/dist/core/extensions/builtin/system-messages.js.map +0 -1
  315. package/dist/core/extensions/builtin/todotools/continuation/config.d.ts +0 -10
  316. package/dist/core/extensions/builtin/todotools/continuation/config.d.ts.map +0 -1
  317. package/dist/core/extensions/builtin/todotools/continuation/config.js +0 -33
  318. package/dist/core/extensions/builtin/todotools/continuation/config.js.map +0 -1
  319. package/dist/core/extensions/builtin/todotools/continuation/index.d.ts +0 -2
  320. package/dist/core/extensions/builtin/todotools/continuation/index.d.ts.map +0 -1
  321. package/dist/core/extensions/builtin/todotools/continuation/index.js +0 -2
  322. package/dist/core/extensions/builtin/todotools/continuation/index.js.map +0 -1
  323. package/dist/core/extensions/builtin/todotools/continuation/prompt.d.ts +0 -5
  324. package/dist/core/extensions/builtin/todotools/continuation/prompt.d.ts.map +0 -1
  325. package/dist/core/extensions/builtin/todotools/continuation/prompt.js +0 -34
  326. package/dist/core/extensions/builtin/todotools/continuation/prompt.js.map +0 -1
  327. package/dist/core/extensions/builtin/todotools/continuation/runtime.d.ts +0 -11
  328. package/dist/core/extensions/builtin/todotools/continuation/runtime.d.ts.map +0 -1
  329. package/dist/core/extensions/builtin/todotools/continuation/runtime.js +0 -201
  330. package/dist/core/extensions/builtin/todotools/continuation/runtime.js.map +0 -1
  331. package/dist/core/extensions/builtin/todotools/settings.d.ts +0 -6
  332. package/dist/core/extensions/builtin/todotools/settings.d.ts.map +0 -1
  333. package/dist/core/extensions/builtin/todotools/settings.js +0 -58
  334. package/dist/core/extensions/builtin/todotools/settings.js.map +0 -1
  335. package/dist/core/extensions/builtin/todotools/system-messages.d.ts +0 -34
  336. package/dist/core/extensions/builtin/todotools/system-messages.d.ts.map +0 -1
  337. package/dist/core/extensions/builtin/todotools/system-messages.js +0 -82
  338. package/dist/core/extensions/builtin/todotools/system-messages.js.map +0 -1
  339. package/dist/core/index.d.ts +0 -12
  340. package/dist/core/index.d.ts.map +0 -1
  341. package/dist/core/index.js +0 -12
  342. package/dist/core/index.js.map +0 -1
@@ -8,7 +8,7 @@ export const MODELS = {
8
8
  api: "bedrock-converse-stream",
9
9
  provider: "amazon-bedrock",
10
10
  baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
11
- reasoning: false,
11
+ reasoning: true,
12
12
  input: ["text", "image"],
13
13
  cost: {
14
14
  input: 0.33,
@@ -365,6 +365,24 @@ export const MODELS = {
365
365
  contextWindow: 163840,
366
366
  maxTokens: 81920,
367
367
  },
368
+ "eu.anthropic.claude-fable-5": {
369
+ id: "eu.anthropic.claude-fable-5",
370
+ name: "Claude Fable 5 (EU)",
371
+ api: "bedrock-converse-stream",
372
+ provider: "amazon-bedrock",
373
+ baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
374
+ reasoning: true,
375
+ thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
376
+ input: ["text", "image"],
377
+ cost: {
378
+ input: 11,
379
+ output: 55,
380
+ cacheRead: 1.1,
381
+ cacheWrite: 13.75,
382
+ },
383
+ contextWindow: 1000000,
384
+ maxTokens: 128000,
385
+ },
368
386
  "eu.anthropic.claude-haiku-4-5-20251001-v1:0": {
369
387
  id: "eu.anthropic.claude-haiku-4-5-20251001-v1:0",
370
388
  name: "Claude Haiku 4.5 (EU)",
@@ -505,6 +523,24 @@ export const MODELS = {
505
523
  contextWindow: 1000000,
506
524
  maxTokens: 64000,
507
525
  },
526
+ "global.anthropic.claude-fable-5": {
527
+ id: "global.anthropic.claude-fable-5",
528
+ name: "Claude Fable 5 (Global)",
529
+ api: "bedrock-converse-stream",
530
+ provider: "amazon-bedrock",
531
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
532
+ reasoning: true,
533
+ thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
534
+ input: ["text", "image"],
535
+ cost: {
536
+ input: 10,
537
+ output: 50,
538
+ cacheRead: 1,
539
+ cacheWrite: 12.5,
540
+ },
541
+ contextWindow: 1000000,
542
+ maxTokens: 128000,
543
+ },
508
544
  "global.anthropic.claude-haiku-4-5-20251001-v1:0": {
509
545
  id: "global.anthropic.claude-haiku-4-5-20251001-v1:0",
510
546
  name: "Claude Haiku 4.5 (Global)",
@@ -1182,7 +1218,7 @@ export const MODELS = {
1182
1218
  api: "bedrock-converse-stream",
1183
1219
  provider: "amazon-bedrock",
1184
1220
  baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
1185
- reasoning: false,
1221
+ reasoning: true,
1186
1222
  input: ["text"],
1187
1223
  cost: {
1188
1224
  input: 0.15,
@@ -1199,7 +1235,7 @@ export const MODELS = {
1199
1235
  api: "bedrock-converse-stream",
1200
1236
  provider: "amazon-bedrock",
1201
1237
  baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
1202
- reasoning: false,
1238
+ reasoning: true,
1203
1239
  input: ["text"],
1204
1240
  cost: {
1205
1241
  input: 0.15,
@@ -1216,7 +1252,7 @@ export const MODELS = {
1216
1252
  api: "bedrock-converse-stream",
1217
1253
  provider: "amazon-bedrock",
1218
1254
  baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
1219
- reasoning: false,
1255
+ reasoning: true,
1220
1256
  input: ["text"],
1221
1257
  cost: {
1222
1258
  input: 0.07,
@@ -1233,7 +1269,7 @@ export const MODELS = {
1233
1269
  api: "bedrock-converse-stream",
1234
1270
  provider: "amazon-bedrock",
1235
1271
  baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
1236
- reasoning: false,
1272
+ reasoning: true,
1237
1273
  input: ["text"],
1238
1274
  cost: {
1239
1275
  input: 0.07,
@@ -1397,6 +1433,24 @@ export const MODELS = {
1397
1433
  contextWindow: 262000,
1398
1434
  maxTokens: 262000,
1399
1435
  },
1436
+ "us.anthropic.claude-fable-5": {
1437
+ id: "us.anthropic.claude-fable-5",
1438
+ name: "Claude Fable 5 (US)",
1439
+ api: "bedrock-converse-stream",
1440
+ provider: "amazon-bedrock",
1441
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
1442
+ reasoning: true,
1443
+ thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
1444
+ input: ["text", "image"],
1445
+ cost: {
1446
+ input: 10,
1447
+ output: 50,
1448
+ cacheRead: 1,
1449
+ cacheWrite: 12.5,
1450
+ },
1451
+ contextWindow: 1000000,
1452
+ maxTokens: 128000,
1453
+ },
1400
1454
  "us.anthropic.claude-haiku-4-5-20251001-v1:0": {
1401
1455
  id: "us.anthropic.claude-haiku-4-5-20251001-v1:0",
1402
1456
  name: "Claude Haiku 4.5 (US)",
@@ -1885,6 +1939,25 @@ export const MODELS = {
1885
1939
  contextWindow: 200000,
1886
1940
  maxTokens: 4096,
1887
1941
  },
1942
+ "claude-fable-5": {
1943
+ id: "claude-fable-5",
1944
+ name: "Claude Fable 5",
1945
+ api: "anthropic-messages",
1946
+ provider: "anthropic",
1947
+ baseUrl: "https://api.anthropic.com",
1948
+ compat: { "forceAdaptiveThinking": true },
1949
+ reasoning: true,
1950
+ thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
1951
+ input: ["text", "image"],
1952
+ cost: {
1953
+ input: 10,
1954
+ output: 50,
1955
+ cacheRead: 1,
1956
+ cacheWrite: 12.5,
1957
+ },
1958
+ contextWindow: 1000000,
1959
+ maxTokens: 128000,
1960
+ },
1888
1961
  "claude-haiku-4-5": {
1889
1962
  id: "claude-haiku-4-5",
1890
1963
  name: "Claude Haiku 4.5 (latest)",
@@ -2442,7 +2515,7 @@ export const MODELS = {
2442
2515
  cacheWrite: 0,
2443
2516
  },
2444
2517
  contextWindow: 400000,
2445
- maxTokens: 272000,
2518
+ maxTokens: 128000,
2446
2519
  },
2447
2520
  "gpt-5.1": {
2448
2521
  id: "gpt-5.1",
@@ -2675,7 +2748,7 @@ export const MODELS = {
2675
2748
  cacheRead: 0.25,
2676
2749
  cacheWrite: 0,
2677
2750
  },
2678
- contextWindow: 272000,
2751
+ contextWindow: 1050000,
2679
2752
  maxTokens: 128000,
2680
2753
  },
2681
2754
  "gpt-5.4-mini": {
@@ -2747,7 +2820,7 @@ export const MODELS = {
2747
2820
  cacheRead: 0.5,
2748
2821
  cacheWrite: 0,
2749
2822
  },
2750
- contextWindow: 272000,
2823
+ contextWindow: 1050000,
2751
2824
  maxTokens: 128000,
2752
2825
  },
2753
2826
  "gpt-5.5-pro": {
@@ -3061,6 +3134,25 @@ export const MODELS = {
3061
3134
  contextWindow: 200000,
3062
3135
  maxTokens: 8192,
3063
3136
  },
3137
+ "claude-fable-5": {
3138
+ id: "claude-fable-5",
3139
+ name: "Claude Fable 5",
3140
+ api: "anthropic-messages",
3141
+ provider: "cloudflare-ai-gateway",
3142
+ baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
3143
+ compat: { "forceAdaptiveThinking": true },
3144
+ reasoning: true,
3145
+ thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
3146
+ input: ["text", "image"],
3147
+ cost: {
3148
+ input: 10,
3149
+ output: 50,
3150
+ cacheRead: 1,
3151
+ cacheWrite: 12.5,
3152
+ },
3153
+ contextWindow: 1000000,
3154
+ maxTokens: 128000,
3155
+ },
3064
3156
  "claude-haiku-4-5": {
3065
3157
  id: "claude-haiku-4-5",
3066
3158
  name: "Claude Haiku 4.5 (latest)",
@@ -4999,77 +5091,9 @@ export const MODELS = {
4999
5091
  },
5000
5092
  },
5001
5093
  "groq": {
5002
- "deepseek-r1-distill-llama-70b": {
5003
- id: "deepseek-r1-distill-llama-70b",
5004
- name: "DeepSeek R1 Distill Llama 70B",
5005
- api: "openai-completions",
5006
- provider: "groq",
5007
- baseUrl: "https://api.groq.com/openai/v1",
5008
- reasoning: true,
5009
- input: ["text"],
5010
- cost: {
5011
- input: 0.75,
5012
- output: 0.99,
5013
- cacheRead: 0,
5014
- cacheWrite: 0,
5015
- },
5016
- contextWindow: 131072,
5017
- maxTokens: 8192,
5018
- },
5019
- "gemma2-9b-it": {
5020
- id: "gemma2-9b-it",
5021
- name: "Gemma 2 9B",
5022
- api: "openai-completions",
5023
- provider: "groq",
5024
- baseUrl: "https://api.groq.com/openai/v1",
5025
- reasoning: false,
5026
- input: ["text"],
5027
- cost: {
5028
- input: 0.2,
5029
- output: 0.2,
5030
- cacheRead: 0,
5031
- cacheWrite: 0,
5032
- },
5033
- contextWindow: 8192,
5034
- maxTokens: 8192,
5035
- },
5036
- "groq/compound": {
5037
- id: "groq/compound",
5038
- name: "Compound",
5039
- api: "openai-completions",
5040
- provider: "groq",
5041
- baseUrl: "https://api.groq.com/openai/v1",
5042
- reasoning: true,
5043
- input: ["text"],
5044
- cost: {
5045
- input: 0,
5046
- output: 0,
5047
- cacheRead: 0,
5048
- cacheWrite: 0,
5049
- },
5050
- contextWindow: 131072,
5051
- maxTokens: 8192,
5052
- },
5053
- "groq/compound-mini": {
5054
- id: "groq/compound-mini",
5055
- name: "Compound Mini",
5056
- api: "openai-completions",
5057
- provider: "groq",
5058
- baseUrl: "https://api.groq.com/openai/v1",
5059
- reasoning: true,
5060
- input: ["text"],
5061
- cost: {
5062
- input: 0,
5063
- output: 0,
5064
- cacheRead: 0,
5065
- cacheWrite: 0,
5066
- },
5067
- contextWindow: 131072,
5068
- maxTokens: 8192,
5069
- },
5070
5094
  "llama-3.1-8b-instant": {
5071
5095
  id: "llama-3.1-8b-instant",
5072
- name: "Llama 3.1 8B Instant",
5096
+ name: "Llama 3.1 8B",
5073
5097
  api: "openai-completions",
5074
5098
  provider: "groq",
5075
5099
  baseUrl: "https://api.groq.com/openai/v1",
@@ -5086,7 +5110,7 @@ export const MODELS = {
5086
5110
  },
5087
5111
  "llama-3.3-70b-versatile": {
5088
5112
  id: "llama-3.3-70b-versatile",
5089
- name: "Llama 3.3 70B Versatile",
5113
+ name: "Llama 3.3 70B",
5090
5114
  api: "openai-completions",
5091
5115
  provider: "groq",
5092
5116
  baseUrl: "https://api.groq.com/openai/v1",
@@ -5101,60 +5125,9 @@ export const MODELS = {
5101
5125
  contextWindow: 131072,
5102
5126
  maxTokens: 32768,
5103
5127
  },
5104
- "llama3-70b-8192": {
5105
- id: "llama3-70b-8192",
5106
- name: "Llama 3 70B",
5107
- api: "openai-completions",
5108
- provider: "groq",
5109
- baseUrl: "https://api.groq.com/openai/v1",
5110
- reasoning: false,
5111
- input: ["text"],
5112
- cost: {
5113
- input: 0.59,
5114
- output: 0.79,
5115
- cacheRead: 0,
5116
- cacheWrite: 0,
5117
- },
5118
- contextWindow: 8192,
5119
- maxTokens: 8192,
5120
- },
5121
- "llama3-8b-8192": {
5122
- id: "llama3-8b-8192",
5123
- name: "Llama 3 8B",
5124
- api: "openai-completions",
5125
- provider: "groq",
5126
- baseUrl: "https://api.groq.com/openai/v1",
5127
- reasoning: false,
5128
- input: ["text"],
5129
- cost: {
5130
- input: 0.05,
5131
- output: 0.08,
5132
- cacheRead: 0,
5133
- cacheWrite: 0,
5134
- },
5135
- contextWindow: 8192,
5136
- maxTokens: 8192,
5137
- },
5138
- "meta-llama/llama-4-maverick-17b-128e-instruct": {
5139
- id: "meta-llama/llama-4-maverick-17b-128e-instruct",
5140
- name: "Llama 4 Maverick 17B",
5141
- api: "openai-completions",
5142
- provider: "groq",
5143
- baseUrl: "https://api.groq.com/openai/v1",
5144
- reasoning: false,
5145
- input: ["text", "image"],
5146
- cost: {
5147
- input: 0.2,
5148
- output: 0.6,
5149
- cacheRead: 0,
5150
- cacheWrite: 0,
5151
- },
5152
- contextWindow: 131072,
5153
- maxTokens: 8192,
5154
- },
5155
5128
  "meta-llama/llama-4-scout-17b-16e-instruct": {
5156
5129
  id: "meta-llama/llama-4-scout-17b-16e-instruct",
5157
- name: "Llama 4 Scout 17B",
5130
+ name: "Llama 4 Scout 17B 16E",
5158
5131
  api: "openai-completions",
5159
5132
  provider: "groq",
5160
5133
  baseUrl: "https://api.groq.com/openai/v1",
@@ -5169,57 +5142,6 @@ export const MODELS = {
5169
5142
  contextWindow: 131072,
5170
5143
  maxTokens: 8192,
5171
5144
  },
5172
- "mistral-saba-24b": {
5173
- id: "mistral-saba-24b",
5174
- name: "Mistral Saba 24B",
5175
- api: "openai-completions",
5176
- provider: "groq",
5177
- baseUrl: "https://api.groq.com/openai/v1",
5178
- reasoning: false,
5179
- input: ["text"],
5180
- cost: {
5181
- input: 0.79,
5182
- output: 0.79,
5183
- cacheRead: 0,
5184
- cacheWrite: 0,
5185
- },
5186
- contextWindow: 32768,
5187
- maxTokens: 32768,
5188
- },
5189
- "moonshotai/kimi-k2-instruct": {
5190
- id: "moonshotai/kimi-k2-instruct",
5191
- name: "Kimi K2 Instruct",
5192
- api: "openai-completions",
5193
- provider: "groq",
5194
- baseUrl: "https://api.groq.com/openai/v1",
5195
- reasoning: false,
5196
- input: ["text"],
5197
- cost: {
5198
- input: 1,
5199
- output: 3,
5200
- cacheRead: 0,
5201
- cacheWrite: 0,
5202
- },
5203
- contextWindow: 131072,
5204
- maxTokens: 16384,
5205
- },
5206
- "moonshotai/kimi-k2-instruct-0905": {
5207
- id: "moonshotai/kimi-k2-instruct-0905",
5208
- name: "Kimi K2 Instruct 0905",
5209
- api: "openai-completions",
5210
- provider: "groq",
5211
- baseUrl: "https://api.groq.com/openai/v1",
5212
- reasoning: false,
5213
- input: ["text"],
5214
- cost: {
5215
- input: 1,
5216
- output: 3,
5217
- cacheRead: 0.5,
5218
- cacheWrite: 0,
5219
- },
5220
- contextWindow: 262144,
5221
- maxTokens: 16384,
5222
- },
5223
5145
  "openai/gpt-oss-120b": {
5224
5146
  id: "openai/gpt-oss-120b",
5225
5147
  name: "GPT OSS 120B",
@@ -5271,26 +5193,9 @@ export const MODELS = {
5271
5193
  contextWindow: 131072,
5272
5194
  maxTokens: 65536,
5273
5195
  },
5274
- "qwen-qwq-32b": {
5275
- id: "qwen-qwq-32b",
5276
- name: "Qwen QwQ 32B",
5277
- api: "openai-completions",
5278
- provider: "groq",
5279
- baseUrl: "https://api.groq.com/openai/v1",
5280
- reasoning: true,
5281
- input: ["text"],
5282
- cost: {
5283
- input: 0.29,
5284
- output: 0.39,
5285
- cacheRead: 0,
5286
- cacheWrite: 0,
5287
- },
5288
- contextWindow: 131072,
5289
- maxTokens: 16384,
5290
- },
5291
5196
  "qwen/qwen3-32b": {
5292
5197
  id: "qwen/qwen3-32b",
5293
- name: "Qwen3 32B",
5198
+ name: "Qwen3-32B",
5294
5199
  api: "openai-completions",
5295
5200
  provider: "groq",
5296
5201
  baseUrl: "https://api.groq.com/openai/v1",
@@ -6368,7 +6273,7 @@ export const MODELS = {
6368
6273
  api: "openai-completions",
6369
6274
  provider: "moonshotai",
6370
6275
  baseUrl: "https://api.moonshot.ai/v1",
6371
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6276
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6372
6277
  reasoning: false,
6373
6278
  input: ["text"],
6374
6279
  cost: {
@@ -6386,7 +6291,7 @@ export const MODELS = {
6386
6291
  api: "openai-completions",
6387
6292
  provider: "moonshotai",
6388
6293
  baseUrl: "https://api.moonshot.ai/v1",
6389
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6294
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6390
6295
  reasoning: false,
6391
6296
  input: ["text"],
6392
6297
  cost: {
@@ -6404,7 +6309,7 @@ export const MODELS = {
6404
6309
  api: "openai-completions",
6405
6310
  provider: "moonshotai",
6406
6311
  baseUrl: "https://api.moonshot.ai/v1",
6407
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6312
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6408
6313
  reasoning: true,
6409
6314
  input: ["text"],
6410
6315
  cost: {
@@ -6422,7 +6327,7 @@ export const MODELS = {
6422
6327
  api: "openai-completions",
6423
6328
  provider: "moonshotai",
6424
6329
  baseUrl: "https://api.moonshot.ai/v1",
6425
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6330
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6426
6331
  reasoning: true,
6427
6332
  input: ["text"],
6428
6333
  cost: {
@@ -6440,7 +6345,7 @@ export const MODELS = {
6440
6345
  api: "openai-completions",
6441
6346
  provider: "moonshotai",
6442
6347
  baseUrl: "https://api.moonshot.ai/v1",
6443
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6348
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6444
6349
  reasoning: false,
6445
6350
  input: ["text"],
6446
6351
  cost: {
@@ -6458,7 +6363,7 @@ export const MODELS = {
6458
6363
  api: "openai-completions",
6459
6364
  provider: "moonshotai",
6460
6365
  baseUrl: "https://api.moonshot.ai/v1",
6461
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6366
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6462
6367
  reasoning: true,
6463
6368
  input: ["text", "image"],
6464
6369
  cost: {
@@ -6476,7 +6381,7 @@ export const MODELS = {
6476
6381
  api: "openai-completions",
6477
6382
  provider: "moonshotai",
6478
6383
  baseUrl: "https://api.moonshot.ai/v1",
6479
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6384
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6480
6385
  reasoning: true,
6481
6386
  input: ["text", "image"],
6482
6387
  cost: {
@@ -6496,7 +6401,7 @@ export const MODELS = {
6496
6401
  api: "openai-completions",
6497
6402
  provider: "moonshotai-cn",
6498
6403
  baseUrl: "https://api.moonshot.cn/v1",
6499
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6404
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6500
6405
  reasoning: false,
6501
6406
  input: ["text"],
6502
6407
  cost: {
@@ -6514,7 +6419,7 @@ export const MODELS = {
6514
6419
  api: "openai-completions",
6515
6420
  provider: "moonshotai-cn",
6516
6421
  baseUrl: "https://api.moonshot.cn/v1",
6517
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6422
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6518
6423
  reasoning: false,
6519
6424
  input: ["text"],
6520
6425
  cost: {
@@ -6532,7 +6437,7 @@ export const MODELS = {
6532
6437
  api: "openai-completions",
6533
6438
  provider: "moonshotai-cn",
6534
6439
  baseUrl: "https://api.moonshot.cn/v1",
6535
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6440
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6536
6441
  reasoning: true,
6537
6442
  input: ["text"],
6538
6443
  cost: {
@@ -6550,7 +6455,7 @@ export const MODELS = {
6550
6455
  api: "openai-completions",
6551
6456
  provider: "moonshotai-cn",
6552
6457
  baseUrl: "https://api.moonshot.cn/v1",
6553
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6458
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6554
6459
  reasoning: true,
6555
6460
  input: ["text"],
6556
6461
  cost: {
@@ -6568,7 +6473,7 @@ export const MODELS = {
6568
6473
  api: "openai-completions",
6569
6474
  provider: "moonshotai-cn",
6570
6475
  baseUrl: "https://api.moonshot.cn/v1",
6571
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6476
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6572
6477
  reasoning: false,
6573
6478
  input: ["text"],
6574
6479
  cost: {
@@ -6586,7 +6491,7 @@ export const MODELS = {
6586
6491
  api: "openai-completions",
6587
6492
  provider: "moonshotai-cn",
6588
6493
  baseUrl: "https://api.moonshot.cn/v1",
6589
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6494
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6590
6495
  reasoning: true,
6591
6496
  input: ["text", "image"],
6592
6497
  cost: {
@@ -6604,7 +6509,7 @@ export const MODELS = {
6604
6509
  api: "openai-completions",
6605
6510
  provider: "moonshotai-cn",
6606
6511
  baseUrl: "https://api.moonshot.cn/v1",
6607
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false },
6512
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "thinkingFormat": "deepseek" },
6608
6513
  reasoning: true,
6609
6514
  input: ["text", "image"],
6610
6515
  cost: {
@@ -6740,8 +6645,8 @@ export const MODELS = {
6740
6645
  baseUrl: "https://integrate.api.nvidia.com/v1",
6741
6646
  headers: { "NVCF-POLL-SECONDS": "3600" },
6742
6647
  compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "supportsLongCacheRetention": false },
6743
- reasoning: false,
6744
- input: ["text"],
6648
+ reasoning: true,
6649
+ input: ["text", "image"],
6745
6650
  cost: {
6746
6651
  input: 0,
6747
6652
  output: 0,
@@ -6770,9 +6675,9 @@ export const MODELS = {
6770
6675
  contextWindow: 262144,
6771
6676
  maxTokens: 262144,
6772
6677
  },
6773
- "nvidia/llama-3.3-nemotron-super-49b-v1": {
6774
- id: "nvidia/llama-3.3-nemotron-super-49b-v1",
6775
- name: "Llama 3.3 Nemotron Super 49B v1",
6678
+ "nvidia/nemotron-3-nano-30b-a3b": {
6679
+ id: "nvidia/nemotron-3-nano-30b-a3b",
6680
+ name: "nemotron-3-nano-30b-a3b",
6776
6681
  api: "openai-completions",
6777
6682
  provider: "nvidia",
6778
6683
  baseUrl: "https://integrate.api.nvidia.com/v1",
@@ -6789,28 +6694,28 @@ export const MODELS = {
6789
6694
  contextWindow: 131072,
6790
6695
  maxTokens: 131072,
6791
6696
  },
6792
- "nvidia/llama-3.3-nemotron-super-49b-v1.5": {
6793
- id: "nvidia/llama-3.3-nemotron-super-49b-v1.5",
6794
- name: "Llama 3.3 Nemotron Super 49B v1.5",
6697
+ "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning": {
6698
+ id: "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning",
6699
+ name: "Nemotron 3 Nano Omni",
6795
6700
  api: "openai-completions",
6796
6701
  provider: "nvidia",
6797
6702
  baseUrl: "https://integrate.api.nvidia.com/v1",
6798
6703
  headers: { "NVCF-POLL-SECONDS": "3600" },
6799
6704
  compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "supportsLongCacheRetention": false },
6800
6705
  reasoning: true,
6801
- input: ["text"],
6706
+ input: ["text", "image"],
6802
6707
  cost: {
6803
6708
  input: 0,
6804
6709
  output: 0,
6805
6710
  cacheRead: 0,
6806
6711
  cacheWrite: 0,
6807
6712
  },
6808
- contextWindow: 131072,
6809
- maxTokens: 131072,
6713
+ contextWindow: 256000,
6714
+ maxTokens: 65536,
6810
6715
  },
6811
- "nvidia/nemotron-3-nano-30b-a3b": {
6812
- id: "nvidia/nemotron-3-nano-30b-a3b",
6813
- name: "nemotron-3-nano-30b-a3b",
6716
+ "nvidia/nemotron-3-super-120b-a12b": {
6717
+ id: "nvidia/nemotron-3-super-120b-a12b",
6718
+ name: "Nemotron 3 Super",
6814
6719
  api: "openai-completions",
6815
6720
  provider: "nvidia",
6816
6721
  baseUrl: "https://integrate.api.nvidia.com/v1",
@@ -6819,36 +6724,36 @@ export const MODELS = {
6819
6724
  reasoning: true,
6820
6725
  input: ["text"],
6821
6726
  cost: {
6822
- input: 0,
6823
- output: 0,
6727
+ input: 0.2,
6728
+ output: 0.8,
6824
6729
  cacheRead: 0,
6825
6730
  cacheWrite: 0,
6826
6731
  },
6827
- contextWindow: 131072,
6828
- maxTokens: 131072,
6732
+ contextWindow: 262144,
6733
+ maxTokens: 262144,
6829
6734
  },
6830
- "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning": {
6831
- id: "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning",
6832
- name: "Nemotron 3 Nano Omni",
6735
+ "nvidia/nemotron-3-ultra-550b-a55b": {
6736
+ id: "nvidia/nemotron-3-ultra-550b-a55b",
6737
+ name: "Nemotron 3 Ultra 550B A55B",
6833
6738
  api: "openai-completions",
6834
6739
  provider: "nvidia",
6835
6740
  baseUrl: "https://integrate.api.nvidia.com/v1",
6836
6741
  headers: { "NVCF-POLL-SECONDS": "3600" },
6837
6742
  compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "supportsLongCacheRetention": false },
6838
6743
  reasoning: true,
6839
- input: ["text", "image"],
6744
+ input: ["text"],
6840
6745
  cost: {
6841
- input: 0,
6842
- output: 0,
6843
- cacheRead: 0,
6746
+ input: 0.5,
6747
+ output: 2.5,
6748
+ cacheRead: 0.15,
6844
6749
  cacheWrite: 0,
6845
6750
  },
6846
- contextWindow: 256000,
6751
+ contextWindow: 1000000,
6847
6752
  maxTokens: 65536,
6848
6753
  },
6849
- "nvidia/nemotron-3-super-120b-a12b": {
6850
- id: "nvidia/nemotron-3-super-120b-a12b",
6851
- name: "Nemotron 3 Super",
6754
+ "nvidia/nvidia-nemotron-nano-9b-v2": {
6755
+ id: "nvidia/nvidia-nemotron-nano-9b-v2",
6756
+ name: "nvidia-nemotron-nano-9b-v2",
6852
6757
  api: "openai-completions",
6853
6758
  provider: "nvidia",
6854
6759
  baseUrl: "https://integrate.api.nvidia.com/v1",
@@ -6857,17 +6762,17 @@ export const MODELS = {
6857
6762
  reasoning: true,
6858
6763
  input: ["text"],
6859
6764
  cost: {
6860
- input: 0.2,
6861
- output: 0.8,
6765
+ input: 0,
6766
+ output: 0,
6862
6767
  cacheRead: 0,
6863
6768
  cacheWrite: 0,
6864
6769
  },
6865
- contextWindow: 262144,
6866
- maxTokens: 262144,
6770
+ contextWindow: 131072,
6771
+ maxTokens: 131072,
6867
6772
  },
6868
- "nvidia/nvidia-nemotron-nano-9b-v2": {
6869
- id: "nvidia/nvidia-nemotron-nano-9b-v2",
6870
- name: "nvidia-nemotron-nano-9b-v2",
6773
+ "openai/gpt-oss-120b": {
6774
+ id: "openai/gpt-oss-120b",
6775
+ name: "GPT-OSS-120B",
6871
6776
  api: "openai-completions",
6872
6777
  provider: "nvidia",
6873
6778
  baseUrl: "https://integrate.api.nvidia.com/v1",
@@ -6881,8 +6786,8 @@ export const MODELS = {
6881
6786
  cacheRead: 0,
6882
6787
  cacheWrite: 0,
6883
6788
  },
6884
- contextWindow: 131072,
6885
- maxTokens: 131072,
6789
+ contextWindow: 128000,
6790
+ maxTokens: 8192,
6886
6791
  },
6887
6792
  "openai/gpt-oss-20b": {
6888
6793
  id: "openai/gpt-oss-20b",
@@ -7276,7 +7181,7 @@ export const MODELS = {
7276
7181
  cacheWrite: 0,
7277
7182
  },
7278
7183
  contextWindow: 400000,
7279
- maxTokens: 272000,
7184
+ maxTokens: 128000,
7280
7185
  },
7281
7186
  "gpt-5.1": {
7282
7187
  id: "gpt-5.1",
@@ -7820,6 +7725,7 @@ export const MODELS = {
7820
7725
  api: "openai-completions",
7821
7726
  provider: "opencode",
7822
7727
  baseUrl: "https://opencode.ai/zen/v1",
7728
+ compat: { "maxTokensField": "max_tokens" },
7823
7729
  reasoning: true,
7824
7730
  input: ["text"],
7825
7731
  cost: {
@@ -7831,6 +7737,25 @@ export const MODELS = {
7831
7737
  contextWindow: 200000,
7832
7738
  maxTokens: 32000,
7833
7739
  },
7740
+ "claude-fable-5": {
7741
+ id: "claude-fable-5",
7742
+ name: "Claude Fable 5",
7743
+ api: "anthropic-messages",
7744
+ provider: "opencode",
7745
+ baseUrl: "https://opencode.ai/zen",
7746
+ compat: { "forceAdaptiveThinking": true },
7747
+ reasoning: true,
7748
+ thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
7749
+ input: ["text", "image"],
7750
+ cost: {
7751
+ input: 10,
7752
+ output: 50,
7753
+ cacheRead: 1,
7754
+ cacheWrite: 12.5,
7755
+ },
7756
+ contextWindow: 1000000,
7757
+ maxTokens: 128000,
7758
+ },
7834
7759
  "claude-haiku-4-5": {
7835
7760
  id: "claude-haiku-4-5",
7836
7761
  name: "Claude Haiku 4.5",
@@ -7997,7 +7922,7 @@ export const MODELS = {
7997
7922
  api: "openai-completions",
7998
7923
  provider: "opencode",
7999
7924
  baseUrl: "https://opencode.ai/zen/v1",
8000
- compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
7925
+ compat: { "maxTokensField": "max_tokens", "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
8001
7926
  reasoning: true,
8002
7927
  thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "xhigh": "max" },
8003
7928
  input: ["text"],
@@ -8016,7 +7941,7 @@ export const MODELS = {
8016
7941
  api: "openai-completions",
8017
7942
  provider: "opencode",
8018
7943
  baseUrl: "https://opencode.ai/zen/v1",
8019
- compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
7944
+ compat: { "maxTokensField": "max_tokens", "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
8020
7945
  reasoning: true,
8021
7946
  thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "xhigh": "max" },
8022
7947
  input: ["text"],
@@ -8089,6 +8014,7 @@ export const MODELS = {
8089
8014
  api: "openai-completions",
8090
8015
  provider: "opencode",
8091
8016
  baseUrl: "https://opencode.ai/zen/v1",
8017
+ compat: { "maxTokensField": "max_tokens" },
8092
8018
  reasoning: true,
8093
8019
  input: ["text"],
8094
8020
  cost: {
@@ -8106,6 +8032,7 @@ export const MODELS = {
8106
8032
  api: "openai-completions",
8107
8033
  provider: "opencode",
8108
8034
  baseUrl: "https://opencode.ai/zen/v1",
8035
+ compat: { "maxTokensField": "max_tokens" },
8109
8036
  reasoning: true,
8110
8037
  input: ["text"],
8111
8038
  cost: {
@@ -8411,7 +8338,7 @@ export const MODELS = {
8411
8338
  api: "openai-completions",
8412
8339
  provider: "opencode",
8413
8340
  baseUrl: "https://opencode.ai/zen/v1",
8414
- compat: { "supportsReasoningEffort": false },
8341
+ compat: { "supportsReasoningEffort": false, "maxTokensField": "max_tokens" },
8415
8342
  reasoning: true,
8416
8343
  thinkingLevelMap: { "off": null, "minimal": null, "low": null, "medium": null },
8417
8344
  input: ["text", "image"],
@@ -8430,6 +8357,7 @@ export const MODELS = {
8430
8357
  api: "openai-completions",
8431
8358
  provider: "opencode",
8432
8359
  baseUrl: "https://opencode.ai/zen/v1",
8360
+ compat: { "maxTokensField": "max_tokens" },
8433
8361
  reasoning: true,
8434
8362
  input: ["text", "image"],
8435
8363
  cost: {
@@ -8447,7 +8375,7 @@ export const MODELS = {
8447
8375
  api: "openai-completions",
8448
8376
  provider: "opencode",
8449
8377
  baseUrl: "https://opencode.ai/zen/v1",
8450
- compat: { "thinkingFormat": "deepseek", "supportsReasoningEffort": false },
8378
+ compat: { "thinkingFormat": "deepseek", "supportsReasoningEffort": false, "maxTokensField": "max_tokens" },
8451
8379
  reasoning: true,
8452
8380
  input: ["text", "image"],
8453
8381
  cost: {
@@ -8465,6 +8393,7 @@ export const MODELS = {
8465
8393
  api: "openai-completions",
8466
8394
  provider: "opencode",
8467
8395
  baseUrl: "https://opencode.ai/zen/v1",
8396
+ compat: { "maxTokensField": "max_tokens" },
8468
8397
  reasoning: true,
8469
8398
  input: ["text", "image"],
8470
8399
  cost: {
@@ -8482,6 +8411,7 @@ export const MODELS = {
8482
8411
  api: "openai-completions",
8483
8412
  provider: "opencode",
8484
8413
  baseUrl: "https://opencode.ai/zen/v1",
8414
+ compat: { "maxTokensField": "max_tokens" },
8485
8415
  reasoning: true,
8486
8416
  input: ["text"],
8487
8417
  cost: {
@@ -8499,6 +8429,7 @@ export const MODELS = {
8499
8429
  api: "openai-completions",
8500
8430
  provider: "opencode",
8501
8431
  baseUrl: "https://opencode.ai/zen/v1",
8432
+ compat: { "maxTokensField": "max_tokens" },
8502
8433
  reasoning: true,
8503
8434
  input: ["text"],
8504
8435
  cost: {
@@ -8510,29 +8441,31 @@ export const MODELS = {
8510
8441
  contextWindow: 204800,
8511
8442
  maxTokens: 131072,
8512
8443
  },
8513
- "minimax-m3-free": {
8514
- id: "minimax-m3-free",
8515
- name: "MiniMax M3 Free",
8516
- api: "anthropic-messages",
8444
+ "nemotron-3-ultra-free": {
8445
+ id: "nemotron-3-ultra-free",
8446
+ name: "Nemotron 3 Ultra Free",
8447
+ api: "openai-completions",
8517
8448
  provider: "opencode",
8518
- baseUrl: "https://opencode.ai/zen",
8449
+ baseUrl: "https://opencode.ai/zen/v1",
8450
+ compat: { "maxTokensField": "max_tokens" },
8519
8451
  reasoning: true,
8520
- input: ["text", "image"],
8452
+ input: ["text"],
8521
8453
  cost: {
8522
8454
  input: 0,
8523
8455
  output: 0,
8524
8456
  cacheRead: 0,
8525
8457
  cacheWrite: 0,
8526
8458
  },
8527
- contextWindow: 200000,
8528
- maxTokens: 32000,
8459
+ contextWindow: 1000000,
8460
+ maxTokens: 128000,
8529
8461
  },
8530
- "nemotron-3-ultra-free": {
8531
- id: "nemotron-3-ultra-free",
8532
- name: "Nemotron 3 Ultra Free",
8462
+ "north-mini-code-free": {
8463
+ id: "north-mini-code-free",
8464
+ name: "North Mini Code Free",
8533
8465
  api: "openai-completions",
8534
8466
  provider: "opencode",
8535
8467
  baseUrl: "https://opencode.ai/zen/v1",
8468
+ compat: { "maxTokensField": "max_tokens" },
8536
8469
  reasoning: true,
8537
8470
  input: ["text"],
8538
8471
  cost: {
@@ -8541,8 +8474,8 @@ export const MODELS = {
8541
8474
  cacheRead: 0,
8542
8475
  cacheWrite: 0,
8543
8476
  },
8544
- contextWindow: 1000000,
8545
- maxTokens: 128000,
8477
+ contextWindow: 256000,
8478
+ maxTokens: 64000,
8546
8479
  },
8547
8480
  "qwen3.5-plus": {
8548
8481
  id: "qwen3.5-plus",
@@ -8586,7 +8519,7 @@ export const MODELS = {
8586
8519
  api: "openai-completions",
8587
8520
  provider: "opencode-go",
8588
8521
  baseUrl: "https://opencode.ai/zen/go/v1",
8589
- compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
8522
+ compat: { "maxTokensField": "max_tokens", "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
8590
8523
  reasoning: true,
8591
8524
  thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "xhigh": "max" },
8592
8525
  input: ["text"],
@@ -8605,7 +8538,7 @@ export const MODELS = {
8605
8538
  api: "openai-completions",
8606
8539
  provider: "opencode-go",
8607
8540
  baseUrl: "https://opencode.ai/zen/go/v1",
8608
- compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
8541
+ compat: { "maxTokensField": "max_tokens", "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
8609
8542
  reasoning: true,
8610
8543
  thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "xhigh": "max" },
8611
8544
  input: ["text"],
@@ -8624,6 +8557,7 @@ export const MODELS = {
8624
8557
  api: "openai-completions",
8625
8558
  provider: "opencode-go",
8626
8559
  baseUrl: "https://opencode.ai/zen/go/v1",
8560
+ compat: { "maxTokensField": "max_tokens" },
8627
8561
  reasoning: true,
8628
8562
  input: ["text"],
8629
8563
  cost: {
@@ -8641,6 +8575,7 @@ export const MODELS = {
8641
8575
  api: "openai-completions",
8642
8576
  provider: "opencode-go",
8643
8577
  baseUrl: "https://opencode.ai/zen/go/v1",
8578
+ compat: { "maxTokensField": "max_tokens" },
8644
8579
  reasoning: true,
8645
8580
  input: ["text"],
8646
8581
  cost: {
@@ -8658,6 +8593,7 @@ export const MODELS = {
8658
8593
  api: "openai-completions",
8659
8594
  provider: "opencode-go",
8660
8595
  baseUrl: "https://opencode.ai/zen/go/v1",
8596
+ compat: { "maxTokensField": "max_tokens" },
8661
8597
  reasoning: true,
8662
8598
  input: ["text", "image"],
8663
8599
  cost: {
@@ -8675,7 +8611,7 @@ export const MODELS = {
8675
8611
  api: "openai-completions",
8676
8612
  provider: "opencode-go",
8677
8613
  baseUrl: "https://opencode.ai/zen/go/v1",
8678
- compat: { "thinkingFormat": "deepseek", "supportsReasoningEffort": false },
8614
+ compat: { "thinkingFormat": "deepseek", "supportsReasoningEffort": false, "maxTokensField": "max_tokens" },
8679
8615
  reasoning: true,
8680
8616
  thinkingLevelMap: { "minimal": null, "low": null, "medium": null },
8681
8617
  input: ["text", "image"],
@@ -8694,6 +8630,7 @@ export const MODELS = {
8694
8630
  api: "openai-completions",
8695
8631
  provider: "opencode-go",
8696
8632
  baseUrl: "https://opencode.ai/zen/go/v1",
8633
+ compat: { "maxTokensField": "max_tokens" },
8697
8634
  reasoning: true,
8698
8635
  input: ["text", "image"],
8699
8636
  cost: {
@@ -8711,6 +8648,7 @@ export const MODELS = {
8711
8648
  api: "openai-completions",
8712
8649
  provider: "opencode-go",
8713
8650
  baseUrl: "https://opencode.ai/zen/go/v1",
8651
+ compat: { "maxTokensField": "max_tokens" },
8714
8652
  reasoning: true,
8715
8653
  input: ["text"],
8716
8654
  cost: {
@@ -8745,6 +8683,7 @@ export const MODELS = {
8745
8683
  api: "openai-completions",
8746
8684
  provider: "opencode-go",
8747
8685
  baseUrl: "https://opencode.ai/zen/go/v1",
8686
+ compat: { "maxTokensField": "max_tokens" },
8748
8687
  reasoning: true,
8749
8688
  input: ["text"],
8750
8689
  cost: {
@@ -8765,9 +8704,9 @@ export const MODELS = {
8765
8704
  reasoning: true,
8766
8705
  input: ["text", "image"],
8767
8706
  cost: {
8768
- input: 0.6,
8769
- output: 2.4,
8770
- cacheRead: 0.12,
8707
+ input: 0.3,
8708
+ output: 1.2,
8709
+ cacheRead: 0.06,
8771
8710
  cacheWrite: 0,
8772
8711
  },
8773
8712
  contextWindow: 512000,
@@ -8779,7 +8718,7 @@ export const MODELS = {
8779
8718
  api: "openai-completions",
8780
8719
  provider: "opencode-go",
8781
8720
  baseUrl: "https://opencode.ai/zen/go/v1",
8782
- compat: { "thinkingFormat": "qwen" },
8721
+ compat: { "thinkingFormat": "qwen", "maxTokensField": "max_tokens" },
8783
8722
  reasoning: true,
8784
8723
  input: ["text", "image"],
8785
8724
  cost: {
@@ -8963,6 +8902,23 @@ export const MODELS = {
8963
8902
  contextWindow: 200000,
8964
8903
  maxTokens: 8192,
8965
8904
  },
8905
+ "anthropic/claude-fable-5": {
8906
+ id: "anthropic/claude-fable-5",
8907
+ name: "Anthropic: Claude Fable 5",
8908
+ api: "openai-completions",
8909
+ provider: "openrouter",
8910
+ baseUrl: "https://openrouter.ai/api/v1",
8911
+ reasoning: true,
8912
+ input: ["text", "image"],
8913
+ cost: {
8914
+ input: 10,
8915
+ output: 50,
8916
+ cacheRead: 1,
8917
+ cacheWrite: 12.5,
8918
+ },
8919
+ contextWindow: 1000000,
8920
+ maxTokens: 128000,
8921
+ },
8966
8922
  "anthropic/claude-haiku-4.5": {
8967
8923
  id: "anthropic/claude-haiku-4.5",
8968
8924
  name: "Anthropic: Claude Haiku 4.5",
@@ -9258,23 +9214,6 @@ export const MODELS = {
9258
9214
  contextWindow: 2000000,
9259
9215
  maxTokens: 30000,
9260
9216
  },
9261
- "baidu/ernie-4.5-vl-28b-a3b": {
9262
- id: "baidu/ernie-4.5-vl-28b-a3b",
9263
- name: "Baidu: ERNIE 4.5 VL 28B A3B",
9264
- api: "openai-completions",
9265
- provider: "openrouter",
9266
- baseUrl: "https://openrouter.ai/api/v1",
9267
- reasoning: true,
9268
- input: ["text", "image"],
9269
- cost: {
9270
- input: 0.14,
9271
- output: 0.56,
9272
- cacheRead: 0,
9273
- cacheWrite: 0,
9274
- },
9275
- contextWindow: 131072,
9276
- maxTokens: 8000,
9277
- },
9278
9217
  "bytedance-seed/seed-1.6": {
9279
9218
  id: "bytedance-seed/seed-1.6",
9280
9219
  name: "ByteDance Seed: Seed 1.6",
@@ -9781,8 +9720,8 @@ export const MODELS = {
9781
9720
  reasoning: false,
9782
9721
  input: ["text", "image"],
9783
9722
  cost: {
9784
- input: 0.04,
9785
- output: 0.13,
9723
+ input: 0.049999999999999996,
9724
+ output: 0.15,
9786
9725
  cacheRead: 0,
9787
9726
  cacheWrite: 0,
9788
9727
  },
@@ -10071,7 +10010,7 @@ export const MODELS = {
10071
10010
  reasoning: false,
10072
10011
  input: ["text", "image"],
10073
10012
  cost: {
10074
- input: 0.08,
10013
+ input: 0.09999999999999999,
10075
10014
  output: 0.3,
10076
10015
  cacheRead: 0,
10077
10016
  cacheWrite: 0,
@@ -10140,8 +10079,8 @@ export const MODELS = {
10140
10079
  input: ["text"],
10141
10080
  cost: {
10142
10081
  input: 0.15,
10143
- output: 1.15,
10144
- cacheRead: 0,
10082
+ output: 0.8999999999999999,
10083
+ cacheRead: 0.049999999999999996,
10145
10084
  cacheWrite: 0,
10146
10085
  },
10147
10086
  contextWindow: 204800,
@@ -10156,13 +10095,13 @@ export const MODELS = {
10156
10095
  reasoning: true,
10157
10096
  input: ["text"],
10158
10097
  cost: {
10159
- input: 0.27899999999999997,
10160
- output: 1.2,
10161
- cacheRead: 0,
10098
+ input: 0.27,
10099
+ output: 1.08,
10100
+ cacheRead: 0.054,
10162
10101
  cacheWrite: 0,
10163
10102
  },
10164
10103
  contextWindow: 204800,
10165
- maxTokens: 196608,
10104
+ maxTokens: 131072,
10166
10105
  },
10167
10106
  "minimax/minimax-m3": {
10168
10107
  id: "minimax/minimax-m3",
@@ -10548,13 +10487,13 @@ export const MODELS = {
10548
10487
  reasoning: true,
10549
10488
  input: ["text", "image"],
10550
10489
  cost: {
10551
- input: 0.684,
10552
- output: 3.42,
10553
- cacheRead: 0.144,
10490
+ input: 0.6799999999999999,
10491
+ output: 3.41,
10492
+ cacheRead: 0.33999999999999997,
10554
10493
  cacheWrite: 0,
10555
10494
  },
10556
10495
  contextWindow: 262144,
10557
- maxTokens: 262144,
10496
+ maxTokens: 262142,
10558
10497
  },
10559
10498
  "moonshotai/kimi-k2.6:free": {
10560
10499
  id: "moonshotai/kimi-k2.6:free",
@@ -10574,22 +10513,22 @@ export const MODELS = {
10574
10513
  contextWindow: 262144,
10575
10514
  maxTokens: 4096,
10576
10515
  },
10577
- "nex-agi/deepseek-v3.1-nex-n1": {
10578
- id: "nex-agi/deepseek-v3.1-nex-n1",
10579
- name: "Nex AGI: DeepSeek V3.1 Nex N1",
10516
+ "nex-agi/nex-n2-pro:free": {
10517
+ id: "nex-agi/nex-n2-pro:free",
10518
+ name: "Nex AGI: Nex-N2-Pro (free)",
10580
10519
  api: "openai-completions",
10581
10520
  provider: "openrouter",
10582
10521
  baseUrl: "https://openrouter.ai/api/v1",
10583
- reasoning: false,
10584
- input: ["text"],
10522
+ reasoning: true,
10523
+ input: ["text", "image"],
10585
10524
  cost: {
10586
- input: 0.135,
10587
- output: 0.5,
10525
+ input: 0,
10526
+ output: 0,
10588
10527
  cacheRead: 0,
10589
10528
  cacheWrite: 0,
10590
10529
  },
10591
- contextWindow: 131072,
10592
- maxTokens: 163840,
10530
+ contextWindow: 262144,
10531
+ maxTokens: 262144,
10593
10532
  },
10594
10533
  "nvidia/llama-3.3-nemotron-super-49b-v1.5": {
10595
10534
  id: "nvidia/llama-3.3-nemotron-super-49b-v1.5",
@@ -10600,7 +10539,7 @@ export const MODELS = {
10600
10539
  reasoning: true,
10601
10540
  input: ["text"],
10602
10541
  cost: {
10603
- input: 0.09999999999999999,
10542
+ input: 0.39999999999999997,
10604
10543
  output: 0.39999999999999997,
10605
10544
  cacheRead: 0,
10606
10545
  cacheWrite: 0,
@@ -10846,23 +10785,6 @@ export const MODELS = {
10846
10785
  contextWindow: 8191,
10847
10786
  maxTokens: 4096,
10848
10787
  },
10849
- "openai/gpt-4-1106-preview": {
10850
- id: "openai/gpt-4-1106-preview",
10851
- name: "OpenAI: GPT-4 Turbo (older v1106)",
10852
- api: "openai-completions",
10853
- provider: "openrouter",
10854
- baseUrl: "https://openrouter.ai/api/v1",
10855
- reasoning: false,
10856
- input: ["text"],
10857
- cost: {
10858
- input: 10,
10859
- output: 30,
10860
- cacheRead: 0,
10861
- cacheWrite: 0,
10862
- },
10863
- contextWindow: 128000,
10864
- maxTokens: 4096,
10865
- },
10866
10788
  "openai/gpt-4-turbo": {
10867
10789
  id: "openai/gpt-4-turbo",
10868
10790
  name: "OpenAI: GPT-4 Turbo",
@@ -11938,7 +11860,7 @@ export const MODELS = {
11938
11860
  reasoning: false,
11939
11861
  input: ["text"],
11940
11862
  cost: {
11941
- input: 0.071,
11863
+ input: 0.09,
11942
11864
  output: 0.09999999999999999,
11943
11865
  cacheRead: 0,
11944
11866
  cacheWrite: 0,
@@ -11972,8 +11894,8 @@ export const MODELS = {
11972
11894
  reasoning: true,
11973
11895
  input: ["text"],
11974
11896
  cost: {
11975
- input: 0.09,
11976
- output: 0.44999999999999996,
11897
+ input: 0.12,
11898
+ output: 0.5,
11977
11899
  cacheRead: 0,
11978
11900
  cacheWrite: 0,
11979
11901
  },
@@ -12431,13 +12353,13 @@ export const MODELS = {
12431
12353
  reasoning: true,
12432
12354
  input: ["text", "image"],
12433
12355
  cost: {
12434
- input: 0.04,
12356
+ input: 0.09999999999999999,
12435
12357
  output: 0.15,
12436
12358
  cacheRead: 0,
12437
12359
  cacheWrite: 0,
12438
12360
  },
12439
12361
  contextWindow: 262144,
12440
- maxTokens: 81920,
12362
+ maxTokens: 262144,
12441
12363
  },
12442
12364
  "qwen/qwen3.5-flash-02-23": {
12443
12365
  id: "qwen/qwen3.5-flash-02-23",
@@ -12499,13 +12421,13 @@ export const MODELS = {
12499
12421
  reasoning: true,
12500
12422
  input: ["text", "image"],
12501
12423
  cost: {
12502
- input: 0.29,
12503
- output: 3.1999999999999997,
12424
+ input: 0.28900000000000003,
12425
+ output: 2.4,
12504
12426
  cacheRead: 0,
12505
12427
  cacheWrite: 0,
12506
12428
  },
12507
12429
  contextWindow: 262144,
12508
- maxTokens: 262140,
12430
+ maxTokens: 131072,
12509
12431
  },
12510
12432
  "qwen/qwen3.6-35b-a3b": {
12511
12433
  id: "qwen/qwen3.6-35b-a3b",
@@ -12864,23 +12786,6 @@ export const MODELS = {
12864
12786
  contextWindow: 1048576,
12865
12787
  maxTokens: 131072,
12866
12788
  },
12867
- "z-ai/glm-4-32b": {
12868
- id: "z-ai/glm-4-32b",
12869
- name: "Z.ai: GLM 4 32B ",
12870
- api: "openai-completions",
12871
- provider: "openrouter",
12872
- baseUrl: "https://openrouter.ai/api/v1",
12873
- reasoning: false,
12874
- input: ["text"],
12875
- cost: {
12876
- input: 0.09999999999999999,
12877
- output: 0.09999999999999999,
12878
- cacheRead: 0,
12879
- cacheWrite: 0,
12880
- },
12881
- contextWindow: 128000,
12882
- maxTokens: 4096,
12883
- },
12884
12789
  "z-ai/glm-4.5": {
12885
12790
  id: "z-ai/glm-4.5",
12886
12791
  name: "Z.ai: GLM 4.5",
@@ -12915,23 +12820,6 @@ export const MODELS = {
12915
12820
  contextWindow: 131072,
12916
12821
  maxTokens: 131070,
12917
12822
  },
12918
- "z-ai/glm-4.5-air:free": {
12919
- id: "z-ai/glm-4.5-air:free",
12920
- name: "Z.ai: GLM 4.5 Air (free)",
12921
- api: "openai-completions",
12922
- provider: "openrouter",
12923
- baseUrl: "https://openrouter.ai/api/v1",
12924
- reasoning: true,
12925
- input: ["text"],
12926
- cost: {
12927
- input: 0,
12928
- output: 0,
12929
- cacheRead: 0,
12930
- cacheWrite: 0,
12931
- },
12932
- contextWindow: 131072,
12933
- maxTokens: 96000,
12934
- },
12935
12823
  "z-ai/glm-4.5v": {
12936
12824
  id: "z-ai/glm-4.5v",
12937
12825
  name: "Z.ai: GLM 4.5V",
@@ -12977,11 +12865,11 @@ export const MODELS = {
12977
12865
  cost: {
12978
12866
  input: 0.3,
12979
12867
  output: 0.8999999999999999,
12980
- cacheRead: 0.049999999999999996,
12868
+ cacheRead: 0.055,
12981
12869
  cacheWrite: 0,
12982
12870
  },
12983
12871
  contextWindow: 131072,
12984
- maxTokens: 24000,
12872
+ maxTokens: 32768,
12985
12873
  },
12986
12874
  "z-ai/glm-4.7": {
12987
12875
  id: "z-ai/glm-4.7",
@@ -13048,7 +12936,7 @@ export const MODELS = {
13048
12936
  cacheRead: 0.24,
13049
12937
  cacheWrite: 0,
13050
12938
  },
13051
- contextWindow: 202752,
12939
+ contextWindow: 262144,
13052
12940
  maxTokens: 131072,
13053
12941
  },
13054
12942
  "z-ai/glm-5.1": {
@@ -13068,22 +12956,22 @@ export const MODELS = {
13068
12956
  contextWindow: 202752,
13069
12957
  maxTokens: 4096,
13070
12958
  },
13071
- "z-ai/glm-5v-turbo": {
13072
- id: "z-ai/glm-5v-turbo",
13073
- name: "Z.ai: GLM 5V Turbo",
12959
+ "~anthropic/claude-fable-latest": {
12960
+ id: "~anthropic/claude-fable-latest",
12961
+ name: "Anthropic: Claude Fable Latest",
13074
12962
  api: "openai-completions",
13075
12963
  provider: "openrouter",
13076
12964
  baseUrl: "https://openrouter.ai/api/v1",
13077
12965
  reasoning: true,
13078
12966
  input: ["text", "image"],
13079
12967
  cost: {
13080
- input: 1.2,
13081
- output: 4,
13082
- cacheRead: 0.24,
13083
- cacheWrite: 0,
12968
+ input: 10,
12969
+ output: 50,
12970
+ cacheRead: 1,
12971
+ cacheWrite: 12.5,
13084
12972
  },
13085
- contextWindow: 202752,
13086
- maxTokens: 131072,
12973
+ contextWindow: 1000000,
12974
+ maxTokens: 128000,
13087
12975
  },
13088
12976
  "~anthropic/claude-haiku-latest": {
13089
12977
  id: "~anthropic/claude-haiku-latest",
@@ -13179,13 +13067,13 @@ export const MODELS = {
13179
13067
  reasoning: true,
13180
13068
  input: ["text", "image"],
13181
13069
  cost: {
13182
- input: 0.684,
13183
- output: 3.42,
13184
- cacheRead: 0.144,
13070
+ input: 0.6799999999999999,
13071
+ output: 3.41,
13072
+ cacheRead: 0.33999999999999997,
13185
13073
  cacheWrite: 0,
13186
13074
  },
13187
13075
  contextWindow: 262144,
13188
- maxTokens: 262144,
13076
+ maxTokens: 262142,
13189
13077
  },
13190
13078
  "~openai/gpt-latest": {
13191
13079
  id: "~openai/gpt-latest",
@@ -13229,9 +13117,9 @@ export const MODELS = {
13229
13117
  api: "openai-completions",
13230
13118
  provider: "together",
13231
13119
  baseUrl: "https://api.together.ai/v1",
13232
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "supportsLongCacheRetention": false },
13120
+ compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsStrictMode": false, "supportsLongCacheRetention": false, "thinkingFormat": "together" },
13233
13121
  reasoning: true,
13234
- thinkingLevelMap: { "off": null, "minimal": null, "low": null, "medium": null },
13122
+ thinkingLevelMap: { "minimal": null, "low": null, "medium": null },
13235
13123
  input: ["text"],
13236
13124
  cost: {
13237
13125
  input: 0.3,
@@ -13626,8 +13514,8 @@ export const MODELS = {
13626
13514
  reasoning: true,
13627
13515
  input: ["text"],
13628
13516
  cost: {
13629
- input: 0.08,
13630
- output: 0.29,
13517
+ input: 0.12,
13518
+ output: 0.5,
13631
13519
  cacheRead: 0,
13632
13520
  cacheWrite: 0,
13633
13521
  },
@@ -13991,6 +13879,25 @@ export const MODELS = {
13991
13879
  contextWindow: 200000,
13992
13880
  maxTokens: 8192,
13993
13881
  },
13882
+ "anthropic/claude-fable-5": {
13883
+ id: "anthropic/claude-fable-5",
13884
+ name: "Claude Fable 5",
13885
+ api: "anthropic-messages",
13886
+ provider: "vercel-ai-gateway",
13887
+ baseUrl: "https://ai-gateway.vercel.sh",
13888
+ compat: { "forceAdaptiveThinking": true },
13889
+ reasoning: true,
13890
+ thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
13891
+ input: ["text", "image"],
13892
+ cost: {
13893
+ input: 10,
13894
+ output: 50,
13895
+ cacheRead: 1,
13896
+ cacheWrite: 12.5,
13897
+ },
13898
+ contextWindow: 1000000,
13899
+ maxTokens: 128000,
13900
+ },
13994
13901
  "anthropic/claude-haiku-4.5": {
13995
13902
  id: "anthropic/claude-haiku-4.5",
13996
13903
  name: "Claude Haiku 4.5",
@@ -14372,40 +14279,6 @@ export const MODELS = {
14372
14279
  contextWindow: 1000000,
14373
14280
  maxTokens: 384000,
14374
14281
  },
14375
- "google/gemini-2.0-flash": {
14376
- id: "google/gemini-2.0-flash",
14377
- name: "Gemini 2.0 Flash",
14378
- api: "anthropic-messages",
14379
- provider: "vercel-ai-gateway",
14380
- baseUrl: "https://ai-gateway.vercel.sh",
14381
- reasoning: false,
14382
- input: ["text", "image"],
14383
- cost: {
14384
- input: 0.15,
14385
- output: 0.6,
14386
- cacheRead: 0.024999999999999998,
14387
- cacheWrite: 0,
14388
- },
14389
- contextWindow: 1048576,
14390
- maxTokens: 8192,
14391
- },
14392
- "google/gemini-2.0-flash-lite": {
14393
- id: "google/gemini-2.0-flash-lite",
14394
- name: "Gemini 2.0 Flash Lite",
14395
- api: "anthropic-messages",
14396
- provider: "vercel-ai-gateway",
14397
- baseUrl: "https://ai-gateway.vercel.sh",
14398
- reasoning: false,
14399
- input: ["text", "image"],
14400
- cost: {
14401
- input: 0.075,
14402
- output: 0.3,
14403
- cacheRead: 0.02,
14404
- cacheWrite: 0,
14405
- },
14406
- contextWindow: 1048576,
14407
- maxTokens: 8192,
14408
- },
14409
14282
  "google/gemini-2.5-flash": {
14410
14283
  id: "google/gemini-2.5-flash",
14411
14284
  name: "Gemini 2.5 Flash",
@@ -16525,7 +16398,7 @@ export const MODELS = {
16525
16398
  cacheRead: 0.2,
16526
16399
  cacheWrite: 0,
16527
16400
  },
16528
- contextWindow: 2000000,
16401
+ contextWindow: 1000000,
16529
16402
  maxTokens: 30000,
16530
16403
  },
16531
16404
  "grok-4.20-0309-reasoning": {
@@ -16542,7 +16415,7 @@ export const MODELS = {
16542
16415
  cacheRead: 0.2,
16543
16416
  cacheWrite: 0,
16544
16417
  },
16545
- contextWindow: 2000000,
16418
+ contextWindow: 1000000,
16546
16419
  maxTokens: 30000,
16547
16420
  },
16548
16421
  "grok-4.3": {
@@ -16688,6 +16561,24 @@ export const MODELS = {
16688
16561
  contextWindow: 1048576,
16689
16562
  maxTokens: 131072,
16690
16563
  },
16564
+ "mimo-v2.5-pro-ultraspeed": {
16565
+ id: "mimo-v2.5-pro-ultraspeed",
16566
+ name: "MiMo-V2.5-Pro-UltraSpeed",
16567
+ api: "openai-completions",
16568
+ provider: "xiaomi",
16569
+ baseUrl: "https://api.xiaomimimo.com/v1",
16570
+ compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek", "supportsDisabledThinking": false },
16571
+ reasoning: true,
16572
+ input: ["text"],
16573
+ cost: {
16574
+ input: 1.305,
16575
+ output: 2.61,
16576
+ cacheRead: 0.0108,
16577
+ cacheWrite: 0,
16578
+ },
16579
+ contextWindow: 1048576,
16580
+ maxTokens: 131072,
16581
+ },
16691
16582
  },
16692
16583
  "xiaomi-token-plan-ams": {
16693
16584
  "mimo-v2-omni": {
@@ -16762,6 +16653,24 @@ export const MODELS = {
16762
16653
  contextWindow: 1048576,
16763
16654
  maxTokens: 131072,
16764
16655
  },
16656
+ "mimo-v2.5-pro-ultraspeed": {
16657
+ id: "mimo-v2.5-pro-ultraspeed",
16658
+ name: "MiMo-V2.5-Pro-UltraSpeed",
16659
+ api: "openai-completions",
16660
+ provider: "xiaomi-token-plan-ams",
16661
+ baseUrl: "https://token-plan-ams.xiaomimimo.com/v1",
16662
+ compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek", "supportsDisabledThinking": false },
16663
+ reasoning: true,
16664
+ input: ["text"],
16665
+ cost: {
16666
+ input: 1.305,
16667
+ output: 2.61,
16668
+ cacheRead: 0.0108,
16669
+ cacheWrite: 0,
16670
+ },
16671
+ contextWindow: 1048576,
16672
+ maxTokens: 131072,
16673
+ },
16765
16674
  },
16766
16675
  "xiaomi-token-plan-cn": {
16767
16676
  "mimo-v2-omni": {
@@ -16836,6 +16745,24 @@ export const MODELS = {
16836
16745
  contextWindow: 1048576,
16837
16746
  maxTokens: 131072,
16838
16747
  },
16748
+ "mimo-v2.5-pro-ultraspeed": {
16749
+ id: "mimo-v2.5-pro-ultraspeed",
16750
+ name: "MiMo-V2.5-Pro-UltraSpeed",
16751
+ api: "openai-completions",
16752
+ provider: "xiaomi-token-plan-cn",
16753
+ baseUrl: "https://token-plan-cn.xiaomimimo.com/v1",
16754
+ compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek", "supportsDisabledThinking": false },
16755
+ reasoning: true,
16756
+ input: ["text"],
16757
+ cost: {
16758
+ input: 1.305,
16759
+ output: 2.61,
16760
+ cacheRead: 0.0108,
16761
+ cacheWrite: 0,
16762
+ },
16763
+ contextWindow: 1048576,
16764
+ maxTokens: 131072,
16765
+ },
16839
16766
  },
16840
16767
  "xiaomi-token-plan-sgp": {
16841
16768
  "mimo-v2-omni": {
@@ -16910,6 +16837,24 @@ export const MODELS = {
16910
16837
  contextWindow: 1048576,
16911
16838
  maxTokens: 131072,
16912
16839
  },
16840
+ "mimo-v2.5-pro-ultraspeed": {
16841
+ id: "mimo-v2.5-pro-ultraspeed",
16842
+ name: "MiMo-V2.5-Pro-UltraSpeed",
16843
+ api: "openai-completions",
16844
+ provider: "xiaomi-token-plan-sgp",
16845
+ baseUrl: "https://token-plan-sgp.xiaomimimo.com/v1",
16846
+ compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek", "supportsDisabledThinking": false },
16847
+ reasoning: true,
16848
+ input: ["text"],
16849
+ cost: {
16850
+ input: 1.305,
16851
+ output: 2.61,
16852
+ cacheRead: 0.0108,
16853
+ cacheWrite: 0,
16854
+ },
16855
+ contextWindow: 1048576,
16856
+ maxTokens: 131072,
16857
+ },
16913
16858
  },
16914
16859
  "zai": {
16915
16860
  "glm-4.5-air": {