@mastra/core 1.6.0 → 1.7.0

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 (453) hide show
  1. package/CHANGELOG.md +236 -0
  2. package/dist/agent/agent.d.ts +6 -0
  3. package/dist/agent/agent.d.ts.map +1 -1
  4. package/dist/agent/index.cjs +8 -8
  5. package/dist/agent/index.js +1 -1
  6. package/dist/{chunk-VJWRJWSC.cjs → chunk-2X66GWF5.cjs} +94 -16
  7. package/dist/chunk-2X66GWF5.cjs.map +1 -0
  8. package/dist/{chunk-YM6245EM.js → chunk-6OXW5E2O.js} +3 -3
  9. package/dist/{chunk-YM6245EM.js.map → chunk-6OXW5E2O.js.map} +1 -1
  10. package/dist/{chunk-XWZAKKFT.cjs → chunk-6QBN6MZY.cjs} +14 -14
  11. package/dist/{chunk-XWZAKKFT.cjs.map → chunk-6QBN6MZY.cjs.map} +1 -1
  12. package/dist/{chunk-AYHSPIT6.cjs → chunk-7UAJ6LMR.cjs} +820 -259
  13. package/dist/chunk-7UAJ6LMR.cjs.map +1 -0
  14. package/dist/{chunk-RZNHRIM7.cjs → chunk-A72NTLFT.cjs} +5 -5
  15. package/dist/{chunk-RZNHRIM7.cjs.map → chunk-A72NTLFT.cjs.map} +1 -1
  16. package/dist/{chunk-EEU5NHHU.js → chunk-DFCRXDVK.js} +3 -3
  17. package/dist/{chunk-EEU5NHHU.js.map → chunk-DFCRXDVK.js.map} +1 -1
  18. package/dist/{chunk-5K45E5VE.js → chunk-GPJGPARM.js} +3 -2
  19. package/dist/chunk-GPJGPARM.js.map +1 -0
  20. package/dist/{chunk-LNKS4TJ6.cjs → chunk-HB6T4554.cjs} +8 -7
  21. package/dist/chunk-HB6T4554.cjs.map +1 -0
  22. package/dist/{chunk-DGS2KGDI.js → chunk-KUXNBWN7.js} +6 -5
  23. package/dist/chunk-KUXNBWN7.js.map +1 -0
  24. package/dist/{chunk-IHDE4CJV.js → chunk-QSHV7GPT.js} +89 -12
  25. package/dist/chunk-QSHV7GPT.js.map +1 -0
  26. package/dist/{chunk-3U3XFMGJ.cjs → chunk-QTAS3HND.cjs} +13 -8
  27. package/dist/chunk-QTAS3HND.cjs.map +1 -0
  28. package/dist/{chunk-RHKNKJNM.js → chunk-QWTB53GS.js} +4 -4
  29. package/dist/{chunk-RHKNKJNM.js.map → chunk-QWTB53GS.js.map} +1 -1
  30. package/dist/{chunk-4WG5K4CK.js → chunk-R4N65TLG.js} +7 -7
  31. package/dist/{chunk-4WG5K4CK.js.map → chunk-R4N65TLG.js.map} +1 -1
  32. package/dist/{chunk-5VQPSWPG.cjs → chunk-RABITNTG.cjs} +48 -48
  33. package/dist/{chunk-5VQPSWPG.cjs.map → chunk-RABITNTG.cjs.map} +1 -1
  34. package/dist/{chunk-TVPANHLE.cjs → chunk-SBOHDNIZ.cjs} +3 -2
  35. package/dist/chunk-SBOHDNIZ.cjs.map +1 -0
  36. package/dist/{chunk-MWGGSA5Q.js → chunk-T6GAM3SQ.js} +10 -5
  37. package/dist/chunk-T6GAM3SQ.js.map +1 -0
  38. package/dist/{chunk-TL2TTA4X.cjs → chunk-YQG7NBPR.cjs} +9 -9
  39. package/dist/{chunk-TL2TTA4X.cjs.map → chunk-YQG7NBPR.cjs.map} +1 -1
  40. package/dist/{chunk-XB3DA67Q.js → chunk-ZSBM2SVU.js} +818 -259
  41. package/dist/chunk-ZSBM2SVU.js.map +1 -0
  42. package/dist/datasets/experiment/scorer.d.ts.map +1 -1
  43. package/dist/datasets/index.cjs +17 -17
  44. package/dist/datasets/index.js +2 -2
  45. package/dist/evals/index.cjs +20 -20
  46. package/dist/evals/index.js +3 -3
  47. package/dist/evals/scoreTraces/index.cjs +7 -6
  48. package/dist/evals/scoreTraces/index.cjs.map +1 -1
  49. package/dist/evals/scoreTraces/index.js +4 -3
  50. package/dist/evals/scoreTraces/index.js.map +1 -1
  51. package/dist/evals/scoreTraces/scoreTracesWorkflow.d.ts.map +1 -1
  52. package/dist/harness/harness.d.ts +21 -1
  53. package/dist/harness/harness.d.ts.map +1 -1
  54. package/dist/harness/index.cjs +422 -5
  55. package/dist/harness/index.cjs.map +1 -1
  56. package/dist/harness/index.d.ts +2 -1
  57. package/dist/harness/index.d.ts.map +1 -1
  58. package/dist/harness/index.js +418 -3
  59. package/dist/harness/index.js.map +1 -1
  60. package/dist/harness/types.d.ts +151 -0
  61. package/dist/harness/types.d.ts.map +1 -1
  62. package/dist/index.cjs +2 -2
  63. package/dist/index.js +1 -1
  64. package/dist/loop/index.cjs +12 -12
  65. package/dist/loop/index.js +1 -1
  66. package/dist/loop/test-utils/tools.d.ts.map +1 -1
  67. package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -1
  68. package/dist/mastra/hooks.d.ts.map +1 -1
  69. package/dist/mastra/index.cjs +2 -2
  70. package/dist/mastra/index.js +1 -1
  71. package/dist/memory/index.cjs +14 -14
  72. package/dist/memory/index.js +1 -1
  73. package/dist/processor-provider/index.cjs +10 -10
  74. package/dist/processor-provider/index.js +1 -1
  75. package/dist/processors/index.cjs +45 -41
  76. package/dist/processors/index.js +1 -1
  77. package/dist/processors/processors/index.d.ts +1 -0
  78. package/dist/processors/processors/index.d.ts.map +1 -1
  79. package/dist/processors/processors/workspace-instructions.d.ts +50 -0
  80. package/dist/processors/processors/workspace-instructions.d.ts.map +1 -0
  81. package/dist/relevance/index.cjs +3 -3
  82. package/dist/relevance/index.js +1 -1
  83. package/dist/storage/constants.cjs +56 -56
  84. package/dist/storage/constants.d.ts.map +1 -1
  85. package/dist/storage/constants.js +1 -1
  86. package/dist/storage/index.cjs +160 -160
  87. package/dist/storage/index.js +2 -2
  88. package/dist/storage/types.d.ts +2 -0
  89. package/dist/storage/types.d.ts.map +1 -1
  90. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts.map +1 -1
  91. package/dist/stream/base/output.d.ts.map +1 -1
  92. package/dist/stream/index.cjs +8 -8
  93. package/dist/stream/index.js +1 -1
  94. package/dist/tool-loop-agent/index.cjs +4 -4
  95. package/dist/tool-loop-agent/index.js +1 -1
  96. package/dist/vector/index.cjs +7 -7
  97. package/dist/vector/index.js +1 -1
  98. package/dist/workflows/evented/index.cjs +10 -10
  99. package/dist/workflows/evented/index.js +1 -1
  100. package/dist/workflows/index.cjs +25 -25
  101. package/dist/workflows/index.js +1 -1
  102. package/dist/workspace/constants/index.d.ts +2 -0
  103. package/dist/workspace/constants/index.d.ts.map +1 -1
  104. package/dist/workspace/errors.d.ts +1 -1
  105. package/dist/workspace/errors.d.ts.map +1 -1
  106. package/dist/workspace/filesystem/composite-filesystem.d.ts +4 -1
  107. package/dist/workspace/filesystem/composite-filesystem.d.ts.map +1 -1
  108. package/dist/workspace/filesystem/file-write-lock.d.ts +35 -0
  109. package/dist/workspace/filesystem/file-write-lock.d.ts.map +1 -0
  110. package/dist/workspace/filesystem/filesystem.d.ts +5 -1
  111. package/dist/workspace/filesystem/filesystem.d.ts.map +1 -1
  112. package/dist/workspace/filesystem/index.d.ts +1 -0
  113. package/dist/workspace/filesystem/index.d.ts.map +1 -1
  114. package/dist/workspace/filesystem/local-filesystem.d.ts +17 -1
  115. package/dist/workspace/filesystem/local-filesystem.d.ts.map +1 -1
  116. package/dist/workspace/index.cjs +72 -64
  117. package/dist/workspace/index.d.ts +3 -2
  118. package/dist/workspace/index.d.ts.map +1 -1
  119. package/dist/workspace/index.js +1 -1
  120. package/dist/workspace/lifecycle.d.ts +1 -9
  121. package/dist/workspace/lifecycle.d.ts.map +1 -1
  122. package/dist/workspace/sandbox/index.d.ts +2 -0
  123. package/dist/workspace/sandbox/index.d.ts.map +1 -1
  124. package/dist/workspace/sandbox/local-process-manager.d.ts +18 -0
  125. package/dist/workspace/sandbox/local-process-manager.d.ts.map +1 -0
  126. package/dist/workspace/sandbox/local-sandbox.d.ts +49 -35
  127. package/dist/workspace/sandbox/local-sandbox.d.ts.map +1 -1
  128. package/dist/workspace/sandbox/mastra-sandbox.d.ts +45 -11
  129. package/dist/workspace/sandbox/mastra-sandbox.d.ts.map +1 -1
  130. package/dist/workspace/sandbox/native-sandbox/bubblewrap.d.ts +2 -3
  131. package/dist/workspace/sandbox/native-sandbox/bubblewrap.d.ts.map +1 -1
  132. package/dist/workspace/sandbox/native-sandbox/seatbelt.d.ts +2 -3
  133. package/dist/workspace/sandbox/native-sandbox/seatbelt.d.ts.map +1 -1
  134. package/dist/workspace/sandbox/native-sandbox/wrapper.d.ts +4 -5
  135. package/dist/workspace/sandbox/native-sandbox/wrapper.d.ts.map +1 -1
  136. package/dist/workspace/sandbox/process-manager/index.d.ts +4 -0
  137. package/dist/workspace/sandbox/process-manager/index.d.ts.map +1 -0
  138. package/dist/workspace/sandbox/process-manager/process-handle.d.ts +107 -0
  139. package/dist/workspace/sandbox/process-manager/process-handle.d.ts.map +1 -0
  140. package/dist/workspace/sandbox/process-manager/process-manager.d.ts +59 -0
  141. package/dist/workspace/sandbox/process-manager/process-manager.d.ts.map +1 -0
  142. package/dist/workspace/sandbox/process-manager/types.d.ts +24 -0
  143. package/dist/workspace/sandbox/process-manager/types.d.ts.map +1 -0
  144. package/dist/workspace/sandbox/sandbox.d.ts +38 -2
  145. package/dist/workspace/sandbox/sandbox.d.ts.map +1 -1
  146. package/dist/workspace/sandbox/types.d.ts +9 -2
  147. package/dist/workspace/sandbox/types.d.ts.map +1 -1
  148. package/dist/workspace/sandbox/utils.d.ts +7 -0
  149. package/dist/workspace/sandbox/utils.d.ts.map +1 -0
  150. package/dist/workspace/tools/execute-command.d.ts +53 -2
  151. package/dist/workspace/tools/execute-command.d.ts.map +1 -1
  152. package/dist/workspace/tools/get-process-output.d.ts +6 -0
  153. package/dist/workspace/tools/get-process-output.d.ts.map +1 -0
  154. package/dist/workspace/tools/index.d.ts +4 -1
  155. package/dist/workspace/tools/index.d.ts.map +1 -1
  156. package/dist/workspace/tools/kill-process.d.ts +4 -0
  157. package/dist/workspace/tools/kill-process.d.ts.map +1 -0
  158. package/dist/workspace/tools/output-helpers.d.ts +21 -0
  159. package/dist/workspace/tools/output-helpers.d.ts.map +1 -0
  160. package/dist/workspace/tools/tools.d.ts.map +1 -1
  161. package/dist/workspace/types.d.ts +31 -0
  162. package/dist/workspace/types.d.ts.map +1 -1
  163. package/dist/workspace/utils.d.ts +11 -0
  164. package/dist/workspace/utils.d.ts.map +1 -0
  165. package/dist/workspace/workspace.d.ts +36 -0
  166. package/dist/workspace/workspace.d.ts.map +1 -1
  167. package/package.json +7 -7
  168. package/dist/chunk-3U3XFMGJ.cjs.map +0 -1
  169. package/dist/chunk-5K45E5VE.js.map +0 -1
  170. package/dist/chunk-AYHSPIT6.cjs.map +0 -1
  171. package/dist/chunk-DGS2KGDI.js.map +0 -1
  172. package/dist/chunk-IHDE4CJV.js.map +0 -1
  173. package/dist/chunk-LNKS4TJ6.cjs.map +0 -1
  174. package/dist/chunk-MWGGSA5Q.js.map +0 -1
  175. package/dist/chunk-TVPANHLE.cjs.map +0 -1
  176. package/dist/chunk-VJWRJWSC.cjs.map +0 -1
  177. package/dist/chunk-XB3DA67Q.js.map +0 -1
  178. package/dist/docs/SKILL.md +0 -301
  179. package/dist/docs/assets/SOURCE_MAP.json +0 -1413
  180. package/dist/docs/references/docs-agents-adding-voice.md +0 -353
  181. package/dist/docs/references/docs-agents-agent-approval.md +0 -377
  182. package/dist/docs/references/docs-agents-agent-memory.md +0 -212
  183. package/dist/docs/references/docs-agents-guardrails.md +0 -382
  184. package/dist/docs/references/docs-agents-network-approval.md +0 -275
  185. package/dist/docs/references/docs-agents-networks.md +0 -290
  186. package/dist/docs/references/docs-agents-overview.md +0 -309
  187. package/dist/docs/references/docs-agents-processors.md +0 -632
  188. package/dist/docs/references/docs-agents-structured-output.md +0 -271
  189. package/dist/docs/references/docs-agents-using-tools.md +0 -214
  190. package/dist/docs/references/docs-evals-custom-scorers.md +0 -519
  191. package/dist/docs/references/docs-evals-overview.md +0 -146
  192. package/dist/docs/references/docs-evals-running-in-ci.md +0 -106
  193. package/dist/docs/references/docs-mcp-overview.md +0 -370
  194. package/dist/docs/references/docs-mcp-publishing-mcp-server.md +0 -95
  195. package/dist/docs/references/docs-memory-memory-processors.md +0 -316
  196. package/dist/docs/references/docs-memory-observational-memory.md +0 -246
  197. package/dist/docs/references/docs-memory-overview.md +0 -45
  198. package/dist/docs/references/docs-memory-semantic-recall.md +0 -272
  199. package/dist/docs/references/docs-memory-storage.md +0 -261
  200. package/dist/docs/references/docs-memory-working-memory.md +0 -400
  201. package/dist/docs/references/docs-observability-datasets-overview.md +0 -188
  202. package/dist/docs/references/docs-observability-datasets-running-experiments.md +0 -266
  203. package/dist/docs/references/docs-observability-logging.md +0 -99
  204. package/dist/docs/references/docs-observability-overview.md +0 -70
  205. package/dist/docs/references/docs-observability-tracing-bridges-otel.md +0 -209
  206. package/dist/docs/references/docs-observability-tracing-exporters-arize.md +0 -274
  207. package/dist/docs/references/docs-observability-tracing-exporters-braintrust.md +0 -111
  208. package/dist/docs/references/docs-observability-tracing-exporters-cloud.md +0 -129
  209. package/dist/docs/references/docs-observability-tracing-exporters-datadog.md +0 -187
  210. package/dist/docs/references/docs-observability-tracing-exporters-default.md +0 -211
  211. package/dist/docs/references/docs-observability-tracing-exporters-laminar.md +0 -100
  212. package/dist/docs/references/docs-observability-tracing-exporters-langfuse.md +0 -217
  213. package/dist/docs/references/docs-observability-tracing-exporters-langsmith.md +0 -202
  214. package/dist/docs/references/docs-observability-tracing-exporters-otel.md +0 -479
  215. package/dist/docs/references/docs-observability-tracing-exporters-posthog.md +0 -148
  216. package/dist/docs/references/docs-observability-tracing-overview.md +0 -1114
  217. package/dist/docs/references/docs-rag-chunking-and-embedding.md +0 -183
  218. package/dist/docs/references/docs-rag-graph-rag.md +0 -215
  219. package/dist/docs/references/docs-rag-overview.md +0 -72
  220. package/dist/docs/references/docs-rag-retrieval.md +0 -521
  221. package/dist/docs/references/docs-rag-vector-databases.md +0 -648
  222. package/dist/docs/references/docs-server-auth-auth0.md +0 -222
  223. package/dist/docs/references/docs-server-auth-clerk.md +0 -132
  224. package/dist/docs/references/docs-server-auth-composite-auth.md +0 -234
  225. package/dist/docs/references/docs-server-auth-custom-auth-provider.md +0 -513
  226. package/dist/docs/references/docs-server-auth-firebase.md +0 -272
  227. package/dist/docs/references/docs-server-auth-jwt.md +0 -110
  228. package/dist/docs/references/docs-server-auth-simple-auth.md +0 -178
  229. package/dist/docs/references/docs-server-auth-supabase.md +0 -117
  230. package/dist/docs/references/docs-server-auth-workos.md +0 -190
  231. package/dist/docs/references/docs-server-custom-adapters.md +0 -374
  232. package/dist/docs/references/docs-server-custom-api-routes.md +0 -267
  233. package/dist/docs/references/docs-server-mastra-client.md +0 -243
  234. package/dist/docs/references/docs-server-mastra-server.md +0 -71
  235. package/dist/docs/references/docs-server-middleware.md +0 -228
  236. package/dist/docs/references/docs-server-request-context.md +0 -478
  237. package/dist/docs/references/docs-streaming-events.md +0 -247
  238. package/dist/docs/references/docs-streaming-tool-streaming.md +0 -178
  239. package/dist/docs/references/docs-streaming-workflow-streaming.md +0 -109
  240. package/dist/docs/references/docs-voice-overview.md +0 -979
  241. package/dist/docs/references/docs-voice-speech-to-speech.md +0 -103
  242. package/dist/docs/references/docs-voice-speech-to-text.md +0 -80
  243. package/dist/docs/references/docs-voice-text-to-speech.md +0 -84
  244. package/dist/docs/references/docs-workflows-agents-and-tools.md +0 -170
  245. package/dist/docs/references/docs-workflows-control-flow.md +0 -823
  246. package/dist/docs/references/docs-workflows-error-handling.md +0 -360
  247. package/dist/docs/references/docs-workflows-human-in-the-loop.md +0 -213
  248. package/dist/docs/references/docs-workflows-overview.md +0 -372
  249. package/dist/docs/references/docs-workflows-snapshots.md +0 -238
  250. package/dist/docs/references/docs-workflows-suspend-and-resume.md +0 -205
  251. package/dist/docs/references/docs-workflows-time-travel.md +0 -309
  252. package/dist/docs/references/docs-workflows-workflow-state.md +0 -181
  253. package/dist/docs/references/docs-workspace-filesystem.md +0 -162
  254. package/dist/docs/references/docs-workspace-overview.md +0 -239
  255. package/dist/docs/references/docs-workspace-sandbox.md +0 -63
  256. package/dist/docs/references/docs-workspace-search.md +0 -219
  257. package/dist/docs/references/docs-workspace-skills.md +0 -126
  258. package/dist/docs/references/guides-agent-frameworks-ai-sdk.md +0 -140
  259. package/dist/docs/references/reference-agents-agent.md +0 -142
  260. package/dist/docs/references/reference-agents-generate.md +0 -174
  261. package/dist/docs/references/reference-agents-generateLegacy.md +0 -176
  262. package/dist/docs/references/reference-agents-getDefaultGenerateOptions.md +0 -36
  263. package/dist/docs/references/reference-agents-getDefaultOptions.md +0 -34
  264. package/dist/docs/references/reference-agents-getDefaultStreamOptions.md +0 -36
  265. package/dist/docs/references/reference-agents-getDescription.md +0 -21
  266. package/dist/docs/references/reference-agents-getInstructions.md +0 -34
  267. package/dist/docs/references/reference-agents-getLLM.md +0 -37
  268. package/dist/docs/references/reference-agents-getMemory.md +0 -34
  269. package/dist/docs/references/reference-agents-getModel.md +0 -34
  270. package/dist/docs/references/reference-agents-getTools.md +0 -29
  271. package/dist/docs/references/reference-agents-getVoice.md +0 -34
  272. package/dist/docs/references/reference-agents-listAgents.md +0 -35
  273. package/dist/docs/references/reference-agents-listScorers.md +0 -34
  274. package/dist/docs/references/reference-agents-listTools.md +0 -34
  275. package/dist/docs/references/reference-agents-listWorkflows.md +0 -34
  276. package/dist/docs/references/reference-agents-network.md +0 -134
  277. package/dist/docs/references/reference-ai-sdk-chat-route.md +0 -82
  278. package/dist/docs/references/reference-ai-sdk-network-route.md +0 -74
  279. package/dist/docs/references/reference-ai-sdk-to-ai-sdk-stream.md +0 -232
  280. package/dist/docs/references/reference-ai-sdk-with-mastra.md +0 -59
  281. package/dist/docs/references/reference-ai-sdk-workflow-route.md +0 -79
  282. package/dist/docs/references/reference-auth-auth0.md +0 -73
  283. package/dist/docs/references/reference-auth-clerk.md +0 -36
  284. package/dist/docs/references/reference-auth-firebase.md +0 -80
  285. package/dist/docs/references/reference-auth-jwt.md +0 -26
  286. package/dist/docs/references/reference-auth-supabase.md +0 -33
  287. package/dist/docs/references/reference-auth-workos.md +0 -84
  288. package/dist/docs/references/reference-client-js-agents.md +0 -438
  289. package/dist/docs/references/reference-configuration.md +0 -749
  290. package/dist/docs/references/reference-core-addGateway.md +0 -42
  291. package/dist/docs/references/reference-core-getAgent.md +0 -21
  292. package/dist/docs/references/reference-core-getAgentById.md +0 -21
  293. package/dist/docs/references/reference-core-getDeployer.md +0 -22
  294. package/dist/docs/references/reference-core-getGateway.md +0 -38
  295. package/dist/docs/references/reference-core-getGatewayById.md +0 -41
  296. package/dist/docs/references/reference-core-getLogger.md +0 -22
  297. package/dist/docs/references/reference-core-getMCPServer.md +0 -45
  298. package/dist/docs/references/reference-core-getMCPServerById.md +0 -53
  299. package/dist/docs/references/reference-core-getMemory.md +0 -50
  300. package/dist/docs/references/reference-core-getScorer.md +0 -54
  301. package/dist/docs/references/reference-core-getScorerById.md +0 -54
  302. package/dist/docs/references/reference-core-getServer.md +0 -22
  303. package/dist/docs/references/reference-core-getStorage.md +0 -22
  304. package/dist/docs/references/reference-core-getStoredAgentById.md +0 -89
  305. package/dist/docs/references/reference-core-getTelemetry.md +0 -22
  306. package/dist/docs/references/reference-core-getVector.md +0 -22
  307. package/dist/docs/references/reference-core-getWorkflow.md +0 -40
  308. package/dist/docs/references/reference-core-listAgents.md +0 -21
  309. package/dist/docs/references/reference-core-listGateways.md +0 -40
  310. package/dist/docs/references/reference-core-listLogs.md +0 -38
  311. package/dist/docs/references/reference-core-listLogsByRunId.md +0 -36
  312. package/dist/docs/references/reference-core-listMCPServers.md +0 -51
  313. package/dist/docs/references/reference-core-listMemory.md +0 -56
  314. package/dist/docs/references/reference-core-listScorers.md +0 -29
  315. package/dist/docs/references/reference-core-listStoredAgents.md +0 -93
  316. package/dist/docs/references/reference-core-listVectors.md +0 -22
  317. package/dist/docs/references/reference-core-listWorkflows.md +0 -21
  318. package/dist/docs/references/reference-core-mastra-class.md +0 -66
  319. package/dist/docs/references/reference-core-mastra-model-gateway.md +0 -153
  320. package/dist/docs/references/reference-core-setLogger.md +0 -26
  321. package/dist/docs/references/reference-core-setStorage.md +0 -27
  322. package/dist/docs/references/reference-datasets-addItem.md +0 -35
  323. package/dist/docs/references/reference-datasets-addItems.md +0 -33
  324. package/dist/docs/references/reference-datasets-compareExperiments.md +0 -48
  325. package/dist/docs/references/reference-datasets-create.md +0 -49
  326. package/dist/docs/references/reference-datasets-dataset.md +0 -78
  327. package/dist/docs/references/reference-datasets-datasets-manager.md +0 -84
  328. package/dist/docs/references/reference-datasets-delete.md +0 -23
  329. package/dist/docs/references/reference-datasets-deleteExperiment.md +0 -25
  330. package/dist/docs/references/reference-datasets-deleteItem.md +0 -25
  331. package/dist/docs/references/reference-datasets-deleteItems.md +0 -27
  332. package/dist/docs/references/reference-datasets-get.md +0 -29
  333. package/dist/docs/references/reference-datasets-getDetails.md +0 -45
  334. package/dist/docs/references/reference-datasets-getExperiment.md +0 -28
  335. package/dist/docs/references/reference-datasets-getItem.md +0 -31
  336. package/dist/docs/references/reference-datasets-getItemHistory.md +0 -29
  337. package/dist/docs/references/reference-datasets-list.md +0 -29
  338. package/dist/docs/references/reference-datasets-listExperimentResults.md +0 -37
  339. package/dist/docs/references/reference-datasets-listExperiments.md +0 -31
  340. package/dist/docs/references/reference-datasets-listItems.md +0 -44
  341. package/dist/docs/references/reference-datasets-listVersions.md +0 -31
  342. package/dist/docs/references/reference-datasets-startExperiment.md +0 -60
  343. package/dist/docs/references/reference-datasets-startExperimentAsync.md +0 -41
  344. package/dist/docs/references/reference-datasets-update.md +0 -46
  345. package/dist/docs/references/reference-datasets-updateItem.md +0 -36
  346. package/dist/docs/references/reference-evals-answer-relevancy.md +0 -105
  347. package/dist/docs/references/reference-evals-answer-similarity.md +0 -99
  348. package/dist/docs/references/reference-evals-bias.md +0 -120
  349. package/dist/docs/references/reference-evals-completeness.md +0 -137
  350. package/dist/docs/references/reference-evals-content-similarity.md +0 -101
  351. package/dist/docs/references/reference-evals-context-precision.md +0 -196
  352. package/dist/docs/references/reference-evals-create-scorer.md +0 -270
  353. package/dist/docs/references/reference-evals-faithfulness.md +0 -114
  354. package/dist/docs/references/reference-evals-hallucination.md +0 -220
  355. package/dist/docs/references/reference-evals-keyword-coverage.md +0 -128
  356. package/dist/docs/references/reference-evals-mastra-scorer.md +0 -123
  357. package/dist/docs/references/reference-evals-run-evals.md +0 -138
  358. package/dist/docs/references/reference-evals-scorer-utils.md +0 -330
  359. package/dist/docs/references/reference-evals-textual-difference.md +0 -113
  360. package/dist/docs/references/reference-evals-tone-consistency.md +0 -119
  361. package/dist/docs/references/reference-evals-toxicity.md +0 -123
  362. package/dist/docs/references/reference-harness-harness-class.md +0 -645
  363. package/dist/docs/references/reference-logging-pino-logger.md +0 -117
  364. package/dist/docs/references/reference-memory-deleteMessages.md +0 -40
  365. package/dist/docs/references/reference-memory-memory-class.md +0 -147
  366. package/dist/docs/references/reference-memory-observational-memory.md +0 -565
  367. package/dist/docs/references/reference-observability-tracing-bridges-otel.md +0 -131
  368. package/dist/docs/references/reference-observability-tracing-configuration.md +0 -178
  369. package/dist/docs/references/reference-observability-tracing-exporters-console-exporter.md +0 -138
  370. package/dist/docs/references/reference-observability-tracing-exporters-datadog.md +0 -116
  371. package/dist/docs/references/reference-observability-tracing-instances.md +0 -109
  372. package/dist/docs/references/reference-observability-tracing-interfaces.md +0 -749
  373. package/dist/docs/references/reference-observability-tracing-processors-sensitive-data-filter.md +0 -144
  374. package/dist/docs/references/reference-observability-tracing-spans.md +0 -224
  375. package/dist/docs/references/reference-processors-batch-parts-processor.md +0 -61
  376. package/dist/docs/references/reference-processors-language-detector.md +0 -81
  377. package/dist/docs/references/reference-processors-message-history-processor.md +0 -85
  378. package/dist/docs/references/reference-processors-moderation-processor.md +0 -104
  379. package/dist/docs/references/reference-processors-pii-detector.md +0 -107
  380. package/dist/docs/references/reference-processors-processor-interface.md +0 -525
  381. package/dist/docs/references/reference-processors-prompt-injection-detector.md +0 -71
  382. package/dist/docs/references/reference-processors-semantic-recall-processor.md +0 -123
  383. package/dist/docs/references/reference-processors-system-prompt-scrubber.md +0 -80
  384. package/dist/docs/references/reference-processors-token-limiter-processor.md +0 -113
  385. package/dist/docs/references/reference-processors-tool-call-filter.md +0 -85
  386. package/dist/docs/references/reference-processors-tool-search-processor.md +0 -113
  387. package/dist/docs/references/reference-processors-unicode-normalizer.md +0 -62
  388. package/dist/docs/references/reference-processors-working-memory-processor.md +0 -154
  389. package/dist/docs/references/reference-rag-database-config.md +0 -264
  390. package/dist/docs/references/reference-rag-embeddings.md +0 -92
  391. package/dist/docs/references/reference-server-mastra-server.md +0 -298
  392. package/dist/docs/references/reference-server-register-api-route.md +0 -249
  393. package/dist/docs/references/reference-storage-cloudflare-d1.md +0 -218
  394. package/dist/docs/references/reference-storage-composite.md +0 -235
  395. package/dist/docs/references/reference-storage-lance.md +0 -131
  396. package/dist/docs/references/reference-storage-libsql.md +0 -135
  397. package/dist/docs/references/reference-storage-mongodb.md +0 -262
  398. package/dist/docs/references/reference-storage-mssql.md +0 -155
  399. package/dist/docs/references/reference-storage-overview.md +0 -121
  400. package/dist/docs/references/reference-storage-postgresql.md +0 -529
  401. package/dist/docs/references/reference-storage-upstash.md +0 -160
  402. package/dist/docs/references/reference-streaming-ChunkType.md +0 -292
  403. package/dist/docs/references/reference-streaming-agents-MastraModelOutput.md +0 -182
  404. package/dist/docs/references/reference-streaming-agents-streamLegacy.md +0 -142
  405. package/dist/docs/references/reference-streaming-workflows-observeStream.md +0 -42
  406. package/dist/docs/references/reference-streaming-workflows-resumeStream.md +0 -61
  407. package/dist/docs/references/reference-streaming-workflows-stream.md +0 -88
  408. package/dist/docs/references/reference-streaming-workflows-timeTravelStream.md +0 -142
  409. package/dist/docs/references/reference-templates-overview.md +0 -194
  410. package/dist/docs/references/reference-tools-create-tool.md +0 -237
  411. package/dist/docs/references/reference-tools-graph-rag-tool.md +0 -185
  412. package/dist/docs/references/reference-tools-mcp-client.md +0 -962
  413. package/dist/docs/references/reference-tools-mcp-server.md +0 -1275
  414. package/dist/docs/references/reference-tools-vector-query-tool.md +0 -459
  415. package/dist/docs/references/reference-vectors-libsql.md +0 -305
  416. package/dist/docs/references/reference-vectors-mongodb.md +0 -295
  417. package/dist/docs/references/reference-vectors-pg.md +0 -408
  418. package/dist/docs/references/reference-vectors-upstash.md +0 -294
  419. package/dist/docs/references/reference-voice-composite-voice.md +0 -121
  420. package/dist/docs/references/reference-voice-mastra-voice.md +0 -313
  421. package/dist/docs/references/reference-voice-voice.addInstructions.md +0 -56
  422. package/dist/docs/references/reference-voice-voice.addTools.md +0 -67
  423. package/dist/docs/references/reference-voice-voice.connect.md +0 -94
  424. package/dist/docs/references/reference-voice-voice.events.md +0 -37
  425. package/dist/docs/references/reference-voice-voice.listen.md +0 -164
  426. package/dist/docs/references/reference-voice-voice.on.md +0 -111
  427. package/dist/docs/references/reference-voice-voice.speak.md +0 -157
  428. package/dist/docs/references/reference-workflows-run-methods-cancel.md +0 -86
  429. package/dist/docs/references/reference-workflows-run-methods-restart.md +0 -33
  430. package/dist/docs/references/reference-workflows-run-methods-resume.md +0 -59
  431. package/dist/docs/references/reference-workflows-run-methods-start.md +0 -58
  432. package/dist/docs/references/reference-workflows-run-methods-startAsync.md +0 -67
  433. package/dist/docs/references/reference-workflows-run-methods-timeTravel.md +0 -142
  434. package/dist/docs/references/reference-workflows-run.md +0 -59
  435. package/dist/docs/references/reference-workflows-step.md +0 -119
  436. package/dist/docs/references/reference-workflows-workflow-methods-branch.md +0 -25
  437. package/dist/docs/references/reference-workflows-workflow-methods-commit.md +0 -17
  438. package/dist/docs/references/reference-workflows-workflow-methods-create-run.md +0 -63
  439. package/dist/docs/references/reference-workflows-workflow-methods-dountil.md +0 -25
  440. package/dist/docs/references/reference-workflows-workflow-methods-dowhile.md +0 -25
  441. package/dist/docs/references/reference-workflows-workflow-methods-foreach.md +0 -118
  442. package/dist/docs/references/reference-workflows-workflow-methods-map.md +0 -93
  443. package/dist/docs/references/reference-workflows-workflow-methods-parallel.md +0 -21
  444. package/dist/docs/references/reference-workflows-workflow-methods-sleep.md +0 -35
  445. package/dist/docs/references/reference-workflows-workflow-methods-sleepUntil.md +0 -35
  446. package/dist/docs/references/reference-workflows-workflow-methods-then.md +0 -21
  447. package/dist/docs/references/reference-workflows-workflow.md +0 -157
  448. package/dist/docs/references/reference-workspace-filesystem.md +0 -202
  449. package/dist/docs/references/reference-workspace-local-filesystem.md +0 -327
  450. package/dist/docs/references/reference-workspace-local-sandbox.md +0 -285
  451. package/dist/docs/references/reference-workspace-sandbox.md +0 -81
  452. package/dist/docs/references/reference-workspace-workspace-class.md +0 -226
  453. package/dist/docs/references/reference.md +0 -276
@@ -1,144 +0,0 @@
1
- # SensitiveDataFilter
2
-
3
- A SpanOutputProcessor that redacts sensitive information from span fields.
4
-
5
- ## Constructor
6
-
7
- ```typescript
8
- new SensitiveDataFilter(options?: SensitiveDataFilterOptions)
9
- ```
10
-
11
- ## SensitiveDataFilterOptions
12
-
13
- ```typescript
14
- interface SensitiveDataFilterOptions {
15
- /**
16
- * List of sensitive field names to redact.
17
- * Matching is case-insensitive and normalizes separators
18
- * (api-key, api_key, Api Key → apikey).
19
- * Defaults include: password, token, secret, key, apikey, auth,
20
- * authorization, bearer, bearertoken, jwt, credential,
21
- * clientsecret, privatekey, refresh, ssn.
22
- */
23
- sensitiveFields?: string[];
24
-
25
- /**
26
- * The token used for full redaction.
27
- * Default: "[REDACTED]"
28
- */
29
- redactionToken?: string;
30
-
31
- /**
32
- * Style of redaction to use:
33
- * - "full": always replace with redactionToken
34
- * - "partial": show 3 characters from the start and end, redact the middle
35
- * Default: "full"
36
- */
37
- redactionStyle?: RedactionStyle;
38
- }
39
- ```
40
-
41
- ## RedactionStyle
42
-
43
- ```typescript
44
- type RedactionStyle = "full" | "partial";
45
- ```
46
-
47
- ## Methods
48
-
49
- ### process
50
-
51
- ```typescript
52
- process(span: AnySpan): AnySpan
53
- ```
54
-
55
- Process a span by filtering sensitive data across its key fields: attributes, metadata, input, output, and errorInfo.
56
-
57
- **Returns:** A new span with sensitive values redacted.
58
-
59
- ### shutdown
60
-
61
- ```typescript
62
- async shutdown(): Promise<void>
63
- ```
64
-
65
- No cleanup needed for this processor.
66
-
67
- ## Properties
68
-
69
- ```typescript
70
- readonly name = 'sensitive-data-filter';
71
- ```
72
-
73
- ## Default Sensitive Fields
74
-
75
- When no custom fields are provided:
76
-
77
- ```typescript
78
- [
79
- "password",
80
- "token",
81
- "secret",
82
- "key",
83
- "apikey",
84
- "auth",
85
- "authorization",
86
- "bearer",
87
- "bearertoken",
88
- "jwt",
89
- "credential",
90
- "clientsecret",
91
- "privatekey",
92
- "refresh",
93
- "ssn",
94
- ];
95
- ```
96
-
97
- ## Processing Behavior
98
-
99
- ### Field Matching
100
-
101
- - **Case-insensitive**: `APIKey`, `apikey`, `ApiKey` all match
102
-
103
- - **Separator-agnostic**: `api-key`, `api_key`, `apiKey` are treated identically
104
-
105
- - **Exact matching**: After normalization, fields must match exactly
106
-
107
- - `token` matches `token`, `Token`, `TOKEN`
108
- - `token` does NOT match `promptTokens` or `tokenCount`
109
-
110
- ### Redaction Styles
111
-
112
- #### Full Redaction (default)
113
-
114
- All matched values replaced with redactionToken.
115
-
116
- #### Partial Redaction
117
-
118
- - Shows first 3 and last 3 characters
119
- - Values ≤ 6 characters are fully redacted
120
- - Non-string values are converted to strings before partial redaction
121
-
122
- ### Error Handling
123
-
124
- If filtering a field fails, the field is replaced with:
125
-
126
- ```typescript
127
- {
128
- error: {
129
- processor: "sensitive-data-filter";
130
- }
131
- }
132
- ```
133
-
134
- ### Processed Fields
135
-
136
- The filter recursively processes:
137
-
138
- - `span.attributes` - Span metadata and properties
139
- - `span.metadata` - Custom metadata
140
- - `span.input` - Input data
141
- - `span.output` - Output data
142
- - `span.errorInfo` - Error information
143
-
144
- Handles nested objects, arrays, and circular references safely.
@@ -1,224 +0,0 @@
1
- # Spans
2
-
3
- ## BaseSpan
4
-
5
- Base interface for all span types.
6
-
7
- ```typescript
8
- interface BaseSpan<TType extends SpanType> {
9
- /** Unique span identifier */
10
- id: string;
11
-
12
- /** OpenTelemetry-compatible trace ID (32 hex chars) */
13
- traceId: string;
14
-
15
- /** Name of the span */
16
- name: string;
17
-
18
- /** Type of the span */
19
- type: TType;
20
-
21
- /** When span started */
22
- startTime: Date;
23
-
24
- /** When span ended */
25
- endTime?: Date;
26
-
27
- /** Type-specific attributes */
28
- attributes?: SpanTypeMap[TType];
29
-
30
- /** User-defined metadata */
31
- metadata?: Record<string, any>;
32
-
33
- /** Input passed at the start of the span */
34
- input?: any;
35
-
36
- /** Output generated at the end of the span */
37
- output?: any;
38
-
39
- /** Error information if span failed */
40
- errorInfo?: {
41
- message: string;
42
- id?: string;
43
- domain?: string;
44
- category?: string;
45
- details?: Record<string, any>;
46
- };
47
-
48
- /** Is an event span? (occurs at startTime, has no endTime) */
49
- isEvent: boolean;
50
- }
51
- ```
52
-
53
- ## Span
54
-
55
- Span interface, used internally for tracing. Extends BaseSpan with lifecycle methods and properties.
56
-
57
- ```typescript
58
- interface Span<TType extends SpanType> extends BaseSpan<TType> {
59
- /** Is an internal span? (spans internal to the operation of mastra) */
60
- isInternal: boolean;
61
-
62
- /** Parent span reference (undefined for root spans) */
63
- parent?: AnySpan;
64
-
65
- /** Pointer to the ObservabilityInstance instance */
66
- observabilityInstance: ObservabilityInstance;
67
- }
68
- ```
69
-
70
- ### Properties
71
-
72
- ```typescript
73
- /** Returns TRUE if the span is the root span of a trace */
74
- get isRootSpan(): boolean
75
-
76
- /** Returns TRUE if the span is a valid span (not a NO-OP Span) */
77
- get isValid(): boolean
78
-
79
- /** Get the closest parent spanId that isn't an internal span */
80
- getParentSpanId(includeInternalSpans?: boolean): string | undefined
81
-
82
- /** Returns a lightweight span ready for export */
83
- exportSpan(includeInternalSpans?: boolean): ExportedSpan<TType> | undefined
84
- ```
85
-
86
- ### Methods
87
-
88
- #### end
89
-
90
- ```typescript
91
- end(options?: EndSpanOptions<TType>): void
92
- ```
93
-
94
- Ends the span and triggers export to configured exporters. Sets the `endTime` and optionally updates `output`, `metadata`, and `attributes`.
95
-
96
- #### error
97
-
98
- ```typescript
99
- error(options: ErrorSpanOptions<TType>): void
100
- ```
101
-
102
- Records an error on the span. Sets the `errorInfo` field and can optionally end the span.
103
-
104
- #### update
105
-
106
- ```typescript
107
- update(options: UpdateSpanOptions<TType>): void
108
- ```
109
-
110
- Updates span data while it's still active. Can modify `input`, `output`, `metadata`, and `attributes`.
111
-
112
- #### createChildSpan
113
-
114
- ```typescript
115
- createChildSpan<TChildType extends SpanType>(
116
- options: ChildSpanOptions<TChildType>
117
- ): Span<TChildType>
118
- ```
119
-
120
- Creates a child span under this span. Child spans track sub-operations and inherit the trace context.
121
-
122
- #### createEventSpan
123
-
124
- ```typescript
125
- createEventSpan<TChildType extends SpanType>(
126
- options: ChildEventOptions<TChildType>
127
- ): Span<TChildType>
128
- ```
129
-
130
- Creates an event span under this span. Event spans represent point-in-time occurrences with no duration.
131
-
132
- ## ExportedSpan
133
-
134
- Exported Span interface, used for tracing exporters. A lightweight version of Span without methods or circular references.
135
-
136
- ```typescript
137
- interface ExportedSpan<TType extends SpanType> extends BaseSpan<TType> {
138
- /** Parent span id reference (undefined for root spans) */
139
- parentSpanId?: string;
140
-
141
- /** TRUE if the span is the root span of a trace */
142
- isRootSpan: boolean;
143
- }
144
- ```
145
-
146
- ## Span Lifecycle Events
147
-
148
- Events emitted during the span lifecycle.
149
-
150
- ### TracingEventType
151
-
152
- ```typescript
153
- enum TracingEventType {
154
- /** Emitted when a span is created and started */
155
- SPAN_STARTED = "span_started",
156
-
157
- /** Emitted when a span is updated via update() */
158
- SPAN_UPDATED = "span_updated",
159
-
160
- /** Emitted when a span is ended via end() or error() */
161
- SPAN_ENDED = "span_ended",
162
- }
163
- ```
164
-
165
- ### TracingEvent
166
-
167
- ```typescript
168
- type TracingEvent =
169
- | { type: "span_started"; exportedSpan: AnyExportedSpan }
170
- | { type: "span_updated"; exportedSpan: AnyExportedSpan }
171
- | { type: "span_ended"; exportedSpan: AnyExportedSpan };
172
- ```
173
-
174
- Exporters receive these events to process and send trace data to observability platforms.
175
-
176
- ## Union Types
177
-
178
- ### AnySpan
179
-
180
- ```typescript
181
- type AnySpan = Span<keyof SpanTypeMap>;
182
- ```
183
-
184
- Union type for cases that need to handle any span type.
185
-
186
- ### AnyExportedSpan
187
-
188
- ```typescript
189
- type AnyExportedSpan = ExportedSpan<keyof SpanTypeMap>;
190
- ```
191
-
192
- Union type for cases that need to handle any exported span type.
193
-
194
- ## NO-OP Spans
195
-
196
- When tracing is disabled (sampling returns false), NO-OP spans are returned:
197
-
198
- ### NoOpSpan
199
-
200
- ```typescript
201
- class NoOpSpan<TType extends SpanType> extends BaseSpan<TType>
202
- ```
203
-
204
- A span that performs no operations. All methods are no-ops:
205
-
206
- - `id` returns `'no-op'`
207
- - `traceId` returns `'no-op-trace'`
208
- - `isValid` returns `false`
209
- - `end()`, `error()`, `update()` do nothing
210
- - `createChildSpan()` returns another NO-OP span
211
-
212
- ## See Also
213
-
214
- ### Documentation
215
-
216
- - [Tracing Overview](https://mastra.ai/docs/observability/tracing/overview) - Concepts and usage
217
- - [Creating Child Spans](https://mastra.ai/docs/observability/tracing/overview) - Practical examples
218
- - [Retrieving Trace IDs](https://mastra.ai/docs/observability/tracing/overview) - Using trace IDs
219
-
220
- ### Reference
221
-
222
- - [Tracing Classes](https://mastra.ai/reference/observability/tracing/instances) - Core tracing classes
223
- - [Interfaces](https://mastra.ai/reference/observability/tracing/interfaces) - Complete type reference
224
- - [Configuration](https://mastra.ai/reference/observability/tracing/configuration) - Configuration options
@@ -1,61 +0,0 @@
1
- # BatchPartsProcessor
2
-
3
- The `BatchPartsProcessor` is an **output processor** that batches multiple stream parts together to reduce the frequency of emissions during streaming. This processor is useful for reducing network overhead, improving user experience by consolidating small text chunks, and optimizing streaming performance by controlling when parts are emitted to the client.
4
-
5
- ## Usage example
6
-
7
- ```typescript
8
- import { BatchPartsProcessor } from "@mastra/core/processors";
9
-
10
- const processor = new BatchPartsProcessor({
11
- batchSize: 5,
12
- maxWaitTime: 100,
13
- emitOnNonText: true
14
- });
15
- ```
16
-
17
- ## Constructor parameters
18
-
19
- **options?:** (`Options`): Configuration options for batching stream parts
20
-
21
- ### Options
22
-
23
- **batchSize?:** (`number`): Number of parts to batch together before emitting
24
-
25
- **maxWaitTime?:** (`number`): Maximum time to wait before emitting a batch (in milliseconds). If set, will emit the current batch even if it hasn't reached batchSize
26
-
27
- **emitOnNonText?:** (`boolean`): Whether to emit immediately when a non-text part is encountered
28
-
29
- ## Returns
30
-
31
- **id:** (`string`): Processor identifier set to 'batch-parts'
32
-
33
- **name?:** (`string`): Optional processor display name
34
-
35
- **processOutputStream:** (`(args: { part: ChunkType; streamParts: ChunkType[]; state: Record<string, any>; abort: (reason?: string) => never }) => Promise<ChunkType | null>`): Processes streaming output parts to batch them together
36
-
37
- **flush:** (`(state?: BatchPartsState) => ChunkType | null`): Force flush any remaining batched parts when the stream ends
38
-
39
- ## Extended usage example
40
-
41
- ```typescript
42
- import { Agent } from "@mastra/core/agent";
43
- import { BatchPartsProcessor } from "@mastra/core/processors";
44
-
45
- export const agent = new Agent({
46
- name: "batched-agent",
47
- instructions: "You are a helpful assistant",
48
- model: "openai/gpt-5.1",
49
- outputProcessors: [
50
- new BatchPartsProcessor({
51
- batchSize: 5,
52
- maxWaitTime: 100,
53
- emitOnNonText: true
54
- })
55
- ]
56
- });
57
- ```
58
-
59
- ## Related
60
-
61
- - [Guardrails](https://mastra.ai/docs/agents/guardrails)
@@ -1,81 +0,0 @@
1
- # LanguageDetector
2
-
3
- The `LanguageDetector` is an **input processor** that identifies the language of input text and optionally translates it to a target language for consistent processing. This processor helps maintain language consistency by detecting the language of incoming messages and providing flexible strategies for handling multilingual content, including automatic translation to ensure all content is processed in the target language.
4
-
5
- ## Usage example
6
-
7
- ```typescript
8
- import { LanguageDetector } from "@mastra/core/processors";
9
-
10
- const processor = new LanguageDetector({
11
- model: "openrouter/openai/gpt-oss-safeguard-20b",
12
- targetLanguages: ["English", "en"],
13
- threshold: 0.8,
14
- strategy: "translate"
15
- });
16
- ```
17
-
18
- ## Constructor parameters
19
-
20
- **options:** (`Options`): Configuration options for language detection and translation
21
-
22
- ### Options
23
-
24
- **model:** (`MastraModelConfig`): Model configuration for the detection/translation agent
25
-
26
- **targetLanguages?:** (`string[]`): Target language(s) for the project. If content is detected in a different language, it may be translated. Can be language name ('English') or ISO code ('en')
27
-
28
- **threshold?:** (`number`): Confidence threshold for language detection (0-1). Only process when detection confidence exceeds this threshold
29
-
30
- **strategy?:** (`'detect' | 'translate' | 'block' | 'warn'`): Strategy when non-target language is detected: 'detect' only detects language, 'translate' automatically translates to target language, 'block' rejects content not in target language, 'warn' logs warning but allows through
31
-
32
- **preserveOriginal?:** (`boolean`): Whether to preserve original content in message metadata. Useful for audit trails and debugging
33
-
34
- **instructions?:** (`string`): Custom detection instructions for the agent. If not provided, uses default instructions
35
-
36
- **minTextLength?:** (`number`): Minimum text length to perform detection. Short text is often unreliable for language detection
37
-
38
- **includeDetectionDetails?:** (`boolean`): Whether to include detailed detection info in logs
39
-
40
- **translationQuality?:** (`'speed' | 'quality' | 'balanced'`): Translation quality preference: 'speed' prioritizes fast translation, 'quality' prioritizes accuracy, 'balanced' balances between speed and quality
41
-
42
- **providerOptions?:** (`ProviderOptions`): Provider-specific options passed to the internal detection agent. Use this to control model behavior like reasoning effort for thinking models (e.g., \`{ openai: { reasoningEffort: 'low' } }\`)
43
-
44
- ## Returns
45
-
46
- **id:** (`string`): Processor identifier set to 'language-detector'
47
-
48
- **name?:** (`string`): Optional processor display name
49
-
50
- **processInput:** (`(args: { messages: MastraDBMessage[]; abort: (reason?: string) => never; tracingContext?: TracingContext }) => Promise<MastraDBMessage[]>`): Processes input messages to detect language and optionally translate content before sending to LLM
51
-
52
- ## Extended usage example
53
-
54
- ```typescript
55
- import { Agent } from "@mastra/core/agent";
56
- import { LanguageDetector } from "@mastra/core/processors";
57
-
58
- export const agent = new Agent({
59
- id: "multilingual-agent",
60
- name: "multilingual-agent",
61
- instructions: "You are a helpful assistant",
62
- model: "openai/gpt-5.1",
63
- inputProcessors: [
64
- new LanguageDetector({
65
- model: "openrouter/openai/gpt-oss-safeguard-20b",
66
- targetLanguages: ["English", "en"],
67
- threshold: 0.8,
68
- strategy: "translate",
69
- preserveOriginal: true,
70
- instructions: "Detect language and translate non-English content to English while preserving original intent",
71
- minTextLength: 10,
72
- includeDetectionDetails: true,
73
- translationQuality: "quality"
74
- })
75
- ]
76
- });
77
- ```
78
-
79
- ## Related
80
-
81
- - [Guardrails](https://mastra.ai/docs/agents/guardrails)
@@ -1,85 +0,0 @@
1
- # MessageHistory
2
-
3
- The `MessageHistory` is a **hybrid processor** that handles both retrieval and persistence of message history. On input, it fetches historical messages from storage and prepends them to the conversation. On output, it persists new messages to storage.
4
-
5
- ## Usage example
6
-
7
- ```typescript
8
- import { MessageHistory } from "@mastra/core/processors";
9
-
10
- const processor = new MessageHistory({
11
- storage: memoryStorage,
12
- lastMessages: 50,
13
- });
14
- ```
15
-
16
- ## Constructor parameters
17
-
18
- **options:** (`MessageHistoryOptions`): Configuration options for the message history processor
19
-
20
- ### Options
21
-
22
- **storage:** (`MemoryStorage`): Storage instance for retrieving and persisting messages
23
-
24
- **lastMessages?:** (`number`): Maximum number of historical messages to retrieve. If not specified, retrieves all messages
25
-
26
- ## Returns
27
-
28
- **id:** (`string`): Processor identifier set to 'message-history'
29
-
30
- **name:** (`string`): Processor display name set to 'MessageHistory'
31
-
32
- **processInput:** (`(args: { messages: MastraDBMessage[]; messageList: MessageList; abort: (reason?: string) => never; tracingContext?: TracingContext; requestContext?: RequestContext }) => Promise<MessageList | MastraDBMessage[]>`): Fetches historical messages from storage and adds them to the message list
33
-
34
- **processOutputResult:** (`(args: { messages: MastraDBMessage[]; messageList: MessageList; abort: (reason?: string) => never; tracingContext?: TracingContext; requestContext?: RequestContext }) => Promise<MessageList>`): Persists new messages (user input and assistant response) to storage, excluding system messages
35
-
36
- ## Extended usage example
37
-
38
- ```typescript
39
- import { Agent } from "@mastra/core/agent";
40
- import { MessageHistory } from "@mastra/core/processors";
41
- import { PostgresStorage } from "@mastra/pg";
42
-
43
- const storage = new PostgresStorage({
44
- connectionString: process.env.DATABASE_URL,
45
- });
46
-
47
- export const agent = new Agent({
48
- name: "memory-agent",
49
- instructions: "You are a helpful assistant with conversation memory",
50
- model: "openai:gpt-4o",
51
- inputProcessors: [
52
- new MessageHistory({
53
- storage,
54
- lastMessages: 100,
55
- }),
56
- ],
57
- outputProcessors: [
58
- new MessageHistory({
59
- storage,
60
- }),
61
- ],
62
- });
63
- ```
64
-
65
- ## Behavior
66
-
67
- ### Input processing
68
-
69
- 1. Retrieves `threadId` from the request context
70
- 2. Fetches historical messages from storage (ordered by creation date, descending)
71
- 3. Filters out system messages (they should not be stored in the database)
72
- 4. Merges historical messages with incoming messages, avoiding duplicates by ID
73
- 5. Adds historical messages with `source: 'memory'` tag
74
-
75
- ### Output processing
76
-
77
- 1. Retrieves `threadId` from the request context
78
- 2. Skips persistence if `readOnly` is set in memory config
79
- 3. Filters out incomplete tool calls from messages
80
- 4. Persists new user input and assistant response messages to storage
81
- 5. Updates the thread's `updatedAt` timestamp
82
-
83
- ## Related
84
-
85
- - [Guardrails](https://mastra.ai/docs/agents/guardrails)
@@ -1,104 +0,0 @@
1
- # ModerationProcessor
2
-
3
- The `ModerationProcessor` is a **hybrid processor** that can be used for both input and output processing to provide content moderation using an LLM to detect inappropriate content across multiple categories. This processor helps maintain content safety by evaluating messages against configurable moderation categories with flexible strategies for handling flagged content.
4
-
5
- ## Usage example
6
-
7
- ```typescript
8
- import { ModerationProcessor } from "@mastra/core/processors";
9
-
10
- const processor = new ModerationProcessor({
11
- model: "openrouter/openai/gpt-oss-safeguard-20b",
12
- threshold: 0.7,
13
- strategy: "block",
14
- categories: ["hate", "harassment", "violence"]
15
- });
16
- ```
17
-
18
- ## Constructor parameters
19
-
20
- **options:** (`Options`): Configuration options for content moderation
21
-
22
- ### Options
23
-
24
- **model:** (`MastraModelConfig`): Model configuration for the moderation agent
25
-
26
- **categories?:** (`string[]`): Categories to check for moderation. If not specified, uses default OpenAI categories
27
-
28
- **threshold?:** (`number`): Confidence threshold for flagging (0-1). Content is flagged if any category score exceeds this threshold
29
-
30
- **strategy?:** (`'block' | 'warn' | 'filter'`): Strategy when content is flagged: 'block' rejects with error, 'warn' logs warning but allows through, 'filter' removes flagged messages
31
-
32
- **instructions?:** (`string`): Custom moderation instructions for the agent. If not provided, uses default instructions based on categories
33
-
34
- **includeScores?:** (`boolean`): Whether to include confidence scores in logs. Useful for tuning thresholds and debugging
35
-
36
- **chunkWindow?:** (`number`): Number of previous chunks to include for context when moderating stream chunks. If set to 1, includes the previous part, etc.
37
-
38
- **providerOptions?:** (`ProviderOptions`): Provider-specific options passed to the internal moderation agent. Use this to control model behavior like reasoning effort for thinking models (e.g., \`{ openai: { reasoningEffort: 'low' } }\`)
39
-
40
- ## Returns
41
-
42
- **id:** (`string`): Processor identifier set to 'moderation'
43
-
44
- **name?:** (`string`): Optional processor display name
45
-
46
- **processInput:** (`(args: { messages: MastraDBMessage[]; abort: (reason?: string) => never; tracingContext?: TracingContext }) => Promise<MastraDBMessage[]>`): Processes input messages to moderate content before sending to LLM
47
-
48
- **processOutputStream:** (`(args: { part: ChunkType; streamParts: ChunkType[]; state: Record<string, any>; abort: (reason?: string) => never; tracingContext?: TracingContext }) => Promise<ChunkType | null | undefined>`): Processes streaming output parts to moderate content during streaming
49
-
50
- ## Extended usage example
51
-
52
- ### Input processing
53
-
54
- ```typescript
55
- import { Agent } from "@mastra/core/agent";
56
- import { ModerationProcessor } from "@mastra/core/processors";
57
-
58
- export const agent = new Agent({
59
- name: "moderated-agent",
60
- instructions: "You are a helpful assistant",
61
- model: "openai/gpt-5.1",
62
- inputProcessors: [
63
- new ModerationProcessor({
64
- model: "openrouter/openai/gpt-oss-safeguard-20b",
65
- categories: ["hate", "harassment", "violence"],
66
- threshold: 0.7,
67
- strategy: "block",
68
- instructions: "Detect and flag inappropriate content in user messages",
69
- includeScores: true
70
- })
71
- ]
72
- });
73
- ```
74
-
75
- ### Output processing with batching
76
-
77
- When using `ModerationProcessor` as an output processor, it's recommended to combine it with `BatchPartsProcessor` to optimize performance. The `BatchPartsProcessor` batches stream chunks together before passing them to the moderator, reducing the number of LLM calls required for moderation.
78
-
79
- ```typescript
80
- import { Agent } from "@mastra/core/agent";
81
- import { BatchPartsProcessor, ModerationProcessor } from "@mastra/core/processors";
82
-
83
- export const agent = new Agent({
84
- name: "output-moderated-agent",
85
- instructions: "You are a helpful assistant",
86
- model: "openai/gpt-5.1",
87
- outputProcessors: [
88
- // Batch stream parts first to reduce LLM calls
89
- new BatchPartsProcessor({
90
- batchSize: 10,
91
- }),
92
- // Then apply moderation on batched content
93
- new ModerationProcessor({
94
- model: "openrouter/openai/gpt-oss-safeguard-20b",
95
- strategy: "filter",
96
- chunkWindow: 1,
97
- }),
98
- ]
99
- });
100
- ```
101
-
102
- ## Related
103
-
104
- - [Guardrails](https://mastra.ai/docs/agents/guardrails)