@mastra/core 0.20.2 → 0.21.0-alpha.1

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 (314) hide show
  1. package/CHANGELOG.md +93 -0
  2. package/README.md +30 -121
  3. package/dist/agent/agent.d.ts +5 -10
  4. package/dist/agent/agent.d.ts.map +1 -1
  5. package/dist/agent/agent.types.d.ts +12 -14
  6. package/dist/agent/agent.types.d.ts.map +1 -1
  7. package/dist/agent/index.cjs +19 -11
  8. package/dist/agent/index.d.ts +2 -1
  9. package/dist/agent/index.d.ts.map +1 -1
  10. package/dist/agent/index.js +2 -2
  11. package/dist/agent/input-processor/index.cjs +6 -6
  12. package/dist/agent/input-processor/index.js +1 -1
  13. package/dist/agent/message-list/index.d.ts +4 -4
  14. package/dist/agent/message-list/index.d.ts.map +1 -1
  15. package/dist/agent/message-list/prompt/attachments-to-parts.d.ts +1 -1
  16. package/dist/agent/message-list/prompt/attachments-to-parts.d.ts.map +1 -1
  17. package/dist/agent/message-list/prompt/convert-file.d.ts +2 -2
  18. package/dist/agent/message-list/prompt/convert-file.d.ts.map +1 -1
  19. package/dist/agent/message-list/types.d.ts +2 -2
  20. package/dist/agent/message-list/types.d.ts.map +1 -1
  21. package/dist/agent/message-list/utils/convert-messages.d.ts +2 -2
  22. package/dist/agent/types.d.ts +13 -5
  23. package/dist/agent/types.d.ts.map +1 -1
  24. package/dist/agent/utils.d.ts +110 -0
  25. package/dist/agent/utils.d.ts.map +1 -0
  26. package/dist/agent/workflows/prepare-stream/index.d.ts +2 -2
  27. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -1
  28. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -1
  29. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +2 -2
  30. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts +1 -2
  31. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -1
  32. package/dist/agent/workflows/prepare-stream/schema.d.ts +2 -2
  33. package/dist/ai-tracing/index.cjs +32 -32
  34. package/dist/ai-tracing/index.js +1 -1
  35. package/dist/ai-tracing/spans/base.d.ts +2 -0
  36. package/dist/ai-tracing/spans/base.d.ts.map +1 -1
  37. package/dist/ai-tracing/types.d.ts +24 -0
  38. package/dist/ai-tracing/types.d.ts.map +1 -1
  39. package/dist/{chunk-BWC4WQTS.js → chunk-24L3LVID.js} +21 -14
  40. package/dist/chunk-24L3LVID.js.map +1 -0
  41. package/dist/{chunk-7ZXDZXGD.cjs → chunk-2BTTHMDJ.cjs} +14 -2
  42. package/dist/chunk-2BTTHMDJ.cjs.map +1 -0
  43. package/dist/{chunk-KK5LUATU.js → chunk-2VSJYKJF.js} +4 -4
  44. package/dist/{chunk-KK5LUATU.js.map → chunk-2VSJYKJF.js.map} +1 -1
  45. package/dist/chunk-33JJWAVI.js +2077 -0
  46. package/dist/chunk-33JJWAVI.js.map +1 -0
  47. package/dist/chunk-3ZEJSGTJ.cjs +9289 -0
  48. package/dist/chunk-3ZEJSGTJ.cjs.map +1 -0
  49. package/dist/{chunk-6ZSVXXMJ.js → chunk-624FF2ZG.js} +14 -2
  50. package/dist/chunk-624FF2ZG.js.map +1 -0
  51. package/dist/{chunk-2QV245Q5.cjs → chunk-6OJROHMC.cjs} +25 -18
  52. package/dist/chunk-6OJROHMC.cjs.map +1 -0
  53. package/dist/{chunk-T5SM2HLV.cjs → chunk-74P72XBM.cjs} +4 -4
  54. package/dist/chunk-74P72XBM.cjs.map +1 -0
  55. package/dist/chunk-75CDUY5G.js +158 -0
  56. package/dist/chunk-75CDUY5G.js.map +1 -0
  57. package/dist/chunk-BLPOOPRL.js +3164 -0
  58. package/dist/chunk-BLPOOPRL.js.map +1 -0
  59. package/dist/{chunk-JZ5MQXUL.cjs → chunk-DUMAWQ7I.cjs} +4 -4
  60. package/dist/{chunk-JZ5MQXUL.cjs.map → chunk-DUMAWQ7I.cjs.map} +1 -1
  61. package/dist/chunk-EQV7XSTY.cjs +2090 -0
  62. package/dist/chunk-EQV7XSTY.cjs.map +1 -0
  63. package/dist/chunk-ILZI4MEU.js +9263 -0
  64. package/dist/chunk-ILZI4MEU.js.map +1 -0
  65. package/dist/{chunk-4PRV2Y55.cjs → chunk-LOUJSR3F.cjs} +5 -5
  66. package/dist/{chunk-4PRV2Y55.cjs.map → chunk-LOUJSR3F.cjs.map} +1 -1
  67. package/dist/{chunk-M2MHQQGJ.js → chunk-ONHTH5RH.js} +4 -4
  68. package/dist/chunk-ONHTH5RH.js.map +1 -0
  69. package/dist/{chunk-YBC4V5GE.js → chunk-PPW3SAWO.js} +5 -9
  70. package/dist/{chunk-YBC4V5GE.js.map → chunk-PPW3SAWO.js.map} +1 -1
  71. package/dist/{chunk-DBYLVMIV.js → chunk-Q4YVANA4.js} +25 -7
  72. package/dist/chunk-Q4YVANA4.js.map +1 -0
  73. package/dist/chunk-QMKBXESK.cjs +3186 -0
  74. package/dist/chunk-QMKBXESK.cjs.map +1 -0
  75. package/dist/{chunk-EB2KTBHB.js → chunk-R3W5CNKP.js} +100 -82
  76. package/dist/chunk-R3W5CNKP.js.map +1 -0
  77. package/dist/{chunk-ECMIW6W2.cjs → chunk-RXGL66T6.cjs} +134 -111
  78. package/dist/chunk-RXGL66T6.cjs.map +1 -0
  79. package/dist/{chunk-PPCSJI73.cjs → chunk-SL534RIL.cjs} +33 -14
  80. package/dist/chunk-SL534RIL.cjs.map +1 -0
  81. package/dist/{chunk-YICS4NNU.cjs → chunk-SQXKJWFX.cjs} +12 -12
  82. package/dist/{chunk-YICS4NNU.cjs.map → chunk-SQXKJWFX.cjs.map} +1 -1
  83. package/dist/{chunk-X5SB7NR3.cjs → chunk-SSDFGDFJ.cjs} +9 -10
  84. package/dist/chunk-SSDFGDFJ.cjs.map +1 -0
  85. package/dist/{chunk-OC7MSESV.cjs → chunk-TTJM3STK.cjs} +7 -11
  86. package/dist/{chunk-OC7MSESV.cjs.map → chunk-TTJM3STK.cjs.map} +1 -1
  87. package/dist/{chunk-RE7SRMBE.cjs → chunk-UPRLKS2E.cjs} +16 -16
  88. package/dist/chunk-UPRLKS2E.cjs.map +1 -0
  89. package/dist/{chunk-7H72OAZ3.js → chunk-UQCUAYWV.js} +3 -3
  90. package/dist/{chunk-7H72OAZ3.js.map → chunk-UQCUAYWV.js.map} +1 -1
  91. package/dist/{chunk-SWNIMD7I.js → chunk-XL5MZTLP.js} +3 -3
  92. package/dist/chunk-XL5MZTLP.js.map +1 -0
  93. package/dist/{chunk-HTX7EHW5.js → chunk-XQ5A3ISB.js} +3 -3
  94. package/dist/{chunk-HTX7EHW5.js.map → chunk-XQ5A3ISB.js.map} +1 -1
  95. package/dist/chunk-Y2PKC5BX.cjs +160 -0
  96. package/dist/chunk-Y2PKC5BX.cjs.map +1 -0
  97. package/dist/{chunk-VSTMNPZJ.js → chunk-YUV3LZMY.js} +7 -8
  98. package/dist/chunk-YUV3LZMY.js.map +1 -0
  99. package/dist/index.cjs +53 -49
  100. package/dist/index.js +10 -10
  101. package/dist/llm/index.cjs +9 -5
  102. package/dist/llm/index.d.ts +4 -3
  103. package/dist/llm/index.d.ts.map +1 -1
  104. package/dist/llm/index.js +1 -1
  105. package/dist/llm/model/base.types.d.ts +2 -2
  106. package/dist/llm/model/base.types.d.ts.map +1 -1
  107. package/dist/llm/model/gateways/base.d.ts +1 -1
  108. package/dist/llm/model/gateways/base.d.ts.map +1 -1
  109. package/dist/llm/model/gateways/models-dev.d.ts +1 -1
  110. package/dist/llm/model/gateways/models-dev.d.ts.map +1 -1
  111. package/dist/llm/model/gateways/netlify.d.ts +1 -1
  112. package/dist/llm/model/gateways/netlify.d.ts.map +1 -1
  113. package/dist/llm/model/index.d.ts +2 -1
  114. package/dist/llm/model/index.d.ts.map +1 -1
  115. package/dist/llm/model/model.d.ts +2 -2
  116. package/dist/llm/model/model.d.ts.map +1 -1
  117. package/dist/llm/model/model.loop.d.ts +3 -3
  118. package/dist/llm/model/model.loop.d.ts.map +1 -1
  119. package/dist/llm/model/model.loop.types.d.ts +2 -3
  120. package/dist/llm/model/model.loop.types.d.ts.map +1 -1
  121. package/dist/llm/model/provider-registry.d.ts +98 -0
  122. package/dist/llm/model/provider-registry.d.ts.map +1 -0
  123. package/dist/llm/model/provider-types.generated.d.ts +679 -0
  124. package/dist/llm/model/registry-generator.d.ts +29 -0
  125. package/dist/llm/model/registry-generator.d.ts.map +1 -0
  126. package/dist/llm/model/resolve-model.d.ts +46 -0
  127. package/dist/llm/model/resolve-model.d.ts.map +1 -0
  128. package/dist/llm/model/router.d.ts +2 -2
  129. package/dist/llm/model/router.d.ts.map +1 -1
  130. package/dist/llm/model/shared.types.d.ts +10 -4
  131. package/dist/llm/model/shared.types.d.ts.map +1 -1
  132. package/dist/loop/index.cjs +2 -2
  133. package/dist/loop/index.js +1 -1
  134. package/dist/loop/loop.d.ts +1 -1
  135. package/dist/loop/loop.d.ts.map +1 -1
  136. package/dist/loop/network/index.d.ts.map +1 -1
  137. package/dist/loop/telemetry/index.d.ts +1 -1
  138. package/dist/loop/telemetry/index.d.ts.map +1 -1
  139. package/dist/loop/test-utils/options.d.ts.map +1 -1
  140. package/dist/loop/test-utils/streamObject.d.ts +1 -1
  141. package/dist/loop/test-utils/streamObject.d.ts.map +1 -1
  142. package/dist/loop/test-utils/utils.d.ts +2 -2
  143. package/dist/loop/test-utils/utils.d.ts.map +1 -1
  144. package/dist/loop/types.d.ts +4 -3
  145. package/dist/loop/types.d.ts.map +1 -1
  146. package/dist/loop/workflows/agentic-execution/index.d.ts +73 -73
  147. package/dist/loop/workflows/agentic-execution/index.d.ts.map +1 -1
  148. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +50 -50
  149. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
  150. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +25 -25
  151. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -1
  152. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts +1 -1
  153. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -1
  154. package/dist/loop/workflows/agentic-loop/index.d.ts +73 -73
  155. package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -1
  156. package/dist/loop/workflows/run-state.d.ts +1 -1
  157. package/dist/loop/workflows/run-state.d.ts.map +1 -1
  158. package/dist/loop/workflows/schema.d.ts +33 -33
  159. package/dist/loop/workflows/schema.d.ts.map +1 -1
  160. package/dist/loop/workflows/stream.d.ts +1 -1
  161. package/dist/loop/workflows/stream.d.ts.map +1 -1
  162. package/dist/mastra/hooks.d.ts.map +1 -1
  163. package/dist/mastra/index.cjs +2 -2
  164. package/dist/mastra/index.js +1 -1
  165. package/dist/memory/index.cjs +4 -4
  166. package/dist/memory/index.js +1 -1
  167. package/dist/memory/memory.d.ts +3 -3
  168. package/dist/memory/memory.d.ts.map +1 -1
  169. package/dist/memory/types.d.ts +3 -3
  170. package/dist/memory/types.d.ts.map +1 -1
  171. package/dist/models-dev-A334FF64.js +3 -0
  172. package/dist/models-dev-A334FF64.js.map +1 -0
  173. package/dist/models-dev-ECOIQLLK.cjs +12 -0
  174. package/dist/models-dev-ECOIQLLK.cjs.map +1 -0
  175. package/dist/netlify-CEYZ5O54.js +3 -0
  176. package/dist/netlify-CEYZ5O54.js.map +1 -0
  177. package/dist/netlify-WFAL2AA4.cjs +12 -0
  178. package/dist/netlify-WFAL2AA4.cjs.map +1 -0
  179. package/dist/processors/index.cjs +11 -11
  180. package/dist/processors/index.js +1 -1
  181. package/dist/processors/processors/language-detector.d.ts +2 -0
  182. package/dist/processors/processors/language-detector.d.ts.map +1 -1
  183. package/dist/processors/processors/moderation.d.ts +6 -3
  184. package/dist/processors/processors/moderation.d.ts.map +1 -1
  185. package/dist/processors/processors/pii-detector.d.ts +8 -4
  186. package/dist/processors/processors/pii-detector.d.ts.map +1 -1
  187. package/dist/processors/processors/prompt-injection-detector.d.ts.map +1 -1
  188. package/dist/processors/processors/structured-output.d.ts +4 -2
  189. package/dist/processors/processors/structured-output.d.ts.map +1 -1
  190. package/dist/processors/processors/system-prompt-scrubber.d.ts +2 -1
  191. package/dist/processors/processors/system-prompt-scrubber.d.ts.map +1 -1
  192. package/dist/processors/runner.d.ts +8 -2
  193. package/dist/processors/runner.d.ts.map +1 -1
  194. package/dist/provider-registry.json +1625 -0
  195. package/dist/registry-generator-7XDUEFUT.cjs +111 -0
  196. package/dist/registry-generator-7XDUEFUT.cjs.map +1 -0
  197. package/dist/registry-generator-ZKIT6I3E.js +103 -0
  198. package/dist/registry-generator-ZKIT6I3E.js.map +1 -0
  199. package/dist/relevance/index.cjs +4 -4
  200. package/dist/relevance/index.js +1 -1
  201. package/dist/relevance/mastra-agent/index.d.ts +2 -2
  202. package/dist/relevance/mastra-agent/index.d.ts.map +1 -1
  203. package/dist/scores/base.d.ts +6 -6
  204. package/dist/scores/base.d.ts.map +1 -1
  205. package/dist/scores/index.cjs +9 -9
  206. package/dist/scores/index.js +2 -2
  207. package/dist/scores/run-experiment/index.d.ts +1 -1
  208. package/dist/scores/run-experiment/index.d.ts.map +1 -1
  209. package/dist/scores/scoreTraces/index.cjs +10 -10
  210. package/dist/scores/scoreTraces/index.cjs.map +1 -1
  211. package/dist/scores/scoreTraces/index.js +5 -5
  212. package/dist/scores/scoreTraces/index.js.map +1 -1
  213. package/dist/scores/types.d.ts +1 -1
  214. package/dist/scores/types.d.ts.map +1 -1
  215. package/dist/storage/index.cjs +3 -3
  216. package/dist/storage/index.js +1 -1
  217. package/dist/stream/aisdk/v4/input.d.ts +1 -1
  218. package/dist/stream/aisdk/v4/input.d.ts.map +1 -1
  219. package/dist/stream/aisdk/v5/compat/content.d.ts +2 -2
  220. package/dist/stream/aisdk/v5/compat/content.d.ts.map +1 -1
  221. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts +2 -2
  222. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts.map +1 -1
  223. package/dist/stream/aisdk/v5/compat/ui-message.d.ts +1 -1
  224. package/dist/stream/aisdk/v5/compat/ui-message.d.ts.map +1 -1
  225. package/dist/stream/aisdk/v5/compat/validation.d.ts +1 -1
  226. package/dist/stream/aisdk/v5/compat/validation.d.ts.map +1 -1
  227. package/dist/stream/aisdk/v5/execute.d.ts +5 -4
  228. package/dist/stream/aisdk/v5/execute.d.ts.map +1 -1
  229. package/dist/stream/aisdk/v5/input.d.ts +1 -1
  230. package/dist/stream/aisdk/v5/input.d.ts.map +1 -1
  231. package/dist/stream/aisdk/v5/output-helpers.d.ts +9 -9
  232. package/dist/stream/aisdk/v5/output-helpers.d.ts.map +1 -1
  233. package/dist/stream/aisdk/v5/output.d.ts +40 -39
  234. package/dist/stream/aisdk/v5/output.d.ts.map +1 -1
  235. package/dist/stream/aisdk/v5/test-utils.d.ts +1 -1
  236. package/dist/stream/aisdk/v5/test-utils.d.ts.map +1 -1
  237. package/dist/stream/aisdk/v5/transform.d.ts +2 -2
  238. package/dist/stream/aisdk/v5/transform.d.ts.map +1 -1
  239. package/dist/stream/base/input.d.ts +1 -1
  240. package/dist/stream/base/input.d.ts.map +1 -1
  241. package/dist/stream/base/output-format-handlers.d.ts +5 -2
  242. package/dist/stream/base/output-format-handlers.d.ts.map +1 -1
  243. package/dist/stream/base/output.d.ts +31 -25
  244. package/dist/stream/base/output.d.ts.map +1 -1
  245. package/dist/stream/base/schema.d.ts +1 -1
  246. package/dist/stream/base/schema.d.ts.map +1 -1
  247. package/dist/stream/index.cjs +13 -9
  248. package/dist/stream/index.d.ts +1 -0
  249. package/dist/stream/index.d.ts.map +1 -1
  250. package/dist/stream/index.js +2 -2
  251. package/dist/stream/types.d.ts +19 -6
  252. package/dist/stream/types.d.ts.map +1 -1
  253. package/dist/test-utils/llm-mock.cjs +6 -6
  254. package/dist/test-utils/llm-mock.cjs.map +1 -1
  255. package/dist/test-utils/llm-mock.d.ts +1 -1
  256. package/dist/test-utils/llm-mock.d.ts.map +1 -1
  257. package/dist/test-utils/llm-mock.js +3 -3
  258. package/dist/test-utils/llm-mock.js.map +1 -1
  259. package/dist/tools/types.d.ts +2 -2
  260. package/dist/tools/types.d.ts.map +1 -1
  261. package/dist/utils.cjs +17 -17
  262. package/dist/utils.d.ts +3 -2
  263. package/dist/utils.d.ts.map +1 -1
  264. package/dist/utils.js +1 -1
  265. package/dist/vector/embed.d.ts +2 -2
  266. package/dist/vector/embed.d.ts.map +1 -1
  267. package/dist/vector/index.cjs +4 -4
  268. package/dist/vector/index.js +1 -1
  269. package/dist/vector/vector.d.ts +2 -2
  270. package/dist/vector/vector.d.ts.map +1 -1
  271. package/dist/workflows/default.d.ts +2 -2
  272. package/dist/workflows/default.d.ts.map +1 -1
  273. package/dist/workflows/evented/execution-engine.d.ts +1 -1
  274. package/dist/workflows/evented/execution-engine.d.ts.map +1 -1
  275. package/dist/workflows/evented/index.cjs +10 -10
  276. package/dist/workflows/evented/index.js +1 -1
  277. package/dist/workflows/execution-engine.d.ts +1 -1
  278. package/dist/workflows/execution-engine.d.ts.map +1 -1
  279. package/dist/workflows/index.cjs +12 -12
  280. package/dist/workflows/index.js +1 -1
  281. package/dist/workflows/legacy/index.cjs +22 -22
  282. package/dist/workflows/legacy/index.js +1 -1
  283. package/dist/workflows/legacy/machine.d.ts +1 -1
  284. package/dist/workflows/legacy/workflow.d.ts +1 -1
  285. package/dist/workflows/step.d.ts +1 -1
  286. package/dist/workflows/step.d.ts.map +1 -1
  287. package/dist/workflows/types.d.ts +1 -1
  288. package/dist/workflows/types.d.ts.map +1 -1
  289. package/dist/workflows/workflow.d.ts +25 -8
  290. package/dist/workflows/workflow.d.ts.map +1 -1
  291. package/package.json +24 -19
  292. package/src/llm/model/provider-types.generated.d.ts +679 -0
  293. package/dist/chunk-2QV245Q5.cjs.map +0 -1
  294. package/dist/chunk-6ZSVXXMJ.js.map +0 -1
  295. package/dist/chunk-7ZXDZXGD.cjs.map +0 -1
  296. package/dist/chunk-BWC4WQTS.js.map +0 -1
  297. package/dist/chunk-BZ6BIHLE.js +0 -1418
  298. package/dist/chunk-BZ6BIHLE.js.map +0 -1
  299. package/dist/chunk-DBYLVMIV.js.map +0 -1
  300. package/dist/chunk-EB2KTBHB.js.map +0 -1
  301. package/dist/chunk-ECMIW6W2.cjs.map +0 -1
  302. package/dist/chunk-M2MHQQGJ.js.map +0 -1
  303. package/dist/chunk-PPCSJI73.cjs.map +0 -1
  304. package/dist/chunk-RE7SRMBE.cjs.map +0 -1
  305. package/dist/chunk-REVAU76X.cjs +0 -1423
  306. package/dist/chunk-REVAU76X.cjs.map +0 -1
  307. package/dist/chunk-SWNIMD7I.js.map +0 -1
  308. package/dist/chunk-T5SM2HLV.cjs.map +0 -1
  309. package/dist/chunk-VSTMNPZJ.js.map +0 -1
  310. package/dist/chunk-X5SB7NR3.cjs.map +0 -1
  311. package/dist/llm/model/provider-registry.generated.d.ts +0 -99
  312. package/dist/llm/model/provider-registry.generated.d.ts.map +0 -1
  313. package/dist/stream/aisdk/v5/model-supports.d.ts +0 -25
  314. package/dist/stream/aisdk/v5/model-supports.d.ts.map +0 -1
@@ -0,0 +1,679 @@
1
+ /**
2
+ * THIS FILE IS AUTO-GENERATED - DO NOT EDIT
3
+ * Generated from model gateway providers
4
+ */
5
+
6
+ /**
7
+ * Provider models mapping type
8
+ * This is derived from the JSON data and provides type-safe access
9
+ */
10
+ export type ProviderModelsMap = {
11
+ readonly 'moonshotai-cn': readonly ['kimi-k2-0711-preview', 'kimi-k2-0905-preview', 'kimi-k2-turbo-preview'];
12
+ readonly lucidquery: readonly ['lucidnova-rf1-100b', 'lucidquery-nexus-coder'];
13
+ readonly moonshotai: readonly ['kimi-k2-0711-preview', 'kimi-k2-0905-preview', 'kimi-k2-turbo-preview'];
14
+ readonly 'zai-coding-plan': readonly ['glm-4.5', 'glm-4.5-air', 'glm-4.5-flash', 'glm-4.5v', 'glm-4.6'];
15
+ readonly alibaba: readonly ['qwen3-coder-plus'];
16
+ readonly xai: readonly [
17
+ 'grok-2',
18
+ 'grok-2-1212',
19
+ 'grok-2-latest',
20
+ 'grok-2-vision',
21
+ 'grok-2-vision-1212',
22
+ 'grok-2-vision-latest',
23
+ 'grok-3',
24
+ 'grok-3-fast',
25
+ 'grok-3-fast-latest',
26
+ 'grok-3-latest',
27
+ 'grok-3-mini',
28
+ 'grok-3-mini-fast',
29
+ 'grok-3-mini-fast-latest',
30
+ 'grok-3-mini-latest',
31
+ 'grok-4',
32
+ 'grok-4-fast',
33
+ 'grok-4-fast-non-reasoning',
34
+ 'grok-beta',
35
+ 'grok-code-fast-1',
36
+ 'grok-vision-beta',
37
+ ];
38
+ readonly nvidia: readonly [
39
+ 'black-forest-labs/flux.1-dev',
40
+ 'deepseek-ai/deepseek-v3.1',
41
+ 'google/gemma-3-27b-it',
42
+ 'microsoft/phi-4-mini-instruct',
43
+ 'moonshotai/kimi-k2-instruct',
44
+ 'nvidia/cosmos-nemotron-34b',
45
+ 'nvidia/llama-3.1-nemotron-ultra-253b-v1',
46
+ 'nvidia/nemoretriever-ocr-v1',
47
+ 'nvidia/parakeet-tdt-0.6b-v2',
48
+ 'openai/gpt-oss-120b',
49
+ 'openai/whisper-large-v3',
50
+ 'qwen/qwen3-235b-a22b',
51
+ 'qwen/qwen3-coder-480b-a35b-instruct',
52
+ ];
53
+ readonly upstage: readonly ['solar-mini', 'solar-pro2'];
54
+ readonly groq: readonly [
55
+ 'deepseek-r1-distill-llama-70b',
56
+ 'gemma2-9b-it',
57
+ 'llama-3.1-8b-instant',
58
+ 'llama-3.3-70b-versatile',
59
+ 'llama-guard-3-8b',
60
+ 'llama3-70b-8192',
61
+ 'llama3-8b-8192',
62
+ 'meta-llama/llama-4-maverick-17b-128e-instruct',
63
+ 'meta-llama/llama-4-scout-17b-16e-instruct',
64
+ 'meta-llama/llama-guard-4-12b',
65
+ 'mistral-saba-24b',
66
+ 'moonshotai/kimi-k2-instruct',
67
+ 'moonshotai/kimi-k2-instruct-0905',
68
+ 'openai/gpt-oss-120b',
69
+ 'openai/gpt-oss-20b',
70
+ 'qwen-qwq-32b',
71
+ 'qwen/qwen3-32b',
72
+ ];
73
+ readonly mistral: readonly [
74
+ 'codestral-latest',
75
+ 'devstral-medium-2507',
76
+ 'devstral-small-2505',
77
+ 'devstral-small-2507',
78
+ 'magistral-medium-latest',
79
+ 'magistral-small',
80
+ 'ministral-3b-latest',
81
+ 'ministral-8b-latest',
82
+ 'mistral-large-latest',
83
+ 'mistral-medium-2505',
84
+ 'mistral-medium-2508',
85
+ 'mistral-medium-latest',
86
+ 'mistral-nemo',
87
+ 'mistral-small-latest',
88
+ 'open-mistral-7b',
89
+ 'open-mixtral-8x22b',
90
+ 'open-mixtral-8x7b',
91
+ 'pixtral-12b',
92
+ 'pixtral-large-latest',
93
+ ];
94
+ readonly vercel: readonly [
95
+ 'amazon/nova-lite',
96
+ 'amazon/nova-micro',
97
+ 'amazon/nova-pro',
98
+ 'anthropic/claude-3-5-haiku',
99
+ 'anthropic/claude-3-haiku',
100
+ 'anthropic/claude-3-opus',
101
+ 'anthropic/claude-3.5-sonnet',
102
+ 'anthropic/claude-3.7-sonnet',
103
+ 'anthropic/claude-4-1-opus',
104
+ 'anthropic/claude-4-opus',
105
+ 'anthropic/claude-4-sonnet',
106
+ 'anthropic/claude-4.5-sonnet',
107
+ 'cerebras/qwen3-coder',
108
+ 'deepseek/deepseek-r1',
109
+ 'deepseek/deepseek-r1-distill-llama-70b',
110
+ 'google/gemini-2.0-flash',
111
+ 'google/gemini-2.0-flash-lite',
112
+ 'google/gemini-2.5-flash',
113
+ 'google/gemini-2.5-pro',
114
+ 'meta/llama-3.3-70b',
115
+ 'meta/llama-4-maverick',
116
+ 'meta/llama-4-scout',
117
+ 'mistral/codestral',
118
+ 'mistral/magistral-medium',
119
+ 'mistral/magistral-small',
120
+ 'mistral/ministral-3b',
121
+ 'mistral/ministral-8b',
122
+ 'mistral/mistral-large',
123
+ 'mistral/mistral-small',
124
+ 'mistral/mixtral-8x22b-instruct',
125
+ 'mistral/pixtral-12b',
126
+ 'mistral/pixtral-large',
127
+ 'moonshotai/kimi-k2',
128
+ 'morph/morph-v3-fast',
129
+ 'morph/morph-v3-large',
130
+ 'openai/gpt-4-turbo',
131
+ 'openai/gpt-4.1',
132
+ 'openai/gpt-4.1-mini',
133
+ 'openai/gpt-4.1-nano',
134
+ 'openai/gpt-4o',
135
+ 'openai/gpt-4o-mini',
136
+ 'openai/gpt-5',
137
+ 'openai/gpt-5-codex',
138
+ 'openai/gpt-5-mini',
139
+ 'openai/gpt-5-nano',
140
+ 'openai/gpt-oss-120b',
141
+ 'openai/gpt-oss-20b',
142
+ 'openai/o1',
143
+ 'openai/o3',
144
+ 'openai/o3-mini',
145
+ 'openai/o4-mini',
146
+ 'vercel/v0-1.0-md',
147
+ 'vercel/v0-1.5-md',
148
+ 'xai/grok-2',
149
+ 'xai/grok-2-vision',
150
+ 'xai/grok-3',
151
+ 'xai/grok-3-fast',
152
+ 'xai/grok-3-mini',
153
+ 'xai/grok-3-mini-fast',
154
+ 'xai/grok-4',
155
+ 'xai/grok-4-fast',
156
+ 'xai/grok-4-fast-non-reasoning',
157
+ 'xai/grok-code-fast-1',
158
+ ];
159
+ readonly deepseek: readonly ['deepseek-chat', 'deepseek-reasoner'];
160
+ readonly 'alibaba-cn': readonly ['qwen3-coder-plus'];
161
+ readonly venice: readonly [
162
+ 'deepseek-coder-v2-lite',
163
+ 'deepseek-r1-671b',
164
+ 'dolphin-2.9.2-qwen2-72b',
165
+ 'llama-3.1-405b',
166
+ 'llama-3.2-3b',
167
+ 'llama-3.3-70b',
168
+ 'mistral-31-24b',
169
+ 'qwen-2.5-coder-32b',
170
+ 'qwen-2.5-qwq-32b',
171
+ 'qwen-2.5-vl',
172
+ 'qwen3-235b',
173
+ 'qwen3-4b',
174
+ 'venice-uncensored',
175
+ ];
176
+ readonly chutes: readonly [
177
+ 'Qwen/Qwen3-235B-A22B-Instruct-2507',
178
+ 'Qwen/Qwen3-235B-A22B-Thinking-2507',
179
+ 'Qwen/Qwen3-30B-A3B',
180
+ 'Qwen/Qwen3-30B-A3B-Instruct-2507',
181
+ 'Qwen/Qwen3-30B-A3B-Thinking-2507',
182
+ 'Qwen/Qwen3-Coder-30B-A3B-Instruct',
183
+ 'Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8',
184
+ 'Qwen/Qwen3-Next-80B-A3B-Instruct',
185
+ 'Qwen/Qwen3-Next-80B-A3B-Thinking',
186
+ 'chutesai/Devstral-Small-2505',
187
+ 'chutesai/Mistral-Small-3.2-24B-Instruct-2506',
188
+ 'deepseek-ai/DeepSeek-R1-0528',
189
+ 'deepseek-ai/DeepSeek-R1-0528-Qwen3-8B',
190
+ 'deepseek-ai/DeepSeek-R1-Distill-Llama-70B',
191
+ 'deepseek-ai/DeepSeek-V3-0324',
192
+ 'deepseek-ai/DeepSeek-V3.1',
193
+ 'deepseek-ai/DeepSeek-V3.1-Terminus',
194
+ 'deepseek-ai/DeepSeek-V3.1-turbo',
195
+ 'deepseek-ai/DeepSeek-V3.1:THINKING',
196
+ 'deepseek-ai/DeepSeek-V3.2-Exp',
197
+ 'meituan-longcat/LongCat-Flash-Chat-FP8',
198
+ 'moonshotai/Kimi-Dev-72B',
199
+ 'moonshotai/Kimi-K2-Instruct-0905',
200
+ 'moonshotai/Kimi-K2-Instruct-75k',
201
+ 'moonshotai/Kimi-VL-A3B-Thinking',
202
+ 'openai/gpt-oss-120b',
203
+ 'tngtech/DeepSeek-R1T-Chimera',
204
+ 'tngtech/DeepSeek-TNG-R1T2-Chimera',
205
+ 'zai-org/GLM-4.5-Air',
206
+ 'zai-org/GLM-4.5-FP8',
207
+ 'zai-org/GLM-4.5-turbo',
208
+ 'zai-org/GLM-4.6-FP8',
209
+ 'zai-org/GLM-4.6-turbo',
210
+ ];
211
+ readonly cortecs: readonly [
212
+ 'claude-sonnet-4',
213
+ 'deepseek-v3-0324',
214
+ 'gemini-2.5-pro',
215
+ 'gpt-4.1',
216
+ 'gpt-oss-120b',
217
+ 'kimi-k2-instruct',
218
+ 'llama-3.1-405b-instruct',
219
+ 'nova-pro-v1',
220
+ 'qwen3-32b',
221
+ 'qwen3-coder-480b-a35b-instruct',
222
+ ];
223
+ readonly 'github-models': readonly [
224
+ 'ai21-labs/ai21-jamba-1.5-large',
225
+ 'ai21-labs/ai21-jamba-1.5-mini',
226
+ 'cohere/cohere-command-a',
227
+ 'cohere/cohere-command-r',
228
+ 'cohere/cohere-command-r-08-2024',
229
+ 'cohere/cohere-command-r-plus',
230
+ 'cohere/cohere-command-r-plus-08-2024',
231
+ 'core42/jais-30b-chat',
232
+ 'deepseek/deepseek-r1',
233
+ 'deepseek/deepseek-r1-0528',
234
+ 'deepseek/deepseek-v3-0324',
235
+ 'meta/llama-3.2-11b-vision-instruct',
236
+ 'meta/llama-3.2-90b-vision-instruct',
237
+ 'meta/llama-3.3-70b-instruct',
238
+ 'meta/llama-4-maverick-17b-128e-instruct-fp8',
239
+ 'meta/llama-4-scout-17b-16e-instruct',
240
+ 'meta/meta-llama-3-70b-instruct',
241
+ 'meta/meta-llama-3-8b-instruct',
242
+ 'meta/meta-llama-3.1-405b-instruct',
243
+ 'meta/meta-llama-3.1-70b-instruct',
244
+ 'meta/meta-llama-3.1-8b-instruct',
245
+ 'microsoft/mai-ds-r1',
246
+ 'microsoft/phi-3-medium-128k-instruct',
247
+ 'microsoft/phi-3-medium-4k-instruct',
248
+ 'microsoft/phi-3-mini-128k-instruct',
249
+ 'microsoft/phi-3-mini-4k-instruct',
250
+ 'microsoft/phi-3-small-128k-instruct',
251
+ 'microsoft/phi-3-small-8k-instruct',
252
+ 'microsoft/phi-3.5-mini-instruct',
253
+ 'microsoft/phi-3.5-moe-instruct',
254
+ 'microsoft/phi-3.5-vision-instruct',
255
+ 'microsoft/phi-4',
256
+ 'microsoft/phi-4-mini-instruct',
257
+ 'microsoft/phi-4-mini-reasoning',
258
+ 'microsoft/phi-4-multimodal-instruct',
259
+ 'microsoft/phi-4-reasoning',
260
+ 'mistral-ai/codestral-2501',
261
+ 'mistral-ai/ministral-3b',
262
+ 'mistral-ai/mistral-large-2411',
263
+ 'mistral-ai/mistral-medium-2505',
264
+ 'mistral-ai/mistral-nemo',
265
+ 'mistral-ai/mistral-small-2503',
266
+ 'openai/gpt-4.1',
267
+ 'openai/gpt-4.1-mini',
268
+ 'openai/gpt-4.1-nano',
269
+ 'openai/gpt-4o',
270
+ 'openai/gpt-4o-mini',
271
+ 'openai/o1',
272
+ 'openai/o1-mini',
273
+ 'openai/o1-preview',
274
+ 'openai/o3',
275
+ 'openai/o3-mini',
276
+ 'openai/o4-mini',
277
+ 'xai/grok-3',
278
+ 'xai/grok-3-mini',
279
+ ];
280
+ readonly togetherai: readonly [
281
+ 'Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8',
282
+ 'deepseek-ai/DeepSeek-R1',
283
+ 'deepseek-ai/DeepSeek-V3',
284
+ 'meta-llama/Llama-3.3-70B-Instruct-Turbo',
285
+ 'moonshotai/Kimi-K2-Instruct',
286
+ 'openai/gpt-oss-120b',
287
+ ];
288
+ readonly baseten: readonly ['Qwen3/Qwen3-Coder-480B-A35B-Instruct', 'moonshotai/Kimi-K2-Instruct-0905'];
289
+ readonly huggingface: readonly [
290
+ 'Qwen/Qwen3-235B-A22B-Thinking-2507',
291
+ 'Qwen/Qwen3-Coder-480B-A35B-Instruct',
292
+ 'Qwen/Qwen3-Next-80B-A3B-Instruct',
293
+ 'Qwen/Qwen3-Next-80B-A3B-Thinking',
294
+ 'deepseek-ai/DeepSeek-R1-0528',
295
+ 'deepseek-ai/Deepseek-V3-0324',
296
+ 'moonshotai/Kimi-K2-Instruct',
297
+ 'moonshotai/Kimi-K2-Instruct-0905',
298
+ 'zai-org/GLM-4.5',
299
+ 'zai-org/GLM-4.5-Air',
300
+ 'zai-org/GLM-4.6',
301
+ ];
302
+ readonly opencode: readonly [
303
+ 'claude-3-5-haiku',
304
+ 'claude-opus-4-1',
305
+ 'claude-sonnet-4',
306
+ 'claude-sonnet-4-5',
307
+ 'code-supernova',
308
+ 'glm-4.6',
309
+ 'gpt-5',
310
+ 'gpt-5-codex',
311
+ 'grok-code',
312
+ 'kimi-k2',
313
+ 'qwen3-coder',
314
+ ];
315
+ readonly fastrouter: readonly [
316
+ 'anthropic/claude-opus-4.1',
317
+ 'anthropic/claude-sonnet-4',
318
+ 'deepseek-ai/deepseek-r1-distill-llama-70b',
319
+ 'google/gemini-2.5-flash',
320
+ 'google/gemini-2.5-pro',
321
+ 'moonshotai/kimi-k2',
322
+ 'openai/gpt-4.1',
323
+ 'openai/gpt-5',
324
+ 'openai/gpt-5-mini',
325
+ 'openai/gpt-5-nano',
326
+ 'openai/gpt-oss-120b',
327
+ 'openai/gpt-oss-20b',
328
+ 'qwen/qwen3-coder',
329
+ 'x-ai/grok-4',
330
+ ];
331
+ readonly google: readonly [
332
+ 'gemini-1.5-flash',
333
+ 'gemini-1.5-flash-8b',
334
+ 'gemini-1.5-pro',
335
+ 'gemini-2.0-flash',
336
+ 'gemini-2.0-flash-lite',
337
+ 'gemini-2.5-flash',
338
+ 'gemini-2.5-flash-lite',
339
+ 'gemini-2.5-flash-lite-preview-06-17',
340
+ 'gemini-2.5-flash-lite-preview-09-2025',
341
+ 'gemini-2.5-flash-preview-04-17',
342
+ 'gemini-2.5-flash-preview-05-20',
343
+ 'gemini-2.5-flash-preview-09-2025',
344
+ 'gemini-2.5-pro',
345
+ 'gemini-2.5-pro-preview-05-06',
346
+ 'gemini-2.5-pro-preview-06-05',
347
+ 'gemini-flash-latest',
348
+ 'gemini-flash-lite-latest',
349
+ 'gemini-live-2.5-flash-preview-native-audio',
350
+ ];
351
+ readonly inception: readonly ['mercury', 'mercury-coder'];
352
+ readonly wandb: readonly [
353
+ 'Qwen/Qwen3-235B-A22B-Instruct-2507',
354
+ 'Qwen/Qwen3-235B-A22B-Thinking-2507',
355
+ 'Qwen/Qwen3-Coder-480B-A35B-Instruct',
356
+ 'deepseek-ai/DeepSeek-R1-0528',
357
+ 'deepseek-ai/DeepSeek-V3-0324',
358
+ 'meta-llama/Llama-3.1-8B-Instruct',
359
+ 'meta-llama/Llama-3.3-70B-Instruct',
360
+ 'meta-llama/Llama-4-Scout-17B-16E-Instruct',
361
+ 'microsoft/Phi-4-mini-instruct',
362
+ 'moonshotai/Kimi-K2-Instruct',
363
+ ];
364
+ readonly openai: readonly [
365
+ 'codex-mini-latest',
366
+ 'gpt-3.5-turbo',
367
+ 'gpt-4',
368
+ 'gpt-4-turbo',
369
+ 'gpt-4.1',
370
+ 'gpt-4.1-mini',
371
+ 'gpt-4.1-nano',
372
+ 'gpt-4o',
373
+ 'gpt-4o-2024-05-13',
374
+ 'gpt-4o-2024-08-06',
375
+ 'gpt-4o-2024-11-20',
376
+ 'gpt-4o-mini',
377
+ 'gpt-5',
378
+ 'gpt-5-chat-latest',
379
+ 'gpt-5-codex',
380
+ 'gpt-5-mini',
381
+ 'gpt-5-nano',
382
+ 'o1',
383
+ 'o1-mini',
384
+ 'o1-preview',
385
+ 'o1-pro',
386
+ 'o3',
387
+ 'o3-deep-research',
388
+ 'o3-mini',
389
+ 'o3-pro',
390
+ 'o4-mini',
391
+ 'o4-mini-deep-research',
392
+ ];
393
+ readonly 'zhipuai-coding-plan': readonly ['glm-4.5', 'glm-4.5-air', 'glm-4.5-flash', 'glm-4.5v', 'glm-4.6'];
394
+ readonly perplexity: readonly ['sonar', 'sonar-pro', 'sonar-reasoning', 'sonar-reasoning-pro'];
395
+ readonly openrouter: readonly [
396
+ 'anthropic/claude-3.5-haiku',
397
+ 'anthropic/claude-3.7-sonnet',
398
+ 'anthropic/claude-opus-4',
399
+ 'anthropic/claude-opus-4.1',
400
+ 'anthropic/claude-sonnet-4',
401
+ 'anthropic/claude-sonnet-4.5',
402
+ 'cognitivecomputations/dolphin3.0-mistral-24b',
403
+ 'cognitivecomputations/dolphin3.0-r1-mistral-24b',
404
+ 'deepseek/deepseek-chat-v3-0324',
405
+ 'deepseek/deepseek-chat-v3.1',
406
+ 'deepseek/deepseek-r1-0528-qwen3-8b:free',
407
+ 'deepseek/deepseek-r1-0528:free',
408
+ 'deepseek/deepseek-r1-distill-llama-70b',
409
+ 'deepseek/deepseek-r1-distill-qwen-14b',
410
+ 'deepseek/deepseek-r1:free',
411
+ 'deepseek/deepseek-v3-base:free',
412
+ 'deepseek/deepseek-v3.1-terminus',
413
+ 'featherless/qwerky-72b',
414
+ 'google/gemini-2.0-flash-001',
415
+ 'google/gemini-2.0-flash-exp:free',
416
+ 'google/gemini-2.5-flash',
417
+ 'google/gemini-2.5-pro',
418
+ 'google/gemini-2.5-pro-preview-05-06',
419
+ 'google/gemini-2.5-pro-preview-06-05',
420
+ 'google/gemma-2-9b-it:free',
421
+ 'google/gemma-3-12b-it',
422
+ 'google/gemma-3-27b-it',
423
+ 'google/gemma-3n-e4b-it',
424
+ 'google/gemma-3n-e4b-it:free',
425
+ 'meta-llama/llama-3.2-11b-vision-instruct',
426
+ 'meta-llama/llama-3.3-70b-instruct:free',
427
+ 'meta-llama/llama-4-scout:free',
428
+ 'microsoft/mai-ds-r1:free',
429
+ 'mistralai/codestral-2508',
430
+ 'mistralai/devstral-medium-2507',
431
+ 'mistralai/devstral-small-2505',
432
+ 'mistralai/devstral-small-2505:free',
433
+ 'mistralai/devstral-small-2507',
434
+ 'mistralai/mistral-7b-instruct:free',
435
+ 'mistralai/mistral-medium-3',
436
+ 'mistralai/mistral-medium-3.1',
437
+ 'mistralai/mistral-nemo:free',
438
+ 'mistralai/mistral-small-3.1-24b-instruct',
439
+ 'mistralai/mistral-small-3.2-24b-instruct',
440
+ 'mistralai/mistral-small-3.2-24b-instruct:free',
441
+ 'moonshotai/kimi-dev-72b:free',
442
+ 'moonshotai/kimi-k2',
443
+ 'moonshotai/kimi-k2-0905',
444
+ 'moonshotai/kimi-k2:free',
445
+ 'nousresearch/deephermes-3-llama-3-8b-preview',
446
+ 'nousresearch/hermes-4-405b',
447
+ 'nousresearch/hermes-4-70b',
448
+ 'openai/gpt-4.1',
449
+ 'openai/gpt-4.1-mini',
450
+ 'openai/gpt-4o-mini',
451
+ 'openai/gpt-5',
452
+ 'openai/gpt-5-chat',
453
+ 'openai/gpt-5-codex',
454
+ 'openai/gpt-5-mini',
455
+ 'openai/gpt-5-nano',
456
+ 'openai/gpt-oss-120b',
457
+ 'openai/gpt-oss-20b',
458
+ 'openai/o4-mini',
459
+ 'openrouter/cypher-alpha:free',
460
+ 'openrouter/horizon-alpha',
461
+ 'openrouter/horizon-beta',
462
+ 'openrouter/sonoma-dusk-alpha',
463
+ 'openrouter/sonoma-sky-alpha',
464
+ 'qwen/qwen-2.5-coder-32b-instruct',
465
+ 'qwen/qwen2.5-vl-32b-instruct:free',
466
+ 'qwen/qwen2.5-vl-72b-instruct',
467
+ 'qwen/qwen2.5-vl-72b-instruct:free',
468
+ 'qwen/qwen3-14b:free',
469
+ 'qwen/qwen3-235b-a22b-07-25',
470
+ 'qwen/qwen3-235b-a22b-07-25:free',
471
+ 'qwen/qwen3-235b-a22b-thinking-2507',
472
+ 'qwen/qwen3-235b-a22b:free',
473
+ 'qwen/qwen3-30b-a3b-instruct-2507',
474
+ 'qwen/qwen3-30b-a3b:free',
475
+ 'qwen/qwen3-32b:free',
476
+ 'qwen/qwen3-8b:free',
477
+ 'qwen/qwen3-coder',
478
+ 'qwen/qwen3-coder:free',
479
+ 'qwen/qwen3-max',
480
+ 'qwen/qwen3-next-80b-a3b-instruct',
481
+ 'qwen/qwq-32b:free',
482
+ 'rekaai/reka-flash-3',
483
+ 'sarvamai/sarvam-m:free',
484
+ 'thudm/glm-z1-32b:free',
485
+ 'tngtech/deepseek-r1t2-chimera:free',
486
+ 'x-ai/grok-3',
487
+ 'x-ai/grok-3-beta',
488
+ 'x-ai/grok-3-mini',
489
+ 'x-ai/grok-3-mini-beta',
490
+ 'x-ai/grok-4',
491
+ 'x-ai/grok-4-fast',
492
+ 'x-ai/grok-4-fast:free',
493
+ 'x-ai/grok-code-fast-1',
494
+ 'z-ai/glm-4.5',
495
+ 'z-ai/glm-4.5-air',
496
+ 'z-ai/glm-4.5-air:free',
497
+ 'z-ai/glm-4.5v',
498
+ 'z-ai/glm-4.6',
499
+ ];
500
+ readonly synthetic: readonly [
501
+ 'hf:Qwen/Qwen2.5-Coder-32B-Instruct',
502
+ 'hf:Qwen/Qwen3-235B-A22B-Instruct-2507',
503
+ 'hf:Qwen/Qwen3-235B-A22B-Thinking-2507',
504
+ 'hf:Qwen/Qwen3-Coder-480B-A35B-Instruct',
505
+ 'hf:deepseek-ai/DeepSeek-R1',
506
+ 'hf:deepseek-ai/DeepSeek-R1-0528',
507
+ 'hf:deepseek-ai/DeepSeek-V3',
508
+ 'hf:deepseek-ai/DeepSeek-V3-0324',
509
+ 'hf:deepseek-ai/DeepSeek-V3.1',
510
+ 'hf:deepseek-ai/DeepSeek-V3.1-Terminus',
511
+ 'hf:meta-llama/Llama-3.1-405B-Instruct',
512
+ 'hf:meta-llama/Llama-3.1-70B-Instruct',
513
+ 'hf:meta-llama/Llama-3.1-8B-Instruct',
514
+ 'hf:meta-llama/Llama-3.3-70B-Instruct',
515
+ 'hf:meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8',
516
+ 'hf:meta-llama/Llama-4-Scout-17B-16E-Instruct',
517
+ 'hf:moonshotai/Kimi-K2-Instruct',
518
+ 'hf:moonshotai/Kimi-K2-Instruct-0905',
519
+ 'hf:openai/gpt-oss-120b',
520
+ 'hf:zai-org/GLM-4.5',
521
+ 'hf:zai-org/GLM-4.6',
522
+ ];
523
+ readonly deepinfra: readonly [
524
+ 'Qwen/Qwen3-Coder-480B-A35B-Instruct',
525
+ 'Qwen/Qwen3-Coder-480B-A35B-Instruct-Turbo',
526
+ 'moonshotai/Kimi-K2-Instruct',
527
+ 'zai-org/GLM-4.5',
528
+ ];
529
+ readonly zhipuai: readonly ['glm-4.5', 'glm-4.5-air', 'glm-4.5-flash', 'glm-4.5v', 'glm-4.6'];
530
+ readonly submodel: readonly [
531
+ 'Qwen/Qwen3-235B-A22B-Instruct-2507',
532
+ 'Qwen/Qwen3-235B-A22B-Thinking-2507',
533
+ 'Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8',
534
+ 'deepseek-ai/DeepSeek-R1-0528',
535
+ 'deepseek-ai/DeepSeek-V3-0324',
536
+ 'deepseek-ai/DeepSeek-V3.1',
537
+ 'openai/gpt-oss-120b',
538
+ 'zai-org/GLM-4.5-Air',
539
+ 'zai-org/GLM-4.5-FP8',
540
+ ];
541
+ readonly zai: readonly ['glm-4.5', 'glm-4.5-air', 'glm-4.5-flash', 'glm-4.5v', 'glm-4.6'];
542
+ readonly inference: readonly [
543
+ 'google/gemma-3',
544
+ 'meta/llama-3.1-8b-instruct',
545
+ 'meta/llama-3.2-11b-vision-instruct',
546
+ 'meta/llama-3.2-1b-instruct',
547
+ 'meta/llama-3.2-3b-instruct',
548
+ 'mistral/mistral-nemo-12b-instruct',
549
+ 'osmosis/osmosis-structure-0.6b',
550
+ 'qwen/qwen-2.5-7b-vision-instruct',
551
+ 'qwen/qwen3-embedding-4b',
552
+ ];
553
+ readonly requesty: readonly [
554
+ 'anthropic/claude-3-7-sonnet',
555
+ 'anthropic/claude-4-sonnet-20250522',
556
+ 'anthropic/claude-opus-4',
557
+ 'anthropic/claude-opus-4-1-20250805',
558
+ 'google/gemini-2.5-flash',
559
+ 'google/gemini-2.5-pro',
560
+ 'openai/gpt-4.1',
561
+ 'openai/gpt-4.1-mini',
562
+ 'openai/gpt-4o-mini',
563
+ 'openai/gpt-5',
564
+ 'openai/gpt-5-mini',
565
+ 'openai/gpt-5-nano',
566
+ 'openai/o4-mini',
567
+ ];
568
+ readonly morph: readonly ['auto', 'morph-v3-fast', 'morph-v3-large'];
569
+ readonly lmstudio: readonly ['openai/gpt-oss-20b', 'qwen/qwen3-30b-a3b-2507', 'qwen/qwen3-coder-30b'];
570
+ readonly anthropic: readonly [
571
+ 'claude-3-5-haiku-20241022',
572
+ 'claude-3-5-sonnet-20240620',
573
+ 'claude-3-5-sonnet-20241022',
574
+ 'claude-3-7-sonnet-20250219',
575
+ 'claude-3-haiku-20240307',
576
+ 'claude-3-opus-20240229',
577
+ 'claude-3-sonnet-20240229',
578
+ 'claude-opus-4-1-20250805',
579
+ 'claude-opus-4-20250514',
580
+ 'claude-sonnet-4-20250514',
581
+ 'claude-sonnet-4-5-20250929',
582
+ ];
583
+ readonly 'fireworks-ai': readonly [
584
+ 'accounts/fireworks/models/deepseek-r1-0528',
585
+ 'accounts/fireworks/models/deepseek-v3-0324',
586
+ 'accounts/fireworks/models/deepseek-v3p1',
587
+ 'accounts/fireworks/models/glm-4p5',
588
+ 'accounts/fireworks/models/glm-4p5-air',
589
+ 'accounts/fireworks/models/gpt-oss-120b',
590
+ 'accounts/fireworks/models/gpt-oss-20b',
591
+ 'accounts/fireworks/models/kimi-k2-instruct',
592
+ 'accounts/fireworks/models/qwen3-235b-a22b',
593
+ 'accounts/fireworks/models/qwen3-coder-480b-a35b-instruct',
594
+ ];
595
+ readonly modelscope: readonly [
596
+ 'Qwen/Qwen3-235B-A22B-Instruct-2507',
597
+ 'Qwen/Qwen3-235B-A22B-Thinking-2507',
598
+ 'Qwen/Qwen3-30B-A3B-Instruct-2507',
599
+ 'Qwen/Qwen3-30B-A3B-Thinking-2507',
600
+ 'Qwen/Qwen3-Coder-30B-A3B-Instruct',
601
+ 'Qwen/Qwen3-Coder-480B-A35B-Instruct',
602
+ 'ZhipuAI/GLM-4.5',
603
+ ];
604
+ readonly llama: readonly [
605
+ 'cerebras-llama-4-maverick-17b-128e-instruct',
606
+ 'cerebras-llama-4-scout-17b-16e-instruct',
607
+ 'groq-llama-4-maverick-17b-128e-instruct',
608
+ 'llama-3.3-70b-instruct',
609
+ 'llama-3.3-8b-instruct',
610
+ 'llama-4-maverick-17b-128e-instruct-fp8',
611
+ 'llama-4-scout-17b-16e-instruct-fp8',
612
+ ];
613
+ readonly cerebras: readonly ['gpt-oss-120b', 'qwen-3-235b-a22b-instruct-2507', 'qwen-3-coder-480b'];
614
+ readonly netlify: readonly [
615
+ 'anthropic/claude-3-5-haiku-20241022',
616
+ 'anthropic/claude-3-5-haiku-latest',
617
+ 'anthropic/claude-3-7-sonnet-20250219',
618
+ 'anthropic/claude-3-7-sonnet-latest',
619
+ 'anthropic/claude-3-haiku-20240307',
620
+ 'anthropic/claude-opus-4-1-20250805',
621
+ 'anthropic/claude-opus-4-20250514',
622
+ 'anthropic/claude-sonnet-4-20250514',
623
+ 'anthropic/claude-sonnet-4-5-20250929',
624
+ 'gemini/gemini-2.0-flash',
625
+ 'gemini/gemini-2.0-flash-lite',
626
+ 'gemini/gemini-2.5-flash',
627
+ 'gemini/gemini-2.5-flash-image-preview',
628
+ 'gemini/gemini-2.5-flash-lite',
629
+ 'gemini/gemini-2.5-flash-lite-preview-09-2025',
630
+ 'gemini/gemini-2.5-flash-preview-09-2025',
631
+ 'gemini/gemini-2.5-pro',
632
+ 'gemini/gemini-flash-latest',
633
+ 'gemini/gemini-flash-lite-latest',
634
+ 'openai/codex-mini-latest',
635
+ 'openai/gpt-4.1',
636
+ 'openai/gpt-4.1-mini',
637
+ 'openai/gpt-4.1-nano',
638
+ 'openai/gpt-4o',
639
+ 'openai/gpt-4o-mini',
640
+ 'openai/gpt-5',
641
+ 'openai/gpt-5-codex',
642
+ 'openai/gpt-5-mini',
643
+ 'openai/gpt-5-nano',
644
+ 'openai/gpt-5-pro',
645
+ 'openai/o3',
646
+ 'openai/o3-mini',
647
+ 'openai/o4-mini',
648
+ ];
649
+ };
650
+
651
+ /**
652
+ * Union type of all registered provider IDs
653
+ */
654
+ export type Provider = keyof ProviderModelsMap;
655
+
656
+ /**
657
+ * Provider models mapping interface
658
+ */
659
+ export interface ProviderModels {
660
+ [key: string]: string[];
661
+ }
662
+
663
+ /**
664
+ * OpenAI-compatible model ID type
665
+ * Dynamically derived from ProviderModelsMap
666
+ * Full provider/model paths (e.g., "openai/gpt-4o", "anthropic/claude-3-5-sonnet-20241022")
667
+ */
668
+ export type ModelRouterModelId =
669
+ | {
670
+ [P in Provider]: `${P}/${ProviderModelsMap[P][number]}`;
671
+ }[Provider]
672
+ | (string & {});
673
+
674
+ /**
675
+ * Extract the model part from a ModelRouterModelId for a specific provider
676
+ * Dynamically derived from ProviderModelsMap
677
+ * Example: ModelForProvider<'openai'> = 'gpt-4o' | 'gpt-4-turbo' | ...
678
+ */
679
+ export type ModelForProvider<P extends Provider> = ProviderModelsMap[P][number];