@mastra/core 0.21.1 → 0.22.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 (277) hide show
  1. package/CHANGELOG.md +121 -0
  2. package/dist/agent/__tests__/mock-model.d.ts +6 -0
  3. package/dist/agent/__tests__/mock-model.d.ts.map +1 -0
  4. package/dist/agent/agent.d.ts +10 -4
  5. package/dist/agent/agent.d.ts.map +1 -1
  6. package/dist/agent/agent.types.d.ts +4 -3
  7. package/dist/agent/agent.types.d.ts.map +1 -1
  8. package/dist/agent/index.cjs +13 -13
  9. package/dist/agent/index.js +2 -2
  10. package/dist/agent/input-processor/index.cjs +6 -6
  11. package/dist/agent/input-processor/index.js +1 -1
  12. package/dist/agent/message-list/index.d.ts +14 -1
  13. package/dist/agent/message-list/index.d.ts.map +1 -1
  14. package/dist/agent/message-list/utils/ai-v5/gemini-compatibility.d.ts +22 -0
  15. package/dist/agent/message-list/utils/ai-v5/gemini-compatibility.d.ts.map +1 -0
  16. package/dist/agent/test-utils.d.ts +1 -0
  17. package/dist/agent/test-utils.d.ts.map +1 -1
  18. package/dist/agent/types.d.ts +11 -1
  19. package/dist/agent/types.d.ts.map +1 -1
  20. package/dist/agent/utils.d.ts +1 -1
  21. package/dist/agent/utils.d.ts.map +1 -1
  22. package/dist/agent/workflows/prepare-stream/index.d.ts +7 -4
  23. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -1
  24. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +7 -4
  25. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts.map +1 -1
  26. package/dist/agent/workflows/prepare-stream/schema.d.ts +4 -4
  27. package/dist/agent/workflows/prepare-stream/stream-step.d.ts +3 -0
  28. package/dist/agent/workflows/prepare-stream/stream-step.d.ts.map +1 -1
  29. package/dist/ai-tracing/chunk-tracing.d.ts +76 -0
  30. package/dist/ai-tracing/chunk-tracing.d.ts.map +1 -0
  31. package/dist/ai-tracing/exporters/base.d.ts +111 -0
  32. package/dist/ai-tracing/exporters/base.d.ts.map +1 -0
  33. package/dist/ai-tracing/exporters/cloud.d.ts +6 -8
  34. package/dist/ai-tracing/exporters/cloud.d.ts.map +1 -1
  35. package/dist/ai-tracing/exporters/console.d.ts +6 -6
  36. package/dist/ai-tracing/exporters/console.d.ts.map +1 -1
  37. package/dist/ai-tracing/exporters/index.d.ts +1 -0
  38. package/dist/ai-tracing/exporters/index.d.ts.map +1 -1
  39. package/dist/ai-tracing/index.cjs +48 -32
  40. package/dist/ai-tracing/index.d.ts +1 -0
  41. package/dist/ai-tracing/index.d.ts.map +1 -1
  42. package/dist/ai-tracing/index.js +1 -1
  43. package/dist/ai-tracing/spans/base.d.ts +4 -1
  44. package/dist/ai-tracing/spans/base.d.ts.map +1 -1
  45. package/dist/ai-tracing/spans/default.d.ts.map +1 -1
  46. package/dist/ai-tracing/tracers/base.d.ts +15 -1
  47. package/dist/ai-tracing/tracers/base.d.ts.map +1 -1
  48. package/dist/ai-tracing/types.d.ts +85 -11
  49. package/dist/ai-tracing/types.d.ts.map +1 -1
  50. package/dist/ai-tracing/utils.d.ts +14 -0
  51. package/dist/ai-tracing/utils.d.ts.map +1 -1
  52. package/dist/{chunk-FESSBG5D.cjs → chunk-34L2Z6PH.cjs} +12 -12
  53. package/dist/{chunk-FESSBG5D.cjs.map → chunk-34L2Z6PH.cjs.map} +1 -1
  54. package/dist/{chunk-3V4O35FO.js → chunk-3CVE7NQC.js} +729 -268
  55. package/dist/chunk-3CVE7NQC.js.map +1 -0
  56. package/dist/{chunk-44ODA6L3.cjs → chunk-5GIAZ3CH.cjs} +736 -271
  57. package/dist/chunk-5GIAZ3CH.cjs.map +1 -0
  58. package/dist/{chunk-5DZ4RYWL.js → chunk-5NYWRAJN.js} +3 -3
  59. package/dist/{chunk-5DZ4RYWL.js.map → chunk-5NYWRAJN.js.map} +1 -1
  60. package/dist/{chunk-APY2BE4K.cjs → chunk-634YFL42.cjs} +75 -49
  61. package/dist/chunk-634YFL42.cjs.map +1 -0
  62. package/dist/{chunk-HP7B2TQQ.js → chunk-A3TQYIIR.js} +198 -37
  63. package/dist/chunk-A3TQYIIR.js.map +1 -0
  64. package/dist/{chunk-KAV4EP3T.cjs → chunk-A4B6IAKN.cjs} +4 -4
  65. package/dist/{chunk-KAV4EP3T.cjs.map → chunk-A4B6IAKN.cjs.map} +1 -1
  66. package/dist/{chunk-T3PBU7JK.js → chunk-AGD5B3FB.js} +74 -48
  67. package/dist/chunk-AGD5B3FB.js.map +1 -0
  68. package/dist/{chunk-AJK7QPSD.cjs → chunk-CAZTWPDK.cjs} +11 -11
  69. package/dist/{chunk-AJK7QPSD.cjs.map → chunk-CAZTWPDK.cjs.map} +1 -1
  70. package/dist/{chunk-HBJVAMCS.js → chunk-F7OMDF5K.js} +93 -58
  71. package/dist/chunk-F7OMDF5K.js.map +1 -0
  72. package/dist/{chunk-DGQW5VRR.cjs → chunk-FMNZ3BPT.cjs} +202 -40
  73. package/dist/chunk-FMNZ3BPT.cjs.map +1 -0
  74. package/dist/{chunk-5NR2GY4U.js → chunk-GB5BIA4V.js} +5 -3
  75. package/dist/chunk-GB5BIA4V.js.map +1 -0
  76. package/dist/{chunk-A3QHQYMC.js → chunk-HGNRQ3OG.js} +12 -2
  77. package/dist/chunk-HGNRQ3OG.js.map +1 -0
  78. package/dist/{chunk-NHKXTGR6.js → chunk-HZIF7HQC.js} +3 -3
  79. package/dist/{chunk-NHKXTGR6.js.map → chunk-HZIF7HQC.js.map} +1 -1
  80. package/dist/{chunk-MUAFIPD7.js → chunk-ITFEGBP2.js} +4 -4
  81. package/dist/{chunk-MUAFIPD7.js.map → chunk-ITFEGBP2.js.map} +1 -1
  82. package/dist/{chunk-J2OKI2L3.js → chunk-KQBF5ZEN.js} +10 -5
  83. package/dist/chunk-KQBF5ZEN.js.map +1 -0
  84. package/dist/chunk-LJFJTTZQ.cjs +4 -0
  85. package/dist/chunk-LJFJTTZQ.cjs.map +1 -0
  86. package/dist/{chunk-OXAN5SM7.cjs → chunk-LRSB62Z6.cjs} +12 -2
  87. package/dist/chunk-LRSB62Z6.cjs.map +1 -0
  88. package/dist/{chunk-3ORA5EFD.cjs → chunk-LZUSZT7R.cjs} +5 -3
  89. package/dist/chunk-LZUSZT7R.cjs.map +1 -0
  90. package/dist/{chunk-U6CUPKV2.js → chunk-MHICZASQ.js} +5 -5
  91. package/dist/{chunk-U6CUPKV2.js.map → chunk-MHICZASQ.js.map} +1 -1
  92. package/dist/{chunk-H4KO46HZ.js → chunk-MKCC5K77.js} +3 -3
  93. package/dist/{chunk-H4KO46HZ.js.map → chunk-MKCC5K77.js.map} +1 -1
  94. package/dist/{chunk-W3DS6F6G.cjs → chunk-O4KVF3MI.cjs} +4 -4
  95. package/dist/{chunk-W3DS6F6G.cjs.map → chunk-O4KVF3MI.cjs.map} +1 -1
  96. package/dist/{chunk-462DRETM.cjs → chunk-QBPTDMR7.cjs} +121 -85
  97. package/dist/chunk-QBPTDMR7.cjs.map +1 -0
  98. package/dist/{chunk-XVREJCOW.cjs → chunk-RWWOJXMF.cjs} +6 -6
  99. package/dist/{chunk-XVREJCOW.cjs.map → chunk-RWWOJXMF.cjs.map} +1 -1
  100. package/dist/{chunk-NUURZ3AY.js → chunk-RXBG6UV2.js} +7 -4
  101. package/dist/chunk-RXBG6UV2.js.map +1 -0
  102. package/dist/{chunk-F6BMIPYW.js → chunk-SF75RENF.js} +3 -3
  103. package/dist/{chunk-F6BMIPYW.js.map → chunk-SF75RENF.js.map} +1 -1
  104. package/dist/{chunk-SE4PA467.cjs → chunk-VF676YCO.cjs} +2 -2
  105. package/dist/chunk-VF676YCO.cjs.map +1 -0
  106. package/dist/{chunk-FLXB6WXO.js → chunk-VQLW7LPO.js} +5 -3
  107. package/dist/chunk-VQLW7LPO.js.map +1 -0
  108. package/dist/{chunk-6OLRLZJ3.js → chunk-WM4RO23J.js} +2 -2
  109. package/dist/chunk-WM4RO23J.js.map +1 -0
  110. package/dist/{chunk-OY6UJ3QL.cjs → chunk-YGL6E6PD.cjs} +5 -3
  111. package/dist/chunk-YGL6E6PD.cjs.map +1 -0
  112. package/dist/{chunk-XHPBKALR.cjs → chunk-YOVX3R5U.cjs} +17 -14
  113. package/dist/chunk-YOVX3R5U.cjs.map +1 -0
  114. package/dist/{chunk-L5A4MRCK.cjs → chunk-ZABG3SZ2.cjs} +4 -4
  115. package/dist/{chunk-L5A4MRCK.cjs.map → chunk-ZABG3SZ2.cjs.map} +1 -1
  116. package/dist/{chunk-BV6CD4IZ.cjs → chunk-ZDW322JC.cjs} +12 -7
  117. package/dist/chunk-ZDW322JC.cjs.map +1 -0
  118. package/dist/chunk-ZV5CC35D.js +3 -0
  119. package/dist/chunk-ZV5CC35D.js.map +1 -0
  120. package/dist/index.cjs +56 -52
  121. package/dist/index.js +11 -11
  122. package/dist/integration/index.cjs +3 -3
  123. package/dist/integration/index.js +1 -1
  124. package/dist/llm/index.cjs +10 -6
  125. package/dist/llm/index.d.ts +1 -0
  126. package/dist/llm/index.d.ts.map +1 -1
  127. package/dist/llm/index.js +1 -1
  128. package/dist/llm/model/embedding-router.d.ts +50 -0
  129. package/dist/llm/model/embedding-router.d.ts.map +1 -0
  130. package/dist/llm/model/gateways/models-dev.d.ts.map +1 -1
  131. package/dist/llm/model/gateways/netlify.d.ts.map +1 -1
  132. package/dist/llm/model/index.d.ts +1 -0
  133. package/dist/llm/model/index.d.ts.map +1 -1
  134. package/dist/llm/model/model.loop.d.ts +1 -1
  135. package/dist/llm/model/model.loop.d.ts.map +1 -1
  136. package/dist/llm/model/provider-options.d.ts +42 -0
  137. package/dist/llm/model/provider-options.d.ts.map +1 -0
  138. package/dist/llm/model/provider-types.generated.d.ts +30 -3
  139. package/dist/llm/model/router.d.ts.map +1 -1
  140. package/dist/loop/index.cjs +2 -2
  141. package/dist/loop/index.js +1 -1
  142. package/dist/loop/loop.d.ts.map +1 -1
  143. package/dist/loop/network/index.d.ts +4 -1
  144. package/dist/loop/network/index.d.ts.map +1 -1
  145. package/dist/loop/test-utils/fullStream.d.ts.map +1 -1
  146. package/dist/loop/test-utils/generateText.d.ts.map +1 -1
  147. package/dist/loop/test-utils/mock-server-response.d.ts +7 -2
  148. package/dist/loop/test-utils/mock-server-response.d.ts.map +1 -1
  149. package/dist/loop/test-utils/options.d.ts.map +1 -1
  150. package/dist/loop/test-utils/resultObject.d.ts.map +1 -1
  151. package/dist/loop/test-utils/streamObject.d.ts.map +1 -1
  152. package/dist/loop/test-utils/telemetry.d.ts.map +1 -1
  153. package/dist/loop/test-utils/textStream.d.ts.map +1 -1
  154. package/dist/loop/test-utils/toUIMessageStream.d.ts.map +1 -1
  155. package/dist/loop/test-utils/tools.d.ts.map +1 -1
  156. package/dist/loop/test-utils/utils.d.ts +2 -0
  157. package/dist/loop/test-utils/utils.d.ts.map +1 -1
  158. package/dist/loop/types.d.ts +2 -1
  159. package/dist/loop/types.d.ts.map +1 -1
  160. package/dist/loop/workflows/agentic-execution/index.d.ts +42 -42
  161. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +28 -28
  162. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
  163. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +14 -14
  164. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts +1 -1
  165. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -1
  166. package/dist/loop/workflows/agentic-loop/index.d.ts +42 -42
  167. package/dist/loop/workflows/schema.d.ts +14 -14
  168. package/dist/mastra/index.cjs +2 -2
  169. package/dist/mastra/index.js +1 -1
  170. package/dist/memory/index.cjs +4 -4
  171. package/dist/memory/index.js +1 -1
  172. package/dist/memory/memory.d.ts +3 -2
  173. package/dist/memory/memory.d.ts.map +1 -1
  174. package/dist/memory/types.d.ts +10 -1
  175. package/dist/memory/types.d.ts.map +1 -1
  176. package/dist/models-dev-4VGIWYS3.js +3 -0
  177. package/dist/{models-dev-3VEABUH4.js.map → models-dev-4VGIWYS3.js.map} +1 -1
  178. package/dist/models-dev-AXZASLL2.cjs +12 -0
  179. package/dist/{models-dev-L42ORGVT.cjs.map → models-dev-AXZASLL2.cjs.map} +1 -1
  180. package/dist/netlify-26MMY5X4.js +3 -0
  181. package/dist/{netlify-NYFKA6UB.js.map → netlify-26MMY5X4.js.map} +1 -1
  182. package/dist/netlify-F3MVGV4Y.cjs +12 -0
  183. package/dist/{netlify-3B6HDHRP.cjs.map → netlify-F3MVGV4Y.cjs.map} +1 -1
  184. package/dist/processors/index.cjs +11 -11
  185. package/dist/processors/index.js +1 -1
  186. package/dist/provider-registry.json +62 -8
  187. package/dist/relevance/index.cjs +4 -4
  188. package/dist/relevance/index.js +1 -1
  189. package/dist/scores/index.cjs +9 -9
  190. package/dist/scores/index.js +2 -2
  191. package/dist/scores/scoreTraces/index.cjs +8 -8
  192. package/dist/scores/scoreTraces/index.js +3 -3
  193. package/dist/storage/domains/workflows/inmemory.d.ts.map +1 -1
  194. package/dist/storage/index.cjs +5 -3
  195. package/dist/storage/index.cjs.map +1 -1
  196. package/dist/storage/index.js +3 -1
  197. package/dist/storage/index.js.map +1 -1
  198. package/dist/stream/RunOutput.d.ts +72 -0
  199. package/dist/stream/RunOutput.d.ts.map +1 -0
  200. package/dist/stream/aisdk/v5/execute.d.ts.map +1 -1
  201. package/dist/stream/aisdk/v5/output.d.ts +11 -12
  202. package/dist/stream/aisdk/v5/output.d.ts.map +1 -1
  203. package/dist/stream/base/base.d.ts +7 -0
  204. package/dist/stream/base/base.d.ts.map +1 -0
  205. package/dist/stream/base/consume-stream.d.ts +5 -0
  206. package/dist/stream/base/consume-stream.d.ts.map +1 -0
  207. package/dist/stream/base/output-format-handlers.d.ts +1 -2
  208. package/dist/stream/base/output-format-handlers.d.ts.map +1 -1
  209. package/dist/stream/base/output.d.ts.map +1 -1
  210. package/dist/stream/index.cjs +14 -10
  211. package/dist/stream/index.d.ts +2 -1
  212. package/dist/stream/index.d.ts.map +1 -1
  213. package/dist/stream/index.js +2 -2
  214. package/dist/stream/types.d.ts +18 -2
  215. package/dist/stream/types.d.ts.map +1 -1
  216. package/dist/test-utils/llm-mock.cjs +2 -2
  217. package/dist/test-utils/llm-mock.js +1 -1
  218. package/dist/tools/index.cjs +6 -6
  219. package/dist/tools/index.js +2 -2
  220. package/dist/tools/is-vercel-tool.cjs +2 -2
  221. package/dist/tools/is-vercel-tool.js +1 -1
  222. package/dist/tools/stream.d.ts +7 -0
  223. package/dist/tools/stream.d.ts.map +1 -1
  224. package/dist/tools/tool-builder/builder.d.ts +75 -2
  225. package/dist/tools/tool-builder/builder.d.ts.map +1 -1
  226. package/dist/tools/tool.d.ts +2 -2
  227. package/dist/tools/tool.d.ts.map +1 -1
  228. package/dist/tools/types.d.ts +17 -12
  229. package/dist/tools/types.d.ts.map +1 -1
  230. package/dist/utils.cjs +17 -17
  231. package/dist/utils.d.ts +1 -0
  232. package/dist/utils.d.ts.map +1 -1
  233. package/dist/utils.js +1 -1
  234. package/dist/workflows/default.d.ts +1 -0
  235. package/dist/workflows/default.d.ts.map +1 -1
  236. package/dist/workflows/evented/index.cjs +10 -10
  237. package/dist/workflows/evented/index.js +1 -1
  238. package/dist/workflows/evented/workflow-event-processor/index.d.ts.map +1 -1
  239. package/dist/workflows/evented/workflow.d.ts +5 -3
  240. package/dist/workflows/evented/workflow.d.ts.map +1 -1
  241. package/dist/workflows/index.cjs +12 -12
  242. package/dist/workflows/index.js +1 -1
  243. package/dist/workflows/legacy/index.cjs +22 -22
  244. package/dist/workflows/legacy/index.js +1 -1
  245. package/dist/workflows/legacy/machine.d.ts +1 -1
  246. package/dist/workflows/step.d.ts +4 -1
  247. package/dist/workflows/step.d.ts.map +1 -1
  248. package/dist/workflows/types.d.ts +1 -0
  249. package/dist/workflows/types.d.ts.map +1 -1
  250. package/dist/workflows/workflow.d.ts +33 -24
  251. package/dist/workflows/workflow.d.ts.map +1 -1
  252. package/package.json +15 -12
  253. package/src/llm/model/provider-types.generated.d.ts +30 -3
  254. package/dist/chunk-3ORA5EFD.cjs.map +0 -1
  255. package/dist/chunk-3V4O35FO.js.map +0 -1
  256. package/dist/chunk-44ODA6L3.cjs.map +0 -1
  257. package/dist/chunk-462DRETM.cjs.map +0 -1
  258. package/dist/chunk-5NR2GY4U.js.map +0 -1
  259. package/dist/chunk-6OLRLZJ3.js.map +0 -1
  260. package/dist/chunk-A3QHQYMC.js.map +0 -1
  261. package/dist/chunk-APY2BE4K.cjs.map +0 -1
  262. package/dist/chunk-BV6CD4IZ.cjs.map +0 -1
  263. package/dist/chunk-DGQW5VRR.cjs.map +0 -1
  264. package/dist/chunk-FLXB6WXO.js.map +0 -1
  265. package/dist/chunk-HBJVAMCS.js.map +0 -1
  266. package/dist/chunk-HP7B2TQQ.js.map +0 -1
  267. package/dist/chunk-J2OKI2L3.js.map +0 -1
  268. package/dist/chunk-NUURZ3AY.js.map +0 -1
  269. package/dist/chunk-OXAN5SM7.cjs.map +0 -1
  270. package/dist/chunk-OY6UJ3QL.cjs.map +0 -1
  271. package/dist/chunk-SE4PA467.cjs.map +0 -1
  272. package/dist/chunk-T3PBU7JK.js.map +0 -1
  273. package/dist/chunk-XHPBKALR.cjs.map +0 -1
  274. package/dist/models-dev-3VEABUH4.js +0 -3
  275. package/dist/models-dev-L42ORGVT.cjs +0 -12
  276. package/dist/netlify-3B6HDHRP.cjs +0 -12
  277. package/dist/netlify-NYFKA6UB.js +0 -3
@@ -1,15 +1,17 @@
1
1
  'use strict';
2
2
 
3
- var chunk3ORA5EFD_cjs = require('./chunk-3ORA5EFD.cjs');
4
- var chunkOY6UJ3QL_cjs = require('./chunk-OY6UJ3QL.cjs');
3
+ var chunkLZUSZT7R_cjs = require('./chunk-LZUSZT7R.cjs');
4
+ var chunkYGL6E6PD_cjs = require('./chunk-YGL6E6PD.cjs');
5
5
  var chunkGPWMM745_cjs = require('./chunk-GPWMM745.cjs');
6
6
  var chunkWM4VQWOZ_cjs = require('./chunk-WM4VQWOZ.cjs');
7
- var crypto = require('crypto');
8
- var openaiCompatibleV5 = require('@ai-sdk/openai-compatible-v5');
9
7
  var fs = require('fs');
10
8
  var module$1 = require('module');
11
9
  var os = require('os');
12
10
  var path = require('path');
11
+ var crypto = require('crypto');
12
+ var openaiCompatibleV5 = require('@ai-sdk/openai-compatible-v5');
13
+ var googleV5 = require('@ai-sdk/google-v5');
14
+ var openaiV5 = require('@ai-sdk/openai-v5');
13
15
 
14
16
  var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
15
17
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
@@ -18,24 +20,6 @@ var fs__default = /*#__PURE__*/_interopDefault(fs);
18
20
  var os__default = /*#__PURE__*/_interopDefault(os);
19
21
  var path__default = /*#__PURE__*/_interopDefault(path);
20
22
 
21
- // src/llm/model/gateways/index.ts
22
- function findGatewayForModel(gatewayId, gateways2) {
23
- const prefixedGateway = gateways2.find((g) => g.prefix && gatewayId.startsWith(`${g.prefix}/`));
24
- if (prefixedGateway) {
25
- return prefixedGateway;
26
- }
27
- const unprefixedGateways = gateways2.filter((g) => !g.prefix);
28
- for (const gateway of unprefixedGateways) {
29
- return gateway;
30
- }
31
- throw new chunkWM4VQWOZ_cjs.MastraError({
32
- id: "MODEL_ROUTER_NO_GATEWAY_FOUND",
33
- category: "USER",
34
- domain: "MODEL_ROUTER",
35
- text: `No Mastra model router gateway found for model id ${gatewayId}`
36
- });
37
- }
38
-
39
23
  // src/llm/model/provider-registry.json
40
24
  var provider_registry_default = {
41
25
  providers: {
@@ -160,6 +144,7 @@ var provider_registry_default = {
160
144
  models: [
161
145
  "black-forest-labs/flux.1-dev",
162
146
  "deepseek-ai/deepseek-v3.1",
147
+ "deepseek-ai/deepseek-v3.1-terminus",
163
148
  "google/gemma-3-27b-it",
164
149
  "microsoft/phi-4-mini-instruct",
165
150
  "moonshotai/kimi-k2-instruct",
@@ -613,7 +598,7 @@ var provider_registry_default = {
613
598
  apiKeyEnvVar: "BASETEN_API_KEY",
614
599
  apiKeyHeader: "Authorization",
615
600
  name: "Baseten",
616
- models: ["Qwen3/Qwen3-Coder-480B-A35B-Instruct", "moonshotai/Kimi-K2-Instruct-0905"],
601
+ models: ["Qwen3/Qwen3-Coder-480B-A35B-Instruct", "moonshotai/Kimi-K2-Instruct-0905", "zai-org/GLM-4.6"],
617
602
  docUrl: "https://docs.baseten.co/development/model-apis/overview",
618
603
  gateway: "models.dev"
619
604
  },
@@ -644,7 +629,8 @@ var provider_registry_default = {
644
629
  apiKeyHeader: "Authorization",
645
630
  name: "OpenCode Zen",
646
631
  models: [
647
- "an-g8x",
632
+ "an-gbt",
633
+ "big-pickle",
648
634
  "claude-3-5-haiku",
649
635
  "claude-haiku-4-5",
650
636
  "claude-opus-4-1",
@@ -805,7 +791,7 @@ var provider_registry_default = {
805
791
  models: [
806
792
  "anthropic/claude-3.5-haiku",
807
793
  "anthropic/claude-3.7-sonnet",
808
- "anthropic/claude-4.5-haiku",
794
+ "anthropic/claude-haiku-4.5",
809
795
  "anthropic/claude-opus-4",
810
796
  "anthropic/claude-opus-4.1",
811
797
  "anthropic/claude-sonnet-4",
@@ -1064,16 +1050,23 @@ var provider_registry_default = {
1064
1050
  name: "Anthropic",
1065
1051
  models: [
1066
1052
  "claude-3-5-haiku-20241022",
1053
+ "claude-3-5-haiku-latest",
1067
1054
  "claude-3-5-sonnet-20240620",
1068
1055
  "claude-3-5-sonnet-20241022",
1069
1056
  "claude-3-7-sonnet-20250219",
1057
+ "claude-3-7-sonnet-latest",
1070
1058
  "claude-3-haiku-20240307",
1071
1059
  "claude-3-opus-20240229",
1072
1060
  "claude-3-sonnet-20240229",
1061
+ "claude-haiku-4-5",
1073
1062
  "claude-haiku-4-5-20251001",
1063
+ "claude-opus-4-0",
1064
+ "claude-opus-4-1",
1074
1065
  "claude-opus-4-1-20250805",
1075
1066
  "claude-opus-4-20250514",
1067
+ "claude-sonnet-4-0",
1076
1068
  "claude-sonnet-4-20250514",
1069
+ "claude-sonnet-4-5",
1077
1070
  "claude-sonnet-4-5-20250929"
1078
1071
  ],
1079
1072
  docUrl: "https://docs.anthropic.com/en/docs/about-claude/models",
@@ -1110,7 +1103,8 @@ var provider_registry_default = {
1110
1103
  "Qwen/Qwen3-30B-A3B-Instruct-2507",
1111
1104
  "Qwen/Qwen3-30B-A3B-Thinking-2507",
1112
1105
  "Qwen/Qwen3-Coder-30B-A3B-Instruct",
1113
- "ZhipuAI/GLM-4.5"
1106
+ "ZhipuAI/GLM-4.5",
1107
+ "ZhipuAI/GLM-4.6"
1114
1108
  ],
1115
1109
  docUrl: "https://modelscope.cn/docs/model-service/API-Inference/intro",
1116
1110
  gateway: "models.dev"
@@ -1132,6 +1126,27 @@ var provider_registry_default = {
1132
1126
  docUrl: "https://llama.developer.meta.com/docs/models",
1133
1127
  gateway: "models.dev"
1134
1128
  },
1129
+ scaleway: {
1130
+ url: "https://api.scaleway.ai/v1",
1131
+ apiKeyEnvVar: "SCALEWAY_API_KEY",
1132
+ apiKeyHeader: "Authorization",
1133
+ name: "Scaleway",
1134
+ models: [
1135
+ "deepseek-r1-distill-llama-70b",
1136
+ "gemma-3-27b-it",
1137
+ "gpt-oss-120b",
1138
+ "llama-3.1-8b-instruct",
1139
+ "llama-3.3-70b-instruct",
1140
+ "mistral-nemo-instruct-2407",
1141
+ "mistral-small-3.2-24b-instruct-2506",
1142
+ "pixtral-12b-2409",
1143
+ "qwen3-235b-a22b-instruct-2507",
1144
+ "qwen3-coder-30b-a3b-instruct",
1145
+ "voxtral-small-24b-2507"
1146
+ ],
1147
+ docUrl: "https://www.scaleway.com/en/docs/generative-apis/",
1148
+ gateway: "models.dev"
1149
+ },
1135
1150
  cerebras: {
1136
1151
  url: "https://api.cerebras.ai/v1",
1137
1152
  apiKeyEnvVar: "CEREBRAS_API_KEY",
@@ -1256,6 +1271,7 @@ var provider_registry_default = {
1256
1271
  nvidia: [
1257
1272
  "black-forest-labs/flux.1-dev",
1258
1273
  "deepseek-ai/deepseek-v3.1",
1274
+ "deepseek-ai/deepseek-v3.1-terminus",
1259
1275
  "google/gemma-3-27b-it",
1260
1276
  "microsoft/phi-4-mini-instruct",
1261
1277
  "moonshotai/kimi-k2-instruct",
@@ -1605,7 +1621,7 @@ var provider_registry_default = {
1605
1621
  "moonshotai/Kimi-K2-Instruct",
1606
1622
  "openai/gpt-oss-120b"
1607
1623
  ],
1608
- baseten: ["Qwen3/Qwen3-Coder-480B-A35B-Instruct", "moonshotai/Kimi-K2-Instruct-0905"],
1624
+ baseten: ["Qwen3/Qwen3-Coder-480B-A35B-Instruct", "moonshotai/Kimi-K2-Instruct-0905", "zai-org/GLM-4.6"],
1609
1625
  huggingface: [
1610
1626
  "Qwen/Qwen3-235B-A22B-Thinking-2507",
1611
1627
  "Qwen/Qwen3-Coder-480B-A35B-Instruct",
@@ -1620,7 +1636,8 @@ var provider_registry_default = {
1620
1636
  "zai-org/GLM-4.6"
1621
1637
  ],
1622
1638
  opencode: [
1623
- "an-g8x",
1639
+ "an-gbt",
1640
+ "big-pickle",
1624
1641
  "claude-3-5-haiku",
1625
1642
  "claude-haiku-4-5",
1626
1643
  "claude-opus-4-1",
@@ -1722,7 +1739,7 @@ var provider_registry_default = {
1722
1739
  openrouter: [
1723
1740
  "anthropic/claude-3.5-haiku",
1724
1741
  "anthropic/claude-3.7-sonnet",
1725
- "anthropic/claude-4.5-haiku",
1742
+ "anthropic/claude-haiku-4.5",
1726
1743
  "anthropic/claude-opus-4",
1727
1744
  "anthropic/claude-opus-4.1",
1728
1745
  "anthropic/claude-sonnet-4",
@@ -1903,16 +1920,23 @@ var provider_registry_default = {
1903
1920
  lmstudio: ["openai/gpt-oss-20b", "qwen/qwen3-30b-a3b-2507", "qwen/qwen3-coder-30b"],
1904
1921
  anthropic: [
1905
1922
  "claude-3-5-haiku-20241022",
1923
+ "claude-3-5-haiku-latest",
1906
1924
  "claude-3-5-sonnet-20240620",
1907
1925
  "claude-3-5-sonnet-20241022",
1908
1926
  "claude-3-7-sonnet-20250219",
1927
+ "claude-3-7-sonnet-latest",
1909
1928
  "claude-3-haiku-20240307",
1910
1929
  "claude-3-opus-20240229",
1911
1930
  "claude-3-sonnet-20240229",
1931
+ "claude-haiku-4-5",
1912
1932
  "claude-haiku-4-5-20251001",
1933
+ "claude-opus-4-0",
1934
+ "claude-opus-4-1",
1913
1935
  "claude-opus-4-1-20250805",
1914
1936
  "claude-opus-4-20250514",
1937
+ "claude-sonnet-4-0",
1915
1938
  "claude-sonnet-4-20250514",
1939
+ "claude-sonnet-4-5",
1916
1940
  "claude-sonnet-4-5-20250929"
1917
1941
  ],
1918
1942
  "fireworks-ai": [
@@ -1933,7 +1957,8 @@ var provider_registry_default = {
1933
1957
  "Qwen/Qwen3-30B-A3B-Instruct-2507",
1934
1958
  "Qwen/Qwen3-30B-A3B-Thinking-2507",
1935
1959
  "Qwen/Qwen3-Coder-30B-A3B-Instruct",
1936
- "ZhipuAI/GLM-4.5"
1960
+ "ZhipuAI/GLM-4.5",
1961
+ "ZhipuAI/GLM-4.6"
1937
1962
  ],
1938
1963
  llama: [
1939
1964
  "cerebras-llama-4-maverick-17b-128e-instruct",
@@ -1944,6 +1969,19 @@ var provider_registry_default = {
1944
1969
  "llama-4-maverick-17b-128e-instruct-fp8",
1945
1970
  "llama-4-scout-17b-16e-instruct-fp8"
1946
1971
  ],
1972
+ scaleway: [
1973
+ "deepseek-r1-distill-llama-70b",
1974
+ "gemma-3-27b-it",
1975
+ "gpt-oss-120b",
1976
+ "llama-3.1-8b-instruct",
1977
+ "llama-3.3-70b-instruct",
1978
+ "mistral-nemo-instruct-2407",
1979
+ "mistral-small-3.2-24b-instruct-2506",
1980
+ "pixtral-12b-2409",
1981
+ "qwen3-235b-a22b-instruct-2507",
1982
+ "qwen3-coder-30b-a3b-instruct",
1983
+ "voxtral-small-24b-2507"
1984
+ ],
1947
1985
  cerebras: ["gpt-oss-120b", "qwen-3-235b-a22b-instruct-2507", "qwen-3-coder-480b"],
1948
1986
  netlify: [
1949
1987
  "anthropic/claude-3-5-haiku-20241022",
@@ -2016,7 +2054,7 @@ function saveLastRefreshTimeToDisk(date) {
2016
2054
  }
2017
2055
  function getPackageRoot() {
2018
2056
  try {
2019
- const require2 = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('chunk-DGQW5VRR.cjs', document.baseURI).href)) || "file://");
2057
+ const require2 = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('chunk-FMNZ3BPT.cjs', document.baseURI).href)) || "file://");
2020
2058
  const packageJsonPath = require2.resolve("@mastra/core/package.json");
2021
2059
  return path__default.default.dirname(packageJsonPath);
2022
2060
  } catch {
@@ -2169,8 +2207,8 @@ var GatewayRegistry = class _GatewayRegistry {
2169
2207
  }
2170
2208
  this.isRefreshing = true;
2171
2209
  try {
2172
- const { ModelsDevGateway: ModelsDevGateway2 } = await import('./models-dev-L42ORGVT.cjs');
2173
- const { NetlifyGateway: NetlifyGateway2 } = await import('./netlify-3B6HDHRP.cjs');
2210
+ const { ModelsDevGateway: ModelsDevGateway2 } = await import('./models-dev-AXZASLL2.cjs');
2211
+ const { NetlifyGateway: NetlifyGateway2 } = await import('./netlify-F3MVGV4Y.cjs');
2174
2212
  const { fetchProvidersFromGateways, writeRegistryFiles } = await import('./registry-generator-6WVOHM2L.cjs');
2175
2213
  const gateways2 = [new ModelsDevGateway2({}), new NetlifyGateway2()];
2176
2214
  const { providers, models } = await fetchProvidersFromGateways(gateways2);
@@ -2279,11 +2317,29 @@ if (autoRefreshEnabled) {
2279
2317
  GatewayRegistry.getInstance({ useDynamicLoading: isDev }).startAutoRefresh();
2280
2318
  }
2281
2319
 
2320
+ // src/llm/model/gateways/index.ts
2321
+ function findGatewayForModel(gatewayId, gateways2) {
2322
+ const prefixedGateway = gateways2.find((g) => g.prefix && gatewayId.startsWith(`${g.prefix}/`));
2323
+ if (prefixedGateway) {
2324
+ return prefixedGateway;
2325
+ }
2326
+ const unprefixedGateways = gateways2.filter((g) => !g.prefix);
2327
+ for (const gateway of unprefixedGateways) {
2328
+ return gateway;
2329
+ }
2330
+ throw new chunkWM4VQWOZ_cjs.MastraError({
2331
+ id: "MODEL_ROUTER_NO_GATEWAY_FOUND",
2332
+ category: "USER",
2333
+ domain: "MODEL_ROUTER",
2334
+ text: `No Mastra model router gateway found for model id ${gatewayId}`
2335
+ });
2336
+ }
2337
+
2282
2338
  // src/llm/model/router.ts
2283
2339
  function getStaticProvidersByGateway(name) {
2284
2340
  return Object.fromEntries(Object.entries(PROVIDER_REGISTRY).filter(([_provider, config]) => config.gateway === name));
2285
2341
  }
2286
- var gateways = [new chunkOY6UJ3QL_cjs.NetlifyGateway(), new chunk3ORA5EFD_cjs.ModelsDevGateway(getStaticProvidersByGateway(`models.dev`))];
2342
+ var gateways = [new chunkYGL6E6PD_cjs.NetlifyGateway(), new chunkLZUSZT7R_cjs.ModelsDevGateway(getStaticProvidersByGateway(`models.dev`))];
2287
2343
  var ModelRouterLanguageModel = class _ModelRouterLanguageModel {
2288
2344
  specificationVersion = "v2";
2289
2345
  defaultObjectGenerationMode = "json";
@@ -2318,7 +2374,7 @@ var ModelRouterLanguageModel = class _ModelRouterLanguageModel {
2318
2374
  routerId: normalizedConfig.id
2319
2375
  };
2320
2376
  this.gateway = findGatewayForModel(normalizedConfig.id, gateways);
2321
- const parsed = chunk3ORA5EFD_cjs.parseModelRouterId(normalizedConfig.id, this.gateway.prefix);
2377
+ const parsed = chunkLZUSZT7R_cjs.parseModelRouterId(normalizedConfig.id, this.gateway.prefix);
2322
2378
  this.provider = parsed.providerId || "openai-compatible";
2323
2379
  if (parsed.providerId && parsed.modelId !== normalizedConfig.id) {
2324
2380
  parsedConfig.id = parsed.modelId;
@@ -2334,7 +2390,11 @@ var ModelRouterLanguageModel = class _ModelRouterLanguageModel {
2334
2390
  async doStream(options) {
2335
2391
  let apiKey;
2336
2392
  try {
2337
- apiKey = this.config.apiKey || await this.gateway.getApiKey(this.config.routerId);
2393
+ if (this.config.url) {
2394
+ apiKey = this.config.apiKey || "";
2395
+ } else {
2396
+ apiKey = this.config.apiKey || await this.gateway.getApiKey(this.config.routerId);
2397
+ }
2338
2398
  } catch (error) {
2339
2399
  return {
2340
2400
  stream: new ReadableStream({
@@ -2349,7 +2409,7 @@ var ModelRouterLanguageModel = class _ModelRouterLanguageModel {
2349
2409
  }
2350
2410
  const model = await this.resolveLanguageModel({
2351
2411
  apiKey,
2352
- ...chunk3ORA5EFD_cjs.parseModelRouterId(this.config.routerId, this.gateway.prefix)
2412
+ ...chunkLZUSZT7R_cjs.parseModelRouterId(this.config.routerId, this.gateway.prefix)
2353
2413
  });
2354
2414
  return model.doStream(options);
2355
2415
  }
@@ -2365,7 +2425,8 @@ var ModelRouterLanguageModel = class _ModelRouterLanguageModel {
2365
2425
  name: providerId,
2366
2426
  apiKey,
2367
2427
  baseURL: this.config.url,
2368
- headers: this.config.headers
2428
+ headers: this.config.headers,
2429
+ supportsStructuredOutputs: true
2369
2430
  }).chatModel(modelId);
2370
2431
  _ModelRouterLanguageModel.modelInstances.set(key, modelInstance2);
2371
2432
  return modelInstance2;
@@ -2402,11 +2463,112 @@ async function resolveModelConfig(modelConfig, runtimeContext = new chunkGPWMM74
2402
2463
  }
2403
2464
  throw new Error("Invalid model configuration provided");
2404
2465
  }
2466
+ var ModelRouterEmbeddingModel = class {
2467
+ specificationVersion = "v2";
2468
+ modelId;
2469
+ provider;
2470
+ maxEmbeddingsPerCall = 2048;
2471
+ supportsParallelCalls = true;
2472
+ providerModel;
2473
+ constructor(config) {
2474
+ let normalizedConfig;
2475
+ if (typeof config === "string") {
2476
+ const parts = config.split("/");
2477
+ if (parts.length !== 2) {
2478
+ throw new Error(`Invalid model string format: "${config}". Expected format: "provider/model"`);
2479
+ }
2480
+ const [providerId, modelId] = parts;
2481
+ normalizedConfig = { providerId, modelId };
2482
+ } else if ("providerId" in config && "modelId" in config) {
2483
+ normalizedConfig = {
2484
+ providerId: config.providerId,
2485
+ modelId: config.modelId,
2486
+ url: config.url,
2487
+ apiKey: config.apiKey,
2488
+ headers: config.headers
2489
+ };
2490
+ } else {
2491
+ const parts = config.id.split("/");
2492
+ if (parts.length !== 2) {
2493
+ throw new Error(`Invalid model string format: "${config.id}". Expected format: "provider/model"`);
2494
+ }
2495
+ const [providerId, modelId] = parts;
2496
+ normalizedConfig = {
2497
+ providerId,
2498
+ modelId,
2499
+ url: config.url,
2500
+ apiKey: config.apiKey,
2501
+ headers: config.headers
2502
+ };
2503
+ }
2504
+ this.provider = normalizedConfig.providerId;
2505
+ this.modelId = normalizedConfig.modelId;
2506
+ if (normalizedConfig.url) {
2507
+ const apiKey = normalizedConfig.apiKey || "";
2508
+ this.providerModel = openaiCompatibleV5.createOpenAICompatible({
2509
+ name: normalizedConfig.providerId,
2510
+ apiKey,
2511
+ baseURL: normalizedConfig.url,
2512
+ headers: normalizedConfig.headers
2513
+ }).textEmbeddingModel(normalizedConfig.modelId);
2514
+ } else {
2515
+ const registry = GatewayRegistry.getInstance();
2516
+ const providerConfig = registry.getProviderConfig(normalizedConfig.providerId);
2517
+ if (!providerConfig) {
2518
+ throw new Error(`Unknown provider: ${normalizedConfig.providerId}`);
2519
+ }
2520
+ let apiKey = normalizedConfig.apiKey;
2521
+ if (!apiKey) {
2522
+ const apiKeyEnvVar = providerConfig.apiKeyEnvVar;
2523
+ if (Array.isArray(apiKeyEnvVar)) {
2524
+ for (const envVar of apiKeyEnvVar) {
2525
+ apiKey = process.env[envVar];
2526
+ if (apiKey) break;
2527
+ }
2528
+ } else {
2529
+ apiKey = process.env[apiKeyEnvVar];
2530
+ }
2531
+ }
2532
+ if (!apiKey) {
2533
+ const envVarDisplay = Array.isArray(providerConfig.apiKeyEnvVar) ? providerConfig.apiKeyEnvVar.join(" or ") : providerConfig.apiKeyEnvVar;
2534
+ throw new Error(`API key not found for provider ${normalizedConfig.providerId}. Set ${envVarDisplay}`);
2535
+ }
2536
+ if (normalizedConfig.providerId === "openai") {
2537
+ this.providerModel = openaiV5.createOpenAI({ apiKey }).textEmbeddingModel(
2538
+ normalizedConfig.modelId
2539
+ );
2540
+ } else if (normalizedConfig.providerId === "google") {
2541
+ this.providerModel = googleV5.createGoogleGenerativeAI({ apiKey }).textEmbedding(
2542
+ normalizedConfig.modelId
2543
+ );
2544
+ } else {
2545
+ if (!providerConfig.url) {
2546
+ throw new Error(`Provider ${normalizedConfig.providerId} does not have a URL configured`);
2547
+ }
2548
+ this.providerModel = openaiCompatibleV5.createOpenAICompatible({
2549
+ name: normalizedConfig.providerId,
2550
+ apiKey,
2551
+ baseURL: providerConfig.url
2552
+ }).textEmbeddingModel(normalizedConfig.modelId);
2553
+ }
2554
+ }
2555
+ if (this.providerModel.maxEmbeddingsPerCall !== void 0) {
2556
+ this.maxEmbeddingsPerCall = this.providerModel.maxEmbeddingsPerCall;
2557
+ }
2558
+ if (this.providerModel.supportsParallelCalls !== void 0) {
2559
+ this.supportsParallelCalls = this.providerModel.supportsParallelCalls;
2560
+ }
2561
+ }
2562
+ async doEmbed(args) {
2563
+ return this.providerModel.doEmbed(args);
2564
+ }
2565
+ };
2405
2566
 
2567
+ exports.ModelRouterEmbeddingModel = ModelRouterEmbeddingModel;
2406
2568
  exports.ModelRouterLanguageModel = ModelRouterLanguageModel;
2407
2569
  exports.PROVIDER_REGISTRY = PROVIDER_REGISTRY;
2408
2570
  exports.getProviderConfig = getProviderConfig;
2409
2571
  exports.parseModelString = parseModelString;
2410
2572
  exports.resolveModelConfig = resolveModelConfig;
2411
- //# sourceMappingURL=chunk-DGQW5VRR.cjs.map
2412
- //# sourceMappingURL=chunk-DGQW5VRR.cjs.map
2573
+ //# sourceMappingURL=chunk-FMNZ3BPT.cjs.map
2574
+ //# sourceMappingURL=chunk-FMNZ3BPT.cjs.map