@mastra/server 0.0.0-type-testing-20260120105120 → 0.0.0-unified-workspace-snapshot-20260128233410

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 (328) hide show
  1. package/CHANGELOG.md +302 -3
  2. package/a2a/store.d.ts +1 -0
  3. package/auth.d.ts +1 -0
  4. package/dist/{chunk-3REGEJEN.js → chunk-24SISJRB.js} +6 -6
  5. package/dist/chunk-24SISJRB.js.map +1 -0
  6. package/dist/chunk-2ZLYWOYM.cjs +623 -0
  7. package/dist/chunk-2ZLYWOYM.cjs.map +1 -0
  8. package/dist/{chunk-TMS4LS2J.js → chunk-4G5R2KZI.js} +26 -16
  9. package/dist/chunk-4G5R2KZI.js.map +1 -0
  10. package/dist/{chunk-T4SPG2GP.cjs → chunk-4HFYR562.cjs} +4 -4
  11. package/dist/chunk-4HFYR562.cjs.map +1 -0
  12. package/dist/{chunk-AVRO3FIN.cjs → chunk-4LVJBXI2.cjs} +97 -4
  13. package/dist/chunk-4LVJBXI2.cjs.map +1 -0
  14. package/dist/{chunk-HCVDHEDD.cjs → chunk-5GXOE6RS.cjs} +187 -165
  15. package/dist/chunk-5GXOE6RS.cjs.map +1 -0
  16. package/dist/{chunk-AV3CN5ZR.cjs → chunk-5HVOCRC4.cjs} +34 -16
  17. package/dist/chunk-5HVOCRC4.cjs.map +1 -0
  18. package/dist/{chunk-UK4FZWNW.cjs → chunk-5VXFAF6R.cjs} +48 -41
  19. package/dist/chunk-5VXFAF6R.cjs.map +1 -0
  20. package/dist/{chunk-PNZQCQY4.cjs → chunk-6G2RQWKA.cjs} +15 -15
  21. package/dist/chunk-6G2RQWKA.cjs.map +1 -0
  22. package/dist/{chunk-4EYONQIW.cjs → chunk-7D3UAMQM.cjs} +4 -4
  23. package/dist/chunk-7D3UAMQM.cjs.map +1 -0
  24. package/dist/{chunk-CGIGPJRU.js → chunk-7XHQEMU2.js} +37 -70
  25. package/dist/chunk-7XHQEMU2.js.map +1 -0
  26. package/dist/chunk-AAHPYUEC.cjs +211 -0
  27. package/dist/chunk-AAHPYUEC.cjs.map +1 -0
  28. package/dist/{chunk-2CYGIE3E.js → chunk-AOU2LXZK.js} +197 -82
  29. package/dist/chunk-AOU2LXZK.js.map +1 -0
  30. package/dist/{chunk-WLGJVDH4.js → chunk-BB46GZPA.js} +6 -3
  31. package/dist/chunk-BB46GZPA.js.map +1 -0
  32. package/dist/{chunk-I27H7BEB.js → chunk-CW327NIR.js} +9 -6
  33. package/dist/chunk-CW327NIR.js.map +1 -0
  34. package/dist/{chunk-7S7ALPCY.js → chunk-D5VCL56B.js} +97 -5
  35. package/dist/chunk-D5VCL56B.js.map +1 -0
  36. package/dist/{chunk-GNCALVLC.js → chunk-DEG24CE7.js} +22 -3
  37. package/dist/chunk-DEG24CE7.js.map +1 -0
  38. package/dist/{chunk-H34VRYSF.js → chunk-DH5UZ4DD.js} +22 -15
  39. package/dist/chunk-DH5UZ4DD.js.map +1 -0
  40. package/dist/{chunk-6MP2S6VI.cjs → chunk-EJCBKZET.cjs} +48 -40
  41. package/dist/chunk-EJCBKZET.cjs.map +1 -0
  42. package/dist/{chunk-33CKPQS4.cjs → chunk-ERXWG5L2.cjs} +22 -2
  43. package/dist/chunk-ERXWG5L2.cjs.map +1 -0
  44. package/dist/{chunk-7XPMKW4Y.cjs → chunk-ETCMV326.cjs} +12 -9
  45. package/dist/chunk-ETCMV326.cjs.map +1 -0
  46. package/dist/chunk-ETVLWGEB.js +596 -0
  47. package/dist/chunk-ETVLWGEB.js.map +1 -0
  48. package/dist/{chunk-5VDI75UV.js → chunk-EV5H2JQU.js} +5 -4
  49. package/dist/chunk-EV5H2JQU.js.map +1 -0
  50. package/dist/{chunk-XB27LCKO.js → chunk-FA66XJZJ.js} +15 -9
  51. package/dist/chunk-FA66XJZJ.js.map +1 -0
  52. package/dist/{chunk-FWSKVWS7.cjs → chunk-FRRHYZR6.cjs} +4 -4
  53. package/dist/chunk-FRRHYZR6.cjs.map +1 -0
  54. package/dist/{chunk-GHQZIEPS.js → chunk-G34VLTQC.js} +74 -52
  55. package/dist/{chunk-HCVDHEDD.cjs.map → chunk-G34VLTQC.js.map} +1 -1
  56. package/dist/{chunk-ZQ2G6QKS.cjs → chunk-H2FLPRXD.cjs} +175 -97
  57. package/dist/chunk-H2FLPRXD.cjs.map +1 -0
  58. package/dist/chunk-H66LLFDL.js +1 -1
  59. package/dist/chunk-H66LLFDL.js.map +1 -1
  60. package/dist/{chunk-XCEQ4GQW.cjs → chunk-H6UO5RMT.cjs} +53 -90
  61. package/dist/chunk-H6UO5RMT.cjs.map +1 -0
  62. package/dist/{chunk-QPFYN6B5.cjs → chunk-HDGF45K7.cjs} +17 -14
  63. package/dist/chunk-HDGF45K7.cjs.map +1 -0
  64. package/dist/{chunk-P3H4AZKI.cjs → chunk-HZINLMHL.cjs} +15 -15
  65. package/dist/chunk-HZINLMHL.cjs.map +1 -0
  66. package/dist/{chunk-IVGQTL3T.js → chunk-I4MLE3R3.js} +31 -23
  67. package/dist/chunk-I4MLE3R3.js.map +1 -0
  68. package/dist/{chunk-WJ6DNHLW.cjs → chunk-I7CFYVAL.cjs} +34 -24
  69. package/dist/chunk-I7CFYVAL.cjs.map +1 -0
  70. package/dist/{chunk-DVSCJECS.js → chunk-IS3HHGL4.js} +6 -6
  71. package/dist/chunk-IS3HHGL4.js.map +1 -0
  72. package/dist/chunk-JHSXUNQV.cjs +703 -0
  73. package/dist/chunk-JHSXUNQV.cjs.map +1 -0
  74. package/dist/{chunk-XOUK3IYU.js → chunk-K4HSW5ZF.js} +4 -4
  75. package/dist/chunk-K4HSW5ZF.js.map +1 -0
  76. package/dist/{chunk-YN3FWKVQ.js → chunk-KADBYP7R.js} +6 -4
  77. package/dist/chunk-KADBYP7R.js.map +1 -0
  78. package/dist/chunk-LFTVDHOD.js +200 -0
  79. package/dist/chunk-LFTVDHOD.js.map +1 -0
  80. package/dist/{chunk-G2AMUTU4.js → chunk-OS7SAIRA.js} +6 -6
  81. package/dist/chunk-OS7SAIRA.js.map +1 -0
  82. package/dist/{chunk-YK63KHHB.cjs → chunk-OZGT6GOC.cjs} +507 -161
  83. package/dist/chunk-OZGT6GOC.cjs.map +1 -0
  84. package/dist/{chunk-4R2Z655M.js → chunk-P7IT44NU.js} +145 -67
  85. package/dist/chunk-P7IT44NU.js.map +1 -0
  86. package/dist/{chunk-L2E5RUVT.cjs → chunk-PWXUI3OG.cjs} +15 -15
  87. package/dist/chunk-PWXUI3OG.cjs.map +1 -0
  88. package/dist/chunk-QXDNFBJQ.js +220 -0
  89. package/dist/chunk-QXDNFBJQ.js.map +1 -0
  90. package/dist/{chunk-EUBTCHQC.js → chunk-RIX6WEJ2.js} +4 -4
  91. package/dist/chunk-RIX6WEJ2.js.map +1 -0
  92. package/dist/{chunk-CLAEGIP5.cjs → chunk-RSSBE2Q6.cjs} +10 -8
  93. package/dist/chunk-RSSBE2Q6.cjs.map +1 -0
  94. package/dist/chunk-S4SLHUJ7.cjs +253 -0
  95. package/dist/chunk-S4SLHUJ7.cjs.map +1 -0
  96. package/dist/{chunk-KKY4MSZO.js → chunk-SG3SQGMV.js} +28 -10
  97. package/dist/chunk-SG3SQGMV.js.map +1 -0
  98. package/dist/{chunk-N4EIZSG2.js → chunk-SRQBCSNC.js} +15 -11
  99. package/dist/chunk-SRQBCSNC.js.map +1 -0
  100. package/dist/{chunk-FLLJIPD4.cjs → chunk-T5KH32UA.cjs} +6 -5
  101. package/dist/chunk-T5KH32UA.cjs.map +1 -0
  102. package/dist/{chunk-3FEYUHHJ.js → chunk-TCWPL26W.js} +10 -7
  103. package/dist/chunk-TCWPL26W.js.map +1 -0
  104. package/dist/{chunk-2CLS2PYJ.js → chunk-UNWXKDYP.js} +398 -55
  105. package/dist/chunk-UNWXKDYP.js.map +1 -0
  106. package/dist/chunk-USR6JK77.js +62 -0
  107. package/dist/chunk-USR6JK77.js.map +1 -0
  108. package/dist/{chunk-BRI4GUZ2.cjs → chunk-VL4AR6TK.cjs} +6 -2
  109. package/dist/chunk-VL4AR6TK.cjs.map +1 -0
  110. package/dist/chunk-VX3VN7FN.cjs +1 -1
  111. package/dist/chunk-VX3VN7FN.cjs.map +1 -1
  112. package/dist/{chunk-4DJ7EJRB.cjs → chunk-W6H577VU.cjs} +25 -21
  113. package/dist/chunk-W6H577VU.cjs.map +1 -0
  114. package/dist/{chunk-NUO7HPOV.cjs → chunk-XIRAKXBF.cjs} +220 -105
  115. package/dist/chunk-XIRAKXBF.cjs.map +1 -0
  116. package/dist/{chunk-5NFRDYFN.js → chunk-XKLJYRAA.js} +4 -4
  117. package/dist/chunk-XKLJYRAA.js.map +1 -0
  118. package/dist/chunk-Z45X45WX.js +684 -0
  119. package/dist/chunk-Z45X45WX.js.map +1 -0
  120. package/dist/{chunk-MPUVSOEU.cjs → chunk-ZI4WQHQA.cjs} +21 -15
  121. package/dist/chunk-ZI4WQHQA.cjs.map +1 -0
  122. package/dist/chunk-ZKMVCV4G.cjs +71 -0
  123. package/dist/chunk-ZKMVCV4G.cjs.map +1 -0
  124. package/dist/docs/README.md +1 -1
  125. package/dist/docs/SKILL.md +1 -1
  126. package/dist/docs/SOURCE_MAP.json +1 -1
  127. package/dist/docs/server/01-custom-adapters.md +10 -10
  128. package/dist/docs/server/02-reference.md +22 -8
  129. package/dist/server/auth/helpers.d.ts +8 -1
  130. package/dist/server/auth/helpers.d.ts.map +1 -1
  131. package/dist/server/auth/index.cjs +42 -131
  132. package/dist/server/auth/index.cjs.map +1 -1
  133. package/dist/server/auth/index.js +1 -125
  134. package/dist/server/auth/index.js.map +1 -1
  135. package/dist/server/auth/path-pattern.d.ts +43 -0
  136. package/dist/server/auth/path-pattern.d.ts.map +1 -0
  137. package/dist/server/constants.d.ts +51 -0
  138. package/dist/server/constants.d.ts.map +1 -0
  139. package/dist/server/handlers/a2a.cjs +9 -9
  140. package/dist/server/handlers/a2a.d.ts.map +1 -1
  141. package/dist/server/handlers/a2a.js +1 -1
  142. package/dist/server/handlers/agent-builder.cjs +16 -16
  143. package/dist/server/handlers/agent-builder.d.ts.map +1 -1
  144. package/dist/server/handlers/agent-builder.js +1 -1
  145. package/dist/server/handlers/agent-versions.cjs +60 -0
  146. package/dist/server/handlers/agent-versions.cjs.map +1 -0
  147. package/dist/server/handlers/agent-versions.d.ts +479 -0
  148. package/dist/server/handlers/agent-versions.d.ts.map +1 -0
  149. package/dist/server/handlers/agent-versions.js +3 -0
  150. package/dist/server/handlers/agent-versions.js.map +1 -0
  151. package/dist/server/handlers/agents.cjs +40 -28
  152. package/dist/server/handlers/agents.d.ts +58 -5
  153. package/dist/server/handlers/agents.d.ts.map +1 -1
  154. package/dist/server/handlers/agents.js +1 -1
  155. package/dist/server/handlers/logs.cjs +4 -4
  156. package/dist/server/handlers/logs.d.ts.map +1 -1
  157. package/dist/server/handlers/logs.js +1 -1
  158. package/dist/server/handlers/mcp.cjs +9 -9
  159. package/dist/server/handlers/mcp.d.ts +22 -0
  160. package/dist/server/handlers/mcp.d.ts.map +1 -1
  161. package/dist/server/handlers/mcp.js +1 -1
  162. package/dist/server/handlers/memory.cjs +25 -25
  163. package/dist/server/handlers/memory.d.ts +25 -1
  164. package/dist/server/handlers/memory.d.ts.map +1 -1
  165. package/dist/server/handlers/memory.js +1 -1
  166. package/dist/server/handlers/observability.cjs +5 -5
  167. package/dist/server/handlers/observability.d.ts +1 -0
  168. package/dist/server/handlers/observability.d.ts.map +1 -1
  169. package/dist/server/handlers/observability.js +1 -1
  170. package/dist/server/handlers/processors.cjs +4 -4
  171. package/dist/server/handlers/processors.d.ts.map +1 -1
  172. package/dist/server/handlers/processors.js +1 -1
  173. package/dist/server/handlers/scores.cjs +7 -7
  174. package/dist/server/handlers/scores.d.ts.map +1 -1
  175. package/dist/server/handlers/scores.js +1 -1
  176. package/dist/server/handlers/stored-agents.cjs +6 -6
  177. package/dist/server/handlers/stored-agents.d.ts +33 -5
  178. package/dist/server/handlers/stored-agents.d.ts.map +1 -1
  179. package/dist/server/handlers/stored-agents.js +1 -1
  180. package/dist/server/handlers/system.cjs +2 -2
  181. package/dist/server/handlers/system.d.ts.map +1 -1
  182. package/dist/server/handlers/system.js +1 -1
  183. package/dist/server/handlers/tools.cjs +6 -6
  184. package/dist/server/handlers/tools.d.ts +3 -3
  185. package/dist/server/handlers/tools.d.ts.map +1 -1
  186. package/dist/server/handlers/tools.js +1 -1
  187. package/dist/server/handlers/utils.cjs +21 -5
  188. package/dist/server/handlers/utils.d.ts +26 -0
  189. package/dist/server/handlers/utils.d.ts.map +1 -1
  190. package/dist/server/handlers/utils.js +1 -1
  191. package/dist/server/handlers/vector.cjs +13 -13
  192. package/dist/server/handlers/vector.d.ts.map +1 -1
  193. package/dist/server/handlers/vector.js +1 -1
  194. package/dist/server/handlers/voice.cjs +8 -8
  195. package/dist/server/handlers/voice.d.ts.map +1 -1
  196. package/dist/server/handlers/voice.js +1 -1
  197. package/dist/server/handlers/workflows.cjs +24 -24
  198. package/dist/server/handlers/workflows.d.ts +2 -0
  199. package/dist/server/handlers/workflows.d.ts.map +1 -1
  200. package/dist/server/handlers/workflows.js +1 -1
  201. package/dist/server/handlers/workspace.cjs +80 -0
  202. package/dist/server/handlers/workspace.cjs.map +1 -0
  203. package/dist/server/handlers/workspace.d.ts +591 -0
  204. package/dist/server/handlers/workspace.d.ts.map +1 -0
  205. package/dist/server/handlers/workspace.js +3 -0
  206. package/dist/server/handlers/workspace.js.map +1 -0
  207. package/dist/server/handlers.cjs +24 -24
  208. package/dist/server/handlers.js +12 -12
  209. package/dist/server/schemas/agent-versions.d.ts +1646 -0
  210. package/dist/server/schemas/agent-versions.d.ts.map +1 -0
  211. package/dist/server/schemas/agents.d.ts +30 -19
  212. package/dist/server/schemas/agents.d.ts.map +1 -1
  213. package/dist/server/schemas/memory.d.ts +83 -31
  214. package/dist/server/schemas/memory.d.ts.map +1 -1
  215. package/dist/server/schemas/stored-agents.d.ts +66 -8
  216. package/dist/server/schemas/stored-agents.d.ts.map +1 -1
  217. package/dist/server/schemas/workspace.d.ts +1107 -0
  218. package/dist/server/schemas/workspace.d.ts.map +1 -0
  219. package/dist/server/server-adapter/index.cjs +298 -160
  220. package/dist/server/server-adapter/index.cjs.map +1 -1
  221. package/dist/server/server-adapter/index.d.ts +56 -2
  222. package/dist/server/server-adapter/index.d.ts.map +1 -1
  223. package/dist/server/server-adapter/index.js +158 -23
  224. package/dist/server/server-adapter/index.js.map +1 -1
  225. package/dist/server/server-adapter/openapi-utils.d.ts +10 -0
  226. package/dist/server/server-adapter/openapi-utils.d.ts.map +1 -1
  227. package/dist/server/server-adapter/routes/agents.d.ts.map +1 -1
  228. package/dist/server/server-adapter/routes/index.d.ts +3 -1
  229. package/dist/server/server-adapter/routes/index.d.ts.map +1 -1
  230. package/dist/server/server-adapter/routes/route-builder.d.ts +2 -1
  231. package/dist/server/server-adapter/routes/route-builder.d.ts.map +1 -1
  232. package/dist/server/server-adapter/routes/stored-agents.d.ts +1 -1
  233. package/dist/server/server-adapter/routes/stored-agents.d.ts.map +1 -1
  234. package/dist/server/server-adapter/routes/workspace.d.ts +8 -0
  235. package/dist/server/server-adapter/routes/workspace.d.ts.map +1 -0
  236. package/dist/server/utils.d.ts +13 -0
  237. package/dist/server/utils.d.ts.map +1 -1
  238. package/dist/{token-6GSAFR2W-K2BTU23I-5WBYUIGY.cjs → token-6GSAFR2W-ABXTQD64-MC4IMVOB.cjs} +9 -9
  239. package/dist/token-6GSAFR2W-ABXTQD64-MC4IMVOB.cjs.map +1 -0
  240. package/dist/{token-6GSAFR2W-VLY2XUPA-NCSASMWN.js → token-6GSAFR2W-ABXTQD64-Z6U2TA2C.js} +6 -6
  241. package/dist/token-6GSAFR2W-ABXTQD64-Z6U2TA2C.js.map +1 -0
  242. package/dist/{token-6GSAFR2W-KVDFAJ2M-EPLMGMHT.cjs → token-6GSAFR2W-F2L44NEJ-B3QIV63M.cjs} +9 -9
  243. package/dist/token-6GSAFR2W-F2L44NEJ-B3QIV63M.cjs.map +1 -0
  244. package/dist/{token-6GSAFR2W-KVDFAJ2M-VW443KIA.js → token-6GSAFR2W-F2L44NEJ-GFZ37A2V.js} +6 -6
  245. package/dist/token-6GSAFR2W-F2L44NEJ-GFZ37A2V.js.map +1 -0
  246. package/dist/{token-6GSAFR2W-VLY2XUPA-RKITWXKR.cjs → token-6GSAFR2W-WGTMOPEU-6HSZQUFZ.cjs} +9 -9
  247. package/dist/token-6GSAFR2W-WGTMOPEU-6HSZQUFZ.cjs.map +1 -0
  248. package/dist/{token-6GSAFR2W-K2BTU23I-NW33N3NU.js → token-6GSAFR2W-WGTMOPEU-JKP67ZX4.js} +6 -6
  249. package/dist/token-6GSAFR2W-WGTMOPEU-JKP67ZX4.js.map +1 -0
  250. package/dist/token-util-NEHG7TUY-4YJ4EPCL-MBTAVIJ3.js +8 -0
  251. package/dist/{token-util-NEHG7TUY-TIJ3LMSH-SGVKOKXF.js.map → token-util-NEHG7TUY-4YJ4EPCL-MBTAVIJ3.js.map} +1 -1
  252. package/dist/token-util-NEHG7TUY-4YJ4EPCL-SQ4NADRW.cjs +10 -0
  253. package/dist/{token-util-NEHG7TUY-DJYRKLRD-6TH3ODCN.cjs.map → token-util-NEHG7TUY-4YJ4EPCL-SQ4NADRW.cjs.map} +1 -1
  254. package/dist/token-util-NEHG7TUY-TV2H7N56-GGCGMPDG.js +8 -0
  255. package/dist/{token-util-NEHG7TUY-KSXDO2NO-WH6I3PH3.js.map → token-util-NEHG7TUY-TV2H7N56-GGCGMPDG.js.map} +1 -1
  256. package/dist/token-util-NEHG7TUY-TV2H7N56-R7OENTCJ.cjs +10 -0
  257. package/dist/{token-util-NEHG7TUY-KSXDO2NO-J6DEINGO.cjs.map → token-util-NEHG7TUY-TV2H7N56-R7OENTCJ.cjs.map} +1 -1
  258. package/dist/token-util-NEHG7TUY-XQP3QSPX-BL5O5N7R.cjs +10 -0
  259. package/dist/{token-util-NEHG7TUY-TIJ3LMSH-ANFISSXX.cjs.map → token-util-NEHG7TUY-XQP3QSPX-BL5O5N7R.cjs.map} +1 -1
  260. package/dist/token-util-NEHG7TUY-XQP3QSPX-YCJRRNXO.js +8 -0
  261. package/dist/{token-util-NEHG7TUY-DJYRKLRD-EACKYD4V.js.map → token-util-NEHG7TUY-XQP3QSPX-YCJRRNXO.js.map} +1 -1
  262. package/handlers/server/handlers.d.ts +1 -0
  263. package/handlers.d.ts +1 -0
  264. package/package.json +12 -10
  265. package/server-adapter.d.ts +1 -0
  266. package/dist/chunk-2CLS2PYJ.js.map +0 -1
  267. package/dist/chunk-2CYGIE3E.js.map +0 -1
  268. package/dist/chunk-33CKPQS4.cjs.map +0 -1
  269. package/dist/chunk-3FEYUHHJ.js.map +0 -1
  270. package/dist/chunk-3REGEJEN.js.map +0 -1
  271. package/dist/chunk-4DJ7EJRB.cjs.map +0 -1
  272. package/dist/chunk-4EYONQIW.cjs.map +0 -1
  273. package/dist/chunk-4R2Z655M.js.map +0 -1
  274. package/dist/chunk-5NFRDYFN.js.map +0 -1
  275. package/dist/chunk-5VDI75UV.js.map +0 -1
  276. package/dist/chunk-5W4RPVTK.cjs +0 -49
  277. package/dist/chunk-5W4RPVTK.cjs.map +0 -1
  278. package/dist/chunk-6MP2S6VI.cjs.map +0 -1
  279. package/dist/chunk-7S7ALPCY.js.map +0 -1
  280. package/dist/chunk-7XPMKW4Y.cjs.map +0 -1
  281. package/dist/chunk-AV3CN5ZR.cjs.map +0 -1
  282. package/dist/chunk-AVRO3FIN.cjs.map +0 -1
  283. package/dist/chunk-BRI4GUZ2.cjs.map +0 -1
  284. package/dist/chunk-CGIGPJRU.js.map +0 -1
  285. package/dist/chunk-CLAEGIP5.cjs.map +0 -1
  286. package/dist/chunk-DVSCJECS.js.map +0 -1
  287. package/dist/chunk-EUBTCHQC.js.map +0 -1
  288. package/dist/chunk-FLLJIPD4.cjs.map +0 -1
  289. package/dist/chunk-FWSKVWS7.cjs.map +0 -1
  290. package/dist/chunk-G2AMUTU4.js.map +0 -1
  291. package/dist/chunk-GHQZIEPS.js.map +0 -1
  292. package/dist/chunk-GNCALVLC.js.map +0 -1
  293. package/dist/chunk-H34VRYSF.js.map +0 -1
  294. package/dist/chunk-I27H7BEB.js.map +0 -1
  295. package/dist/chunk-IVGQTL3T.js.map +0 -1
  296. package/dist/chunk-KKY4MSZO.js.map +0 -1
  297. package/dist/chunk-L2E5RUVT.cjs.map +0 -1
  298. package/dist/chunk-MPUVSOEU.cjs.map +0 -1
  299. package/dist/chunk-N4EIZSG2.js.map +0 -1
  300. package/dist/chunk-NUO7HPOV.cjs.map +0 -1
  301. package/dist/chunk-P3H4AZKI.cjs.map +0 -1
  302. package/dist/chunk-PNZQCQY4.cjs.map +0 -1
  303. package/dist/chunk-QPFYN6B5.cjs.map +0 -1
  304. package/dist/chunk-T4SPG2GP.cjs.map +0 -1
  305. package/dist/chunk-TMS4LS2J.js.map +0 -1
  306. package/dist/chunk-UK4FZWNW.cjs.map +0 -1
  307. package/dist/chunk-WJ6DNHLW.cjs.map +0 -1
  308. package/dist/chunk-WLGJVDH4.js.map +0 -1
  309. package/dist/chunk-XB27LCKO.js.map +0 -1
  310. package/dist/chunk-XCEQ4GQW.cjs.map +0 -1
  311. package/dist/chunk-XOUK3IYU.js.map +0 -1
  312. package/dist/chunk-XWGAT2DA.js +0 -44
  313. package/dist/chunk-XWGAT2DA.js.map +0 -1
  314. package/dist/chunk-YK63KHHB.cjs.map +0 -1
  315. package/dist/chunk-YN3FWKVQ.js.map +0 -1
  316. package/dist/chunk-ZQ2G6QKS.cjs.map +0 -1
  317. package/dist/token-6GSAFR2W-K2BTU23I-5WBYUIGY.cjs.map +0 -1
  318. package/dist/token-6GSAFR2W-K2BTU23I-NW33N3NU.js.map +0 -1
  319. package/dist/token-6GSAFR2W-KVDFAJ2M-EPLMGMHT.cjs.map +0 -1
  320. package/dist/token-6GSAFR2W-KVDFAJ2M-VW443KIA.js.map +0 -1
  321. package/dist/token-6GSAFR2W-VLY2XUPA-NCSASMWN.js.map +0 -1
  322. package/dist/token-6GSAFR2W-VLY2XUPA-RKITWXKR.cjs.map +0 -1
  323. package/dist/token-util-NEHG7TUY-DJYRKLRD-6TH3ODCN.cjs +0 -10
  324. package/dist/token-util-NEHG7TUY-DJYRKLRD-EACKYD4V.js +0 -8
  325. package/dist/token-util-NEHG7TUY-KSXDO2NO-J6DEINGO.cjs +0 -10
  326. package/dist/token-util-NEHG7TUY-KSXDO2NO-WH6I3PH3.js +0 -8
  327. package/dist/token-util-NEHG7TUY-TIJ3LMSH-ANFISSXX.cjs +0 -10
  328. package/dist/token-util-NEHG7TUY-TIJ3LMSH-SGVKOKXF.js +0 -8
@@ -1,9 +1,10 @@
1
- import { sanitizeBody, validateBody } from './chunk-XWGAT2DA.js';
2
- import { listAgentsResponseSchema, serializedAgentSchema, agentIdPathParams, generateResponseSchema, agentExecutionBodySchema, agentExecutionLegacyBodySchema, streamResponseSchema, providersResponseSchema, toolCallResponseSchema, approveToolCallBodySchema, declineToolCallBodySchema, approveNetworkToolCallBodySchema, declineNetworkToolCallBodySchema, modelManagementResponseSchema, updateAgentModelBodySchema, reorderAgentModelListBodySchema, updateAgentModelInModelListBodySchema, modelConfigIdPathParams, enhanceInstructionsResponseSchema, enhanceInstructionsBodySchema } from './chunk-WLGJVDH4.js';
1
+ import { getAgentSkillResponseSchema } from './chunk-QXDNFBJQ.js';
2
+ import { listAgentsResponseSchema, serializedAgentSchema, agentIdPathParams, generateResponseSchema, agentExecutionBodySchema, agentExecutionLegacyBodySchema, streamResponseSchema, providersResponseSchema, toolCallResponseSchema, approveToolCallBodySchema, declineToolCallBodySchema, approveNetworkToolCallBodySchema, declineNetworkToolCallBodySchema, modelManagementResponseSchema, updateAgentModelBodySchema, reorderAgentModelListBodySchema, updateAgentModelInModelListBodySchema, modelConfigIdPathParams, enhanceInstructionsResponseSchema, enhanceInstructionsBodySchema, agentSkillPathParams } from './chunk-BB46GZPA.js';
3
+ import { sanitizeBody, validateBody, getEffectiveResourceId, getEffectiveThreadId, validateThreadOwnership } from './chunk-USR6JK77.js';
3
4
  import { stringify } from './chunk-LF2ZLOFP.js';
4
- import { createRoute } from './chunk-7S7ALPCY.js';
5
5
  import { handleError } from './chunk-ONN5EA7E.js';
6
6
  import { HTTPException } from './chunk-6QWQZI4Q.js';
7
+ import { createRoute } from './chunk-D5VCL56B.js';
7
8
  import { __export } from './chunk-PR4QN5HX.js';
8
9
  import { Agent } from '@mastra/core/agent';
9
10
  import { MastraError, ErrorDomain, ErrorCategory } from '@mastra/core/error';
@@ -25,6 +26,7 @@ __export(agents_exports, {
25
26
  GENERATE_AGENT_VNEXT_ROUTE: () => GENERATE_AGENT_VNEXT_ROUTE,
26
27
  GENERATE_LEGACY_ROUTE: () => GENERATE_LEGACY_ROUTE,
27
28
  GET_AGENT_BY_ID_ROUTE: () => GET_AGENT_BY_ID_ROUTE,
29
+ GET_AGENT_SKILL_ROUTE: () => GET_AGENT_SKILL_ROUTE,
28
30
  GET_PROVIDERS_ROUTE: () => GET_PROVIDERS_ROUTE,
29
31
  LIST_AGENTS_ROUTE: () => LIST_AGENTS_ROUTE,
30
32
  REORDER_AGENT_MODEL_LIST_ROUTE: () => REORDER_AGENT_MODEL_LIST_ROUTE,
@@ -40,8 +42,59 @@ __export(agents_exports, {
40
42
  UPDATE_AGENT_MODEL_ROUTE: () => UPDATE_AGENT_MODEL_ROUTE,
41
43
  getAgentFromSystem: () => getAgentFromSystem,
42
44
  getSerializedAgentTools: () => getSerializedAgentTools,
43
- getSerializedProcessors: () => getSerializedProcessors
45
+ getSerializedProcessors: () => getSerializedProcessors,
46
+ getSerializedSkillsFromAgent: () => getSerializedSkillsFromAgent,
47
+ getWorkspaceToolsFromAgent: () => getWorkspaceToolsFromAgent
44
48
  });
49
+
50
+ // src/server/constants.ts
51
+ var WORKSPACE_TOOLS_PREFIX = "mastra_workspace";
52
+ var WORKSPACE_TOOLS = {
53
+ FILESYSTEM: {
54
+ READ_FILE: `${WORKSPACE_TOOLS_PREFIX}_read_file`,
55
+ WRITE_FILE: `${WORKSPACE_TOOLS_PREFIX}_write_file`,
56
+ EDIT_FILE: `${WORKSPACE_TOOLS_PREFIX}_edit_file`,
57
+ LIST_FILES: `${WORKSPACE_TOOLS_PREFIX}_list_files`,
58
+ DELETE: `${WORKSPACE_TOOLS_PREFIX}_delete`,
59
+ FILE_STAT: `${WORKSPACE_TOOLS_PREFIX}_file_stat`,
60
+ MKDIR: `${WORKSPACE_TOOLS_PREFIX}_mkdir`
61
+ },
62
+ SANDBOX: {
63
+ EXECUTE_COMMAND: `${WORKSPACE_TOOLS_PREFIX}_execute_command`
64
+ },
65
+ SEARCH: {
66
+ SEARCH: `${WORKSPACE_TOOLS_PREFIX}_search`,
67
+ INDEX: `${WORKSPACE_TOOLS_PREFIX}_index`
68
+ }
69
+ };
70
+ function resolveToolConfig(toolsConfig, toolName) {
71
+ let enabled = true;
72
+ let requireApproval = false;
73
+ let requireReadBeforeWrite;
74
+ if (toolsConfig) {
75
+ if (toolsConfig.enabled !== void 0) {
76
+ enabled = toolsConfig.enabled;
77
+ }
78
+ if (toolsConfig.requireApproval !== void 0) {
79
+ requireApproval = toolsConfig.requireApproval;
80
+ }
81
+ const perToolConfig = toolsConfig[toolName];
82
+ if (perToolConfig) {
83
+ if (perToolConfig.enabled !== void 0) {
84
+ enabled = perToolConfig.enabled;
85
+ }
86
+ if (perToolConfig.requireApproval !== void 0) {
87
+ requireApproval = perToolConfig.requireApproval;
88
+ }
89
+ if (perToolConfig.requireReadBeforeWrite !== void 0) {
90
+ requireReadBeforeWrite = perToolConfig.requireReadBeforeWrite;
91
+ }
92
+ }
93
+ }
94
+ return { enabled, requireApproval, requireReadBeforeWrite };
95
+ }
96
+
97
+ // src/server/handlers/agents.ts
45
98
  function isProviderConnected(providerId) {
46
99
  const cleanId = providerId.includes(".") ? providerId.split(".")[0] : providerId;
47
100
  const provider = PROVIDER_REGISTRY[cleanId];
@@ -54,6 +107,7 @@ async function getSerializedAgentTools(tools, partial = false) {
54
107
  const toolId = tool.id ?? `tool-${key}`;
55
108
  let inputSchemaForReturn = void 0;
56
109
  let outputSchemaForReturn = void 0;
110
+ let requestContextSchemaForReturn = void 0;
57
111
  if (!partial) {
58
112
  try {
59
113
  if (tool.inputSchema) {
@@ -84,6 +138,20 @@ async function getSerializedAgentTools(tools, partial = false) {
84
138
  );
85
139
  }
86
140
  }
141
+ if (tool.requestContextSchema) {
142
+ if (tool.requestContextSchema && typeof tool.requestContextSchema === "object" && "jsonSchema" in tool.requestContextSchema) {
143
+ requestContextSchemaForReturn = stringify(tool.requestContextSchema.jsonSchema);
144
+ } else if (typeof tool.requestContextSchema === "function") {
145
+ const requestContextSchema = tool.requestContextSchema();
146
+ if (requestContextSchema && requestContextSchema.jsonSchema) {
147
+ requestContextSchemaForReturn = stringify(requestContextSchema.jsonSchema);
148
+ }
149
+ } else if (tool.requestContextSchema) {
150
+ requestContextSchemaForReturn = stringify(
151
+ zodToJsonSchema(tool.requestContextSchema)
152
+ );
153
+ }
154
+ }
87
155
  } catch (error) {
88
156
  console.error(`Error getting serialized tool`, {
89
157
  toolId: tool.id,
@@ -95,7 +163,8 @@ async function getSerializedAgentTools(tools, partial = false) {
95
163
  ...tool,
96
164
  id: toolId,
97
165
  inputSchema: inputSchemaForReturn,
98
- outputSchema: outputSchemaForReturn
166
+ outputSchema: outputSchemaForReturn,
167
+ requestContextSchema: requestContextSchemaForReturn
99
168
  };
100
169
  return acc;
101
170
  }, {});
@@ -108,6 +177,77 @@ function getSerializedProcessors(processors) {
108
177
  };
109
178
  });
110
179
  }
180
+ async function getSerializedSkillsFromAgent(agent, requestContext) {
181
+ try {
182
+ const workspace = await agent.getWorkspace({ requestContext });
183
+ if (!workspace?.skills) {
184
+ return [];
185
+ }
186
+ const skillsList = await workspace.skills.list();
187
+ return skillsList.map((skill) => ({
188
+ name: skill.name,
189
+ description: skill.description,
190
+ license: skill.license
191
+ }));
192
+ } catch {
193
+ return [];
194
+ }
195
+ }
196
+ async function getWorkspaceToolsFromAgent(agent, requestContext) {
197
+ try {
198
+ const workspace = await agent.getWorkspace({ requestContext });
199
+ if (!workspace) {
200
+ return [];
201
+ }
202
+ const tools = [];
203
+ const isReadOnly = workspace.filesystem?.readOnly ?? false;
204
+ const toolsConfig = workspace.getToolsConfig();
205
+ const isEnabled = (toolName) => {
206
+ return resolveToolConfig(toolsConfig, toolName).enabled;
207
+ };
208
+ if (workspace.filesystem) {
209
+ if (isEnabled(WORKSPACE_TOOLS.FILESYSTEM.READ_FILE)) {
210
+ tools.push(WORKSPACE_TOOLS.FILESYSTEM.READ_FILE);
211
+ }
212
+ if (isEnabled(WORKSPACE_TOOLS.FILESYSTEM.LIST_FILES)) {
213
+ tools.push(WORKSPACE_TOOLS.FILESYSTEM.LIST_FILES);
214
+ }
215
+ if (isEnabled(WORKSPACE_TOOLS.FILESYSTEM.FILE_STAT)) {
216
+ tools.push(WORKSPACE_TOOLS.FILESYSTEM.FILE_STAT);
217
+ }
218
+ if (!isReadOnly) {
219
+ if (isEnabled(WORKSPACE_TOOLS.FILESYSTEM.WRITE_FILE)) {
220
+ tools.push(WORKSPACE_TOOLS.FILESYSTEM.WRITE_FILE);
221
+ }
222
+ if (isEnabled(WORKSPACE_TOOLS.FILESYSTEM.EDIT_FILE)) {
223
+ tools.push(WORKSPACE_TOOLS.FILESYSTEM.EDIT_FILE);
224
+ }
225
+ if (isEnabled(WORKSPACE_TOOLS.FILESYSTEM.DELETE)) {
226
+ tools.push(WORKSPACE_TOOLS.FILESYSTEM.DELETE);
227
+ }
228
+ if (isEnabled(WORKSPACE_TOOLS.FILESYSTEM.MKDIR)) {
229
+ tools.push(WORKSPACE_TOOLS.FILESYSTEM.MKDIR);
230
+ }
231
+ }
232
+ }
233
+ if (workspace.canBM25 || workspace.canVector) {
234
+ if (isEnabled(WORKSPACE_TOOLS.SEARCH.SEARCH)) {
235
+ tools.push(WORKSPACE_TOOLS.SEARCH.SEARCH);
236
+ }
237
+ if (!isReadOnly && isEnabled(WORKSPACE_TOOLS.SEARCH.INDEX)) {
238
+ tools.push(WORKSPACE_TOOLS.SEARCH.INDEX);
239
+ }
240
+ }
241
+ if (workspace.sandbox) {
242
+ if (workspace.sandbox.executeCommand && isEnabled(WORKSPACE_TOOLS.SANDBOX.EXECUTE_COMMAND)) {
243
+ tools.push(WORKSPACE_TOOLS.SANDBOX.EXECUTE_COMMAND);
244
+ }
245
+ }
246
+ return tools;
247
+ } catch {
248
+ return [];
249
+ }
250
+ }
111
251
  async function getSerializedAgentDefinition({
112
252
  agent,
113
253
  requestContext
@@ -171,6 +311,14 @@ async function formatAgentList({
171
311
  } catch (error) {
172
312
  logger.error("Error getting configured processors for agent", { agentName: agent.name, error });
173
313
  }
314
+ const serializedSkills = await getSerializedSkillsFromAgent(agent, requestContext);
315
+ const workspaceTools = await getWorkspaceToolsFromAgent(agent, requestContext);
316
+ let workspaceId;
317
+ try {
318
+ const workspace = await agent.getWorkspace({ requestContext });
319
+ workspaceId = workspace?.id;
320
+ } catch {
321
+ }
174
322
  const model = llm?.getModel();
175
323
  const models = await agent.getModelList(requestContext);
176
324
  const modelList = models?.map((md) => ({
@@ -189,6 +337,9 @@ async function formatAgentList({
189
337
  agents: serializedAgentAgents,
190
338
  tools: serializedAgentTools,
191
339
  workflows: serializedAgentWorkflows,
340
+ skills: serializedSkills,
341
+ workspaceTools,
342
+ workspaceId,
192
343
  inputProcessors: serializedInputProcessors,
193
344
  outputProcessors: serializedOutputProcessors,
194
345
  provider: llm?.getProvider(),
@@ -197,7 +348,8 @@ async function formatAgentList({
197
348
  defaultOptions,
198
349
  modelList,
199
350
  defaultGenerateOptionsLegacy,
200
- defaultStreamOptionsLegacy
351
+ defaultStreamOptionsLegacy,
352
+ source: agent.source ?? "code"
201
353
  };
202
354
  }
203
355
  async function getAgentFromSystem({ mastra, agentId }) {
@@ -228,6 +380,14 @@ async function getAgentFromSystem({ mastra, agentId }) {
228
380
  }
229
381
  }
230
382
  }
383
+ if (!agent) {
384
+ logger.debug(`Agent ${agentId} not found in code-defined agents, looking in stored agents`);
385
+ try {
386
+ agent = await mastra.getStoredAgentById(agentId);
387
+ } catch (error) {
388
+ logger.debug("Error getting stored agent", error);
389
+ }
390
+ }
231
391
  if (!agent) {
232
392
  throw new HTTPException(404, { message: `Agent with id ${agentId} not found` });
233
393
  }
@@ -301,6 +461,22 @@ async function formatAgent({
301
461
  } catch (error) {
302
462
  mastra.getLogger().error("Error getting configured processors for agent", { agentName: agent.name, error });
303
463
  }
464
+ const serializedSkills = await getSerializedSkillsFromAgent(agent, proxyRequestContext);
465
+ const workspaceTools = await getWorkspaceToolsFromAgent(agent, proxyRequestContext);
466
+ let workspaceId;
467
+ try {
468
+ const workspace = await agent.getWorkspace({ requestContext: proxyRequestContext });
469
+ workspaceId = workspace?.id;
470
+ } catch {
471
+ }
472
+ let serializedRequestContextSchema;
473
+ if (agent.requestContextSchema) {
474
+ try {
475
+ serializedRequestContextSchema = stringify(zodToJsonSchema(agent.requestContextSchema));
476
+ } catch (error) {
477
+ mastra.getLogger().error("Error serializing requestContextSchema for agent", { agentName: agent.name, error });
478
+ }
479
+ }
304
480
  return {
305
481
  name: agent.name,
306
482
  description,
@@ -308,6 +484,9 @@ async function formatAgent({
308
484
  tools: serializedAgentTools,
309
485
  agents: serializedAgentAgents,
310
486
  workflows: serializedAgentWorkflows,
487
+ skills: serializedSkills,
488
+ workspaceTools,
489
+ workspaceId,
311
490
  inputProcessors: serializedInputProcessors,
312
491
  outputProcessors: serializedOutputProcessors,
313
492
  provider: llm?.getProvider(),
@@ -316,36 +495,64 @@ async function formatAgent({
316
495
  modelList,
317
496
  defaultOptions,
318
497
  defaultGenerateOptionsLegacy,
319
- defaultStreamOptionsLegacy
498
+ defaultStreamOptionsLegacy,
499
+ requestContextSchema: serializedRequestContextSchema,
500
+ source: agent.source ?? "code"
320
501
  };
321
502
  }
322
503
  var LIST_AGENTS_ROUTE = createRoute({
323
504
  method: "GET",
324
- path: "/api/agents",
505
+ path: "/agents",
325
506
  responseType: "json",
326
507
  queryParamSchema: z.object({
327
508
  partial: z.string().optional()
328
509
  }),
329
510
  responseSchema: listAgentsResponseSchema,
330
511
  summary: "List all agents",
331
- description: "Returns a list of all available agents in the system",
512
+ description: "Returns a list of all available agents in the system (both code-defined and stored)",
332
513
  tags: ["Agents"],
514
+ requiresAuth: true,
333
515
  handler: async ({ mastra, requestContext, partial }) => {
334
516
  try {
335
- const agents = mastra.listAgents();
517
+ const codeAgents = mastra.listAgents();
336
518
  const isPartial = partial === "true";
337
- const serializedAgentsMap = await Promise.all(
338
- Object.entries(agents).map(async ([id, agent]) => {
519
+ const serializedCodeAgentsMap = await Promise.all(
520
+ Object.entries(codeAgents).map(async ([id, agent]) => {
339
521
  return formatAgentList({ id, mastra, agent, requestContext, partial: isPartial });
340
522
  })
341
523
  );
342
- const serializedAgents = serializedAgentsMap.reduce(
524
+ const serializedAgents = serializedCodeAgentsMap.reduce(
343
525
  (acc, { id, ...rest }) => {
344
526
  acc[id] = { id, ...rest };
345
527
  return acc;
346
528
  },
347
529
  {}
348
530
  );
531
+ try {
532
+ const storedAgentsResult = await mastra.listStoredAgents();
533
+ if (storedAgentsResult?.agents) {
534
+ for (const agent of storedAgentsResult.agents) {
535
+ try {
536
+ const serialized = await formatAgentList({
537
+ id: agent.id,
538
+ mastra,
539
+ agent,
540
+ requestContext,
541
+ partial: isPartial
542
+ });
543
+ if (!serializedAgents[serialized.id]) {
544
+ serializedAgents[serialized.id] = serialized;
545
+ }
546
+ } catch (agentError) {
547
+ const logger = mastra.getLogger();
548
+ logger.warn("Failed to serialize stored agent", { agentId: agent.id, error: agentError });
549
+ }
550
+ }
551
+ }
552
+ } catch (storageError) {
553
+ const logger = mastra.getLogger();
554
+ logger.debug("Could not fetch stored agents", { error: storageError });
555
+ }
349
556
  return serializedAgents;
350
557
  } catch (error) {
351
558
  return handleError(error, "Error getting agents");
@@ -354,13 +561,14 @@ var LIST_AGENTS_ROUTE = createRoute({
354
561
  });
355
562
  var GET_AGENT_BY_ID_ROUTE = createRoute({
356
563
  method: "GET",
357
- path: "/api/agents/:agentId",
564
+ path: "/agents/:agentId",
358
565
  responseType: "json",
359
566
  pathParamSchema: agentIdPathParams,
360
567
  responseSchema: serializedAgentSchema,
361
568
  summary: "Get agent by ID",
362
569
  description: "Returns details for a specific agent including configuration, tools, and memory settings",
363
570
  tags: ["Agents"],
571
+ requiresAuth: true,
364
572
  handler: async ({ agentId, mastra, requestContext }) => {
365
573
  try {
366
574
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -379,7 +587,7 @@ var GET_AGENT_BY_ID_ROUTE = createRoute({
379
587
  });
380
588
  var GENERATE_AGENT_ROUTE = createRoute({
381
589
  method: "POST",
382
- path: "/api/agents/:agentId/generate",
590
+ path: "/agents/:agentId/generate",
383
591
  responseType: "json",
384
592
  pathParamSchema: agentIdPathParams,
385
593
  bodySchema: agentExecutionBodySchema,
@@ -387,14 +595,42 @@ var GENERATE_AGENT_ROUTE = createRoute({
387
595
  summary: "Generate agent response",
388
596
  description: "Executes an agent with the provided messages and returns the complete response",
389
597
  tags: ["Agents"],
390
- handler: async ({ agentId, mastra, abortSignal, ...params }) => {
598
+ requiresAuth: true,
599
+ handler: async ({ agentId, mastra, abortSignal, requestContext: serverRequestContext, ...params }) => {
391
600
  try {
392
601
  const agent = await getAgentFromSystem({ mastra, agentId });
393
602
  sanitizeBody(params, ["tools"]);
394
- const { messages, ...rest } = params;
603
+ const { messages, memory: memoryOption, requestContext: bodyRequestContext, ...rest } = params;
395
604
  validateBody({ messages });
605
+ if (bodyRequestContext && typeof bodyRequestContext === "object") {
606
+ for (const [key, value] of Object.entries(bodyRequestContext)) {
607
+ if (serverRequestContext.get(key) === void 0) {
608
+ serverRequestContext.set(key, value);
609
+ }
610
+ }
611
+ }
612
+ let authorizedMemoryOption = memoryOption;
613
+ if (memoryOption) {
614
+ const clientThreadId = typeof memoryOption.thread === "string" ? memoryOption.thread : memoryOption.thread?.id;
615
+ const effectiveResourceId = getEffectiveResourceId(serverRequestContext, memoryOption.resource);
616
+ const effectiveThreadId = getEffectiveThreadId(serverRequestContext, clientThreadId);
617
+ if (effectiveThreadId && effectiveResourceId) {
618
+ const memoryInstance = await agent.getMemory({ requestContext: serverRequestContext });
619
+ if (memoryInstance) {
620
+ const thread = await memoryInstance.getThreadById({ threadId: effectiveThreadId });
621
+ await validateThreadOwnership(thread, effectiveResourceId);
622
+ }
623
+ }
624
+ authorizedMemoryOption = {
625
+ ...memoryOption,
626
+ resource: effectiveResourceId ?? memoryOption.resource,
627
+ thread: effectiveThreadId ?? memoryOption.thread
628
+ };
629
+ }
396
630
  const result = await agent.generate(messages, {
397
631
  ...rest,
632
+ requestContext: serverRequestContext,
633
+ memory: authorizedMemoryOption,
398
634
  abortSignal
399
635
  });
400
636
  return result;
@@ -405,29 +641,39 @@ var GENERATE_AGENT_ROUTE = createRoute({
405
641
  });
406
642
  var GENERATE_LEGACY_ROUTE = createRoute({
407
643
  method: "POST",
408
- path: "/api/agents/:agentId/generate-legacy",
644
+ path: "/agents/:agentId/generate-legacy",
409
645
  responseType: "json",
410
646
  pathParamSchema: agentIdPathParams,
411
647
  bodySchema: agentExecutionLegacyBodySchema,
412
648
  responseSchema: generateResponseSchema,
413
649
  summary: "[DEPRECATED] Generate with legacy format",
414
- description: "Legacy endpoint for generating agent responses. Use /api/agents/:agentId/generate instead.",
650
+ description: "Legacy endpoint for generating agent responses. Use /agents/:agentId/generate instead.",
415
651
  tags: ["Agents", "Legacy"],
416
- handler: async ({ mastra, agentId, abortSignal, ...params }) => {
652
+ requiresAuth: true,
653
+ handler: async ({ mastra, agentId, abortSignal, requestContext, ...params }) => {
417
654
  try {
418
655
  const agent = await getAgentFromSystem({ mastra, agentId });
419
656
  sanitizeBody(params, ["tools"]);
420
657
  const { messages, resourceId, resourceid, threadId, ...rest } = params;
421
- const finalResourceId = resourceId ?? resourceid;
658
+ const clientResourceId = resourceId ?? resourceid;
659
+ const effectiveResourceId = getEffectiveResourceId(requestContext, clientResourceId);
660
+ const effectiveThreadId = getEffectiveThreadId(requestContext, threadId);
422
661
  validateBody({ messages });
423
- if (threadId && !finalResourceId || !threadId && finalResourceId) {
662
+ if (effectiveThreadId && !effectiveResourceId || !effectiveThreadId && effectiveResourceId) {
424
663
  throw new HTTPException(400, { message: "Both threadId or resourceId must be provided" });
425
664
  }
665
+ if (effectiveThreadId && effectiveResourceId) {
666
+ const memory = await agent.getMemory({ requestContext });
667
+ if (memory) {
668
+ const thread = await memory.getThreadById({ threadId: effectiveThreadId });
669
+ await validateThreadOwnership(thread, effectiveResourceId);
670
+ }
671
+ }
426
672
  const result = await agent.generateLegacy(messages, {
427
673
  ...rest,
428
674
  abortSignal,
429
- resourceId: finalResourceId ?? "",
430
- threadId: threadId ?? ""
675
+ resourceId: effectiveResourceId ?? "",
676
+ threadId: effectiveThreadId ?? ""
431
677
  });
432
678
  return result;
433
679
  } catch (error) {
@@ -437,29 +683,39 @@ var GENERATE_LEGACY_ROUTE = createRoute({
437
683
  });
438
684
  var STREAM_GENERATE_LEGACY_ROUTE = createRoute({
439
685
  method: "POST",
440
- path: "/api/agents/:agentId/stream-legacy",
686
+ path: "/agents/:agentId/stream-legacy",
441
687
  responseType: "datastream-response",
442
688
  pathParamSchema: agentIdPathParams,
443
689
  bodySchema: agentExecutionLegacyBodySchema,
444
690
  responseSchema: streamResponseSchema,
445
691
  summary: "[DEPRECATED] Stream with legacy format",
446
- description: "Legacy endpoint for streaming agent responses. Use /api/agents/:agentId/stream instead.",
692
+ description: "Legacy endpoint for streaming agent responses. Use /agents/:agentId/stream instead.",
447
693
  tags: ["Agents", "Legacy"],
448
- handler: async ({ mastra, agentId, abortSignal, ...params }) => {
694
+ requiresAuth: true,
695
+ handler: async ({ mastra, agentId, abortSignal, requestContext, ...params }) => {
449
696
  try {
450
697
  const agent = await getAgentFromSystem({ mastra, agentId });
451
698
  sanitizeBody(params, ["tools"]);
452
699
  const { messages, resourceId, resourceid, threadId, ...rest } = params;
453
- const finalResourceId = resourceId ?? resourceid;
700
+ const clientResourceId = resourceId ?? resourceid;
701
+ const effectiveResourceId = getEffectiveResourceId(requestContext, clientResourceId);
702
+ const effectiveThreadId = getEffectiveThreadId(requestContext, threadId);
454
703
  validateBody({ messages });
455
- if (threadId && !finalResourceId || !threadId && finalResourceId) {
704
+ if (effectiveThreadId && !effectiveResourceId || !effectiveThreadId && effectiveResourceId) {
456
705
  throw new HTTPException(400, { message: "Both threadId or resourceId must be provided" });
457
706
  }
707
+ if (effectiveThreadId && effectiveResourceId) {
708
+ const memory = await agent.getMemory({ requestContext });
709
+ if (memory) {
710
+ const thread = await memory.getThreadById({ threadId: effectiveThreadId });
711
+ await validateThreadOwnership(thread, effectiveResourceId);
712
+ }
713
+ }
458
714
  const streamResult = await agent.streamLegacy(messages, {
459
715
  ...rest,
460
716
  abortSignal,
461
- resourceId: finalResourceId ?? "",
462
- threadId: threadId ?? ""
717
+ resourceId: effectiveResourceId ?? "",
718
+ threadId: effectiveThreadId ?? ""
463
719
  });
464
720
  const streamResponse = rest.output ? streamResult.toTextStreamResponse({
465
721
  headers: {
@@ -483,12 +739,13 @@ var STREAM_GENERATE_LEGACY_ROUTE = createRoute({
483
739
  });
484
740
  var GET_PROVIDERS_ROUTE = createRoute({
485
741
  method: "GET",
486
- path: "/api/agents/providers",
742
+ path: "/agents/providers",
487
743
  responseType: "json",
488
744
  responseSchema: providersResponseSchema,
489
745
  summary: "List AI providers",
490
746
  description: "Returns a list of all configured AI model providers",
491
747
  tags: ["Agents"],
748
+ requiresAuth: true,
492
749
  handler: async () => {
493
750
  try {
494
751
  const providers = Object.entries(PROVIDER_REGISTRY).map(([id, provider]) => {
@@ -512,7 +769,7 @@ var GET_PROVIDERS_ROUTE = createRoute({
512
769
  });
513
770
  var GENERATE_AGENT_VNEXT_ROUTE = createRoute({
514
771
  method: "POST",
515
- path: "/api/agents/:agentId/generate/vnext",
772
+ path: "/agents/:agentId/generate/vnext",
516
773
  responseType: "json",
517
774
  pathParamSchema: agentIdPathParams,
518
775
  bodySchema: agentExecutionBodySchema,
@@ -520,11 +777,12 @@ var GENERATE_AGENT_VNEXT_ROUTE = createRoute({
520
777
  summary: "Generate a response from an agent",
521
778
  description: "Generate a response from an agent",
522
779
  tags: ["Agents"],
780
+ requiresAuth: true,
523
781
  handler: GENERATE_AGENT_ROUTE.handler
524
782
  });
525
783
  var STREAM_GENERATE_ROUTE = createRoute({
526
784
  method: "POST",
527
- path: "/api/agents/:agentId/stream",
785
+ path: "/agents/:agentId/stream",
528
786
  responseType: "stream",
529
787
  streamFormat: "sse",
530
788
  pathParamSchema: agentIdPathParams,
@@ -533,14 +791,42 @@ var STREAM_GENERATE_ROUTE = createRoute({
533
791
  summary: "Stream agent response",
534
792
  description: "Executes an agent with the provided messages and streams the response in real-time",
535
793
  tags: ["Agents"],
536
- handler: async ({ mastra, agentId, abortSignal, ...params }) => {
794
+ requiresAuth: true,
795
+ handler: async ({ mastra, agentId, abortSignal, requestContext: serverRequestContext, ...params }) => {
537
796
  try {
538
797
  const agent = await getAgentFromSystem({ mastra, agentId });
539
798
  sanitizeBody(params, ["tools"]);
540
- const { messages, ...rest } = params;
799
+ const { messages, memory: memoryOption, requestContext: bodyRequestContext, ...rest } = params;
541
800
  validateBody({ messages });
801
+ if (bodyRequestContext && typeof bodyRequestContext === "object") {
802
+ for (const [key, value] of Object.entries(bodyRequestContext)) {
803
+ if (serverRequestContext.get(key) === void 0) {
804
+ serverRequestContext.set(key, value);
805
+ }
806
+ }
807
+ }
808
+ let authorizedMemoryOption = memoryOption;
809
+ if (memoryOption) {
810
+ const clientThreadId = typeof memoryOption.thread === "string" ? memoryOption.thread : memoryOption.thread?.id;
811
+ const effectiveResourceId = getEffectiveResourceId(serverRequestContext, memoryOption.resource);
812
+ const effectiveThreadId = getEffectiveThreadId(serverRequestContext, clientThreadId);
813
+ if (effectiveThreadId && effectiveResourceId) {
814
+ const memoryInstance = await agent.getMemory({ requestContext: serverRequestContext });
815
+ if (memoryInstance) {
816
+ const thread = await memoryInstance.getThreadById({ threadId: effectiveThreadId });
817
+ await validateThreadOwnership(thread, effectiveResourceId);
818
+ }
819
+ }
820
+ authorizedMemoryOption = {
821
+ ...memoryOption,
822
+ resource: effectiveResourceId ?? memoryOption.resource,
823
+ thread: effectiveThreadId ?? memoryOption.thread
824
+ };
825
+ }
542
826
  const streamResult = await agent.stream(messages, {
543
827
  ...rest,
828
+ requestContext: serverRequestContext,
829
+ memory: authorizedMemoryOption,
544
830
  abortSignal
545
831
  });
546
832
  return streamResult.fullStream;
@@ -551,7 +837,7 @@ var STREAM_GENERATE_ROUTE = createRoute({
551
837
  });
552
838
  var STREAM_GENERATE_VNEXT_DEPRECATED_ROUTE = createRoute({
553
839
  method: "POST",
554
- path: "/api/agents/:agentId/stream/vnext",
840
+ path: "/agents/:agentId/stream/vnext",
555
841
  responseType: "stream",
556
842
  pathParamSchema: agentIdPathParams,
557
843
  bodySchema: agentExecutionBodySchema,
@@ -559,12 +845,13 @@ var STREAM_GENERATE_VNEXT_DEPRECATED_ROUTE = createRoute({
559
845
  summary: "Stream a response from an agent",
560
846
  description: "[DEPRECATED] This endpoint is deprecated. Please use /stream instead.",
561
847
  tags: ["Agents"],
848
+ requiresAuth: true,
562
849
  deprecated: true,
563
850
  handler: STREAM_GENERATE_ROUTE.handler
564
851
  });
565
852
  var APPROVE_TOOL_CALL_ROUTE = createRoute({
566
853
  method: "POST",
567
- path: "/api/agents/:agentId/approve-tool-call",
854
+ path: "/agents/:agentId/approve-tool-call",
568
855
  responseType: "stream",
569
856
  streamFormat: "sse",
570
857
  pathParamSchema: agentIdPathParams,
@@ -573,6 +860,7 @@ var APPROVE_TOOL_CALL_ROUTE = createRoute({
573
860
  summary: "Approve tool call",
574
861
  description: "Approves a pending tool call and continues agent execution",
575
862
  tags: ["Agents", "Tools"],
863
+ requiresAuth: true,
576
864
  handler: async ({ mastra, agentId, abortSignal, ...params }) => {
577
865
  try {
578
866
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -595,7 +883,7 @@ var APPROVE_TOOL_CALL_ROUTE = createRoute({
595
883
  });
596
884
  var DECLINE_TOOL_CALL_ROUTE = createRoute({
597
885
  method: "POST",
598
- path: "/api/agents/:agentId/decline-tool-call",
886
+ path: "/agents/:agentId/decline-tool-call",
599
887
  responseType: "stream",
600
888
  streamFormat: "sse",
601
889
  pathParamSchema: agentIdPathParams,
@@ -604,6 +892,7 @@ var DECLINE_TOOL_CALL_ROUTE = createRoute({
604
892
  summary: "Decline tool call",
605
893
  description: "Declines a pending tool call and continues agent execution without executing the tool",
606
894
  tags: ["Agents", "Tools"],
895
+ requiresAuth: true,
607
896
  handler: async ({ mastra, agentId, abortSignal, ...params }) => {
608
897
  try {
609
898
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -626,7 +915,7 @@ var DECLINE_TOOL_CALL_ROUTE = createRoute({
626
915
  });
627
916
  var APPROVE_TOOL_CALL_GENERATE_ROUTE = createRoute({
628
917
  method: "POST",
629
- path: "/api/agents/:agentId/approve-tool-call-generate",
918
+ path: "/agents/:agentId/approve-tool-call-generate",
630
919
  responseType: "json",
631
920
  pathParamSchema: agentIdPathParams,
632
921
  bodySchema: approveToolCallBodySchema,
@@ -634,6 +923,7 @@ var APPROVE_TOOL_CALL_GENERATE_ROUTE = createRoute({
634
923
  summary: "Approve tool call (non-streaming)",
635
924
  description: "Approves a pending tool call and returns the complete response",
636
925
  tags: ["Agents", "Tools"],
926
+ requiresAuth: true,
637
927
  handler: async ({ mastra, agentId, abortSignal, ...params }) => {
638
928
  try {
639
929
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -656,7 +946,7 @@ var APPROVE_TOOL_CALL_GENERATE_ROUTE = createRoute({
656
946
  });
657
947
  var DECLINE_TOOL_CALL_GENERATE_ROUTE = createRoute({
658
948
  method: "POST",
659
- path: "/api/agents/:agentId/decline-tool-call-generate",
949
+ path: "/agents/:agentId/decline-tool-call-generate",
660
950
  responseType: "json",
661
951
  pathParamSchema: agentIdPathParams,
662
952
  bodySchema: declineToolCallBodySchema,
@@ -664,6 +954,7 @@ var DECLINE_TOOL_CALL_GENERATE_ROUTE = createRoute({
664
954
  summary: "Decline tool call (non-streaming)",
665
955
  description: "Declines a pending tool call and returns the complete response",
666
956
  tags: ["Agents", "Tools"],
957
+ requiresAuth: true,
667
958
  handler: async ({ mastra, agentId, abortSignal, ...params }) => {
668
959
  try {
669
960
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -686,7 +977,7 @@ var DECLINE_TOOL_CALL_GENERATE_ROUTE = createRoute({
686
977
  });
687
978
  var STREAM_NETWORK_ROUTE = createRoute({
688
979
  method: "POST",
689
- path: "/api/agents/:agentId/network",
980
+ path: "/agents/:agentId/network",
690
981
  responseType: "stream",
691
982
  streamFormat: "sse",
692
983
  pathParamSchema: agentIdPathParams,
@@ -695,6 +986,7 @@ var STREAM_NETWORK_ROUTE = createRoute({
695
986
  summary: "Stream agent network",
696
987
  description: "Executes an agent network with multiple agents and streams the response",
697
988
  tags: ["Agents"],
989
+ requiresAuth: true,
698
990
  handler: async ({ mastra, messages, agentId, ...params }) => {
699
991
  try {
700
992
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -711,7 +1003,7 @@ var STREAM_NETWORK_ROUTE = createRoute({
711
1003
  });
712
1004
  var APPROVE_NETWORK_TOOL_CALL_ROUTE = createRoute({
713
1005
  method: "POST",
714
- path: "/api/agents/:agentId/approve-network-tool-call",
1006
+ path: "/agents/:agentId/approve-network-tool-call",
715
1007
  responseType: "stream",
716
1008
  streamFormat: "sse",
717
1009
  pathParamSchema: agentIdPathParams,
@@ -720,6 +1012,7 @@ var APPROVE_NETWORK_TOOL_CALL_ROUTE = createRoute({
720
1012
  summary: "Approve network tool call",
721
1013
  description: "Approves a pending network tool call and continues network agent execution",
722
1014
  tags: ["Agents", "Tools"],
1015
+ requiresAuth: true,
723
1016
  handler: async ({ mastra, agentId, ...params }) => {
724
1017
  try {
725
1018
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -738,7 +1031,7 @@ var APPROVE_NETWORK_TOOL_CALL_ROUTE = createRoute({
738
1031
  });
739
1032
  var DECLINE_NETWORK_TOOL_CALL_ROUTE = createRoute({
740
1033
  method: "POST",
741
- path: "/api/agents/:agentId/decline-network-tool-call",
1034
+ path: "/agents/:agentId/decline-network-tool-call",
742
1035
  responseType: "stream",
743
1036
  streamFormat: "sse",
744
1037
  pathParamSchema: agentIdPathParams,
@@ -747,6 +1040,7 @@ var DECLINE_NETWORK_TOOL_CALL_ROUTE = createRoute({
747
1040
  summary: "Decline network tool call",
748
1041
  description: "Declines a pending network tool call and continues network agent execution without executing the tool",
749
1042
  tags: ["Agents", "Tools"],
1043
+ requiresAuth: true,
750
1044
  handler: async ({ mastra, agentId, ...params }) => {
751
1045
  try {
752
1046
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -765,7 +1059,7 @@ var DECLINE_NETWORK_TOOL_CALL_ROUTE = createRoute({
765
1059
  });
766
1060
  var UPDATE_AGENT_MODEL_ROUTE = createRoute({
767
1061
  method: "POST",
768
- path: "/api/agents/:agentId/model",
1062
+ path: "/agents/:agentId/model",
769
1063
  responseType: "json",
770
1064
  pathParamSchema: agentIdPathParams,
771
1065
  bodySchema: updateAgentModelBodySchema,
@@ -773,6 +1067,7 @@ var UPDATE_AGENT_MODEL_ROUTE = createRoute({
773
1067
  summary: "Update agent model",
774
1068
  description: "Updates the AI model used by the agent",
775
1069
  tags: ["Agents", "Models"],
1070
+ requiresAuth: true,
776
1071
  handler: async ({ mastra, agentId, modelId, provider }) => {
777
1072
  try {
778
1073
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -786,13 +1081,14 @@ var UPDATE_AGENT_MODEL_ROUTE = createRoute({
786
1081
  });
787
1082
  var RESET_AGENT_MODEL_ROUTE = createRoute({
788
1083
  method: "POST",
789
- path: "/api/agents/:agentId/model/reset",
1084
+ path: "/agents/:agentId/model/reset",
790
1085
  responseType: "json",
791
1086
  pathParamSchema: agentIdPathParams,
792
1087
  responseSchema: modelManagementResponseSchema,
793
1088
  summary: "Reset agent model",
794
1089
  description: "Resets the agent model to its original configuration",
795
1090
  tags: ["Agents", "Models"],
1091
+ requiresAuth: true,
796
1092
  handler: async ({ mastra, agentId }) => {
797
1093
  try {
798
1094
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -805,7 +1101,7 @@ var RESET_AGENT_MODEL_ROUTE = createRoute({
805
1101
  });
806
1102
  var REORDER_AGENT_MODEL_LIST_ROUTE = createRoute({
807
1103
  method: "POST",
808
- path: "/api/agents/:agentId/models/reorder",
1104
+ path: "/agents/:agentId/models/reorder",
809
1105
  responseType: "json",
810
1106
  pathParamSchema: agentIdPathParams,
811
1107
  bodySchema: reorderAgentModelListBodySchema,
@@ -813,6 +1109,7 @@ var REORDER_AGENT_MODEL_LIST_ROUTE = createRoute({
813
1109
  summary: "Reorder agent model list",
814
1110
  description: "Reorders the model list for agents with multiple model configurations",
815
1111
  tags: ["Agents", "Models"],
1112
+ requiresAuth: true,
816
1113
  handler: async ({ mastra, agentId, reorderedModelIds }) => {
817
1114
  try {
818
1115
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -829,7 +1126,7 @@ var REORDER_AGENT_MODEL_LIST_ROUTE = createRoute({
829
1126
  });
830
1127
  var UPDATE_AGENT_MODEL_IN_MODEL_LIST_ROUTE = createRoute({
831
1128
  method: "POST",
832
- path: "/api/agents/:agentId/models/:modelConfigId",
1129
+ path: "/agents/:agentId/models/:modelConfigId",
833
1130
  responseType: "json",
834
1131
  pathParamSchema: modelConfigIdPathParams,
835
1132
  bodySchema: updateAgentModelInModelListBodySchema,
@@ -837,6 +1134,7 @@ var UPDATE_AGENT_MODEL_IN_MODEL_LIST_ROUTE = createRoute({
837
1134
  summary: "Update model in model list",
838
1135
  description: "Updates a specific model configuration in the agent model list",
839
1136
  tags: ["Agents", "Models"],
1137
+ requiresAuth: true,
840
1138
  handler: async ({ mastra, agentId, modelConfigId, model: bodyModel, maxRetries, enabled }) => {
841
1139
  try {
842
1140
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -933,7 +1231,7 @@ async function findConnectedModel(agent) {
933
1231
  }
934
1232
  var ENHANCE_INSTRUCTIONS_ROUTE = createRoute({
935
1233
  method: "POST",
936
- path: "/api/agents/:agentId/instructions/enhance",
1234
+ path: "/agents/:agentId/instructions/enhance",
937
1235
  responseType: "json",
938
1236
  pathParamSchema: agentIdPathParams,
939
1237
  bodySchema: enhanceInstructionsBodySchema,
@@ -941,6 +1239,7 @@ var ENHANCE_INSTRUCTIONS_ROUTE = createRoute({
941
1239
  summary: "Enhance agent instructions",
942
1240
  description: "Uses AI to enhance or modify agent instructions based on user feedback",
943
1241
  tags: ["Agents"],
1242
+ requiresAuth: true,
944
1243
  handler: async ({ mastra, agentId, instructions, comment }) => {
945
1244
  try {
946
1245
  const agent = await getAgentFromSystem({ mastra, agentId });
@@ -974,7 +1273,7 @@ ${comment ? `User feedback: ${comment}` : ""}`,
974
1273
  });
975
1274
  var STREAM_VNEXT_DEPRECATED_ROUTE = createRoute({
976
1275
  method: "POST",
977
- path: "/api/agents/:agentId/streamVNext",
1276
+ path: "/agents/:agentId/streamVNext",
978
1277
  responseType: "stream",
979
1278
  pathParamSchema: agentIdPathParams,
980
1279
  bodySchema: agentExecutionBodySchema,
@@ -982,6 +1281,7 @@ var STREAM_VNEXT_DEPRECATED_ROUTE = createRoute({
982
1281
  summary: "Stream a response from an agent",
983
1282
  description: "[DEPRECATED] This endpoint is deprecated. Please use /stream instead.",
984
1283
  tags: ["Agents"],
1284
+ requiresAuth: true,
985
1285
  deprecated: true,
986
1286
  handler: async () => {
987
1287
  throw new HTTPException(410, { message: "This endpoint is deprecated. Please use /stream instead." });
@@ -989,7 +1289,7 @@ var STREAM_VNEXT_DEPRECATED_ROUTE = createRoute({
989
1289
  });
990
1290
  var STREAM_UI_MESSAGE_VNEXT_DEPRECATED_ROUTE = createRoute({
991
1291
  method: "POST",
992
- path: "/api/agents/:agentId/stream/vnext/ui",
1292
+ path: "/agents/:agentId/stream/vnext/ui",
993
1293
  responseType: "stream",
994
1294
  pathParamSchema: agentIdPathParams,
995
1295
  bodySchema: agentExecutionBodySchema,
@@ -997,6 +1297,7 @@ var STREAM_UI_MESSAGE_VNEXT_DEPRECATED_ROUTE = createRoute({
997
1297
  summary: "Stream UI messages from an agent",
998
1298
  description: "[DEPRECATED] This endpoint is deprecated. Please use the @mastra/ai-sdk package for uiMessage transformations",
999
1299
  tags: ["Agents"],
1300
+ requiresAuth: true,
1000
1301
  deprecated: true,
1001
1302
  handler: async () => {
1002
1303
  try {
@@ -1013,7 +1314,7 @@ var STREAM_UI_MESSAGE_VNEXT_DEPRECATED_ROUTE = createRoute({
1013
1314
  });
1014
1315
  var STREAM_UI_MESSAGE_DEPRECATED_ROUTE = createRoute({
1015
1316
  method: "POST",
1016
- path: "/api/agents/:agentId/stream/ui",
1317
+ path: "/agents/:agentId/stream/ui",
1017
1318
  responseType: "stream",
1018
1319
  pathParamSchema: agentIdPathParams,
1019
1320
  bodySchema: agentExecutionBodySchema,
@@ -1021,10 +1322,52 @@ var STREAM_UI_MESSAGE_DEPRECATED_ROUTE = createRoute({
1021
1322
  summary: "Stream UI messages from an agent",
1022
1323
  description: "[DEPRECATED] This endpoint is deprecated. Please use the @mastra/ai-sdk package for uiMessage transformations",
1023
1324
  tags: ["Agents"],
1325
+ requiresAuth: true,
1024
1326
  deprecated: true,
1025
1327
  handler: STREAM_UI_MESSAGE_VNEXT_DEPRECATED_ROUTE.handler
1026
1328
  });
1329
+ var GET_AGENT_SKILL_ROUTE = createRoute({
1330
+ method: "GET",
1331
+ path: "/agents/:agentId/skills/:skillName",
1332
+ responseType: "json",
1333
+ pathParamSchema: agentSkillPathParams,
1334
+ responseSchema: getAgentSkillResponseSchema,
1335
+ summary: "Get agent skill",
1336
+ description: "Returns details for a specific skill available to the agent via its workspace",
1337
+ tags: ["Agents", "Skills"],
1338
+ handler: async ({ mastra, agentId, skillName, requestContext }) => {
1339
+ try {
1340
+ const agent = agentId ? mastra.getAgentById(agentId) : null;
1341
+ if (!agent) {
1342
+ throw new HTTPException(404, { message: "Agent not found" });
1343
+ }
1344
+ const workspace = await agent.getWorkspace({ requestContext });
1345
+ if (!workspace?.skills) {
1346
+ throw new HTTPException(404, { message: "Agent does not have skills configured" });
1347
+ }
1348
+ const skill = await workspace.skills.get(skillName);
1349
+ if (!skill) {
1350
+ throw new HTTPException(404, { message: `Skill "${skillName}" not found` });
1351
+ }
1352
+ return {
1353
+ name: skill.name,
1354
+ description: skill.description,
1355
+ license: skill.license,
1356
+ compatibility: skill.compatibility,
1357
+ metadata: skill.metadata,
1358
+ path: skill.path,
1359
+ instructions: skill.instructions,
1360
+ source: skill.source,
1361
+ references: skill.references,
1362
+ scripts: skill.scripts,
1363
+ assets: skill.assets
1364
+ };
1365
+ } catch (error) {
1366
+ return handleError(error, "Error getting agent skill");
1367
+ }
1368
+ }
1369
+ });
1027
1370
 
1028
- export { APPROVE_NETWORK_TOOL_CALL_ROUTE, APPROVE_TOOL_CALL_GENERATE_ROUTE, APPROVE_TOOL_CALL_ROUTE, DECLINE_NETWORK_TOOL_CALL_ROUTE, DECLINE_TOOL_CALL_GENERATE_ROUTE, DECLINE_TOOL_CALL_ROUTE, ENHANCE_INSTRUCTIONS_ROUTE, GENERATE_AGENT_ROUTE, GENERATE_AGENT_VNEXT_ROUTE, GENERATE_LEGACY_ROUTE, GET_AGENT_BY_ID_ROUTE, GET_PROVIDERS_ROUTE, LIST_AGENTS_ROUTE, REORDER_AGENT_MODEL_LIST_ROUTE, RESET_AGENT_MODEL_ROUTE, STREAM_GENERATE_LEGACY_ROUTE, STREAM_GENERATE_ROUTE, STREAM_GENERATE_VNEXT_DEPRECATED_ROUTE, STREAM_NETWORK_ROUTE, STREAM_UI_MESSAGE_DEPRECATED_ROUTE, STREAM_UI_MESSAGE_VNEXT_DEPRECATED_ROUTE, STREAM_VNEXT_DEPRECATED_ROUTE, UPDATE_AGENT_MODEL_IN_MODEL_LIST_ROUTE, UPDATE_AGENT_MODEL_ROUTE, agents_exports, getAgentFromSystem, getSerializedAgentTools, getSerializedProcessors };
1029
- //# sourceMappingURL=chunk-2CLS2PYJ.js.map
1030
- //# sourceMappingURL=chunk-2CLS2PYJ.js.map
1371
+ export { APPROVE_NETWORK_TOOL_CALL_ROUTE, APPROVE_TOOL_CALL_GENERATE_ROUTE, APPROVE_TOOL_CALL_ROUTE, DECLINE_NETWORK_TOOL_CALL_ROUTE, DECLINE_TOOL_CALL_GENERATE_ROUTE, DECLINE_TOOL_CALL_ROUTE, ENHANCE_INSTRUCTIONS_ROUTE, GENERATE_AGENT_ROUTE, GENERATE_AGENT_VNEXT_ROUTE, GENERATE_LEGACY_ROUTE, GET_AGENT_BY_ID_ROUTE, GET_AGENT_SKILL_ROUTE, GET_PROVIDERS_ROUTE, LIST_AGENTS_ROUTE, REORDER_AGENT_MODEL_LIST_ROUTE, RESET_AGENT_MODEL_ROUTE, STREAM_GENERATE_LEGACY_ROUTE, STREAM_GENERATE_ROUTE, STREAM_GENERATE_VNEXT_DEPRECATED_ROUTE, STREAM_NETWORK_ROUTE, STREAM_UI_MESSAGE_DEPRECATED_ROUTE, STREAM_UI_MESSAGE_VNEXT_DEPRECATED_ROUTE, STREAM_VNEXT_DEPRECATED_ROUTE, UPDATE_AGENT_MODEL_IN_MODEL_LIST_ROUTE, UPDATE_AGENT_MODEL_ROUTE, agents_exports, getAgentFromSystem, getSerializedAgentTools, getSerializedProcessors, getSerializedSkillsFromAgent, getWorkspaceToolsFromAgent };
1372
+ //# sourceMappingURL=chunk-UNWXKDYP.js.map
1373
+ //# sourceMappingURL=chunk-UNWXKDYP.js.map