@mastra/core 1.7.0 → 1.8.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 (498) hide show
  1. package/CHANGELOG.md +218 -0
  2. package/dist/agent/agent-legacy.d.ts +15 -0
  3. package/dist/agent/agent-legacy.d.ts.map +1 -1
  4. package/dist/agent/agent.d.ts +7 -0
  5. package/dist/agent/agent.d.ts.map +1 -1
  6. package/dist/agent/agent.types.d.ts +311 -2
  7. package/dist/agent/agent.types.d.ts.map +1 -1
  8. package/dist/agent/index.cjs +13 -13
  9. package/dist/agent/index.d.ts +3 -1
  10. package/dist/agent/index.d.ts.map +1 -1
  11. package/dist/agent/index.js +2 -2
  12. package/dist/agent/message-list/index.cjs +18 -18
  13. package/dist/agent/message-list/index.js +1 -1
  14. package/dist/agent/message-list/merge/MessageMerger.d.ts.map +1 -1
  15. package/dist/agent/message-list/message-list.d.ts.map +1 -1
  16. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -1
  17. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -1
  18. package/dist/{chunk-A72NTLFT.cjs → chunk-2IO5Q7OZ.cjs} +7 -7
  19. package/dist/{chunk-A72NTLFT.cjs.map → chunk-2IO5Q7OZ.cjs.map} +1 -1
  20. package/dist/{chunk-DFCRXDVK.js → chunk-2KHPZJNU.js} +10 -8
  21. package/dist/chunk-2KHPZJNU.js.map +1 -0
  22. package/dist/{chunk-R4N65TLG.js → chunk-2R5MQMSA.js} +35 -16
  23. package/dist/chunk-2R5MQMSA.js.map +1 -0
  24. package/dist/{chunk-ZSBM2SVU.js → chunk-4H5F6AFP.js} +1064 -226
  25. package/dist/chunk-4H5F6AFP.js.map +1 -0
  26. package/dist/{chunk-BQHWJLXU.js → chunk-63G75DJE.js} +9 -3
  27. package/dist/chunk-63G75DJE.js.map +1 -0
  28. package/dist/{chunk-SBOHDNIZ.cjs → chunk-6GSWC5ZA.cjs} +2 -2
  29. package/dist/{chunk-SBOHDNIZ.cjs.map → chunk-6GSWC5ZA.cjs.map} +1 -1
  30. package/dist/{chunk-QTAS3HND.cjs → chunk-6Q2UD3XF.cjs} +21 -14
  31. package/dist/chunk-6Q2UD3XF.cjs.map +1 -0
  32. package/dist/{chunk-GPJGPARM.js → chunk-DTPR3JAM.js} +2 -2
  33. package/dist/{chunk-GPJGPARM.js.map → chunk-DTPR3JAM.js.map} +1 -1
  34. package/dist/{chunk-NN26FSKL.js → chunk-FHJ2KIU5.js} +3 -3
  35. package/dist/{chunk-NN26FSKL.js.map → chunk-FHJ2KIU5.js.map} +1 -1
  36. package/dist/{chunk-RABITNTG.cjs → chunk-HWG7NPJA.cjs} +55 -55
  37. package/dist/{chunk-RABITNTG.cjs.map → chunk-HWG7NPJA.cjs.map} +1 -1
  38. package/dist/{chunk-HB6T4554.cjs → chunk-KH3G65IS.cjs} +10 -8
  39. package/dist/chunk-KH3G65IS.cjs.map +1 -0
  40. package/dist/{chunk-YQG7NBPR.cjs → chunk-KZ4IKNPN.cjs} +25 -23
  41. package/dist/chunk-KZ4IKNPN.cjs.map +1 -0
  42. package/dist/{chunk-6DUTLERJ.js → chunk-MRV5NCPC.js} +3 -3
  43. package/dist/{chunk-6DUTLERJ.js.map → chunk-MRV5NCPC.js.map} +1 -1
  44. package/dist/{chunk-O7PZ4VOO.cjs → chunk-N3ROEJG4.cjs} +12 -10
  45. package/dist/chunk-N3ROEJG4.cjs.map +1 -0
  46. package/dist/{chunk-7EXW4AAG.js → chunk-NXKI2L4X.js} +6 -4
  47. package/dist/chunk-NXKI2L4X.js.map +1 -0
  48. package/dist/{chunk-QWTB53GS.js → chunk-OSEPGSLN.js} +6 -6
  49. package/dist/{chunk-QWTB53GS.js.map → chunk-OSEPGSLN.js.map} +1 -1
  50. package/dist/{chunk-6OXW5E2O.js → chunk-PI7ONENO.js} +4 -4
  51. package/dist/{chunk-6OXW5E2O.js.map → chunk-PI7ONENO.js.map} +1 -1
  52. package/dist/{chunk-KUXNBWN7.js → chunk-Q4MV4XKX.js} +8 -6
  53. package/dist/chunk-Q4MV4XKX.js.map +1 -0
  54. package/dist/{chunk-7UAJ6LMR.cjs → chunk-QKQGKEN7.cjs} +1078 -241
  55. package/dist/chunk-QKQGKEN7.cjs.map +1 -0
  56. package/dist/{chunk-IC5OUWKJ.js → chunk-SP7P6Z4L.js} +19 -2
  57. package/dist/chunk-SP7P6Z4L.js.map +1 -0
  58. package/dist/{chunk-QDH6MVJ7.cjs → chunk-TGUDI64A.cjs} +14 -14
  59. package/dist/{chunk-QDH6MVJ7.cjs.map → chunk-TGUDI64A.cjs.map} +1 -1
  60. package/dist/{chunk-EAZ6YDCQ.cjs → chunk-U3HBG2GU.cjs} +9 -2
  61. package/dist/chunk-U3HBG2GU.cjs.map +1 -0
  62. package/dist/{chunk-6QBN6MZY.cjs → chunk-VAKB5EXJ.cjs} +42 -23
  63. package/dist/chunk-VAKB5EXJ.cjs.map +1 -0
  64. package/dist/{chunk-QSHV7GPT.js → chunk-VBPU6CLZ.js} +3808 -3026
  65. package/dist/chunk-VBPU6CLZ.js.map +1 -0
  66. package/dist/{chunk-2X66GWF5.cjs → chunk-VTVCMIAI.cjs} +3905 -3121
  67. package/dist/chunk-VTVCMIAI.cjs.map +1 -0
  68. package/dist/{chunk-PHHJLGZU.cjs → chunk-XNWF6CYR.cjs} +6 -6
  69. package/dist/{chunk-PHHJLGZU.cjs.map → chunk-XNWF6CYR.cjs.map} +1 -1
  70. package/dist/{chunk-T6GAM3SQ.js → chunk-ZRPTWYWJ.js} +18 -11
  71. package/dist/chunk-ZRPTWYWJ.js.map +1 -0
  72. package/dist/{chunk-DB7U2C5B.cjs → chunk-ZXOWG32X.cjs} +19 -2
  73. package/dist/chunk-ZXOWG32X.cjs.map +1 -0
  74. package/dist/datasets/experiment/index.d.ts.map +1 -1
  75. package/dist/datasets/experiment/scorer.d.ts +1 -1
  76. package/dist/datasets/experiment/scorer.d.ts.map +1 -1
  77. package/dist/datasets/index.cjs +17 -17
  78. package/dist/datasets/index.js +2 -2
  79. package/dist/docs/SKILL.md +300 -0
  80. package/dist/docs/assets/SOURCE_MAP.json +1423 -0
  81. package/dist/docs/references/docs-agents-adding-voice.md +349 -0
  82. package/dist/docs/references/docs-agents-agent-approval.md +558 -0
  83. package/dist/docs/references/docs-agents-agent-memory.md +209 -0
  84. package/dist/docs/references/docs-agents-guardrails.md +374 -0
  85. package/dist/docs/references/docs-agents-network-approval.md +275 -0
  86. package/dist/docs/references/docs-agents-networks.md +299 -0
  87. package/dist/docs/references/docs-agents-overview.md +304 -0
  88. package/dist/docs/references/docs-agents-processors.md +622 -0
  89. package/dist/docs/references/docs-agents-structured-output.md +273 -0
  90. package/dist/docs/references/docs-agents-supervisor-agents.md +304 -0
  91. package/dist/docs/references/docs-agents-using-tools.md +214 -0
  92. package/dist/docs/references/docs-evals-custom-scorers.md +519 -0
  93. package/dist/docs/references/docs-evals-overview.md +141 -0
  94. package/dist/docs/references/docs-evals-running-in-ci.md +124 -0
  95. package/dist/docs/references/docs-memory-memory-processors.md +314 -0
  96. package/dist/docs/references/docs-memory-observational-memory.md +248 -0
  97. package/dist/docs/references/docs-memory-overview.md +45 -0
  98. package/dist/docs/references/docs-memory-semantic-recall.md +272 -0
  99. package/dist/docs/references/docs-memory-storage.md +261 -0
  100. package/dist/docs/references/docs-memory-working-memory.md +400 -0
  101. package/dist/docs/references/docs-observability-datasets-overview.md +198 -0
  102. package/dist/docs/references/docs-observability-datasets-running-experiments.md +274 -0
  103. package/dist/docs/references/docs-observability-logging.md +99 -0
  104. package/dist/docs/references/docs-observability-overview.md +70 -0
  105. package/dist/docs/references/docs-observability-tracing-bridges-otel.md +209 -0
  106. package/dist/docs/references/docs-observability-tracing-exporters-arize.md +272 -0
  107. package/dist/docs/references/docs-observability-tracing-exporters-braintrust.md +111 -0
  108. package/dist/docs/references/docs-observability-tracing-exporters-cloud.md +127 -0
  109. package/dist/docs/references/docs-observability-tracing-exporters-datadog.md +187 -0
  110. package/dist/docs/references/docs-observability-tracing-exporters-default.md +209 -0
  111. package/dist/docs/references/docs-observability-tracing-exporters-laminar.md +100 -0
  112. package/dist/docs/references/docs-observability-tracing-exporters-langfuse.md +213 -0
  113. package/dist/docs/references/docs-observability-tracing-exporters-langsmith.md +198 -0
  114. package/dist/docs/references/docs-observability-tracing-exporters-otel.md +476 -0
  115. package/dist/docs/references/docs-observability-tracing-exporters-posthog.md +148 -0
  116. package/dist/docs/references/docs-observability-tracing-overview.md +1112 -0
  117. package/dist/docs/references/docs-rag-chunking-and-embedding.md +183 -0
  118. package/dist/docs/references/docs-rag-graph-rag.md +215 -0
  119. package/dist/docs/references/docs-rag-overview.md +72 -0
  120. package/dist/docs/references/docs-rag-retrieval.md +515 -0
  121. package/dist/docs/references/docs-rag-vector-databases.md +645 -0
  122. package/dist/docs/references/docs-server-auth-auth0.md +220 -0
  123. package/dist/docs/references/docs-server-auth-clerk.md +132 -0
  124. package/dist/docs/references/docs-server-auth-composite-auth.md +234 -0
  125. package/dist/docs/references/docs-server-auth-custom-auth-provider.md +513 -0
  126. package/dist/docs/references/docs-server-auth-firebase.md +272 -0
  127. package/dist/docs/references/docs-server-auth-jwt.md +110 -0
  128. package/dist/docs/references/docs-server-auth-simple-auth.md +180 -0
  129. package/dist/docs/references/docs-server-auth-supabase.md +117 -0
  130. package/dist/docs/references/docs-server-auth-workos.md +186 -0
  131. package/dist/docs/references/docs-server-custom-adapters.md +378 -0
  132. package/dist/docs/references/docs-server-custom-api-routes.md +267 -0
  133. package/dist/docs/references/docs-server-mastra-client.md +243 -0
  134. package/dist/docs/references/docs-server-mastra-server.md +71 -0
  135. package/dist/docs/references/docs-server-middleware.md +225 -0
  136. package/dist/docs/references/docs-server-request-context.md +471 -0
  137. package/dist/docs/references/docs-streaming-events.md +237 -0
  138. package/dist/docs/references/docs-streaming-tool-streaming.md +175 -0
  139. package/dist/docs/references/docs-streaming-workflow-streaming.md +109 -0
  140. package/dist/docs/references/docs-voice-overview.md +959 -0
  141. package/dist/docs/references/docs-voice-speech-to-speech.md +102 -0
  142. package/dist/docs/references/docs-voice-speech-to-text.md +79 -0
  143. package/dist/docs/references/docs-voice-text-to-speech.md +83 -0
  144. package/dist/docs/references/docs-workflows-agents-and-tools.md +166 -0
  145. package/dist/docs/references/docs-workflows-control-flow.md +822 -0
  146. package/dist/docs/references/docs-workflows-error-handling.md +360 -0
  147. package/dist/docs/references/docs-workflows-human-in-the-loop.md +215 -0
  148. package/dist/docs/references/docs-workflows-overview.md +370 -0
  149. package/dist/docs/references/docs-workflows-snapshots.md +238 -0
  150. package/dist/docs/references/docs-workflows-suspend-and-resume.md +205 -0
  151. package/dist/docs/references/docs-workflows-time-travel.md +309 -0
  152. package/dist/docs/references/docs-workflows-workflow-state.md +181 -0
  153. package/dist/docs/references/docs-workspace-filesystem.md +164 -0
  154. package/dist/docs/references/docs-workspace-overview.md +239 -0
  155. package/dist/docs/references/docs-workspace-sandbox.md +63 -0
  156. package/dist/docs/references/docs-workspace-search.md +243 -0
  157. package/dist/docs/references/docs-workspace-skills.md +169 -0
  158. package/dist/docs/references/guides-agent-frameworks-ai-sdk.md +140 -0
  159. package/dist/docs/references/reference-agents-agent.md +141 -0
  160. package/dist/docs/references/reference-agents-generate.md +186 -0
  161. package/dist/docs/references/reference-agents-generateLegacy.md +173 -0
  162. package/dist/docs/references/reference-agents-getDefaultGenerateOptions.md +36 -0
  163. package/dist/docs/references/reference-agents-getDefaultOptions.md +34 -0
  164. package/dist/docs/references/reference-agents-getDefaultStreamOptions.md +36 -0
  165. package/dist/docs/references/reference-agents-getDescription.md +21 -0
  166. package/dist/docs/references/reference-agents-getInstructions.md +34 -0
  167. package/dist/docs/references/reference-agents-getLLM.md +37 -0
  168. package/dist/docs/references/reference-agents-getMemory.md +34 -0
  169. package/dist/docs/references/reference-agents-getModel.md +34 -0
  170. package/dist/docs/references/reference-agents-getTools.md +29 -0
  171. package/dist/docs/references/reference-agents-getVoice.md +34 -0
  172. package/dist/docs/references/reference-agents-listAgents.md +35 -0
  173. package/dist/docs/references/reference-agents-listScorers.md +34 -0
  174. package/dist/docs/references/reference-agents-listTools.md +34 -0
  175. package/dist/docs/references/reference-agents-listWorkflows.md +34 -0
  176. package/dist/docs/references/reference-agents-network.md +133 -0
  177. package/dist/docs/references/reference-ai-sdk-chat-route.md +82 -0
  178. package/dist/docs/references/reference-ai-sdk-network-route.md +74 -0
  179. package/dist/docs/references/reference-ai-sdk-to-ai-sdk-stream.md +231 -0
  180. package/dist/docs/references/reference-ai-sdk-with-mastra.md +59 -0
  181. package/dist/docs/references/reference-ai-sdk-workflow-route.md +79 -0
  182. package/dist/docs/references/reference-auth-auth0.md +73 -0
  183. package/dist/docs/references/reference-auth-clerk.md +36 -0
  184. package/dist/docs/references/reference-auth-firebase.md +80 -0
  185. package/dist/docs/references/reference-auth-jwt.md +26 -0
  186. package/dist/docs/references/reference-auth-supabase.md +33 -0
  187. package/dist/docs/references/reference-auth-workos.md +84 -0
  188. package/dist/docs/references/reference-client-js-agents.md +437 -0
  189. package/dist/docs/references/reference-configuration.md +752 -0
  190. package/dist/docs/references/reference-core-addGateway.md +42 -0
  191. package/dist/docs/references/reference-core-getAgent.md +21 -0
  192. package/dist/docs/references/reference-core-getAgentById.md +21 -0
  193. package/dist/docs/references/reference-core-getDeployer.md +22 -0
  194. package/dist/docs/references/reference-core-getGateway.md +38 -0
  195. package/dist/docs/references/reference-core-getGatewayById.md +41 -0
  196. package/dist/docs/references/reference-core-getLogger.md +22 -0
  197. package/dist/docs/references/reference-core-getMCPServer.md +47 -0
  198. package/dist/docs/references/reference-core-getMCPServerById.md +55 -0
  199. package/dist/docs/references/reference-core-getMemory.md +50 -0
  200. package/dist/docs/references/reference-core-getScorer.md +54 -0
  201. package/dist/docs/references/reference-core-getScorerById.md +54 -0
  202. package/dist/docs/references/reference-core-getServer.md +22 -0
  203. package/dist/docs/references/reference-core-getStorage.md +22 -0
  204. package/dist/docs/references/reference-core-getStoredAgentById.md +89 -0
  205. package/dist/docs/references/reference-core-getTelemetry.md +22 -0
  206. package/dist/docs/references/reference-core-getVector.md +22 -0
  207. package/dist/docs/references/reference-core-getWorkflow.md +42 -0
  208. package/dist/docs/references/reference-core-listAgents.md +21 -0
  209. package/dist/docs/references/reference-core-listGateways.md +40 -0
  210. package/dist/docs/references/reference-core-listLogs.md +38 -0
  211. package/dist/docs/references/reference-core-listLogsByRunId.md +36 -0
  212. package/dist/docs/references/reference-core-listMCPServers.md +55 -0
  213. package/dist/docs/references/reference-core-listMemory.md +56 -0
  214. package/dist/docs/references/reference-core-listScorers.md +29 -0
  215. package/dist/docs/references/reference-core-listStoredAgents.md +93 -0
  216. package/dist/docs/references/reference-core-listVectors.md +22 -0
  217. package/dist/docs/references/reference-core-listWorkflows.md +21 -0
  218. package/dist/docs/references/reference-core-mastra-class.md +66 -0
  219. package/dist/docs/references/reference-core-mastra-model-gateway.md +153 -0
  220. package/dist/docs/references/reference-core-setLogger.md +26 -0
  221. package/dist/docs/references/reference-core-setStorage.md +27 -0
  222. package/dist/docs/references/reference-datasets-addItem.md +37 -0
  223. package/dist/docs/references/reference-datasets-addItems.md +35 -0
  224. package/dist/docs/references/reference-datasets-compareExperiments.md +52 -0
  225. package/dist/docs/references/reference-datasets-create.md +51 -0
  226. package/dist/docs/references/reference-datasets-dataset.md +82 -0
  227. package/dist/docs/references/reference-datasets-datasets-manager.md +94 -0
  228. package/dist/docs/references/reference-datasets-delete.md +25 -0
  229. package/dist/docs/references/reference-datasets-deleteExperiment.md +27 -0
  230. package/dist/docs/references/reference-datasets-deleteItem.md +27 -0
  231. package/dist/docs/references/reference-datasets-deleteItems.md +29 -0
  232. package/dist/docs/references/reference-datasets-get.md +31 -0
  233. package/dist/docs/references/reference-datasets-getDetails.md +47 -0
  234. package/dist/docs/references/reference-datasets-getExperiment.md +30 -0
  235. package/dist/docs/references/reference-datasets-getItem.md +33 -0
  236. package/dist/docs/references/reference-datasets-getItemHistory.md +31 -0
  237. package/dist/docs/references/reference-datasets-list.md +31 -0
  238. package/dist/docs/references/reference-datasets-listExperimentResults.md +39 -0
  239. package/dist/docs/references/reference-datasets-listExperiments.md +33 -0
  240. package/dist/docs/references/reference-datasets-listItems.md +46 -0
  241. package/dist/docs/references/reference-datasets-listVersions.md +33 -0
  242. package/dist/docs/references/reference-datasets-startExperiment.md +62 -0
  243. package/dist/docs/references/reference-datasets-startExperimentAsync.md +43 -0
  244. package/dist/docs/references/reference-datasets-update.md +48 -0
  245. package/dist/docs/references/reference-datasets-updateItem.md +38 -0
  246. package/dist/docs/references/reference-evals-answer-relevancy.md +105 -0
  247. package/dist/docs/references/reference-evals-answer-similarity.md +99 -0
  248. package/dist/docs/references/reference-evals-bias.md +120 -0
  249. package/dist/docs/references/reference-evals-completeness.md +136 -0
  250. package/dist/docs/references/reference-evals-content-similarity.md +101 -0
  251. package/dist/docs/references/reference-evals-context-precision.md +196 -0
  252. package/dist/docs/references/reference-evals-create-scorer.md +270 -0
  253. package/dist/docs/references/reference-evals-faithfulness.md +114 -0
  254. package/dist/docs/references/reference-evals-hallucination.md +213 -0
  255. package/dist/docs/references/reference-evals-keyword-coverage.md +128 -0
  256. package/dist/docs/references/reference-evals-mastra-scorer.md +123 -0
  257. package/dist/docs/references/reference-evals-run-evals.md +179 -0
  258. package/dist/docs/references/reference-evals-scorer-utils.md +326 -0
  259. package/dist/docs/references/reference-evals-textual-difference.md +113 -0
  260. package/dist/docs/references/reference-evals-tone-consistency.md +119 -0
  261. package/dist/docs/references/reference-evals-toxicity.md +123 -0
  262. package/dist/docs/references/reference-harness-harness-class.md +708 -0
  263. package/dist/docs/references/reference-logging-pino-logger.md +117 -0
  264. package/dist/docs/references/reference-memory-deleteMessages.md +38 -0
  265. package/dist/docs/references/reference-memory-memory-class.md +147 -0
  266. package/dist/docs/references/reference-memory-observational-memory.md +565 -0
  267. package/dist/docs/references/reference-observability-tracing-bridges-otel.md +131 -0
  268. package/dist/docs/references/reference-observability-tracing-configuration.md +178 -0
  269. package/dist/docs/references/reference-observability-tracing-exporters-console-exporter.md +138 -0
  270. package/dist/docs/references/reference-observability-tracing-exporters-datadog.md +116 -0
  271. package/dist/docs/references/reference-observability-tracing-instances.md +107 -0
  272. package/dist/docs/references/reference-observability-tracing-interfaces.md +743 -0
  273. package/dist/docs/references/reference-observability-tracing-processors-sensitive-data-filter.md +144 -0
  274. package/dist/docs/references/reference-observability-tracing-spans.md +224 -0
  275. package/dist/docs/references/reference-processors-batch-parts-processor.md +61 -0
  276. package/dist/docs/references/reference-processors-language-detector.md +82 -0
  277. package/dist/docs/references/reference-processors-message-history-processor.md +85 -0
  278. package/dist/docs/references/reference-processors-moderation-processor.md +104 -0
  279. package/dist/docs/references/reference-processors-pii-detector.md +108 -0
  280. package/dist/docs/references/reference-processors-processor-interface.md +521 -0
  281. package/dist/docs/references/reference-processors-prompt-injection-detector.md +72 -0
  282. package/dist/docs/references/reference-processors-semantic-recall-processor.md +117 -0
  283. package/dist/docs/references/reference-processors-system-prompt-scrubber.md +80 -0
  284. package/dist/docs/references/reference-processors-token-limiter-processor.md +115 -0
  285. package/dist/docs/references/reference-processors-tool-call-filter.md +85 -0
  286. package/dist/docs/references/reference-processors-tool-search-processor.md +111 -0
  287. package/dist/docs/references/reference-processors-unicode-normalizer.md +62 -0
  288. package/dist/docs/references/reference-processors-working-memory-processor.md +152 -0
  289. package/dist/docs/references/reference-rag-database-config.md +261 -0
  290. package/dist/docs/references/reference-rag-embeddings.md +92 -0
  291. package/dist/docs/references/reference-server-mastra-server.md +298 -0
  292. package/dist/docs/references/reference-server-register-api-route.md +249 -0
  293. package/dist/docs/references/reference-storage-cloudflare-d1.md +218 -0
  294. package/dist/docs/references/reference-storage-composite.md +235 -0
  295. package/dist/docs/references/reference-storage-lance.md +131 -0
  296. package/dist/docs/references/reference-storage-libsql.md +135 -0
  297. package/dist/docs/references/reference-storage-mongodb.md +262 -0
  298. package/dist/docs/references/reference-storage-mssql.md +157 -0
  299. package/dist/docs/references/reference-storage-overview.md +121 -0
  300. package/dist/docs/references/reference-storage-postgresql.md +526 -0
  301. package/dist/docs/references/reference-storage-upstash.md +160 -0
  302. package/dist/docs/references/reference-streaming-ChunkType.md +292 -0
  303. package/dist/docs/references/reference-streaming-agents-MastraModelOutput.md +182 -0
  304. package/dist/docs/references/reference-streaming-agents-streamLegacy.md +142 -0
  305. package/dist/docs/references/reference-streaming-workflows-observeStream.md +42 -0
  306. package/dist/docs/references/reference-streaming-workflows-resumeStream.md +61 -0
  307. package/dist/docs/references/reference-streaming-workflows-stream.md +88 -0
  308. package/dist/docs/references/reference-streaming-workflows-timeTravelStream.md +142 -0
  309. package/dist/docs/references/reference-templates-overview.md +194 -0
  310. package/dist/docs/references/reference-tools-create-tool.md +237 -0
  311. package/dist/docs/references/reference-tools-graph-rag-tool.md +182 -0
  312. package/dist/docs/references/reference-tools-mcp-client.md +954 -0
  313. package/dist/docs/references/reference-tools-mcp-server.md +1271 -0
  314. package/dist/docs/references/reference-tools-vector-query-tool.md +459 -0
  315. package/dist/docs/references/reference-vectors-libsql.md +305 -0
  316. package/dist/docs/references/reference-vectors-mongodb.md +295 -0
  317. package/dist/docs/references/reference-vectors-pg.md +408 -0
  318. package/dist/docs/references/reference-vectors-upstash.md +294 -0
  319. package/dist/docs/references/reference-voice-composite-voice.md +121 -0
  320. package/dist/docs/references/reference-voice-mastra-voice.md +311 -0
  321. package/dist/docs/references/reference-voice-voice.addInstructions.md +55 -0
  322. package/dist/docs/references/reference-voice-voice.addTools.md +67 -0
  323. package/dist/docs/references/reference-voice-voice.connect.md +94 -0
  324. package/dist/docs/references/reference-voice-voice.events.md +37 -0
  325. package/dist/docs/references/reference-voice-voice.listen.md +164 -0
  326. package/dist/docs/references/reference-voice-voice.on.md +111 -0
  327. package/dist/docs/references/reference-voice-voice.speak.md +157 -0
  328. package/dist/docs/references/reference-workflows-run-methods-cancel.md +86 -0
  329. package/dist/docs/references/reference-workflows-run-methods-restart.md +33 -0
  330. package/dist/docs/references/reference-workflows-run-methods-resume.md +59 -0
  331. package/dist/docs/references/reference-workflows-run-methods-start.md +58 -0
  332. package/dist/docs/references/reference-workflows-run-methods-startAsync.md +67 -0
  333. package/dist/docs/references/reference-workflows-run-methods-timeTravel.md +142 -0
  334. package/dist/docs/references/reference-workflows-run.md +59 -0
  335. package/dist/docs/references/reference-workflows-step.md +119 -0
  336. package/dist/docs/references/reference-workflows-workflow-methods-branch.md +25 -0
  337. package/dist/docs/references/reference-workflows-workflow-methods-commit.md +17 -0
  338. package/dist/docs/references/reference-workflows-workflow-methods-create-run.md +63 -0
  339. package/dist/docs/references/reference-workflows-workflow-methods-dountil.md +25 -0
  340. package/dist/docs/references/reference-workflows-workflow-methods-dowhile.md +25 -0
  341. package/dist/docs/references/reference-workflows-workflow-methods-foreach.md +118 -0
  342. package/dist/docs/references/reference-workflows-workflow-methods-map.md +93 -0
  343. package/dist/docs/references/reference-workflows-workflow-methods-parallel.md +21 -0
  344. package/dist/docs/references/reference-workflows-workflow-methods-sleep.md +35 -0
  345. package/dist/docs/references/reference-workflows-workflow-methods-sleepUntil.md +35 -0
  346. package/dist/docs/references/reference-workflows-workflow-methods-then.md +21 -0
  347. package/dist/docs/references/reference-workflows-workflow.md +157 -0
  348. package/dist/docs/references/reference-workspace-filesystem.md +255 -0
  349. package/dist/docs/references/reference-workspace-local-filesystem.md +343 -0
  350. package/dist/docs/references/reference-workspace-local-sandbox.md +301 -0
  351. package/dist/docs/references/reference-workspace-sandbox.md +87 -0
  352. package/dist/docs/references/reference-workspace-workspace-class.md +244 -0
  353. package/dist/docs/references/reference.md +277 -0
  354. package/dist/evals/index.cjs +20 -20
  355. package/dist/evals/index.js +3 -3
  356. package/dist/evals/run/index.d.ts +9 -2
  357. package/dist/evals/run/index.d.ts.map +1 -1
  358. package/dist/evals/scoreTraces/index.cjs +5 -5
  359. package/dist/evals/scoreTraces/index.js +2 -2
  360. package/dist/harness/harness.d.ts +6 -0
  361. package/dist/harness/harness.d.ts.map +1 -1
  362. package/dist/harness/index.cjs +28 -13
  363. package/dist/harness/index.cjs.map +1 -1
  364. package/dist/harness/index.js +20 -5
  365. package/dist/harness/index.js.map +1 -1
  366. package/dist/index.cjs +2 -2
  367. package/dist/index.js +1 -1
  368. package/dist/integration/index.cjs +2 -2
  369. package/dist/integration/index.js +1 -1
  370. package/dist/llm/index.cjs +6 -6
  371. package/dist/llm/index.js +1 -1
  372. package/dist/llm/model/embedding-router.d.ts.map +1 -1
  373. package/dist/llm/model/model.loop.d.ts +1 -1
  374. package/dist/llm/model/model.loop.d.ts.map +1 -1
  375. package/dist/loop/index.cjs +20 -12
  376. package/dist/loop/index.js +1 -1
  377. package/dist/loop/network/index.d.ts.map +1 -1
  378. package/dist/loop/network/validation.d.ts +51 -0
  379. package/dist/loop/network/validation.d.ts.map +1 -1
  380. package/dist/loop/test-utils/generateText.d.ts.map +1 -1
  381. package/dist/loop/test-utils/options.d.ts.map +1 -1
  382. package/dist/loop/test-utils/streamObject.d.ts.map +1 -1
  383. package/dist/loop/types.d.ts +15 -0
  384. package/dist/loop/types.d.ts.map +1 -1
  385. package/dist/loop/workflows/agentic-execution/index.d.ts +3 -0
  386. package/dist/loop/workflows/agentic-execution/index.d.ts.map +1 -1
  387. package/dist/loop/workflows/agentic-execution/is-task-complete-step.d.ts +126 -0
  388. package/dist/loop/workflows/agentic-execution/is-task-complete-step.d.ts.map +1 -0
  389. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +3 -1
  390. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
  391. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +1 -0
  392. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -1
  393. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -1
  394. package/dist/loop/workflows/agentic-loop/index.d.ts +3 -0
  395. package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -1
  396. package/dist/loop/workflows/schema.d.ts +3 -0
  397. package/dist/loop/workflows/schema.d.ts.map +1 -1
  398. package/dist/mastra/index.cjs +2 -2
  399. package/dist/mastra/index.d.ts +9 -5
  400. package/dist/mastra/index.d.ts.map +1 -1
  401. package/dist/mastra/index.js +1 -1
  402. package/dist/memory/index.cjs +14 -14
  403. package/dist/memory/index.js +1 -1
  404. package/dist/processor-provider/index.cjs +10 -10
  405. package/dist/processor-provider/index.js +1 -1
  406. package/dist/processors/index.cjs +42 -42
  407. package/dist/processors/index.js +1 -1
  408. package/dist/processors/processors/skills.d.ts.map +1 -1
  409. package/dist/relevance/index.cjs +3 -3
  410. package/dist/relevance/index.js +1 -1
  411. package/dist/storage/constants.cjs +56 -56
  412. package/dist/storage/constants.js +1 -1
  413. package/dist/storage/domains/memory/inmemory.d.ts.map +1 -1
  414. package/dist/storage/index.cjs +160 -160
  415. package/dist/storage/index.js +2 -2
  416. package/dist/storage/types.d.ts +2 -3
  417. package/dist/storage/types.d.ts.map +1 -1
  418. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts.map +1 -1
  419. package/dist/stream/base/output.d.ts +1 -0
  420. package/dist/stream/base/output.d.ts.map +1 -1
  421. package/dist/stream/index.cjs +11 -11
  422. package/dist/stream/index.js +2 -2
  423. package/dist/stream/types.d.ts +27 -1
  424. package/dist/stream/types.d.ts.map +1 -1
  425. package/dist/test-utils/llm-mock.cjs +4 -4
  426. package/dist/test-utils/llm-mock.js +1 -1
  427. package/dist/tool-loop-agent/index.cjs +4 -4
  428. package/dist/tool-loop-agent/index.js +1 -1
  429. package/dist/tools/index.cjs +9 -5
  430. package/dist/tools/index.d.ts +1 -1
  431. package/dist/tools/index.d.ts.map +1 -1
  432. package/dist/tools/index.js +1 -1
  433. package/dist/tools/is-vercel-tool.cjs +2 -2
  434. package/dist/tools/is-vercel-tool.js +1 -1
  435. package/dist/tools/toolchecks.d.ts +10 -0
  436. package/dist/tools/toolchecks.d.ts.map +1 -1
  437. package/dist/utils.cjs +23 -23
  438. package/dist/utils.js +1 -1
  439. package/dist/vector/index.cjs +7 -7
  440. package/dist/vector/index.js +1 -1
  441. package/dist/vector/types.d.ts +9 -1
  442. package/dist/vector/types.d.ts.map +1 -1
  443. package/dist/workflows/evented/index.cjs +10 -10
  444. package/dist/workflows/evented/index.js +1 -1
  445. package/dist/workflows/index.cjs +25 -25
  446. package/dist/workflows/index.js +1 -1
  447. package/dist/workflows/types.d.ts +14 -1
  448. package/dist/workflows/types.d.ts.map +1 -1
  449. package/dist/workflows/workflow.d.ts +3 -17
  450. package/dist/workflows/workflow.d.ts.map +1 -1
  451. package/dist/workspace/filesystem/composite-filesystem.d.ts +5 -0
  452. package/dist/workspace/filesystem/composite-filesystem.d.ts.map +1 -1
  453. package/dist/workspace/filesystem/filesystem.d.ts +12 -0
  454. package/dist/workspace/filesystem/filesystem.d.ts.map +1 -1
  455. package/dist/workspace/filesystem/fs-utils.d.ts +12 -0
  456. package/dist/workspace/filesystem/fs-utils.d.ts.map +1 -1
  457. package/dist/workspace/filesystem/local-filesystem.d.ts +6 -0
  458. package/dist/workspace/filesystem/local-filesystem.d.ts.map +1 -1
  459. package/dist/workspace/index.cjs +66 -66
  460. package/dist/workspace/index.js +1 -1
  461. package/dist/workspace/lsp/client.d.ts +76 -0
  462. package/dist/workspace/lsp/client.d.ts.map +1 -0
  463. package/dist/workspace/lsp/index.d.ts +6 -0
  464. package/dist/workspace/lsp/index.d.ts.map +1 -0
  465. package/dist/workspace/lsp/language.d.ts +16 -0
  466. package/dist/workspace/lsp/language.d.ts.map +1 -0
  467. package/dist/workspace/lsp/manager.d.ts +72 -0
  468. package/dist/workspace/lsp/manager.d.ts.map +1 -0
  469. package/dist/workspace/lsp/servers.d.ts +43 -0
  470. package/dist/workspace/lsp/servers.d.ts.map +1 -0
  471. package/dist/workspace/lsp/types.d.ts +45 -0
  472. package/dist/workspace/lsp/types.d.ts.map +1 -0
  473. package/dist/workspace/tools/ast-edit.d.ts.map +1 -1
  474. package/dist/workspace/tools/edit-file.d.ts.map +1 -1
  475. package/dist/workspace/tools/helpers.d.ts +13 -0
  476. package/dist/workspace/tools/helpers.d.ts.map +1 -1
  477. package/dist/workspace/tools/write-file.d.ts.map +1 -1
  478. package/dist/workspace/workspace.d.ts +33 -0
  479. package/dist/workspace/workspace.d.ts.map +1 -1
  480. package/package.json +10 -8
  481. package/dist/chunk-2X66GWF5.cjs.map +0 -1
  482. package/dist/chunk-6QBN6MZY.cjs.map +0 -1
  483. package/dist/chunk-7EXW4AAG.js.map +0 -1
  484. package/dist/chunk-7UAJ6LMR.cjs.map +0 -1
  485. package/dist/chunk-BQHWJLXU.js.map +0 -1
  486. package/dist/chunk-DB7U2C5B.cjs.map +0 -1
  487. package/dist/chunk-DFCRXDVK.js.map +0 -1
  488. package/dist/chunk-EAZ6YDCQ.cjs.map +0 -1
  489. package/dist/chunk-HB6T4554.cjs.map +0 -1
  490. package/dist/chunk-IC5OUWKJ.js.map +0 -1
  491. package/dist/chunk-KUXNBWN7.js.map +0 -1
  492. package/dist/chunk-O7PZ4VOO.cjs.map +0 -1
  493. package/dist/chunk-QSHV7GPT.js.map +0 -1
  494. package/dist/chunk-QTAS3HND.cjs.map +0 -1
  495. package/dist/chunk-R4N65TLG.js.map +0 -1
  496. package/dist/chunk-T6GAM3SQ.js.map +0 -1
  497. package/dist/chunk-YQG7NBPR.cjs.map +0 -1
  498. package/dist/chunk-ZSBM2SVU.js.map +0 -1
@@ -0,0 +1,743 @@
1
+ # Interfaces
2
+
3
+ ## Core Interfaces
4
+
5
+ ### ObservabilityInstance
6
+
7
+ Primary interface for observability.
8
+
9
+ ```typescript
10
+ interface ObservabilityInstance {
11
+ /** Get current configuration */
12
+ getConfig(): Readonly<Required<ObservabilityInstanceConfig>>
13
+
14
+ /** Get all exporters */
15
+ getExporters(): readonly ObservabilityExporter[]
16
+
17
+ /** Get all span output processors */
18
+ getSpanOutputProcessors(): readonly SpanOutputProcessor[]
19
+
20
+ /** Get the logger instance (for exporters and other components) */
21
+ getLogger(): IMastraLogger
22
+
23
+ /** Start a new span of a specific SpanType */
24
+ startSpan<TType extends SpanType>(options: StartSpanOptions<TType>): Span<TType>
25
+
26
+ /** Force flush any buffered spans without shutting down */
27
+ flush(): Promise<void>
28
+
29
+ /** Shutdown observability and clean up resources */
30
+ shutdown(): Promise<void>
31
+ }
32
+ ```
33
+
34
+ ### SpanTypeMap
35
+
36
+ Mapping of span types to their corresponding attribute interfaces.
37
+
38
+ ```typescript
39
+ interface SpanTypeMap {
40
+ AGENT_RUN: AgentRunAttributes
41
+ WORKFLOW_RUN: WorkflowRunAttributes
42
+ MODEL_GENERATION: ModelGenerationAttributes
43
+ MODEL_STEP: ModelStepAttributes
44
+ MODEL_CHUNK: ModelChunkAttributes
45
+ TOOL_CALL: ToolCallAttributes
46
+ MCP_TOOL_CALL: MCPToolCallAttributes
47
+ PROCESSOR_RUN: ProcessorRunAttributes
48
+ WORKFLOW_STEP: WorkflowStepAttributes
49
+ WORKFLOW_CONDITIONAL: WorkflowConditionalAttributes
50
+ WORKFLOW_CONDITIONAL_EVAL: WorkflowConditionalEvalAttributes
51
+ WORKFLOW_PARALLEL: WorkflowParallelAttributes
52
+ WORKFLOW_LOOP: WorkflowLoopAttributes
53
+ WORKFLOW_SLEEP: WorkflowSleepAttributes
54
+ WORKFLOW_WAIT_EVENT: WorkflowWaitEventAttributes
55
+ GENERIC: AIBaseAttributes
56
+ }
57
+ ```
58
+
59
+ This mapping defines which attribute interface is used for each span type when creating or processing spans.
60
+
61
+ ### Span
62
+
63
+ Span interface, used internally for tracing.
64
+
65
+ ```typescript
66
+ interface Span<TType extends SpanType> {
67
+ readonly id: string
68
+ readonly traceId: string
69
+ readonly type: TType
70
+ readonly name: string
71
+
72
+ /** Is an internal span? (spans internal to the operation of mastra) */
73
+ isInternal: boolean
74
+
75
+ /** Parent span reference (undefined for root spans) */
76
+ parent?: AnySpan
77
+
78
+ /** Pointer to the ObservabilityInstance instance */
79
+ observabilityInstance: ObservabilityInstance
80
+
81
+ attributes?: SpanTypeMap[TType]
82
+ metadata?: Record<string, any>
83
+ input?: any
84
+ output?: any
85
+ errorInfo?: any
86
+
87
+ /** Tags for categorizing traces (only present on root spans) */
88
+ tags?: string[]
89
+
90
+ /** End the span */
91
+ end(options?: EndSpanOptions<TType>): void
92
+
93
+ /** Record an error for the span, optionally end the span as well */
94
+ error(options: ErrorSpanOptions<TType>): void
95
+
96
+ /** Update span attributes */
97
+ update(options: UpdateSpanOptions<TType>): void
98
+
99
+ /** Create child span - can be any span type independent of parent */
100
+ createChildSpan<TChildType extends SpanType>(
101
+ options: ChildSpanOptions<TChildType>,
102
+ ): Span<TChildType>
103
+
104
+ /** Create event span - can be any span type independent of parent */
105
+ createEventSpan<TChildType extends SpanType>(
106
+ options: ChildEventOptions<TChildType>,
107
+ ): Span<TChildType>
108
+
109
+ /** Returns TRUE if the span is the root span of a trace */
110
+ get isRootSpan(): boolean
111
+
112
+ /** Returns TRUE if the span is a valid span (not a NO-OP Span) */
113
+ get isValid(): boolean
114
+ }
115
+ ```
116
+
117
+ ### ObservabilityExporter
118
+
119
+ Interface for observability exporters.
120
+
121
+ ```typescript
122
+ interface ObservabilityExporter {
123
+ /** Exporter name */
124
+ name: string
125
+
126
+ /** Initialize exporter with tracing configuration and/or access to Mastra */
127
+ init?(options: InitExporterOptions): void
128
+
129
+ /** Export tracing events */
130
+ exportTracingEvent(event: TracingEvent): Promise<void>
131
+
132
+ /** Add score to a trace (optional) */
133
+ addScoreToTrace?({
134
+ traceId,
135
+ spanId,
136
+ score,
137
+ reason,
138
+ scorerName,
139
+ metadata,
140
+ }: {
141
+ traceId: string
142
+ spanId?: string
143
+ score: number
144
+ reason?: string
145
+ scorerName: string
146
+ metadata?: Record<string, any>
147
+ }): Promise<void>
148
+
149
+ /** Force flush any buffered spans without shutting down */
150
+ flush(): Promise<void>
151
+
152
+ /** Shutdown exporter */
153
+ shutdown(): Promise<void>
154
+ }
155
+ ```
156
+
157
+ ### SpanOutputProcessor
158
+
159
+ Interface for span output processors.
160
+
161
+ ```typescript
162
+ interface SpanOutputProcessor {
163
+ /** Processor name */
164
+ name: string
165
+
166
+ /** Process span before export */
167
+ process(span?: AnySpan): AnySpan | undefined
168
+
169
+ /** Shutdown processor */
170
+ shutdown(): Promise<void>
171
+ }
172
+ ```
173
+
174
+ ## Span Types
175
+
176
+ ### SpanType
177
+
178
+ AI-specific span types with their associated metadata.
179
+
180
+ ```typescript
181
+ enum SpanType {
182
+ /** Agent run - root span for agent processes */
183
+ AGENT_RUN = 'agent_run',
184
+
185
+ /** Generic span for custom operations */
186
+ GENERIC = 'generic',
187
+
188
+ /** Model generation with model calls, token usage, prompts, completions */
189
+ MODEL_GENERATION = 'model_generation',
190
+
191
+ /** Single model execution step within a generation (one API call) */
192
+ MODEL_STEP = 'model_step',
193
+
194
+ /** Individual model streaming chunk/event */
195
+ MODEL_CHUNK = 'model_chunk',
196
+
197
+ /** MCP (Model Context Protocol) tool execution */
198
+ MCP_TOOL_CALL = 'mcp_tool_call',
199
+
200
+ /** Input or Output Processor execution */
201
+ PROCESSOR_RUN = 'processor_run',
202
+
203
+ /** Function/tool execution with inputs, outputs, errors */
204
+ TOOL_CALL = 'tool_call',
205
+
206
+ /** Workflow run - root span for workflow processes */
207
+ WORKFLOW_RUN = 'workflow_run',
208
+
209
+ /** Workflow step execution with step status, data flow */
210
+ WORKFLOW_STEP = 'workflow_step',
211
+
212
+ /** Workflow conditional execution with condition evaluation */
213
+ WORKFLOW_CONDITIONAL = 'workflow_conditional',
214
+
215
+ /** Individual condition evaluation within conditional */
216
+ WORKFLOW_CONDITIONAL_EVAL = 'workflow_conditional_eval',
217
+
218
+ /** Workflow parallel execution */
219
+ WORKFLOW_PARALLEL = 'workflow_parallel',
220
+
221
+ /** Workflow loop execution */
222
+ WORKFLOW_LOOP = 'workflow_loop',
223
+
224
+ /** Workflow sleep operation */
225
+ WORKFLOW_SLEEP = 'workflow_sleep',
226
+
227
+ /** Workflow wait for event operation */
228
+ WORKFLOW_WAIT_EVENT = 'workflow_wait_event',
229
+ }
230
+ ```
231
+
232
+ ### AnySpan
233
+
234
+ Union type for cases that need to handle any span.
235
+
236
+ ```typescript
237
+ type AnySpan = Span<keyof SpanTypeMap>
238
+ ```
239
+
240
+ ## Span Attributes
241
+
242
+ ### AgentRunAttributes
243
+
244
+ Agent Run attributes.
245
+
246
+ ```typescript
247
+ interface AgentRunAttributes {
248
+ /** Agent identifier */
249
+ agentId: string
250
+
251
+ /** Agent Instructions */
252
+ instructions?: string
253
+
254
+ /** Agent Prompt */
255
+ prompt?: string
256
+
257
+ /** Available tools for this execution */
258
+ availableTools?: string[]
259
+
260
+ /** Maximum steps allowed */
261
+ maxSteps?: number
262
+ }
263
+ ```
264
+
265
+ ### ModelGenerationAttributes
266
+
267
+ Model Generation attributes.
268
+
269
+ ```typescript
270
+ interface ModelGenerationAttributes {
271
+ /** Model name (e.g., 'gpt-4', 'claude-3') */
272
+ model?: string
273
+
274
+ /** Model provider (e.g., 'openai', 'anthropic') */
275
+ provider?: string
276
+
277
+ /** Type of result/output this model call produced */
278
+ resultType?: 'tool_selection' | 'response_generation' | 'reasoning' | 'planning'
279
+
280
+ /** Token usage statistics */
281
+ usage?: {
282
+ promptTokens?: number
283
+ completionTokens?: number
284
+ totalTokens?: number
285
+ promptCacheHitTokens?: number
286
+ promptCacheMissTokens?: number
287
+ }
288
+
289
+ /** Model parameters */
290
+ parameters?: {
291
+ maxOutputTokens?: number
292
+ temperature?: number
293
+ topP?: number
294
+ topK?: number
295
+ presencePenalty?: number
296
+ frequencyPenalty?: number
297
+ stopSequences?: string[]
298
+ seed?: number
299
+ maxRetries?: number
300
+ }
301
+
302
+ /** Whether this was a streaming response */
303
+ streaming?: boolean
304
+
305
+ /** Reason the generation finished */
306
+ finishReason?: string
307
+ }
308
+ ```
309
+
310
+ ### ModelStepAttributes
311
+
312
+ Model Step attributes - for a single model execution within a generation.
313
+
314
+ ```typescript
315
+ interface ModelStepAttributes {
316
+ /** Index of this step in the generation (0, 1, 2, ...) */
317
+ stepIndex?: number
318
+
319
+ /** Token usage statistics */
320
+ usage?: UsageStats
321
+
322
+ /** Reason this step finished (stop, tool-calls, length, etc.) */
323
+ finishReason?: string
324
+
325
+ /** Should execution continue */
326
+ isContinued?: boolean
327
+
328
+ /** Result warnings */
329
+ warnings?: Record<string, any>
330
+ }
331
+ ```
332
+
333
+ ### ModelChunkAttributes
334
+
335
+ Model Chunk attributes - for individual streaming chunks/events.
336
+
337
+ ```typescript
338
+ interface ModelChunkAttributes {
339
+ /** Type of chunk (text-delta, reasoning-delta, tool-call, etc.) */
340
+ chunkType?: string
341
+
342
+ /** Sequence number of this chunk in the stream */
343
+ sequenceNumber?: number
344
+ }
345
+ ```
346
+
347
+ ### ToolCallAttributes
348
+
349
+ Tool Call attributes.
350
+
351
+ ```typescript
352
+ interface ToolCallAttributes {
353
+ toolId?: string
354
+ toolType?: string
355
+ toolDescription?: string
356
+ success?: boolean
357
+ }
358
+ ```
359
+
360
+ ### MCPToolCallAttributes
361
+
362
+ MCP Tool Call attributes.
363
+
364
+ ```typescript
365
+ interface MCPToolCallAttributes {
366
+ /** Id of the MCP tool/function */
367
+ toolId: string
368
+
369
+ /** MCP server identifier */
370
+ mcpServer: string
371
+
372
+ /** MCP server version */
373
+ serverVersion?: string
374
+
375
+ /** Whether tool execution was successful */
376
+ success?: boolean
377
+ }
378
+ ```
379
+
380
+ ### ProcessorRunAttributes
381
+
382
+ Processor attributes.
383
+
384
+ ```typescript
385
+ interface ProcessorRunAttributes {
386
+ /** Name of the Processor */
387
+ processorName: string
388
+
389
+ /** Processor type (input or output) */
390
+ processorType: 'input' | 'output'
391
+
392
+ /** Processor index in the agent */
393
+ processorIndex?: number
394
+ }
395
+ ```
396
+
397
+ ### WorkflowRunAttributes
398
+
399
+ Workflow Run attributes.
400
+
401
+ ```typescript
402
+ interface WorkflowRunAttributes {
403
+ /** Workflow identifier */
404
+ workflowId: string
405
+
406
+ /** Workflow status */
407
+ status?: WorkflowRunStatus
408
+ }
409
+ ```
410
+
411
+ ### WorkflowStepAttributes
412
+
413
+ Workflow Step attributes.
414
+
415
+ ```typescript
416
+ interface WorkflowStepAttributes {
417
+ /** Step identifier */
418
+ stepId: string
419
+
420
+ /** Step status */
421
+ status?: WorkflowStepStatus
422
+ }
423
+ ```
424
+
425
+ ## Options Types
426
+
427
+ ### StartSpanOptions
428
+
429
+ Options for starting new spans.
430
+
431
+ ```typescript
432
+ interface StartSpanOptions<TType extends SpanType> {
433
+ /** Span type */
434
+ type: TType
435
+
436
+ /** Span name */
437
+ name: string
438
+
439
+ /** Span attributes */
440
+ attributes?: SpanTypeMap[TType]
441
+
442
+ /** Span metadata */
443
+ metadata?: Record<string, any>
444
+
445
+ /** Input data */
446
+ input?: any
447
+
448
+ /** Parent span */
449
+ parent?: AnySpan
450
+
451
+ /** Policy-level tracing configuration */
452
+ tracingPolicy?: TracingPolicy
453
+
454
+ /** Options passed when using a custom sampler strategy */
455
+ customSamplerOptions?: CustomSamplerOptions
456
+ }
457
+ ```
458
+
459
+ ### UpdateSpanOptions
460
+
461
+ Options for updating spans.
462
+
463
+ ```typescript
464
+ interface UpdateSpanOptions<TType extends SpanType> {
465
+ /** Span attributes */
466
+ attributes?: Partial<SpanTypeMap[TType]>
467
+
468
+ /** Span metadata */
469
+ metadata?: Record<string, any>
470
+
471
+ /** Input data */
472
+ input?: any
473
+
474
+ /** Output data */
475
+ output?: any
476
+ }
477
+ ```
478
+
479
+ ### EndSpanOptions
480
+
481
+ Options for ending spans.
482
+
483
+ ```typescript
484
+ interface EndSpanOptions<TType extends SpanType> {
485
+ /** Output data */
486
+ output?: any
487
+
488
+ /** Span metadata */
489
+ metadata?: Record<string, any>
490
+
491
+ /** Span attributes */
492
+ attributes?: Partial<SpanTypeMap[TType]>
493
+ }
494
+ ```
495
+
496
+ ### ErrorSpanOptions
497
+
498
+ Options for recording span errors.
499
+
500
+ ```typescript
501
+ interface ErrorSpanOptions<TType extends SpanType> {
502
+ /** The error associated with the issue */
503
+ error: Error
504
+
505
+ /** End the span when true */
506
+ endSpan?: boolean
507
+
508
+ /** Span metadata */
509
+ metadata?: Record<string, any>
510
+
511
+ /** Span attributes */
512
+ attributes?: Partial<SpanTypeMap[TType]>
513
+ }
514
+ ```
515
+
516
+ ## Context Types
517
+
518
+ ### TracingContext
519
+
520
+ Context for Tracing that flows through workflow and agent execution.
521
+
522
+ ```typescript
523
+ interface TracingContext {
524
+ /** Current span for creating child spans and adding metadata */
525
+ currentSpan?: AnySpan
526
+ }
527
+ ```
528
+
529
+ ### TracingProperties
530
+
531
+ Properties returned to the user for working with traces externally.
532
+
533
+ ```typescript
534
+ type TracingProperties = {
535
+ /** Trace ID used on the execution (if the execution was traced) */
536
+ traceId?: string
537
+ }
538
+ ```
539
+
540
+ ### TracingOptions
541
+
542
+ Options passed when starting a new agent or workflow execution.
543
+
544
+ ```typescript
545
+ interface TracingOptions {
546
+ /** Metadata to add to the root trace span */
547
+ metadata?: Record<string, any>
548
+
549
+ /**
550
+ * Additional RequestContext keys to extract as metadata for this trace.
551
+ * These keys are added to the requestContextKeys config.
552
+ * Supports dot notation for nested values (e.g., 'user.id', 'session.data.experimentId').
553
+ */
554
+ requestContextKeys?: string[]
555
+
556
+ /**
557
+ * Trace ID to use for this execution (1-32 hexadecimal characters).
558
+ * If provided, this trace will be part of the specified trace rather than starting a new one.
559
+ */
560
+ traceId?: string
561
+
562
+ /**
563
+ * Parent span ID to use for this execution (1-16 hexadecimal characters).
564
+ * If provided, the root span will be created as a child of this span.
565
+ */
566
+ parentSpanId?: string
567
+
568
+ /**
569
+ * Tags to apply to this trace.
570
+ * Tags are string labels that can be used to categorize and filter traces
571
+ * Note: Tags are only applied to the root span of a trace.
572
+ */
573
+ tags?: string[]
574
+
575
+ /**
576
+ * When true, input data will be hidden from all spans in this trace.
577
+ * Useful for protecting sensitive data from being logged.
578
+ */
579
+ hideInput?: boolean
580
+
581
+ /**
582
+ * When true, output data will be hidden from all spans in this trace.
583
+ * Useful for protecting sensitive data from being logged.
584
+ */
585
+ hideOutput?: boolean
586
+ }
587
+ ```
588
+
589
+ ### TracingPolicy
590
+
591
+ Policy-level tracing configuration applied when creating a workflow or agent.
592
+
593
+ ```typescript
594
+ interface TracingPolicy {
595
+ /**
596
+ * Bitwise options to set different types of spans as Internal in
597
+ * a workflow or agent execution. Internal spans are hidden by
598
+ * default in exported traces.
599
+ */
600
+ internal?: InternalSpans
601
+ }
602
+ ```
603
+
604
+ ## Configuration Types
605
+
606
+ ### ObservabilityInstanceConfig
607
+
608
+ Configuration for a single observability instance.
609
+
610
+ ```typescript
611
+ interface ObservabilityInstanceConfig {
612
+ /** Unique identifier for this config in the observability registry */
613
+ name: string
614
+
615
+ /** Service name for observability */
616
+ serviceName: string
617
+
618
+ /** Sampling strategy - controls whether tracing is collected (defaults to ALWAYS) */
619
+ sampling?: SamplingStrategy
620
+
621
+ /** Custom exporters */
622
+ exporters?: ObservabilityExporter[]
623
+
624
+ /** Custom span output processors */
625
+ spanOutputProcessors?: SpanOutputProcessor[]
626
+
627
+ /** Set to true if you want to see spans internal to the operation of mastra */
628
+ includeInternalSpans?: boolean
629
+
630
+ /** RequestContext keys to automatically extract as metadata for all spans */
631
+ requestContextKeys?: string[]
632
+ }
633
+ ```
634
+
635
+ ### ObservabilityRegistryConfig
636
+
637
+ Complete observability registry configuration.
638
+
639
+ ```typescript
640
+ interface ObservabilityRegistryConfig {
641
+ /** Enables default exporters, with sampling: always, and sensitive data filtering */
642
+ default?: {
643
+ enabled?: boolean
644
+ }
645
+
646
+ /** Map of tracing instance names to their configurations or pre-instantiated instances */
647
+ configs?: Record<string, Omit<ObservabilityInstanceConfig, 'name'> | ObservabilityInstance>
648
+
649
+ /** Optional selector function to choose which tracing instance to use */
650
+ configSelector?: ConfigSelector
651
+ }
652
+ ```
653
+
654
+ ## Sampling Types
655
+
656
+ ### SamplingStrategy
657
+
658
+ Sampling strategy configuration.
659
+
660
+ ```typescript
661
+ type SamplingStrategy =
662
+ | { type: 'always' }
663
+ | { type: 'never' }
664
+ | { type: 'ratio'; probability: number }
665
+ | { type: 'custom'; sampler: (options?: CustomSamplerOptions) => boolean }
666
+ ```
667
+
668
+ ### CustomSamplerOptions
669
+
670
+ Options passed when using a custom sampler strategy.
671
+
672
+ ```typescript
673
+ interface CustomSamplerOptions {
674
+ requestContext?: RequestContext
675
+ metadata?: Record<string, any>
676
+ }
677
+ ```
678
+
679
+ ## Config Selector Types
680
+
681
+ ### ConfigSelector
682
+
683
+ Function to select which observability instance to use for a given span.
684
+
685
+ ```typescript
686
+ type ConfigSelector = (
687
+ options: ConfigSelectorOptions,
688
+ availableConfigs: ReadonlyMap<string, ObservabilityInstance>,
689
+ ) => string | undefined
690
+ ```
691
+
692
+ ### ConfigSelectorOptions
693
+
694
+ Options passed when using a custom tracing config selector.
695
+
696
+ ```typescript
697
+ interface ConfigSelectorOptions {
698
+ /** Request Context */
699
+ requestContext?: RequestContext
700
+ }
701
+ ```
702
+
703
+ ## Internal Spans
704
+
705
+ ### InternalSpans
706
+
707
+ Bitwise options to set different types of spans as internal in a workflow or agent execution.
708
+
709
+ ```typescript
710
+ enum InternalSpans {
711
+ /** No spans are marked internal */
712
+ NONE = 0,
713
+
714
+ /** Workflow spans are marked internal */
715
+ WORKFLOW = 1 << 0,
716
+
717
+ /** Agent spans are marked internal */
718
+ AGENT = 1 << 1,
719
+
720
+ /** Tool spans are marked internal */
721
+ TOOL = 1 << 2,
722
+
723
+ /** Model spans are marked internal */
724
+ MODEL = 1 << 3,
725
+
726
+ /** All spans are marked internal */
727
+ ALL = (1 << 4) - 1,
728
+ }
729
+ ```
730
+
731
+ ## See Also
732
+
733
+ ### Documentation
734
+
735
+ - [Tracing Overview](https://mastra.ai/docs/observability/tracing/overview) - Complete guide to Tracing
736
+ - [Creating Child Spans](https://mastra.ai/docs/observability/tracing/overview) - Working with span hierarchies
737
+ - [Adding Custom Metadata](https://mastra.ai/docs/observability/tracing/overview) - Enriching traces
738
+
739
+ ### Reference
740
+
741
+ - [Configuration](https://mastra.ai/reference/observability/tracing/configuration) - Registry and configuration
742
+ - [Tracing Classes](https://mastra.ai/reference/observability/tracing/instances) - Core implementations
743
+ - [Spans Reference](https://mastra.ai/reference/observability/tracing/spans) - Span lifecycle methods