@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,272 @@
1
+ # Arize Exporter
2
+
3
+ [Arize](https://arize.com/) provides observability platforms for AI applications through [Phoenix](https://phoenix.arize.com/) (open-source) and [Arize AX](https://arize.com/generative-ai/) (enterprise). The Arize exporter sends traces using OpenTelemetry and [OpenInference](https://github.com/Arize-ai/openinference/tree/main/spec) semantic conventions, compatible with any OpenTelemetry platform that supports OpenInference.
4
+
5
+ ## Installation
6
+
7
+ **npm**:
8
+
9
+ ```bash
10
+ npm install @mastra/arize@latest
11
+ ```
12
+
13
+ **pnpm**:
14
+
15
+ ```bash
16
+ pnpm add @mastra/arize@latest
17
+ ```
18
+
19
+ **Yarn**:
20
+
21
+ ```bash
22
+ yarn add @mastra/arize@latest
23
+ ```
24
+
25
+ **Bun**:
26
+
27
+ ```bash
28
+ bun add @mastra/arize@latest
29
+ ```
30
+
31
+ ## Configuration
32
+
33
+ ### Phoenix Setup
34
+
35
+ Phoenix is an open-source observability platform that can be self-hosted or used via Phoenix Cloud.
36
+
37
+ #### Prerequisites
38
+
39
+ 1. **Phoenix Instance**: Deploy using Docker or sign up at [Phoenix Cloud](https://app.phoenix.arize.com/login)
40
+ 2. **Endpoint**: Your Phoenix endpoint URL (ends in `/v1/traces`)
41
+ 3. **API Key**: Optional for unauthenticated instances, required for Phoenix Cloud
42
+ 4. **Environment Variables**: Set your configuration
43
+
44
+ ```bash
45
+ # Required
46
+ PHOENIX_ENDPOINT=http://localhost:6006/v1/traces # Or your Phoenix Cloud URL
47
+
48
+ # Optional
49
+ PHOENIX_API_KEY=your-api-key # For authenticated Phoenix instances
50
+ PHOENIX_PROJECT_NAME=mastra-service # Defaults to 'mastra-service'
51
+ ```
52
+
53
+ #### Zero-Config Setup
54
+
55
+ With environment variables set, use the exporter with no configuration:
56
+
57
+ ```typescript
58
+ import { Mastra } from '@mastra/core'
59
+ import { Observability } from '@mastra/observability'
60
+ import { ArizeExporter } from '@mastra/arize'
61
+
62
+ export const mastra = new Mastra({
63
+ observability: new Observability({
64
+ configs: {
65
+ arize: {
66
+ serviceName: 'mastra-service',
67
+ exporters: [new ArizeExporter()],
68
+ },
69
+ },
70
+ }),
71
+ })
72
+ ```
73
+
74
+ #### Explicit Configuration
75
+
76
+ You can also pass credentials directly (takes precedence over environment variables):
77
+
78
+ ```typescript
79
+ import { Mastra } from '@mastra/core'
80
+ import { Observability } from '@mastra/observability'
81
+ import { ArizeExporter } from '@mastra/arize'
82
+
83
+ export const mastra = new Mastra({
84
+ observability: new Observability({
85
+ configs: {
86
+ arize: {
87
+ serviceName: process.env.PHOENIX_PROJECT_NAME || 'mastra-service',
88
+ exporters: [
89
+ new ArizeExporter({
90
+ endpoint: process.env.PHOENIX_ENDPOINT!,
91
+ apiKey: process.env.PHOENIX_API_KEY,
92
+ projectName: process.env.PHOENIX_PROJECT_NAME,
93
+ }),
94
+ ],
95
+ },
96
+ },
97
+ }),
98
+ })
99
+ ```
100
+
101
+ > **Quick Start with Docker:** Test locally with an in-memory Phoenix instance:
102
+ >
103
+ > ```bash
104
+ > docker run --pull=always -d --name arize-phoenix -p 6006:6006 \
105
+ > -e PHOENIX_SQL_DATABASE_URL="sqlite:///:memory:" \
106
+ > arizephoenix/phoenix:latest
107
+ > ```
108
+ >
109
+ > Set `PHOENIX_ENDPOINT=http://localhost:6006/v1/traces` and run your Mastra agent to see traces at [localhost:6006](http://localhost:6006).
110
+
111
+ ### Arize AX Setup
112
+
113
+ Arize AX is an enterprise observability platform with advanced features for production AI systems.
114
+
115
+ #### Prerequisites
116
+
117
+ 1. **Arize AX Account**: Sign up at [app.arize.com](https://app.arize.com/)
118
+ 2. **Space ID**: Your organization's space identifier
119
+ 3. **API Key**: Generate in Arize AX settings
120
+ 4. **Environment Variables**: Set your credentials
121
+
122
+ ```bash
123
+ # Required
124
+ ARIZE_SPACE_ID=your-space-id
125
+ ARIZE_API_KEY=your-api-key
126
+
127
+ # Optional
128
+ ARIZE_PROJECT_NAME=mastra-service
129
+ ```
130
+
131
+ #### Zero-Config Setup
132
+
133
+ With environment variables set, use the exporter with no configuration:
134
+
135
+ ```typescript
136
+ import { Mastra } from '@mastra/core'
137
+ import { Observability } from '@mastra/observability'
138
+ import { ArizeExporter } from '@mastra/arize'
139
+
140
+ export const mastra = new Mastra({
141
+ observability: new Observability({
142
+ configs: {
143
+ arize: {
144
+ serviceName: 'mastra-service',
145
+ exporters: [new ArizeExporter()],
146
+ },
147
+ },
148
+ }),
149
+ })
150
+ ```
151
+
152
+ #### Explicit Configuration
153
+
154
+ You can also pass credentials directly (takes precedence over environment variables):
155
+
156
+ ```typescript
157
+ import { Mastra } from '@mastra/core'
158
+ import { Observability } from '@mastra/observability'
159
+ import { ArizeExporter } from '@mastra/arize'
160
+
161
+ export const mastra = new Mastra({
162
+ observability: new Observability({
163
+ configs: {
164
+ arize: {
165
+ serviceName: process.env.ARIZE_PROJECT_NAME || 'mastra-service',
166
+ exporters: [
167
+ new ArizeExporter({
168
+ apiKey: process.env.ARIZE_API_KEY!,
169
+ spaceId: process.env.ARIZE_SPACE_ID!,
170
+ projectName: process.env.ARIZE_PROJECT_NAME,
171
+ }),
172
+ ],
173
+ },
174
+ },
175
+ }),
176
+ })
177
+ ```
178
+
179
+ ## Configuration Options
180
+
181
+ The Arize exporter supports advanced configuration for fine-tuning OpenTelemetry behavior:
182
+
183
+ ### Complete Configuration
184
+
185
+ ```typescript
186
+ new ArizeExporter({
187
+ // Phoenix Configuration
188
+ endpoint: 'https://your-collector.example.com/v1/traces', // Required for Phoenix
189
+
190
+ // Arize AX Configuration
191
+ spaceId: 'your-space-id', // Required for Arize AX
192
+
193
+ // Shared Configuration
194
+ apiKey: 'your-api-key', // Required for authenticated endpoints
195
+ projectName: 'mastra-service', // Optional project name
196
+
197
+ // Optional OTLP settings
198
+ headers: {
199
+ 'x-custom-header': 'value', // Additional headers for OTLP requests
200
+ },
201
+
202
+ // Debug and performance tuning
203
+ logLevel: 'debug', // Logging: debug | info | warn | error
204
+ batchSize: 512, // Batch size before exporting spans
205
+ timeout: 30000, // Timeout in ms before exporting spans
206
+
207
+ // Custom resource attributes
208
+ resourceAttributes: {
209
+ 'deployment.environment': process.env.NODE_ENV,
210
+ 'service.version': process.env.APP_VERSION,
211
+ },
212
+ })
213
+ ```
214
+
215
+ ### Batch Processing Options
216
+
217
+ Control how traces are batched and exported:
218
+
219
+ ```typescript
220
+ new ArizeExporter({
221
+ endpoint: process.env.PHOENIX_ENDPOINT!,
222
+ apiKey: process.env.PHOENIX_API_KEY,
223
+
224
+ // Batch processing configuration
225
+ batchSize: 512, // Number of spans to batch (default: 512)
226
+ timeout: 30000, // Max time in ms to wait before export (default: 30000)
227
+ })
228
+ ```
229
+
230
+ ### Resource Attributes
231
+
232
+ Add custom attributes to all exported spans:
233
+
234
+ ```typescript
235
+ new ArizeExporter({
236
+ endpoint: process.env.PHOENIX_ENDPOINT!,
237
+ resourceAttributes: {
238
+ 'deployment.environment': process.env.NODE_ENV,
239
+ 'service.namespace': 'production',
240
+ 'service.instance.id': process.env.HOSTNAME,
241
+ 'custom.attribute': 'value',
242
+ },
243
+ })
244
+ ```
245
+
246
+ ### Custom metadata
247
+
248
+ Non-reserved span attributes are serialized into the OpenInference `metadata` payload and surface in Arize/Phoenix. You can add them via `tracingOptions.metadata`:
249
+
250
+ ```ts
251
+ await agent.generate(input, {
252
+ tracingOptions: {
253
+ metadata: {
254
+ companyId: 'acme-co',
255
+ tier: 'enterprise',
256
+ },
257
+ },
258
+ })
259
+ ```
260
+
261
+ Reserved fields such as `input`, `output`, `sessionId`, thread/user IDs, and OpenInference IDs are excluded automatically.
262
+
263
+ ## OpenInference Semantic Conventions
264
+
265
+ This exporter implements the [OpenInference Semantic Conventions](https://github.com/Arize-ai/openinference/tree/main/spec) for generative AI applications, providing standardized trace structure across different observability platforms.
266
+
267
+ ## Related
268
+
269
+ - [Tracing Overview](https://mastra.ai/docs/observability/tracing/overview)
270
+ - [Phoenix Documentation](https://docs.arize.com/phoenix)
271
+ - [Arize AX Documentation](https://docs.arize.com/)
272
+ - [OpenInference Specification](https://github.com/Arize-ai/openinference/tree/main/spec)
@@ -0,0 +1,111 @@
1
+ # Braintrust Exporter
2
+
3
+ [Braintrust](https://www.braintrust.dev/) is an evaluation and monitoring platform that helps you measure and improve LLM application quality. The Braintrust exporter sends your traces to Braintrust, enabling systematic evaluation, scoring, and experimentation.
4
+
5
+ ## Installation
6
+
7
+ **npm**:
8
+
9
+ ```bash
10
+ npm install @mastra/braintrust@latest
11
+ ```
12
+
13
+ **pnpm**:
14
+
15
+ ```bash
16
+ pnpm add @mastra/braintrust@latest
17
+ ```
18
+
19
+ **Yarn**:
20
+
21
+ ```bash
22
+ yarn add @mastra/braintrust@latest
23
+ ```
24
+
25
+ **Bun**:
26
+
27
+ ```bash
28
+ bun add @mastra/braintrust@latest
29
+ ```
30
+
31
+ ## Configuration
32
+
33
+ ### Prerequisites
34
+
35
+ 1. **Braintrust Account**: Sign up at [braintrust.dev](https://www.braintrust.dev/)
36
+ 2. **Project**: Create or select a project for your traces
37
+ 3. **API Key**: Generate in Braintrust Settings → API Keys
38
+ 4. **Environment Variables**: Set your credentials:
39
+
40
+ ```bash
41
+ BRAINTRUST_API_KEY=sk-xxxxxxxxxxxxxxxx
42
+
43
+ # Optional
44
+ BRAINTRUST_ENDPOINT=https://api.braintrust.dev # Custom endpoint if needed
45
+ ```
46
+
47
+ ### Zero-Config Setup
48
+
49
+ With environment variables set, use the exporter with no configuration:
50
+
51
+ ```typescript
52
+ import { Mastra } from '@mastra/core'
53
+ import { Observability } from '@mastra/observability'
54
+ import { BraintrustExporter } from '@mastra/braintrust'
55
+
56
+ export const mastra = new Mastra({
57
+ observability: new Observability({
58
+ configs: {
59
+ braintrust: {
60
+ serviceName: 'my-service',
61
+ exporters: [new BraintrustExporter()],
62
+ },
63
+ },
64
+ }),
65
+ })
66
+ ```
67
+
68
+ ### Explicit Configuration
69
+
70
+ You can also pass credentials directly (takes precedence over environment variables):
71
+
72
+ ```typescript
73
+ import { Mastra } from '@mastra/core'
74
+ import { Observability } from '@mastra/observability'
75
+ import { BraintrustExporter } from '@mastra/braintrust'
76
+
77
+ export const mastra = new Mastra({
78
+ observability: new Observability({
79
+ configs: {
80
+ braintrust: {
81
+ serviceName: 'my-service',
82
+ exporters: [
83
+ new BraintrustExporter({
84
+ apiKey: process.env.BRAINTRUST_API_KEY,
85
+ projectName: 'my-project',
86
+ }),
87
+ ],
88
+ },
89
+ },
90
+ }),
91
+ })
92
+ ```
93
+
94
+ ### Complete Configuration
95
+
96
+ ```typescript
97
+ new BraintrustExporter({
98
+ // Required
99
+ apiKey: process.env.BRAINTRUST_API_KEY!,
100
+
101
+ // Optional settings
102
+ projectName: 'my-project', // Default: 'mastra-tracing'
103
+ endpoint: 'https://api.braintrust.dev', // Custom endpoint if needed
104
+ logLevel: 'info', // Diagnostic logging: debug | info | warn | error
105
+ })
106
+ ```
107
+
108
+ ## Related
109
+
110
+ - [Tracing Overview](https://mastra.ai/docs/observability/tracing/overview)
111
+ - [Braintrust Documentation](https://www.braintrust.dev/docs)
@@ -0,0 +1,127 @@
1
+ # Cloud Exporter
2
+
3
+ The `CloudExporter` sends traces to Mastra Cloud for centralized monitoring and team collaboration. It's automatically enabled when using the default observability configuration with a valid access token.
4
+
5
+ ## Configuration
6
+
7
+ ### Prerequisites
8
+
9
+ 1. **Mastra Cloud Account**: Sign up at [cloud.mastra.ai](https://cloud.mastra.ai)
10
+ 2. **Mastra Cloud Project**: Create a project in Mastra Cloud. Traces are scoped per project, so even if you only want observability, you need a project to act as the destination for your traces.
11
+ 3. **Access Token**: Generate in your project's sidebar under **Project Settings → Access Tokens**
12
+ 4. **Environment Variables**: Set your credentials:
13
+
14
+ ```bash
15
+ MASTRA_CLOUD_ACCESS_TOKEN=mst_xxxxxxxxxxxxxxxx
16
+ ```
17
+
18
+ ### Basic Setup
19
+
20
+ ```typescript
21
+ import { Mastra } from '@mastra/core'
22
+ import { Observability, CloudExporter } from '@mastra/observability'
23
+
24
+ export const mastra = new Mastra({
25
+ observability: new Observability({
26
+ configs: {
27
+ production: {
28
+ serviceName: 'my-service',
29
+ exporters: [
30
+ new CloudExporter(), // Uses MASTRA_CLOUD_ACCESS_TOKEN env var
31
+ ],
32
+ },
33
+ },
34
+ }),
35
+ })
36
+ ```
37
+
38
+ ### Recommended Configuration
39
+
40
+ Include CloudExporter in your observability configuration:
41
+
42
+ ```typescript
43
+ import { Mastra } from '@mastra/core'
44
+ import {
45
+ Observability,
46
+ DefaultExporter,
47
+ CloudExporter,
48
+ SensitiveDataFilter,
49
+ } from '@mastra/observability'
50
+
51
+ export const mastra = new Mastra({
52
+ observability: new Observability({
53
+ configs: {
54
+ default: {
55
+ serviceName: 'mastra',
56
+ exporters: [
57
+ new DefaultExporter(),
58
+ new CloudExporter(), // Sends traces to Mastra Cloud (requires MASTRA_CLOUD_ACCESS_TOKEN)
59
+ ],
60
+ spanOutputProcessors: [new SensitiveDataFilter()],
61
+ },
62
+ },
63
+ }),
64
+ })
65
+ ```
66
+
67
+ ### Complete Configuration
68
+
69
+ ```typescript
70
+ new CloudExporter({
71
+ // Optional - defaults to env var
72
+ accessToken: process.env.MASTRA_CLOUD_ACCESS_TOKEN,
73
+
74
+ // Optional - for self-hosted Mastra Cloud
75
+ endpoint: 'https://cloud.your-domain.com',
76
+
77
+ // Batching configuration
78
+ maxBatchSize: 1000, // Max spans per batch
79
+ maxBatchWaitMs: 5000, // Max wait before sending batch
80
+
81
+ // Diagnostic logging
82
+ logLevel: 'info', // debug | info | warn | error
83
+ })
84
+ ```
85
+
86
+ ## Viewing Traces
87
+
88
+ ### Mastra Cloud Dashboard
89
+
90
+ 1. Navigate to [cloud.mastra.ai](https://cloud.mastra.ai)
91
+
92
+ 2. Select the project associated with your access token
93
+
94
+ 3. Go to **Observability → Traces**
95
+
96
+ 4. Use filters to find specific traces:
97
+
98
+ - Service name
99
+ - Time range
100
+ - Trace ID
101
+ - Error status
102
+
103
+ > **Note:** Traces are scoped to the project that issued the access token. To view traces, make sure you're viewing the same project you generated the token from.
104
+
105
+ ### Features
106
+
107
+ - **Trace Timeline** - Visual execution flow
108
+ - **Span Details** - Inputs, outputs, metadata
109
+ - **Performance Metrics** - Latency, token usage
110
+ - **Team Collaboration** - Share trace links
111
+
112
+ ## Performance
113
+
114
+ > **Info:** CloudExporter uses intelligent batching to optimize network usage. Traces are buffered and sent in batches, reducing overhead while maintaining near real-time visibility.
115
+
116
+ ### Batching Behavior
117
+
118
+ - Traces are batched up to `maxBatchSize` (default: 1000)
119
+ - Batches are sent when full or after `maxBatchWaitMs` (default: 5 seconds)
120
+ - Failed batches are retried with exponential backoff
121
+ - Graceful degradation if Mastra Cloud is unreachable
122
+
123
+ ## Related
124
+
125
+ - [Tracing Overview](https://mastra.ai/docs/observability/tracing/overview)
126
+ - [DefaultExporter](https://mastra.ai/docs/observability/tracing/exporters/default)
127
+ - [Mastra Cloud Documentation](https://mastra.ai/docs/mastra-cloud/overview)
@@ -0,0 +1,187 @@
1
+ # Datadog Exporter
2
+
3
+ [Datadog](https://datadoghq.com/) is a comprehensive monitoring platform with dedicated LLM Observability features. The Datadog exporter sends your traces to Datadog's LLM Observability product, providing insights into model performance, token usage, and conversation flows.
4
+
5
+ ## Installation
6
+
7
+ **npm**:
8
+
9
+ ```bash
10
+ npm install @mastra/datadog@latest
11
+ ```
12
+
13
+ **pnpm**:
14
+
15
+ ```bash
16
+ pnpm add @mastra/datadog@latest
17
+ ```
18
+
19
+ **Yarn**:
20
+
21
+ ```bash
22
+ yarn add @mastra/datadog@latest
23
+ ```
24
+
25
+ **Bun**:
26
+
27
+ ```bash
28
+ bun add @mastra/datadog@latest
29
+ ```
30
+
31
+ ## Configuration
32
+
33
+ ### Prerequisites
34
+
35
+ 1. **Datadog Account**: Sign up at [datadoghq.com](https://datadoghq.com/) with LLM Observability enabled
36
+ 2. **API Key**: Get your API key from Datadog Organization Settings → API Keys
37
+ 3. **Environment Variables**: Set your credentials
38
+
39
+ ```bash
40
+ DD_API_KEY=your-datadog-api-key
41
+ DD_LLMOBS_ML_APP=my-llm-app
42
+ DD_SITE=datadoghq.com # Optional: defaults to datadoghq.com
43
+ DD_ENV=production # Optional: environment name
44
+ ```
45
+
46
+ ### Zero-Config Setup
47
+
48
+ With environment variables set, use the exporter with no configuration:
49
+
50
+ ```typescript
51
+ import { Mastra } from '@mastra/core'
52
+ import { Observability } from '@mastra/observability'
53
+ import { DatadogExporter } from '@mastra/datadog'
54
+
55
+ export const mastra = new Mastra({
56
+ observability: new Observability({
57
+ configs: {
58
+ datadog: {
59
+ serviceName: 'my-service',
60
+ exporters: [new DatadogExporter()],
61
+ },
62
+ },
63
+ }),
64
+ })
65
+ ```
66
+
67
+ ### Explicit Configuration
68
+
69
+ You can also pass credentials directly (takes precedence over environment variables):
70
+
71
+ ```typescript
72
+ import { Mastra } from '@mastra/core'
73
+ import { Observability } from '@mastra/observability'
74
+ import { DatadogExporter } from '@mastra/datadog'
75
+
76
+ export const mastra = new Mastra({
77
+ observability: new Observability({
78
+ configs: {
79
+ datadog: {
80
+ serviceName: 'my-service',
81
+ exporters: [
82
+ new DatadogExporter({
83
+ mlApp: process.env.DD_LLMOBS_ML_APP!,
84
+ apiKey: process.env.DD_API_KEY!,
85
+ }),
86
+ ],
87
+ },
88
+ },
89
+ }),
90
+ })
91
+ ```
92
+
93
+ ## Configuration Options
94
+
95
+ ### Complete Configuration
96
+
97
+ ```typescript
98
+ new DatadogExporter({
99
+ // Required settings
100
+ mlApp: process.env.DD_LLMOBS_ML_APP!, // Groups traces under this ML app name
101
+ apiKey: process.env.DD_API_KEY!, // Required for agentless mode (default)
102
+
103
+ // Optional settings
104
+ site: 'datadoghq.com', // Datadog site (datadoghq.eu, us3.datadoghq.com, etc.)
105
+ service: 'my-service', // Service name (defaults to mlApp)
106
+ env: 'production', // Environment name
107
+ agentless: true, // true = direct HTTPS, false = local Datadog Agent
108
+
109
+ // Advanced settings
110
+ integrationsEnabled: false, // Enable dd-trace auto-instrumentation
111
+
112
+ // Diagnostic logging
113
+ logLevel: 'info', // debug | info | warn | error
114
+ })
115
+ ```
116
+
117
+ ### With Local Datadog Agent
118
+
119
+ If you have a Datadog Agent running locally, you can route traces through it instead of direct HTTPS:
120
+
121
+ ```typescript
122
+ new DatadogExporter({
123
+ mlApp: process.env.DD_LLMOBS_ML_APP!,
124
+ agentless: false, // Use local Datadog Agent
125
+ env: 'production',
126
+ })
127
+ ```
128
+
129
+ Note: When using agent mode, the API key is read from the local agent's configuration.
130
+
131
+ ## Span Type Mapping
132
+
133
+ Mastra span types are automatically mapped to Datadog LLMObs span kinds:
134
+
135
+ | Mastra SpanType | Datadog Kind |
136
+ | -------------------- | ------------ |
137
+ | `AGENT_RUN` | `agent` |
138
+ | `MODEL_GENERATION` | `workflow` |
139
+ | `MODEL_STEP` | `llm` |
140
+ | `TOOL_CALL` | `tool` |
141
+ | `MCP_TOOL_CALL` | `tool` |
142
+ | `WORKFLOW_RUN` | `workflow` |
143
+ | Other workflow types | `task` |
144
+ | `GENERIC` | `task` |
145
+
146
+ Other/future Mastra span types will default to 'task' when mapped unless specified.
147
+
148
+ ## Troubleshooting
149
+
150
+ ### Native module ABI mismatch
151
+
152
+ If you see errors like:
153
+
154
+ ```text
155
+ Error: No native build was found for runtime=node abi=137 platform=linuxglibc arch=x64
156
+ ```
157
+
158
+ This indicates a Node.js version compatibility issue with `dd-trace`'s native modules. These native modules are **optional** and provide performance monitoring features.
159
+
160
+ **Solutions:**
161
+
162
+ 1. **Use Node.js 22.x**: Native modules have the best compatibility with Node.js 22.x.
163
+
164
+ 2. **Ignore native module warnings**: The native modules (`@datadog/native-metrics`, `@datadog/native-appsec`, etc.) are optional. If they fail to load, core tracing functionality still works.
165
+
166
+ ### Bundler externals configuration
167
+
168
+ When using bundlers like esbuild, webpack, or the Mastra CLI bundler, you may need to mark `dd-trace` and its dependencies as external:
169
+
170
+ ```typescript
171
+ export const mastra = new Mastra({
172
+ bundler: {
173
+ externals: [
174
+ 'dd-trace',
175
+ '@datadog/native-metrics',
176
+ '@datadog/native-appsec',
177
+ '@datadog/native-iast-taint-tracking',
178
+ '@datadog/pprof',
179
+ ],
180
+ },
181
+ })
182
+ ```
183
+
184
+ ## Related
185
+
186
+ - [Tracing Overview](https://mastra.ai/docs/observability/tracing/overview)
187
+ - [Datadog LLM Observability Documentation](https://docs.datadoghq.com/llm_observability/)