@mastra/core 1.0.0-beta.5 → 1.0.0-beta.7

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 (421) hide show
  1. package/CHANGELOG.md +448 -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 +4 -4
  7. package/dist/agent/agent.d.ts.map +1 -1
  8. package/dist/agent/agent.types.d.ts +1 -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/save-queue/index.d.ts +3 -1
  17. package/dist/agent/save-queue/index.d.ts.map +1 -1
  18. package/dist/agent/test-utils.d.ts +37 -0
  19. package/dist/agent/test-utils.d.ts.map +1 -1
  20. package/dist/agent/trip-wire.d.ts.map +1 -1
  21. package/dist/agent/types.d.ts +18 -3
  22. package/dist/agent/types.d.ts.map +1 -1
  23. package/dist/agent/utils.d.ts.map +1 -1
  24. package/dist/agent/workflows/prepare-stream/index.d.ts +10 -10
  25. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -1
  26. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts +1 -3
  27. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -1
  28. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +4 -4
  29. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts.map +1 -1
  30. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts +4 -4
  31. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -1
  32. package/dist/agent/workflows/prepare-stream/schema.d.ts +14 -14
  33. package/dist/agent/workflows/prepare-stream/schema.d.ts.map +1 -1
  34. package/dist/base.cjs +2 -2
  35. package/dist/base.js +1 -1
  36. package/dist/bundler/index.cjs +2 -2
  37. package/dist/bundler/index.js +1 -1
  38. package/dist/cache/index.cjs +3 -3
  39. package/dist/cache/index.js +1 -1
  40. package/dist/{chunk-556MJ7CL.cjs → chunk-26YAGTXK.cjs} +43 -37
  41. package/dist/chunk-26YAGTXK.cjs.map +1 -0
  42. package/dist/{chunk-OJNJA5ZI.js → chunk-3CKZSDTQ.js} +3 -3
  43. package/dist/{chunk-OJNJA5ZI.js.map → chunk-3CKZSDTQ.js.map} +1 -1
  44. package/dist/{chunk-E7K4FTLN.cjs → chunk-3EYBRHB2.cjs} +18 -2
  45. package/dist/chunk-3EYBRHB2.cjs.map +1 -0
  46. package/dist/{chunk-X7F4CSGR.cjs → chunk-3JA6VPNM.cjs} +2 -2
  47. package/dist/chunk-3JA6VPNM.cjs.map +1 -0
  48. package/dist/{chunk-TQTAMPSC.js → chunk-3N3QE4ZK.js} +3 -3
  49. package/dist/chunk-3N3QE4ZK.js.map +1 -0
  50. package/dist/{chunk-BMAFVZ2D.cjs → chunk-4AP234N6.cjs} +4 -4
  51. package/dist/{chunk-BMAFVZ2D.cjs.map → chunk-4AP234N6.cjs.map} +1 -1
  52. package/dist/{chunk-XIDKHXNR.js → chunk-4F6RAJFU.js} +33 -6
  53. package/dist/chunk-4F6RAJFU.js.map +1 -0
  54. package/dist/{chunk-B5J5HYDN.js → chunk-4GTU7MB2.js} +160 -8
  55. package/dist/chunk-4GTU7MB2.js.map +1 -0
  56. package/dist/{chunk-ISMGVGUM.cjs → chunk-4JKEUSCC.cjs} +4 -4
  57. package/dist/{chunk-ISMGVGUM.cjs.map → chunk-4JKEUSCC.cjs.map} +1 -1
  58. package/dist/{chunk-KJIQGPQR.js → chunk-5T53HHNP.js} +24 -10
  59. package/dist/chunk-5T53HHNP.js.map +1 -0
  60. package/dist/{chunk-CBAB7GOD.cjs → chunk-6BJ7XHRH.cjs} +2 -2
  61. package/dist/{chunk-CBAB7GOD.cjs.map → chunk-6BJ7XHRH.cjs.map} +1 -1
  62. package/dist/{chunk-RROQ46B6.cjs → chunk-6C2PU6J4.cjs} +31 -47
  63. package/dist/chunk-6C2PU6J4.cjs.map +1 -0
  64. package/dist/{chunk-J7O6WENZ.cjs → chunk-6TBWJV35.js} +5 -5
  65. package/dist/chunk-6TBWJV35.js.map +1 -0
  66. package/dist/{chunk-DSNPWVIG.cjs → chunk-AF74UXR5.cjs} +4 -3
  67. package/dist/chunk-AF74UXR5.cjs.map +1 -0
  68. package/dist/chunk-AZQMPE7G.cjs +4981 -0
  69. package/dist/chunk-AZQMPE7G.cjs.map +1 -0
  70. package/dist/{chunk-HNHZGFZY.cjs → chunk-CZEJQSWB.cjs} +10 -2
  71. package/dist/chunk-CZEJQSWB.cjs.map +1 -0
  72. package/dist/{chunk-KEXGB7FK.cjs → chunk-DGV2FWB4.cjs} +7 -7
  73. package/dist/{chunk-KEXGB7FK.cjs.map → chunk-DGV2FWB4.cjs.map} +1 -1
  74. package/dist/{chunk-YDFX3JR2.js → chunk-DMPHPHMU.js} +174 -12
  75. package/dist/chunk-DMPHPHMU.js.map +1 -0
  76. package/dist/{chunk-76K3IYWM.js → chunk-EE5NIGJ4.js} +3 -3
  77. package/dist/{chunk-76K3IYWM.js.map → chunk-EE5NIGJ4.js.map} +1 -1
  78. package/dist/{chunk-Y63IFHEZ.cjs → chunk-EOPEDKLG.cjs} +4 -4
  79. package/dist/chunk-EOPEDKLG.cjs.map +1 -0
  80. package/dist/{chunk-T2CJRA6E.js → chunk-EPMSC67U.js} +145 -19
  81. package/dist/chunk-EPMSC67U.js.map +1 -0
  82. package/dist/{chunk-NZAXAFI3.js → chunk-F2GAJSBI.js} +3 -3
  83. package/dist/{chunk-NZAXAFI3.js.map → chunk-F2GAJSBI.js.map} +1 -1
  84. package/dist/{chunk-5O52O25J.js → chunk-F54IK3GJ.js} +2 -2
  85. package/dist/chunk-F54IK3GJ.js.map +1 -0
  86. package/dist/{chunk-KIZIOFZC.js → chunk-FNSFXWDN.js} +17 -3
  87. package/dist/chunk-FNSFXWDN.js.map +1 -0
  88. package/dist/{chunk-ZTTMSCLU.js → chunk-G32WDDGV.js} +85 -9
  89. package/dist/chunk-G32WDDGV.js.map +1 -0
  90. package/dist/{chunk-5SA2EZ33.js → chunk-GZ6MCDK2.js} +147 -15
  91. package/dist/chunk-GZ6MCDK2.js.map +1 -0
  92. package/dist/{chunk-NHP6ZIDG.cjs → chunk-HJNEZRI4.cjs} +28 -174
  93. package/dist/chunk-HJNEZRI4.cjs.map +1 -0
  94. package/dist/{chunk-S6URFGCZ.js → chunk-LSHPJWM5.js} +3 -3
  95. package/dist/{chunk-S6URFGCZ.js.map → chunk-LSHPJWM5.js.map} +1 -1
  96. package/dist/{chunk-XJQX54QP.cjs → chunk-M7CQULF7.cjs} +97 -16
  97. package/dist/chunk-M7CQULF7.cjs.map +1 -0
  98. package/dist/{chunk-D7CJ4HIQ.js → chunk-NAKPEQEQ.js} +10 -156
  99. package/dist/chunk-NAKPEQEQ.js.map +1 -0
  100. package/dist/{chunk-KJ2SW6VA.js → chunk-NRUZYMHE.js} +4 -3
  101. package/dist/chunk-NRUZYMHE.js.map +1 -0
  102. package/dist/{chunk-KWWD3U7G.cjs → chunk-PJ7AYWAX.cjs} +155 -29
  103. package/dist/chunk-PJ7AYWAX.cjs.map +1 -0
  104. package/dist/{chunk-7ZADRRDW.js → chunk-PK2A5WBG.js} +3 -3
  105. package/dist/chunk-PK2A5WBG.js.map +1 -0
  106. package/dist/{chunk-XBO6W7LZ.js → chunk-POM7FCH5.js} +6166 -4133
  107. package/dist/chunk-POM7FCH5.js.map +1 -0
  108. package/dist/{chunk-X7JMA3IY.js → chunk-PSCMWPLC.js} +2 -2
  109. package/dist/{chunk-X7JMA3IY.js.map → chunk-PSCMWPLC.js.map} +1 -1
  110. package/dist/{chunk-KP42JLXE.cjs → chunk-RBBEMTMA.cjs} +6199 -4154
  111. package/dist/chunk-RBBEMTMA.cjs.map +1 -0
  112. package/dist/chunk-TLLXRG2Z.js +4959 -0
  113. package/dist/chunk-TLLXRG2Z.js.map +1 -0
  114. package/dist/{chunk-SVLMF4UZ.cjs → chunk-TQB2HMEC.cjs} +45 -44
  115. package/dist/chunk-TQB2HMEC.cjs.map +1 -0
  116. package/dist/{chunk-Y6ROD72V.cjs → chunk-UIGRFDO6.cjs} +4 -4
  117. package/dist/{chunk-Y6ROD72V.cjs.map → chunk-UIGRFDO6.cjs.map} +1 -1
  118. package/dist/{chunk-PC6EKOWK.js → chunk-URBPEE67.js} +19 -31
  119. package/dist/chunk-URBPEE67.js.map +1 -0
  120. package/dist/{chunk-VYJXTHII.cjs → chunk-URMN7TTH.cjs} +148 -16
  121. package/dist/chunk-URMN7TTH.cjs.map +1 -0
  122. package/dist/{chunk-GRBGQ2GE.js → chunk-UVHSM2GU.cjs} +9 -3
  123. package/dist/chunk-UVHSM2GU.cjs.map +1 -0
  124. package/dist/{chunk-U3VE2EVB.cjs → chunk-VBKMNIWK.cjs} +30 -16
  125. package/dist/chunk-VBKMNIWK.cjs.map +1 -0
  126. package/dist/{chunk-V537VSV4.cjs → chunk-Y24HI6ND.cjs} +37 -10
  127. package/dist/chunk-Y24HI6ND.cjs.map +1 -0
  128. package/dist/{chunk-DQIZ5FFX.cjs → chunk-YBEW5YWC.cjs} +177 -15
  129. package/dist/chunk-YBEW5YWC.cjs.map +1 -0
  130. package/dist/{chunk-OUUPUAGA.cjs → chunk-YUXTDKYN.cjs} +168 -15
  131. package/dist/chunk-YUXTDKYN.cjs.map +1 -0
  132. package/dist/{chunk-IITXXVYI.cjs → chunk-YWMMBIOM.cjs} +10 -10
  133. package/dist/{chunk-IITXXVYI.cjs.map → chunk-YWMMBIOM.cjs.map} +1 -1
  134. package/dist/{chunk-3B2OPLGG.js → chunk-Z4Y554NX.js} +13 -7
  135. package/dist/chunk-Z4Y554NX.js.map +1 -0
  136. package/dist/{chunk-3ZQ7LX73.js → chunk-Z57R5WS4.js} +4 -4
  137. package/dist/{chunk-3ZQ7LX73.js.map → chunk-Z57R5WS4.js.map} +1 -1
  138. package/dist/{chunk-QM5SRDJX.js → chunk-ZUWJCGLM.js} +5 -4
  139. package/dist/chunk-ZUWJCGLM.js.map +1 -0
  140. package/dist/deployer/index.cjs +2 -2
  141. package/dist/deployer/index.js +1 -1
  142. package/dist/di/index.cjs +10 -2
  143. package/dist/di/index.d.ts +1 -1
  144. package/dist/di/index.d.ts.map +1 -1
  145. package/dist/di/index.js +1 -1
  146. package/dist/evals/base.d.ts +9 -1
  147. package/dist/evals/base.d.ts.map +1 -1
  148. package/dist/evals/index.cjs +9 -9
  149. package/dist/evals/index.js +2 -2
  150. package/dist/evals/scoreTraces/index.cjs +5 -5
  151. package/dist/evals/scoreTraces/index.js +2 -2
  152. package/dist/evals/types.d.ts +8 -8
  153. package/dist/index.cjs +2 -2
  154. package/dist/index.js +1 -1
  155. package/dist/integration/index.cjs +2 -2
  156. package/dist/integration/index.js +1 -1
  157. package/dist/llm/index.cjs +15 -15
  158. package/dist/llm/index.js +5 -5
  159. package/dist/llm/model/aisdk/v5/model.d.ts.map +1 -1
  160. package/dist/llm/model/gateways/constants.d.ts.map +1 -1
  161. package/dist/llm/model/gateways/models-dev.d.ts.map +1 -1
  162. package/dist/llm/model/model.d.ts.map +1 -1
  163. package/dist/llm/model/model.loop.d.ts +1 -1
  164. package/dist/llm/model/model.loop.d.ts.map +1 -1
  165. package/dist/llm/model/provider-options.d.ts +4 -1
  166. package/dist/llm/model/provider-options.d.ts.map +1 -1
  167. package/dist/llm/model/provider-registry.d.ts.map +1 -1
  168. package/dist/llm/model/provider-types.generated.d.ts +39 -1
  169. package/dist/logger/constants.d.ts +1 -0
  170. package/dist/logger/constants.d.ts.map +1 -1
  171. package/dist/logger/index.cjs +11 -11
  172. package/dist/logger/index.js +2 -2
  173. package/dist/logger/transport.d.ts +1 -1
  174. package/dist/logger/transport.d.ts.map +1 -1
  175. package/dist/loop/index.cjs +2 -2
  176. package/dist/loop/index.js +1 -1
  177. package/dist/loop/loop.d.ts.map +1 -1
  178. package/dist/loop/network/index.d.ts +2 -2
  179. package/dist/loop/network/index.d.ts.map +1 -1
  180. package/dist/loop/test-utils/fullStream.d.ts.map +1 -1
  181. package/dist/loop/types.d.ts +5 -2
  182. package/dist/loop/types.d.ts.map +1 -1
  183. package/dist/loop/workflows/agentic-execution/index.d.ts +96 -96
  184. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +65 -65
  185. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
  186. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +32 -32
  187. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -1
  188. package/dist/loop/workflows/agentic-loop/index.d.ts +97 -97
  189. package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -1
  190. package/dist/loop/workflows/schema.d.ts +32 -32
  191. package/dist/loop/workflows/stream.d.ts +1 -1
  192. package/dist/loop/workflows/stream.d.ts.map +1 -1
  193. package/dist/mastra/index.cjs +2 -2
  194. package/dist/mastra/index.d.ts +55 -0
  195. package/dist/mastra/index.d.ts.map +1 -1
  196. package/dist/mastra/index.js +1 -1
  197. package/dist/mcp/index.cjs +4 -4
  198. package/dist/mcp/index.js +2 -2
  199. package/dist/memory/index.cjs +21 -382
  200. package/dist/memory/index.cjs.map +1 -1
  201. package/dist/memory/index.js +1 -382
  202. package/dist/memory/index.js.map +1 -1
  203. package/dist/memory/memory.d.ts +22 -18
  204. package/dist/memory/memory.d.ts.map +1 -1
  205. package/dist/memory/mock.d.ts +6 -1
  206. package/dist/memory/mock.d.ts.map +1 -1
  207. package/dist/memory/types.d.ts +69 -11
  208. package/dist/memory/types.d.ts.map +1 -1
  209. package/dist/models-dev-6GD3644V.js +3 -0
  210. package/dist/{models-dev-F6MTIYTO.js.map → models-dev-6GD3644V.js.map} +1 -1
  211. package/dist/models-dev-IUQBXJSS.cjs +12 -0
  212. package/dist/{models-dev-XIVR5EJV.cjs.map → models-dev-IUQBXJSS.cjs.map} +1 -1
  213. package/dist/netlify-GXJ5D5DD.js +3 -0
  214. package/dist/{netlify-RX3JXCFQ.js.map → netlify-GXJ5D5DD.js.map} +1 -1
  215. package/dist/netlify-KJLY3GFS.cjs +12 -0
  216. package/dist/{netlify-MXBOGAJR.cjs.map → netlify-KJLY3GFS.cjs.map} +1 -1
  217. package/dist/observability/index.cjs +16 -8
  218. package/dist/observability/index.js +1 -1
  219. package/dist/observability/types/tracing.d.ts +183 -3
  220. package/dist/observability/types/tracing.d.ts.map +1 -1
  221. package/dist/observability/utils.d.ts +47 -1
  222. package/dist/observability/utils.d.ts.map +1 -1
  223. package/dist/processors/index.cjs +35 -11
  224. package/dist/processors/index.d.ts +99 -21
  225. package/dist/processors/index.d.ts.map +1 -1
  226. package/dist/processors/index.js +1 -1
  227. package/dist/processors/memory/index.d.ts +7 -0
  228. package/dist/processors/memory/index.d.ts.map +1 -0
  229. package/dist/processors/memory/message-history.d.ts +43 -0
  230. package/dist/processors/memory/message-history.d.ts.map +1 -0
  231. package/dist/processors/memory/semantic-recall.d.ts +152 -0
  232. package/dist/processors/memory/semantic-recall.d.ts.map +1 -0
  233. package/dist/processors/memory/working-memory.d.ts +65 -0
  234. package/dist/processors/memory/working-memory.d.ts.map +1 -0
  235. package/dist/processors/processors/index.d.ts +2 -1
  236. package/dist/processors/processors/index.d.ts.map +1 -1
  237. package/dist/processors/processors/language-detector.d.ts +14 -0
  238. package/dist/processors/processors/language-detector.d.ts.map +1 -1
  239. package/dist/processors/processors/moderation.d.ts +14 -0
  240. package/dist/processors/processors/moderation.d.ts.map +1 -1
  241. package/dist/processors/processors/pii-detector.d.ts +14 -0
  242. package/dist/processors/processors/pii-detector.d.ts.map +1 -1
  243. package/dist/processors/processors/prompt-injection-detector.d.ts +14 -0
  244. package/dist/processors/processors/prompt-injection-detector.d.ts.map +1 -1
  245. package/dist/processors/processors/structured-output.d.ts +2 -1
  246. package/dist/processors/processors/structured-output.d.ts.map +1 -1
  247. package/dist/processors/processors/token-limiter.d.ts +21 -11
  248. package/dist/processors/processors/token-limiter.d.ts.map +1 -1
  249. package/dist/processors/processors/tool-call-filter.d.ts +28 -0
  250. package/dist/processors/processors/tool-call-filter.d.ts.map +1 -0
  251. package/dist/processors/runner.d.ts +35 -4
  252. package/dist/processors/runner.d.ts.map +1 -1
  253. package/dist/provider-registry-7IFOXWPR.cjs +40 -0
  254. package/dist/{provider-registry-NBRXBOQT.cjs.map → provider-registry-7IFOXWPR.cjs.map} +1 -1
  255. package/dist/provider-registry-ZTMZMTVV.js +3 -0
  256. package/dist/{provider-registry-3LUCE7FT.js.map → provider-registry-ZTMZMTVV.js.map} +1 -1
  257. package/dist/provider-registry.json +111 -6
  258. package/dist/{registry-generator-DEPPRYYJ.cjs → registry-generator-34SC4TAU.cjs} +2 -2
  259. package/dist/registry-generator-34SC4TAU.cjs.map +1 -0
  260. package/dist/{registry-generator-FLW6NV42.js → registry-generator-UMTNPBJX.js} +2 -2
  261. package/dist/registry-generator-UMTNPBJX.js.map +1 -0
  262. package/dist/relevance/index.cjs +2 -2
  263. package/dist/relevance/index.js +1 -1
  264. package/dist/request-context/index.cjs +10 -2
  265. package/dist/request-context/index.d.ts +26 -0
  266. package/dist/request-context/index.d.ts.map +1 -1
  267. package/dist/request-context/index.js +1 -1
  268. package/dist/server/base.d.ts +51 -0
  269. package/dist/server/base.d.ts.map +1 -0
  270. package/dist/server/index.cjs +81 -2
  271. package/dist/server/index.cjs.map +1 -1
  272. package/dist/server/index.d.ts +3 -0
  273. package/dist/server/index.d.ts.map +1 -1
  274. package/dist/server/index.js +79 -2
  275. package/dist/server/index.js.map +1 -1
  276. package/dist/server/simple-auth.d.ts +27 -0
  277. package/dist/server/simple-auth.d.ts.map +1 -0
  278. package/dist/storage/base.d.ts +22 -1
  279. package/dist/storage/base.d.ts.map +1 -1
  280. package/dist/storage/domains/memory/inmemory.d.ts.map +1 -1
  281. package/dist/storage/index.cjs +49 -29
  282. package/dist/storage/index.js +1 -1
  283. package/dist/storage/storageWithInit.d.ts.map +1 -1
  284. package/dist/storage/types.d.ts +1 -1
  285. package/dist/storage/types.d.ts.map +1 -1
  286. package/dist/storage/utils.d.ts +82 -0
  287. package/dist/storage/utils.d.ts.map +1 -1
  288. package/dist/stream/MastraAgentNetworkStream.d.ts +1 -1
  289. package/dist/stream/MastraAgentNetworkStream.d.ts.map +1 -1
  290. package/dist/stream/MastraWorkflowStream.d.ts +1 -1
  291. package/dist/stream/MastraWorkflowStream.d.ts.map +1 -1
  292. package/dist/stream/RunOutput.d.ts +2 -2
  293. package/dist/stream/RunOutput.d.ts.map +1 -1
  294. package/dist/stream/aisdk/v5/execute.d.ts +3 -2
  295. package/dist/stream/aisdk/v5/execute.d.ts.map +1 -1
  296. package/dist/stream/aisdk/v5/input.d.ts +4 -1
  297. package/dist/stream/aisdk/v5/input.d.ts.map +1 -1
  298. package/dist/stream/aisdk/v5/output.d.ts +1 -1
  299. package/dist/stream/aisdk/v5/output.d.ts.map +1 -1
  300. package/dist/stream/aisdk/v5/transform.d.ts.map +1 -1
  301. package/dist/stream/base/base.d.ts +1 -1
  302. package/dist/stream/base/base.d.ts.map +1 -1
  303. package/dist/stream/base/output-format-handlers.d.ts +1 -1
  304. package/dist/stream/base/output-format-handlers.d.ts.map +1 -1
  305. package/dist/stream/base/output.d.ts +1 -1
  306. package/dist/stream/base/output.d.ts.map +1 -1
  307. package/dist/stream/index.cjs +11 -11
  308. package/dist/stream/index.js +2 -2
  309. package/dist/stream/types.d.ts +2 -0
  310. package/dist/stream/types.d.ts.map +1 -1
  311. package/dist/test-utils/llm-mock.cjs +44 -10
  312. package/dist/test-utils/llm-mock.cjs.map +1 -1
  313. package/dist/test-utils/llm-mock.d.ts +3 -0
  314. package/dist/test-utils/llm-mock.d.ts.map +1 -1
  315. package/dist/test-utils/llm-mock.js +36 -6
  316. package/dist/test-utils/llm-mock.js.map +1 -1
  317. package/dist/tools/index.cjs +6 -6
  318. package/dist/tools/index.js +2 -2
  319. package/dist/tools/is-vercel-tool.cjs +2 -2
  320. package/dist/tools/is-vercel-tool.js +1 -1
  321. package/dist/tools/stream.d.ts +18 -2
  322. package/dist/tools/stream.d.ts.map +1 -1
  323. package/dist/tools/tool-builder/builder.d.ts.map +1 -1
  324. package/dist/tools/tool.d.ts +13 -0
  325. package/dist/tools/tool.d.ts.map +1 -1
  326. package/dist/tools/types.d.ts +24 -3
  327. package/dist/tools/types.d.ts.map +1 -1
  328. package/dist/tools/validation.d.ts +1 -1
  329. package/dist/tools/validation.d.ts.map +1 -1
  330. package/dist/tts/index.cjs +2 -2
  331. package/dist/tts/index.js +1 -1
  332. package/dist/utils.cjs +22 -22
  333. package/dist/utils.d.ts +1 -1
  334. package/dist/utils.d.ts.map +1 -1
  335. package/dist/utils.js +1 -1
  336. package/dist/vector/index.cjs +4 -4
  337. package/dist/vector/index.js +2 -2
  338. package/dist/voice/index.cjs +6 -6
  339. package/dist/voice/index.js +1 -1
  340. package/dist/workflows/default.d.ts +176 -281
  341. package/dist/workflows/default.d.ts.map +1 -1
  342. package/dist/workflows/evented/index.cjs +10 -10
  343. package/dist/workflows/evented/index.js +1 -1
  344. package/dist/workflows/evented/step-executor.d.ts +1 -1
  345. package/dist/workflows/evented/step-executor.d.ts.map +1 -1
  346. package/dist/workflows/execution-engine.d.ts +4 -2
  347. package/dist/workflows/execution-engine.d.ts.map +1 -1
  348. package/dist/workflows/handlers/control-flow.d.ts +135 -0
  349. package/dist/workflows/handlers/control-flow.d.ts.map +1 -0
  350. package/dist/workflows/handlers/entry.d.ts +45 -0
  351. package/dist/workflows/handlers/entry.d.ts.map +1 -0
  352. package/dist/workflows/handlers/sleep.d.ts +62 -0
  353. package/dist/workflows/handlers/sleep.d.ts.map +1 -0
  354. package/dist/workflows/handlers/step.d.ts +60 -0
  355. package/dist/workflows/handlers/step.d.ts.map +1 -0
  356. package/dist/workflows/index.cjs +20 -20
  357. package/dist/workflows/index.js +1 -1
  358. package/dist/workflows/step.d.ts +2 -2
  359. package/dist/workflows/step.d.ts.map +1 -1
  360. package/dist/workflows/types.d.ts +158 -3
  361. package/dist/workflows/types.d.ts.map +1 -1
  362. package/dist/workflows/workflow.d.ts +8 -6
  363. package/dist/workflows/workflow.d.ts.map +1 -1
  364. package/package.json +8 -5
  365. package/src/llm/model/provider-types.generated.d.ts +39 -1
  366. package/dist/chunk-3B2OPLGG.js.map +0 -1
  367. package/dist/chunk-3PSWNGBF.js +0 -3
  368. package/dist/chunk-3PSWNGBF.js.map +0 -1
  369. package/dist/chunk-436FFEF6.js +0 -34
  370. package/dist/chunk-436FFEF6.js.map +0 -1
  371. package/dist/chunk-556MJ7CL.cjs.map +0 -1
  372. package/dist/chunk-5O52O25J.js.map +0 -1
  373. package/dist/chunk-5SA2EZ33.js.map +0 -1
  374. package/dist/chunk-7ZADRRDW.js.map +0 -1
  375. package/dist/chunk-B5J5HYDN.js.map +0 -1
  376. package/dist/chunk-D7CJ4HIQ.js.map +0 -1
  377. package/dist/chunk-DQIZ5FFX.cjs.map +0 -1
  378. package/dist/chunk-DSNPWVIG.cjs.map +0 -1
  379. package/dist/chunk-E7K4FTLN.cjs.map +0 -1
  380. package/dist/chunk-GRBGQ2GE.js.map +0 -1
  381. package/dist/chunk-HNHZGFZY.cjs.map +0 -1
  382. package/dist/chunk-J7O6WENZ.cjs.map +0 -1
  383. package/dist/chunk-KIZIOFZC.js.map +0 -1
  384. package/dist/chunk-KJ2SW6VA.js.map +0 -1
  385. package/dist/chunk-KJIQGPQR.js.map +0 -1
  386. package/dist/chunk-KP42JLXE.cjs.map +0 -1
  387. package/dist/chunk-KWWD3U7G.cjs.map +0 -1
  388. package/dist/chunk-NHP6ZIDG.cjs.map +0 -1
  389. package/dist/chunk-OUUPUAGA.cjs.map +0 -1
  390. package/dist/chunk-PC6EKOWK.js.map +0 -1
  391. package/dist/chunk-PE3V7GUL.cjs +0 -4
  392. package/dist/chunk-PE3V7GUL.cjs.map +0 -1
  393. package/dist/chunk-QGWNF2QJ.cjs +0 -1697
  394. package/dist/chunk-QGWNF2QJ.cjs.map +0 -1
  395. package/dist/chunk-QM5SRDJX.js.map +0 -1
  396. package/dist/chunk-RROQ46B6.cjs.map +0 -1
  397. package/dist/chunk-SVLMF4UZ.cjs.map +0 -1
  398. package/dist/chunk-T2CJRA6E.js.map +0 -1
  399. package/dist/chunk-T2UNO766.js +0 -1694
  400. package/dist/chunk-T2UNO766.js.map +0 -1
  401. package/dist/chunk-TQTAMPSC.js.map +0 -1
  402. package/dist/chunk-U3VE2EVB.cjs.map +0 -1
  403. package/dist/chunk-V3VLOOSW.cjs +0 -36
  404. package/dist/chunk-V3VLOOSW.cjs.map +0 -1
  405. package/dist/chunk-V537VSV4.cjs.map +0 -1
  406. package/dist/chunk-VYJXTHII.cjs.map +0 -1
  407. package/dist/chunk-X7F4CSGR.cjs.map +0 -1
  408. package/dist/chunk-XBO6W7LZ.js.map +0 -1
  409. package/dist/chunk-XIDKHXNR.js.map +0 -1
  410. package/dist/chunk-XJQX54QP.cjs.map +0 -1
  411. package/dist/chunk-Y63IFHEZ.cjs.map +0 -1
  412. package/dist/chunk-YDFX3JR2.js.map +0 -1
  413. package/dist/chunk-ZTTMSCLU.js.map +0 -1
  414. package/dist/models-dev-F6MTIYTO.js +0 -3
  415. package/dist/models-dev-XIVR5EJV.cjs +0 -12
  416. package/dist/netlify-MXBOGAJR.cjs +0 -12
  417. package/dist/netlify-RX3JXCFQ.js +0 -3
  418. package/dist/provider-registry-3LUCE7FT.js +0 -3
  419. package/dist/provider-registry-NBRXBOQT.cjs +0 -40
  420. package/dist/registry-generator-DEPPRYYJ.cjs.map +0 -1
  421. package/dist/registry-generator-FLW6NV42.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import type { Span, SpanType, GetOrCreateSpanOptions } from './types/index.js';
1
+ import type { Span, SpanType, GetOrCreateSpanOptions, AnySpan } from './types/index.js';
2
2
  /**
3
3
  * Creates or gets a child span from existing tracing context or starts a new trace.
4
4
  * This helper consolidates the common pattern of creating spans that can either be:
@@ -9,4 +9,50 @@ import type { Span, SpanType, GetOrCreateSpanOptions } from './types/index.js';
9
9
  * @returns The created Span or undefined if tracing is disabled
10
10
  */
11
11
  export declare function getOrCreateSpan<T extends SpanType>(options: GetOrCreateSpanOptions<T>): Span<T> | undefined;
12
+ /**
13
+ * Execute an async function within the span's tracing context if available.
14
+ * Falls back to direct execution if no span exists.
15
+ *
16
+ * When a bridge is configured, this enables auto-instrumented operations
17
+ * (HTTP requests, database queries, etc.) to be properly nested under the
18
+ * current span in the external tracing system.
19
+ *
20
+ * @param span - The span to use as context (or undefined to execute without context)
21
+ * @param fn - The async function to execute
22
+ * @returns The result of the function execution
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * const result = await executeWithContext(llmSpan, async () =>
27
+ * model.generateText(args)
28
+ * );
29
+ * ```
30
+ */
31
+ export declare function executeWithContext<T>(params: {
32
+ span?: AnySpan;
33
+ fn: () => Promise<T>;
34
+ }): Promise<T>;
35
+ /**
36
+ * Execute a synchronous function within the span's tracing context if available.
37
+ * Falls back to direct execution if no span exists.
38
+ *
39
+ * When a bridge is configured, this enables auto-instrumented operations
40
+ * (HTTP requests, database queries, etc.) to be properly nested under the
41
+ * current span in the external tracing system.
42
+ *
43
+ * @param span - The span to use as context (or undefined to execute without context)
44
+ * @param fn - The synchronous function to execute
45
+ * @returns The result of the function execution
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * const result = executeWithContextSync(llmSpan, () =>
50
+ * model.streamText(args)
51
+ * );
52
+ * ```
53
+ */
54
+ export declare function executeWithContextSync<T>(params: {
55
+ span?: AnySpan;
56
+ fn: () => T;
57
+ }): T;
12
58
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/observability/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtE;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,QAAQ,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAmC3G"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/observability/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAE/E;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,QAAQ,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAmC3G;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAA;CAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAQxG;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,CAQpF"}
@@ -1,48 +1,72 @@
1
1
  'use strict';
2
2
 
3
- var chunkKP42JLXE_cjs = require('../chunk-KP42JLXE.cjs');
3
+ var chunkRBBEMTMA_cjs = require('../chunk-RBBEMTMA.cjs');
4
4
 
5
5
 
6
6
 
7
7
  Object.defineProperty(exports, "BatchPartsProcessor", {
8
8
  enumerable: true,
9
- get: function () { return chunkKP42JLXE_cjs.BatchPartsProcessor; }
9
+ get: function () { return chunkRBBEMTMA_cjs.BatchPartsProcessor; }
10
10
  });
11
11
  Object.defineProperty(exports, "LanguageDetector", {
12
12
  enumerable: true,
13
- get: function () { return chunkKP42JLXE_cjs.LanguageDetector; }
13
+ get: function () { return chunkRBBEMTMA_cjs.LanguageDetector; }
14
+ });
15
+ Object.defineProperty(exports, "MessageHistory", {
16
+ enumerable: true,
17
+ get: function () { return chunkRBBEMTMA_cjs.MessageHistory; }
14
18
  });
15
19
  Object.defineProperty(exports, "ModerationProcessor", {
16
20
  enumerable: true,
17
- get: function () { return chunkKP42JLXE_cjs.ModerationProcessor; }
21
+ get: function () { return chunkRBBEMTMA_cjs.ModerationProcessor; }
18
22
  });
19
23
  Object.defineProperty(exports, "PIIDetector", {
20
24
  enumerable: true,
21
- get: function () { return chunkKP42JLXE_cjs.PIIDetector; }
25
+ get: function () { return chunkRBBEMTMA_cjs.PIIDetector; }
26
+ });
27
+ Object.defineProperty(exports, "ProcessorRunner", {
28
+ enumerable: true,
29
+ get: function () { return chunkRBBEMTMA_cjs.ProcessorRunner; }
22
30
  });
23
31
  Object.defineProperty(exports, "ProcessorState", {
24
32
  enumerable: true,
25
- get: function () { return chunkKP42JLXE_cjs.ProcessorState; }
33
+ get: function () { return chunkRBBEMTMA_cjs.ProcessorState; }
26
34
  });
27
35
  Object.defineProperty(exports, "PromptInjectionDetector", {
28
36
  enumerable: true,
29
- get: function () { return chunkKP42JLXE_cjs.PromptInjectionDetector; }
37
+ get: function () { return chunkRBBEMTMA_cjs.PromptInjectionDetector; }
38
+ });
39
+ Object.defineProperty(exports, "SemanticRecall", {
40
+ enumerable: true,
41
+ get: function () { return chunkRBBEMTMA_cjs.SemanticRecall; }
30
42
  });
31
43
  Object.defineProperty(exports, "StructuredOutputProcessor", {
32
44
  enumerable: true,
33
- get: function () { return chunkKP42JLXE_cjs.StructuredOutputProcessor; }
45
+ get: function () { return chunkRBBEMTMA_cjs.StructuredOutputProcessor; }
34
46
  });
35
47
  Object.defineProperty(exports, "SystemPromptScrubber", {
36
48
  enumerable: true,
37
- get: function () { return chunkKP42JLXE_cjs.SystemPromptScrubber; }
49
+ get: function () { return chunkRBBEMTMA_cjs.SystemPromptScrubber; }
50
+ });
51
+ Object.defineProperty(exports, "TokenLimiter", {
52
+ enumerable: true,
53
+ get: function () { return chunkRBBEMTMA_cjs.TokenLimiterProcessor; }
38
54
  });
39
55
  Object.defineProperty(exports, "TokenLimiterProcessor", {
40
56
  enumerable: true,
41
- get: function () { return chunkKP42JLXE_cjs.TokenLimiterProcessor; }
57
+ get: function () { return chunkRBBEMTMA_cjs.TokenLimiterProcessor; }
58
+ });
59
+ Object.defineProperty(exports, "ToolCallFilter", {
60
+ enumerable: true,
61
+ get: function () { return chunkRBBEMTMA_cjs.ToolCallFilter; }
42
62
  });
43
63
  Object.defineProperty(exports, "UnicodeNormalizer", {
44
64
  enumerable: true,
45
- get: function () { return chunkKP42JLXE_cjs.UnicodeNormalizer; }
65
+ get: function () { return chunkRBBEMTMA_cjs.UnicodeNormalizer; }
66
+ });
67
+ Object.defineProperty(exports, "WorkingMemory", {
68
+ enumerable: true,
69
+ get: function () { return chunkRBBEMTMA_cjs.WorkingMemory; }
46
70
  });
47
71
  //# sourceMappingURL=index.cjs.map
48
72
  //# sourceMappingURL=index.cjs.map
@@ -1,44 +1,122 @@
1
- import type { MastraDBMessage } from '../agent/message-list/index.js';
1
+ import type { CoreMessage as CoreMessageV4 } from '../ai-sdk.types.d.ts';
2
+ import type { MessageList, MastraDBMessage } from '../agent/message-list/index.js';
2
3
  import type { TracingContext } from '../observability/index.js';
4
+ import type { RequestContext } from '../request-context/index.js';
3
5
  import type { ChunkType } from '../stream/index.js';
6
+ /**
7
+ * Base context shared by all processor methods
8
+ */
9
+ export interface ProcessorContext {
10
+ /** Function to abort processing with an optional reason */
11
+ abort: (reason?: string) => never;
12
+ /** Optional tracing context for observability */
13
+ tracingContext?: TracingContext;
14
+ /** Optional runtime context with execution metadata */
15
+ requestContext?: RequestContext;
16
+ }
17
+ /**
18
+ * Context for message-based processor methods (processInput, processOutputResult, processInputStep)
19
+ */
20
+ export interface ProcessorMessageContext extends ProcessorContext {
21
+ /** The current messages being processed */
22
+ messages: MastraDBMessage[];
23
+ /** MessageList instance for managing message sources */
24
+ messageList: MessageList;
25
+ }
26
+ /**
27
+ * Return type for processInput that includes modified system messages
28
+ */
29
+ export interface ProcessInputResultWithSystemMessages {
30
+ messages: MastraDBMessage[];
31
+ systemMessages: CoreMessageV4[];
32
+ }
33
+ /**
34
+ * Return type for message-based processor methods
35
+ * - MessageList: Return the same messageList instance passed in (indicates you've mutated it)
36
+ * - MastraDBMessage[]: Return transformed messages array (for simple transformations)
37
+ */
38
+ export type ProcessorMessageResult = Promise<MessageList | MastraDBMessage[]> | MessageList | MastraDBMessage[];
39
+ /**
40
+ * Possible return types from processInput
41
+ */
42
+ export type ProcessInputResult = MessageList | MastraDBMessage[] | ProcessInputResultWithSystemMessages;
43
+ /**
44
+ * Arguments for processInput method
45
+ */
46
+ export interface ProcessInputArgs extends ProcessorMessageContext {
47
+ /** All system messages (agent instructions, user-provided, memory) for read/modify access */
48
+ systemMessages: CoreMessageV4[];
49
+ }
50
+ /**
51
+ * Arguments for processOutputResult method
52
+ */
53
+ export interface ProcessOutputResultArgs extends ProcessorMessageContext {
54
+ }
55
+ /**
56
+ * Arguments for processInputStep method
57
+ */
58
+ export interface ProcessInputStepArgs extends ProcessorMessageContext {
59
+ /** The current step number (0-indexed) */
60
+ stepNumber: number;
61
+ /** All system messages (agent instructions, user-provided, memory) for read/modify access */
62
+ systemMessages: CoreMessageV4[];
63
+ }
64
+ /**
65
+ * Arguments for processOutputStream method
66
+ */
67
+ export interface ProcessOutputStreamArgs extends ProcessorContext {
68
+ /** The current chunk being processed */
69
+ part: ChunkType;
70
+ /** All chunks seen so far */
71
+ streamParts: ChunkType[];
72
+ /** Mutable state object that persists across chunks */
73
+ state: Record<string, unknown>;
74
+ /** Optional MessageList instance for accessing conversation history */
75
+ messageList?: MessageList;
76
+ }
4
77
  export interface Processor<TId extends string = string> {
5
78
  readonly id: TId;
6
79
  readonly name?: string;
7
80
  /**
8
81
  * Process input messages before they are sent to the LLM
82
+ *
83
+ * @returns Either:
84
+ * - MessageList: The same messageList instance passed in (indicates you've mutated it)
85
+ * - MastraDBMessage[]: Transformed messages array (for simple transformations)
86
+ * - { messages, systemMessages }: Object with both messages and modified system messages
9
87
  */
10
- processInput?(args: {
11
- messages: MastraDBMessage[];
12
- abort: (reason?: string) => never;
13
- tracingContext?: TracingContext;
14
- }): Promise<MastraDBMessage[]> | MastraDBMessage[];
88
+ processInput?(args: ProcessInputArgs): Promise<ProcessInputResult> | ProcessInputResult;
15
89
  /**
16
90
  * Process output stream chunks with built-in state management
17
91
  * This allows processors to accumulate chunks and make decisions based on larger context
18
- * Return null, or undefined to skip emitting the part
92
+ * Return null or undefined to skip emitting the part
19
93
  */
20
- processOutputStream?(args: {
21
- part: ChunkType;
22
- streamParts: ChunkType[];
23
- state: Record<string, any>;
24
- abort: (reason?: string) => never;
25
- tracingContext?: TracingContext;
26
- }): Promise<ChunkType | null | undefined>;
94
+ processOutputStream?(args: ProcessOutputStreamArgs): Promise<ChunkType | null | undefined>;
27
95
  /**
28
96
  * Process the complete output result after streaming/generate is finished
97
+ *
98
+ * @returns Either:
99
+ * - MessageList: The same messageList instance passed in (indicates you've mutated it)
100
+ * - MastraDBMessage[]: Transformed messages array (for simple transformations)
101
+ */
102
+ processOutputResult?(args: ProcessOutputResultArgs): ProcessorMessageResult;
103
+ /**
104
+ * Process input messages at each step of the agentic loop, before they are sent to the LLM.
105
+ * Unlike processInput which runs once at the start, this runs at every step (including tool call continuations).
106
+ *
107
+ * @returns Either:
108
+ * - MessageList: The same messageList instance passed in (indicates you've mutated it)
109
+ * - MastraDBMessage[]: Transformed messages array (for simple transformations)
29
110
  */
30
- processOutputResult?(args: {
31
- messages: MastraDBMessage[];
32
- abort: (reason?: string) => never;
33
- tracingContext?: TracingContext;
34
- }): Promise<MastraDBMessage[]> | MastraDBMessage[];
111
+ processInputStep?(args: ProcessInputStepArgs): ProcessorMessageResult;
35
112
  }
36
113
  type WithRequired<T, K extends keyof T> = T & {
37
114
  [P in K]-?: NonNullable<T[P]>;
38
115
  };
39
- export type InputProcessor = WithRequired<Processor, 'id' | 'processInput'> & Processor;
116
+ export type InputProcessor = (WithRequired<Processor, 'id' | 'processInput'> & Processor) | (WithRequired<Processor, 'id' | 'processInputStep'> & Processor);
40
117
  export type OutputProcessor = (WithRequired<Processor, 'id' | 'processOutputStream'> & Processor) | (WithRequired<Processor, 'id' | 'processOutputResult'> & Processor);
41
118
  export type ProcessorTypes = InputProcessor | OutputProcessor;
42
119
  export * from './processors/index.js';
43
- export { ProcessorState } from './runner.js';
120
+ export { ProcessorState, ProcessorRunner } from './runner.js';
121
+ export * from './memory/index.js';
44
122
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/processors/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,MAAM,WAAW,SAAS,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IACpD,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC;IACjB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,YAAY,CAAC,CAAC,IAAI,EAAE;QAClB,QAAQ,EAAE,eAAe,EAAE,CAAC;QAC5B,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;QAClC,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC;IAEnD;;;;OAIG;IACH,mBAAmB,CAAC,CAAC,IAAI,EAAE;QACzB,IAAI,EAAE,SAAS,CAAC;QAChB,WAAW,EAAE,SAAS,EAAE,CAAC;QACzB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC3B,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;QAClC,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IAE1C;;OAEG;IACH,mBAAmB,CAAC,CAAC,IAAI,EAAE;QACzB,QAAQ,EAAE,eAAe,EAAE,CAAC;QAC5B,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;QAClC,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC;CACpD;AAED,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,GAAG;KAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AAGhF,MAAM,MAAM,cAAc,GAAG,YAAY,CAAC,SAAS,EAAE,IAAI,GAAG,cAAc,CAAC,GAAG,SAAS,CAAC;AACxF,MAAM,MAAM,eAAe,GACvB,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,GAAG,qBAAqB,CAAC,GAAG,SAAS,CAAC,GACnE,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,GAAG,qBAAqB,CAAC,GAAG,SAAS,CAAC,CAAC;AAExE,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG,eAAe,CAAC;AAE9D,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/processors/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export { BatchPartsProcessor, LanguageDetector, ModerationProcessor, PIIDetector, ProcessorState, PromptInjectionDetector, StructuredOutputProcessor, SystemPromptScrubber, TokenLimiterProcessor, UnicodeNormalizer } from '../chunk-XBO6W7LZ.js';
1
+ export { BatchPartsProcessor, LanguageDetector, MessageHistory, ModerationProcessor, PIIDetector, ProcessorRunner, ProcessorState, PromptInjectionDetector, SemanticRecall, StructuredOutputProcessor, SystemPromptScrubber, TokenLimiterProcessor as TokenLimiter, TokenLimiterProcessor, ToolCallFilter, UnicodeNormalizer, WorkingMemory } from '../chunk-POM7FCH5.js';
2
2
  //# sourceMappingURL=index.js.map
3
3
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ export { MessageHistory } from './message-history.js';
2
+ export type { MessageHistoryOptions } from './message-history.js';
3
+ export { WorkingMemory } from './working-memory.js';
4
+ export type { WorkingMemoryTemplate, WorkingMemoryConfig } from './working-memory.js';
5
+ export { SemanticRecall } from './semantic-recall.js';
6
+ export type { SemanticRecallOptions } from './semantic-recall.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/processors/memory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEnF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,43 @@
1
+ import type { Processor } from '..';
2
+ import type { MastraDBMessage, MessageList } from '../../agent/index.js';
3
+ import type { TracingContext } from '../../observability/index.js';
4
+ import type { RequestContext } from '../../request-context/index.js';
5
+ import type { MemoryStorage } from '../../storage/index.js';
6
+ /**
7
+ * Options for the MessageHistory processor
8
+ */
9
+ export interface MessageHistoryOptions {
10
+ storage: MemoryStorage;
11
+ lastMessages?: number;
12
+ }
13
+ /**
14
+ * Hybrid processor that handles both retrieval and persistence of message history.
15
+ * - On input: Fetches historical messages from storage and prepends them
16
+ * - On output: Persists new messages to storage (excluding system messages)
17
+ *
18
+ * This processor retrieves threadId and resourceId from RequestContext at execution time,
19
+ * making it decoupled from memory-specific context.
20
+ */
21
+ export declare class MessageHistory implements Processor {
22
+ readonly id = "message-history";
23
+ readonly name = "MessageHistory";
24
+ private storage;
25
+ private lastMessages?;
26
+ constructor(options: MessageHistoryOptions);
27
+ processInput(args: {
28
+ messages: MastraDBMessage[];
29
+ messageList: MessageList;
30
+ abort: (reason?: string) => never;
31
+ tracingContext?: TracingContext;
32
+ requestContext?: RequestContext;
33
+ }): Promise<MessageList | MastraDBMessage[]>;
34
+ private filterIncompleteToolCalls;
35
+ processOutputResult(args: {
36
+ messages: MastraDBMessage[];
37
+ messageList: MessageList;
38
+ abort: (reason?: string) => never;
39
+ tracingContext?: TracingContext;
40
+ requestContext?: RequestContext;
41
+ }): Promise<MessageList>;
42
+ }
43
+ //# sourceMappingURL=message-history.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-history.d.ts","sourceRoot":"","sources":["../../../src/processors/memory/message-history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEhE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,aAAa,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,qBAAa,cAAe,YAAW,SAAS;IAC9C,QAAQ,CAAC,EAAE,qBAAqB;IAChC,QAAQ,CAAC,IAAI,oBAAoB;IACjC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,YAAY,CAAC,CAAS;gBAElB,OAAO,EAAE,qBAAqB;IAKpC,YAAY,CAAC,IAAI,EAAE;QACvB,QAAQ,EAAE,eAAe,EAAE,CAAC;QAC5B,WAAW,EAAE,WAAW,CAAC;QACzB,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;QAClC,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC,GAAG,OAAO,CAAC,WAAW,GAAG,eAAe,EAAE,CAAC;IAiD5C,OAAO,CAAC,yBAAyB;IA8B3B,mBAAmB,CAAC,IAAI,EAAE;QAC9B,QAAQ,EAAE,eAAe,EAAE,CAAC;QAC5B,WAAW,EAAE,WAAW,CAAC;QACzB,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;QAClC,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC,GAAG,OAAO,CAAC,WAAW,CAAC;CAoCzB"}
@@ -0,0 +1,152 @@
1
+ import type { Processor } from '..';
2
+ import { MessageList } from '../../agent/index.js';
3
+ import type { IMastraLogger } from '../../logger/index.js';
4
+ import type { MastraDBMessage } from '../../memory/index.js';
5
+ import type { TracingContext } from '../../observability/index.js';
6
+ import type { RequestContext } from '../../request-context/index.js';
7
+ import type { MemoryStorage } from '../../storage/index.js';
8
+ import type { MastraEmbeddingModel, MastraVector } from '../../vector/index.js';
9
+ export interface SemanticRecallOptions {
10
+ /**
11
+ * Storage instance for retrieving messages
12
+ */
13
+ storage: MemoryStorage;
14
+ /**
15
+ * Vector store for semantic search
16
+ */
17
+ vector: MastraVector;
18
+ /**
19
+ * Embedder for generating query embeddings
20
+ */
21
+ embedder: MastraEmbeddingModel<string>;
22
+ /**
23
+ * Number of most similar messages to retrieve
24
+ * @default 4
25
+ */
26
+ topK?: number;
27
+ /**
28
+ * Number of context messages to include before/after each match
29
+ * Can be a number (same for before/after) or an object with before/after
30
+ * @default 1
31
+ */
32
+ messageRange?: number | {
33
+ before: number;
34
+ after: number;
35
+ };
36
+ /**
37
+ * Scope of semantic search
38
+ * - 'thread': Search within the current thread only
39
+ * - 'resource': Search across all threads for the resource
40
+ * @default 'resource'
41
+ */
42
+ scope?: 'thread' | 'resource';
43
+ /**
44
+ * Minimum similarity score threshold (0-1)
45
+ * Messages below this threshold will be filtered out
46
+ */
47
+ threshold?: number;
48
+ /**
49
+ * Index name for the vector store
50
+ * If not provided, will be auto-generated based on embedder model
51
+ */
52
+ indexName?: string;
53
+ /**
54
+ * Optional logger instance for structured logging
55
+ */
56
+ logger?: IMastraLogger;
57
+ }
58
+ /**
59
+ * SemanticRecall is both an input and output processor that:
60
+ * - On input: performs semantic search on historical messages and adds relevant context
61
+ * - On output: creates embeddings for messages being saved to enable future semantic search
62
+ *
63
+ * It uses vector embeddings to find messages similar to the user's query,
64
+ * then retrieves those messages along with surrounding context.
65
+ *
66
+ * @example
67
+ * ```typescript
68
+ * const processor = new SemanticRecall({
69
+ * storage: memoryStorage,
70
+ * vector: vectorStore,
71
+ * embedder: openaiEmbedder,
72
+ * topK: 5,
73
+ * messageRange: 2,
74
+ * scope: 'resource'
75
+ * });
76
+ *
77
+ * // Use with agent
78
+ * const agent = new Agent({
79
+ * inputProcessors: [processor],
80
+ * outputProcessors: [processor]
81
+ * });
82
+ * ```
83
+ */
84
+ export declare class SemanticRecall implements Processor {
85
+ readonly id = "semantic-recall";
86
+ readonly name = "SemanticRecall";
87
+ private storage;
88
+ private vector;
89
+ private embedder;
90
+ private topK;
91
+ private messageRange;
92
+ private scope;
93
+ private threshold?;
94
+ private indexName?;
95
+ private logger?;
96
+ private embeddingCache;
97
+ private hasher;
98
+ constructor(options: SemanticRecallOptions);
99
+ processInput(args: {
100
+ messages: MastraDBMessage[];
101
+ messageList: MessageList;
102
+ abort: (reason?: string) => never;
103
+ tracingContext?: TracingContext;
104
+ requestContext?: RequestContext;
105
+ }): Promise<MessageList | MastraDBMessage[]>;
106
+ /**
107
+ * Format cross-thread messages as a system message with timestamps and labels
108
+ * Uses the exact formatting logic from main that was tested with longmemeval benchmark
109
+ */
110
+ private formatCrossThreadMessages;
111
+ /**
112
+ * Extract the user query from messages for semantic search
113
+ */
114
+ private extractUserQuery;
115
+ /**
116
+ * Perform semantic search using vector embeddings
117
+ */
118
+ private performSemanticSearch;
119
+ /**
120
+ * Generate embeddings for message content
121
+ */
122
+ /**
123
+ * Hash content using xxhash for fast cache key generation
124
+ * Includes index name to ensure cache isolation between different embedding models/dimensions
125
+ */
126
+ private hashContent;
127
+ private embedMessageContent;
128
+ /**
129
+ * Get default index name based on embedder model
130
+ */
131
+ private getDefaultIndexName;
132
+ /**
133
+ * Ensure vector index exists with correct dimensions
134
+ */
135
+ private ensureVectorIndex;
136
+ /**
137
+ * Process output messages to create embeddings for messages being saved
138
+ * This allows semantic recall to index new messages for future retrieval
139
+ */
140
+ processOutputResult(args: {
141
+ messages: MastraDBMessage[];
142
+ messageList?: MessageList;
143
+ abort: (reason?: string) => never;
144
+ tracingContext?: TracingContext;
145
+ requestContext?: RequestContext;
146
+ }): Promise<MessageList | MastraDBMessage[]>;
147
+ /**
148
+ * Extract text content from a MastraDBMessage
149
+ */
150
+ private extractTextContent;
151
+ }
152
+ //# sourceMappingURL=semantic-recall.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic-recall.d.ts","sourceRoot":"","sources":["../../../src/processors/memory/semantic-recall.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import type { Processor } from '..';
2
+ import type { MessageList } from '../../agent/message-list/index.js';
3
+ import type { IMastraLogger } from '../../logger/index.js';
4
+ import type { MastraDBMessage, MemoryConfig } from '../../memory/index.js';
5
+ import type { RequestContext } from '../../request-context/index.js';
6
+ import type { MemoryStorage } from '../../storage/index.js';
7
+ export interface WorkingMemoryTemplate {
8
+ format: 'markdown' | 'json';
9
+ content: string;
10
+ }
11
+ export interface WorkingMemoryConfig {
12
+ template?: WorkingMemoryTemplate;
13
+ /**
14
+ * Scope of working memory
15
+ * - 'thread': Working memory is scoped to the current thread
16
+ * - 'resource': Working memory is shared across all threads for the resource
17
+ * @default 'resource'
18
+ */
19
+ scope?: 'thread' | 'resource';
20
+ useVNext?: boolean;
21
+ /**
22
+ * Optional logger instance for structured logging
23
+ */
24
+ logger?: IMastraLogger;
25
+ }
26
+ /**
27
+ * WorkingMemory processor injects working memory data as a system message.
28
+ *
29
+ * This is an INPUT processor that:
30
+ * 1. Retrieves working memory from storage (thread or resource scope)
31
+ * 2. Formats it as a system instruction for the LLM
32
+ * 3. Prepends it to the message list
33
+ *
34
+ * Note: Working memory updates happen via the updateWorkingMemory tool,
35
+ * not through this processor. The tool is provided by the Memory class.
36
+ */
37
+ export declare class WorkingMemory implements Processor {
38
+ private options;
39
+ readonly id = "working-memory";
40
+ name: string;
41
+ defaultWorkingMemoryTemplate: string;
42
+ private logger?;
43
+ constructor(options: {
44
+ storage: MemoryStorage;
45
+ template?: WorkingMemoryTemplate;
46
+ scope?: 'thread' | 'resource';
47
+ useVNext?: boolean;
48
+ templateProvider?: {
49
+ getWorkingMemoryTemplate(args: {
50
+ memoryConfig?: MemoryConfig;
51
+ }): Promise<WorkingMemoryTemplate | null>;
52
+ };
53
+ logger?: IMastraLogger;
54
+ });
55
+ processInput(args: {
56
+ messages: MastraDBMessage[];
57
+ messageList: MessageList;
58
+ abort: (reason?: string) => never;
59
+ requestContext?: RequestContext;
60
+ }): Promise<MessageList | MastraDBMessage[]>;
61
+ private generateEmptyFromSchema;
62
+ private getWorkingMemoryToolInstruction;
63
+ private getWorkingMemoryToolInstructionVNext;
64
+ }
65
+ //# sourceMappingURL=working-memory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"working-memory.d.ts","sourceRoot":"","sources":["../../../src/processors/memory/working-memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IACjC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;;;;;;;;;GAUG;AACH,qBAAa,aAAc,YAAW,SAAS;IAoB3C,OAAO,CAAC,OAAO;IAnBjB,QAAQ,CAAC,EAAE,oBAAoB;IAC/B,IAAI,SAAmB;IAEhB,4BAA4B,SAWnC;IAEA,OAAO,CAAC,MAAM,CAAC,CAAgB;gBAGrB,OAAO,EAAE;QACf,OAAO,EAAE,aAAa,CAAC;QACvB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;QACjC,KAAK,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;QAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,gBAAgB,CAAC,EAAE;YACjB,wBAAwB,CAAC,IAAI,EAAE;gBAAE,YAAY,CAAC,EAAE,YAAY,CAAA;aAAE,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;SACxG,CAAC;QACF,MAAM,CAAC,EAAE,aAAa,CAAC;KACxB;IAKG,YAAY,CAAC,IAAI,EAAE;QACvB,QAAQ,EAAE,eAAe,EAAE,CAAC;QAC5B,WAAW,EAAE,WAAW,CAAC;QACzB,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;QAClC,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC,GAAG,OAAO,CAAC,WAAW,GAAG,eAAe,EAAE,CAAC;IA2D5C,OAAO,CAAC,uBAAuB;IAqB/B,OAAO,CAAC,+BAA+B;IAsDvC,OAAO,CAAC,oCAAoC;CAwC7C"}
@@ -5,6 +5,7 @@ export { PIIDetector, type PIIDetectorOptions, type PIIDetectionResult, type PII
5
5
  export { LanguageDetector, type LanguageDetectorOptions, type LanguageDetectionResult, type LanguageDetection, type TranslationResult, } from './language-detector.js';
6
6
  export { StructuredOutputProcessor, type StructuredOutputOptions } from './structured-output.js';
7
7
  export { BatchPartsProcessor, type BatchPartsOptions, type BatchPartsState } from './batch-parts.js';
8
- export { TokenLimiterProcessor, type TokenLimiterOptions } from './token-limiter.js';
8
+ export { TokenLimiterProcessor, TokenLimiterProcessor as TokenLimiter, type TokenLimiterOptions, } from './token-limiter.js';
9
9
  export { SystemPromptScrubber, type SystemPromptScrubberOptions, type SystemPromptDetectionResult, type SystemPromptDetection, } from './system-prompt-scrubber.js';
10
+ export { ToolCallFilter } from './tool-call-filter.js';
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/processors/processors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EACL,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,GAC9B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,uBAAuB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,6BAA6B,GACnC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,WAAW,EACX,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EAAE,mBAAmB,EAAE,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAClG,OAAO,EAAE,qBAAqB,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,EACL,oBAAoB,EACpB,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,qBAAqB,GAC3B,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/processors/processors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,KAAK,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EACL,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,GAC9B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,uBAAuB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,6BAA6B,GACnC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,WAAW,EACX,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EAAE,mBAAmB,EAAE,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAClG,OAAO,EACL,qBAAqB,EACrB,qBAAqB,IAAI,YAAY,EACrC,KAAK,mBAAmB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,qBAAqB,GAC3B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { MastraDBMessage } from '../../agent/message-list/index.js';
2
+ import type { ProviderOptions } from '../../llm/model/provider-options.js';
2
3
  import type { MastraModelConfig } from '../../llm/model/shared.types.js';
3
4
  import type { TracingContext } from '../../observability/index.js';
4
5
  import type { Processor } from '../index.js';
@@ -79,6 +80,18 @@ export interface LanguageDetectorOptions {
79
80
  * - 'balanced': Balance between speed and quality
80
81
  */
81
82
  translationQuality?: 'speed' | 'quality' | 'balanced';
83
+ /**
84
+ * Provider-specific options passed to the internal detection agent.
85
+ * Use this to control model behavior like reasoning effort for thinking models.
86
+ *
87
+ * @example
88
+ * ```ts
89
+ * providerOptions: {
90
+ * openai: { reasoningEffort: 'low' }
91
+ * }
92
+ * ```
93
+ */
94
+ providerOptions?: ProviderOptions;
82
95
  }
83
96
  /**
84
97
  * LanguageDetector identifies the language of input text and optionally
@@ -98,6 +111,7 @@ export declare class LanguageDetector implements Processor<'language-detector'>
98
111
  private minTextLength;
99
112
  private includeDetectionDetails;
100
113
  private translationQuality;
114
+ private providerOptions?;
101
115
  private static readonly DEFAULT_TARGET_LANGUAGES;
102
116
  private static readonly LANGUAGE_MAP;
103
117
  constructor(options: LanguageDetectorOptions);