@scoutqa/mastra-core 0.24.6-fork.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 (1064) hide show
  1. package/CHANGELOG.md +5844 -0
  2. package/LICENSE.md +15 -0
  3. package/README.md +59 -0
  4. package/a2a.d.ts +1 -0
  5. package/action.d.ts +1 -0
  6. package/agent/input-processor/processors.d.ts +1 -0
  7. package/agent.d.ts +1 -0
  8. package/ai-tracing.d.ts +1 -0
  9. package/base.d.ts +1 -0
  10. package/bundler.d.ts +1 -0
  11. package/cache.d.ts +1 -0
  12. package/deployer.d.ts +1 -0
  13. package/di.d.ts +1 -0
  14. package/dist/a2a/error.d.ts +24 -0
  15. package/dist/a2a/error.d.ts.map +1 -0
  16. package/dist/a2a/index.cjs +80 -0
  17. package/dist/a2a/index.cjs.map +1 -0
  18. package/dist/a2a/index.d.ts +4 -0
  19. package/dist/a2a/index.d.ts.map +1 -0
  20. package/dist/a2a/index.js +72 -0
  21. package/dist/a2a/index.js.map +1 -0
  22. package/dist/a2a/types.d.ts +93 -0
  23. package/dist/a2a/types.d.ts.map +1 -0
  24. package/dist/action/index.d.ts +36 -0
  25. package/dist/action/index.d.ts.map +1 -0
  26. package/dist/agent/__tests__/mock-model.d.ts +6 -0
  27. package/dist/agent/__tests__/mock-model.d.ts.map +1 -0
  28. package/dist/agent/agent.d.ts +728 -0
  29. package/dist/agent/agent.d.ts.map +1 -0
  30. package/dist/agent/agent.types.d.ts +130 -0
  31. package/dist/agent/agent.types.d.ts.map +1 -0
  32. package/dist/agent/index.cjs +53 -0
  33. package/dist/agent/index.cjs.map +1 -0
  34. package/dist/agent/index.d.ts +10 -0
  35. package/dist/agent/index.d.ts.map +1 -0
  36. package/dist/agent/index.js +4 -0
  37. package/dist/agent/index.js.map +1 -0
  38. package/dist/agent/index.warning.d.ts +13 -0
  39. package/dist/agent/index.warning.d.ts.map +1 -0
  40. package/dist/agent/input-processor/index.cjs +28 -0
  41. package/dist/agent/input-processor/index.cjs.map +1 -0
  42. package/dist/agent/input-processor/index.d.ts +10 -0
  43. package/dist/agent/input-processor/index.d.ts.map +1 -0
  44. package/dist/agent/input-processor/index.js +3 -0
  45. package/dist/agent/input-processor/index.js.map +1 -0
  46. package/dist/agent/input-processor/processors/index.d.ts +6 -0
  47. package/dist/agent/input-processor/processors/index.d.ts.map +1 -0
  48. package/dist/agent/input-processor/processors/language-detector.d.ts +18 -0
  49. package/dist/agent/input-processor/processors/language-detector.d.ts.map +1 -0
  50. package/dist/agent/input-processor/processors/moderation.d.ts +18 -0
  51. package/dist/agent/input-processor/processors/moderation.d.ts.map +1 -0
  52. package/dist/agent/input-processor/processors/pii-detector.d.ts +18 -0
  53. package/dist/agent/input-processor/processors/pii-detector.d.ts.map +1 -0
  54. package/dist/agent/input-processor/processors/prompt-injection-detector.d.ts +18 -0
  55. package/dist/agent/input-processor/processors/prompt-injection-detector.d.ts.map +1 -0
  56. package/dist/agent/input-processor/processors/unicode-normalizer.d.ts +18 -0
  57. package/dist/agent/input-processor/processors/unicode-normalizer.d.ts.map +1 -0
  58. package/dist/agent/message-list/index.d.ts +305 -0
  59. package/dist/agent/message-list/index.d.ts.map +1 -0
  60. package/dist/agent/message-list/prompt/attachments-to-parts.d.ts +11 -0
  61. package/dist/agent/message-list/prompt/attachments-to-parts.d.ts.map +1 -0
  62. package/dist/agent/message-list/prompt/convert-file.d.ts +7 -0
  63. package/dist/agent/message-list/prompt/convert-file.d.ts.map +1 -0
  64. package/dist/agent/message-list/prompt/convert-to-mastra-v1.d.ts +4 -0
  65. package/dist/agent/message-list/prompt/convert-to-mastra-v1.d.ts.map +1 -0
  66. package/dist/agent/message-list/prompt/data-content.d.ts +17 -0
  67. package/dist/agent/message-list/prompt/data-content.d.ts.map +1 -0
  68. package/dist/agent/message-list/prompt/download-assets.d.ts +15 -0
  69. package/dist/agent/message-list/prompt/download-assets.d.ts.map +1 -0
  70. package/dist/agent/message-list/prompt/image-utils.d.ts +86 -0
  71. package/dist/agent/message-list/prompt/image-utils.d.ts.map +1 -0
  72. package/dist/agent/message-list/prompt/invalid-content-error.d.ts +14 -0
  73. package/dist/agent/message-list/prompt/invalid-content-error.d.ts.map +1 -0
  74. package/dist/agent/message-list/types.d.ts +3 -0
  75. package/dist/agent/message-list/types.d.ts.map +1 -0
  76. package/dist/agent/message-list/utils/ai-v4-v5/core-model-message.d.ts +3 -0
  77. package/dist/agent/message-list/utils/ai-v4-v5/core-model-message.d.ts.map +1 -0
  78. package/dist/agent/message-list/utils/ai-v4-v5/ui-message.d.ts +3 -0
  79. package/dist/agent/message-list/utils/ai-v4-v5/ui-message.d.ts.map +1 -0
  80. package/dist/agent/message-list/utils/ai-v5/gemini-compatibility.d.ts +22 -0
  81. package/dist/agent/message-list/utils/ai-v5/gemini-compatibility.d.ts.map +1 -0
  82. package/dist/agent/message-list/utils/ai-v5/tool.d.ts +16 -0
  83. package/dist/agent/message-list/utils/ai-v5/tool.d.ts.map +1 -0
  84. package/dist/agent/message-list/utils/convert-messages.d.ts +91 -0
  85. package/dist/agent/message-list/utils/convert-messages.d.ts.map +1 -0
  86. package/dist/agent/save-queue/index.d.ts +68 -0
  87. package/dist/agent/save-queue/index.d.ts.map +1 -0
  88. package/dist/agent/test-utils.d.ts +82 -0
  89. package/dist/agent/test-utils.d.ts.map +1 -0
  90. package/dist/agent/trip-wire.d.ts +18 -0
  91. package/dist/agent/trip-wire.d.ts.map +1 -0
  92. package/dist/agent/types.d.ts +358 -0
  93. package/dist/agent/types.d.ts.map +1 -0
  94. package/dist/agent/utils.d.ts +104 -0
  95. package/dist/agent/utils.d.ts.map +1 -0
  96. package/dist/agent/workflows/prepare-stream/index.d.ts +158 -0
  97. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -0
  98. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts +35 -0
  99. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -0
  100. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +90 -0
  101. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts.map +1 -0
  102. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts +75 -0
  103. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -0
  104. package/dist/agent/workflows/prepare-stream/schema.d.ts +179 -0
  105. package/dist/agent/workflows/prepare-stream/schema.d.ts.map +1 -0
  106. package/dist/agent/workflows/prepare-stream/stream-step.d.ts +36 -0
  107. package/dist/agent/workflows/prepare-stream/stream-step.d.ts.map +1 -0
  108. package/dist/ai-tracing/context.d.ts +21 -0
  109. package/dist/ai-tracing/context.d.ts.map +1 -0
  110. package/dist/ai-tracing/exporters/base.d.ts +111 -0
  111. package/dist/ai-tracing/exporters/base.d.ts.map +1 -0
  112. package/dist/ai-tracing/exporters/cloud.d.ts +30 -0
  113. package/dist/ai-tracing/exporters/cloud.d.ts.map +1 -0
  114. package/dist/ai-tracing/exporters/console.d.ts +10 -0
  115. package/dist/ai-tracing/exporters/console.d.ts.map +1 -0
  116. package/dist/ai-tracing/exporters/default.d.ts +98 -0
  117. package/dist/ai-tracing/exporters/default.d.ts.map +1 -0
  118. package/dist/ai-tracing/exporters/index.d.ts +9 -0
  119. package/dist/ai-tracing/exporters/index.d.ts.map +1 -0
  120. package/dist/ai-tracing/index.cjs +148 -0
  121. package/dist/ai-tracing/index.cjs.map +1 -0
  122. package/dist/ai-tracing/index.d.ts +13 -0
  123. package/dist/ai-tracing/index.d.ts.map +1 -0
  124. package/dist/ai-tracing/index.js +3 -0
  125. package/dist/ai-tracing/index.js.map +1 -0
  126. package/dist/ai-tracing/model-tracing.d.ts +63 -0
  127. package/dist/ai-tracing/model-tracing.d.ts.map +1 -0
  128. package/dist/ai-tracing/registry.d.ts +51 -0
  129. package/dist/ai-tracing/registry.d.ts.map +1 -0
  130. package/dist/ai-tracing/span_processors/index.d.ts +5 -0
  131. package/dist/ai-tracing/span_processors/index.d.ts.map +1 -0
  132. package/dist/ai-tracing/span_processors/sensitive-data-filter.d.ts +85 -0
  133. package/dist/ai-tracing/span_processors/sensitive-data-filter.d.ts.map +1 -0
  134. package/dist/ai-tracing/spans/base.d.ts +65 -0
  135. package/dist/ai-tracing/spans/base.d.ts.map +1 -0
  136. package/dist/ai-tracing/spans/default.d.ts +13 -0
  137. package/dist/ai-tracing/spans/default.d.ts.map +1 -0
  138. package/dist/ai-tracing/spans/index.d.ts +7 -0
  139. package/dist/ai-tracing/spans/index.d.ts.map +1 -0
  140. package/dist/ai-tracing/spans/no-op.d.ts +15 -0
  141. package/dist/ai-tracing/spans/no-op.d.ts.map +1 -0
  142. package/dist/ai-tracing/tracers/base.d.ts +105 -0
  143. package/dist/ai-tracing/tracers/base.d.ts.map +1 -0
  144. package/dist/ai-tracing/tracers/default.d.ts +7 -0
  145. package/dist/ai-tracing/tracers/default.d.ts.map +1 -0
  146. package/dist/ai-tracing/tracers/index.d.ts +6 -0
  147. package/dist/ai-tracing/tracers/index.d.ts.map +1 -0
  148. package/dist/ai-tracing/types.d.ts +696 -0
  149. package/dist/ai-tracing/types.d.ts.map +1 -0
  150. package/dist/ai-tracing/utils.d.ts +68 -0
  151. package/dist/ai-tracing/utils.d.ts.map +1 -0
  152. package/dist/base.cjs +12 -0
  153. package/dist/base.cjs.map +1 -0
  154. package/dist/base.d.ts +34 -0
  155. package/dist/base.d.ts.map +1 -0
  156. package/dist/base.js +3 -0
  157. package/dist/base.js.map +1 -0
  158. package/dist/base.warning.d.ts +9 -0
  159. package/dist/base.warning.d.ts.map +1 -0
  160. package/dist/bundler/index.cjs +12 -0
  161. package/dist/bundler/index.cjs.map +1 -0
  162. package/dist/bundler/index.d.ts +31 -0
  163. package/dist/bundler/index.d.ts.map +1 -0
  164. package/dist/bundler/index.js +3 -0
  165. package/dist/bundler/index.js.map +1 -0
  166. package/dist/bundler/index.warning.d.ts +9 -0
  167. package/dist/bundler/index.warning.d.ts.map +1 -0
  168. package/dist/bundler/types.d.ts +6 -0
  169. package/dist/bundler/types.d.ts.map +1 -0
  170. package/dist/cache/base.d.ts +14 -0
  171. package/dist/cache/base.d.ts.map +1 -0
  172. package/dist/cache/index.cjs +16 -0
  173. package/dist/cache/index.cjs.map +1 -0
  174. package/dist/cache/index.d.ts +3 -0
  175. package/dist/cache/index.d.ts.map +1 -0
  176. package/dist/cache/index.js +3 -0
  177. package/dist/cache/index.js.map +1 -0
  178. package/dist/cache/inmemory.d.ts +13 -0
  179. package/dist/cache/inmemory.d.ts.map +1 -0
  180. package/dist/chunk-3HXBPDKN.js +105 -0
  181. package/dist/chunk-3HXBPDKN.js.map +1 -0
  182. package/dist/chunk-3NTOFNIU.js +60 -0
  183. package/dist/chunk-3NTOFNIU.js.map +1 -0
  184. package/dist/chunk-3PSWNGBF.js +3 -0
  185. package/dist/chunk-3PSWNGBF.js.map +1 -0
  186. package/dist/chunk-42RUESSD.cjs +3203 -0
  187. package/dist/chunk-42RUESSD.cjs.map +1 -0
  188. package/dist/chunk-436FFEF6.js +34 -0
  189. package/dist/chunk-436FFEF6.js.map +1 -0
  190. package/dist/chunk-46XGIEXM.cjs +47 -0
  191. package/dist/chunk-46XGIEXM.cjs.map +1 -0
  192. package/dist/chunk-4D4KB75Y.cjs +9 -0
  193. package/dist/chunk-4D4KB75Y.cjs.map +1 -0
  194. package/dist/chunk-4L63C6E5.cjs +2554 -0
  195. package/dist/chunk-4L63C6E5.cjs.map +1 -0
  196. package/dist/chunk-4LSFAAZW.js +3 -0
  197. package/dist/chunk-4LSFAAZW.js.map +1 -0
  198. package/dist/chunk-4R2TBRS7.cjs +191 -0
  199. package/dist/chunk-4R2TBRS7.cjs.map +1 -0
  200. package/dist/chunk-4WQYXT2I.cjs +12 -0
  201. package/dist/chunk-4WQYXT2I.cjs.map +1 -0
  202. package/dist/chunk-5NTO7S5I.cjs +173 -0
  203. package/dist/chunk-5NTO7S5I.cjs.map +1 -0
  204. package/dist/chunk-5O52O25J.js +65 -0
  205. package/dist/chunk-5O52O25J.js.map +1 -0
  206. package/dist/chunk-5X4TQR6K.js +12 -0
  207. package/dist/chunk-5X4TQR6K.js.map +1 -0
  208. package/dist/chunk-6D2K2CAA.js +776 -0
  209. package/dist/chunk-6D2K2CAA.js.map +1 -0
  210. package/dist/chunk-6KOL2B3A.cjs +75 -0
  211. package/dist/chunk-6KOL2B3A.cjs.map +1 -0
  212. package/dist/chunk-6TEQIYXV.cjs +96 -0
  213. package/dist/chunk-6TEQIYXV.cjs.map +1 -0
  214. package/dist/chunk-6VOPKVYH.cjs +57 -0
  215. package/dist/chunk-6VOPKVYH.cjs.map +1 -0
  216. package/dist/chunk-6XCINXZ7.cjs +194 -0
  217. package/dist/chunk-6XCINXZ7.cjs.map +1 -0
  218. package/dist/chunk-7J5DS33F.js +3 -0
  219. package/dist/chunk-7J5DS33F.js.map +1 -0
  220. package/dist/chunk-A5KDVZDL.cjs +124 -0
  221. package/dist/chunk-A5KDVZDL.cjs.map +1 -0
  222. package/dist/chunk-AAYCOJUL.cjs +14 -0
  223. package/dist/chunk-AAYCOJUL.cjs.map +1 -0
  224. package/dist/chunk-ABJOUEVA.cjs +10 -0
  225. package/dist/chunk-ABJOUEVA.cjs.map +1 -0
  226. package/dist/chunk-AQGLVU53.cjs +603 -0
  227. package/dist/chunk-AQGLVU53.cjs.map +1 -0
  228. package/dist/chunk-B7V6NYWH.cjs +67 -0
  229. package/dist/chunk-B7V6NYWH.cjs.map +1 -0
  230. package/dist/chunk-BJ6XIEC6.js +13 -0
  231. package/dist/chunk-BJ6XIEC6.js.map +1 -0
  232. package/dist/chunk-BLUDYAPI.js +596 -0
  233. package/dist/chunk-BLUDYAPI.js.map +1 -0
  234. package/dist/chunk-BVUMKER5.js +7 -0
  235. package/dist/chunk-BVUMKER5.js.map +1 -0
  236. package/dist/chunk-BWYU7D33.js +192 -0
  237. package/dist/chunk-BWYU7D33.js.map +1 -0
  238. package/dist/chunk-CNMPROPI.js +24 -0
  239. package/dist/chunk-CNMPROPI.js.map +1 -0
  240. package/dist/chunk-CT2DMHGC.cjs +271 -0
  241. package/dist/chunk-CT2DMHGC.cjs.map +1 -0
  242. package/dist/chunk-CYEQK4PM.cjs +778 -0
  243. package/dist/chunk-CYEQK4PM.cjs.map +1 -0
  244. package/dist/chunk-DMBN72QF.cjs +39 -0
  245. package/dist/chunk-DMBN72QF.cjs.map +1 -0
  246. package/dist/chunk-EBVYYC2Q.cjs +111 -0
  247. package/dist/chunk-EBVYYC2Q.cjs.map +1 -0
  248. package/dist/chunk-F7GI2OYP.js +3 -0
  249. package/dist/chunk-F7GI2OYP.js.map +1 -0
  250. package/dist/chunk-FUVNHPNL.cjs +4 -0
  251. package/dist/chunk-FUVNHPNL.cjs.map +1 -0
  252. package/dist/chunk-FVIT6JZ5.cjs +4 -0
  253. package/dist/chunk-FVIT6JZ5.cjs.map +1 -0
  254. package/dist/chunk-G3KSVDML.cjs +1310 -0
  255. package/dist/chunk-G3KSVDML.cjs.map +1 -0
  256. package/dist/chunk-GPWMM745.cjs +80 -0
  257. package/dist/chunk-GPWMM745.cjs.map +1 -0
  258. package/dist/chunk-GXSERFAG.js +3 -0
  259. package/dist/chunk-GXSERFAG.js.map +1 -0
  260. package/dist/chunk-HCCXJ5YJ.js +466 -0
  261. package/dist/chunk-HCCXJ5YJ.js.map +1 -0
  262. package/dist/chunk-HLRWYUFN.js +78 -0
  263. package/dist/chunk-HLRWYUFN.js.map +1 -0
  264. package/dist/chunk-HQDX7PWJ.cjs +26 -0
  265. package/dist/chunk-HQDX7PWJ.cjs.map +1 -0
  266. package/dist/chunk-HSX2K7HB.js +164 -0
  267. package/dist/chunk-HSX2K7HB.js.map +1 -0
  268. package/dist/chunk-IAJHRFO4.cjs +2936 -0
  269. package/dist/chunk-IAJHRFO4.cjs.map +1 -0
  270. package/dist/chunk-INOOZ2A2.js +3144 -0
  271. package/dist/chunk-INOOZ2A2.js.map +1 -0
  272. package/dist/chunk-IWU4YSYT.cjs +166 -0
  273. package/dist/chunk-IWU4YSYT.cjs.map +1 -0
  274. package/dist/chunk-JQE3BLYA.js +3 -0
  275. package/dist/chunk-JQE3BLYA.js.map +1 -0
  276. package/dist/chunk-JVV5LREI.js +431 -0
  277. package/dist/chunk-JVV5LREI.js.map +1 -0
  278. package/dist/chunk-LZPOIBOR.js +87 -0
  279. package/dist/chunk-LZPOIBOR.js.map +1 -0
  280. package/dist/chunk-MKCC5K77.js +90 -0
  281. package/dist/chunk-MKCC5K77.js.map +1 -0
  282. package/dist/chunk-N2ILP2YD.js +2539 -0
  283. package/dist/chunk-N2ILP2YD.js.map +1 -0
  284. package/dist/chunk-NLNKQD2T.js +7 -0
  285. package/dist/chunk-NLNKQD2T.js.map +1 -0
  286. package/dist/chunk-NPNGPMT2.js +39 -0
  287. package/dist/chunk-NPNGPMT2.js.map +1 -0
  288. package/dist/chunk-NSIYMRY7.cjs +91 -0
  289. package/dist/chunk-NSIYMRY7.cjs.map +1 -0
  290. package/dist/chunk-OIT3PCWA.js +72 -0
  291. package/dist/chunk-OIT3PCWA.js.map +1 -0
  292. package/dist/chunk-PAOBGBU7.cjs +471 -0
  293. package/dist/chunk-PAOBGBU7.cjs.map +1 -0
  294. package/dist/chunk-PE3V7GUL.cjs +4 -0
  295. package/dist/chunk-PE3V7GUL.cjs.map +1 -0
  296. package/dist/chunk-PFXXH2RP.js +91 -0
  297. package/dist/chunk-PFXXH2RP.js.map +1 -0
  298. package/dist/chunk-PJKCPRYF.js +3 -0
  299. package/dist/chunk-PJKCPRYF.js.map +1 -0
  300. package/dist/chunk-PZUZNPFM.js +166 -0
  301. package/dist/chunk-PZUZNPFM.js.map +1 -0
  302. package/dist/chunk-Q6LWNLAJ.js +3177 -0
  303. package/dist/chunk-Q6LWNLAJ.js.map +1 -0
  304. package/dist/chunk-QLMWFSDC.js +653 -0
  305. package/dist/chunk-QLMWFSDC.js.map +1 -0
  306. package/dist/chunk-R6XC4DV5.js +170 -0
  307. package/dist/chunk-R6XC4DV5.js.map +1 -0
  308. package/dist/chunk-RJOVFHWN.cjs +3160 -0
  309. package/dist/chunk-RJOVFHWN.cjs.map +1 -0
  310. package/dist/chunk-SJMKDSRF.js +179 -0
  311. package/dist/chunk-SJMKDSRF.js.map +1 -0
  312. package/dist/chunk-TCHOIK53.cjs +4 -0
  313. package/dist/chunk-TCHOIK53.cjs.map +1 -0
  314. package/dist/chunk-TEORHM5O.js +1222 -0
  315. package/dist/chunk-TEORHM5O.js.map +1 -0
  316. package/dist/chunk-TSNDVBUU.cjs +90 -0
  317. package/dist/chunk-TSNDVBUU.cjs.map +1 -0
  318. package/dist/chunk-TTELJD4F.js +86 -0
  319. package/dist/chunk-TTELJD4F.js.map +1 -0
  320. package/dist/chunk-TX4TTPYJ.cjs +436 -0
  321. package/dist/chunk-TX4TTPYJ.cjs.map +1 -0
  322. package/dist/chunk-UCPGYU55.cjs +15 -0
  323. package/dist/chunk-UCPGYU55.cjs.map +1 -0
  324. package/dist/chunk-UWTYVVVZ.js +42 -0
  325. package/dist/chunk-UWTYVVVZ.js.map +1 -0
  326. package/dist/chunk-UXG7PYML.js +118 -0
  327. package/dist/chunk-UXG7PYML.js.map +1 -0
  328. package/dist/chunk-V3VLOOSW.cjs +36 -0
  329. package/dist/chunk-V3VLOOSW.cjs.map +1 -0
  330. package/dist/chunk-VED2OIYL.cjs +4 -0
  331. package/dist/chunk-VED2OIYL.cjs.map +1 -0
  332. package/dist/chunk-VF676YCO.cjs +150 -0
  333. package/dist/chunk-VF676YCO.cjs.map +1 -0
  334. package/dist/chunk-VHEA3YXS.js +72 -0
  335. package/dist/chunk-VHEA3YXS.js.map +1 -0
  336. package/dist/chunk-VQASQG5D.js +55 -0
  337. package/dist/chunk-VQASQG5D.js.map +1 -0
  338. package/dist/chunk-VXHOOZSK.js +446 -0
  339. package/dist/chunk-VXHOOZSK.js.map +1 -0
  340. package/dist/chunk-W4UVO3HL.cjs +82 -0
  341. package/dist/chunk-W4UVO3HL.cjs.map +1 -0
  342. package/dist/chunk-WIMFJ2BA.js +2880 -0
  343. package/dist/chunk-WIMFJ2BA.js.map +1 -0
  344. package/dist/chunk-WM4RO23J.js +145 -0
  345. package/dist/chunk-WM4RO23J.js.map +1 -0
  346. package/dist/chunk-WMTXUQC4.cjs +657 -0
  347. package/dist/chunk-WMTXUQC4.cjs.map +1 -0
  348. package/dist/chunk-WNV57BEW.cjs +1705 -0
  349. package/dist/chunk-WNV57BEW.cjs.map +1 -0
  350. package/dist/chunk-X4RMXTXF.cjs +4 -0
  351. package/dist/chunk-X4RMXTXF.cjs.map +1 -0
  352. package/dist/chunk-X7F4CSGR.cjs +67 -0
  353. package/dist/chunk-X7F4CSGR.cjs.map +1 -0
  354. package/dist/chunk-XWGHD4C7.cjs +450 -0
  355. package/dist/chunk-XWGHD4C7.cjs.map +1 -0
  356. package/dist/chunk-YFKTLS32.js +1700 -0
  357. package/dist/chunk-YFKTLS32.js.map +1 -0
  358. package/dist/chunk-ZABG3SZ2.cjs +93 -0
  359. package/dist/chunk-ZABG3SZ2.cjs.map +1 -0
  360. package/dist/chunk-ZIWN73GQ.js +267 -0
  361. package/dist/chunk-ZIWN73GQ.js.map +1 -0
  362. package/dist/chunk-ZOYE65RA.cjs +173 -0
  363. package/dist/chunk-ZOYE65RA.cjs.map +1 -0
  364. package/dist/deployer/index.cjs +12 -0
  365. package/dist/deployer/index.cjs.map +1 -0
  366. package/dist/deployer/index.d.ts +12 -0
  367. package/dist/deployer/index.d.ts.map +1 -0
  368. package/dist/deployer/index.js +3 -0
  369. package/dist/deployer/index.js.map +1 -0
  370. package/dist/deployer/index.warning.d.ts +9 -0
  371. package/dist/deployer/index.warning.d.ts.map +1 -0
  372. package/dist/di/index.cjs +12 -0
  373. package/dist/di/index.cjs.map +1 -0
  374. package/dist/di/index.d.ts +2 -0
  375. package/dist/di/index.d.ts.map +1 -0
  376. package/dist/di/index.js +3 -0
  377. package/dist/di/index.js.map +1 -0
  378. package/dist/error/index.cjs +28 -0
  379. package/dist/error/index.cjs.map +1 -0
  380. package/dist/error/index.d.ts +89 -0
  381. package/dist/error/index.d.ts.map +1 -0
  382. package/dist/error/index.js +3 -0
  383. package/dist/error/index.js.map +1 -0
  384. package/dist/error/utils.d.ts +36 -0
  385. package/dist/error/utils.d.ts.map +1 -0
  386. package/dist/eval/evaluation.d.ts +14 -0
  387. package/dist/eval/evaluation.d.ts.map +1 -0
  388. package/dist/eval/index.cjs +16 -0
  389. package/dist/eval/index.cjs.map +1 -0
  390. package/dist/eval/index.d.ts +4 -0
  391. package/dist/eval/index.d.ts.map +1 -0
  392. package/dist/eval/index.js +3 -0
  393. package/dist/eval/index.js.map +1 -0
  394. package/dist/eval/metric.d.ts +8 -0
  395. package/dist/eval/metric.d.ts.map +1 -0
  396. package/dist/eval/types.d.ts +9 -0
  397. package/dist/eval/types.d.ts.map +1 -0
  398. package/dist/events/event-emitter.d.ts +11 -0
  399. package/dist/events/event-emitter.d.ts.map +1 -0
  400. package/dist/events/index.cjs +12 -0
  401. package/dist/events/index.cjs.map +1 -0
  402. package/dist/events/index.d.ts +3 -0
  403. package/dist/events/index.d.ts.map +1 -0
  404. package/dist/events/index.js +3 -0
  405. package/dist/events/index.js.map +1 -0
  406. package/dist/events/processor.d.ts +11 -0
  407. package/dist/events/processor.d.ts.map +1 -0
  408. package/dist/events/pubsub.d.ts +8 -0
  409. package/dist/events/pubsub.d.ts.map +1 -0
  410. package/dist/events/types.d.ts +8 -0
  411. package/dist/events/types.d.ts.map +1 -0
  412. package/dist/hooks/index.cjs +20 -0
  413. package/dist/hooks/index.cjs.map +1 -0
  414. package/dist/hooks/index.d.ts +36 -0
  415. package/dist/hooks/index.d.ts.map +1 -0
  416. package/dist/hooks/index.js +3 -0
  417. package/dist/hooks/index.js.map +1 -0
  418. package/dist/hooks/mitt.d.ts +22 -0
  419. package/dist/hooks/mitt.d.ts.map +1 -0
  420. package/dist/index.cjs +371 -0
  421. package/dist/index.cjs.map +1 -0
  422. package/dist/index.d.ts +19 -0
  423. package/dist/index.d.ts.map +1 -0
  424. package/dist/index.js +120 -0
  425. package/dist/index.js.map +1 -0
  426. package/dist/integration/index.cjs +16 -0
  427. package/dist/integration/index.cjs.map +1 -0
  428. package/dist/integration/index.d.ts +3 -0
  429. package/dist/integration/index.d.ts.map +1 -0
  430. package/dist/integration/index.js +3 -0
  431. package/dist/integration/index.js.map +1 -0
  432. package/dist/integration/index.warning.d.ts +3 -0
  433. package/dist/integration/index.warning.d.ts.map +1 -0
  434. package/dist/integration/integration.d.ts +21 -0
  435. package/dist/integration/integration.d.ts.map +1 -0
  436. package/dist/integration/integration.warning.d.ts +5 -0
  437. package/dist/integration/integration.warning.d.ts.map +1 -0
  438. package/dist/integration/openapi-toolset.d.ts +16 -0
  439. package/dist/integration/openapi-toolset.d.ts.map +1 -0
  440. package/dist/integration/openapi-toolset.warning.d.ts +5 -0
  441. package/dist/integration/openapi-toolset.warning.d.ts.map +1 -0
  442. package/dist/llm/index.cjs +48 -0
  443. package/dist/llm/index.cjs.map +1 -0
  444. package/dist/llm/index.d.ts +83 -0
  445. package/dist/llm/index.d.ts.map +1 -0
  446. package/dist/llm/index.js +7 -0
  447. package/dist/llm/index.js.map +1 -0
  448. package/dist/llm/model/aisdk/v5/model.d.ts +47 -0
  449. package/dist/llm/model/aisdk/v5/model.d.ts.map +1 -0
  450. package/dist/llm/model/base.types.d.ts +100 -0
  451. package/dist/llm/model/base.types.d.ts.map +1 -0
  452. package/dist/llm/model/embedding-router.d.ts +50 -0
  453. package/dist/llm/model/embedding-router.d.ts.map +1 -0
  454. package/dist/llm/model/gateway-resolver.d.ts +11 -0
  455. package/dist/llm/model/gateway-resolver.d.ts.map +1 -0
  456. package/dist/llm/model/gateways/base.d.ts +50 -0
  457. package/dist/llm/model/gateways/base.d.ts.map +1 -0
  458. package/dist/llm/model/gateways/constants.d.ts +3 -0
  459. package/dist/llm/model/gateways/constants.d.ts.map +1 -0
  460. package/dist/llm/model/gateways/index.d.ts +11 -0
  461. package/dist/llm/model/gateways/index.d.ts.map +1 -0
  462. package/dist/llm/model/gateways/models-dev.d.ts +19 -0
  463. package/dist/llm/model/gateways/models-dev.d.ts.map +1 -0
  464. package/dist/llm/model/gateways/netlify.d.ts +25 -0
  465. package/dist/llm/model/gateways/netlify.d.ts.map +1 -0
  466. package/dist/llm/model/index.d.ts +6 -0
  467. package/dist/llm/model/index.d.ts.map +1 -0
  468. package/dist/llm/model/is-v2-model.d.ts +3 -0
  469. package/dist/llm/model/is-v2-model.d.ts.map +1 -0
  470. package/dist/llm/model/model-method-from-agent.d.ts +4 -0
  471. package/dist/llm/model/model-method-from-agent.d.ts.map +1 -0
  472. package/dist/llm/model/model.d.ts +36 -0
  473. package/dist/llm/model/model.d.ts.map +1 -0
  474. package/dist/llm/model/model.loop.d.ts +26 -0
  475. package/dist/llm/model/model.loop.d.ts.map +1 -0
  476. package/dist/llm/model/model.loop.types.d.ts +31 -0
  477. package/dist/llm/model/model.loop.types.d.ts.map +1 -0
  478. package/dist/llm/model/provider-options.d.ts +42 -0
  479. package/dist/llm/model/provider-options.d.ts.map +1 -0
  480. package/dist/llm/model/provider-registry.d.ts +108 -0
  481. package/dist/llm/model/provider-registry.d.ts.map +1 -0
  482. package/dist/llm/model/provider-types.generated.d.ts +1205 -0
  483. package/dist/llm/model/registry-generator.d.ts +41 -0
  484. package/dist/llm/model/registry-generator.d.ts.map +1 -0
  485. package/dist/llm/model/resolve-model.d.ts +46 -0
  486. package/dist/llm/model/resolve-model.d.ts.map +1 -0
  487. package/dist/llm/model/router.d.ts +30 -0
  488. package/dist/llm/model/router.d.ts.map +1 -0
  489. package/dist/llm/model/shared.types.d.ts +40 -0
  490. package/dist/llm/model/shared.types.d.ts.map +1 -0
  491. package/dist/logger/constants.d.ts +28 -0
  492. package/dist/logger/constants.d.ts.map +1 -0
  493. package/dist/logger/default-logger.d.ts +49 -0
  494. package/dist/logger/default-logger.d.ts.map +1 -0
  495. package/dist/logger/index.cjs +45 -0
  496. package/dist/logger/index.cjs.map +1 -0
  497. package/dist/logger/index.d.ts +7 -0
  498. package/dist/logger/index.d.ts.map +1 -0
  499. package/dist/logger/index.js +4 -0
  500. package/dist/logger/index.js.map +1 -0
  501. package/dist/logger/logger.d.ts +88 -0
  502. package/dist/logger/logger.d.ts.map +1 -0
  503. package/dist/logger/multi-logger.d.ts +46 -0
  504. package/dist/logger/multi-logger.d.ts.map +1 -0
  505. package/dist/logger/noop-logger.d.ts +3 -0
  506. package/dist/logger/noop-logger.d.ts.map +1 -0
  507. package/dist/logger/transport.d.ts +46 -0
  508. package/dist/logger/transport.d.ts.map +1 -0
  509. package/dist/loop/index.cjs +12 -0
  510. package/dist/loop/index.cjs.map +1 -0
  511. package/dist/loop/index.d.ts +2 -0
  512. package/dist/loop/index.d.ts.map +1 -0
  513. package/dist/loop/index.js +3 -0
  514. package/dist/loop/index.js.map +1 -0
  515. package/dist/loop/loop.d.ts +6 -0
  516. package/dist/loop/loop.d.ts.map +1 -0
  517. package/dist/loop/network/index.d.ts +145 -0
  518. package/dist/loop/network/index.d.ts.map +1 -0
  519. package/dist/loop/telemetry/index.d.ts +36 -0
  520. package/dist/loop/telemetry/index.d.ts.map +1 -0
  521. package/dist/loop/telemetry/noop.d.ts +3 -0
  522. package/dist/loop/telemetry/noop.d.ts.map +1 -0
  523. package/dist/loop/test-utils/MastraLanguageModelV2Mock.d.ts +37 -0
  524. package/dist/loop/test-utils/MastraLanguageModelV2Mock.d.ts.map +1 -0
  525. package/dist/loop/test-utils/fullStream.d.ts +6 -0
  526. package/dist/loop/test-utils/fullStream.d.ts.map +1 -0
  527. package/dist/loop/test-utils/generateText.d.ts +6 -0
  528. package/dist/loop/test-utils/generateText.d.ts.map +1 -0
  529. package/dist/loop/test-utils/mock-server-response.d.ts +28 -0
  530. package/dist/loop/test-utils/mock-server-response.d.ts.map +1 -0
  531. package/dist/loop/test-utils/mockTracer.d.ts +47 -0
  532. package/dist/loop/test-utils/mockTracer.d.ts.map +1 -0
  533. package/dist/loop/test-utils/options.d.ts +6 -0
  534. package/dist/loop/test-utils/options.d.ts.map +1 -0
  535. package/dist/loop/test-utils/resultObject.d.ts +6 -0
  536. package/dist/loop/test-utils/resultObject.d.ts.map +1 -0
  537. package/dist/loop/test-utils/streamObject.d.ts +15 -0
  538. package/dist/loop/test-utils/streamObject.d.ts.map +1 -0
  539. package/dist/loop/test-utils/telemetry.d.ts +6 -0
  540. package/dist/loop/test-utils/telemetry.d.ts.map +1 -0
  541. package/dist/loop/test-utils/textStream.d.ts +6 -0
  542. package/dist/loop/test-utils/textStream.d.ts.map +1 -0
  543. package/dist/loop/test-utils/toUIMessageStream.d.ts +6 -0
  544. package/dist/loop/test-utils/toUIMessageStream.d.ts.map +1 -0
  545. package/dist/loop/test-utils/tools.d.ts +6 -0
  546. package/dist/loop/test-utils/tools.d.ts.map +1 -0
  547. package/dist/loop/test-utils/utils.d.ts +45 -0
  548. package/dist/loop/test-utils/utils.d.ts.map +1 -0
  549. package/dist/loop/types.d.ts +111 -0
  550. package/dist/loop/types.d.ts.map +1 -0
  551. package/dist/loop/workflows/agentic-execution/index.d.ts +939 -0
  552. package/dist/loop/workflows/agentic-execution/index.d.ts.map +1 -0
  553. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +629 -0
  554. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -0
  555. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +348 -0
  556. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -0
  557. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts +58 -0
  558. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -0
  559. package/dist/loop/workflows/agentic-loop/index.d.ts +945 -0
  560. package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -0
  561. package/dist/loop/workflows/run-state.d.ts +29 -0
  562. package/dist/loop/workflows/run-state.d.ts.map +1 -0
  563. package/dist/loop/workflows/schema.d.ts +479 -0
  564. package/dist/loop/workflows/schema.d.ts.map +1 -0
  565. package/dist/loop/workflows/stream.d.ts +20 -0
  566. package/dist/loop/workflows/stream.d.ts.map +1 -0
  567. package/dist/mastra/hooks.d.ts +6 -0
  568. package/dist/mastra/hooks.d.ts.map +1 -0
  569. package/dist/mastra/index.cjs +12 -0
  570. package/dist/mastra/index.cjs.map +1 -0
  571. package/dist/mastra/index.d.ts +892 -0
  572. package/dist/mastra/index.d.ts.map +1 -0
  573. package/dist/mastra/index.js +3 -0
  574. package/dist/mastra/index.js.map +1 -0
  575. package/dist/mcp/index.cjs +112 -0
  576. package/dist/mcp/index.cjs.map +1 -0
  577. package/dist/mcp/index.d.ts +158 -0
  578. package/dist/mcp/index.d.ts.map +1 -0
  579. package/dist/mcp/index.js +106 -0
  580. package/dist/mcp/index.js.map +1 -0
  581. package/dist/mcp/types.d.ts +255 -0
  582. package/dist/mcp/types.d.ts.map +1 -0
  583. package/dist/memory/index.cjs +20 -0
  584. package/dist/memory/index.cjs.map +1 -0
  585. package/dist/memory/index.d.ts +3 -0
  586. package/dist/memory/index.d.ts.map +1 -0
  587. package/dist/memory/index.js +3 -0
  588. package/dist/memory/index.js.map +1 -0
  589. package/dist/memory/index.warning.d.ts +6 -0
  590. package/dist/memory/index.warning.d.ts.map +1 -0
  591. package/dist/memory/memory.d.ts +272 -0
  592. package/dist/memory/memory.d.ts.map +1 -0
  593. package/dist/memory/types.d.ts +393 -0
  594. package/dist/memory/types.d.ts.map +1 -0
  595. package/dist/models-dev-LJ4O6FNF.js +3 -0
  596. package/dist/models-dev-LJ4O6FNF.js.map +1 -0
  597. package/dist/models-dev-T2CXOEDH.cjs +12 -0
  598. package/dist/models-dev-T2CXOEDH.cjs.map +1 -0
  599. package/dist/netlify-BAEMIQNH.cjs +12 -0
  600. package/dist/netlify-BAEMIQNH.cjs.map +1 -0
  601. package/dist/netlify-L7AZ74PV.js +3 -0
  602. package/dist/netlify-L7AZ74PV.js.map +1 -0
  603. package/dist/processors/index.cjs +48 -0
  604. package/dist/processors/index.cjs.map +1 -0
  605. package/dist/processors/index.d.ts +43 -0
  606. package/dist/processors/index.d.ts.map +1 -0
  607. package/dist/processors/index.js +3 -0
  608. package/dist/processors/index.js.map +1 -0
  609. package/dist/processors/processors/batch-parts.d.ts +47 -0
  610. package/dist/processors/processors/batch-parts.d.ts.map +1 -0
  611. package/dist/processors/processors/index.d.ts +10 -0
  612. package/dist/processors/processors/index.d.ts.map +1 -0
  613. package/dist/processors/processors/language-detector.d.ts +153 -0
  614. package/dist/processors/processors/language-detector.d.ts.map +1 -0
  615. package/dist/processors/processors/moderation.d.ts +138 -0
  616. package/dist/processors/processors/moderation.d.ts.map +1 -0
  617. package/dist/processors/processors/pii-detector.d.ts +203 -0
  618. package/dist/processors/processors/pii-detector.d.ts.map +1 -0
  619. package/dist/processors/processors/prompt-injection-detector.d.ts +116 -0
  620. package/dist/processors/processors/prompt-injection-detector.d.ts.map +1 -0
  621. package/dist/processors/processors/structured-output.d.ts +53 -0
  622. package/dist/processors/processors/structured-output.d.ts.map +1 -0
  623. package/dist/processors/processors/system-prompt-scrubber.d.ts +105 -0
  624. package/dist/processors/processors/system-prompt-scrubber.d.ts.map +1 -0
  625. package/dist/processors/processors/token-limiter.d.ts +66 -0
  626. package/dist/processors/processors/token-limiter.d.ts.map +1 -0
  627. package/dist/processors/processors/unicode-normalizer.d.ts +34 -0
  628. package/dist/processors/processors/unicode-normalizer.d.ts.map +1 -0
  629. package/dist/processors/runner.d.ts +46 -0
  630. package/dist/processors/runner.d.ts.map +1 -0
  631. package/dist/provider-registry-RUDYHG7J.cjs +40 -0
  632. package/dist/provider-registry-RUDYHG7J.cjs.map +1 -0
  633. package/dist/provider-registry-THITZUJ7.js +3 -0
  634. package/dist/provider-registry-THITZUJ7.js.map +1 -0
  635. package/dist/provider-registry.json +2748 -0
  636. package/dist/registry-generator-DL42NMBM.cjs +134 -0
  637. package/dist/registry-generator-DL42NMBM.cjs.map +1 -0
  638. package/dist/registry-generator-I6S4ARS6.js +124 -0
  639. package/dist/registry-generator-I6S4ARS6.js.map +1 -0
  640. package/dist/relevance/cohere/index.d.ts +9 -0
  641. package/dist/relevance/cohere/index.d.ts.map +1 -0
  642. package/dist/relevance/index.cjs +20 -0
  643. package/dist/relevance/index.cjs.map +1 -0
  644. package/dist/relevance/index.d.ts +4 -0
  645. package/dist/relevance/index.d.ts.map +1 -0
  646. package/dist/relevance/index.js +3 -0
  647. package/dist/relevance/index.js.map +1 -0
  648. package/dist/relevance/mastra-agent/index.d.ts +8 -0
  649. package/dist/relevance/mastra-agent/index.d.ts.map +1 -0
  650. package/dist/relevance/relevance-score-provider.d.ts +5 -0
  651. package/dist/relevance/relevance-score-provider.d.ts.map +1 -0
  652. package/dist/run/types.d.ts +6 -0
  653. package/dist/run/types.d.ts.map +1 -0
  654. package/dist/runtime-context/index.cjs +12 -0
  655. package/dist/runtime-context/index.cjs.map +1 -0
  656. package/dist/runtime-context/index.d.ts +57 -0
  657. package/dist/runtime-context/index.d.ts.map +1 -0
  658. package/dist/runtime-context/index.js +3 -0
  659. package/dist/runtime-context/index.js.map +1 -0
  660. package/dist/scores/base.d.ts +141 -0
  661. package/dist/scores/base.d.ts.map +1 -0
  662. package/dist/scores/base.test-utils.d.ts +124 -0
  663. package/dist/scores/base.test-utils.d.ts.map +1 -0
  664. package/dist/scores/hooks.d.ts +19 -0
  665. package/dist/scores/hooks.d.ts.map +1 -0
  666. package/dist/scores/index.cjs +37 -0
  667. package/dist/scores/index.cjs.map +1 -0
  668. package/dist/scores/index.d.ts +4 -0
  669. package/dist/scores/index.d.ts.map +1 -0
  670. package/dist/scores/index.js +4 -0
  671. package/dist/scores/index.js.map +1 -0
  672. package/dist/scores/run-experiment/index.d.ts +61 -0
  673. package/dist/scores/run-experiment/index.d.ts.map +1 -0
  674. package/dist/scores/run-experiment/scorerAccumulator.d.ts +12 -0
  675. package/dist/scores/run-experiment/scorerAccumulator.d.ts.map +1 -0
  676. package/dist/scores/scoreTraces/index.cjs +431 -0
  677. package/dist/scores/scoreTraces/index.cjs.map +1 -0
  678. package/dist/scores/scoreTraces/index.d.ts +3 -0
  679. package/dist/scores/scoreTraces/index.d.ts.map +1 -0
  680. package/dist/scores/scoreTraces/index.js +423 -0
  681. package/dist/scores/scoreTraces/index.js.map +1 -0
  682. package/dist/scores/scoreTraces/scoreTraces.d.ts +10 -0
  683. package/dist/scores/scoreTraces/scoreTraces.d.ts.map +1 -0
  684. package/dist/scores/scoreTraces/scoreTracesWorkflow.d.ts +95 -0
  685. package/dist/scores/scoreTraces/scoreTracesWorkflow.d.ts.map +1 -0
  686. package/dist/scores/scoreTraces/utils.d.ts +21 -0
  687. package/dist/scores/scoreTraces/utils.d.ts.map +1 -0
  688. package/dist/scores/types.d.ts +191 -0
  689. package/dist/scores/types.d.ts.map +1 -0
  690. package/dist/server/auth.d.ts +36 -0
  691. package/dist/server/auth.d.ts.map +1 -0
  692. package/dist/server/composite-auth.d.ts +9 -0
  693. package/dist/server/composite-auth.d.ts.map +1 -0
  694. package/dist/server/index.cjs +185 -0
  695. package/dist/server/index.cjs.map +1 -0
  696. package/dist/server/index.d.ts +37 -0
  697. package/dist/server/index.d.ts.map +1 -0
  698. package/dist/server/index.js +180 -0
  699. package/dist/server/index.js.map +1 -0
  700. package/dist/server/simple-auth.d.ts +32 -0
  701. package/dist/server/simple-auth.d.ts.map +1 -0
  702. package/dist/server/types.d.ts +140 -0
  703. package/dist/server/types.d.ts.map +1 -0
  704. package/dist/storage/base.d.ts +360 -0
  705. package/dist/storage/base.d.ts.map +1 -0
  706. package/dist/storage/base.warning.d.ts +8 -0
  707. package/dist/storage/base.warning.d.ts.map +1 -0
  708. package/dist/storage/constants.d.ts +14 -0
  709. package/dist/storage/constants.d.ts.map +1 -0
  710. package/dist/storage/domains/index.d.ts +8 -0
  711. package/dist/storage/domains/index.d.ts.map +1 -0
  712. package/dist/storage/domains/legacy-evals/base.d.ts +13 -0
  713. package/dist/storage/domains/legacy-evals/base.d.ts.map +1 -0
  714. package/dist/storage/domains/legacy-evals/index.d.ts +2 -0
  715. package/dist/storage/domains/legacy-evals/index.d.ts.map +1 -0
  716. package/dist/storage/domains/legacy-evals/inmemory.d.ts +17 -0
  717. package/dist/storage/domains/legacy-evals/inmemory.d.ts.map +1 -0
  718. package/dist/storage/domains/memory/base.d.ts +96 -0
  719. package/dist/storage/domains/memory/base.d.ts.map +1 -0
  720. package/dist/storage/domains/memory/index.d.ts +3 -0
  721. package/dist/storage/domains/memory/index.d.ts.map +1 -0
  722. package/dist/storage/domains/memory/inmemory.d.ts +85 -0
  723. package/dist/storage/domains/memory/inmemory.d.ts.map +1 -0
  724. package/dist/storage/domains/observability/base.d.ts +60 -0
  725. package/dist/storage/domains/observability/base.d.ts.map +1 -0
  726. package/dist/storage/domains/observability/index.d.ts +3 -0
  727. package/dist/storage/domains/observability/index.d.ts.map +1 -0
  728. package/dist/storage/domains/observability/inmemory.d.ts +48 -0
  729. package/dist/storage/domains/observability/inmemory.d.ts.map +1 -0
  730. package/dist/storage/domains/operations/base.d.ts +68 -0
  731. package/dist/storage/domains/operations/base.d.ts.map +1 -0
  732. package/dist/storage/domains/operations/index.d.ts +3 -0
  733. package/dist/storage/domains/operations/index.d.ts.map +1 -0
  734. package/dist/storage/domains/operations/inmemory.d.ts +37 -0
  735. package/dist/storage/domains/operations/inmemory.d.ts.map +1 -0
  736. package/dist/storage/domains/scores/base.d.ts +46 -0
  737. package/dist/storage/domains/scores/base.d.ts.map +1 -0
  738. package/dist/storage/domains/scores/index.d.ts +3 -0
  739. package/dist/storage/domains/scores/index.d.ts.map +1 -0
  740. package/dist/storage/domains/scores/inmemory.d.ts +50 -0
  741. package/dist/storage/domains/scores/inmemory.d.ts.map +1 -0
  742. package/dist/storage/domains/traces/base.d.ts +14 -0
  743. package/dist/storage/domains/traces/base.d.ts.map +1 -0
  744. package/dist/storage/domains/traces/index.d.ts +3 -0
  745. package/dist/storage/domains/traces/index.d.ts.map +1 -0
  746. package/dist/storage/domains/traces/inmemory.d.ts +22 -0
  747. package/dist/storage/domains/traces/inmemory.d.ts.map +1 -0
  748. package/dist/storage/domains/workflows/base.d.ts +47 -0
  749. package/dist/storage/domains/workflows/base.d.ts.map +1 -0
  750. package/dist/storage/domains/workflows/index.d.ts +3 -0
  751. package/dist/storage/domains/workflows/index.d.ts.map +1 -0
  752. package/dist/storage/domains/workflows/inmemory.d.ts +54 -0
  753. package/dist/storage/domains/workflows/inmemory.d.ts.map +1 -0
  754. package/dist/storage/index.cjs +1821 -0
  755. package/dist/storage/index.cjs.map +1 -0
  756. package/dist/storage/index.d.ts +7 -0
  757. package/dist/storage/index.d.ts.map +1 -0
  758. package/dist/storage/index.js +1746 -0
  759. package/dist/storage/index.js.map +1 -0
  760. package/dist/storage/index.warning.d.ts +3 -0
  761. package/dist/storage/index.warning.d.ts.map +1 -0
  762. package/dist/storage/mock.d.ts +242 -0
  763. package/dist/storage/mock.d.ts.map +1 -0
  764. package/dist/storage/storageWithInit.d.ts +3 -0
  765. package/dist/storage/storageWithInit.d.ts.map +1 -0
  766. package/dist/storage/types.d.ts +206 -0
  767. package/dist/storage/types.d.ts.map +1 -0
  768. package/dist/storage/utils.d.ts +2 -0
  769. package/dist/storage/utils.d.ts.map +1 -0
  770. package/dist/stream/MastraAgentNetworkStream.d.ts +22 -0
  771. package/dist/stream/MastraAgentNetworkStream.d.ts.map +1 -0
  772. package/dist/stream/MastraWorkflowStream.d.ts +19 -0
  773. package/dist/stream/MastraWorkflowStream.d.ts.map +1 -0
  774. package/dist/stream/RunOutput.d.ts +72 -0
  775. package/dist/stream/RunOutput.d.ts.map +1 -0
  776. package/dist/stream/aisdk/v4/input.d.ts +16 -0
  777. package/dist/stream/aisdk/v4/input.d.ts.map +1 -0
  778. package/dist/stream/aisdk/v4/transform.d.ts +5 -0
  779. package/dist/stream/aisdk/v4/transform.d.ts.map +1 -0
  780. package/dist/stream/aisdk/v5/compat/consume-stream.d.ts +8 -0
  781. package/dist/stream/aisdk/v5/compat/consume-stream.d.ts.map +1 -0
  782. package/dist/stream/aisdk/v5/compat/content.d.ts +7 -0
  783. package/dist/stream/aisdk/v5/compat/content.d.ts.map +1 -0
  784. package/dist/stream/aisdk/v5/compat/delayed-promise.d.ts +23 -0
  785. package/dist/stream/aisdk/v5/compat/delayed-promise.d.ts.map +1 -0
  786. package/dist/stream/aisdk/v5/compat/index.d.ts +8 -0
  787. package/dist/stream/aisdk/v5/compat/index.d.ts.map +1 -0
  788. package/dist/stream/aisdk/v5/compat/media.d.ts +91 -0
  789. package/dist/stream/aisdk/v5/compat/media.d.ts.map +1 -0
  790. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts +11 -0
  791. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts.map +1 -0
  792. package/dist/stream/aisdk/v5/compat/ui-message.d.ts +20 -0
  793. package/dist/stream/aisdk/v5/compat/ui-message.d.ts.map +1 -0
  794. package/dist/stream/aisdk/v5/compat/validation.d.ts +17 -0
  795. package/dist/stream/aisdk/v5/compat/validation.d.ts.map +1 -0
  796. package/dist/stream/aisdk/v5/execute.d.ts +41 -0
  797. package/dist/stream/aisdk/v5/execute.d.ts.map +1 -0
  798. package/dist/stream/aisdk/v5/file.d.ts +38 -0
  799. package/dist/stream/aisdk/v5/file.d.ts.map +1 -0
  800. package/dist/stream/aisdk/v5/input.d.ts +16 -0
  801. package/dist/stream/aisdk/v5/input.d.ts.map +1 -0
  802. package/dist/stream/aisdk/v5/output-helpers.d.ts +66 -0
  803. package/dist/stream/aisdk/v5/output-helpers.d.ts.map +1 -0
  804. package/dist/stream/aisdk/v5/output.d.ts +173 -0
  805. package/dist/stream/aisdk/v5/output.d.ts.map +1 -0
  806. package/dist/stream/aisdk/v5/test-utils.d.ts +19 -0
  807. package/dist/stream/aisdk/v5/test-utils.d.ts.map +1 -0
  808. package/dist/stream/aisdk/v5/transform.d.ts +27 -0
  809. package/dist/stream/aisdk/v5/transform.d.ts.map +1 -0
  810. package/dist/stream/base/base.d.ts +7 -0
  811. package/dist/stream/base/base.d.ts.map +1 -0
  812. package/dist/stream/base/consume-stream.d.ts +5 -0
  813. package/dist/stream/base/consume-stream.d.ts.map +1 -0
  814. package/dist/stream/base/index.d.ts +2 -0
  815. package/dist/stream/base/index.d.ts.map +1 -0
  816. package/dist/stream/base/input.d.ts +16 -0
  817. package/dist/stream/base/input.d.ts.map +1 -0
  818. package/dist/stream/base/output-format-handlers.d.ts +29 -0
  819. package/dist/stream/base/output-format-handlers.d.ts.map +1 -0
  820. package/dist/stream/base/output.d.ts +313 -0
  821. package/dist/stream/base/output.d.ts.map +1 -0
  822. package/dist/stream/base/schema.d.ts +31 -0
  823. package/dist/stream/base/schema.d.ts.map +1 -0
  824. package/dist/stream/index.cjs +45 -0
  825. package/dist/stream/index.cjs.map +1 -0
  826. package/dist/stream/index.d.ts +11 -0
  827. package/dist/stream/index.d.ts.map +1 -0
  828. package/dist/stream/index.js +4 -0
  829. package/dist/stream/index.js.map +1 -0
  830. package/dist/stream/types.d.ts +734 -0
  831. package/dist/stream/types.d.ts.map +1 -0
  832. package/dist/telemetry/composite-exporter.d.ts +10 -0
  833. package/dist/telemetry/composite-exporter.d.ts.map +1 -0
  834. package/dist/telemetry/index.cjs +32 -0
  835. package/dist/telemetry/index.cjs.map +1 -0
  836. package/dist/telemetry/index.d.ts +6 -0
  837. package/dist/telemetry/index.d.ts.map +1 -0
  838. package/dist/telemetry/index.js +3 -0
  839. package/dist/telemetry/index.js.map +1 -0
  840. package/dist/telemetry/otel-vendor.cjs +105 -0
  841. package/dist/telemetry/otel-vendor.cjs.map +1 -0
  842. package/dist/telemetry/otel-vendor.d.ts +11 -0
  843. package/dist/telemetry/otel-vendor.d.ts.map +1 -0
  844. package/dist/telemetry/otel-vendor.js +59 -0
  845. package/dist/telemetry/otel-vendor.js.map +1 -0
  846. package/dist/telemetry/storage-exporter.d.ts +21 -0
  847. package/dist/telemetry/storage-exporter.d.ts.map +1 -0
  848. package/dist/telemetry/telemetry.d.ts +59 -0
  849. package/dist/telemetry/telemetry.d.ts.map +1 -0
  850. package/dist/telemetry/telemetry.decorators.d.ts +15 -0
  851. package/dist/telemetry/telemetry.decorators.d.ts.map +1 -0
  852. package/dist/telemetry/types.d.ts +74 -0
  853. package/dist/telemetry/types.d.ts.map +1 -0
  854. package/dist/telemetry/utility.d.ts +15 -0
  855. package/dist/telemetry/utility.d.ts.map +1 -0
  856. package/dist/test-utils/llm-mock.cjs +181 -0
  857. package/dist/test-utils/llm-mock.cjs.map +1 -0
  858. package/dist/test-utils/llm-mock.d.ts +21 -0
  859. package/dist/test-utils/llm-mock.d.ts.map +1 -0
  860. package/dist/test-utils/llm-mock.js +178 -0
  861. package/dist/test-utils/llm-mock.js.map +1 -0
  862. package/dist/tools/index.cjs +25 -0
  863. package/dist/tools/index.cjs.map +1 -0
  864. package/dist/tools/index.d.ts +6 -0
  865. package/dist/tools/index.d.ts.map +1 -0
  866. package/dist/tools/index.js +4 -0
  867. package/dist/tools/index.js.map +1 -0
  868. package/dist/tools/index.warning.d.ts +8 -0
  869. package/dist/tools/index.warning.d.ts.map +1 -0
  870. package/dist/tools/is-vercel-tool.cjs +12 -0
  871. package/dist/tools/is-vercel-tool.cjs.map +1 -0
  872. package/dist/tools/is-vercel-tool.d.ts +2 -0
  873. package/dist/tools/is-vercel-tool.d.ts.map +1 -0
  874. package/dist/tools/is-vercel-tool.js +3 -0
  875. package/dist/tools/is-vercel-tool.js.map +1 -0
  876. package/dist/tools/stream.d.ts +19 -0
  877. package/dist/tools/stream.d.ts.map +1 -0
  878. package/dist/tools/tool-builder/builder.d.ts +28 -0
  879. package/dist/tools/tool-builder/builder.d.ts.map +1 -0
  880. package/dist/tools/tool.d.ts +186 -0
  881. package/dist/tools/tool.d.ts.map +1 -0
  882. package/dist/tools/toolchecks.d.ts +9 -0
  883. package/dist/tools/toolchecks.d.ts.map +1 -0
  884. package/dist/tools/types.d.ts +70 -0
  885. package/dist/tools/types.d.ts.map +1 -0
  886. package/dist/tools/ui-types.d.ts +39 -0
  887. package/dist/tools/ui-types.d.ts.map +1 -0
  888. package/dist/tools/validation.d.ts +19 -0
  889. package/dist/tools/validation.d.ts.map +1 -0
  890. package/dist/tts/index.cjs +12 -0
  891. package/dist/tts/index.cjs.map +1 -0
  892. package/dist/tts/index.d.ts +22 -0
  893. package/dist/tts/index.d.ts.map +1 -0
  894. package/dist/tts/index.js +3 -0
  895. package/dist/tts/index.js.map +1 -0
  896. package/dist/tts/index.warning.d.ts +7 -0
  897. package/dist/tts/index.warning.d.ts.map +1 -0
  898. package/dist/types/dynamic-argument.d.ts +9 -0
  899. package/dist/types/dynamic-argument.d.ts.map +1 -0
  900. package/dist/types/index.cjs +4 -0
  901. package/dist/types/index.cjs.map +1 -0
  902. package/dist/types/index.d.ts +2 -0
  903. package/dist/types/index.d.ts.map +1 -0
  904. package/dist/types/index.js +3 -0
  905. package/dist/types/index.js.map +1 -0
  906. package/dist/types/zod-compat.d.ts +23 -0
  907. package/dist/types/zod-compat.d.ts.map +1 -0
  908. package/dist/utils.cjs +72 -0
  909. package/dist/utils.cjs.map +1 -0
  910. package/dist/utils.d.ts +148 -0
  911. package/dist/utils.d.ts.map +1 -0
  912. package/dist/utils.js +3 -0
  913. package/dist/utils.js.map +1 -0
  914. package/dist/vector/embed.d.ts +3 -0
  915. package/dist/vector/embed.d.ts.map +1 -0
  916. package/dist/vector/filter/base.d.ts +128 -0
  917. package/dist/vector/filter/base.d.ts.map +1 -0
  918. package/dist/vector/filter/index.cjs +12 -0
  919. package/dist/vector/filter/index.cjs.map +1 -0
  920. package/dist/vector/filter/index.d.ts +2 -0
  921. package/dist/vector/filter/index.d.ts.map +1 -0
  922. package/dist/vector/filter/index.js +3 -0
  923. package/dist/vector/filter/index.js.map +1 -0
  924. package/dist/vector/index.cjs +25 -0
  925. package/dist/vector/index.cjs.map +1 -0
  926. package/dist/vector/index.d.ts +5 -0
  927. package/dist/vector/index.d.ts.map +1 -0
  928. package/dist/vector/index.js +4 -0
  929. package/dist/vector/index.js.map +1 -0
  930. package/dist/vector/index.warning.d.ts +6 -0
  931. package/dist/vector/index.warning.d.ts.map +1 -0
  932. package/dist/vector/types.d.ts +152 -0
  933. package/dist/vector/types.d.ts.map +1 -0
  934. package/dist/vector/vector.d.ts +57 -0
  935. package/dist/vector/vector.d.ts.map +1 -0
  936. package/dist/voice/aisdk/index.d.ts +3 -0
  937. package/dist/voice/aisdk/index.d.ts.map +1 -0
  938. package/dist/voice/aisdk/speech.d.ts +23 -0
  939. package/dist/voice/aisdk/speech.d.ts.map +1 -0
  940. package/dist/voice/aisdk/transcription.d.ts +22 -0
  941. package/dist/voice/aisdk/transcription.d.ts.map +1 -0
  942. package/dist/voice/composite-voice.d.ts +78 -0
  943. package/dist/voice/composite-voice.d.ts.map +1 -0
  944. package/dist/voice/default-voice.d.ts +13 -0
  945. package/dist/voice/default-voice.d.ts.map +1 -0
  946. package/dist/voice/index.cjs +28 -0
  947. package/dist/voice/index.cjs.map +1 -0
  948. package/dist/voice/index.d.ts +5 -0
  949. package/dist/voice/index.d.ts.map +1 -0
  950. package/dist/voice/index.js +3 -0
  951. package/dist/voice/index.js.map +1 -0
  952. package/dist/voice/voice.d.ts +132 -0
  953. package/dist/voice/voice.d.ts.map +1 -0
  954. package/dist/workflows/constants.cjs +16 -0
  955. package/dist/workflows/constants.cjs.map +1 -0
  956. package/dist/workflows/constants.d.ts +3 -0
  957. package/dist/workflows/constants.d.ts.map +1 -0
  958. package/dist/workflows/constants.js +3 -0
  959. package/dist/workflows/constants.js.map +1 -0
  960. package/dist/workflows/default.d.ts +345 -0
  961. package/dist/workflows/default.d.ts.map +1 -0
  962. package/dist/workflows/evented/execution-engine.d.ts +41 -0
  963. package/dist/workflows/evented/execution-engine.d.ts.map +1 -0
  964. package/dist/workflows/evented/index.cjs +44 -0
  965. package/dist/workflows/evented/index.cjs.map +1 -0
  966. package/dist/workflows/evented/index.d.ts +5 -0
  967. package/dist/workflows/evented/index.d.ts.map +1 -0
  968. package/dist/workflows/evented/index.js +3 -0
  969. package/dist/workflows/evented/index.js.map +1 -0
  970. package/dist/workflows/evented/step-executor.d.ts +90 -0
  971. package/dist/workflows/evented/step-executor.d.ts.map +1 -0
  972. package/dist/workflows/evented/workflow-event-processor/index.d.ts +54 -0
  973. package/dist/workflows/evented/workflow-event-processor/index.d.ts.map +1 -0
  974. package/dist/workflows/evented/workflow-event-processor/loop.d.ts +21 -0
  975. package/dist/workflows/evented/workflow-event-processor/loop.d.ts.map +1 -0
  976. package/dist/workflows/evented/workflow-event-processor/parallel.d.ts +18 -0
  977. package/dist/workflows/evented/workflow-event-processor/parallel.d.ts.map +1 -0
  978. package/dist/workflows/evented/workflow-event-processor/sleep.d.ts +24 -0
  979. package/dist/workflows/evented/workflow-event-processor/sleep.d.ts.map +1 -0
  980. package/dist/workflows/evented/workflow-event-processor/utils.d.ts +30 -0
  981. package/dist/workflows/evented/workflow-event-processor/utils.d.ts.map +1 -0
  982. package/dist/workflows/evented/workflow.d.ts +81 -0
  983. package/dist/workflows/evented/workflow.d.ts.map +1 -0
  984. package/dist/workflows/execution-engine.d.ts +75 -0
  985. package/dist/workflows/execution-engine.d.ts.map +1 -0
  986. package/dist/workflows/index.cjs +60 -0
  987. package/dist/workflows/index.cjs.map +1 -0
  988. package/dist/workflows/index.d.ts +7 -0
  989. package/dist/workflows/index.d.ts.map +1 -0
  990. package/dist/workflows/index.js +3 -0
  991. package/dist/workflows/index.js.map +1 -0
  992. package/dist/workflows/index.warning.d.ts +6 -0
  993. package/dist/workflows/index.warning.d.ts.map +1 -0
  994. package/dist/workflows/legacy/index.cjs +92 -0
  995. package/dist/workflows/legacy/index.cjs.map +1 -0
  996. package/dist/workflows/legacy/index.d.ts +5 -0
  997. package/dist/workflows/legacy/index.d.ts.map +1 -0
  998. package/dist/workflows/legacy/index.js +3 -0
  999. package/dist/workflows/legacy/index.js.map +1 -0
  1000. package/dist/workflows/legacy/machine.d.ts +386 -0
  1001. package/dist/workflows/legacy/machine.d.ts.map +1 -0
  1002. package/dist/workflows/legacy/step.d.ts +15 -0
  1003. package/dist/workflows/legacy/step.d.ts.map +1 -0
  1004. package/dist/workflows/legacy/types.d.ts +397 -0
  1005. package/dist/workflows/legacy/types.d.ts.map +1 -0
  1006. package/dist/workflows/legacy/utils.d.ts +68 -0
  1007. package/dist/workflows/legacy/utils.d.ts.map +1 -0
  1008. package/dist/workflows/legacy/workflow-instance.d.ts +97 -0
  1009. package/dist/workflows/legacy/workflow-instance.d.ts.map +1 -0
  1010. package/dist/workflows/legacy/workflow.d.ts +109 -0
  1011. package/dist/workflows/legacy/workflow.d.ts.map +1 -0
  1012. package/dist/workflows/step.d.ts +64 -0
  1013. package/dist/workflows/step.d.ts.map +1 -0
  1014. package/dist/workflows/types.d.ts +351 -0
  1015. package/dist/workflows/types.d.ts.map +1 -0
  1016. package/dist/workflows/utils.d.ts +19 -0
  1017. package/dist/workflows/utils.d.ts.map +1 -0
  1018. package/dist/workflows/workflow.d.ts +493 -0
  1019. package/dist/workflows/workflow.d.ts.map +1 -0
  1020. package/dist/workflows/workflow.warning.d.ts +9 -0
  1021. package/dist/workflows/workflow.warning.d.ts.map +1 -0
  1022. package/dist/zod-to-json.cjs +12 -0
  1023. package/dist/zod-to-json.cjs.map +1 -0
  1024. package/dist/zod-to-json.d.ts +2 -0
  1025. package/dist/zod-to-json.d.ts.map +1 -0
  1026. package/dist/zod-to-json.js +3 -0
  1027. package/dist/zod-to-json.js.map +1 -0
  1028. package/error.d.ts +1 -0
  1029. package/eval.d.ts +1 -0
  1030. package/events.d.ts +1 -0
  1031. package/hooks.d.ts +1 -0
  1032. package/integration.d.ts +1 -0
  1033. package/llm.d.ts +1 -0
  1034. package/logger.d.ts +1 -0
  1035. package/loop.d.ts +1 -0
  1036. package/mastra.d.ts +1 -0
  1037. package/mcp.d.ts +1 -0
  1038. package/memory.d.ts +1 -0
  1039. package/package.json +305 -0
  1040. package/processors.d.ts +1 -0
  1041. package/relevance.d.ts +1 -0
  1042. package/runtime-context.d.ts +1 -0
  1043. package/scores/scoreTraces.d.ts +1 -0
  1044. package/scores.d.ts +1 -0
  1045. package/server.d.ts +1 -0
  1046. package/src/llm/model/provider-types.generated.d.ts +1205 -0
  1047. package/storage.d.ts +1 -0
  1048. package/stream.d.ts +1 -0
  1049. package/telemetry/otel-vendor.d.ts +1 -0
  1050. package/telemetry.d.ts +1 -0
  1051. package/test-utils/llm-mock.d.ts +1 -0
  1052. package/tools/is-vercel-tool.d.ts +1 -0
  1053. package/tools.d.ts +1 -0
  1054. package/tts.d.ts +1 -0
  1055. package/types.d.ts +1 -0
  1056. package/utils/zod-to-json.d.ts +1 -0
  1057. package/utils.d.ts +1 -0
  1058. package/vector/filter.d.ts +1 -0
  1059. package/vector.d.ts +1 -0
  1060. package/voice.d.ts +1 -0
  1061. package/workflows/_constants.d.ts +1 -0
  1062. package/workflows/evented.d.ts +1 -0
  1063. package/workflows/legacy.d.ts +1 -0
  1064. package/workflows.d.ts +1 -0
@@ -0,0 +1,1700 @@
1
+ import { WorkflowEventProcessor } from './chunk-N2ILP2YD.js';
2
+ import { saveScorePayloadSchema } from './chunk-UWTYVVVZ.js';
3
+ import { PubSub } from './chunk-BVUMKER5.js';
4
+ import { augmentWithInit } from './chunk-436FFEF6.js';
5
+ import { InstrumentClass, Telemetry } from './chunk-BLUDYAPI.js';
6
+ import { registerHook } from './chunk-TTELJD4F.js';
7
+ import { InMemoryServerCache } from './chunk-3NTOFNIU.js';
8
+ import { setupAITracing, getAllAITracing, shutdownAITracingRegistry } from './chunk-WIMFJ2BA.js';
9
+ import { noopLogger } from './chunk-PFXXH2RP.js';
10
+ import { MastraError } from './chunk-PZUZNPFM.js';
11
+ import { ConsoleLogger, LogLevel } from './chunk-UXG7PYML.js';
12
+ import { __decoratorStart, __decorateElement, __runInitializers } from './chunk-3HXBPDKN.js';
13
+ import { randomUUID } from 'crypto';
14
+ import EventEmitter from 'events';
15
+ import pMap from 'p-map';
16
+
17
+ var EventEmitterPubSub = class extends PubSub {
18
+ emitter;
19
+ constructor() {
20
+ super();
21
+ this.emitter = new EventEmitter();
22
+ }
23
+ async publish(topic, event) {
24
+ const id = crypto.randomUUID();
25
+ const createdAt = /* @__PURE__ */new Date();
26
+ this.emitter.emit(topic, {
27
+ ...event,
28
+ id,
29
+ createdAt
30
+ });
31
+ }
32
+ async subscribe(topic, cb) {
33
+ this.emitter.on(topic, cb);
34
+ }
35
+ async unsubscribe(topic, cb) {
36
+ this.emitter.off(topic, cb);
37
+ }
38
+ async flush() {}
39
+ };
40
+ function createOnScorerHook(mastra) {
41
+ return async hookData => {
42
+ const storage = mastra.getStorage();
43
+ if (!storage) {
44
+ mastra.getLogger()?.warn("Storage not found, skipping score validation and saving");
45
+ return;
46
+ }
47
+ const entityId = hookData.entity.id;
48
+ const entityType = hookData.entityType;
49
+ const scorer = hookData.scorer;
50
+ try {
51
+ const scorerToUse = await findScorer(mastra, entityId, entityType, scorer.name);
52
+ if (!scorerToUse) {
53
+ throw new MastraError({
54
+ id: "MASTRA_SCORER_NOT_FOUND",
55
+ domain: "MASTRA" /* MASTRA */,
56
+ category: "USER" /* USER */,
57
+ text: `Scorer with ID ${hookData.scorer.id} not found`
58
+ });
59
+ }
60
+ let input = hookData.input;
61
+ let output = hookData.output;
62
+ const {
63
+ structuredOutput,
64
+ ...rest
65
+ } = hookData;
66
+ const runResult = await scorerToUse.scorer.run({
67
+ ...rest,
68
+ input,
69
+ output
70
+ });
71
+ let spanId;
72
+ let traceId;
73
+ const currentSpan = hookData.tracingContext?.currentSpan;
74
+ if (currentSpan && currentSpan.isValid) {
75
+ spanId = currentSpan.id;
76
+ traceId = currentSpan.traceId;
77
+ }
78
+ const payload = {
79
+ ...rest,
80
+ ...runResult,
81
+ entityId,
82
+ scorerId: hookData.scorer.name,
83
+ spanId,
84
+ traceId,
85
+ metadata: {
86
+ structuredOutput: !!structuredOutput
87
+ }
88
+ };
89
+ await validateAndSaveScore(storage, payload);
90
+ if (currentSpan && spanId && traceId) {
91
+ await pMap(currentSpan.aiTracing.getExporters(), async exporter => {
92
+ if (exporter.addScoreToTrace) {
93
+ await exporter.addScoreToTrace({
94
+ traceId,
95
+ spanId,
96
+ score: runResult.score,
97
+ reason: runResult.reason,
98
+ scorerName: scorerToUse.scorer.name,
99
+ metadata: {
100
+ ...(currentSpan.metadata ?? {})
101
+ }
102
+ });
103
+ }
104
+ }, {
105
+ concurrency: 3
106
+ });
107
+ }
108
+ } catch (error) {
109
+ const mastraError = new MastraError({
110
+ id: "MASTRA_SCORER_FAILED_TO_RUN_HOOK",
111
+ domain: "SCORER" /* SCORER */,
112
+ category: "USER" /* USER */,
113
+ details: {
114
+ scorerId: scorer.id,
115
+ entityId,
116
+ entityType
117
+ }
118
+ }, error);
119
+ mastra.getLogger()?.trackException(mastraError);
120
+ mastra.getLogger()?.error(mastraError.toString());
121
+ }
122
+ };
123
+ }
124
+ async function validateAndSaveScore(storage, payload) {
125
+ const payloadToSave = saveScorePayloadSchema.parse(payload);
126
+ await storage?.saveScore(payloadToSave);
127
+ }
128
+ async function findScorer(mastra, entityId, entityType, scorerName) {
129
+ let scorerToUse;
130
+ if (entityType === "AGENT") {
131
+ const scorers = await mastra.getAgentById(entityId).getScorers();
132
+ for (const [_, scorer] of Object.entries(scorers)) {
133
+ if (scorer.scorer.name === scorerName) {
134
+ scorerToUse = scorer;
135
+ break;
136
+ }
137
+ }
138
+ } else if (entityType === "WORKFLOW") {
139
+ const scorers = await mastra.getWorkflowById(entityId).getScorers();
140
+ for (const [_, scorer] of Object.entries(scorers)) {
141
+ if (scorer.scorer.name === scorerName) {
142
+ scorerToUse = scorer;
143
+ break;
144
+ }
145
+ }
146
+ }
147
+ if (!scorerToUse) {
148
+ const mastraRegisteredScorer = mastra.getScorerByName(scorerName);
149
+ scorerToUse = mastraRegisteredScorer ? {
150
+ scorer: mastraRegisteredScorer
151
+ } : void 0;
152
+ }
153
+ return scorerToUse;
154
+ }
155
+
156
+ // src/mastra/index.ts
157
+ var _Mastra_decorators, _init;
158
+ _Mastra_decorators = [InstrumentClass({
159
+ prefix: "mastra",
160
+ excludeMethods: ["getLogger", "getTelemetry"]
161
+ })];
162
+ var Mastra = class {
163
+ #vectors;
164
+ #agents;
165
+ #logger;
166
+ #legacy_workflows;
167
+ #workflows;
168
+ #tts;
169
+ #deployer;
170
+ #serverMiddleware = [];
171
+ /**
172
+ * @deprecated Use {@link getAITracing()} instead.
173
+ */
174
+ #telemetry;
175
+ #storage;
176
+ #memory;
177
+ #scorers;
178
+ #server;
179
+ #mcpServers;
180
+ #bundler;
181
+ #idGenerator;
182
+ #pubsub;
183
+ #gateways;
184
+ #events = {};
185
+ #internalMastraWorkflows = {};
186
+ // This is only used internally for server handlers that require temporary persistence
187
+ #serverCache;
188
+ /**
189
+ * @deprecated use {@link getAITracing()} instead
190
+ */
191
+ get telemetry() {
192
+ return this.#telemetry;
193
+ }
194
+ /**
195
+ * @deprecated use getStorage() instead
196
+ */
197
+ get storage() {
198
+ return this.#storage;
199
+ }
200
+ /**
201
+ * @deprecated use getMemory() instead
202
+ */
203
+ get memory() {
204
+ return this.#memory;
205
+ }
206
+ get pubsub() {
207
+ return this.#pubsub;
208
+ }
209
+ /**
210
+ * Gets the currently configured ID generator function.
211
+ *
212
+ * @example
213
+ * ```typescript
214
+ * const mastra = new Mastra({
215
+ * idGenerator: () => `custom-${Date.now()}`
216
+ * });
217
+ * const generator = mastra.getIdGenerator();
218
+ * console.log(generator?.()); // "custom-1234567890"
219
+ * ```
220
+ */
221
+ getIdGenerator() {
222
+ return this.#idGenerator;
223
+ }
224
+ /**
225
+ * Generates a unique identifier using the configured generator or defaults to `crypto.randomUUID()`.
226
+ *
227
+ * This method is used internally by Mastra for creating unique IDs for various entities
228
+ * like workflow runs, agent conversations, and other resources that need unique identification.
229
+ *
230
+ * @throws {MastraError} When the custom ID generator returns an empty string
231
+ *
232
+ * @example
233
+ * ```typescript
234
+ * const mastra = new Mastra();
235
+ * const id = mastra.generateId();
236
+ * console.log(id); // "550e8400-e29b-41d4-a716-446655440000"
237
+ * ```
238
+ */
239
+ generateId() {
240
+ if (this.#idGenerator) {
241
+ const id = this.#idGenerator();
242
+ if (!id) {
243
+ const error = new MastraError({
244
+ id: "MASTRA_ID_GENERATOR_RETURNED_EMPTY_STRING",
245
+ domain: "MASTRA" /* MASTRA */,
246
+ category: "USER" /* USER */,
247
+ text: "ID generator returned an empty string, which is not allowed"
248
+ });
249
+ this.#logger?.trackException(error);
250
+ throw error;
251
+ }
252
+ return id;
253
+ }
254
+ return randomUUID();
255
+ }
256
+ /**
257
+ * Sets a custom ID generator function for creating unique identifiers.
258
+ *
259
+ * The ID generator function will be used by `generateId()` instead of the default
260
+ * `crypto.randomUUID()`. This is useful for creating application-specific ID formats
261
+ * or integrating with existing ID generation systems.
262
+ *
263
+ * @example
264
+ * ```typescript
265
+ * const mastra = new Mastra();
266
+ * mastra.setIdGenerator(() => `custom-${Date.now()}`);
267
+ * const id = mastra.generateId();
268
+ * console.log(id); // "custom-1234567890"
269
+ * ```
270
+ */
271
+ setIdGenerator(idGenerator) {
272
+ this.#idGenerator = idGenerator;
273
+ }
274
+ /**
275
+ * Creates a new Mastra instance with the provided configuration.
276
+ *
277
+ * The constructor initializes all the components specified in the config, sets up
278
+ * internal systems like logging and telemetry, and registers components with each other.
279
+ *
280
+ * @example
281
+ * ```typescript
282
+ * const mastra = new Mastra({
283
+ * agents: {
284
+ * assistant: new Agent({
285
+ * name: 'assistant',
286
+ * instructions: 'You are a helpful assistant',
287
+ * model: 'openai/gpt-5'
288
+ * })
289
+ * },
290
+ * storage: new PostgresStore({
291
+ * connectionString: process.env.DATABASE_URL
292
+ * }),
293
+ * logger: new PinoLogger({ name: 'MyApp' })
294
+ * });
295
+ * ```
296
+ */
297
+ constructor(config) {
298
+ if (config?.serverMiddleware) {
299
+ this.#serverMiddleware = config.serverMiddleware.map(m => ({
300
+ handler: m.handler,
301
+ path: m.path || "/api/*"
302
+ }));
303
+ }
304
+ this.#serverCache = new InMemoryServerCache();
305
+ if (config?.pubsub) {
306
+ this.#pubsub = config.pubsub;
307
+ } else {
308
+ this.#pubsub = new EventEmitterPubSub();
309
+ }
310
+ this.#events = {};
311
+ for (const topic in config?.events ?? {}) {
312
+ if (!Array.isArray(config?.events?.[topic])) {
313
+ this.#events[topic] = [config?.events?.[topic]];
314
+ } else {
315
+ this.#events[topic] = config?.events?.[topic] ?? [];
316
+ }
317
+ }
318
+ const workflowEventProcessor = new WorkflowEventProcessor({
319
+ mastra: this
320
+ });
321
+ const workflowEventCb = async (event, cb) => {
322
+ try {
323
+ await workflowEventProcessor.process(event, cb);
324
+ } catch (e) {
325
+ console.error("Error processing event", e);
326
+ }
327
+ };
328
+ if (this.#events.workflows) {
329
+ this.#events.workflows.push(workflowEventCb);
330
+ } else {
331
+ this.#events.workflows = [workflowEventCb];
332
+ }
333
+ let logger;
334
+ if (config?.logger === false) {
335
+ logger = noopLogger;
336
+ } else {
337
+ if (config?.logger) {
338
+ logger = config.logger;
339
+ } else {
340
+ const levelOnEnv = process.env.NODE_ENV === "production" && process.env.MASTRA_DEV !== "true" ? LogLevel.WARN : LogLevel.INFO;
341
+ logger = new ConsoleLogger({
342
+ name: "Mastra",
343
+ level: levelOnEnv
344
+ });
345
+ }
346
+ }
347
+ this.#logger = logger;
348
+ this.#idGenerator = config?.idGenerator;
349
+ let storage = config?.storage;
350
+ if (storage) {
351
+ storage = augmentWithInit(storage);
352
+ }
353
+ this.#telemetry = Telemetry.init(config?.telemetry);
354
+ if (config?.telemetry?.enabled !== false && typeof globalThis !== "undefined" && globalThis.___MASTRA_TELEMETRY___ !== true) {
355
+ this.#logger?.warn(`Mastra telemetry is enabled, but the required instrumentation file was not loaded. If you are using Mastra outside of the mastra server environment, see: https://mastra.ai/en/docs/observability/tracing#tracing-outside-mastra-server-environment`, `If you are using a custom instrumentation file or want to disable this warning, set the globalThis.___MASTRA_TELEMETRY___ variable to true in your instrumentation file.`);
356
+ }
357
+ if (config?.telemetry?.enabled !== false) {
358
+ this.#logger?.warn(`Mastra telemetry is deprecated and will be removed on the Nov 4th release. Instead use AI Tracing. More info can be found here: https://github.com/mastra-ai/mastra/issues/8577 and here: https://mastra.ai/en/docs/observability/ai-tracing/overview`);
359
+ }
360
+ if (config?.observability) {
361
+ setupAITracing(config.observability);
362
+ }
363
+ if (this.#telemetry && storage) {
364
+ this.#storage = this.#telemetry.traceClass(storage, {
365
+ excludeMethods: ["__setTelemetry", "__getTelemetry", "batchTraceInsert", "getTraces", "getEvalsByAgentName"]
366
+ });
367
+ this.#storage.__setTelemetry(this.#telemetry);
368
+ } else {
369
+ this.#storage = storage;
370
+ }
371
+ this.#gateways = config?.gateways;
372
+ if (config?.gateways) {
373
+ this.#syncGatewayRegistry();
374
+ }
375
+ if (config?.vectors) {
376
+ let vectors = {};
377
+ Object.entries(config.vectors).forEach(([key, vector]) => {
378
+ if (this.#telemetry) {
379
+ vectors[key] = this.#telemetry.traceClass(vector, {
380
+ excludeMethods: ["__setTelemetry", "__getTelemetry"]
381
+ });
382
+ vectors[key].__setTelemetry(this.#telemetry);
383
+ } else {
384
+ vectors[key] = vector;
385
+ }
386
+ });
387
+ this.#vectors = vectors;
388
+ }
389
+ if (config?.mcpServers) {
390
+ this.#mcpServers = config.mcpServers;
391
+ Object.entries(this.#mcpServers).forEach(([key, server]) => {
392
+ server.setId(key);
393
+ if (this.#telemetry) {
394
+ server.__setTelemetry(this.#telemetry);
395
+ }
396
+ server.__registerMastra(this);
397
+ server.__setLogger(this.getLogger());
398
+ });
399
+ }
400
+ if (config && `memory` in config) {
401
+ const error = new MastraError({
402
+ id: "MASTRA_CONSTRUCTOR_INVALID_MEMORY_CONFIG",
403
+ domain: "MASTRA" /* MASTRA */,
404
+ category: "USER" /* USER */,
405
+ text: `
406
+ Memory should be added to Agents, not to Mastra.
407
+
408
+ Instead of:
409
+ new Mastra({ memory: new Memory() })
410
+
411
+ do:
412
+ new Agent({ memory: new Memory() })
413
+ `
414
+ });
415
+ this.#logger?.trackException(error);
416
+ throw error;
417
+ }
418
+ if (config?.tts) {
419
+ this.#tts = config.tts;
420
+ Object.entries(this.#tts).forEach(([key, ttsCl]) => {
421
+ if (this.#tts?.[key]) {
422
+ if (this.#telemetry) {
423
+ this.#tts[key] = this.#telemetry.traceClass(ttsCl, {
424
+ excludeMethods: ["__setTelemetry", "__getTelemetry"]
425
+ });
426
+ this.#tts[key].__setTelemetry(this.#telemetry);
427
+ }
428
+ }
429
+ });
430
+ }
431
+ const agents = {};
432
+ if (config?.agents) {
433
+ Object.entries(config.agents).forEach(([key, agent]) => {
434
+ if (agents[key]) {
435
+ const error = new MastraError({
436
+ id: "MASTRA_AGENT_REGISTRATION_DUPLICATE_ID",
437
+ domain: "MASTRA" /* MASTRA */,
438
+ category: "USER" /* USER */,
439
+ text: `Agent with name ID:${key} already exists`,
440
+ details: {
441
+ agentId: key
442
+ }
443
+ });
444
+ this.#logger?.trackException(error);
445
+ throw error;
446
+ }
447
+ agent.__registerMastra(this);
448
+ agent.__registerPrimitives({
449
+ logger: this.getLogger(),
450
+ telemetry: this.#telemetry,
451
+ storage: this.storage,
452
+ memory: this.memory,
453
+ agents,
454
+ tts: this.#tts,
455
+ vectors: this.#vectors
456
+ });
457
+ agents[key] = agent;
458
+ });
459
+ }
460
+ this.#agents = agents;
461
+ const scorers = {};
462
+ if (config?.scorers) {
463
+ Object.entries(config.scorers).forEach(([key, scorer]) => {
464
+ scorers[key] = scorer;
465
+ });
466
+ }
467
+ this.#scorers = scorers;
468
+ this.#legacy_workflows = {};
469
+ if (config?.legacy_workflows) {
470
+ Object.entries(config.legacy_workflows).forEach(([key, workflow]) => {
471
+ workflow.__registerMastra(this);
472
+ workflow.__registerPrimitives({
473
+ logger: this.getLogger(),
474
+ telemetry: this.#telemetry,
475
+ storage: this.storage,
476
+ memory: this.memory,
477
+ agents,
478
+ tts: this.#tts,
479
+ vectors: this.#vectors
480
+ });
481
+ this.#legacy_workflows[key] = workflow;
482
+ const workflowSteps = Object.values(workflow.steps).filter(step => !!step.workflowId && !!step.workflow);
483
+ if (workflowSteps.length > 0) {
484
+ workflowSteps.forEach(step => {
485
+ this.#legacy_workflows[step.workflowId] = step.workflow;
486
+ });
487
+ }
488
+ });
489
+ }
490
+ this.#workflows = {};
491
+ if (config?.workflows) {
492
+ Object.entries(config.workflows).forEach(([key, workflow]) => {
493
+ workflow.__registerMastra(this);
494
+ workflow.__registerPrimitives({
495
+ logger: this.getLogger(),
496
+ telemetry: this.#telemetry,
497
+ storage: this.storage,
498
+ memory: this.memory,
499
+ agents,
500
+ tts: this.#tts,
501
+ vectors: this.#vectors
502
+ });
503
+ this.#workflows[key] = workflow;
504
+ });
505
+ }
506
+ if (config?.server) {
507
+ this.#server = config.server;
508
+ }
509
+ registerHook("onScorerRun" /* ON_SCORER_RUN */, createOnScorerHook(this));
510
+ if (config?.observability) {
511
+ this.registerAITracingExporters();
512
+ this.initAITracingExporters();
513
+ }
514
+ this.setLogger({
515
+ logger
516
+ });
517
+ }
518
+ /**
519
+ * Register this Mastra instance with AI tracing exporters that need it
520
+ */
521
+ registerAITracingExporters() {
522
+ const allTracingInstances = getAllAITracing();
523
+ allTracingInstances.forEach(tracing => {
524
+ const exporters = tracing.getExporters();
525
+ exporters.forEach(exporter => {
526
+ if ("__registerMastra" in exporter && typeof exporter.__registerMastra === "function") {
527
+ exporter.__registerMastra(this);
528
+ }
529
+ });
530
+ });
531
+ }
532
+ /**
533
+ * Initialize all AI tracing exporters after registration is complete
534
+ */
535
+ initAITracingExporters() {
536
+ const allTracingInstances = getAllAITracing();
537
+ allTracingInstances.forEach(tracing => {
538
+ const config = tracing.getConfig();
539
+ const exporters = tracing.getExporters();
540
+ exporters.forEach(exporter => {
541
+ if ("init" in exporter && typeof exporter.init === "function") {
542
+ try {
543
+ exporter.init(config);
544
+ } catch (error) {
545
+ this.#logger?.warn("Failed to initialize AI tracing exporter", {
546
+ exporterName: exporter.name,
547
+ error: error instanceof Error ? error.message : String(error)
548
+ });
549
+ }
550
+ }
551
+ });
552
+ });
553
+ }
554
+ /**
555
+ * Retrieves a registered agent by its name.
556
+ *
557
+ * @template TAgentName - The specific agent name type from the registered agents
558
+ * @throws {MastraError} When the agent with the specified name is not found
559
+ *
560
+ * @example
561
+ * ```typescript
562
+ * const mastra = new Mastra({
563
+ * agents: {
564
+ * weatherAgent: new Agent({
565
+ * name: 'weather-agent',
566
+ * instructions: 'You provide weather information',
567
+ * model: 'openai/gpt-5'
568
+ * })
569
+ * }
570
+ * });
571
+ * const agent = mastra.getAgent('weatherAgent');
572
+ * const response = await agent.generate('What is the weather?');
573
+ * ```
574
+ */
575
+ getAgent(name) {
576
+ const agent = this.#agents?.[name];
577
+ if (!agent) {
578
+ const error = new MastraError({
579
+ id: "MASTRA_GET_AGENT_BY_NAME_NOT_FOUND",
580
+ domain: "MASTRA" /* MASTRA */,
581
+ category: "USER" /* USER */,
582
+ text: `Agent with name ${String(name)} not found`,
583
+ details: {
584
+ status: 404,
585
+ agentName: String(name),
586
+ agents: Object.keys(this.#agents ?? {}).join(", ")
587
+ }
588
+ });
589
+ this.#logger?.trackException(error);
590
+ throw error;
591
+ }
592
+ return this.#agents[name];
593
+ }
594
+ /**
595
+ * Retrieves a registered agent by its unique ID.
596
+ *
597
+ * This method searches for an agent using its internal ID property. If no agent
598
+ * is found with the given ID, it also attempts to find an agent using the ID as
599
+ * a name (for backward compatibility).
600
+ *
601
+ * @throws {MastraError} When no agent is found with the specified ID
602
+ *
603
+ * @example
604
+ * ```typescript
605
+ * const mastra = new Mastra({
606
+ * agents: {
607
+ * assistant: new Agent({
608
+ * name: 'assistant',
609
+ * instructions: 'You are a helpful assistant',
610
+ * model: 'openai/gpt-5'
611
+ * })
612
+ * }
613
+ * });
614
+ *
615
+ * const assistant = mastra.getAgent('assistant');
616
+ * const sameAgent = mastra.getAgentById(assistant.id);
617
+ * ```
618
+ */
619
+ getAgentById(id) {
620
+ let agent = Object.values(this.#agents).find(a => a.id === id);
621
+ if (!agent) {
622
+ try {
623
+ agent = this.getAgent(id);
624
+ } catch {}
625
+ }
626
+ if (!agent) {
627
+ const error = new MastraError({
628
+ id: "MASTRA_GET_AGENT_BY_AGENT_ID_NOT_FOUND",
629
+ domain: "MASTRA" /* MASTRA */,
630
+ category: "USER" /* USER */,
631
+ text: `Agent with id ${String(id)} not found`,
632
+ details: {
633
+ status: 404,
634
+ agentId: String(id),
635
+ agents: Object.keys(this.#agents ?? {}).join(", ")
636
+ }
637
+ });
638
+ this.#logger?.trackException(error);
639
+ throw error;
640
+ }
641
+ return agent;
642
+ }
643
+ /**
644
+ * Returns all registered agents as a record keyed by their names.
645
+ *
646
+ * This method provides access to the complete registry of agents, allowing you to
647
+ * iterate over them, check what agents are available, or perform bulk operations.
648
+ *
649
+ * @example
650
+ * ```typescript
651
+ * const mastra = new Mastra({
652
+ * agents: {
653
+ * weatherAgent: new Agent({ name: 'weather', model: openai('gpt-4o') }),
654
+ * supportAgent: new Agent({ name: 'support', model: openai('gpt-4o') })
655
+ * }
656
+ * });
657
+ *
658
+ * const allAgents = mastra.getAgents();
659
+ * console.log(Object.keys(allAgents)); // ['weatherAgent', 'supportAgent']
660
+ * ```
661
+ */
662
+ getAgents() {
663
+ return this.#agents;
664
+ }
665
+ /**
666
+ * Retrieves a registered vector store by its name.
667
+ *
668
+ * @template TVectorName - The specific vector store name type from the registered vectors
669
+ * @throws {MastraError} When the vector store with the specified name is not found
670
+ *
671
+ * @example Using a vector store for semantic search
672
+ * ```typescript
673
+ * import { PineconeVector } from '@mastra/pinecone';
674
+ * import { OpenAIEmbedder } from '@mastra/embedders';
675
+ *
676
+ * const mastra = new Mastra({
677
+ * vectors: {
678
+ * knowledge: new PineconeVector({
679
+ * apiKey: process.env.PINECONE_API_KEY,
680
+ * indexName: 'knowledge-base',
681
+ * embedder: new OpenAIEmbedder({
682
+ * apiKey: process.env.OPENAI_API_KEY,
683
+ * model: 'text-embedding-3-small'
684
+ * })
685
+ * }),
686
+ * products: new PineconeVector({
687
+ * apiKey: process.env.PINECONE_API_KEY,
688
+ * indexName: 'product-catalog'
689
+ * })
690
+ * }
691
+ * });
692
+ *
693
+ * // Get a vector store and perform semantic search
694
+ * const knowledgeBase = mastra.getVector('knowledge');
695
+ * const results = await knowledgeBase.query({
696
+ * query: 'How to reset password?',
697
+ * topK: 5
698
+ * });
699
+ *
700
+ * console.log('Relevant documents:', results);
701
+ * ```
702
+ */
703
+ getVector(name) {
704
+ const vector = this.#vectors?.[name];
705
+ if (!vector) {
706
+ const error = new MastraError({
707
+ id: "MASTRA_GET_VECTOR_BY_NAME_NOT_FOUND",
708
+ domain: "MASTRA" /* MASTRA */,
709
+ category: "USER" /* USER */,
710
+ text: `Vector with name ${String(name)} not found`,
711
+ details: {
712
+ status: 404,
713
+ vectorName: String(name),
714
+ vectors: Object.keys(this.#vectors ?? {}).join(", ")
715
+ }
716
+ });
717
+ this.#logger?.trackException(error);
718
+ throw error;
719
+ }
720
+ return vector;
721
+ }
722
+ /**
723
+ * Returns all registered vector stores as a record keyed by their names.
724
+ *
725
+ * @example Listing all vector stores
726
+ * ```typescript
727
+ * const mastra = new Mastra({
728
+ * vectors: {
729
+ * documents: new PineconeVector({ indexName: 'docs' }),
730
+ * images: new PineconeVector({ indexName: 'images' }),
731
+ * products: new ChromaVector({ collectionName: 'products' })
732
+ * }
733
+ * });
734
+ *
735
+ * const allVectors = mastra.getVectors();
736
+ * console.log(Object.keys(allVectors)); // ['documents', 'images', 'products']
737
+ *
738
+ * // Check vector store types and configurations
739
+ * for (const [name, vectorStore] of Object.entries(allVectors)) {
740
+ * console.log(`Vector store ${name}:`, vectorStore.constructor.name);
741
+ * }
742
+ * ```
743
+ */
744
+ getVectors() {
745
+ return this.#vectors;
746
+ }
747
+ /**
748
+ * Gets the currently configured deployment provider.
749
+ *
750
+ * @example
751
+ * ```typescript
752
+ * const mastra = new Mastra({
753
+ * deployer: new VercelDeployer({
754
+ * token: process.env.VERCEL_TOKEN,
755
+ * projectId: process.env.VERCEL_PROJECT_ID
756
+ * })
757
+ * });
758
+ *
759
+ * const deployer = mastra.getDeployer();
760
+ * if (deployer) {
761
+ * await deployer.deploy({
762
+ * name: 'my-mastra-app',
763
+ * environment: 'production'
764
+ * });
765
+ * }
766
+ * ```
767
+ */
768
+ getDeployer() {
769
+ return this.#deployer;
770
+ }
771
+ /**
772
+ * Retrieves a registered legacy workflow by its ID.
773
+ *
774
+ * Legacy workflows are the previous generation of workflow system in Mastra,
775
+ * maintained for backward compatibility. For new implementations, use the
776
+ * modern workflow system accessed via `getWorkflow()`.
777
+ *
778
+ * @template TWorkflowId - The specific workflow ID type from the registered legacy workflows
779
+ * @throws {MastraError} When the legacy workflow with the specified ID is not found
780
+ * @deprecated Use `getWorkflow()` for new implementations
781
+ *
782
+ * @example Getting a legacy workflow
783
+ * ```typescript
784
+ * const mastra = new Mastra({
785
+ * legacy_workflows: {
786
+ * oldDataFlow: legacyWorkflowInstance
787
+ * }
788
+ * });
789
+ *
790
+ * const workflow = mastra.legacy_getWorkflow('oldDataFlow');
791
+ * const result = await workflow.execute({ input: 'data' });
792
+ * ```
793
+ */
794
+ legacy_getWorkflow(id, {
795
+ serialized
796
+ } = {}) {
797
+ const workflow = this.#legacy_workflows?.[id];
798
+ if (!workflow) {
799
+ const error = new MastraError({
800
+ id: "MASTRA_GET_LEGACY_WORKFLOW_BY_ID_NOT_FOUND",
801
+ domain: "MASTRA" /* MASTRA */,
802
+ category: "USER" /* USER */,
803
+ text: `Workflow with ID ${String(id)} not found`,
804
+ details: {
805
+ status: 404,
806
+ workflowId: String(id),
807
+ workflows: Object.keys(this.#legacy_workflows ?? {}).join(", ")
808
+ }
809
+ });
810
+ this.#logger?.trackException(error);
811
+ throw error;
812
+ }
813
+ if (serialized) {
814
+ return {
815
+ name: workflow.name
816
+ };
817
+ }
818
+ return workflow;
819
+ }
820
+ /**
821
+ * Retrieves a registered workflow by its ID.
822
+ *
823
+ * @template TWorkflowId - The specific workflow ID type from the registered workflows
824
+ * @throws {MastraError} When the workflow with the specified ID is not found
825
+ *
826
+ * @example Getting and executing a workflow
827
+ * ```typescript
828
+ * import { createWorkflow, createStep } from '@mastra/core/workflows';
829
+ * import { z } from 'zod';
830
+ *
831
+ * const processDataWorkflow = createWorkflow({
832
+ * name: 'process-data',
833
+ * triggerSchema: z.object({ input: z.string() })
834
+ * })
835
+ * .then(validateStep)
836
+ * .then(transformStep)
837
+ * .then(saveStep)
838
+ * .commit();
839
+ *
840
+ * const mastra = new Mastra({
841
+ * workflows: {
842
+ * dataProcessor: processDataWorkflow
843
+ * }
844
+ * });
845
+ * ```
846
+ */
847
+ getWorkflow(id, {
848
+ serialized
849
+ } = {}) {
850
+ const workflow = this.#workflows?.[id];
851
+ if (!workflow) {
852
+ const error = new MastraError({
853
+ id: "MASTRA_GET_WORKFLOW_BY_ID_NOT_FOUND",
854
+ domain: "MASTRA" /* MASTRA */,
855
+ category: "USER" /* USER */,
856
+ text: `Workflow with ID ${String(id)} not found`,
857
+ details: {
858
+ status: 404,
859
+ workflowId: String(id),
860
+ workflows: Object.keys(this.#workflows ?? {}).join(", ")
861
+ }
862
+ });
863
+ this.#logger?.trackException(error);
864
+ throw error;
865
+ }
866
+ if (serialized) {
867
+ return {
868
+ name: workflow.name
869
+ };
870
+ }
871
+ return workflow;
872
+ }
873
+ __registerInternalWorkflow(workflow) {
874
+ workflow.__registerMastra(this);
875
+ workflow.__registerPrimitives({
876
+ logger: this.getLogger(),
877
+ storage: this.storage
878
+ });
879
+ this.#internalMastraWorkflows[workflow.id] = workflow;
880
+ }
881
+ __hasInternalWorkflow(id) {
882
+ return Object.values(this.#internalMastraWorkflows).some(workflow => workflow.id === id);
883
+ }
884
+ __getInternalWorkflow(id) {
885
+ const workflow = Object.values(this.#internalMastraWorkflows).find(a => a.id === id);
886
+ if (!workflow) {
887
+ throw new MastraError({
888
+ id: "MASTRA_GET_INTERNAL_WORKFLOW_BY_ID_NOT_FOUND",
889
+ domain: "MASTRA" /* MASTRA */,
890
+ category: "SYSTEM" /* SYSTEM */,
891
+ text: `Workflow with id ${String(id)} not found`,
892
+ details: {
893
+ status: 404,
894
+ workflowId: String(id)
895
+ }
896
+ });
897
+ }
898
+ return workflow;
899
+ }
900
+ /**
901
+ * Retrieves a registered workflow by its unique ID.
902
+ *
903
+ * This method searches for a workflow using its internal ID property. If no workflow
904
+ * is found with the given ID, it also attempts to find a workflow using the ID as
905
+ * a name (for backward compatibility).
906
+ *
907
+ * @throws {MastraError} When no workflow is found with the specified ID
908
+ *
909
+ * @example Finding a workflow by ID
910
+ * ```typescript
911
+ * const mastra = new Mastra({
912
+ * workflows: {
913
+ * dataProcessor: createWorkflow({
914
+ * name: 'process-data',
915
+ * triggerSchema: z.object({ input: z.string() })
916
+ * }).commit()
917
+ * }
918
+ * });
919
+ *
920
+ * // Get the workflow's ID
921
+ * const workflow = mastra.getWorkflow('dataProcessor');
922
+ * const workflowId = workflow.id;
923
+ *
924
+ * // Later, retrieve the workflow by ID
925
+ * const sameWorkflow = mastra.getWorkflowById(workflowId);
926
+ * console.log(sameWorkflow.name); // "process-data"
927
+ * ```
928
+ */
929
+ getWorkflowById(id) {
930
+ let workflow = Object.values(this.#workflows).find(a => a.id === id);
931
+ if (!workflow) {
932
+ try {
933
+ workflow = this.getWorkflow(id);
934
+ } catch {}
935
+ }
936
+ if (!workflow) {
937
+ const error = new MastraError({
938
+ id: "MASTRA_GET_WORKFLOW_BY_ID_NOT_FOUND",
939
+ domain: "MASTRA" /* MASTRA */,
940
+ category: "USER" /* USER */,
941
+ text: `Workflow with id ${String(id)} not found`,
942
+ details: {
943
+ status: 404,
944
+ workflowId: String(id),
945
+ workflows: Object.keys(this.#workflows ?? {}).join(", ")
946
+ }
947
+ });
948
+ this.#logger?.trackException(error);
949
+ throw error;
950
+ }
951
+ return workflow;
952
+ }
953
+ /**
954
+ * Returns all registered legacy workflows as a record keyed by their IDs.
955
+ *
956
+ * Legacy workflows are the previous generation of workflow system in Mastra,
957
+ * maintained for backward compatibility. For new implementations, use `getWorkflows()`.
958
+ *
959
+ * @deprecated Use `getWorkflows()` for new implementations
960
+ *
961
+ * @example Listing all legacy workflows
962
+ * ```typescript
963
+ * const mastra = new Mastra({
964
+ * legacy_workflows: {
965
+ * oldFlow1: legacyWorkflow1,
966
+ * oldFlow2: legacyWorkflow2
967
+ * }
968
+ * });
969
+ *
970
+ * const allLegacyWorkflows = mastra.legacy_getWorkflows();
971
+ * console.log(Object.keys(allLegacyWorkflows)); // ['oldFlow1', 'oldFlow2']
972
+ *
973
+ * // Execute all legacy workflows
974
+ * for (const [id, workflow] of Object.entries(allLegacyWorkflows)) {
975
+ * console.log(`Legacy workflow ${id}:`, workflow.name);
976
+ * }
977
+ * ```
978
+ */
979
+ legacy_getWorkflows(props = {}) {
980
+ if (props.serialized) {
981
+ return Object.entries(this.#legacy_workflows).reduce((acc, [k, v]) => {
982
+ return {
983
+ ...acc,
984
+ [k]: {
985
+ name: v.name
986
+ }
987
+ };
988
+ }, {});
989
+ }
990
+ return this.#legacy_workflows;
991
+ }
992
+ /**
993
+ * Returns all registered scorers as a record keyed by their IDs.
994
+ *
995
+ * @example Listing all scorers
996
+ * ```typescript
997
+ * import { HelpfulnessScorer, AccuracyScorer, RelevanceScorer } from '@mastra/scorers';
998
+ *
999
+ * const mastra = new Mastra({
1000
+ * scorers: {
1001
+ * helpfulness: new HelpfulnessScorer(),
1002
+ * accuracy: new AccuracyScorer(),
1003
+ * relevance: new RelevanceScorer()
1004
+ * }
1005
+ * });
1006
+ *
1007
+ * const allScorers = mastra.getScorers();
1008
+ * console.log(Object.keys(allScorers)); // ['helpfulness', 'accuracy', 'relevance']
1009
+ *
1010
+ * // Check scorer configurations
1011
+ * for (const [id, scorer] of Object.entries(allScorers)) {
1012
+ * console.log(`Scorer ${id}:`, scorer.name, scorer.description);
1013
+ * }
1014
+ * ```
1015
+ */
1016
+ getScorers() {
1017
+ return this.#scorers;
1018
+ }
1019
+ /**
1020
+ * Retrieves a registered scorer by its key.
1021
+ *
1022
+ * @template TScorerKey - The specific scorer key type from the registered scorers
1023
+ * @throws {MastraError} When the scorer with the specified key is not found
1024
+ *
1025
+ * @example Getting and using a scorer
1026
+ * ```typescript
1027
+ * import { HelpfulnessScorer, AccuracyScorer } from '@mastra/scorers';
1028
+ *
1029
+ * const mastra = new Mastra({
1030
+ * scorers: {
1031
+ * helpfulness: new HelpfulnessScorer({
1032
+ * model: openai('gpt-4o'),
1033
+ * criteria: 'Rate how helpful this response is'
1034
+ * }),
1035
+ * accuracy: new AccuracyScorer({
1036
+ * model: 'openai/gpt-5'
1037
+ * })
1038
+ * }
1039
+ * });
1040
+ *
1041
+ * // Get a specific scorer
1042
+ * const helpfulnessScorer = mastra.getScorer('helpfulness');
1043
+ * const score = await helpfulnessScorer.score({
1044
+ * input: 'How do I reset my password?',
1045
+ * output: 'You can reset your password by clicking the forgot password link.',
1046
+ * expected: 'Detailed password reset instructions'
1047
+ * });
1048
+ *
1049
+ * console.log('Helpfulness score:', score);
1050
+ * ```
1051
+ */
1052
+ getScorer(key) {
1053
+ const scorer = this.#scorers?.[key];
1054
+ if (!scorer) {
1055
+ const error = new MastraError({
1056
+ id: "MASTRA_GET_SCORER_NOT_FOUND",
1057
+ domain: "MASTRA" /* MASTRA */,
1058
+ category: "USER" /* USER */,
1059
+ text: `Scorer with ${String(key)} not found`
1060
+ });
1061
+ this.#logger?.trackException(error);
1062
+ throw error;
1063
+ }
1064
+ return scorer;
1065
+ }
1066
+ /**
1067
+ * Retrieves a registered scorer by its name.
1068
+ *
1069
+ * This method searches through all registered scorers to find one with the specified name.
1070
+ * Unlike `getScorer()` which uses the registration key, this method uses the scorer's
1071
+ * internal name property.
1072
+ *
1073
+ * @throws {MastraError} When no scorer is found with the specified name
1074
+ *
1075
+ * @example Finding a scorer by name
1076
+ * ```typescript
1077
+ * import { HelpfulnessScorer } from '@mastra/scorers';
1078
+ *
1079
+ * const mastra = new Mastra({
1080
+ * scorers: {
1081
+ * myHelpfulnessScorer: new HelpfulnessScorer({
1082
+ * name: 'helpfulness-evaluator',
1083
+ * model: 'openai/gpt-5'
1084
+ * })
1085
+ * }
1086
+ * });
1087
+ *
1088
+ * // Find scorer by its internal name, not the registration key
1089
+ * const scorer = mastra.getScorerByName('helpfulness-evaluator');
1090
+ * const score = await scorer.score({
1091
+ * input: 'question',
1092
+ * output: 'answer'
1093
+ * });
1094
+ * ```
1095
+ */
1096
+ getScorerByName(name) {
1097
+ for (const [_key, value] of Object.entries(this.#scorers ?? {})) {
1098
+ if (value.name === name) {
1099
+ return value;
1100
+ }
1101
+ }
1102
+ const error = new MastraError({
1103
+ id: "MASTRA_GET_SCORER_BY_NAME_NOT_FOUND",
1104
+ domain: "MASTRA" /* MASTRA */,
1105
+ category: "USER" /* USER */,
1106
+ text: `Scorer with name ${String(name)} not found`
1107
+ });
1108
+ this.#logger?.trackException(error);
1109
+ throw error;
1110
+ }
1111
+ /**
1112
+ * Returns all registered workflows as a record keyed by their IDs.
1113
+ *
1114
+ * @example Listing all workflows
1115
+ * ```typescript
1116
+ * const mastra = new Mastra({
1117
+ * workflows: {
1118
+ * dataProcessor: createWorkflow({...}).commit(),
1119
+ * emailSender: createWorkflow({...}).commit(),
1120
+ * reportGenerator: createWorkflow({...}).commit()
1121
+ * }
1122
+ * });
1123
+ *
1124
+ * const allWorkflows = mastra.getWorkflows();
1125
+ * console.log(Object.keys(allWorkflows)); // ['dataProcessor', 'emailSender', 'reportGenerator']
1126
+ *
1127
+ * // Execute all workflows with sample data
1128
+ * for (const [id, workflow] of Object.entries(allWorkflows)) {
1129
+ * console.log(`Workflow ${id}:`, workflow.name);
1130
+ * // const result = await workflow.execute(sampleData);
1131
+ * }
1132
+ * ```
1133
+ */
1134
+ getWorkflows(props = {}) {
1135
+ if (props.serialized) {
1136
+ return Object.entries(this.#workflows).reduce((acc, [k, v]) => {
1137
+ return {
1138
+ ...acc,
1139
+ [k]: {
1140
+ name: v.name
1141
+ }
1142
+ };
1143
+ }, {});
1144
+ }
1145
+ return this.#workflows;
1146
+ }
1147
+ /**
1148
+ * Sets the storage provider for the Mastra instance.
1149
+ *
1150
+ * @example
1151
+ * ```typescript
1152
+ * const mastra = new Mastra();
1153
+ *
1154
+ * // Set PostgreSQL storage
1155
+ * mastra.setStorage(new PostgresStore({
1156
+ * connectionString: process.env.DATABASE_URL
1157
+ * }));
1158
+ *
1159
+ * // Now agents can use memory with the storage
1160
+ * const agent = new Agent({
1161
+ * name: 'assistant',
1162
+ * memory: new Memory({ storage: mastra.getStorage() })
1163
+ * });
1164
+ * ```
1165
+ */
1166
+ setStorage(storage) {
1167
+ this.#storage = augmentWithInit(storage);
1168
+ }
1169
+ setLogger({
1170
+ logger
1171
+ }) {
1172
+ this.#logger = logger;
1173
+ if (this.#agents) {
1174
+ Object.keys(this.#agents).forEach(key => {
1175
+ this.#agents?.[key]?.__setLogger(this.#logger);
1176
+ });
1177
+ }
1178
+ if (this.#memory) {
1179
+ this.#memory.__setLogger(this.#logger);
1180
+ }
1181
+ if (this.#deployer) {
1182
+ this.#deployer.__setLogger(this.#logger);
1183
+ }
1184
+ if (this.#tts) {
1185
+ Object.keys(this.#tts).forEach(key => {
1186
+ this.#tts?.[key]?.__setLogger(this.#logger);
1187
+ });
1188
+ }
1189
+ if (this.#storage) {
1190
+ this.#storage.__setLogger(this.#logger);
1191
+ }
1192
+ if (this.#vectors) {
1193
+ Object.keys(this.#vectors).forEach(key => {
1194
+ this.#vectors?.[key]?.__setLogger(this.#logger);
1195
+ });
1196
+ }
1197
+ if (this.#mcpServers) {
1198
+ Object.keys(this.#mcpServers).forEach(key => {
1199
+ this.#mcpServers?.[key]?.__setLogger(this.#logger);
1200
+ });
1201
+ }
1202
+ const allTracingInstances = getAllAITracing();
1203
+ allTracingInstances.forEach(instance => {
1204
+ instance.__setLogger(this.#logger);
1205
+ });
1206
+ }
1207
+ setTelemetry(telemetry) {
1208
+ this.#telemetry = Telemetry.init(telemetry);
1209
+ if (this.#agents) {
1210
+ Object.keys(this.#agents).forEach(key => {
1211
+ if (this.#telemetry) {
1212
+ this.#agents?.[key]?.__setTelemetry(this.#telemetry);
1213
+ }
1214
+ });
1215
+ }
1216
+ if (this.#memory) {
1217
+ this.#memory = this.#telemetry.traceClass(this.#memory, {
1218
+ excludeMethods: ["__setTelemetry", "__getTelemetry"]
1219
+ });
1220
+ this.#memory.__setTelemetry(this.#telemetry);
1221
+ }
1222
+ if (this.#deployer) {
1223
+ this.#deployer = this.#telemetry.traceClass(this.#deployer, {
1224
+ excludeMethods: ["__setTelemetry", "__getTelemetry"]
1225
+ });
1226
+ this.#deployer.__setTelemetry(this.#telemetry);
1227
+ }
1228
+ if (this.#tts) {
1229
+ let tts = {};
1230
+ Object.entries(this.#tts).forEach(([key, ttsCl]) => {
1231
+ if (this.#telemetry) {
1232
+ tts[key] = this.#telemetry.traceClass(ttsCl, {
1233
+ excludeMethods: ["__setTelemetry", "__getTelemetry"]
1234
+ });
1235
+ tts[key].__setTelemetry(this.#telemetry);
1236
+ }
1237
+ });
1238
+ this.#tts = tts;
1239
+ }
1240
+ if (this.#storage) {
1241
+ this.#storage = this.#telemetry.traceClass(this.#storage, {
1242
+ excludeMethods: ["__setTelemetry", "__getTelemetry"]
1243
+ });
1244
+ this.#storage.__setTelemetry(this.#telemetry);
1245
+ }
1246
+ if (this.#vectors) {
1247
+ let vectors = {};
1248
+ Object.entries(this.#vectors).forEach(([key, vector]) => {
1249
+ if (this.#telemetry) {
1250
+ vectors[key] = this.#telemetry.traceClass(vector, {
1251
+ excludeMethods: ["__setTelemetry", "__getTelemetry"]
1252
+ });
1253
+ vectors[key].__setTelemetry(this.#telemetry);
1254
+ }
1255
+ });
1256
+ this.#vectors = vectors;
1257
+ }
1258
+ }
1259
+ /**
1260
+ * Gets all registered text-to-speech (TTS) providers.
1261
+ *
1262
+ * @example
1263
+ * ```typescript
1264
+ * const mastra = new Mastra({
1265
+ * tts: {
1266
+ * openai: new OpenAITTS({
1267
+ * apiKey: process.env.OPENAI_API_KEY,
1268
+ * voice: 'alloy'
1269
+ * })
1270
+ * }
1271
+ * });
1272
+ *
1273
+ * const ttsProviders = mastra.getTTS();
1274
+ * const openaiTTS = ttsProviders?.openai;
1275
+ * if (openaiTTS) {
1276
+ * const audioBuffer = await openaiTTS.synthesize('Hello, world!');
1277
+ * }
1278
+ * ```
1279
+ */
1280
+ getTTS() {
1281
+ return this.#tts;
1282
+ }
1283
+ /**
1284
+ * Gets the currently configured logger instance.
1285
+ *
1286
+ * @example
1287
+ * ```typescript
1288
+ * const mastra = new Mastra({
1289
+ * logger: new PinoLogger({
1290
+ * name: 'MyApp',
1291
+ * level: 'info'
1292
+ * })
1293
+ * });
1294
+ *
1295
+ * const logger = mastra.getLogger();
1296
+ * logger.info('Application started');
1297
+ * logger.error('An error occurred', { error: 'details' });
1298
+ * ```
1299
+ */
1300
+ getLogger() {
1301
+ return this.#logger;
1302
+ }
1303
+ /**
1304
+ * Gets the currently configured telemetry instance.
1305
+ *
1306
+ * @example
1307
+ * ```typescript
1308
+ * const mastra = new Mastra({
1309
+ * telemetry: {
1310
+ * enabled: true,
1311
+ * serviceName: 'my-mastra-app'
1312
+ * }
1313
+ * });
1314
+ *
1315
+ * const telemetry = mastra.getTelemetry();
1316
+ * if (telemetry) {
1317
+ * const span = telemetry.startSpan('custom-operation');
1318
+ * span.setAttributes({ operation: 'data-processing' });
1319
+ * span.end();
1320
+ * }
1321
+ * ```
1322
+ *
1323
+ * @deprecated use {@link getAITracing()} instead
1324
+ */
1325
+ getTelemetry() {
1326
+ return this.#telemetry;
1327
+ }
1328
+ /**
1329
+ * Gets the currently configured memory instance.
1330
+ *
1331
+ * @deprecated Memory should be configured directly on agents instead of on the Mastra instance.
1332
+ * Use `new Agent({ memory: new Memory() })` instead.
1333
+ *
1334
+ * @example Legacy memory usage (deprecated)
1335
+ * ```typescript
1336
+ * // This approach is deprecated
1337
+ * const mastra = new Mastra({
1338
+ * // memory: new Memory() // This is no longer supported
1339
+ * });
1340
+ *
1341
+ * // Use this instead:
1342
+ * const agent = new Agent({
1343
+ * name: 'assistant',
1344
+ * memory: new Memory({
1345
+ * storage: new LibSQLStore({ url: ':memory:' })
1346
+ * })
1347
+ * });
1348
+ * ```
1349
+ */
1350
+ getMemory() {
1351
+ return this.#memory;
1352
+ }
1353
+ /**
1354
+ * Gets the currently configured storage provider.
1355
+ *
1356
+ * @example
1357
+ * ```typescript
1358
+ * const mastra = new Mastra({
1359
+ * storage: new LibSQLStore({ url: 'file:./data.db' })
1360
+ * });
1361
+ *
1362
+ * // Use the storage in agent memory
1363
+ * const agent = new Agent({
1364
+ * name: 'assistant',
1365
+ * memory: new Memory({
1366
+ * storage: mastra.getStorage()
1367
+ * })
1368
+ * });
1369
+ * ```
1370
+ */
1371
+ getStorage() {
1372
+ return this.#storage;
1373
+ }
1374
+ getServerMiddleware() {
1375
+ return this.#serverMiddleware;
1376
+ }
1377
+ getServerCache() {
1378
+ return this.#serverCache;
1379
+ }
1380
+ setServerMiddleware(serverMiddleware) {
1381
+ if (typeof serverMiddleware === "function") {
1382
+ this.#serverMiddleware = [{
1383
+ handler: serverMiddleware,
1384
+ path: "/api/*"
1385
+ }];
1386
+ return;
1387
+ }
1388
+ if (!Array.isArray(serverMiddleware)) {
1389
+ const error = new MastraError({
1390
+ id: "MASTRA_SET_SERVER_MIDDLEWARE_INVALID_TYPE",
1391
+ domain: "MASTRA" /* MASTRA */,
1392
+ category: "USER" /* USER */,
1393
+ text: `Invalid middleware: expected a function or array, received ${typeof serverMiddleware}`
1394
+ });
1395
+ this.#logger?.trackException(error);
1396
+ throw error;
1397
+ }
1398
+ this.#serverMiddleware = serverMiddleware.map(m => {
1399
+ if (typeof m === "function") {
1400
+ return {
1401
+ handler: m,
1402
+ path: "/api/*"
1403
+ };
1404
+ }
1405
+ return {
1406
+ handler: m.handler,
1407
+ path: m.path || "/api/*"
1408
+ };
1409
+ });
1410
+ }
1411
+ getServer() {
1412
+ return this.#server;
1413
+ }
1414
+ getBundlerConfig() {
1415
+ return this.#bundler;
1416
+ }
1417
+ async getLogsByRunId({
1418
+ runId,
1419
+ transportId,
1420
+ fromDate,
1421
+ toDate,
1422
+ logLevel,
1423
+ filters,
1424
+ page,
1425
+ perPage
1426
+ }) {
1427
+ if (!transportId) {
1428
+ const error = new MastraError({
1429
+ id: "MASTRA_GET_LOGS_BY_RUN_ID_MISSING_TRANSPORT",
1430
+ domain: "MASTRA" /* MASTRA */,
1431
+ category: "USER" /* USER */,
1432
+ text: "Transport ID is required",
1433
+ details: {
1434
+ runId,
1435
+ transportId
1436
+ }
1437
+ });
1438
+ this.#logger?.trackException(error);
1439
+ throw error;
1440
+ }
1441
+ if (!this.#logger?.getLogsByRunId) {
1442
+ const error = new MastraError({
1443
+ id: "MASTRA_GET_LOGS_BY_RUN_ID_LOGGER_NOT_CONFIGURED",
1444
+ domain: "MASTRA" /* MASTRA */,
1445
+ category: "SYSTEM" /* SYSTEM */,
1446
+ text: "Logger is not configured or does not support getLogsByRunId operation",
1447
+ details: {
1448
+ runId,
1449
+ transportId
1450
+ }
1451
+ });
1452
+ this.#logger?.trackException(error);
1453
+ throw error;
1454
+ }
1455
+ return await this.#logger.getLogsByRunId({
1456
+ runId,
1457
+ transportId,
1458
+ fromDate,
1459
+ toDate,
1460
+ logLevel,
1461
+ filters,
1462
+ page,
1463
+ perPage
1464
+ });
1465
+ }
1466
+ async getLogs(transportId, params) {
1467
+ if (!transportId) {
1468
+ const error = new MastraError({
1469
+ id: "MASTRA_GET_LOGS_MISSING_TRANSPORT",
1470
+ domain: "MASTRA" /* MASTRA */,
1471
+ category: "USER" /* USER */,
1472
+ text: "Transport ID is required",
1473
+ details: {
1474
+ transportId
1475
+ }
1476
+ });
1477
+ this.#logger?.trackException(error);
1478
+ throw error;
1479
+ }
1480
+ if (!this.#logger) {
1481
+ const error = new MastraError({
1482
+ id: "MASTRA_GET_LOGS_LOGGER_NOT_CONFIGURED",
1483
+ domain: "MASTRA" /* MASTRA */,
1484
+ category: "SYSTEM" /* SYSTEM */,
1485
+ text: "Logger is not set",
1486
+ details: {
1487
+ transportId
1488
+ }
1489
+ });
1490
+ throw error;
1491
+ }
1492
+ return await this.#logger.getLogs(transportId, params);
1493
+ }
1494
+ /**
1495
+ * Gets all registered Model Context Protocol (MCP) server instances.
1496
+ *
1497
+ * @example
1498
+ * ```typescript
1499
+ * const mastra = new Mastra({
1500
+ * mcpServers: {
1501
+ * filesystem: new FileSystemMCPServer({
1502
+ * rootPath: '/app/data'
1503
+ * })
1504
+ * }
1505
+ * });
1506
+ *
1507
+ * const mcpServers = mastra.getMCPServers();
1508
+ * if (mcpServers) {
1509
+ * const fsServer = mcpServers.filesystem;
1510
+ * const tools = await fsServer.getTools();
1511
+ * }
1512
+ * ```
1513
+ */
1514
+ getMCPServers() {
1515
+ return this.#mcpServers;
1516
+ }
1517
+ /**
1518
+ * Retrieves a specific Model Context Protocol (MCP) server instance by its logical ID.
1519
+ *
1520
+ * This method searches for an MCP server using its logical ID. If a version is specified,
1521
+ * it returns the exact version match. If no version is provided, it returns the server
1522
+ * with the most recent release date.
1523
+ *
1524
+ * @example
1525
+ * ```typescript
1526
+ * const mastra = new Mastra({
1527
+ * mcpServers: {
1528
+ * filesystem: new FileSystemMCPServer({
1529
+ * id: 'fs-server',
1530
+ * version: '1.0.0',
1531
+ * rootPath: '/app/data'
1532
+ * })
1533
+ * }
1534
+ * });
1535
+ *
1536
+ * const fsServer = mastra.getMCPServer('fs-server');
1537
+ * if (fsServer) {
1538
+ * const tools = await fsServer.getTools();
1539
+ * }
1540
+ * ```
1541
+ */
1542
+ getMCPServer(serverId, version) {
1543
+ if (!this.#mcpServers) {
1544
+ return void 0;
1545
+ }
1546
+ const allRegisteredServers = Object.values(this.#mcpServers || {});
1547
+ const matchingLogicalIdServers = allRegisteredServers.filter(server => server.id === serverId);
1548
+ if (matchingLogicalIdServers.length === 0) {
1549
+ this.#logger?.debug(`No MCP servers found with logical ID: ${serverId}`);
1550
+ return void 0;
1551
+ }
1552
+ if (version) {
1553
+ const specificVersionServer = matchingLogicalIdServers.find(server => server.version === version);
1554
+ if (!specificVersionServer) {
1555
+ this.#logger?.debug(`MCP server with logical ID '${serverId}' found, but not version '${version}'.`);
1556
+ }
1557
+ return specificVersionServer;
1558
+ } else {
1559
+ if (matchingLogicalIdServers.length === 1) {
1560
+ return matchingLogicalIdServers[0];
1561
+ }
1562
+ matchingLogicalIdServers.sort((a, b) => {
1563
+ const dateAVal = a.releaseDate && typeof a.releaseDate === "string" ? new Date(a.releaseDate).getTime() : NaN;
1564
+ const dateBVal = b.releaseDate && typeof b.releaseDate === "string" ? new Date(b.releaseDate).getTime() : NaN;
1565
+ if (isNaN(dateAVal) && isNaN(dateBVal)) return 0;
1566
+ if (isNaN(dateAVal)) return 1;
1567
+ if (isNaN(dateBVal)) return -1;
1568
+ return dateBVal - dateAVal;
1569
+ });
1570
+ if (matchingLogicalIdServers.length > 0) {
1571
+ const latestServer = matchingLogicalIdServers[0];
1572
+ if (latestServer && latestServer.releaseDate && typeof latestServer.releaseDate === "string" && !isNaN(new Date(latestServer.releaseDate).getTime())) {
1573
+ return latestServer;
1574
+ }
1575
+ }
1576
+ this.#logger?.warn(`Could not determine the latest server for logical ID '${serverId}' due to invalid or missing release dates, or no servers left after filtering.`);
1577
+ return void 0;
1578
+ }
1579
+ }
1580
+ async addTopicListener(topic, listener) {
1581
+ await this.#pubsub.subscribe(topic, listener);
1582
+ }
1583
+ async removeTopicListener(topic, listener) {
1584
+ await this.#pubsub.unsubscribe(topic, listener);
1585
+ }
1586
+ async startEventEngine() {
1587
+ for (const topic in this.#events) {
1588
+ if (!this.#events[topic]) {
1589
+ continue;
1590
+ }
1591
+ const listeners = Array.isArray(this.#events[topic]) ? this.#events[topic] : [this.#events[topic]];
1592
+ for (const listener of listeners) {
1593
+ await this.#pubsub.subscribe(topic, listener);
1594
+ }
1595
+ }
1596
+ }
1597
+ async stopEventEngine() {
1598
+ for (const topic in this.#events) {
1599
+ if (!this.#events[topic]) {
1600
+ continue;
1601
+ }
1602
+ const listeners = Array.isArray(this.#events[topic]) ? this.#events[topic] : [this.#events[topic]];
1603
+ for (const listener of listeners) {
1604
+ await this.#pubsub.unsubscribe(topic, listener);
1605
+ }
1606
+ }
1607
+ await this.#pubsub.flush();
1608
+ }
1609
+ /**
1610
+ * Returns all registered gateways as a record keyed by their names.
1611
+ *
1612
+ * @example
1613
+ * ```typescript
1614
+ * const mastra = new Mastra({
1615
+ * gateways: {
1616
+ * netlify: new NetlifyGateway(),
1617
+ * custom: new CustomGateway()
1618
+ * }
1619
+ * });
1620
+ *
1621
+ * const allGateways = mastra.listGateways();
1622
+ * console.log(Object.keys(allGateways)); // ['netlify', 'custom']
1623
+ * ```
1624
+ */
1625
+ listGateways() {
1626
+ return this.#gateways;
1627
+ }
1628
+ /**
1629
+ * Sync custom gateways with the GatewayRegistry for type generation
1630
+ * @private
1631
+ */
1632
+ #syncGatewayRegistry() {
1633
+ try {
1634
+ if (process.env.MASTRA_DEV !== "true" && process.env.MASTRA_DEV !== "1") {
1635
+ return;
1636
+ }
1637
+ import('./provider-registry-THITZUJ7.js').then(async ({
1638
+ GatewayRegistry
1639
+ }) => {
1640
+ const registry = GatewayRegistry.getInstance();
1641
+ const customGateways = Object.values(this.#gateways || {});
1642
+ registry.registerCustomGateways(customGateways);
1643
+ const logger = this.getLogger();
1644
+ logger.info("\u{1F504} Syncing custom gateway types...");
1645
+ await registry.syncGateways(true);
1646
+ logger.info("\u2705 Custom gateway types synced! Restart your TypeScript server to see autocomplete.");
1647
+ }).catch(err => {
1648
+ const logger = this.getLogger();
1649
+ logger.debug("Gateway registry sync skipped:", err);
1650
+ });
1651
+ } catch (err) {
1652
+ const logger = this.getLogger();
1653
+ logger.debug("Gateway registry sync failed:", err);
1654
+ }
1655
+ }
1656
+ /**
1657
+ * Gracefully shuts down the Mastra instance and cleans up all resources.
1658
+ *
1659
+ * This method performs a clean shutdown of all Mastra components, including:
1660
+ * - AI tracing registry and all tracing instances
1661
+ * - Event engine and pub/sub system
1662
+ * - All registered components and their resources
1663
+ *
1664
+ * It's important to call this method when your application is shutting down
1665
+ * to ensure proper cleanup and prevent resource leaks.
1666
+ *
1667
+ * @example
1668
+ * ```typescript
1669
+ * const mastra = new Mastra({
1670
+ * agents: { myAgent },
1671
+ * workflows: { myWorkflow }
1672
+ * });
1673
+ *
1674
+ * // Graceful shutdown on SIGINT
1675
+ * process.on('SIGINT', async () => {
1676
+ * await mastra.shutdown();
1677
+ * process.exit(0);
1678
+ * });
1679
+ * ```
1680
+ */
1681
+ async shutdown() {
1682
+ await shutdownAITracingRegistry();
1683
+ await this.stopEventEngine();
1684
+ this.#logger?.info("Mastra shutdown completed");
1685
+ }
1686
+ // This method is only used internally for server hnadlers that require temporary persistence
1687
+ get serverCache() {
1688
+ return this.#serverCache;
1689
+ }
1690
+ };
1691
+ Mastra = /*@__PURE__*/(_ => {
1692
+ _init = __decoratorStart(null);
1693
+ Mastra = __decorateElement(_init, 0, "Mastra", _Mastra_decorators, Mastra);
1694
+ __runInitializers(_init, 1, Mastra);
1695
+ return Mastra;
1696
+ })();
1697
+
1698
+ export { Mastra };
1699
+ //# sourceMappingURL=chunk-YFKTLS32.js.map
1700
+ //# sourceMappingURL=chunk-YFKTLS32.js.map