@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,26 @@
1
+ # Mastra.setLogger()
2
+
3
+ The `.setLogger()` method is used to set the logger for all components (agents, workflows, etc.) in the Mastra instance. This method accepts a single object parameter with a logger property.
4
+
5
+ ## Usage example
6
+
7
+ ```typescript
8
+ mastra.setLogger({ logger: new PinoLogger({ name: 'testLogger' }) })
9
+ ```
10
+
11
+ ## Parameters
12
+
13
+ **options:** (`{ logger: TLogger }`): An object containing the logger instance to set for all components.
14
+
15
+ ### Options
16
+
17
+ **logger:** (`TLogger`): The logger instance to set for all components (agents, workflows, etc.).
18
+
19
+ ## Returns
20
+
21
+ This method does not return a value.
22
+
23
+ ## Related
24
+
25
+ - [Logging overview](https://mastra.ai/docs/observability/logging)
26
+ - [Logger reference](https://mastra.ai/reference/logging/pino-logger)
@@ -0,0 +1,27 @@
1
+ # Mastra.setStorage()
2
+
3
+ The `.setStorage()` method is used to set the storage instance for the Mastra instance. This method accepts a single `MastraCompositeStore` parameter.
4
+
5
+ ## Usage example
6
+
7
+ ```typescript
8
+ mastra.setStorage(
9
+ new LibSQLStore({
10
+ id: 'mastra-storage',
11
+ url: ':memory:',
12
+ }),
13
+ )
14
+ ```
15
+
16
+ ## Parameters
17
+
18
+ **storage:** (`MastraCompositeStore`): The storage instance to set for the Mastra instance.
19
+
20
+ ## Returns
21
+
22
+ This method does not return a value.
23
+
24
+ ## Related
25
+
26
+ - [Storage overview](https://mastra.ai/reference/storage/overview)
27
+ - [Storage reference](https://mastra.ai/reference/storage/libsql)
@@ -0,0 +1,37 @@
1
+ # dataset.addItem()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Adds a single item to the dataset. Each item has an input, optional ground truth, and optional metadata.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+
12
+ const mastra = new Mastra({
13
+ /* storage config */
14
+ })
15
+
16
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
17
+
18
+ const item = await dataset.addItem({
19
+ input: { question: 'What is TypeScript?' },
20
+ groundTruth: { answer: 'A typed superset of JavaScript' },
21
+ metadata: { source: 'manual' },
22
+ })
23
+
24
+ console.log(item.id)
25
+ ```
26
+
27
+ ## Parameters
28
+
29
+ **input:** (`unknown`): Input data for the item.
30
+
31
+ **groundTruth?:** (`unknown`): Expected output or ground truth for scoring.
32
+
33
+ **metadata?:** (`Record<string, unknown>`): Arbitrary metadata for the item.
34
+
35
+ ## Returns
36
+
37
+ **result:** (`Promise<DatasetItem>`): DatasetItemid:stringUnique identifier of the item.datasetId:stringID of the parent dataset.datasetVersion:numberDataset version when the item was created.input:unknownInput data.groundTruth?:unknownGround truth data.metadata?:Record\<string, unknown>Item metadata.createdAt:DateWhen the item was created.updatedAt:DateWhen the item was last updated.
@@ -0,0 +1,35 @@
1
+ # dataset.addItems()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Adds multiple items to the dataset in a single bulk operation.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+
12
+ const mastra = new Mastra({
13
+ /* storage config */
14
+ })
15
+
16
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
17
+
18
+ const items = await dataset.addItems({
19
+ items: [
20
+ { input: { question: 'What is AI?' }, groundTruth: { answer: 'Artificial Intelligence' } },
21
+ { input: { question: 'What is ML?' }, groundTruth: { answer: 'Machine Learning' } },
22
+ { input: { question: 'What is DL?' }, metadata: { category: 'deep-learning' } },
23
+ ],
24
+ })
25
+
26
+ console.log(`Added ${items.length} items`)
27
+ ```
28
+
29
+ ## Parameters
30
+
31
+ **items:** (`Array<object>`): DatasetIteminput:unknownInput data for the item.groundTruth?:unknownExpected output or ground truth.metadata?:Record\<string, unknown>Arbitrary metadata.
32
+
33
+ ## Returns
34
+
35
+ **result:** (`Promise<DatasetItem[]>`): Array of created dataset items. See dataset.addItem() for the item shape.
@@ -0,0 +1,52 @@
1
+ # DatasetsManager.compareExperiments()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Compares two or more experiments, producing per-item and per-scorer comparisons. Requires at least two experiment IDs.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+
12
+ const mastra = new Mastra({
13
+ /* storage config */
14
+ })
15
+
16
+ const comparison = await mastra.datasets.compareExperiments({
17
+ experimentIds: ['exp-baseline', 'exp-new'],
18
+ baselineId: 'exp-baseline',
19
+ })
20
+
21
+ console.log(`Baseline: ${comparison.baselineId}`)
22
+
23
+ for (const item of comparison.items) {
24
+ console.log(`Item ${item.itemId}:`)
25
+ console.log(` Input: ${JSON.stringify(item.input)}`)
26
+
27
+ for (const [expId, result] of Object.entries(item.results)) {
28
+ if (result) {
29
+ console.log(
30
+ ` ${expId}: output=${JSON.stringify(result.output)}, scores=${JSON.stringify(result.scores)}`,
31
+ )
32
+ }
33
+ }
34
+ }
35
+ ```
36
+
37
+ ## Parameters
38
+
39
+ **experimentIds:** (`string[]`): Array of experiment IDs to compare. Must contain at least 2.
40
+
41
+ **baselineId?:** (`string`): ID of the baseline experiment. Defaults to the first ID in \`experimentIds\`.
42
+
43
+ ## Returns
44
+
45
+ Throws `MastraError` if fewer than 2 experiment IDs are provided.
46
+
47
+ **result:** (`Promise<object>`): objectbaselineId:stringID of the baseline experiment used for comparison.items:Array\<object>Per-item comparison data.objectitemId:stringID of the dataset item.input:unknown | nullInput data for the item.groundTruth:unknown | nullGround truth for the item.results:Record\<string, { output: unknown; scores: Record\<string, number | null> } | null>Results keyed by experiment ID. Each entry contains the output and scorer results for that experiment.
48
+
49
+ ## Related
50
+
51
+ - [dataset.startExperiment()](https://mastra.ai/reference/datasets/startExperiment)
52
+ - [dataset.listExperiments()](https://mastra.ai/reference/datasets/listExperiments)
@@ -0,0 +1,51 @@
1
+ # DatasetsManager.create()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Creates a new dataset. Zod schemas passed as `inputSchema` or `groundTruthSchema` are automatically converted to JSON Schema.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+ import { z } from 'zod'
12
+
13
+ const mastra = new Mastra({
14
+ /* storage config */
15
+ })
16
+
17
+ // Create with metadata
18
+ const dataset = await mastra.datasets.create({
19
+ name: 'QA evaluation set',
20
+ description: 'Question-answer pairs for testing',
21
+ metadata: { team: 'ml' },
22
+ })
23
+
24
+ // Create with Zod schemas
25
+ const typedDataset = await mastra.datasets.create({
26
+ name: 'Typed QA set',
27
+ inputSchema: z.object({
28
+ question: z.string(),
29
+ context: z.string().optional(),
30
+ }),
31
+ groundTruthSchema: z.object({
32
+ answer: z.string(),
33
+ }),
34
+ })
35
+ ```
36
+
37
+ ## Parameters
38
+
39
+ **name:** (`string`): Display name for the dataset.
40
+
41
+ **description?:** (`string`): Description of the dataset.
42
+
43
+ **inputSchema?:** (`unknown`): JSON Schema or Zod schema for item inputs. Zod schemas are auto-converted.
44
+
45
+ **groundTruthSchema?:** (`unknown`): JSON Schema or Zod schema for item ground truths. Zod schemas are auto-converted.
46
+
47
+ **metadata?:** (`Record<string, unknown>`): Arbitrary metadata.
48
+
49
+ ## Returns
50
+
51
+ **result:** (`Promise<Dataset>`): A Dataset instance for the newly created dataset.
@@ -0,0 +1,82 @@
1
+ # Dataset Class
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ The `Dataset` class provides methods for item CRUD, versioning, and experiment management on a single dataset. Obtained via `mastra.datasets.get()` or `mastra.datasets.create()`.
6
+
7
+ ## Usage examples
8
+
9
+ ### Add items and run an experiment
10
+
11
+ ```typescript
12
+ import { Mastra } from '@mastra/core'
13
+
14
+ const mastra = new Mastra({
15
+ /* storage config */
16
+ })
17
+
18
+ const dataset = await mastra.datasets.create({
19
+ name: 'QA pairs',
20
+ })
21
+
22
+ // Add items
23
+ await dataset.addItems({
24
+ items: [
25
+ { input: { question: 'What is AI?' }, groundTruth: { answer: 'Artificial Intelligence' } },
26
+ { input: { question: 'What is ML?' }, groundTruth: { answer: 'Machine Learning' } },
27
+ ],
28
+ })
29
+
30
+ // Run an experiment
31
+ const summary = await dataset.startExperiment({
32
+ targetType: 'agent',
33
+ targetId: 'my-agent',
34
+ scorers: ['accuracy'],
35
+ })
36
+
37
+ console.log(`${summary.succeededCount}/${summary.totalItems} succeeded`)
38
+ ```
39
+
40
+ ### Manage versions and history
41
+
42
+ ```typescript
43
+ import { Mastra } from '@mastra/core'
44
+
45
+ const mastra = new Mastra({
46
+ /* storage config */
47
+ })
48
+
49
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
50
+
51
+ // List versions
52
+ const { versions } = await dataset.listVersions()
53
+
54
+ // List items at a specific version
55
+ const items = await dataset.listItems({ version: 2 })
56
+
57
+ // Get item change history
58
+ const history = await dataset.getItemHistory({ itemId: 'item-id' })
59
+ ```
60
+
61
+ ## Access
62
+
63
+ `Dataset` is not instantiated directly. Obtain one via `DatasetsManager`:
64
+
65
+ ```typescript
66
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
67
+ // or
68
+ const dataset = await mastra.datasets.create({ name: 'My dataset' })
69
+ ```
70
+
71
+ ## Properties
72
+
73
+ For the full dataset record (name, description, schemas, version, timestamps), call [`dataset.getDetails()`](https://mastra.ai/reference/datasets/getDetails).
74
+
75
+ **id:** (`string`): The unique identifier of the dataset. Read-only.
76
+
77
+ ## Related
78
+
79
+ - [DatasetsManager class](https://mastra.ai/reference/datasets/datasets-manager)
80
+ - [dataset.startExperiment()](https://mastra.ai/reference/datasets/startExperiment)
81
+ - [dataset.addItems()](https://mastra.ai/reference/datasets/addItems)
82
+ - [dataset.listVersions()](https://mastra.ai/reference/datasets/listVersions)
@@ -0,0 +1,94 @@
1
+ # DatasetsManager
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ The `DatasetsManager` class provides the public API for managing datasets, including CRUD operations and cross-dataset experiment comparisons. Access it via `mastra.datasets`.
6
+
7
+ ## Usage examples
8
+
9
+ ### Create and list datasets
10
+
11
+ ```typescript
12
+ import { Mastra } from '@mastra/core'
13
+
14
+ const mastra = new Mastra({
15
+ /* storage config */
16
+ })
17
+
18
+ // Create a dataset
19
+ const dataset = await mastra.datasets.create({
20
+ name: 'QA pairs',
21
+ description: 'Question-answer evaluation set',
22
+ })
23
+
24
+ // List all datasets
25
+ const { datasets } = await mastra.datasets.list()
26
+ ```
27
+
28
+ ### Get and delete a dataset
29
+
30
+ ```typescript
31
+ import { Mastra } from '@mastra/core'
32
+
33
+ const mastra = new Mastra({
34
+ /* storage config */
35
+ })
36
+
37
+ // Get by ID
38
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
39
+
40
+ // Delete by ID
41
+ await mastra.datasets.delete({ id: 'dataset-id' })
42
+ ```
43
+
44
+ ### Get experiment
45
+
46
+ Retrieves a specific experiment (run) by ID. Unlike `dataset.getExperiment()`, this works across all datasets without needing a dataset reference first.
47
+
48
+ ```typescript
49
+ import { Mastra } from '@mastra/core'
50
+
51
+ const mastra = new Mastra({
52
+ /* storage config */
53
+ })
54
+
55
+ // Get experiment directly without knowing the dataset
56
+ const experiment = await mastra.datasets.getExperiment({
57
+ experimentId: 'exp-id',
58
+ })
59
+
60
+ console.log(`Dataset: ${experiment.datasetId}`)
61
+ console.log(`Status: ${experiment.status}`)
62
+ ```
63
+
64
+ ### Compare experiments
65
+
66
+ ```typescript
67
+ import { Mastra } from '@mastra/core'
68
+
69
+ const mastra = new Mastra({
70
+ /* storage config */
71
+ })
72
+
73
+ const comparison = await mastra.datasets.compareExperiments({
74
+ experimentIds: ['exp-1', 'exp-2'],
75
+ baselineId: 'exp-1',
76
+ })
77
+ ```
78
+
79
+ ## Access
80
+
81
+ `DatasetsManager` is not instantiated directly. Access it from a `Mastra` instance:
82
+
83
+ ```typescript
84
+ const mastra = new Mastra({
85
+ /* storage config */
86
+ })
87
+ const datasetsManager = mastra.datasets
88
+ ```
89
+
90
+ ## Related
91
+
92
+ - [Dataset class](https://mastra.ai/reference/datasets/dataset)
93
+ - [DatasetsManager.create()](https://mastra.ai/reference/datasets/create)
94
+ - [DatasetsManager.compareExperiments()](https://mastra.ai/reference/datasets/compareExperiments)
@@ -0,0 +1,25 @@
1
+ # DatasetsManager.delete()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Deletes a dataset by ID, including all items, versions, and experiments.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+
12
+ const mastra = new Mastra({
13
+ /* storage config */
14
+ })
15
+
16
+ await mastra.datasets.delete({ id: 'dataset-id' })
17
+ ```
18
+
19
+ ## Parameters
20
+
21
+ **id:** (`string`): ID of the dataset to delete.
22
+
23
+ ## Returns
24
+
25
+ **result:** (`Promise<void>`): Resolves when the dataset is deleted.
@@ -0,0 +1,27 @@
1
+ # dataset.deleteExperiment()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Deletes an experiment (run) by ID, including all associated results.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+
12
+ const mastra = new Mastra({
13
+ /* storage config */
14
+ })
15
+
16
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
17
+
18
+ await dataset.deleteExperiment({ experimentId: 'exp-id' })
19
+ ```
20
+
21
+ ## Parameters
22
+
23
+ **experimentId:** (`string`): ID of the experiment to delete.
24
+
25
+ ## Returns
26
+
27
+ **result:** (`Promise<void>`): Resolves when the experiment and its results are deleted.
@@ -0,0 +1,27 @@
1
+ # dataset.deleteItem()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Deletes a single item from the dataset by ID.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+
12
+ const mastra = new Mastra({
13
+ /* storage config */
14
+ })
15
+
16
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
17
+
18
+ await dataset.deleteItem({ itemId: 'item-id' })
19
+ ```
20
+
21
+ ## Parameters
22
+
23
+ **itemId:** (`string`): ID of the item to delete.
24
+
25
+ ## Returns
26
+
27
+ **result:** (`Promise<void>`): Resolves when the item is deleted.
@@ -0,0 +1,29 @@
1
+ # dataset.deleteItems()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Deletes multiple items from the dataset in a single bulk operation.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+
12
+ const mastra = new Mastra({
13
+ /* storage config */
14
+ })
15
+
16
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
17
+
18
+ await dataset.deleteItems({
19
+ itemIds: ['item-1', 'item-2', 'item-3'],
20
+ })
21
+ ```
22
+
23
+ ## Parameters
24
+
25
+ **itemIds:** (`string[]`): Array of item IDs to delete.
26
+
27
+ ## Returns
28
+
29
+ **result:** (`Promise<void>`): Resolves when all items are deleted.
@@ -0,0 +1,31 @@
1
+ # DatasetsManager.get()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Retrieves an existing dataset by ID. Throws a `MastraError` if the dataset does not exist.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+
12
+ const mastra = new Mastra({
13
+ /* storage config */
14
+ })
15
+
16
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
17
+
18
+ // Now use the dataset
19
+ const details = await dataset.getDetails()
20
+ console.log(details.name)
21
+ ```
22
+
23
+ ## Parameters
24
+
25
+ **id:** (`string`): Unique identifier of the dataset.
26
+
27
+ ## Returns
28
+
29
+ Throws `MastraError` if the dataset is not found.
30
+
31
+ **result:** (`Promise<Dataset>`): A Dataset instance.
@@ -0,0 +1,47 @@
1
+ # dataset.getDetails()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Retrieves the full dataset record from storage, including metadata, schemas, and version information.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+
12
+ const mastra = new Mastra({
13
+ /* storage config */
14
+ })
15
+
16
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
17
+
18
+ // Get dataset details
19
+ const details = await dataset.getDetails()
20
+ console.log(details.name, details.version)
21
+ ```
22
+
23
+ ## Parameters
24
+
25
+ This method takes no parameters.
26
+
27
+ ## Returns
28
+
29
+ Returns a `Promise<DatasetRecord>`. Throws `MastraError` if the dataset is not found.
30
+
31
+ **id:** (`string`): Unique identifier of the dataset.
32
+
33
+ **name:** (`string`): Display name of the dataset.
34
+
35
+ **description?:** (`string`): Description of the dataset.
36
+
37
+ **metadata?:** (`Record<string, unknown>`): Arbitrary metadata associated with the dataset.
38
+
39
+ **inputSchema?:** (`Record<string, unknown>`): JSON Schema for item inputs.
40
+
41
+ **groundTruthSchema?:** (`Record<string, unknown>`): JSON Schema for item ground truths.
42
+
43
+ **version:** (`number`): Current version number of the dataset.
44
+
45
+ **createdAt:** (`Date`): When the dataset was created.
46
+
47
+ **updatedAt:** (`Date`): When the dataset was last updated.
@@ -0,0 +1,30 @@
1
+ # dataset.getExperiment()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Retrieves a specific experiment (run) by its ID.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+
12
+ const mastra = new Mastra({
13
+ /* storage config */
14
+ })
15
+
16
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
17
+
18
+ const experiment = await dataset.getExperiment({ experimentId: 'exp-id' })
19
+
20
+ console.log(`Status: ${experiment.status}`)
21
+ console.log(`${experiment.succeededCount}/${experiment.totalItems} succeeded`)
22
+ ```
23
+
24
+ ## Parameters
25
+
26
+ **experimentId:** (`string`): ID of the experiment to retrieve.
27
+
28
+ ## Returns
29
+
30
+ **result:** (`Promise<Experiment>`): The experiment record. See dataset.listExperiments() for the full shape.
@@ -0,0 +1,33 @@
1
+ # dataset.getItem()
2
+
3
+ **Added in:** `@mastra/core@1.4.0`
4
+
5
+ Retrieves a single dataset item by ID, optionally at a specific dataset version.
6
+
7
+ ## Usage example
8
+
9
+ ```typescript
10
+ import { Mastra } from '@mastra/core'
11
+
12
+ const mastra = new Mastra({
13
+ /* storage config */
14
+ })
15
+
16
+ const dataset = await mastra.datasets.get({ id: 'dataset-id' })
17
+
18
+ // Get latest version of an item
19
+ const item = await dataset.getItem({ itemId: 'item-id' })
20
+
21
+ // Get item at a specific dataset version
22
+ const versionedItem = await dataset.getItem({ itemId: 'item-id', version: 2 })
23
+ ```
24
+
25
+ ## Parameters
26
+
27
+ **itemId:** (`string`): The unique identifier of the item.
28
+
29
+ **version?:** (`number`): Dataset version to retrieve the item at. Defaults to the latest version.
30
+
31
+ ## Returns
32
+
33
+ **result:** (`Promise<DatasetItem | null>`): The dataset item, or null if not found. See dataset.addItem() for the item shape.