@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,164 +0,0 @@
1
- # voice.listen()
2
-
3
- The `listen()` method is a core function available in all Mastra voice providers that converts speech to text. It takes an audio stream as input and returns the transcribed text.
4
-
5
- ## Parameters
6
-
7
- **audioStream:** (`NodeJS.ReadableStream`): Audio stream to transcribe. This can be a file stream or a microphone stream.
8
-
9
- **options?:** (`object`): Provider-specific options for speech recognition
10
-
11
- ## Return Value
12
-
13
- Returns one of the following:
14
-
15
- - `Promise<string>`: A promise that resolves to the transcribed text
16
- - `Promise<NodeJS.ReadableStream>`: A promise that resolves to a stream of transcribed text (for streaming transcription)
17
- - `Promise<void>`: For real-time providers that emit 'writing' events instead of returning text directly
18
-
19
- ## Provider-Specific Options
20
-
21
- Each voice provider may support additional options specific to their implementation. Here are some examples:
22
-
23
- ### OpenAI
24
-
25
- **options.filetype?:** (`string`): Audio file format (e.g., 'mp3', 'wav', 'm4a') (Default: `'mp3'`)
26
-
27
- **options.prompt?:** (`string`): Text to guide the model's transcription
28
-
29
- **options.language?:** (`string`): Language code (e.g., 'en', 'fr', 'de')
30
-
31
- ### Google
32
-
33
- **options.stream?:** (`boolean`): Whether to use streaming recognition (Default: `false`)
34
-
35
- **options.config?:** (`object`): Recognition configuration from Google Cloud Speech-to-Text API (Default: `{ encoding: 'LINEAR16', languageCode: 'en-US' }`)
36
-
37
- ### Deepgram
38
-
39
- **options.model?:** (`string`): Deepgram model to use for transcription (Default: `'nova-2'`)
40
-
41
- **options.language?:** (`string`): Language code for transcription (Default: `'en'`)
42
-
43
- ## Usage Example
44
-
45
- ```typescript
46
- import { OpenAIVoice } from "@mastra/voice-openai";
47
- import { getMicrophoneStream } from "@mastra/node-audio";
48
- import { createReadStream } from "fs";
49
- import path from "path";
50
-
51
- // Initialize a voice provider
52
- const voice = new OpenAIVoice({
53
- listeningModel: {
54
- name: "whisper-1",
55
- apiKey: process.env.OPENAI_API_KEY,
56
- },
57
- });
58
-
59
- // Basic usage with a file stream
60
- const audioFilePath = path.join(process.cwd(), "audio.mp3");
61
- const audioStream = createReadStream(audioFilePath);
62
- const transcript = await voice.listen(audioStream, {
63
- filetype: "mp3",
64
- });
65
- console.log("Transcribed text:", transcript);
66
-
67
- // Using a microphone stream
68
- const microphoneStream = getMicrophoneStream(); // Assume this function gets audio input
69
- const transcription = await voice.listen(microphoneStream);
70
-
71
- // With provider-specific options
72
- const transcriptWithOptions = await voice.listen(audioStream, {
73
- language: "en",
74
- prompt: "This is a conversation about artificial intelligence.",
75
- });
76
- ```
77
-
78
- ## Using with CompositeVoice
79
-
80
- When using `CompositeVoice`, the `listen()` method delegates to the configured listening provider:
81
-
82
- ```typescript
83
- import { CompositeVoice } from "@mastra/core/voice";
84
- import { OpenAIVoice } from "@mastra/voice-openai";
85
- import { PlayAIVoice } from "@mastra/voice-playai";
86
-
87
- const voice = new CompositeVoice({
88
- input: new OpenAIVoice(),
89
- output: new PlayAIVoice(),
90
- });
91
-
92
- // This will use the OpenAIVoice provider
93
- const transcript = await voice.listen(audioStream);
94
- ```
95
-
96
- ### Using AI SDK Model Providers
97
-
98
- You can also use AI SDK transcription models directly with `CompositeVoice`:
99
-
100
- ```typescript
101
- import { CompositeVoice } from "@mastra/core/voice";
102
- import { openai } from "@ai-sdk/openai";
103
- import { groq } from "@ai-sdk/groq";
104
-
105
- // Use AI SDK transcription models
106
- const voice = new CompositeVoice({
107
- input: openai.transcription('whisper-1'), // AI SDK model
108
- output: new PlayAIVoice(), // Mastra provider
109
- });
110
-
111
- // Works the same way
112
- const transcript = await voice.listen(audioStream);
113
-
114
- // Provider-specific options can be passed through
115
- const transcriptWithOptions = await voice.listen(audioStream, {
116
- providerOptions: {
117
- openai: {
118
- language: 'en',
119
- prompt: 'This is about AI',
120
- }
121
- }
122
- });
123
- ```
124
-
125
- See the [CompositeVoice reference](https://mastra.ai/reference/voice/composite-voice) for more details on AI SDK integration.
126
-
127
- ## Realtime Voice Providers
128
-
129
- When using realtime voice providers like `OpenAIRealtimeVoice`, the `listen()` method behaves differently:
130
-
131
- - Instead of returning transcribed text, it emits 'writing' events with the transcribed text
132
- - You need to register an event listener to receive the transcription
133
-
134
- ```typescript
135
- import { OpenAIRealtimeVoice } from "@mastra/voice-openai-realtime";
136
- import { getMicrophoneStream } from "@mastra/node-audio";
137
-
138
- const voice = new OpenAIRealtimeVoice();
139
- await voice.connect();
140
-
141
- // Register event listener for transcription
142
- voice.on("writing", ({ text, role }) => {
143
- console.log(`${role}: ${text}`);
144
- });
145
-
146
- // This will emit 'writing' events instead of returning text
147
- const microphoneStream = getMicrophoneStream();
148
- await voice.listen(microphoneStream);
149
- ```
150
-
151
- ## Notes
152
-
153
- - Not all voice providers support speech-to-text functionality (e.g., PlayAI, Speechify)
154
- - The behavior of `listen()` may vary slightly between providers, but all implementations follow the same basic interface
155
- - When using a realtime voice provider, the method might not return text directly but instead emit a 'writing' event
156
- - The audio format supported depends on the provider. Common formats include MP3, WAV, and M4A
157
- - Some providers support streaming transcription, where text is returned as it's transcribed
158
- - For best performance, consider closing or ending the audio stream when you're done with it
159
-
160
- ## Related Methods
161
-
162
- - [voice.speak()](https://mastra.ai/reference/voice/voice.speak) - Converts text to speech
163
- - [voice.send()](https://mastra.ai/reference/voice/voice.send) - Sends audio data to the voice provider in real-time
164
- - [voice.on()](https://mastra.ai/reference/voice/voice.on) - Registers an event listener for voice events
@@ -1,111 +0,0 @@
1
- # voice.on()
2
-
3
- The `on()` method registers event listeners for various voice events. This is particularly important for real-time voice providers, where events are used to communicate transcribed text, audio responses, and other state changes.
4
-
5
- ## Usage Example
6
-
7
- ```typescript
8
- import { OpenAIRealtimeVoice } from "@mastra/voice-openai-realtime";
9
- import Speaker from "@mastra/node-speaker";
10
- import chalk from "chalk";
11
-
12
- // Initialize a real-time voice provider
13
- const voice = new OpenAIRealtimeVoice({
14
- realtimeConfig: {
15
- model: "gpt-5.1-realtime",
16
- apiKey: process.env.OPENAI_API_KEY,
17
- },
18
- });
19
-
20
- // Connect to the real-time service
21
- await voice.connect();
22
-
23
- // Register event listener for transcribed text
24
- voice.on("writing", (event) => {
25
- if (event.role === "user") {
26
- process.stdout.write(chalk.green(event.text));
27
- } else {
28
- process.stdout.write(chalk.blue(event.text));
29
- }
30
- });
31
-
32
- // Listen for audio data and play it
33
- const speaker = new Speaker({
34
- sampleRate: 24100,
35
- channels: 1,
36
- bitDepth: 16,
37
- });
38
-
39
- voice.on("speaker", (stream) => {
40
- stream.pipe(speaker);
41
- });
42
-
43
- // Register event listener for errors
44
- voice.on("error", ({ message, code, details }) => {
45
- console.error(`Error ${code}: ${message}`, details);
46
- });
47
- ```
48
-
49
- ## Parameters
50
-
51
- **event:** (`string`): Name of the event to listen for. See the \[Voice Events]\(./voice.events) documentation for a list of available events.
52
-
53
- **callback:** (`function`): Callback function that will be called when the event occurs. The callback signature depends on the specific event.
54
-
55
- ## Return Value
56
-
57
- This method does not return a value.
58
-
59
- ## Events
60
-
61
- For a comprehensive list of events and their payload structures, see the [Voice Events](https://mastra.ai/reference/voice/voice.events) documentation.
62
-
63
- Common events include:
64
-
65
- - `speaking`: Emitted when audio data is available
66
- - `speaker`: Emitted with a stream that can be piped to audio output
67
- - `writing`: Emitted when text is transcribed or generated
68
- - `error`: Emitted when an error occurs
69
- - `tool-call-start`: Emitted when a tool is about to be executed
70
- - `tool-call-result`: Emitted when a tool execution is complete
71
-
72
- Different voice providers may support different sets of events with varying payload structures.
73
-
74
- ## Using with CompositeVoice
75
-
76
- When using `CompositeVoice`, the `on()` method delegates to the configured real-time provider:
77
-
78
- ```typescript
79
- import { CompositeVoice } from "@mastra/core/voice";
80
- import { OpenAIRealtimeVoice } from "@mastra/voice-openai-realtime";
81
- import Speaker from "@mastra/node-speaker";
82
-
83
- const speaker = new Speaker({
84
- sampleRate: 24100, // Audio sample rate in Hz - standard for high-quality audio on MacBook Pro
85
- channels: 1, // Mono audio output (as opposed to stereo which would be 2)
86
- bitDepth: 16, // Bit depth for audio quality - CD quality standard (16-bit resolution)
87
- });
88
-
89
- const realtimeVoice = new OpenAIRealtimeVoice();
90
- const voice = new CompositeVoice({
91
- realtime: realtimeVoice,
92
- });
93
-
94
- // Connect to the real-time service
95
- await voice.connect();
96
-
97
- // This will register the event listener with the OpenAIRealtimeVoice provider
98
- voice.on("speaker", (stream) => {
99
- stream.pipe(speaker);
100
- });
101
- ```
102
-
103
- ## Notes
104
-
105
- - This method is primarily used with real-time voice providers that support event-based communication
106
- - If called on a voice provider that doesn't support events, it will log a warning and do nothing
107
- - Event listeners should be registered before calling methods that might emit events
108
- - To remove an event listener, use the [voice.off()](https://mastra.ai/reference/voice/voice.off) method with the same event name and callback function
109
- - Multiple listeners can be registered for the same event
110
- - The callback function will receive different data depending on the event type (see [Voice Events](https://mastra.ai/reference/voice/voice.events))
111
- - For best performance, consider removing event listeners when they are no longer needed
@@ -1,157 +0,0 @@
1
- # voice.speak()
2
-
3
- The `speak()` method is a core function available in all Mastra voice providers that converts text to speech. It takes text input and returns an audio stream that can be played or saved.
4
-
5
- ## Parameters
6
-
7
- **input:** (`string | NodeJS.ReadableStream`): Text to convert to speech. Can be a string or a readable stream of text.
8
-
9
- **options?:** (`object`): Options for speech synthesis
10
-
11
- **options.speaker?:** (`string`): Voice ID to use for this specific request. Overrides the default speaker set in the constructor.
12
-
13
- ## Return Value
14
-
15
- Returns a `Promise<NodeJS.ReadableStream | void>` where:
16
-
17
- - `NodeJS.ReadableStream`: A stream of audio data that can be played or saved
18
- - `void`: When using a realtime voice provider that emits audio through events instead of returning it directly
19
-
20
- ## Provider-Specific Options
21
-
22
- Each voice provider may support additional options specific to their implementation. Here are some examples:
23
-
24
- ### OpenAI
25
-
26
- **options.speed?:** (`number`): Speech speed multiplier. Values between 0.25 and 4.0 are supported. (Default: `1.0`)
27
-
28
- ### ElevenLabs
29
-
30
- **options.stability?:** (`number`): Voice stability. Higher values result in more stable, less expressive speech. (Default: `0.5`)
31
-
32
- **options.similarity\_boost?:** (`number`): Voice clarity and similarity to the original voice. (Default: `0.75`)
33
-
34
- ### Google
35
-
36
- **options.languageCode?:** (`string`): Language code for the voice (e.g., 'en-US').
37
-
38
- **options.audioConfig?:** (`object`): Audio configuration options from Google Cloud Text-to-Speech API. (Default: `{ audioEncoding: 'LINEAR16' }`)
39
-
40
- ### Murf
41
-
42
- **options.properties.rate?:** (`number`): Speech rate multiplier.
43
-
44
- **options.properties.pitch?:** (`number`): Voice pitch adjustment.
45
-
46
- **options.properties.format?:** (`'MP3' | 'WAV' | 'FLAC' | 'ALAW' | 'ULAW'`): Output audio format.
47
-
48
- ## Usage Example
49
-
50
- ```typescript
51
- import { OpenAIVoice } from "@mastra/voice-openai";
52
- // Initialize a voice provider
53
- const voice = new OpenAIVoice({
54
- speaker: "alloy", // Default voice
55
- });
56
- // Basic usage with default settings
57
- const audioStream = await voice.speak("Hello, world!");
58
- // Using a different voice for this specific request
59
- const audioStreamWithDifferentVoice = await voice.speak("Hello again!", {
60
- speaker: "nova",
61
- });
62
- // Using provider-specific options
63
- const audioStreamWithOptions = await voice.speak("Hello with options!", {
64
- speaker: "echo",
65
- speed: 1.2, // OpenAI-specific option
66
- });
67
- // Using a text stream as input
68
- import { Readable } from "stream";
69
- const textStream = Readable.from(["Hello", " from", " a", " stream!"]);
70
- const audioStreamFromTextStream = await voice.speak(textStream);
71
- ```
72
-
73
- ## Using with CompositeVoice
74
-
75
- When using `CompositeVoice`, the `speak()` method delegates to the configured speaking provider:
76
-
77
- ```typescript
78
- import { CompositeVoice } from "@mastra/core/voice";
79
- import { OpenAIVoice } from "@mastra/voice-openai";
80
- import { PlayAIVoice } from "@mastra/voice-playai";
81
-
82
- const voice = new CompositeVoice({
83
- output: new PlayAIVoice(),
84
- input: new OpenAIVoice(),
85
- });
86
-
87
- // This will use the PlayAIVoice provider
88
- const audioStream = await voice.speak("Hello, world!");
89
- ```
90
-
91
- ### Using AI SDK Model Providers
92
-
93
- You can also use AI SDK speech models directly with `CompositeVoice`:
94
-
95
- ```typescript
96
- import { CompositeVoice } from "@mastra/core/voice";
97
- import { openai } from "@ai-sdk/openai";
98
- import { elevenlabs } from "@ai-sdk/elevenlabs";
99
-
100
- // Use AI SDK speech models
101
- const voice = new CompositeVoice({
102
- output: elevenlabs.speech('eleven_turbo_v2'), // AI SDK model
103
- input: openai.transcription('whisper-1'), // AI SDK model
104
- });
105
-
106
- // Works the same way
107
- const audioStream = await voice.speak("Hello from AI SDK!");
108
-
109
- // Provider-specific options can be passed through
110
- const audioWithOptions = await voice.speak("Hello with options!", {
111
- speaker: 'Rachel', // ElevenLabs voice
112
- providerOptions: {
113
- elevenlabs: {
114
- stability: 0.5,
115
- similarity_boost: 0.75,
116
- }
117
- }
118
- });
119
- ```
120
-
121
- See the [CompositeVoice reference](https://mastra.ai/reference/voice/composite-voice) for more details on AI SDK integration.
122
-
123
- ## Realtime Voice Providers
124
-
125
- When using realtime voice providers like `OpenAIRealtimeVoice`, the `speak()` method behaves differently:
126
-
127
- - Instead of returning an audio stream, it emits a 'speaking' event with the audio data
128
- - You need to register an event listener to receive the audio chunks
129
-
130
- ```typescript
131
- import { OpenAIRealtimeVoice } from "@mastra/voice-openai-realtime";
132
- import Speaker from "@mastra/node-speaker";
133
-
134
- const speaker = new Speaker({
135
- sampleRate: 24100, // Audio sample rate in Hz - standard for high-quality audio on MacBook Pro
136
- channels: 1, // Mono audio output (as opposed to stereo which would be 2)
137
- bitDepth: 16, // Bit depth for audio quality - CD quality standard (16-bit resolution)
138
- });
139
-
140
- const voice = new OpenAIRealtimeVoice();
141
- await voice.connect();
142
- // Register event listener for audio chunks
143
- voice.on("speaker", (stream) => {
144
- // Handle audio chunk (e.g., play it or save it)
145
- stream.pipe(speaker);
146
- });
147
- // This will emit 'speaking' events instead of returning a stream
148
- await voice.speak("Hello, this is realtime speech!");
149
- ```
150
-
151
- ## Notes
152
-
153
- - The behavior of `speak()` may vary slightly between providers, but all implementations follow the same basic interface.
154
- - When using a realtime voice provider, the method might not return an audio stream directly but instead emit a 'speaking' event.
155
- - If a text stream is provided as input, the provider will typically convert it to a string before processing.
156
- - The audio format of the returned stream depends on the provider. Common formats include MP3, WAV, and OGG.
157
- - For best performance, consider closing or ending the audio stream when you're done with it.
@@ -1,86 +0,0 @@
1
- # Run.cancel()
2
-
3
- The `.cancel()` method cancels a workflow run, stopping execution and cleaning up resources.
4
-
5
- This method aborts any running steps and updates the workflow status to 'canceled'. It works for both actively running workflows and suspended/waiting workflows.
6
-
7
- ## Usage example
8
-
9
- ```typescript
10
- const run = await workflow.createRun();
11
-
12
- await run.cancel();
13
- // Returns: { message: 'Workflow run canceled' }
14
- ```
15
-
16
- ## Parameters
17
-
18
- **No parameters:** (`void`): This method takes no parameters
19
-
20
- ## Returns
21
-
22
- **result:** (`Promise<{ message: string }>`): A promise that resolves with { message: 'Workflow run canceled' } when cancellation succeeds
23
-
24
- ## How cancellation works
25
-
26
- When called, the workflow will:
27
-
28
- 1. **Trigger the abort signal** - Uses the standard Web API AbortSignal to notify running steps
29
- 2. **Prevent subsequent steps** - No further steps will be executed
30
-
31
- ## Abort signal behavior
32
-
33
- Steps that check the `abortSignal` parameter can respond to cancellation:
34
-
35
- - Steps can listen to the 'abort' event: `abortSignal.addEventListener('abort', callback)`
36
- - Steps can check if already aborted: `if (abortSignal.aborted) { ... }`
37
- - Useful for cancelling timeouts, network requests, or long-running operations
38
-
39
- **Note:** Steps must actively check the abort signal to be canceled mid-execution. Steps that don't check the signal will run to completion, but subsequent steps won't execute.
40
-
41
- ## Extended usage examples
42
-
43
- ### Cancelling a workflow on error
44
-
45
- ```typescript
46
- const run = await workflow.createRun();
47
-
48
- try {
49
- const result = await run.start({ inputData: { value: "initial data" } });
50
- } catch (error) {
51
- await run.cancel();
52
- }
53
- ```
54
-
55
- ### Creating a step that responds to cancellation
56
-
57
- ```typescript
58
- const step = createStep({
59
- id: 'long-running-step',
60
- execute: async ({ inputData, abortSignal, abort }) => {
61
- const timeout = new Promise((resolve) => {
62
- const timer = setTimeout(() => resolve('done'), 10000);
63
-
64
- // Clean up if canceled
65
- abortSignal.addEventListener('abort', () => {
66
- clearTimeout(timer);
67
- resolve('canceled');
68
- });
69
- });
70
-
71
- const result = await timeout;
72
-
73
- // Check if aborted after async operation
74
- if (abortSignal.aborted) {
75
- return abort(); // Stop execution
76
- }
77
-
78
- return { result };
79
- }
80
- });
81
- ```
82
-
83
- ## Related
84
-
85
- - [Workflows overview](https://mastra.ai/docs/workflows/overview)
86
- - [Workflow.createRun()](https://mastra.ai/reference/workflows/workflow-methods/create-run)
@@ -1,33 +0,0 @@
1
- # Run.restart()
2
-
3
- The `.restart()` method restarts an active workflow run that lost connection to the server, allowing you to continue execution from the moment it lost connection (the last active step).
4
-
5
- ## Usage example
6
-
7
- ```typescript
8
- const run = await workflow.createRun();
9
-
10
- const result = await run.start({ inputData: { value: "initial data" } });
11
-
12
- const restartedResult = await run.restart();
13
- ```
14
-
15
- ## Parameters
16
-
17
- **requestContext?:** (`RequestContext`): Request Context data to use when resuming
18
-
19
- **tracingContext?:** (`TracingContext`): currentSpan?:SpanCurrent span for creating child spans and adding metadata. Use this to create custom child spans or update span attributes during execution.
20
-
21
- **tracingOptions?:** (`TracingOptions`): metadata?:Record\<string, any>Metadata to add to the root trace span. Useful for adding custom attributes like user IDs, session IDs, or feature flags.requestContextKeys?:string\[]Additional RequestContext keys to extract as metadata for this trace. Supports dot notation for nested values (e.g., 'user.id').traceId?:stringTrace ID to use for this execution (1-32 hexadecimal characters). If provided, this trace will be part of the specified trace.parentSpanId?:stringParent span ID to use for this execution (1-16 hexadecimal characters). If provided, the root span will be created as a child of this span.tags?:string\[]Tags to apply to this trace. String labels for categorizing and filtering traces.
22
-
23
- ## Returns
24
-
25
- **result:** (`Promise<WorkflowResult<TState, TOutput, TSteps>>`): A promise that resolves to the workflow execution result containing step outputs and status
26
-
27
- **traceId?:** (`string`): The trace ID associated with this execution when Tracing is enabled. Use this to correlate logs and debug execution flow.
28
-
29
- ## Related
30
-
31
- - [Workflows overview](https://mastra.ai/docs/workflows/overview)
32
- - [Restart workflows](https://mastra.ai/docs/workflows/overview)
33
- - [Workflow.createRun()](https://mastra.ai/reference/workflows/workflow-methods/create-run)
@@ -1,59 +0,0 @@
1
- # Run.resume()
2
-
3
- The `.resume()` method resumes a suspended workflow run with new data, allowing you to continue execution from a specific step.
4
-
5
- ## Usage example
6
-
7
- ```typescript
8
- const run = await workflow.createRun();
9
-
10
- const result = await run.start({ inputData: { value: "initial data" } });
11
-
12
- if (result.status === "suspended") {
13
- const resumedResults = await run.resume({
14
- resumeData: { value: "resume data" },
15
- });
16
- }
17
- ```
18
-
19
- ## Parameters
20
-
21
- **resumeData?:** (`z.infer<TResumeSchema>`): Data for resuming the suspended step
22
-
23
- **step?:** (`Step<string, any, any, TResumeSchema, any, TEngineType> | [...Step<string, any, any, any, any, TEngineType>[], Step<string, any, any, TResumeSchema, any, TEngineType>] | string | string[]`): The step(s) to resume execution from. Can be a Step instance, array of Steps, step ID string, or array of step ID strings
24
-
25
- **requestContext?:** (`RequestContext`): Request Context data to use when resuming
26
-
27
- **retryCount?:** (`number`): Optional retry count for nested workflow execution
28
-
29
- **tracingContext?:** (`TracingContext`): currentSpan?:SpanCurrent span for creating child spans and adding metadata. Use this to create custom child spans or update span attributes during execution.
30
-
31
- **tracingOptions?:** (`TracingOptions`): metadata?:Record\<string, any>Metadata to add to the root trace span. Useful for adding custom attributes like user IDs, session IDs, or feature flags.requestContextKeys?:string\[]Additional RequestContext keys to extract as metadata for this trace. Supports dot notation for nested values (e.g., 'user.id').traceId?:stringTrace ID to use for this execution (1-32 hexadecimal characters). If provided, this trace will be part of the specified trace.parentSpanId?:stringParent span ID to use for this execution (1-16 hexadecimal characters). If provided, the root span will be created as a child of this span.tags?:string\[]Tags to apply to this trace. String labels for categorizing and filtering traces.
32
-
33
- **outputOptions?:** (`OutputOptions`): includeState?:booleanWhether to include the workflow run state in the result.
34
-
35
- ## Returns
36
-
37
- **result:** (`Promise<WorkflowResult<TState, TOutput, TSteps>>`): A promise that resolves to the workflow execution result containing step outputs and status
38
-
39
- **traceId?:** (`string`): The trace ID associated with this execution when Tracing is enabled. Use this to correlate logs and debug execution flow.
40
-
41
- ## Extended usage example
42
-
43
- ```typescript
44
- if (result.status === "suspended") {
45
- const resumedResults = await run.resume({
46
- step: result.suspended[0],
47
- resumeData: { value: "resume data" },
48
- });
49
- }
50
- ```
51
-
52
- > **Note**: When exactly one step is suspended, you can omit the `step` parameter and the workflow will automatically resume that step. For workflows with multiple suspended steps, you must explicitly specify which step to resume.
53
-
54
- ## Related
55
-
56
- - [Workflows overview](https://mastra.ai/docs/workflows/overview)
57
- - [Workflow.createRun()](https://mastra.ai/reference/workflows/workflow-methods/create-run)
58
- - [Suspend and resume](https://mastra.ai/docs/workflows/suspend-and-resume)
59
- - [Human in the loop](https://mastra.ai/docs/workflows/human-in-the-loop)
@@ -1,58 +0,0 @@
1
- # Run.start()
2
-
3
- The `.start()` method starts a workflow run with input data, allowing you to execute the workflow from the beginning.
4
-
5
- ## Usage example
6
-
7
- ```typescript
8
- const run = await workflow.createRun();
9
-
10
- const result = await run.start({
11
- inputData: {
12
- value: "initial data",
13
- },
14
- });
15
- ```
16
-
17
- ## Parameters
18
-
19
- **inputData?:** (`z.infer<TInput>`): Input data that matches the workflow's input schema
20
-
21
- **requestContext?:** (`RequestContext`): Request Context data to use during workflow execution
22
-
23
- **outputWriter?:** (`(chunk: TOutput) => Promise<void>`): Optional asynchronous function to handle output chunks as they are produced
24
-
25
- **tracingContext?:** (`TracingContext`): currentSpan?:SpanCurrent span for creating child spans and adding metadata. Use this to create custom child spans or update span attributes during execution.
26
-
27
- **tracingOptions?:** (`TracingOptions`): metadata?:Record\<string, any>Metadata to add to the root trace span. Useful for adding custom attributes like user IDs, session IDs, or feature flags.requestContextKeys?:string\[]Additional RequestContext keys to extract as metadata for this trace. Supports dot notation for nested values (e.g., 'user.id').traceId?:stringTrace ID to use for this execution (1-32 hexadecimal characters). If provided, this trace will be part of the specified trace.parentSpanId?:stringParent span ID to use for this execution (1-16 hexadecimal characters). If provided, the root span will be created as a child of this span.tags?:string\[]Tags to apply to this trace. String labels for categorizing and filtering traces.
28
-
29
- **outputOptions?:** (`OutputOptions`): includeState?:booleanWhether to include the workflow run state in the result.
30
-
31
- ## Returns
32
-
33
- **result:** (`Promise<WorkflowResult<TState, TOutput, TSteps>>`): A promise that resolves to the workflow execution result containing step outputs and status
34
-
35
- **traceId?:** (`string`): The trace ID associated with this execution when Tracing is enabled. Use this to correlate logs and debug execution flow.
36
-
37
- ## Extended usage example
38
-
39
- ```typescript
40
- import { RequestContext } from "@mastra/core/request-context";
41
-
42
- const run = await workflow.createRun();
43
-
44
- const requestContext = new RequestContext();
45
- requestContext.set("variable", false);
46
-
47
- const result = await run.start({
48
- inputData: {
49
- value: "initial data",
50
- },
51
- requestContext,
52
- });
53
- ```
54
-
55
- ## Related
56
-
57
- - [Workflows overview](https://mastra.ai/docs/workflows/overview)
58
- - [Workflow.createRun()](https://mastra.ai/reference/workflows/workflow-methods/create-run)