@mastra/core 1.0.0-beta.4 → 1.0.0-beta.6

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 (464) hide show
  1. package/CHANGELOG.md +598 -0
  2. package/dist/agent/agent-legacy.d.ts +17 -20
  3. package/dist/agent/agent-legacy.d.ts.map +1 -1
  4. package/dist/agent/agent-types.test-d.d.ts +2 -0
  5. package/dist/agent/agent-types.test-d.d.ts.map +1 -0
  6. package/dist/agent/agent.d.ts +6 -6
  7. package/dist/agent/agent.d.ts.map +1 -1
  8. package/dist/agent/agent.types.d.ts +3 -1
  9. package/dist/agent/agent.types.d.ts.map +1 -1
  10. package/dist/agent/index.cjs +9 -9
  11. package/dist/agent/index.js +2 -2
  12. package/dist/agent/message-list/index.cjs +3 -3
  13. package/dist/agent/message-list/index.d.ts +49 -0
  14. package/dist/agent/message-list/index.d.ts.map +1 -1
  15. package/dist/agent/message-list/index.js +1 -1
  16. package/dist/agent/message-list/prompt/attachments-to-parts.d.ts.map +1 -1
  17. package/dist/agent/save-queue/index.d.ts +3 -1
  18. package/dist/agent/save-queue/index.d.ts.map +1 -1
  19. package/dist/agent/test-utils.d.ts +37 -0
  20. package/dist/agent/test-utils.d.ts.map +1 -1
  21. package/dist/agent/trip-wire.d.ts.map +1 -1
  22. package/dist/agent/types.d.ts +20 -6
  23. package/dist/agent/types.d.ts.map +1 -1
  24. package/dist/agent/utils.d.ts.map +1 -1
  25. package/dist/agent/workflows/prepare-stream/index.d.ts +10 -10
  26. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -1
  27. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts +1 -3
  28. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -1
  29. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +4 -4
  30. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts.map +1 -1
  31. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts +4 -4
  32. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -1
  33. package/dist/agent/workflows/prepare-stream/schema.d.ts +12 -13
  34. package/dist/agent/workflows/prepare-stream/schema.d.ts.map +1 -1
  35. package/dist/agent/workflows/prepare-stream/stream-step.d.ts +8 -1
  36. package/dist/agent/workflows/prepare-stream/stream-step.d.ts.map +1 -1
  37. package/dist/base.cjs +2 -2
  38. package/dist/base.js +1 -1
  39. package/dist/bundler/index.cjs +2 -2
  40. package/dist/bundler/index.js +1 -1
  41. package/dist/cache/index.cjs +3 -3
  42. package/dist/cache/index.js +1 -1
  43. package/dist/{chunk-OJNJA5ZI.js → chunk-3CKZSDTQ.js} +3 -3
  44. package/dist/{chunk-OJNJA5ZI.js.map → chunk-3CKZSDTQ.js.map} +1 -1
  45. package/dist/{chunk-TQTAMPSC.js → chunk-3N3QE4ZK.js} +3 -3
  46. package/dist/chunk-3N3QE4ZK.js.map +1 -0
  47. package/dist/{chunk-WQSGX6XA.cjs → chunk-3TKNXJES.cjs} +56 -15
  48. package/dist/chunk-3TKNXJES.cjs.map +1 -0
  49. package/dist/{chunk-XXBWX7DT.js → chunk-45NA5ZD3.js} +11673 -9468
  50. package/dist/chunk-45NA5ZD3.js.map +1 -0
  51. package/dist/{chunk-KEURQGCQ.js → chunk-4F6RAJFU.js} +105 -21
  52. package/dist/chunk-4F6RAJFU.js.map +1 -0
  53. package/dist/{chunk-ISMGVGUM.cjs → chunk-4JKEUSCC.cjs} +4 -4
  54. package/dist/{chunk-ISMGVGUM.cjs.map → chunk-4JKEUSCC.cjs.map} +1 -1
  55. package/dist/{chunk-CYVNOIXS.cjs → chunk-4KUOSXJ7.cjs} +30 -16
  56. package/dist/chunk-4KUOSXJ7.cjs.map +1 -0
  57. package/dist/{chunk-CBAB7GOD.cjs → chunk-6BJ7XHRH.cjs} +2 -2
  58. package/dist/{chunk-CBAB7GOD.cjs.map → chunk-6BJ7XHRH.cjs.map} +1 -1
  59. package/dist/{chunk-3RW5EMSB.js → chunk-6GOLI2EY.js} +22 -9
  60. package/dist/chunk-6GOLI2EY.js.map +1 -0
  61. package/dist/{chunk-4RXG622P.cjs → chunk-6J4NRNT2.cjs} +600 -37
  62. package/dist/chunk-6J4NRNT2.cjs.map +1 -0
  63. package/dist/{chunk-J7O6WENZ.cjs → chunk-6TBWJV35.js} +5 -5
  64. package/dist/chunk-6TBWJV35.js.map +1 -0
  65. package/dist/chunk-6XCINXZ7.cjs +194 -0
  66. package/dist/chunk-6XCINXZ7.cjs.map +1 -0
  67. package/dist/{chunk-MDKPL2R2.js → chunk-7ZADRRDW.js} +5 -4
  68. package/dist/chunk-7ZADRRDW.js.map +1 -0
  69. package/dist/{chunk-DSNPWVIG.cjs → chunk-AF74UXR5.cjs} +4 -3
  70. package/dist/chunk-AF74UXR5.cjs.map +1 -0
  71. package/dist/{chunk-W3DD3XP5.js → chunk-APMPOYPI.js} +334 -138
  72. package/dist/chunk-APMPOYPI.js.map +1 -0
  73. package/dist/{chunk-LRSB62Z6.cjs → chunk-AQAIS7FH.cjs} +15 -8
  74. package/dist/chunk-AQAIS7FH.cjs.map +1 -0
  75. package/dist/chunk-BWYU7D33.js +192 -0
  76. package/dist/chunk-BWYU7D33.js.map +1 -0
  77. package/dist/{chunk-KEXGB7FK.cjs → chunk-DGV2FWB4.cjs} +7 -7
  78. package/dist/{chunk-KEXGB7FK.cjs.map → chunk-DGV2FWB4.cjs.map} +1 -1
  79. package/dist/{chunk-WTYNK7Q4.js → chunk-DXMSVGJ6.js} +599 -36
  80. package/dist/chunk-DXMSVGJ6.js.map +1 -0
  81. package/dist/{chunk-Y63IFHEZ.cjs → chunk-EOPEDKLG.cjs} +4 -4
  82. package/dist/chunk-EOPEDKLG.cjs.map +1 -0
  83. package/dist/{chunk-NZAXAFI3.js → chunk-F2GAJSBI.js} +3 -3
  84. package/dist/{chunk-NZAXAFI3.js.map → chunk-F2GAJSBI.js.map} +1 -1
  85. package/dist/{chunk-KIZIOFZC.js → chunk-FYP3AT6W.js} +17 -3
  86. package/dist/chunk-FYP3AT6W.js.map +1 -0
  87. package/dist/{chunk-ZCVTH3CH.cjs → chunk-HNHZGFZY.cjs} +5 -4
  88. package/dist/chunk-HNHZGFZY.cjs.map +1 -0
  89. package/dist/{chunk-BMAFVZ2D.cjs → chunk-IWTMMUQY.cjs} +4 -4
  90. package/dist/{chunk-BMAFVZ2D.cjs.map → chunk-IWTMMUQY.cjs.map} +1 -1
  91. package/dist/{chunk-D6EDHNGV.js → chunk-KZLP6TPJ.js} +69 -28
  92. package/dist/chunk-KZLP6TPJ.js.map +1 -0
  93. package/dist/{chunk-5WXEYDFI.cjs → chunk-LDWBLENZ.cjs} +51 -38
  94. package/dist/chunk-LDWBLENZ.cjs.map +1 -0
  95. package/dist/{chunk-HGNRQ3OG.js → chunk-LEZIKVRQ.js} +15 -8
  96. package/dist/chunk-LEZIKVRQ.js.map +1 -0
  97. package/dist/{chunk-S6URFGCZ.js → chunk-LSHPJWM5.js} +3 -3
  98. package/dist/{chunk-S6URFGCZ.js.map → chunk-LSHPJWM5.js.map} +1 -1
  99. package/dist/{chunk-E7K4FTLN.cjs → chunk-NHNXIYDG.cjs} +18 -2
  100. package/dist/chunk-NHNXIYDG.cjs.map +1 -0
  101. package/dist/{chunk-U7VECK2G.js → chunk-NIUEWICQ.js} +145 -19
  102. package/dist/chunk-NIUEWICQ.js.map +1 -0
  103. package/dist/{chunk-2NVBZKZI.cjs → chunk-NN3NOFRU.cjs} +11744 -9526
  104. package/dist/chunk-NN3NOFRU.cjs.map +1 -0
  105. package/dist/{chunk-KJ2SW6VA.js → chunk-NRUZYMHE.js} +4 -3
  106. package/dist/chunk-NRUZYMHE.js.map +1 -0
  107. package/dist/{chunk-IWB65P37.cjs → chunk-OIMB2SNZ.cjs} +155 -29
  108. package/dist/chunk-OIMB2SNZ.cjs.map +1 -0
  109. package/dist/{chunk-IWQDBVJK.js → chunk-OPALPWAM.js} +47 -8
  110. package/dist/chunk-OPALPWAM.js.map +1 -0
  111. package/dist/{chunk-X7JMA3IY.js → chunk-PSCMWPLC.js} +2 -2
  112. package/dist/{chunk-X7JMA3IY.js.map → chunk-PSCMWPLC.js.map} +1 -1
  113. package/dist/{chunk-S6OEQHEI.cjs → chunk-QGWNF2QJ.cjs} +59 -50
  114. package/dist/chunk-QGWNF2QJ.cjs.map +1 -0
  115. package/dist/{chunk-VZC4BWWH.cjs → chunk-RHTV5C5D.cjs} +19 -19
  116. package/dist/chunk-RHTV5C5D.cjs.map +1 -0
  117. package/dist/{chunk-HBJPYQRN.cjs → chunk-RTROJFEU.cjs} +78 -41
  118. package/dist/chunk-RTROJFEU.cjs.map +1 -0
  119. package/dist/chunk-S5FPOCQF.cjs +518 -0
  120. package/dist/chunk-S5FPOCQF.cjs.map +1 -0
  121. package/dist/{chunk-O6NA3Z43.cjs → chunk-SQAX4OW6.cjs} +167 -12
  122. package/dist/chunk-SQAX4OW6.cjs.map +1 -0
  123. package/dist/{chunk-IHJDOC3A.js → chunk-T2UNO766.js} +16 -7
  124. package/dist/chunk-T2UNO766.js.map +1 -0
  125. package/dist/{chunk-FVNT7VTO.js → chunk-TARWUQG6.js} +243 -166
  126. package/dist/chunk-TARWUQG6.js.map +1 -0
  127. package/dist/{chunk-76K3IYWM.js → chunk-TS7B26US.js} +3 -3
  128. package/dist/{chunk-76K3IYWM.js.map → chunk-TS7B26US.js.map} +1 -1
  129. package/dist/{chunk-Y6ROD72V.cjs → chunk-UIGRFDO6.cjs} +4 -4
  130. package/dist/{chunk-Y6ROD72V.cjs.map → chunk-UIGRFDO6.cjs.map} +1 -1
  131. package/dist/{chunk-GRBGQ2GE.js → chunk-UVHSM2GU.cjs} +9 -3
  132. package/dist/chunk-UVHSM2GU.cjs.map +1 -0
  133. package/dist/{chunk-VSM3NLUX.cjs → chunk-VRFSEZBA.cjs} +334 -138
  134. package/dist/chunk-VRFSEZBA.cjs.map +1 -0
  135. package/dist/{chunk-JXESKY4A.js → chunk-WDRA4WKG.js} +163 -9
  136. package/dist/chunk-WDRA4WKG.js.map +1 -0
  137. package/dist/{chunk-RXDJL5QT.js → chunk-WMAMOYRR.js} +14 -14
  138. package/dist/chunk-WMAMOYRR.js.map +1 -0
  139. package/dist/{chunk-2OTDXX73.js → chunk-XY337TTF.js} +24 -10
  140. package/dist/chunk-XY337TTF.js.map +1 -0
  141. package/dist/{chunk-4IKJAKCD.cjs → chunk-Y24HI6ND.cjs} +108 -23
  142. package/dist/chunk-Y24HI6ND.cjs.map +1 -0
  143. package/dist/deployer/index.cjs +2 -2
  144. package/dist/deployer/index.js +1 -1
  145. package/dist/di/index.cjs +10 -2
  146. package/dist/di/index.d.ts +1 -1
  147. package/dist/di/index.d.ts.map +1 -1
  148. package/dist/di/index.js +1 -1
  149. package/dist/evals/base.d.ts +10 -2
  150. package/dist/evals/base.d.ts.map +1 -1
  151. package/dist/evals/base.test-utils.d.ts +25 -25
  152. package/dist/evals/index.cjs +9 -9
  153. package/dist/evals/index.js +2 -2
  154. package/dist/evals/scoreTraces/index.cjs +5 -5
  155. package/dist/evals/scoreTraces/index.js +2 -2
  156. package/dist/evals/types.d.ts +8 -8
  157. package/dist/index.cjs +2 -2
  158. package/dist/index.js +1 -1
  159. package/dist/integration/index.cjs +2 -2
  160. package/dist/integration/index.js +1 -1
  161. package/dist/llm/index.cjs +18 -14
  162. package/dist/llm/index.d.ts +2 -1
  163. package/dist/llm/index.d.ts.map +1 -1
  164. package/dist/llm/index.js +5 -5
  165. package/dist/llm/model/aisdk/v5/model.d.ts.map +1 -1
  166. package/dist/llm/model/gateway-resolver.d.ts.map +1 -1
  167. package/dist/llm/model/gateways/azure.d.ts +36 -0
  168. package/dist/llm/model/gateways/azure.d.ts.map +1 -0
  169. package/dist/llm/model/gateways/base.d.ts +3 -6
  170. package/dist/llm/model/gateways/base.d.ts.map +1 -1
  171. package/dist/llm/model/gateways/index.d.ts +4 -1
  172. package/dist/llm/model/gateways/index.d.ts.map +1 -1
  173. package/dist/llm/model/gateways/models-dev.d.ts +2 -2
  174. package/dist/llm/model/gateways/models-dev.d.ts.map +1 -1
  175. package/dist/llm/model/gateways/netlify.d.ts +2 -2
  176. package/dist/llm/model/gateways/netlify.d.ts.map +1 -1
  177. package/dist/llm/model/model.d.ts.map +1 -1
  178. package/dist/llm/model/model.loop.d.ts +1 -1
  179. package/dist/llm/model/model.loop.d.ts.map +1 -1
  180. package/dist/llm/model/provider-registry.d.ts.map +1 -1
  181. package/dist/llm/model/provider-types.generated.d.ts +245 -12
  182. package/dist/llm/model/registry-generator.d.ts +12 -0
  183. package/dist/llm/model/registry-generator.d.ts.map +1 -1
  184. package/dist/llm/model/router.d.ts.map +1 -1
  185. package/dist/logger/constants.d.ts +1 -0
  186. package/dist/logger/constants.d.ts.map +1 -1
  187. package/dist/logger/index.cjs +11 -11
  188. package/dist/logger/index.js +2 -2
  189. package/dist/logger/transport.d.ts +1 -1
  190. package/dist/logger/transport.d.ts.map +1 -1
  191. package/dist/loop/index.cjs +2 -2
  192. package/dist/loop/index.js +1 -1
  193. package/dist/loop/loop.d.ts.map +1 -1
  194. package/dist/loop/network/index.d.ts +2 -2
  195. package/dist/loop/network/index.d.ts.map +1 -1
  196. package/dist/loop/test-utils/fullStream.d.ts.map +1 -1
  197. package/dist/loop/test-utils/generateText.d.ts.map +1 -1
  198. package/dist/loop/test-utils/resultObject.d.ts.map +1 -1
  199. package/dist/loop/test-utils/streamObject.d.ts.map +1 -1
  200. package/dist/loop/types.d.ts +13 -2
  201. package/dist/loop/types.d.ts.map +1 -1
  202. package/dist/loop/workflows/agentic-execution/index.d.ts +96 -96
  203. package/dist/loop/workflows/agentic-execution/index.d.ts.map +1 -1
  204. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +65 -65
  205. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
  206. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +32 -32
  207. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -1
  208. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts +1 -1
  209. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -1
  210. package/dist/loop/workflows/agentic-loop/index.d.ts +97 -97
  211. package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -1
  212. package/dist/loop/workflows/schema.d.ts +32 -32
  213. package/dist/loop/workflows/stream.d.ts +1 -1
  214. package/dist/loop/workflows/stream.d.ts.map +1 -1
  215. package/dist/mastra/index.cjs +2 -2
  216. package/dist/mastra/index.d.ts +64 -9
  217. package/dist/mastra/index.d.ts.map +1 -1
  218. package/dist/mastra/index.js +1 -1
  219. package/dist/mcp/index.cjs +4 -4
  220. package/dist/mcp/index.cjs.map +1 -1
  221. package/dist/mcp/index.d.ts +4 -4
  222. package/dist/mcp/index.d.ts.map +1 -1
  223. package/dist/mcp/index.js +2 -2
  224. package/dist/mcp/index.js.map +1 -1
  225. package/dist/mcp/types.d.ts +2 -2
  226. package/dist/mcp/types.d.ts.map +1 -1
  227. package/dist/memory/index.cjs +21 -327
  228. package/dist/memory/index.cjs.map +1 -1
  229. package/dist/memory/index.js +1 -327
  230. package/dist/memory/index.js.map +1 -1
  231. package/dist/memory/memory.d.ts +22 -18
  232. package/dist/memory/memory.d.ts.map +1 -1
  233. package/dist/memory/mock.d.ts +15 -14
  234. package/dist/memory/mock.d.ts.map +1 -1
  235. package/dist/memory/types.d.ts +69 -11
  236. package/dist/memory/types.d.ts.map +1 -1
  237. package/dist/models-dev-F6MTIYTO.js +3 -0
  238. package/dist/{models-dev-6PRLJKVZ.js.map → models-dev-F6MTIYTO.js.map} +1 -1
  239. package/dist/models-dev-XIVR5EJV.cjs +12 -0
  240. package/dist/{models-dev-WHMI5G6Y.cjs.map → models-dev-XIVR5EJV.cjs.map} +1 -1
  241. package/dist/netlify-C2YBIK7A.js +3 -0
  242. package/dist/{netlify-EBQ6YUC6.js.map → netlify-C2YBIK7A.js.map} +1 -1
  243. package/dist/netlify-XWROOTP4.cjs +12 -0
  244. package/dist/{netlify-46I3SNNV.cjs.map → netlify-XWROOTP4.cjs.map} +1 -1
  245. package/dist/observability/index.cjs +16 -8
  246. package/dist/observability/index.js +1 -1
  247. package/dist/observability/types/tracing.d.ts +165 -3
  248. package/dist/observability/types/tracing.d.ts.map +1 -1
  249. package/dist/observability/utils.d.ts +47 -1
  250. package/dist/observability/utils.d.ts.map +1 -1
  251. package/dist/processors/index.cjs +35 -11
  252. package/dist/processors/index.d.ts +101 -23
  253. package/dist/processors/index.d.ts.map +1 -1
  254. package/dist/processors/index.js +1 -1
  255. package/dist/processors/memory/index.d.ts +7 -0
  256. package/dist/processors/memory/index.d.ts.map +1 -0
  257. package/dist/processors/memory/message-history.d.ts +43 -0
  258. package/dist/processors/memory/message-history.d.ts.map +1 -0
  259. package/dist/processors/memory/semantic-recall.d.ts +152 -0
  260. package/dist/processors/memory/semantic-recall.d.ts.map +1 -0
  261. package/dist/processors/memory/working-memory.d.ts +65 -0
  262. package/dist/processors/memory/working-memory.d.ts.map +1 -0
  263. package/dist/processors/processors/batch-parts.d.ts +1 -1
  264. package/dist/processors/processors/batch-parts.d.ts.map +1 -1
  265. package/dist/processors/processors/index.d.ts +2 -1
  266. package/dist/processors/processors/index.d.ts.map +1 -1
  267. package/dist/processors/processors/language-detector.d.ts +15 -1
  268. package/dist/processors/processors/language-detector.d.ts.map +1 -1
  269. package/dist/processors/processors/moderation.d.ts +15 -1
  270. package/dist/processors/processors/moderation.d.ts.map +1 -1
  271. package/dist/processors/processors/pii-detector.d.ts +15 -1
  272. package/dist/processors/processors/pii-detector.d.ts.map +1 -1
  273. package/dist/processors/processors/prompt-injection-detector.d.ts +15 -1
  274. package/dist/processors/processors/prompt-injection-detector.d.ts.map +1 -1
  275. package/dist/processors/processors/structured-output.d.ts +3 -2
  276. package/dist/processors/processors/structured-output.d.ts.map +1 -1
  277. package/dist/processors/processors/system-prompt-scrubber.d.ts +1 -1
  278. package/dist/processors/processors/system-prompt-scrubber.d.ts.map +1 -1
  279. package/dist/processors/processors/token-limiter.d.ts +22 -12
  280. package/dist/processors/processors/token-limiter.d.ts.map +1 -1
  281. package/dist/processors/processors/tool-call-filter.d.ts +28 -0
  282. package/dist/processors/processors/tool-call-filter.d.ts.map +1 -0
  283. package/dist/processors/processors/unicode-normalizer.d.ts +1 -1
  284. package/dist/processors/processors/unicode-normalizer.d.ts.map +1 -1
  285. package/dist/processors/runner.d.ts +35 -4
  286. package/dist/processors/runner.d.ts.map +1 -1
  287. package/dist/provider-registry-BXX7CA3H.cjs +40 -0
  288. package/dist/{provider-registry-RP2W4B24.cjs.map → provider-registry-BXX7CA3H.cjs.map} +1 -1
  289. package/dist/provider-registry-GRYJWVEM.js +3 -0
  290. package/dist/{provider-registry-HDG6UMUC.js.map → provider-registry-GRYJWVEM.js.map} +1 -1
  291. package/dist/provider-registry.json +547 -25
  292. package/dist/{registry-generator-JPCV47SC.cjs → registry-generator-34SC4TAU.cjs} +21 -6
  293. package/dist/registry-generator-34SC4TAU.cjs.map +1 -0
  294. package/dist/{registry-generator-XD4FPZTU.js → registry-generator-UMTNPBJX.js} +21 -7
  295. package/dist/registry-generator-UMTNPBJX.js.map +1 -0
  296. package/dist/relevance/index.cjs +2 -2
  297. package/dist/relevance/index.js +1 -1
  298. package/dist/request-context/index.cjs +10 -2
  299. package/dist/request-context/index.d.ts +26 -0
  300. package/dist/request-context/index.d.ts.map +1 -1
  301. package/dist/request-context/index.js +1 -1
  302. package/dist/server/base.d.ts +51 -0
  303. package/dist/server/base.d.ts.map +1 -0
  304. package/dist/server/composite-auth.d.ts +9 -0
  305. package/dist/server/composite-auth.d.ts.map +1 -0
  306. package/dist/server/index.cjs +112 -2
  307. package/dist/server/index.cjs.map +1 -1
  308. package/dist/server/index.d.ts +4 -0
  309. package/dist/server/index.d.ts.map +1 -1
  310. package/dist/server/index.js +109 -2
  311. package/dist/server/index.js.map +1 -1
  312. package/dist/server/simple-auth.d.ts +27 -0
  313. package/dist/server/simple-auth.d.ts.map +1 -0
  314. package/dist/storage/domains/memory/inmemory.d.ts.map +1 -1
  315. package/dist/storage/index.cjs +37 -29
  316. package/dist/storage/index.js +1 -1
  317. package/dist/storage/types.d.ts +1 -1
  318. package/dist/storage/types.d.ts.map +1 -1
  319. package/dist/storage/utils.d.ts +44 -0
  320. package/dist/storage/utils.d.ts.map +1 -1
  321. package/dist/stream/MastraAgentNetworkStream.d.ts +1 -1
  322. package/dist/stream/MastraAgentNetworkStream.d.ts.map +1 -1
  323. package/dist/stream/MastraWorkflowStream.d.ts +1 -1
  324. package/dist/stream/MastraWorkflowStream.d.ts.map +1 -1
  325. package/dist/stream/RunOutput.d.ts +2 -2
  326. package/dist/stream/RunOutput.d.ts.map +1 -1
  327. package/dist/stream/aisdk/v5/output.d.ts +1 -1
  328. package/dist/stream/aisdk/v5/output.d.ts.map +1 -1
  329. package/dist/stream/aisdk/v5/transform.d.ts.map +1 -1
  330. package/dist/stream/base/base.d.ts +1 -1
  331. package/dist/stream/base/base.d.ts.map +1 -1
  332. package/dist/stream/base/output-format-handlers.d.ts +1 -1
  333. package/dist/stream/base/output-format-handlers.d.ts.map +1 -1
  334. package/dist/stream/base/output.d.ts +1 -1
  335. package/dist/stream/base/output.d.ts.map +1 -1
  336. package/dist/stream/index.cjs +11 -11
  337. package/dist/stream/index.js +2 -2
  338. package/dist/stream/types.d.ts +9 -2
  339. package/dist/stream/types.d.ts.map +1 -1
  340. package/dist/test-utils/llm-mock.cjs +36 -2
  341. package/dist/test-utils/llm-mock.cjs.map +1 -1
  342. package/dist/test-utils/llm-mock.d.ts +3 -0
  343. package/dist/test-utils/llm-mock.d.ts.map +1 -1
  344. package/dist/test-utils/llm-mock.js +32 -2
  345. package/dist/test-utils/llm-mock.js.map +1 -1
  346. package/dist/tools/index.cjs +6 -6
  347. package/dist/tools/index.js +2 -2
  348. package/dist/tools/is-vercel-tool.cjs +2 -2
  349. package/dist/tools/is-vercel-tool.js +1 -1
  350. package/dist/tools/stream.d.ts +2 -1
  351. package/dist/tools/stream.d.ts.map +1 -1
  352. package/dist/tools/tool-builder/builder.d.ts +2 -0
  353. package/dist/tools/tool-builder/builder.d.ts.map +1 -1
  354. package/dist/tools/tool.d.ts +19 -6
  355. package/dist/tools/tool.d.ts.map +1 -1
  356. package/dist/tools/types.d.ts +28 -3
  357. package/dist/tools/types.d.ts.map +1 -1
  358. package/dist/tools/validation.d.ts +14 -2
  359. package/dist/tools/validation.d.ts.map +1 -1
  360. package/dist/tts/index.cjs +2 -2
  361. package/dist/tts/index.js +1 -1
  362. package/dist/utils.cjs +22 -22
  363. package/dist/utils.d.ts +2 -2
  364. package/dist/utils.d.ts.map +1 -1
  365. package/dist/utils.js +1 -1
  366. package/dist/vector/filter/index.cjs +7 -189
  367. package/dist/vector/filter/index.cjs.map +1 -1
  368. package/dist/vector/filter/index.js +1 -190
  369. package/dist/vector/filter/index.js.map +1 -1
  370. package/dist/vector/index.cjs +7 -2
  371. package/dist/vector/index.cjs.map +1 -1
  372. package/dist/vector/index.d.ts +1 -0
  373. package/dist/vector/index.d.ts.map +1 -1
  374. package/dist/vector/index.js +2 -1
  375. package/dist/vector/index.js.map +1 -1
  376. package/dist/vector/types.d.ts +86 -3
  377. package/dist/vector/types.d.ts.map +1 -1
  378. package/dist/vector/vector.d.ts +39 -2
  379. package/dist/vector/vector.d.ts.map +1 -1
  380. package/dist/voice/index.cjs +6 -6
  381. package/dist/voice/index.js +1 -1
  382. package/dist/workflows/default.d.ts +176 -281
  383. package/dist/workflows/default.d.ts.map +1 -1
  384. package/dist/workflows/evented/index.cjs +10 -10
  385. package/dist/workflows/evented/index.js +1 -1
  386. package/dist/workflows/evented/step-executor.d.ts +1 -1
  387. package/dist/workflows/evented/step-executor.d.ts.map +1 -1
  388. package/dist/workflows/execution-engine.d.ts +4 -2
  389. package/dist/workflows/execution-engine.d.ts.map +1 -1
  390. package/dist/workflows/handlers/control-flow.d.ts +135 -0
  391. package/dist/workflows/handlers/control-flow.d.ts.map +1 -0
  392. package/dist/workflows/handlers/entry.d.ts +45 -0
  393. package/dist/workflows/handlers/entry.d.ts.map +1 -0
  394. package/dist/workflows/handlers/sleep.d.ts +62 -0
  395. package/dist/workflows/handlers/sleep.d.ts.map +1 -0
  396. package/dist/workflows/handlers/step.d.ts +60 -0
  397. package/dist/workflows/handlers/step.d.ts.map +1 -0
  398. package/dist/workflows/index.cjs +23 -19
  399. package/dist/workflows/index.js +1 -1
  400. package/dist/workflows/step.d.ts +1 -0
  401. package/dist/workflows/step.d.ts.map +1 -1
  402. package/dist/workflows/types.d.ts +159 -5
  403. package/dist/workflows/types.d.ts.map +1 -1
  404. package/dist/workflows/utils.d.ts +7 -0
  405. package/dist/workflows/utils.d.ts.map +1 -1
  406. package/dist/workflows/workflow.d.ts +12 -8
  407. package/dist/workflows/workflow.d.ts.map +1 -1
  408. package/package.json +12 -10
  409. package/src/llm/model/provider-types.generated.d.ts +245 -12
  410. package/dist/chunk-2NVBZKZI.cjs.map +0 -1
  411. package/dist/chunk-2OTDXX73.js.map +0 -1
  412. package/dist/chunk-3PSWNGBF.js +0 -3
  413. package/dist/chunk-3PSWNGBF.js.map +0 -1
  414. package/dist/chunk-3RW5EMSB.js.map +0 -1
  415. package/dist/chunk-3W5RQCCY.cjs +0 -440
  416. package/dist/chunk-3W5RQCCY.cjs.map +0 -1
  417. package/dist/chunk-436FFEF6.js +0 -34
  418. package/dist/chunk-436FFEF6.js.map +0 -1
  419. package/dist/chunk-4IKJAKCD.cjs.map +0 -1
  420. package/dist/chunk-4RXG622P.cjs.map +0 -1
  421. package/dist/chunk-5WXEYDFI.cjs.map +0 -1
  422. package/dist/chunk-CYVNOIXS.cjs.map +0 -1
  423. package/dist/chunk-D6EDHNGV.js.map +0 -1
  424. package/dist/chunk-DSNPWVIG.cjs.map +0 -1
  425. package/dist/chunk-E7K4FTLN.cjs.map +0 -1
  426. package/dist/chunk-FVNT7VTO.js.map +0 -1
  427. package/dist/chunk-GRBGQ2GE.js.map +0 -1
  428. package/dist/chunk-HBJPYQRN.cjs.map +0 -1
  429. package/dist/chunk-HGNRQ3OG.js.map +0 -1
  430. package/dist/chunk-IHJDOC3A.js.map +0 -1
  431. package/dist/chunk-IWB65P37.cjs.map +0 -1
  432. package/dist/chunk-IWQDBVJK.js.map +0 -1
  433. package/dist/chunk-J7O6WENZ.cjs.map +0 -1
  434. package/dist/chunk-JXESKY4A.js.map +0 -1
  435. package/dist/chunk-KEURQGCQ.js.map +0 -1
  436. package/dist/chunk-KIZIOFZC.js.map +0 -1
  437. package/dist/chunk-KJ2SW6VA.js.map +0 -1
  438. package/dist/chunk-LRSB62Z6.cjs.map +0 -1
  439. package/dist/chunk-MDKPL2R2.js.map +0 -1
  440. package/dist/chunk-O6NA3Z43.cjs.map +0 -1
  441. package/dist/chunk-PE3V7GUL.cjs +0 -4
  442. package/dist/chunk-PE3V7GUL.cjs.map +0 -1
  443. package/dist/chunk-RXDJL5QT.js.map +0 -1
  444. package/dist/chunk-S6OEQHEI.cjs.map +0 -1
  445. package/dist/chunk-TQTAMPSC.js.map +0 -1
  446. package/dist/chunk-U7VECK2G.js.map +0 -1
  447. package/dist/chunk-V3VLOOSW.cjs +0 -36
  448. package/dist/chunk-V3VLOOSW.cjs.map +0 -1
  449. package/dist/chunk-VSM3NLUX.cjs.map +0 -1
  450. package/dist/chunk-VZC4BWWH.cjs.map +0 -1
  451. package/dist/chunk-W3DD3XP5.js.map +0 -1
  452. package/dist/chunk-WQSGX6XA.cjs.map +0 -1
  453. package/dist/chunk-WTYNK7Q4.js.map +0 -1
  454. package/dist/chunk-XXBWX7DT.js.map +0 -1
  455. package/dist/chunk-Y63IFHEZ.cjs.map +0 -1
  456. package/dist/chunk-ZCVTH3CH.cjs.map +0 -1
  457. package/dist/models-dev-6PRLJKVZ.js +0 -3
  458. package/dist/models-dev-WHMI5G6Y.cjs +0 -12
  459. package/dist/netlify-46I3SNNV.cjs +0 -12
  460. package/dist/netlify-EBQ6YUC6.js +0 -3
  461. package/dist/provider-registry-HDG6UMUC.js +0 -3
  462. package/dist/provider-registry-RP2W4B24.cjs +0 -40
  463. package/dist/registry-generator-JPCV47SC.cjs.map +0 -1
  464. package/dist/registry-generator-XD4FPZTU.js.map +0 -1
@@ -1,329 +1,3 @@
1
- import { InMemoryStore } from '../chunk-IWQDBVJK.js';
2
- import { augmentWithInit } from '../chunk-436FFEF6.js';
3
- import { MessageList } from '../chunk-W3DD3XP5.js';
4
- import { ModelRouterEmbeddingModel } from '../chunk-FVNT7VTO.js';
5
- import { deepMerge } from '../chunk-D6EDHNGV.js';
6
- import { MastraBase } from '../chunk-S6URFGCZ.js';
7
-
8
- // src/memory/memory.ts
9
- var MemoryProcessor = class extends MastraBase {
10
- /**
11
- * Process a list of messages and return a filtered or transformed list.
12
- * @param messages The messages to process
13
- * @returns The processed messages
14
- */
15
- process(messages, _opts) {
16
- return messages;
17
- }
18
- };
19
- var memoryDefaultOptions = {
20
- lastMessages: 10,
21
- semanticRecall: false,
22
- generateTitle: false,
23
- workingMemory: {
24
- enabled: false,
25
- template: `
26
- # User Information
27
- - **First Name**:
28
- - **Last Name**:
29
- - **Location**:
30
- - **Occupation**:
31
- - **Interests**:
32
- - **Goals**:
33
- - **Events**:
34
- - **Facts**:
35
- - **Projects**:
36
- `
37
- }
38
- };
39
- var MastraMemory = class extends MastraBase {
40
- MAX_CONTEXT_TOKENS;
41
- _storage;
42
- vector;
43
- embedder;
44
- processors = [];
45
- threadConfig = { ...memoryDefaultOptions };
46
- #mastra;
47
- constructor(config) {
48
- super({ component: "MEMORY", name: config.name });
49
- if (config.options) this.threadConfig = this.getMergedThreadConfig(config.options);
50
- if (config.processors) this.processors = config.processors;
51
- if (config.storage) {
52
- this._storage = augmentWithInit(config.storage);
53
- this._hasOwnStorage = true;
54
- }
55
- if (this.threadConfig.semanticRecall) {
56
- if (!config.vector) {
57
- throw new Error(
58
- `Semantic recall requires a vector store to be configured.
59
-
60
- https://mastra.ai/en/docs/memory/semantic-recall`
61
- );
62
- }
63
- this.vector = config.vector;
64
- if (!config.embedder) {
65
- throw new Error(
66
- `Semantic recall requires an embedder to be configured.
67
-
68
- https://mastra.ai/en/docs/memory/semantic-recall`
69
- );
70
- }
71
- if (typeof config.embedder === "string") {
72
- this.embedder = new ModelRouterEmbeddingModel(config.embedder);
73
- } else {
74
- this.embedder = config.embedder;
75
- }
76
- }
77
- }
78
- /**
79
- * Internal method used by Mastra to register itself with the memory.
80
- * @param mastra The Mastra instance.
81
- * @internal
82
- */
83
- __registerMastra(mastra) {
84
- this.#mastra = mastra;
85
- }
86
- _hasOwnStorage = false;
87
- get hasOwnStorage() {
88
- return this._hasOwnStorage;
89
- }
90
- get storage() {
91
- if (!this._storage) {
92
- throw new Error(
93
- `Memory requires a storage provider to function. Add a storage configuration to Memory or to your Mastra instance.
94
-
95
- https://mastra.ai/en/docs/memory/overview`
96
- );
97
- }
98
- return this._storage;
99
- }
100
- setStorage(storage) {
101
- this._storage = augmentWithInit(storage);
102
- }
103
- setVector(vector) {
104
- this.vector = vector;
105
- }
106
- setEmbedder(embedder) {
107
- this.embedder = embedder;
108
- }
109
- /**
110
- * Get a system message to inject into the conversation.
111
- * This will be called before each conversation turn.
112
- * Implementations can override this to inject custom system messages.
113
- */
114
- async getSystemMessage(_input) {
115
- return null;
116
- }
117
- /**
118
- * Get tools that should be available to the agent.
119
- * This will be called when converting tools for the agent.
120
- * Implementations can override this to provide additional tools.
121
- */
122
- listTools(_config) {
123
- return {};
124
- }
125
- async createEmbeddingIndex(dimensions, config) {
126
- const defaultDimensions = 1536;
127
- const isDefault = dimensions === defaultDimensions;
128
- const usedDimensions = dimensions ?? defaultDimensions;
129
- const separator = this.vector?.indexSeparator ?? "_";
130
- const indexName = isDefault ? `memory${separator}messages` : `memory${separator}messages${separator}${usedDimensions}`;
131
- if (typeof this.vector === `undefined`) {
132
- throw new Error(`Tried to create embedding index but no vector db is attached to this Memory instance.`);
133
- }
134
- const semanticConfig = typeof config?.semanticRecall === "object" ? config.semanticRecall : void 0;
135
- const indexConfig = semanticConfig?.indexConfig;
136
- const createParams = {
137
- indexName,
138
- dimension: usedDimensions,
139
- ...indexConfig?.metric && { metric: indexConfig.metric }
140
- };
141
- if (indexConfig && (indexConfig.type || indexConfig.ivf || indexConfig.hnsw)) {
142
- createParams.indexConfig = {};
143
- if (indexConfig.type) createParams.indexConfig.type = indexConfig.type;
144
- if (indexConfig.ivf) createParams.indexConfig.ivf = indexConfig.ivf;
145
- if (indexConfig.hnsw) createParams.indexConfig.hnsw = indexConfig.hnsw;
146
- }
147
- await this.vector.createIndex(createParams);
148
- return { indexName };
149
- }
150
- getMergedThreadConfig(config) {
151
- if (config?.workingMemory && "use" in config.workingMemory) {
152
- throw new Error("The workingMemory.use option has been removed. Working memory always uses tool-call mode.");
153
- }
154
- if (config?.threads?.generateTitle !== void 0) {
155
- throw new Error(
156
- "The threads.generateTitle option has been moved. Use the top-level generateTitle option instead."
157
- );
158
- }
159
- const mergedConfig = deepMerge(this.threadConfig, config || {});
160
- if (config?.workingMemory?.schema) {
161
- if (mergedConfig.workingMemory) {
162
- mergedConfig.workingMemory.schema = config.workingMemory.schema;
163
- }
164
- }
165
- return mergedConfig;
166
- }
167
- /**
168
- * Apply all configured message processors to a list of messages.
169
- * @param messages The messages to process
170
- * @returns The processed messages
171
- */
172
- async applyProcessors(messages, opts) {
173
- const processors = opts.processors || this.processors;
174
- if (!processors || processors.length === 0) {
175
- return messages;
176
- }
177
- let processedMessages = [...messages];
178
- for (const processor of processors) {
179
- processedMessages = await processor.process(processedMessages, {
180
- systemMessage: opts.systemMessage,
181
- newMessages: opts.newMessages,
182
- memorySystemMessage: opts.memorySystemMessage
183
- });
184
- }
185
- return processedMessages;
186
- }
187
- processMessages({
188
- messages,
189
- processors,
190
- ...opts
191
- }) {
192
- return this.applyProcessors(messages, { processors: processors || this.processors, ...opts });
193
- }
194
- estimateTokens(text) {
195
- return Math.ceil(text.split(" ").length * 1.3);
196
- }
197
- /**
198
- * Helper method to create a new thread
199
- * @param title - Optional title for the thread
200
- * @param metadata - Optional metadata for the thread
201
- * @returns Promise resolving to the created thread
202
- */
203
- async createThread({
204
- threadId,
205
- resourceId,
206
- title,
207
- metadata,
208
- memoryConfig,
209
- saveThread = true
210
- }) {
211
- const thread = {
212
- id: threadId || this.generateId(),
213
- title: title || `New Thread ${(/* @__PURE__ */ new Date()).toISOString()}`,
214
- resourceId,
215
- createdAt: /* @__PURE__ */ new Date(),
216
- updatedAt: /* @__PURE__ */ new Date(),
217
- metadata
218
- };
219
- return saveThread ? this.saveThread({ thread, memoryConfig }) : thread;
220
- }
221
- /**
222
- * Helper method to add a single message to a thread
223
- * @param threadId - The thread to add the message to
224
- * @param content - The message content
225
- * @param role - The role of the message sender
226
- * @param type - The type of the message
227
- * @param toolNames - Optional array of tool names that were called
228
- * @param toolCallArgs - Optional array of tool call arguments
229
- * @param toolCallIds - Optional array of tool call ids
230
- * @returns Promise resolving to the saved message
231
- * @deprecated use saveMessages instead
232
- */
233
- async addMessage(_params) {
234
- throw new Error("addMessage is deprecated. Please use saveMessages instead.");
235
- }
236
- /**
237
- * Generates a unique identifier
238
- * @returns A unique string ID
239
- */
240
- generateId() {
241
- return this.#mastra?.generateId() || crypto.randomUUID();
242
- }
243
- };
244
-
245
- // src/memory/mock.ts
246
- var MockMemory = class extends MastraMemory {
247
- threads = {};
248
- constructor({ storage } = {}) {
249
- super({ name: "mock", storage: storage || new InMemoryStore() });
250
- this._hasOwnStorage = true;
251
- }
252
- async getThreadById({ threadId }) {
253
- return this.storage.getThreadById({ threadId });
254
- }
255
- async saveThread({ thread }) {
256
- return this.storage.saveThread({ thread });
257
- }
258
- async saveMessages({
259
- messages
260
- }) {
261
- const dbMessages = new MessageList({
262
- generateMessageId: () => this.generateId()
263
- }).add(messages, "memory").get.all.db();
264
- return this.storage.saveMessages({ messages: dbMessages });
265
- }
266
- async listThreadsByResourceId(args) {
267
- return this.storage.listThreadsByResourceId(args);
268
- }
269
- async recall(args) {
270
- const result = await this.storage.listMessages({
271
- threadId: args.threadId,
272
- resourceId: args.resourceId,
273
- perPage: args.perPage,
274
- page: args.page,
275
- orderBy: args.orderBy,
276
- filter: args.filter,
277
- include: args.include
278
- });
279
- return result;
280
- }
281
- async deleteThread(threadId) {
282
- return this.storage.deleteThread({ threadId });
283
- }
284
- async deleteMessages(messageIds) {
285
- const ids = Array.isArray(messageIds) ? messageIds?.map((item) => typeof item === "string" ? item : item.id) : [messageIds];
286
- return this.storage.deleteMessages(ids);
287
- }
288
- // Add missing method implementations
289
- async getWorkingMemory({
290
- threadId: _threadId,
291
- resourceId: _resourceId,
292
- memoryConfig: _memoryConfig
293
- }) {
294
- return null;
295
- }
296
- async getWorkingMemoryTemplate({
297
- memoryConfig: _memoryConfig
298
- } = {}) {
299
- return null;
300
- }
301
- getMergedThreadConfig(config) {
302
- return config || {};
303
- }
304
- async updateWorkingMemory({
305
- threadId: _threadId,
306
- resourceId: _resourceId,
307
- workingMemory: _workingMemory,
308
- memoryConfig: _memoryConfig
309
- }) {
310
- return;
311
- }
312
- async __experimental_updateWorkingMemoryVNext({
313
- threadId: _threadId,
314
- resourceId: _resourceId,
315
- workingMemory: _workingMemory,
316
- searchString: _searchString,
317
- memoryConfig: _memoryConfig
318
- }) {
319
- return { success: true, reason: "Mock implementation" };
320
- }
321
- async updateMessages({ messages }) {
322
- const result = await this.saveMessages({ messages });
323
- return result.messages;
324
- }
325
- };
326
-
327
- export { MastraMemory, MemoryProcessor, MockMemory, memoryDefaultOptions };
1
+ export { MastraMemory, MemoryProcessor, MockMemory, memoryDefaultOptions, parseMemoryRuntimeContext } from '../chunk-45NA5ZD3.js';
328
2
  //# sourceMappingURL=index.js.map
329
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/memory/memory.ts","../../src/memory/mock.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import type { EmbeddingModelV2 } from '@ai-sdk/provider-v5';\nimport type { EmbeddingModel, AssistantContent, UserContent, CoreMessage } from '@internal/ai-sdk-v4';\nimport type { MastraDBMessage } from '../agent/message-list';\nimport { MastraBase } from '../base';\nimport { ModelRouterEmbeddingModel } from '../llm/model/index.js';\nimport type { Mastra } from '../mastra';\nimport type {\n MastraStorage,\n StorageListMessagesInput,\n StorageListThreadsByResourceIdInput,\n StorageListThreadsByResourceIdOutput,\n} from '../storage';\nimport { augmentWithInit } from '../storage/storageWithInit';\nimport type { ToolAction } from '../tools';\nimport { deepMerge } from '../utils';\nimport type { MastraVector } from '../vector';\n\nimport type {\n SharedMemoryConfig,\n StorageThreadType,\n MemoryConfig,\n MastraMessageV1,\n WorkingMemoryTemplate,\n MessageDeleteInput,\n} from './types';\n\nexport type MemoryProcessorOpts = {\n systemMessage?: string;\n memorySystemMessage?: string;\n newMessages?: CoreMessage[];\n};\n/**\n * Interface for message processors that can filter or transform messages\n * before they're sent to the LLM.\n */\nexport abstract class MemoryProcessor extends MastraBase {\n /**\n * Process a list of messages and return a filtered or transformed list.\n * @param messages The messages to process\n * @returns The processed messages\n */\n process(messages: CoreMessage[], _opts: MemoryProcessorOpts): CoreMessage[] | Promise<CoreMessage[]> {\n return messages;\n }\n}\n\nexport const memoryDefaultOptions = {\n lastMessages: 10,\n semanticRecall: false,\n generateTitle: false,\n workingMemory: {\n enabled: false,\n template: `\n# User Information\n- **First Name**: \n- **Last Name**: \n- **Location**: \n- **Occupation**: \n- **Interests**: \n- **Goals**: \n- **Events**: \n- **Facts**: \n- **Projects**: \n`,\n },\n} satisfies MemoryConfig;\n\n/**\n * Abstract base class for implementing conversation memory systems.\n *\n * Key features:\n * - Thread-based conversation organization with resource association\n * - Optional vector database integration for semantic similarity search\n * - Working memory templates for structured conversation state\n * - Handles memory processors to manipulate messages before they are sent to the LLM\n */\nexport abstract class MastraMemory extends MastraBase {\n MAX_CONTEXT_TOKENS?: number;\n\n protected _storage?: MastraStorage;\n vector?: MastraVector;\n embedder?: EmbeddingModel<string> | EmbeddingModelV2<string>;\n private processors: MemoryProcessor[] = [];\n protected threadConfig: MemoryConfig = { ...memoryDefaultOptions };\n #mastra?: Mastra;\n\n constructor(config: { name: string } & SharedMemoryConfig) {\n super({ component: 'MEMORY', name: config.name });\n\n if (config.options) this.threadConfig = this.getMergedThreadConfig(config.options);\n if (config.processors) this.processors = config.processors;\n if (config.storage) {\n this._storage = augmentWithInit(config.storage);\n this._hasOwnStorage = true;\n }\n\n if (this.threadConfig.semanticRecall) {\n if (!config.vector) {\n throw new Error(\n `Semantic recall requires a vector store to be configured.\\n\\nhttps://mastra.ai/en/docs/memory/semantic-recall`,\n );\n }\n this.vector = config.vector;\n\n if (!config.embedder) {\n throw new Error(\n `Semantic recall requires an embedder to be configured.\\n\\nhttps://mastra.ai/en/docs/memory/semantic-recall`,\n );\n }\n\n // Convert string embedder to ModelRouterEmbeddingModel\n if (typeof config.embedder === 'string') {\n this.embedder = new ModelRouterEmbeddingModel(config.embedder);\n } else {\n this.embedder = config.embedder;\n }\n }\n }\n\n /**\n * Internal method used by Mastra to register itself with the memory.\n * @param mastra The Mastra instance.\n * @internal\n */\n __registerMastra(mastra: Mastra): void {\n this.#mastra = mastra;\n }\n\n protected _hasOwnStorage = false;\n get hasOwnStorage() {\n return this._hasOwnStorage;\n }\n\n get storage() {\n if (!this._storage) {\n throw new Error(\n `Memory requires a storage provider to function. Add a storage configuration to Memory or to your Mastra instance.\\n\\nhttps://mastra.ai/en/docs/memory/overview`,\n );\n }\n return this._storage;\n }\n\n public setStorage(storage: MastraStorage) {\n this._storage = augmentWithInit(storage);\n }\n\n public setVector(vector: MastraVector) {\n this.vector = vector;\n }\n\n public setEmbedder(embedder: EmbeddingModel<string>) {\n this.embedder = embedder;\n }\n\n /**\n * Get a system message to inject into the conversation.\n * This will be called before each conversation turn.\n * Implementations can override this to inject custom system messages.\n */\n public async getSystemMessage(_input: {\n threadId: string;\n resourceId?: string;\n memoryConfig?: MemoryConfig;\n }): Promise<string | null> {\n return null;\n }\n\n /**\n * Get tools that should be available to the agent.\n * This will be called when converting tools for the agent.\n * Implementations can override this to provide additional tools.\n */\n public listTools(_config?: MemoryConfig): Record<string, ToolAction<any, any, any>> {\n return {};\n }\n\n protected async createEmbeddingIndex(dimensions?: number, config?: MemoryConfig): Promise<{ indexName: string }> {\n const defaultDimensions = 1536;\n const isDefault = dimensions === defaultDimensions;\n const usedDimensions = dimensions ?? defaultDimensions;\n const separator = this.vector?.indexSeparator ?? '_';\n const indexName = isDefault\n ? `memory${separator}messages`\n : `memory${separator}messages${separator}${usedDimensions}`;\n\n if (typeof this.vector === `undefined`) {\n throw new Error(`Tried to create embedding index but no vector db is attached to this Memory instance.`);\n }\n\n // Get index configuration from memory config\n const semanticConfig = typeof config?.semanticRecall === 'object' ? config.semanticRecall : undefined;\n const indexConfig = semanticConfig?.indexConfig;\n\n // Base parameters that all vector stores support\n const createParams: any = {\n indexName,\n dimension: usedDimensions,\n ...(indexConfig?.metric && { metric: indexConfig.metric }),\n };\n\n // Add PG-specific configuration if provided\n // Only PG vector store will use these parameters\n if (indexConfig && (indexConfig.type || indexConfig.ivf || indexConfig.hnsw)) {\n createParams.indexConfig = {};\n if (indexConfig.type) createParams.indexConfig.type = indexConfig.type;\n if (indexConfig.ivf) createParams.indexConfig.ivf = indexConfig.ivf;\n if (indexConfig.hnsw) createParams.indexConfig.hnsw = indexConfig.hnsw;\n }\n\n await this.vector.createIndex(createParams);\n return { indexName };\n }\n\n public getMergedThreadConfig(config?: MemoryConfig): MemoryConfig {\n if (config?.workingMemory && 'use' in config.workingMemory) {\n throw new Error('The workingMemory.use option has been removed. Working memory always uses tool-call mode.');\n }\n\n if (config?.threads?.generateTitle !== undefined) {\n throw new Error(\n 'The threads.generateTitle option has been moved. Use the top-level generateTitle option instead.',\n );\n }\n\n const mergedConfig = deepMerge(this.threadConfig, config || {});\n\n if (config?.workingMemory?.schema) {\n if (mergedConfig.workingMemory) {\n mergedConfig.workingMemory.schema = config.workingMemory.schema;\n }\n }\n\n return mergedConfig;\n }\n\n /**\n * Apply all configured message processors to a list of messages.\n * @param messages The messages to process\n * @returns The processed messages\n */\n protected async applyProcessors(\n messages: CoreMessage[],\n opts: {\n processors?: MemoryProcessor[];\n } & MemoryProcessorOpts,\n ): Promise<CoreMessage[]> {\n const processors = opts.processors || this.processors;\n if (!processors || processors.length === 0) {\n return messages;\n }\n\n let processedMessages = [...messages];\n\n for (const processor of processors) {\n processedMessages = await processor.process(processedMessages, {\n systemMessage: opts.systemMessage,\n newMessages: opts.newMessages,\n memorySystemMessage: opts.memorySystemMessage,\n });\n }\n\n return processedMessages;\n }\n\n processMessages({\n messages,\n processors,\n ...opts\n }: {\n messages: CoreMessage[];\n processors?: MemoryProcessor[];\n } & MemoryProcessorOpts) {\n return this.applyProcessors(messages, { processors: processors || this.processors, ...opts });\n }\n\n estimateTokens(text: string): number {\n return Math.ceil(text.split(' ').length * 1.3);\n }\n\n /**\n * Retrieves a specific thread by its ID\n * @param threadId - The unique identifier of the thread\n * @returns Promise resolving to the thread or null if not found\n */\n abstract getThreadById({ threadId }: { threadId: string }): Promise<StorageThreadType | null>;\n\n /**\n * Lists all threads that belong to the specified resource.\n * @param args.resourceId - The unique identifier of the resource\n * @param args.offset - The number of threads to skip (for pagination)\n * @param args.limit - The maximum number of threads to return\n * @param args.orderBy - Optional sorting configuration with `field` (`'createdAt'` or `'updatedAt'`)\n * and `direction` (`'ASC'` or `'DESC'`);\n * defaults to `{ field: 'createdAt', direction: 'DESC' }`\n * @returns Promise resolving to paginated thread results with metadata;\n * resolves to an empty array if the resource has no threads\n */\n abstract listThreadsByResourceId(\n args: StorageListThreadsByResourceIdInput,\n ): Promise<StorageListThreadsByResourceIdOutput>;\n\n /**\n * Saves or updates a thread\n * @param thread - The thread data to save\n * @returns Promise resolving to the saved thread\n */\n abstract saveThread({\n thread,\n memoryConfig,\n }: {\n thread: StorageThreadType;\n memoryConfig?: MemoryConfig;\n }): Promise<StorageThreadType>;\n\n /**\n * Saves messages to a thread\n * @param messages - Array of messages to save\n * @returns Promise resolving to the saved messages\n */\n abstract saveMessages(args: {\n messages: MastraDBMessage[];\n memoryConfig?: MemoryConfig | undefined;\n }): Promise<{ messages: MastraDBMessage[] }>;\n\n /**\n * Retrieves messages for a specific thread with optional semantic recall\n * @param threadId - The unique identifier of the thread\n * @param resourceId - Optional resource ID for validation\n * @param vectorSearchString - Optional search string for semantic recall\n * @param config - Optional memory configuration\n * @returns Promise resolving to array of messages in mastra-db format\n */\n abstract recall(\n args: StorageListMessagesInput & {\n threadConfig?: MemoryConfig;\n vectorSearchString?: string;\n },\n ): Promise<{ messages: MastraDBMessage[] }>;\n\n /**\n * Helper method to create a new thread\n * @param title - Optional title for the thread\n * @param metadata - Optional metadata for the thread\n * @returns Promise resolving to the created thread\n */\n async createThread({\n threadId,\n resourceId,\n title,\n metadata,\n memoryConfig,\n saveThread = true,\n }: {\n resourceId: string;\n threadId?: string;\n title?: string;\n metadata?: Record<string, unknown>;\n memoryConfig?: MemoryConfig;\n saveThread?: boolean;\n }): Promise<StorageThreadType> {\n const thread: StorageThreadType = {\n id: threadId || this.generateId(),\n title: title || `New Thread ${new Date().toISOString()}`,\n resourceId,\n createdAt: new Date(),\n updatedAt: new Date(),\n metadata,\n };\n\n return saveThread ? this.saveThread({ thread, memoryConfig }) : thread;\n }\n\n /**\n * Helper method to delete a thread\n * @param threadId - the id of the thread to delete\n */\n abstract deleteThread(threadId: string): Promise<void>;\n\n /**\n * Helper method to add a single message to a thread\n * @param threadId - The thread to add the message to\n * @param content - The message content\n * @param role - The role of the message sender\n * @param type - The type of the message\n * @param toolNames - Optional array of tool names that were called\n * @param toolCallArgs - Optional array of tool call arguments\n * @param toolCallIds - Optional array of tool call ids\n * @returns Promise resolving to the saved message\n * @deprecated use saveMessages instead\n */\n async addMessage(_params: {\n threadId: string;\n resourceId: string;\n config?: MemoryConfig;\n content: UserContent | AssistantContent;\n role: 'user' | 'assistant';\n type: 'text' | 'tool-call' | 'tool-result';\n toolNames?: string[];\n toolCallArgs?: Record<string, unknown>[];\n toolCallIds?: string[];\n }): Promise<MastraMessageV1> {\n throw new Error('addMessage is deprecated. Please use saveMessages instead.');\n }\n\n /**\n * Generates a unique identifier\n * @returns A unique string ID\n */\n public generateId(): string {\n return this.#mastra?.generateId() || crypto.randomUUID();\n }\n\n /**\n * Retrieves working memory for a specific thread\n * @param threadId - The unique identifier of the thread\n * @param resourceId - The unique identifier of the resource\n * @param memoryConfig - Optional memory configuration\n * @returns Promise resolving to working memory data or null if not found\n */\n abstract getWorkingMemory({\n threadId,\n resourceId,\n memoryConfig,\n }: {\n threadId: string;\n resourceId?: string;\n memoryConfig?: MemoryConfig;\n }): Promise<string | null>;\n\n /**\n * Retrieves working memory template for a specific thread\n * @param memoryConfig - Optional memory configuration\n * @returns Promise resolving to working memory template or null if not found\n */\n abstract getWorkingMemoryTemplate({\n memoryConfig,\n }?: {\n memoryConfig?: MemoryConfig;\n }): Promise<WorkingMemoryTemplate | null>;\n\n abstract updateWorkingMemory({\n threadId,\n resourceId,\n workingMemory,\n memoryConfig,\n }: {\n threadId: string;\n resourceId?: string;\n workingMemory: string;\n memoryConfig?: MemoryConfig;\n }): Promise<void>;\n\n /**\n * @warning experimental! can be removed or changed at any time\n */\n abstract __experimental_updateWorkingMemoryVNext({\n threadId,\n resourceId,\n workingMemory,\n searchString,\n memoryConfig,\n }: {\n threadId: string;\n resourceId?: string;\n workingMemory: string;\n searchString?: string;\n memoryConfig?: MemoryConfig;\n }): Promise<{ success: boolean; reason: string }>;\n\n /**\n * Deletes multiple messages by their IDs\n * @param messageIds - Array of message IDs to delete\n * @returns Promise that resolves when all messages are deleted\n */\n abstract deleteMessages(messageIds: MessageDeleteInput): Promise<void>;\n}\n","import { MessageList } from '../agent/message-list';\nimport { MastraMemory } from '../memory';\nimport type { StorageThreadType, MastraDBMessage, MemoryConfig, MessageDeleteInput } from '../memory';\nimport { InMemoryStore } from '../storage';\nimport type {\n StorageListMessagesInput,\n StorageListThreadsByResourceIdInput,\n StorageListThreadsByResourceIdOutput,\n} from '../storage';\n\nexport class MockMemory extends MastraMemory {\n threads: Record<string, StorageThreadType> = {};\n\n constructor({ storage }: { storage?: InMemoryStore } = {}) {\n super({ name: 'mock', storage: storage || new InMemoryStore() });\n this._hasOwnStorage = true;\n }\n\n async getThreadById({ threadId }: { threadId: string }): Promise<StorageThreadType | null> {\n return this.storage.getThreadById({ threadId });\n }\n\n async saveThread({ thread }: { thread: StorageThreadType; memoryConfig?: MemoryConfig }): Promise<StorageThreadType> {\n return this.storage.saveThread({ thread });\n }\n\n async saveMessages({\n messages,\n }: {\n messages: MastraDBMessage[];\n memoryConfig?: MemoryConfig;\n }): Promise<{ messages: MastraDBMessage[] }> {\n // Convert messages to MastraDBMessage format and ensure IDs are generated\n const dbMessages = new MessageList({\n generateMessageId: () => this.generateId(),\n })\n .add(messages, 'memory')\n .get.all.db();\n\n return this.storage.saveMessages({ messages: dbMessages });\n }\n\n async listThreadsByResourceId(\n args: StorageListThreadsByResourceIdInput,\n ): Promise<StorageListThreadsByResourceIdOutput> {\n return this.storage.listThreadsByResourceId(args);\n }\n\n async recall(args: StorageListMessagesInput & { threadConfig?: MemoryConfig; vectorSearchString?: string }): Promise<{\n messages: MastraDBMessage[];\n }> {\n // Get raw messages from storage\n const result = await this.storage.listMessages({\n threadId: args.threadId,\n resourceId: args.resourceId,\n perPage: args.perPage,\n page: args.page,\n orderBy: args.orderBy,\n filter: args.filter,\n include: args.include,\n });\n\n return result;\n }\n async deleteThread(threadId: string) {\n return this.storage.deleteThread({ threadId });\n }\n\n async deleteMessages(messageIds: MessageDeleteInput): Promise<void> {\n const ids = Array.isArray(messageIds)\n ? messageIds?.map(item => (typeof item === 'string' ? item : item.id))\n : [messageIds];\n return this.storage.deleteMessages(ids);\n }\n\n // Add missing method implementations\n async getWorkingMemory({\n threadId: _threadId,\n resourceId: _resourceId,\n memoryConfig: _memoryConfig,\n }: {\n threadId: string;\n resourceId?: string;\n memoryConfig?: MemoryConfig;\n }): Promise<string | null> {\n return null;\n }\n\n async getWorkingMemoryTemplate({\n memoryConfig: _memoryConfig,\n }: {\n memoryConfig?: MemoryConfig;\n } = {}): Promise<any | null> {\n return null;\n }\n\n getMergedThreadConfig(config?: MemoryConfig) {\n return config || {};\n }\n\n async updateWorkingMemory({\n threadId: _threadId,\n resourceId: _resourceId,\n workingMemory: _workingMemory,\n memoryConfig: _memoryConfig,\n }: {\n threadId: string;\n resourceId?: string;\n workingMemory: string;\n memoryConfig?: MemoryConfig;\n }) {\n // Mock implementation - just return void\n return;\n }\n\n async __experimental_updateWorkingMemoryVNext({\n threadId: _threadId,\n resourceId: _resourceId,\n workingMemory: _workingMemory,\n searchString: _searchString,\n memoryConfig: _memoryConfig,\n }: {\n threadId: string;\n resourceId?: string;\n workingMemory: string;\n searchString?: string;\n memoryConfig?: MemoryConfig;\n }) {\n // Mock implementation for abstract method\n return { success: true, reason: 'Mock implementation' };\n }\n\n async updateMessages({ messages }: { messages: MastraDBMessage[] }): Promise<MastraDBMessage[]> {\n const result = await this.saveMessages({ messages });\n return result.messages;\n }\n}\n"]}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
@@ -3,6 +3,8 @@ import type { EmbeddingModel, AssistantContent, UserContent, CoreMessage } from
3
3
  import type { MastraDBMessage } from '../agent/message-list/index.js';
4
4
  import { MastraBase } from '../base.js';
5
5
  import type { Mastra } from '../mastra/index.js';
6
+ import type { InputProcessor, OutputProcessor } from '../processors/index.js';
7
+ import type { RequestContext } from '../request-context/index.js';
6
8
  import type { MastraStorage, StorageListMessagesInput, StorageListThreadsByResourceIdInput, StorageListThreadsByResourceIdOutput } from '../storage/index.js';
7
9
  import type { ToolAction } from '../tools/index.js';
8
10
  import type { MastraVector } from '../vector/index.js';
@@ -48,7 +50,6 @@ export declare abstract class MastraMemory extends MastraBase {
48
50
  protected _storage?: MastraStorage;
49
51
  vector?: MastraVector;
50
52
  embedder?: EmbeddingModel<string> | EmbeddingModelV2<string>;
51
- private processors;
52
53
  protected threadConfig: MemoryConfig;
53
54
  constructor(config: {
54
55
  name: string;
@@ -81,22 +82,15 @@ export declare abstract class MastraMemory extends MastraBase {
81
82
  * Implementations can override this to provide additional tools.
82
83
  */
83
84
  listTools(_config?: MemoryConfig): Record<string, ToolAction<any, any, any>>;
85
+ /**
86
+ * Get the index name for semantic recall embeddings.
87
+ * This is used to ensure consistency between the Memory class and SemanticRecall processor.
88
+ */
89
+ protected getEmbeddingIndexName(dimensions?: number): string;
84
90
  protected createEmbeddingIndex(dimensions?: number, config?: MemoryConfig): Promise<{
85
91
  indexName: string;
86
92
  }>;
87
93
  getMergedThreadConfig(config?: MemoryConfig): MemoryConfig;
88
- /**
89
- * Apply all configured message processors to a list of messages.
90
- * @param messages The messages to process
91
- * @returns The processed messages
92
- */
93
- protected applyProcessors(messages: CoreMessage[], opts: {
94
- processors?: MemoryProcessor[];
95
- } & MemoryProcessorOpts): Promise<CoreMessage[]>;
96
- processMessages({ messages, processors, ...opts }: {
97
- messages: CoreMessage[];
98
- processors?: MemoryProcessor[];
99
- } & MemoryProcessorOpts): Promise<CoreMessage[]>;
100
94
  estimateTokens(text: string): number;
101
95
  /**
102
96
  * Retrieves a specific thread by its ID
@@ -212,8 +206,9 @@ export declare abstract class MastraMemory extends MastraBase {
212
206
  memoryConfig?: MemoryConfig;
213
207
  }): Promise<string | null>;
214
208
  /**
215
- * Retrieves working memory template for a specific thread
216
- * @param memoryConfig - Optional memory configuration
209
+ * Get working memory template
210
+ * @param threadId - Thread ID
211
+ * @param resourceId - Resource ID
217
212
  * @returns Promise resolving to working memory template or null if not found
218
213
  */
219
214
  abstract getWorkingMemoryTemplate({ memoryConfig, }?: {
@@ -239,10 +234,19 @@ export declare abstract class MastraMemory extends MastraBase {
239
234
  reason: string;
240
235
  }>;
241
236
  /**
242
- * Deletes multiple messages by their IDs
243
- * @param messageIds - Array of message IDs to delete
244
- * @returns Promise that resolves when all messages are deleted
237
+ * Get input processors for this memory instance
238
+ * This allows Memory to be used as a ProcessorProvider in Agent's inputProcessors array.
239
+ * @param configuredProcessors - Processors already configured by the user (for deduplication)
240
+ * @returns Array of input processors configured for this memory instance
241
+ */
242
+ getInputProcessors(configuredProcessors?: InputProcessor[], context?: RequestContext): InputProcessor[];
243
+ /**
244
+ * Get output processors for this memory instance
245
+ * This allows Memory to be used as a ProcessorProvider in Agent's outputProcessors array.
246
+ * @param configuredProcessors - Processors already configured by the user (for deduplication)
247
+ * @returns Array of output processors configured for this memory instance
245
248
  */
249
+ getOutputProcessors(configuredProcessors?: OutputProcessor[], context?: RequestContext): OutputProcessor[];
246
250
  abstract deleteMessages(messageIds: MessageDeleteInput): Promise<void>;
247
251
  }
248
252
  //# sourceMappingURL=memory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/memory/memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/memory/memory.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,15 @@
1
- import { MastraMemory } from '../memory/index.js';
2
- import type { StorageThreadType, MastraDBMessage, MemoryConfig, MessageDeleteInput } from '../memory/index.js';
3
- import { InMemoryStore } from '../storage/index.js';
1
+ import type { MastraDBMessage } from '../agent/message-list/index.js';
4
2
  import type { StorageListMessagesInput, StorageListThreadsByResourceIdInput, StorageListThreadsByResourceIdOutput } from '../storage/index.js';
3
+ import { InMemoryStore } from '../storage/index.js';
4
+ import type { ToolAction } from '../tools/index.js';
5
+ import { MastraMemory } from './memory.js';
6
+ import type { StorageThreadType, MemoryConfig, MessageDeleteInput, WorkingMemoryTemplate } from './types.js';
5
7
  export declare class MockMemory extends MastraMemory {
6
- threads: Record<string, StorageThreadType>;
7
- constructor({ storage }?: {
8
+ constructor({ storage, enableWorkingMemory, workingMemoryTemplate, enableMessageHistory, }?: {
8
9
  storage?: InMemoryStore;
10
+ enableWorkingMemory?: boolean;
11
+ enableMessageHistory?: boolean;
12
+ workingMemoryTemplate?: string;
9
13
  });
10
14
  getThreadById({ threadId }: {
11
15
  threadId: string;
@@ -29,22 +33,22 @@ export declare class MockMemory extends MastraMemory {
29
33
  }>;
30
34
  deleteThread(threadId: string): Promise<void>;
31
35
  deleteMessages(messageIds: MessageDeleteInput): Promise<void>;
32
- getWorkingMemory({ threadId: _threadId, resourceId: _resourceId, memoryConfig: _memoryConfig, }: {
36
+ getWorkingMemory({ threadId, resourceId, memoryConfig, }: {
33
37
  threadId: string;
34
38
  resourceId?: string;
35
39
  memoryConfig?: MemoryConfig;
36
40
  }): Promise<string | null>;
37
- getWorkingMemoryTemplate({ memoryConfig: _memoryConfig, }?: {
41
+ listTools(_config?: MemoryConfig): Record<string, ToolAction<any, any, any>>;
42
+ getWorkingMemoryTemplate({ memoryConfig, }?: {
38
43
  memoryConfig?: MemoryConfig;
39
- }): Promise<any | null>;
40
- getMergedThreadConfig(config?: MemoryConfig): MemoryConfig;
41
- updateWorkingMemory({ threadId: _threadId, resourceId: _resourceId, workingMemory: _workingMemory, memoryConfig: _memoryConfig, }: {
44
+ }): Promise<WorkingMemoryTemplate | null>;
45
+ updateWorkingMemory({ threadId, resourceId, workingMemory, memoryConfig, }: {
42
46
  threadId: string;
43
47
  resourceId?: string;
44
48
  workingMemory: string;
45
49
  memoryConfig?: MemoryConfig;
46
50
  }): Promise<void>;
47
- __experimental_updateWorkingMemoryVNext({ threadId: _threadId, resourceId: _resourceId, workingMemory: _workingMemory, searchString: _searchString, memoryConfig: _memoryConfig, }: {
51
+ __experimental_updateWorkingMemoryVNext({ threadId, resourceId, workingMemory, searchString: _searchString, memoryConfig, }: {
48
52
  threadId: string;
49
53
  resourceId?: string;
50
54
  workingMemory: string;
@@ -54,8 +58,5 @@ export declare class MockMemory extends MastraMemory {
54
58
  success: boolean;
55
59
  reason: string;
56
60
  }>;
57
- updateMessages({ messages }: {
58
- messages: MastraDBMessage[];
59
- }): Promise<MastraDBMessage[]>;
60
61
  }
61
62
  //# sourceMappingURL=mock.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../../src/memory/mock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../../src/memory/mock.ts"],"names":[],"mappings":"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"}