@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,749 +0,0 @@
1
- # Configuration
2
-
3
- The following reference covers all supported options in Mastra. You initialize and configure Mastra by instantiating the [`Mastra` class](https://mastra.ai/reference/core/mastra-class).
4
-
5
- ```ts
6
- import { Mastra } from "@mastra/core";
7
-
8
- export const mastra = new Mastra({
9
- // Your options...
10
- });
11
- ```
12
-
13
- ## Top-level options
14
-
15
- ### agents
16
-
17
- **Type:** `Record<string, Agent>`
18
-
19
- A record of agent instances keyed by their names. Agents are autonomous systems that can make decisions and take actions using AI models, tools, and memory.
20
-
21
- Visit the [Agents documentation](https://mastra.ai/docs/agents/overview) to learn more.
22
-
23
- ```typescript
24
- import { Mastra } from "@mastra/core";
25
- import { Agent } from "@mastra/core/agent";
26
-
27
- export const mastra = new Mastra({
28
- agents: {
29
- weatherAgent: new Agent({
30
- id: "weather-agent",
31
- name: "Weather Agent",
32
- instructions: "You help with weather information",
33
- model: "openai/gpt-4o",
34
- }),
35
- },
36
- });
37
- ```
38
-
39
- ### deployer
40
-
41
- **Type:** `MastraDeployer`
42
-
43
- Deployment provider for publishing applications to cloud platforms.
44
-
45
- Visit the [Deployment documentation](https://mastra.ai/docs/deployment/overview) to learn more.
46
-
47
- ```typescript
48
- import { Mastra } from "@mastra/core";
49
- import { NetlifyDeployer } from "@mastra/deployer-netlify";
50
-
51
- export const mastra = new Mastra({
52
- deployer: new NetlifyDeployer(),
53
- });
54
- ```
55
-
56
- ### events
57
-
58
- **Type:** `Record<string, EventHandler | EventHandler[]>`
59
-
60
- Event handlers for the internal pub/sub system. Maps event topics to handler functions that are called when events are published to those topics.
61
-
62
- > **Warning:** This is used internally by Mastra's workflow engine. Most users will not need to configure this option.
63
-
64
- ```typescript
65
- import { Mastra } from "@mastra/core";
66
-
67
- export const mastra = new Mastra({
68
- events: {
69
- "my-topic": async (event) => {
70
- console.log("Event received:", event);
71
- },
72
- },
73
- });
74
- ```
75
-
76
- ### gateways
77
-
78
- **Type:** `Record<string, MastraModelGateway>`
79
-
80
- Custom model router gateways for accessing LLM providers. Gateways handle provider-specific authentication, URL construction, and model resolution. Use this to add support for custom or self-hosted LLM providers.
81
-
82
- Visit the [Custom Gateways documentation](https://mastra.ai/models/gateways/custom-gateways) to learn more.
83
-
84
- ```typescript
85
- import { Mastra } from "@mastra/core";
86
- import { MyPrivateGateway } from "./gateways";
87
-
88
- export const mastra = new Mastra({
89
- gateways: {
90
- private: new MyPrivateGateway(),
91
- },
92
- });
93
- ```
94
-
95
- ### idGenerator
96
-
97
- **Type:** `() => string`\
98
- **Default:** `crypto.randomUUID()`
99
-
100
- Custom ID generator function for creating unique identifiers.
101
-
102
- > **Warning:** This is used internally by Mastra for creating IDs for workflow runs, agent conversations, and other resources. Most users will not need to configure this option.
103
-
104
- ```typescript
105
- import { Mastra } from "@mastra/core";
106
- import { nanoid } from "nanoid";
107
-
108
- export const mastra = new Mastra({
109
- idGenerator: () => nanoid(),
110
- });
111
- ```
112
-
113
- ### logger
114
-
115
- **Type:** `IMastraLogger | false`\
116
- **Default:** `ConsoleLogger` with `INFO` level in development, `WARN` in production
117
-
118
- Logger implementation for application logging and debugging. Set to `false` to disable logging entirely.
119
-
120
- Visit the [Logging documentation](https://mastra.ai/docs/observability/logging) to learn more.
121
-
122
- ```typescript
123
- import { Mastra } from "@mastra/core";
124
- import { PinoLogger } from "@mastra/loggers";
125
-
126
- export const mastra = new Mastra({
127
- logger: new PinoLogger({ name: "MyApp", level: "debug" }),
128
- });
129
- ```
130
-
131
- ### mcpServers
132
-
133
- **Type:** `Record<string, MCPServerBase>`
134
-
135
- MCP (Model Context Protocol) servers that expose Mastra tools, agents, workflows, and resources to MCP-compatible clients. Use this to author your own MCP servers that can be consumed by any system that supports the protocol.
136
-
137
- Visit the [MCP Overview](https://mastra.ai/docs/mcp/overview) to learn more.
138
-
139
- ```typescript
140
- import { Mastra } from "@mastra/core";
141
- import { MCPServer } from "@mastra/mcp";
142
-
143
- const mcpServer = new MCPServer({
144
- id: "my-mcp-server",
145
- name: "My MCP Server",
146
- version: "1.0.0",
147
- });
148
-
149
- export const mastra = new Mastra({
150
- mcpServers: {
151
- myServer: mcpServer,
152
- },
153
- });
154
- ```
155
-
156
- ### memory
157
-
158
- **Type:** `Record<string, MastraMemory>`
159
-
160
- A registry of memory instances that can be referenced by agents. Memory gives agents coherence across interactions by retaining relevant information from past conversations. Mastra supports three types of memory: message history for recent messages, working memory for persistent user-specific details, and semantic recall for retrieving older messages based on relevance.
161
-
162
- Visit the [Memory documentation](https://mastra.ai/docs/memory/overview) to learn more.
163
-
164
- > **Note:** Most users configure memory directly on agents. This top-level configuration is for defining reusable memory instances that can be shared across multiple agents.
165
-
166
- ```typescript
167
- import { Mastra } from "@mastra/core";
168
- import { Memory } from "@mastra/memory";
169
- import { LibSQLStore } from "@mastra/libsql";
170
-
171
- export const mastra = new Mastra({
172
- storage: new LibSQLStore({
173
- id: "mastra-storage",
174
- url: ":memory:",
175
- }),
176
- memory: {
177
- chatMemory: new Memory({
178
- options: {
179
- lastMessages: 20,
180
- },
181
- }),
182
- },
183
- });
184
- ```
185
-
186
- ### observability
187
-
188
- **Type:** `ObservabilityEntrypoint`
189
-
190
- Mastra provides observability features for AI applications. Monitor LLM operations, trace agent decisions, and debug complex workflows with tools that understand AI-specific patterns. Tracing captures model interactions, agent execution paths, tool calls, and workflow steps.
191
-
192
- Visit the [Observability documentation](https://mastra.ai/docs/observability/overview) to learn more.
193
-
194
- ```typescript
195
- import { Mastra } from "@mastra/core";
196
- import { LibSQLStore } from "@mastra/libsql";
197
- import { Observability, DefaultExporter } from "@mastra/observability";
198
-
199
- export const mastra = new Mastra({
200
- storage: new LibSQLStore({
201
- id: "mastra-storage",
202
- url: "file:./mastra.db",
203
- }),
204
- observability: new Observability({
205
- configs: {
206
- default: {
207
- serviceName: "my-app",
208
- exporters: [new DefaultExporter()],
209
- },
210
- },
211
- }),
212
- });
213
- ```
214
-
215
- ### processors
216
-
217
- **Type:** `Record<string, Processor>`
218
-
219
- Input/output processors for transforming agent inputs and outputs. Processors run at specific points in the agent's execution pipeline, allowing you to modify inputs before they reach the language model or outputs before they're returned. Use processors to add guardrails, detect prompt injection, moderate content, or apply custom business logic.
220
-
221
- Visit the [Processors documentation](https://mastra.ai/docs/agents/processors) to learn more.
222
-
223
- > **Note:** Most users configure processors directly on agents. This top-level configuration is for defining reusable processor instances that can be shared across multiple agents.
224
-
225
- ```typescript
226
- import { Mastra } from "@mastra/core";
227
- import { ModerationProcessor } from "@mastra/core/processors";
228
-
229
- export const mastra = new Mastra({
230
- processors: {
231
- moderation: new ModerationProcessor({
232
- model: "openai/gpt-4.1-nano",
233
- categories: ["hate", "harassment", "violence"],
234
- }),
235
- },
236
- });
237
- ```
238
-
239
- ### pubsub
240
-
241
- **Type:** `PubSub`\
242
- **Default:** `EventEmitterPubSub`
243
-
244
- Pub/sub system for event-driven communication between components. Used internally by Mastra for workflow event processing and component communication.
245
-
246
- > **Warning:** This is used internally by Mastra. Most users will not need to configure this option.
247
-
248
- ```typescript
249
- import { Mastra } from "@mastra/core";
250
- import { CustomPubSub } from "./pubsub";
251
-
252
- export const mastra = new Mastra({
253
- pubsub: new CustomPubSub(),
254
- });
255
- ```
256
-
257
- ### scorers
258
-
259
- **Type:** `Record<string, Scorer>`
260
-
261
- Scorers assess the quality of agent responses and workflow outputs. They provide quantifiable metrics for measuring agent quality using model-graded, rule-based, and statistical methods. Use scorers to track performance, compare approaches, and identify areas for improvement.
262
-
263
- Visit the [Scorers documentation](https://mastra.ai/docs/evals/overview) to learn more.
264
-
265
- > **Note:** Most users configure scorers directly on agents. This top-level configuration is for defining reusable scorer instances that can be shared across multiple agents.
266
-
267
- ```typescript
268
- import { Mastra } from "@mastra/core";
269
- import { createToxicityScorer } from "@mastra/evals/scorers/prebuilt";
270
-
271
- export const mastra = new Mastra({
272
- scorers: {
273
- toxicity: createToxicityScorer({ model: "openai/gpt-4.1-nano" }),
274
- },
275
- });
276
- ```
277
-
278
- ### storage
279
-
280
- **Type:** `MastraCompositeStore`
281
-
282
- Storage provider for persisting application data. Used by memory, workflows, traces, and other components that require persistence. Mastra supports multiple database backends including PostgreSQL, MongoDB, libSQL, and more.
283
-
284
- Visit the [Storage documentation](https://mastra.ai/docs/memory/storage) to learn more.
285
-
286
- ```typescript
287
- import { Mastra } from "@mastra/core";
288
- import { LibSQLStore } from "@mastra/libsql";
289
-
290
- export const mastra = new Mastra({
291
- storage: new LibSQLStore({
292
- id: "mastra-storage",
293
- url: "file:./mastra.db",
294
- }),
295
- });
296
- ```
297
-
298
- ### tools
299
-
300
- **Type:** `Record<string, Tool>`
301
-
302
- Tools are reusable functions that agents can use to interact with external systems. Each tool defines inputs, outputs, and execution logic.
303
-
304
- Visit the [Tools documentation](https://mastra.ai/docs/agents/using-tools) to learn more.
305
-
306
- > **Note:** Most users configure tools directly on agents. This top-level configuration is for defining reusable tools that can be shared across multiple agents.
307
-
308
- ```typescript
309
- import { Mastra } from "@mastra/core";
310
- import { createTool } from "@mastra/core/tools";
311
- import { z } from "zod";
312
-
313
- const weatherTool = createTool({
314
- id: "get-weather",
315
- description: "Fetches weather for a city",
316
- inputSchema: z.object({
317
- city: z.string(),
318
- }),
319
- execute: async () => {
320
- return { temperature: 20, conditions: "Sunny" };
321
- },
322
- });
323
-
324
- export const mastra = new Mastra({
325
- tools: {
326
- weather: weatherTool,
327
- },
328
- });
329
- ```
330
-
331
- ### tts
332
-
333
- **Type:** `Record<string, MastraVoice>`
334
-
335
- Text-to-speech providers for voice synthesis capabilities. Register voice providers to enable agents to convert text responses into spoken audio.
336
-
337
- Visit the [Voice documentation](https://mastra.ai/docs/voice/overview) to learn more.
338
-
339
- > **Note:** Most users configure voice directly on agents. This top-level configuration is for defining reusable voice providers that can be shared across multiple agents.
340
-
341
- ```typescript
342
- import { Mastra } from "@mastra/core";
343
- import { OpenAIVoice } from "@mastra/voice-openai";
344
-
345
- export const mastra = new Mastra({
346
- tts: {
347
- openai: new OpenAIVoice(),
348
- },
349
- });
350
- ```
351
-
352
- ### vectors
353
-
354
- **Type:** `Record<string, MastraVector>`
355
-
356
- Vector stores for semantic search and embeddings. Used in RAG pipelines, similarity search, and other embedding-based features. Mastra supports multiple vector databases including Pinecone, PostgreSQL with pgvector, MongoDB, and more.
357
-
358
- Visit the [RAG documentation](https://mastra.ai/docs/rag/overview) to learn more.
359
-
360
- > **Note:** Most users create vector stores directly when building RAG pipelines. This top-level configuration is for defining reusable vector store instances that can be shared across your application.
361
-
362
- ```typescript
363
- import { Mastra } from "@mastra/core";
364
- import { PineconeVector } from "@mastra/pinecone";
365
-
366
- export const mastra = new Mastra({
367
- vectors: {
368
- pinecone: new PineconeVector({
369
- id: 'pinecone-vector',
370
- apiKey: process.env.PINECONE_API_KEY,
371
- }),
372
- },
373
- });
374
- ```
375
-
376
- ### workflows
377
-
378
- **Type:** `Record<string, Workflow>`
379
-
380
- Workflows define step-based execution pipelines with type-safe inputs and outputs. Use workflows for tasks that involve multiple steps with a specific execution order, giving you control over how data flows between steps.
381
-
382
- Visit the [Workflows documentation](https://mastra.ai/docs/workflows/overview) to learn more.
383
-
384
- ```typescript
385
- import { Mastra } from "@mastra/core";
386
- import { testWorkflow } from "./workflows/test-workflow";
387
-
388
- export const mastra = new Mastra({
389
- workflows: {
390
- testWorkflow,
391
- },
392
- });
393
- ```
394
-
395
- ### workspace
396
-
397
- **Type:** `Workspace`
398
-
399
- A Mastra workspace gives agents a persistent environment for storing files and executing commands. Agents inherit the global workspace on the `Mastra` class unless they have their own workspace configured.
400
-
401
- See the [Workspace documentation](https://mastra.ai/docs/workspace/overview) for implementation details.
402
-
403
- ```typescript
404
- import { Mastra } from '@mastra/core';
405
- import { Workspace, LocalFilesystem } from '@mastra/core/workspace';
406
-
407
- const workspace = new Workspace({
408
- filesystem: new LocalFilesystem({ basePath: './workspace' }),
409
- });
410
-
411
- const mastra = new Mastra({
412
- workspace,
413
- });
414
- ```
415
-
416
- ## Bundler options
417
-
418
- ### bundler.externals
419
-
420
- **Type:** `boolean | string[]`\
421
- **Default:** `true`
422
-
423
- When `mastra build` is run, Mastra bundles your project into the `.mastra/output` directory. This option controls which packages are excluded from the bundle (marked as "external") and installed separately through a package manager. This is useful when the internal Mastra bundler ([Rollup](https://rollupjs.org/configuration-options/#external)) has trouble bundling certain packages.
424
-
425
- By default, `mastra build` sets this option to `true`. If you deploy your project to [Mastra Cloud](https://mastra.ai/docs/mastra-cloud/overview), it also sets this option to `true`.
426
-
427
- Here's an overview of what the different values mean:
428
-
429
- - `true`: All dependencies listed in your project's `package.json` are marked as external
430
- - `false`: No dependencies are marked as external; everything is bundled together
431
- - `string[]`: An array of package names to mark as external, the rest will be bundled together
432
-
433
- ```typescript
434
- import { Mastra } from "@mastra/core";
435
-
436
- export const mastra = new Mastra({
437
- bundler: {
438
- externals: ["some-package", "another-package"],
439
- },
440
- });
441
- ```
442
-
443
- ### bundler.sourcemap
444
-
445
- **Type:** `boolean`\
446
- **Default:** `false`
447
-
448
- Enables source map generation for the bundled output.
449
-
450
- ```typescript
451
- import { Mastra } from "@mastra/core";
452
-
453
- export const mastra = new Mastra({
454
- bundler: {
455
- sourcemap: true,
456
- },
457
- });
458
- ```
459
-
460
- ### bundler.transpilePackages
461
-
462
- **Type:** `string[]`\
463
- **Default:** `[]`
464
-
465
- List of packages whose source code should be transpiled through esbuild during the build process. Use this for dependencies that contain TypeScript or other code that needs compilation before bundling.
466
-
467
- You only need this option if you're importing uncompiled source code directly. If your packages are already compiled to CommonJS or ESM, they don't need to be listed here.
468
-
469
- Mastra automatically detects workspace packages in monorepo setups and adds them to this list, so you typically only need to specify external packages that require transpilation.
470
-
471
- ```typescript
472
- import { Mastra } from "@mastra/core";
473
-
474
- export const mastra = new Mastra({
475
- bundler: {
476
- transpilePackages: ["@my-org/shared-utils"],
477
- },
478
- });
479
- ```
480
-
481
- ## Server options
482
-
483
- ### server.apiRoutes
484
-
485
- **Type:** `ApiRoute[]`
486
-
487
- Mastra automatically exposes registered agents and workflows via its server. For additional behavior you can define your own HTTP routes.
488
-
489
- Visit the [Custom API routes](https://mastra.ai/docs/server/custom-api-routes) documentation to learn more.
490
-
491
- ```typescript
492
- import { Mastra } from "@mastra/core";
493
- import { registerApiRoute } from "@mastra/core/server";
494
-
495
- export const mastra = new Mastra({
496
- server: {
497
- apiRoutes: [
498
- registerApiRoute("/my-custom-route", {
499
- method: "GET",
500
- handler: async (c) => {
501
- return c.json({ message: "Custom route" });
502
- },
503
- }),
504
- ],
505
- },
506
- });
507
- ```
508
-
509
- ### server.auth
510
-
511
- **Type:** `MastraAuthConfig | MastraAuthProvider`
512
-
513
- Authentication configuration for the server. Mastra supports multiple authentication providers including JWT, Clerk, Supabase, Firebase, WorkOS, and Auth0.
514
-
515
- Visit the [Authentication documentation](https://mastra.ai/docs/server/auth) to learn more.
516
-
517
- ```typescript
518
- import { Mastra } from "@mastra/core";
519
- import { MastraJwtAuth } from "@mastra/auth";
520
-
521
- export const mastra = new Mastra({
522
- server: {
523
- auth: new MastraJwtAuth({
524
- secret: process.env.MASTRA_JWT_SECRET,
525
- }),
526
- },
527
- });
528
- ```
529
-
530
- ### server.bodySizeLimit
531
-
532
- **Type:** `number`\
533
- **Default:** `4_718_592` (4.5 MB)
534
-
535
- Maximum request body size in bytes. Increase this limit if your application needs to handle larger payloads.
536
-
537
- ```typescript
538
- import { Mastra } from "@mastra/core";
539
-
540
- export const mastra = new Mastra({
541
- server: {
542
- bodySizeLimit: 10 * 1024 * 1024, // 10mb
543
- },
544
- });
545
- ```
546
-
547
- ### server.build
548
-
549
- Build-time configuration for server features. These options control development tools like Swagger UI and request logging, which are enabled during local development but disabled in production by default.
550
-
551
- | Property | Type | Default | Description |
552
- | ------------- | --------- | ------- | -------------------------------------------------------------------------------------------------------- |
553
- | `swaggerUI` | `boolean` | `false` | Enable Swagger UI at `/swagger-ui` for interactive API exploration (requires `openAPIDocs` to be `true`) |
554
- | `apiReqLogs` | `boolean` | `false` | Enable API request logging to the console |
555
- | `openAPIDocs` | `boolean` | `false` | Enable OpenAPI specification at `/openapi.json` |
556
-
557
- ```typescript
558
- import { Mastra } from "@mastra/core";
559
-
560
- export const mastra = new Mastra({
561
- server: {
562
- build: {
563
- swaggerUI: true,
564
- apiReqLogs: true,
565
- openAPIDocs: true,
566
- },
567
- },
568
- });
569
- ```
570
-
571
- ### server.cors
572
-
573
- **Type:** `CorsOptions | false`
574
-
575
- CORS (Cross-Origin Resource Sharing) configuration for the server. Set to `false` to disable CORS entirely.
576
-
577
- | Property | Type | Default | Description |
578
- | --------------- | -------------------- | ----------------------------------------------------------- | -------------------------------------------- |
579
- | `origin` | `string \| string[]` | `'*'` | Origins for CORS requests |
580
- | `allowMethods` | `string[]` | `['GET', 'POST', 'PUT', 'PATCH', 'DELETE', 'OPTIONS']` | HTTP methods |
581
- | `allowHeaders` | `string[]` | `['Content-Type', 'Authorization', 'x-mastra-client-type']` | Request headers |
582
- | `exposeHeaders` | `string[]` | `['Content-Length', 'X-Requested-With']` | Browser headers |
583
- | `credentials` | `boolean` | `false` | Credentials (cookies, authorization headers) |
584
- | `maxAge` | `number` | `3600` | Preflight request cache duration in seconds |
585
-
586
- ```typescript
587
- import { Mastra } from "@mastra/core";
588
-
589
- export const mastra = new Mastra({
590
- server: {
591
- cors: {
592
- origin: ["https://example.com"],
593
- allowMethods: ["GET", "POST", "PUT", "DELETE", "OPTIONS"],
594
- allowHeaders: ["Content-Type", "Authorization"],
595
- credentials: false,
596
- },
597
- },
598
- });
599
- ```
600
-
601
- ### server.host
602
-
603
- **Type:** `string`\
604
- **Default:** `localhost`
605
-
606
- Host address the Mastra development server binds to.
607
-
608
- ```typescript
609
- import { Mastra } from "@mastra/core";
610
-
611
- export const mastra = new Mastra({
612
- server: {
613
- host: "0.0.0.0",
614
- },
615
- });
616
- ```
617
-
618
- ### server.https
619
-
620
- **Type:** `{ key: Buffer; cert: Buffer }`
621
-
622
- HTTPS configuration for running the development server with TLS. Mastra supports local HTTPS development through the `mastra dev --https` flag, which automatically creates and manages certificates. For custom certificate management, provide your own key and certificate files:
623
-
624
- ```typescript
625
- import { Mastra } from "@mastra/core";
626
- import fs from "node:fs";
627
-
628
- export const mastra = new Mastra({
629
- server: {
630
- https: {
631
- key: fs.readFileSync("path/to/key.pem"),
632
- cert: fs.readFileSync("path/to/cert.pem"),
633
- },
634
- },
635
- });
636
- ```
637
-
638
- ### server.middleware
639
-
640
- **Type:** `Middleware | Middleware[]`
641
-
642
- Custom middleware functions to intercept requests before or after route handlers. Middleware can be used for authentication, logging, injecting request-specific context, or adding headers. Each middleware receives the Hono `Context` and a `next` function. Return a `Response` to short-circuit the request, or call `next()` to continue processing.
643
-
644
- Visit the [Middleware documentation](https://mastra.ai/docs/server/middleware) to learn more.
645
-
646
- ```typescript
647
- import { Mastra } from "@mastra/core";
648
-
649
- export const mastra = new Mastra({
650
- server: {
651
- middleware: [
652
- {
653
- handler: async (c, next) => {
654
- const authHeader = c.req.header("Authorization");
655
- if (!authHeader) {
656
- return new Response("Unauthorized", { status: 401 });
657
- }
658
- await next();
659
- },
660
- path: "/api/*",
661
- },
662
- ],
663
- },
664
- });
665
- ```
666
-
667
- ### server.onError
668
-
669
- **Type:** `(err: Error, c: Context) => Response | Promise<Response>`
670
-
671
- Custom error handler called when an unhandled error occurs. Use this to customize error responses, log errors to external services like Sentry, or implement custom error formatting.
672
-
673
- This hook is supported by all server adapters. The `c` parameter provides a Hono-compatible context object — for non-Hono adapters (Koa, Express, Fastify), a shim is provided with commonly used methods like `c.json()` and `c.req.path`.
674
-
675
- ```typescript
676
- import { Mastra } from "@mastra/core";
677
- import * as Sentry from "@sentry/node";
678
-
679
- export const mastra = new Mastra({
680
- server: {
681
- onError: (err, c) => {
682
- Sentry.captureException(err);
683
-
684
- return c.json({
685
- error: err.message,
686
- timestamp: new Date().toISOString(),
687
- }, 500);
688
- },
689
- },
690
- });
691
- ```
692
-
693
- ### server.port
694
-
695
- **Type:** `number`\
696
- **Default:** `4111` (or `PORT` environment variable if set)
697
-
698
- Port the Mastra development server binds to. If the `PORT` environment variable is set, it takes precedence over the default.
699
-
700
- ```typescript
701
- import { Mastra } from "@mastra/core";
702
-
703
- export const mastra = new Mastra({
704
- server: {
705
- port: 8080,
706
- },
707
- });
708
- ```
709
-
710
- ### server.studioBase
711
-
712
- **Type:** `string`\
713
- **Default:** `/`
714
-
715
- Base path for hosting Mastra Studio. Use this to host the Studio on a sub-path of your existing application instead of the root.
716
-
717
- This is useful when integrating with existing applications, using authentication tools like Cloudflare Zero Trust that benefit from shared domains, or managing multiple services under a single domain.
718
-
719
- ```typescript
720
- import { Mastra } from "@mastra/core";
721
-
722
- export const mastra = new Mastra({
723
- server: {
724
- studioBase: "/my-mastra-studio",
725
- },
726
- });
727
- ```
728
-
729
- **Example URLs:**
730
-
731
- - Default: `http://localhost:4111/` (studio at root)
732
- - With `studioBase`: `http://localhost:4111/my-mastra-studio/` (studio at sub-path)
733
-
734
- ### server.timeout
735
-
736
- **Type:** `number`\
737
- **Default:** `180000` (3 minutes)
738
-
739
- Request timeout in milliseconds. Requests that exceed this duration will be terminated.
740
-
741
- ```typescript
742
- import { Mastra } from "@mastra/core";
743
-
744
- export const mastra = new Mastra({
745
- server: {
746
- timeout: 30000, // 30 seconds
747
- },
748
- });
749
- ```