@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
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/server-adapter/openapi-utils.ts","../src/server/server-adapter/routes/route-builder.ts"],"names":[],"mappings":"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","file":"chunk-D5VCL56B.js","sourcesContent":["import type { ApiRoute } from '@mastra/core/server';\nimport { zodToJsonSchema } from '@mastra/core/utils/zod-to-json';\nimport type { ZodSchema } from 'zod';\nimport type { ServerRoute } from './routes';\n\ninterface RouteOpenAPIConfig {\n method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';\n path: string;\n summary?: string;\n description?: string;\n tags?: string[];\n pathParamSchema?: ZodSchema;\n queryParamSchema?: ZodSchema;\n bodySchema?: ZodSchema;\n responseSchema?: ZodSchema;\n deprecated?: boolean;\n}\n\ninterface OpenAPIRoute {\n summary?: string;\n description?: string;\n tags?: string[];\n deprecated?: boolean;\n requestParams?: {\n path?: ZodSchema;\n query?: ZodSchema;\n };\n requestBody?: {\n content: {\n 'application/json': {\n schema: ZodSchema;\n };\n };\n };\n responses: {\n [statusCode: string]: {\n description: string;\n content?: {\n 'application/json': {\n schema: ZodSchema;\n };\n };\n };\n };\n}\n\n/**\n * Generates OpenAPI specification for a single route\n * Extracts path parameters, query parameters, request body, and response schemas\n */\nexport function generateRouteOpenAPI({\n method,\n path,\n summary,\n description,\n tags = [],\n pathParamSchema,\n queryParamSchema,\n bodySchema,\n responseSchema,\n deprecated,\n}: RouteOpenAPIConfig): OpenAPIRoute {\n const route: OpenAPIRoute = {\n summary: summary || `${method} ${path}`,\n description,\n tags,\n deprecated,\n responses: {\n 200: {\n description: 'Successful response',\n },\n },\n };\n\n // Add path and query parameters\n if (pathParamSchema || queryParamSchema) {\n route.requestParams = {};\n\n if (pathParamSchema) {\n route.requestParams.path = pathParamSchema;\n }\n\n if (queryParamSchema) {\n route.requestParams.query = queryParamSchema;\n }\n }\n\n // Add request body with raw Zod schema\n if (bodySchema) {\n route.requestBody = {\n content: {\n 'application/json': {\n schema: bodySchema,\n },\n },\n };\n }\n\n // Add response schema with raw Zod schema\n if (responseSchema) {\n route.responses[200] = {\n description: 'Successful response',\n content: {\n 'application/json': {\n schema: responseSchema,\n },\n },\n };\n }\n\n return route;\n}\n\n/**\n * Converts an OpenAPI route spec with Zod schemas to one with JSON Schema\n */\nfunction convertZodToJsonSchema(spec: OpenAPIRoute): any {\n const converted: any = {\n summary: spec.summary,\n description: spec.description,\n tags: spec.tags,\n responses: {},\n };\n\n const parameters: any[] = [];\n\n // Convert path parameters\n if (spec.requestParams?.path) {\n const pathSchema = zodToJsonSchema(spec.requestParams.path, 'openApi3', 'none') as any;\n const properties = pathSchema.properties || {};\n\n Object.entries(properties).forEach(([name, schema]) => {\n parameters.push({\n name,\n in: 'path',\n required: true,\n description: (schema as any).description || `The ${name} parameter`,\n schema,\n });\n });\n }\n\n // Convert query parameters\n if (spec.requestParams?.query) {\n const querySchema = zodToJsonSchema(spec.requestParams.query, 'openApi3', 'none') as any;\n const properties = querySchema.properties || {};\n const required = querySchema.required || [];\n\n Object.entries(properties).forEach(([name, schema]) => {\n parameters.push({\n name,\n in: 'query',\n required: required.includes(name),\n description: (schema as any).description || `Query parameter: ${name}`,\n schema,\n });\n });\n }\n\n if (parameters.length > 0) {\n converted.parameters = parameters;\n }\n\n // Convert request body\n if (spec.requestBody?.content?.['application/json']?.schema) {\n converted.requestBody = {\n required: true,\n content: {\n 'application/json': {\n schema: zodToJsonSchema(spec.requestBody.content['application/json'].schema, 'openApi3', 'none'),\n },\n },\n };\n }\n\n // Convert response schemas\n Object.entries(spec.responses).forEach(([statusCode, response]) => {\n converted.responses[statusCode] = {\n description: response.description,\n };\n\n if (response.content?.['application/json']?.schema) {\n converted.responses[statusCode].content = {\n 'application/json': {\n schema: zodToJsonSchema(response.content['application/json'].schema, 'openApi3', 'none'),\n },\n };\n }\n });\n\n return converted;\n}\n\n/**\n * Generates a complete OpenAPI 3.1.0 document from server routes\n * @param routes - Array of ServerRoute objects with OpenAPI specifications\n * @param info - API metadata (title, version, description)\n * @returns Complete OpenAPI 3.1.0 document\n */\nexport function generateOpenAPIDocument(\n routes: ServerRoute[],\n info: { title: string; version: string; description?: string },\n): any {\n const paths: Record<string, any> = {};\n\n // Build paths object from routes\n // Convert Express-style :param to OpenAPI-style {param}\n routes.forEach(route => {\n if (!route.openapi) return;\n\n const openapiPath = route.path.replace(/:(\\w+)/g, '{$1}');\n if (!paths[openapiPath]) {\n paths[openapiPath] = {};\n }\n\n // Convert Zod schemas to JSON Schema\n paths[openapiPath][route.method.toLowerCase()] = convertZodToJsonSchema(route.openapi);\n });\n\n return {\n openapi: '3.1.0',\n info: {\n title: info.title,\n version: info.version,\n description: info.description,\n },\n paths,\n };\n}\n\n/**\n * Converts custom API routes with DescribeRouteOptions to OpenAPI path entries.\n * The DescribeRouteOptions from hono-openapi extends OpenAPIV3_1.OperationObject,\n * so it already has the standard OpenAPI structure (parameters, requestBody, responses, etc.).\n *\n * @param routes - Array of ApiRoute objects with optional openapi specifications\n * @returns OpenAPI paths object to be merged into the main spec\n */\nexport function convertCustomRoutesToOpenAPIPaths(routes: ApiRoute[]): Record<string, any> {\n const paths: Record<string, any> = {};\n\n for (const route of routes) {\n // Skip routes without openapi metadata or routes marked as hidden\n if (!route.openapi || route.openapi.hide) {\n continue;\n }\n\n // Skip routes with method 'ALL' as they don't map well to OpenAPI\n if (route.method === 'ALL') {\n continue;\n }\n\n // Convert Express-style :param to OpenAPI-style {param}\n const openapiPath = route.path.replace(/:(\\w+)/g, '{$1}');\n\n if (!paths[openapiPath]) {\n paths[openapiPath] = {};\n }\n\n const method = route.method.toLowerCase();\n const openapi = route.openapi;\n\n // Build the OpenAPI operation object from DescribeRouteOptions\n // DescribeRouteOptions extends OpenAPIV3_1.OperationObject, so it already has:\n // - summary, description, tags, deprecated, externalDocs, operationId\n // - parameters (array of OpenAPIV3_1.ParameterObject)\n // - requestBody (OpenAPIV3_1.RequestBodyObject)\n // - responses (OpenAPIV3_1.ResponsesObject)\n // - security, servers, callbacks\n const operation: Record<string, any> = {\n summary: openapi.summary || `${route.method} ${route.path}`,\n description: openapi.description,\n tags: openapi.tags || ['custom'],\n deprecated: openapi.deprecated,\n externalDocs: openapi.externalDocs,\n security: openapi.security,\n servers: openapi.servers,\n };\n\n // Copy parameters directly if provided (already in OpenAPI format)\n if (openapi.parameters && Array.isArray(openapi.parameters)) {\n operation.parameters = openapi.parameters.map((param: any) => {\n // Convert Zod schemas in parameter schemas if needed\n if (param.schema && typeof param.schema === 'object' && '_def' in param.schema) {\n return {\n ...param,\n schema: zodToJsonSchema(param.schema, 'openApi3', 'none'),\n };\n }\n return param;\n });\n }\n\n // Handle request body - convert Zod schemas if needed\n if (openapi.requestBody) {\n const requestBody = openapi.requestBody as any;\n operation.requestBody = { ...requestBody };\n\n // Convert Zod schemas in requestBody content\n if (requestBody.content) {\n operation.requestBody.content = {};\n for (const [mediaType, mediaContent] of Object.entries(requestBody.content as Record<string, any>)) {\n if (mediaContent?.schema && typeof mediaContent.schema === 'object' && '_def' in mediaContent.schema) {\n operation.requestBody.content[mediaType] = {\n ...mediaContent,\n schema: zodToJsonSchema(mediaContent.schema, 'openApi3', 'none'),\n };\n } else {\n operation.requestBody.content[mediaType] = mediaContent;\n }\n }\n }\n }\n\n // Handle responses - convert Zod schemas if needed\n if (openapi.responses) {\n operation.responses = {};\n for (const [statusCode, response] of Object.entries(openapi.responses as Record<string, any>)) {\n if (!response) continue;\n\n // Handle reference objects\n if ('$ref' in response) {\n operation.responses[statusCode] = response;\n continue;\n }\n\n operation.responses[statusCode] = { ...response };\n\n // Convert Zod schemas in response content\n if (response.content) {\n operation.responses[statusCode].content = {};\n for (const [mediaType, mediaContent] of Object.entries(response.content as Record<string, any>)) {\n if (mediaContent?.schema && typeof mediaContent.schema === 'object' && '_def' in mediaContent.schema) {\n operation.responses[statusCode].content[mediaType] = {\n ...mediaContent,\n schema: zodToJsonSchema(mediaContent.schema, 'openApi3', 'none'),\n };\n } else {\n operation.responses[statusCode].content[mediaType] = mediaContent;\n }\n }\n }\n }\n } else {\n // Provide default response if none specified\n operation.responses = {\n 200: {\n description: 'Successful response',\n },\n };\n }\n\n // Remove undefined values\n Object.keys(operation).forEach(key => {\n if (operation[key] === undefined) {\n delete operation[key];\n }\n });\n\n paths[openapiPath][method] = operation;\n }\n\n return paths;\n}\n","import { z } from 'zod';\nimport type { ZodObject, ZodRawShape, ZodTypeAny } from 'zod';\nimport { generateRouteOpenAPI } from '../openapi-utils';\nimport type { InferParams, ResponseType, ServerRoute, ServerRouteHandler } from './index';\n\n/**\n * Extracts parameters matching a Zod schema's shape from a params object.\n * Useful for separating schema-defined params from ServerContext in handlers.\n *\n * @example\n * ```typescript\n * const querySchema = z.object({ page: z.number(), name: z.string() });\n *\n * handler: async (params) => {\n * const query = pickParams(querySchema, params);\n * // query is typed as { page: number, name: string }\n * }\n * ```\n */\nexport function pickParams<T extends z.ZodRawShape, P extends Record<string, unknown>>(\n schema: z.ZodObject<T>,\n params: P,\n): z.infer<z.ZodObject<T>> {\n const keys = Object.keys(schema.shape);\n const result = {} as z.infer<z.ZodObject<T>>;\n for (const key of keys) {\n if (key in params) {\n (result as any)[key] = params[key];\n }\n }\n return result;\n}\n\n/**\n * Wraps a Zod schema to accept either the expected type OR a JSON string.\n * Used for complex query parameters (arrays, objects) that are serialized as JSON in URLs.\n *\n * - If input is already the expected type, passes through to schema validation\n * - If input is a string, attempts JSON.parse then validates\n * - Provides clear error messages for JSON parse failures\n *\n * @example\n * ```typescript\n * const tagsSchema = jsonQueryParam(z.array(z.string()));\n * // Accepts: [\"tag1\", \"tag2\"] OR '[\"tag1\", \"tag2\"]'\n *\n * const dateRangeSchema = jsonQueryParam(z.object({ gte: z.coerce.date() }));\n * // Accepts: { gte: \"2024-01-01\" } OR '{\"gte\": \"2024-01-01\"}'\n * ```\n */\nexport function jsonQueryParam<T extends ZodTypeAny>(schema: T): z.ZodType<z.infer<T>> {\n return z.union([\n schema, // Already the expected type (non-string input)\n z.string().transform((val, ctx) => {\n try {\n const parsed = JSON.parse(val);\n const result = schema.safeParse(parsed);\n if (!result.success) {\n for (const issue of result.error.issues) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: issue.message,\n path: issue.path,\n });\n }\n return z.NEVER;\n }\n return result.data;\n } catch (e) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: `Invalid JSON: ${e instanceof Error ? e.message : 'parse error'}`,\n });\n return z.NEVER;\n }\n }),\n ]) as z.ZodType<z.infer<T>>;\n}\n\n/**\n * Gets the type name from a Zod schema's internal definition.\n * Works across zod v3 and v4 by checking _def.typeName.\n */\nfunction getZodTypeName(schema: ZodTypeAny): string | undefined {\n return (schema as any)?._def?.typeName;\n}\n\n/**\n * Checks if a Zod schema represents a complex type that needs JSON parsing from query strings.\n * Complex types: arrays, objects, records (these can't be represented as simple strings)\n * Simple types: strings, numbers, booleans, enums (can use z.coerce for conversion)\n *\n * Uses _def.typeName string comparison instead of instanceof to support both zod v3 and v4,\n * since instanceof checks fail across different zod versions in bundled code.\n */\nfunction isComplexType(schema: ZodTypeAny): boolean {\n // Unwrap all optional/nullable layers to check the inner type\n // Note: .partial() can create nested optionals (e.g., ZodOptional<ZodOptional<ZodObject>>)\n let inner: ZodTypeAny = schema;\n let typeName = getZodTypeName(inner);\n\n while (typeName === 'ZodOptional' || typeName === 'ZodNullable') {\n // Access innerType directly from _def to avoid version-specific method differences\n inner = (inner as any)._def.innerType;\n typeName = getZodTypeName(inner);\n }\n\n // Complex types that need JSON parsing\n return typeName === 'ZodArray' || typeName === 'ZodRecord' || typeName === 'ZodObject';\n}\n\n/**\n * Wraps a Zod object schema for HTTP query parameter handling.\n * Automatically detects complex fields (arrays, objects, records) and wraps them\n * with jsonQueryParam() to accept JSON strings from query parameters.\n *\n * Simple fields (strings, numbers, booleans, enums) are left unchanged and should\n * use z.coerce for string-to-type conversion.\n *\n * @example\n * ```typescript\n * // Base schema (for internal/storage use)\n * const tracesFilterSchema = z.object({\n * tags: z.array(z.string()).optional(),\n * startedAt: dateRangeSchema.optional(),\n * perPage: z.coerce.number().optional(),\n * });\n *\n * // HTTP schema (accepts JSON strings for complex fields)\n * const httpTracesFilterSchema = wrapSchemaForQueryParams(tracesFilterSchema);\n *\n * // Now accepts:\n * // ?tags=[\"tag1\",\"tag2\"]&startedAt={\"gte\":\"2024-01-01\"}&perPage=10\n * ```\n */\nexport function wrapSchemaForQueryParams<T extends ZodRawShape>(schema: ZodObject<T>): ZodObject<ZodRawShape> {\n const newShape: ZodRawShape = {};\n\n for (const [key, fieldSchema] of Object.entries(schema.shape)) {\n if (isComplexType(fieldSchema as ZodTypeAny)) {\n // Wrap complex types to accept JSON strings\n newShape[key] = jsonQueryParam(fieldSchema as ZodTypeAny);\n } else {\n // Keep simple types as-is\n newShape[key] = fieldSchema as ZodTypeAny;\n }\n }\n\n return z.object(newShape);\n}\n\ninterface RouteConfig<\n TPathSchema extends z.ZodTypeAny | undefined = undefined,\n TQuerySchema extends z.ZodTypeAny | undefined = undefined,\n TBodySchema extends z.ZodTypeAny | undefined = undefined,\n TResponseSchema extends z.ZodTypeAny | undefined = undefined,\n TResponseType extends ResponseType = 'json',\n> {\n method: ServerRoute['method'];\n path: string;\n responseType: TResponseType;\n streamFormat?: 'sse' | 'stream'; // Only used when responseType is 'stream'\n handler: ServerRouteHandler<\n InferParams<TPathSchema, TQuerySchema, TBodySchema>,\n TResponseSchema extends z.ZodTypeAny ? z.infer<TResponseSchema> : unknown,\n TResponseType\n >;\n pathParamSchema?: TPathSchema;\n queryParamSchema?: TQuerySchema;\n bodySchema?: TBodySchema;\n responseSchema?: TResponseSchema;\n summary?: string;\n description?: string;\n tags?: string[];\n deprecated?: boolean;\n maxBodySize?: number;\n requiresAuth?: boolean; // Explicit auth requirement for this route\n}\n\n/**\n * Creates a server route with auto-generated OpenAPI specification and type-safe handler inference.\n *\n * The handler parameters are automatically inferred from the provided schemas:\n * - pathParamSchema: Infers path parameter types (e.g., :agentId)\n * - queryParamSchema: Infers query parameter types\n * - bodySchema: Infers request body types\n * - Runtime context (mastra, requestContext, tools, taskStore) is always available\n *\n * @param config - Route configuration including schemas, handler, and metadata\n * @returns Complete ServerRoute with OpenAPI spec\n *\n * @example\n * ```typescript\n * export const getAgentRoute = createRoute({\n * method: 'GET',\n * path: '/agents/:agentId',\n * responseType: 'json',\n * pathParamSchema: z.object({ agentId: z.string() }),\n * responseSchema: serializedAgentSchema,\n * handler: async ({ agentId, mastra, requestContext }) => {\n * // agentId is typed as string\n * // mastra, requestContext, tools, taskStore are always available\n * return mastra.getAgentById(agentId);\n * },\n * summary: 'Get agent by ID',\n * description: 'Returns details for a specific agent',\n * tags: ['Agents'],\n * });\n * ```\n */\nexport function createRoute<\n TPathSchema extends z.ZodTypeAny | undefined = undefined,\n TQuerySchema extends z.ZodTypeAny | undefined = undefined,\n TBodySchema extends z.ZodTypeAny | undefined = undefined,\n TResponseSchema extends z.ZodTypeAny | undefined = undefined,\n TResponseType extends ResponseType = 'json',\n>(\n config: RouteConfig<TPathSchema, TQuerySchema, TBodySchema, TResponseSchema, TResponseType>,\n): ServerRoute<\n InferParams<TPathSchema, TQuerySchema, TBodySchema>,\n TResponseSchema extends z.ZodTypeAny ? z.infer<TResponseSchema> : unknown,\n TResponseType\n> {\n const { summary, description, tags, deprecated, requiresAuth, ...baseRoute } = config;\n\n // Generate OpenAPI specification from the route config\n // Skip OpenAPI generation for 'ALL' method as it doesn't map to OpenAPI\n const openapi =\n config.method !== 'ALL'\n ? generateRouteOpenAPI({\n method: config.method as 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH',\n path: config.path,\n summary,\n description,\n tags,\n pathParamSchema: config.pathParamSchema,\n queryParamSchema: config.queryParamSchema,\n bodySchema: config.bodySchema,\n responseSchema: config.responseSchema,\n deprecated,\n })\n : undefined;\n\n return {\n ...baseRoute,\n openapi: openapi as any,\n deprecated,\n requiresAuth,\n };\n}\n"]}
@@ -1,6 +1,23 @@
1
1
  import { stringify } from './chunk-LF2ZLOFP.js';
2
2
  import { zodToJsonSchema } from '@mastra/core/utils/zod-to-json';
3
3
 
4
+ function normalizeRoutePath(path) {
5
+ let normalized = path.trim();
6
+ if (normalized.includes("..") || normalized.includes("?") || normalized.includes("#")) {
7
+ throw new Error(`Invalid route path: "${path}". Path cannot contain '..', '?', or '#'`);
8
+ }
9
+ normalized = normalized.replace(/\/+/g, "/");
10
+ if (normalized === "/" || normalized === "") {
11
+ return "";
12
+ }
13
+ if (normalized.endsWith("/")) {
14
+ normalized = normalized.slice(0, -1);
15
+ }
16
+ if (!normalized.startsWith("/")) {
17
+ normalized = `/${normalized}`;
18
+ }
19
+ return normalized;
20
+ }
4
21
  function looksLikeProcessorStepSchema(schema) {
5
22
  if (!schema) return false;
6
23
  try {
@@ -72,6 +89,7 @@ function getWorkflowInfo(workflow, partial = false) {
72
89
  resumeSchema: step.resumeSchema ? stringify(zodToJsonSchema(step.resumeSchema)) : void 0,
73
90
  suspendSchema: step.suspendSchema ? stringify(zodToJsonSchema(step.suspendSchema)) : void 0,
74
91
  stateSchema: step.stateSchema ? stringify(zodToJsonSchema(step.stateSchema)) : void 0,
92
+ requestContextSchema: step.requestContextSchema ? stringify(zodToJsonSchema(step.requestContextSchema)) : void 0,
75
93
  component: step.component
76
94
  };
77
95
  return acc;
@@ -81,6 +99,7 @@ function getWorkflowInfo(workflow, partial = false) {
81
99
  inputSchema: workflow.inputSchema ? stringify(zodToJsonSchema(workflow.inputSchema)) : void 0,
82
100
  outputSchema: workflow.outputSchema ? stringify(zodToJsonSchema(workflow.outputSchema)) : void 0,
83
101
  stateSchema: workflow.stateSchema ? stringify(zodToJsonSchema(workflow.stateSchema)) : void 0,
102
+ requestContextSchema: workflow.requestContextSchema ? stringify(zodToJsonSchema(workflow.requestContextSchema)) : void 0,
84
103
  options: workflow.options,
85
104
  isProcessorWorkflow: workflow.type === "processor" || looksLikeProcessorStepSchema(workflow.inputSchema)
86
105
  };
@@ -166,6 +185,6 @@ function convertInstructionsToString(message) {
166
185
  return typeof message.content === "string" ? message.content : "";
167
186
  }
168
187
 
169
- export { WorkflowRegistry, convertInstructionsToString, getWorkflowInfo };
170
- //# sourceMappingURL=chunk-GNCALVLC.js.map
171
- //# sourceMappingURL=chunk-GNCALVLC.js.map
188
+ export { WorkflowRegistry, convertInstructionsToString, getWorkflowInfo, normalizeRoutePath };
189
+ //# sourceMappingURL=chunk-DEG24CE7.js.map
190
+ //# sourceMappingURL=chunk-DEG24CE7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/utils.ts"],"names":[],"mappings":";;;AAoBO,SAAS,mBAAmB,IAAA,EAAsB;AACvD,EAAA,IAAI,UAAA,GAAa,KAAK,IAAA,EAAK;AAC3B,EAAA,IAAI,UAAA,CAAW,QAAA,CAAS,IAAI,CAAA,IAAK,UAAA,CAAW,QAAA,CAAS,GAAG,CAAA,IAAK,UAAA,CAAW,QAAA,CAAS,GAAG,CAAA,EAAG;AACrF,IAAA,MAAM,IAAI,KAAA,CAAM,CAAA,qBAAA,EAAwB,IAAI,CAAA,wCAAA,CAA0C,CAAA;AAAA,EACxF;AACA,EAAA,UAAA,GAAa,UAAA,CAAW,OAAA,CAAQ,MAAA,EAAQ,GAAG,CAAA;AAC3C,EAAA,IAAI,UAAA,KAAe,GAAA,IAAO,UAAA,KAAe,EAAA,EAAI;AAC3C,IAAA,OAAO,EAAA;AAAA,EACT;AACA,EAAA,IAAI,UAAA,CAAW,QAAA,CAAS,GAAG,CAAA,EAAG;AAC5B,IAAA,UAAA,GAAa,UAAA,CAAW,KAAA,CAAM,CAAA,EAAG,EAAE,CAAA;AAAA,EACrC;AACA,EAAA,IAAI,CAAC,UAAA,CAAW,UAAA,CAAW,GAAG,CAAA,EAAG;AAC/B,IAAA,UAAA,GAAa,IAAI,UAAU,CAAA,CAAA;AAAA,EAC7B;AACA,EAAA,OAAO,UAAA;AACT;AAMA,SAAS,6BAA6B,MAAA,EAA8D;AAClG,EAAA,IAAI,CAAC,QAAQ,OAAO,KAAA;AAEpB,EAAA,IAAI;AACF,IAAA,MAAM,UAAA,GAAa,gBAAgB,MAAM,CAAA;AAGzC,IAAA,MAAM,QAAA,GAAY,UAAA,CAAW,KAAA,IAAS,UAAA,CAAW,KAAA;AACjD,IAAA,IAAI,CAAC,QAAA,IAAY,CAAC,MAAM,OAAA,CAAQ,QAAQ,GAAG,OAAO,KAAA;AAGlD,IAAA,MAAM,eAAA,uBAAsB,GAAA,CAAI,CAAC,SAAS,WAAA,EAAa,cAAA,EAAgB,cAAA,EAAgB,YAAY,CAAC,CAAA;AAEpG,IAAA,KAAA,MAAW,WAAW,QAAA,EAAU;AAC9B,MAAA,MAAM,aAAa,OAAA,CAAQ,UAAA;AAC3B,MAAA,IAAI,CAAC,UAAA,EAAY,KAAA,EAAO,OAAO,KAAA;AAE/B,MAAA,MAAM,cAAc,UAAA,CAAW,KAAA;AAC/B,MAAA,MAAM,aAAa,WAAA,EAAa,KAAA;AAChC,MAAA,MAAM,SAAA,GAAY,MAAM,OAAA,CAAQ,WAAA,EAAa,IAAI,CAAA,GAAK,WAAA,CAAY,OAAoB,EAAC;AACvF,MAAA,MAAM,WAAA,GAAc,UAAA,GAAa,CAAC,UAAU,CAAA,GAAI,SAAA;AAEhD,MAAA,IAAI,CAAC,WAAA,CAAY,MAAA,IAAU,WAAA,CAAY,IAAA,CAAK,CAAA,KAAA,KAAS,CAAC,eAAA,CAAgB,GAAA,CAAI,KAAK,CAAC,CAAA,EAAG;AACjF,QAAA,OAAO,KAAA;AAAA,MACT;AAAA,IACF;AAEA,IAAA,OAAO,SAAS,MAAA,GAAS,CAAA;AAAA,EAC3B,CAAA,CAAA,MAAQ;AACN,IAAA,OAAO,KAAA;AAAA,EACT;AACF;AAEA,SAAS,QAAA,CAAS,OAA0C,IAAA,EAAe;AACzE,EAAA,OAAO,MAAA,CAAO,OAAA,CAAQ,KAAK,CAAA,CAAE,MAAA,CAAY,CAAC,GAAA,EAAK,CAAC,GAAA,EAAK,IAAI,CAAA,KAAM;AAC7D,IAAA,MAAM,UAAU,IAAA,GAAO,CAAA,EAAG,IAAI,CAAA,CAAA,EAAI,GAAG,CAAA,CAAA,GAAK,GAAA;AAC1C,IAAA,GAAA,CAAI,OAAO,CAAA,GAAI;AAAA,MACb,IAAI,IAAA,CAAK,EAAA;AAAA,MACT,aAAa,IAAA,CAAK,WAAA;AAAA,MAClB,WAAA,EAAa,KAAK,WAAA,GAAc,SAAA,CAAU,gBAAgB,IAAA,CAAK,WAAW,CAAC,CAAA,GAAI,MAAA;AAAA,MAC/E,YAAA,EAAc,KAAK,YAAA,GAAe,SAAA,CAAU,gBAAgB,IAAA,CAAK,YAAY,CAAC,CAAA,GAAI,MAAA;AAAA,MAClF,YAAA,EAAc,KAAK,YAAA,GAAe,SAAA,CAAU,gBAAgB,IAAA,CAAK,YAAY,CAAC,CAAA,GAAI,MAAA;AAAA,MAClF,aAAA,EAAe,KAAK,aAAA,GAAgB,SAAA,CAAU,gBAAgB,IAAA,CAAK,aAAa,CAAC,CAAA,GAAI,MAAA;AAAA,MACrF,WAAA,EAAa,KAAK,WAAA,GAAc,SAAA,CAAU,gBAAgB,IAAA,CAAK,WAAW,CAAC,CAAA,GAAI,MAAA;AAAA,MAC/E,UAAA,EAAY,KAAK,SAAA,KAAc,UAAA;AAAA,MAC/B,WAAW,IAAA,CAAK;AAAA,KAClB;AAEA,IAAA,IAAI,IAAA,CAAK,SAAA,KAAc,UAAA,IAAc,IAAA,CAAK,KAAA,EAAO;AAC/C,MAAA,MAAM,cAAc,QAAA,CAAS,IAAA,CAAK,KAAA,EAAO,OAAO,KAAK,EAAC;AACtD,MAAA,GAAA,GAAM,EAAE,GAAG,GAAA,EAAK,GAAG,WAAA,EAAY;AAAA,IACjC;AAEA,IAAA,OAAO,GAAA;AAAA,EACT,CAAA,EAAG,EAAE,CAAA;AACP;AAEO,SAAS,eAAA,CAAgB,QAAA,EAAoB,OAAA,GAAmB,KAAA,EAAqB;AAC1F,EAAA,IAAI,OAAA,EAAS;AAEX,IAAA,OAAO;AAAA,MACL,MAAM,QAAA,CAAS,IAAA;AAAA,MACf,aAAa,QAAA,CAAS,WAAA;AAAA,MACtB,SAAA,EAAW,MAAA,CAAO,IAAA,CAAK,QAAA,CAAS,KAAK,CAAA,CAAE,MAAA;AAAA,MACvC,WAAW,QAAA,CAAS,mBAAA;AAAA,MACpB,SAAS,QAAA,CAAS,OAAA;AAAA,MAClB,OAAO,EAAC;AAAA,MACR,UAAU,EAAC;AAAA,MACX,WAAA,EAAa,MAAA;AAAA,MACb,YAAA,EAAc,MAAA;AAAA,MACd,WAAA,EAAa;AAAA,KACf;AAAA,EACF;AAEA,EAAA,OAAO;AAAA,IACL,MAAM,QAAA,CAAS,IAAA;AAAA,IACf,aAAa,QAAA,CAAS,WAAA;AAAA,IACtB,KAAA,EAAO,MAAA,CAAO,OAAA,CAAQ,QAAA,CAAS,KAAK,CAAA,CAAE,MAAA,CAAY,CAAC,GAAA,EAAK,CAAC,GAAA,EAAK,IAAI,CAAA,KAAM;AACtE,MAAA,GAAA,CAAI,GAAG,CAAA,GAAI;AAAA,QACT,IAAI,IAAA,CAAK,EAAA;AAAA,QACT,aAAa,IAAA,CAAK,WAAA;AAAA,QAClB,WAAA,EAAa,KAAK,WAAA,GAAc,SAAA,CAAU,gBAAgB,IAAA,CAAK,WAAW,CAAC,CAAA,GAAI,MAAA;AAAA,QAC/E,YAAA,EAAc,KAAK,YAAA,GAAe,SAAA,CAAU,gBAAgB,IAAA,CAAK,YAAY,CAAC,CAAA,GAAI,MAAA;AAAA,QAClF,YAAA,EAAc,KAAK,YAAA,GAAe,SAAA,CAAU,gBAAgB,IAAA,CAAK,YAAY,CAAC,CAAA,GAAI,MAAA;AAAA,QAClF,aAAA,EAAe,KAAK,aAAA,GAAgB,SAAA,CAAU,gBAAgB,IAAA,CAAK,aAAa,CAAC,CAAA,GAAI,MAAA;AAAA,QACrF,WAAA,EAAa,KAAK,WAAA,GAAc,SAAA,CAAU,gBAAgB,IAAA,CAAK,WAAW,CAAC,CAAA,GAAI,MAAA;AAAA,QAC/E,oBAAA,EAAsB,KAAK,oBAAA,GACvB,SAAA,CAAU,gBAAgB,IAAA,CAAK,oBAAoB,CAAC,CAAA,GACpD,MAAA;AAAA,QACJ,WAAW,IAAA,CAAK;AAAA,OAClB;AACA,MAAA,OAAO,GAAA;AAAA,IACT,CAAA,EAAG,EAAE,CAAA;AAAA,IACL,QAAA,EAAU,QAAA,CAAS,QAAA,CAAS,KAAK,KAAK,EAAC;AAAA,IACvC,WAAW,QAAA,CAAS,mBAAA;AAAA,IACpB,WAAA,EAAa,SAAS,WAAA,GAAc,SAAA,CAAU,gBAAgB,QAAA,CAAS,WAAW,CAAC,CAAA,GAAI,MAAA;AAAA,IACvF,YAAA,EAAc,SAAS,YAAA,GAAe,SAAA,CAAU,gBAAgB,QAAA,CAAS,YAAY,CAAC,CAAA,GAAI,MAAA;AAAA,IAC1F,WAAA,EAAa,SAAS,WAAA,GAAc,SAAA,CAAU,gBAAgB,QAAA,CAAS,WAAW,CAAC,CAAA,GAAI,MAAA;AAAA,IACvF,oBAAA,EAAsB,SAAS,oBAAA,GAC3B,SAAA,CAAU,gBAAgB,QAAA,CAAS,oBAAoB,CAAC,CAAA,GACxD,MAAA;AAAA,IACJ,SAAS,QAAA,CAAS,OAAA;AAAA,IAClB,qBAAqB,QAAA,CAAS,IAAA,KAAS,WAAA,IAAe,4BAAA,CAA6B,SAAS,WAAW;AAAA,GACzG;AACF;AAMO,IAAM,mBAAN,MAAuB;AAAA,EAC5B,OAAe,sBAAgD,EAAC;AAAA;AAAA;AAAA;AAAA,EAKhE,OAAO,yBAAA,CAA0B,EAAA,EAAY,QAAA,EAA0B;AACrE,IAAA,IAAA,CAAK,mBAAA,CAAoB,EAAE,CAAA,GAAI,QAAA;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,0BAAA,CACL,SAAA,EACA,MAAA,EACM;AACN,IAAA,KAAA,MAAW,CAAC,EAAA,EAAI,QAAQ,KAAK,MAAA,CAAO,OAAA,CAAQ,SAAS,CAAA,EAAG;AAEtD,MAAA,IAAI,MAAA,EAAQ;AACV,QAAA,QAAA,CAAS,iBAAiB,MAAM,CAAA;AAChC,QAAA,QAAA,CAAS,oBAAA,CAAqB;AAAA,UAC5B,MAAA,EAAQ,OAAO,SAAA,EAAU;AAAA,UACzB,OAAA,EAAS,OAAO,UAAA,EAAW;AAAA,UAC3B,MAAA,EAAQ,OAAO,UAAA,EAAW;AAAA,UAC1B,GAAA,EAAK,OAAO,MAAA,EAAO;AAAA,UACnB,OAAA,EAAS,OAAO,WAAA;AAAY,SAC7B,CAAA;AAAA,MACH;AACA,MAAA,IAAA,CAAK,mBAAA,CAAoB,EAAE,CAAA,GAAI,QAAA;AAAA,IACjC;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,YAAY,UAAA,EAA0C;AAC3D,IAAA,OAAO,IAAA,CAAK,oBAAoB,UAAU,CAAA;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,eAAA,GAA4C;AACjD,IAAA,OAAO,EAAE,GAAG,IAAA,CAAK,mBAAA,EAAoB;AAAA,EACvC;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,yBAAyB,UAAA,EAA0B;AACxD,IAAA,OAAO,IAAA,CAAK,oBAAoB,UAAU,CAAA;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA,EAIA,OAAO,OAAA,GAAgB;AAErB,IAAA,IAAA,CAAK,sBAAsB,EAAC;AAAA,EAC9B;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,uBAAuB,UAAA,EAA6B;AACzD,IAAA,OAAO,cAAc,IAAA,CAAK,mBAAA;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,wBAAA,GAAqC;AAC1C,IAAA,OAAO,MAAA,CAAO,IAAA,CAAK,IAAA,CAAK,mBAAmB,CAAA;AAAA,EAC7C;AACF;AAEO,SAAS,4BAA4B,OAAA,EAAgC;AAC1E,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,OAAO,EAAA;AAAA,EACT;AAEA,EAAA,IAAI,OAAO,YAAY,QAAA,EAAU;AAC/B,IAAA,OAAO,OAAA;AAAA,EACT;AAEA,EAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,OAAO,CAAA,EAAG;AAC1B,IAAA,OAAO,OAAA,CACJ,IAAI,CAAA,CAAA,KAAK;AACR,MAAA,IAAI,OAAO,MAAM,QAAA,EAAU;AACzB,QAAA,OAAO,CAAA;AAAA,MACT;AAEA,MAAA,OAAO,OAAO,CAAA,CAAE,OAAA,KAAY,QAAA,GAAW,EAAE,OAAA,GAAU,EAAA;AAAA,IACrD,CAAC,CAAA,CACA,MAAA,CAAO,aAAW,OAAO,CAAA,CACzB,KAAK,IAAI,CAAA;AAAA,EACd;AAGA,EAAA,OAAO,OAAO,OAAA,CAAQ,OAAA,KAAY,QAAA,GAAW,QAAQ,OAAA,GAAU,EAAA;AACjE","file":"chunk-DEG24CE7.js","sourcesContent":["import type { Mastra } from '@mastra/core';\nimport type { SystemMessage } from '@mastra/core/llm';\nimport { zodToJsonSchema } from '@mastra/core/utils/zod-to-json';\nimport type { StepWithComponent, Workflow, WorkflowInfo } from '@mastra/core/workflows';\nimport { stringify } from 'superjson';\nimport type { ZodType } from 'zod';\nimport type { z as zv4 } from 'zod/v4';\n\n/**\n * Normalizes a route path to ensure consistent formatting.\n * - Removes leading/trailing whitespace\n * - Validates no path traversal (..), query strings (?), or fragments (#)\n * - Collapses multiple consecutive slashes\n * - Removes trailing slashes\n * - Ensures leading slash (unless empty)\n *\n * @param path - The route path to normalize\n * @returns The normalized path (empty string for root paths)\n * @throws Error if path contains invalid characters\n */\nexport function normalizeRoutePath(path: string): string {\n let normalized = path.trim();\n if (normalized.includes('..') || normalized.includes('?') || normalized.includes('#')) {\n throw new Error(`Invalid route path: \"${path}\". Path cannot contain '..', '?', or '#'`);\n }\n normalized = normalized.replace(/\\/+/g, '/');\n if (normalized === '/' || normalized === '') {\n return '';\n }\n if (normalized.endsWith('/')) {\n normalized = normalized.slice(0, -1);\n }\n if (!normalized.startsWith('/')) {\n normalized = `/${normalized}`;\n }\n return normalized;\n}\n\n/**\n * Check if a schema looks like a processor step schema.\n * Processor step schemas are discriminated unions on 'phase' with specific values.\n */\nfunction looksLikeProcessorStepSchema(schema: ZodType | zv4.ZodType<any, any> | undefined): boolean {\n if (!schema) return false;\n\n try {\n const jsonSchema = zodToJsonSchema(schema) as Record<string, unknown>;\n\n // Check for discriminated union pattern: anyOf/oneOf with phase discriminator\n const variants = (jsonSchema.anyOf || jsonSchema.oneOf) as Array<Record<string, unknown>> | undefined;\n if (!variants || !Array.isArray(variants)) return false;\n\n // Check if all variants have a 'phase' property with processor phase values\n const processorPhases = new Set(['input', 'inputStep', 'outputStream', 'outputResult', 'outputStep']);\n\n for (const variant of variants) {\n const properties = variant.properties as Record<string, unknown> | undefined;\n if (!properties?.phase) return false;\n\n const phaseSchema = properties.phase as Record<string, unknown>;\n const phaseConst = phaseSchema?.const as string | undefined;\n const phaseEnum = Array.isArray(phaseSchema?.enum) ? (phaseSchema.enum as string[]) : [];\n const phaseValues = phaseConst ? [phaseConst] : phaseEnum;\n\n if (!phaseValues.length || phaseValues.some(phase => !processorPhases.has(phase))) {\n return false;\n }\n }\n\n return variants.length > 0;\n } catch {\n return false;\n }\n}\n\nfunction getSteps(steps: Record<string, StepWithComponent>, path?: string) {\n return Object.entries(steps).reduce<any>((acc, [key, step]) => {\n const fullKey = path ? `${path}.${key}` : key;\n acc[fullKey] = {\n id: step.id,\n description: step.description,\n inputSchema: step.inputSchema ? stringify(zodToJsonSchema(step.inputSchema)) : undefined,\n outputSchema: step.outputSchema ? stringify(zodToJsonSchema(step.outputSchema)) : undefined,\n resumeSchema: step.resumeSchema ? stringify(zodToJsonSchema(step.resumeSchema)) : undefined,\n suspendSchema: step.suspendSchema ? stringify(zodToJsonSchema(step.suspendSchema)) : undefined,\n stateSchema: step.stateSchema ? stringify(zodToJsonSchema(step.stateSchema)) : undefined,\n isWorkflow: step.component === 'WORKFLOW',\n component: step.component,\n };\n\n if (step.component === 'WORKFLOW' && step.steps) {\n const nestedSteps = getSteps(step.steps, fullKey) || {};\n acc = { ...acc, ...nestedSteps };\n }\n\n return acc;\n }, {});\n}\n\nexport function getWorkflowInfo(workflow: Workflow, partial: boolean = false): WorkflowInfo {\n if (partial) {\n // Return minimal info in partial mode\n return {\n name: workflow.name,\n description: workflow.description,\n stepCount: Object.keys(workflow.steps).length,\n stepGraph: workflow.serializedStepGraph,\n options: workflow.options,\n steps: {},\n allSteps: {},\n inputSchema: undefined,\n outputSchema: undefined,\n stateSchema: undefined,\n } as WorkflowInfo;\n }\n\n return {\n name: workflow.name,\n description: workflow.description,\n steps: Object.entries(workflow.steps).reduce<any>((acc, [key, step]) => {\n acc[key] = {\n id: step.id,\n description: step.description,\n inputSchema: step.inputSchema ? stringify(zodToJsonSchema(step.inputSchema)) : undefined,\n outputSchema: step.outputSchema ? stringify(zodToJsonSchema(step.outputSchema)) : undefined,\n resumeSchema: step.resumeSchema ? stringify(zodToJsonSchema(step.resumeSchema)) : undefined,\n suspendSchema: step.suspendSchema ? stringify(zodToJsonSchema(step.suspendSchema)) : undefined,\n stateSchema: step.stateSchema ? stringify(zodToJsonSchema(step.stateSchema)) : undefined,\n requestContextSchema: step.requestContextSchema\n ? stringify(zodToJsonSchema(step.requestContextSchema))\n : undefined,\n component: step.component,\n };\n return acc;\n }, {}),\n allSteps: getSteps(workflow.steps) || {},\n stepGraph: workflow.serializedStepGraph,\n inputSchema: workflow.inputSchema ? stringify(zodToJsonSchema(workflow.inputSchema)) : undefined,\n outputSchema: workflow.outputSchema ? stringify(zodToJsonSchema(workflow.outputSchema)) : undefined,\n stateSchema: workflow.stateSchema ? stringify(zodToJsonSchema(workflow.stateSchema)) : undefined,\n requestContextSchema: workflow.requestContextSchema\n ? stringify(zodToJsonSchema(workflow.requestContextSchema))\n : undefined,\n options: workflow.options,\n isProcessorWorkflow: workflow.type === 'processor' || looksLikeProcessorStepSchema(workflow.inputSchema),\n };\n}\n\n/**\n * Workflow Registry for temporarily registering additional workflows\n * that are not part of the user's Mastra instance (e.g., internal template workflows)\n */\nexport class WorkflowRegistry {\n private static additionalWorkflows: Record<string, Workflow> = {};\n\n /**\n * Register a workflow temporarily\n */\n static registerTemporaryWorkflow(id: string, workflow: Workflow): void {\n this.additionalWorkflows[id] = workflow;\n }\n\n /**\n * Register all workflows from map\n */\n static registerTemporaryWorkflows(\n workflows: Record<string, Workflow>,\n mastra?: Mastra<any, any, any, any, any, any, any, any, any>,\n ): void {\n for (const [id, workflow] of Object.entries(workflows)) {\n // Register Mastra instance with the workflow if provided\n if (mastra) {\n workflow.__registerMastra(mastra);\n workflow.__registerPrimitives({\n logger: mastra.getLogger(),\n storage: mastra.getStorage(),\n agents: mastra.listAgents(),\n tts: mastra.getTTS(),\n vectors: mastra.listVectors(),\n });\n }\n this.additionalWorkflows[id] = workflow;\n }\n }\n\n /**\n * Get a workflow by ID from the registry (returns undefined if not found)\n */\n static getWorkflow(workflowId: string): Workflow | undefined {\n return this.additionalWorkflows[workflowId];\n }\n\n /**\n * Get all workflows from the registry\n */\n static getAllWorkflows(): Record<string, Workflow> {\n return { ...this.additionalWorkflows };\n }\n\n /**\n * Clean up a temporary workflow\n */\n static cleanupTemporaryWorkflow(workflowId: string): void {\n delete this.additionalWorkflows[workflowId];\n }\n /**\n * Clean up all registered workflows\n */\n static cleanup(): void {\n // Clear all workflows (since we register all agent-builder workflows each time)\n this.additionalWorkflows = {};\n }\n\n /**\n * Check if a workflow ID is a valid agent-builder workflow\n */\n static isAgentBuilderWorkflow(workflowId: string): boolean {\n return workflowId in this.additionalWorkflows;\n }\n\n /**\n * Get all registered temporary workflow IDs (for debugging)\n */\n static getRegisteredWorkflowIds(): string[] {\n return Object.keys(this.additionalWorkflows);\n }\n}\n\nexport function convertInstructionsToString(message: SystemMessage): string {\n if (!message) {\n return '';\n }\n\n if (typeof message === 'string') {\n return message;\n }\n\n if (Array.isArray(message)) {\n return message\n .map(m => {\n if (typeof m === 'string') {\n return m;\n }\n // Safely extract content from message objects\n return typeof m.content === 'string' ? m.content : '';\n })\n .filter(content => content) // Remove empty strings\n .join('\\n');\n }\n\n // Handle single message object - safely extract content\n return typeof message.content === 'string' ? message.content : '';\n}\n"]}
@@ -1,8 +1,8 @@
1
- import { validateBody } from './chunk-XWGAT2DA.js';
2
- import { voiceSpeakersResponseSchema, agentIdPathParams, speakResponseSchema, generateSpeechBodySchema, transcribeSpeechResponseSchema, transcribeSpeechBodySchema, getListenerResponseSchema } from './chunk-WLGJVDH4.js';
3
- import { createRoute } from './chunk-7S7ALPCY.js';
1
+ import { voiceSpeakersResponseSchema, agentIdPathParams, speakResponseSchema, generateSpeechBodySchema, transcribeSpeechResponseSchema, transcribeSpeechBodySchema, getListenerResponseSchema } from './chunk-BB46GZPA.js';
2
+ import { validateBody } from './chunk-USR6JK77.js';
4
3
  import { handleError } from './chunk-ONN5EA7E.js';
5
4
  import { HTTPException } from './chunk-6QWQZI4Q.js';
5
+ import { createRoute } from './chunk-D5VCL56B.js';
6
6
  import { __export } from './chunk-PR4QN5HX.js';
7
7
  import { Readable } from 'stream';
8
8
  import { MastraError } from '@mastra/core/error';
@@ -20,13 +20,14 @@ __export(voice_exports, {
20
20
  });
21
21
  var GET_SPEAKERS_ROUTE = createRoute({
22
22
  method: "GET",
23
- path: "/api/agents/:agentId/voice/speakers",
23
+ path: "/agents/:agentId/voice/speakers",
24
24
  responseType: "json",
25
25
  pathParamSchema: agentIdPathParams,
26
26
  responseSchema: voiceSpeakersResponseSchema,
27
27
  summary: "Get voice speakers",
28
28
  description: "Returns available voice speakers for the specified agent",
29
29
  tags: ["Agents", "Voice"],
30
+ requiresAuth: true,
30
31
  handler: async ({ mastra, agentId, requestContext }) => {
31
32
  try {
32
33
  if (!agentId) {
@@ -51,18 +52,19 @@ var GET_SPEAKERS_ROUTE = createRoute({
51
52
  });
52
53
  var GET_SPEAKERS_DEPRECATED_ROUTE = createRoute({
53
54
  method: "GET",
54
- path: "/api/agents/:agentId/speakers",
55
+ path: "/agents/:agentId/speakers",
55
56
  responseType: "json",
56
57
  pathParamSchema: agentIdPathParams,
57
58
  responseSchema: voiceSpeakersResponseSchema,
58
59
  summary: "Get available speakers for an agent",
59
- description: "[DEPRECATED] Use /api/agents/:agentId/voice/speakers instead. Get available speakers for an agent",
60
+ description: "[DEPRECATED] Use /agents/:agentId/voice/speakers instead. Get available speakers for an agent",
60
61
  tags: ["Agents", "Voice"],
62
+ requiresAuth: true,
61
63
  handler: GET_SPEAKERS_ROUTE.handler
62
64
  });
63
65
  var GENERATE_SPEECH_ROUTE = createRoute({
64
66
  method: "POST",
65
- path: "/api/agents/:agentId/voice/speak",
67
+ path: "/agents/:agentId/voice/speak",
66
68
  responseType: "stream",
67
69
  pathParamSchema: agentIdPathParams,
68
70
  bodySchema: generateSpeechBodySchema,
@@ -70,6 +72,7 @@ var GENERATE_SPEECH_ROUTE = createRoute({
70
72
  summary: "Generate speech",
71
73
  description: "Generates speech audio from text using the agent voice configuration",
72
74
  tags: ["Agents", "Voice"],
75
+ requiresAuth: true,
73
76
  handler: async ({ mastra, agentId, text, speakerId, requestContext }) => {
74
77
  try {
75
78
  if (!agentId) {
@@ -101,19 +104,20 @@ var GENERATE_SPEECH_ROUTE = createRoute({
101
104
  });
102
105
  var GENERATE_SPEECH_DEPRECATED_ROUTE = createRoute({
103
106
  method: "POST",
104
- path: "/api/agents/:agentId/speak",
107
+ path: "/agents/:agentId/speak",
105
108
  responseType: "stream",
106
109
  pathParamSchema: agentIdPathParams,
107
110
  bodySchema: generateSpeechBodySchema,
108
111
  responseSchema: speakResponseSchema,
109
112
  summary: "Convert text to speech",
110
- description: "[DEPRECATED] Use /api/agents/:agentId/voice/speak instead. Convert text to speech using the agent's voice provider",
113
+ description: "[DEPRECATED] Use /agents/:agentId/voice/speak instead. Convert text to speech using the agent's voice provider",
111
114
  tags: ["Agents", "Voice"],
115
+ requiresAuth: true,
112
116
  handler: GENERATE_SPEECH_ROUTE.handler
113
117
  });
114
118
  var TRANSCRIBE_SPEECH_ROUTE = createRoute({
115
119
  method: "POST",
116
- path: "/api/agents/:agentId/voice/listen",
120
+ path: "/agents/:agentId/voice/listen",
117
121
  responseType: "json",
118
122
  pathParamSchema: agentIdPathParams,
119
123
  bodySchema: transcribeSpeechBodySchema,
@@ -121,6 +125,7 @@ var TRANSCRIBE_SPEECH_ROUTE = createRoute({
121
125
  summary: "Transcribe speech",
122
126
  description: "Transcribes speech audio to text using the agent voice configuration",
123
127
  tags: ["Agents", "Voice"],
128
+ requiresAuth: true,
124
129
  handler: async ({ mastra, agentId, audio, options, requestContext }) => {
125
130
  try {
126
131
  if (!agentId) {
@@ -149,25 +154,27 @@ var TRANSCRIBE_SPEECH_ROUTE = createRoute({
149
154
  });
150
155
  var TRANSCRIBE_SPEECH_DEPRECATED_ROUTE = createRoute({
151
156
  method: "POST",
152
- path: "/api/agents/:agentId/listen",
157
+ path: "/agents/:agentId/listen",
153
158
  responseType: "json",
154
159
  pathParamSchema: agentIdPathParams,
155
160
  bodySchema: transcribeSpeechBodySchema,
156
161
  responseSchema: transcribeSpeechResponseSchema,
157
162
  summary: "Convert speech to text",
158
- description: "[DEPRECATED] Use /api/agents/:agentId/voice/listen instead. Convert speech to text using the agent's voice provider. Additional provider-specific options can be passed as query parameters.",
163
+ description: "[DEPRECATED] Use /agents/:agentId/voice/listen instead. Convert speech to text using the agent's voice provider. Additional provider-specific options can be passed as query parameters.",
159
164
  tags: ["Agents", "Voice"],
165
+ requiresAuth: true,
160
166
  handler: TRANSCRIBE_SPEECH_ROUTE.handler
161
167
  });
162
168
  var GET_LISTENER_ROUTE = createRoute({
163
169
  method: "GET",
164
- path: "/api/agents/:agentId/voice/listener",
170
+ path: "/agents/:agentId/voice/listener",
165
171
  responseType: "json",
166
172
  pathParamSchema: agentIdPathParams,
167
173
  responseSchema: getListenerResponseSchema,
168
174
  summary: "Get voice listener",
169
175
  description: "Returns the voice listener configuration for the agent",
170
176
  tags: ["Agents", "Voice"],
177
+ requiresAuth: true,
171
178
  handler: async ({ mastra, agentId, requestContext }) => {
172
179
  try {
173
180
  if (!agentId) {
@@ -192,5 +199,5 @@ var GET_LISTENER_ROUTE = createRoute({
192
199
  });
193
200
 
194
201
  export { GENERATE_SPEECH_DEPRECATED_ROUTE, GENERATE_SPEECH_ROUTE, GET_LISTENER_ROUTE, GET_SPEAKERS_DEPRECATED_ROUTE, GET_SPEAKERS_ROUTE, TRANSCRIBE_SPEECH_DEPRECATED_ROUTE, TRANSCRIBE_SPEECH_ROUTE, voice_exports };
195
- //# sourceMappingURL=chunk-H34VRYSF.js.map
196
- //# sourceMappingURL=chunk-H34VRYSF.js.map
202
+ //# sourceMappingURL=chunk-DH5UZ4DD.js.map
203
+ //# sourceMappingURL=chunk-DH5UZ4DD.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/handlers/voice.ts"],"names":[],"mappings":"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","file":"chunk-DH5UZ4DD.js","sourcesContent":["import { Readable } from 'node:stream';\nimport { MastraError } from '@mastra/core/error';\nimport { HTTPException } from '../http-exception';\nimport {\n agentIdPathParams,\n voiceSpeakersResponseSchema,\n generateSpeechBodySchema,\n speakResponseSchema,\n transcribeSpeechBodySchema,\n transcribeSpeechResponseSchema,\n getListenerResponseSchema,\n} from '../schemas/agents';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { handleError } from './error';\nimport { validateBody } from './utils';\n\n// ============================================================================\n// Route Objects\n// ============================================================================\n\nexport const GET_SPEAKERS_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/voice/speakers',\n responseType: 'json',\n pathParamSchema: agentIdPathParams,\n responseSchema: voiceSpeakersResponseSchema,\n summary: 'Get voice speakers',\n description: 'Returns available voice speakers for the specified agent',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n const agent = mastra.getAgentById(agentId);\n\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const voice = await agent.getVoice({ requestContext });\n\n const speakers = await Promise.resolve()\n .then(() => voice.getSpeakers())\n .catch(err => {\n if (err instanceof MastraError) {\n // No voice provider configured, return empty array\n return [];\n }\n throw err;\n });\n\n return speakers;\n } catch (error) {\n return handleError(error, 'Error getting speakers');\n }\n },\n});\n\nexport const GET_SPEAKERS_DEPRECATED_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/speakers',\n responseType: 'json',\n pathParamSchema: agentIdPathParams,\n responseSchema: voiceSpeakersResponseSchema,\n summary: 'Get available speakers for an agent',\n description: '[DEPRECATED] Use /agents/:agentId/voice/speakers instead. Get available speakers for an agent',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n handler: GET_SPEAKERS_ROUTE.handler,\n});\n\nexport const GENERATE_SPEECH_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/voice/speak',\n responseType: 'stream',\n pathParamSchema: agentIdPathParams,\n bodySchema: generateSpeechBodySchema,\n responseSchema: speakResponseSchema,\n summary: 'Generate speech',\n description: 'Generates speech audio from text using the agent voice configuration',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, text, speakerId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n validateBody({ text });\n\n const agent = mastra.getAgentById(agentId);\n\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const voice = await agent.getVoice({ requestContext });\n\n if (!voice) {\n throw new HTTPException(400, { message: 'Agent does not have voice capabilities' });\n }\n\n const audioStream = await Promise.resolve()\n .then(() => voice.speak(text!, { speaker: speakerId! }))\n .catch(err => {\n if (err instanceof MastraError) {\n throw new HTTPException(400, { message: err.message });\n }\n\n throw err;\n });\n\n if (!audioStream) {\n throw new HTTPException(500, { message: 'Failed to generate speech' });\n }\n\n return audioStream as unknown as ReadableStream<any>;\n } catch (error) {\n return handleError(error, 'Error generating speech');\n }\n },\n});\n\nexport const GENERATE_SPEECH_DEPRECATED_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/speak',\n responseType: 'stream',\n pathParamSchema: agentIdPathParams,\n bodySchema: generateSpeechBodySchema,\n responseSchema: speakResponseSchema,\n summary: 'Convert text to speech',\n description:\n \"[DEPRECATED] Use /agents/:agentId/voice/speak instead. Convert text to speech using the agent's voice provider\",\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n handler: GENERATE_SPEECH_ROUTE.handler,\n});\n\nexport const TRANSCRIBE_SPEECH_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/voice/listen',\n responseType: 'json',\n pathParamSchema: agentIdPathParams,\n bodySchema: transcribeSpeechBodySchema,\n responseSchema: transcribeSpeechResponseSchema,\n summary: 'Transcribe speech',\n description: 'Transcribes speech audio to text using the agent voice configuration',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, audio, options, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n if (!audio) {\n throw new HTTPException(400, { message: 'Audio data is required' });\n }\n\n const agent = mastra.getAgentById(agentId);\n\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const voice = await agent.getVoice({ requestContext });\n\n if (!voice) {\n throw new HTTPException(400, { message: 'Agent does not have voice capabilities' });\n }\n\n const audioStream = new Readable();\n audioStream.push(audio);\n audioStream.push(null);\n\n const text = await voice.listen(audioStream, options);\n return { text: text as string };\n } catch (error) {\n return handleError(error, 'Error transcribing speech');\n }\n },\n});\n\nexport const TRANSCRIBE_SPEECH_DEPRECATED_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/listen',\n responseType: 'json',\n pathParamSchema: agentIdPathParams,\n bodySchema: transcribeSpeechBodySchema,\n responseSchema: transcribeSpeechResponseSchema,\n summary: 'Convert speech to text',\n description:\n \"[DEPRECATED] Use /agents/:agentId/voice/listen instead. Convert speech to text using the agent's voice provider. Additional provider-specific options can be passed as query parameters.\",\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n handler: TRANSCRIBE_SPEECH_ROUTE.handler,\n});\n\nexport const GET_LISTENER_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/voice/listener',\n responseType: 'json',\n pathParamSchema: agentIdPathParams,\n responseSchema: getListenerResponseSchema,\n summary: 'Get voice listener',\n description: 'Returns the voice listener configuration for the agent',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n const agent = mastra.getAgentById(agentId);\n\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const voice = await agent.getVoice({ requestContext });\n\n const listeners = await Promise.resolve()\n .then(() => voice.getListener())\n .catch(err => {\n if (err instanceof MastraError) {\n // No voice provider configured\n return { enabled: false };\n }\n throw err;\n });\n\n return listeners;\n } catch (error) {\n return handleError(error, 'Error getting listeners');\n }\n },\n});\n"]}
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var chunk5W4RPVTK_cjs = require('./chunk-5W4RPVTK.cjs');
4
- var chunkBRI4GUZ2_cjs = require('./chunk-BRI4GUZ2.cjs');
5
- var chunkMCYD5LW7_cjs = require('./chunk-MCYD5LW7.cjs');
3
+ var chunkVL4AR6TK_cjs = require('./chunk-VL4AR6TK.cjs');
4
+ var chunkZKMVCV4G_cjs = require('./chunk-ZKMVCV4G.cjs');
6
5
  var chunkGU4EWMZB_cjs = require('./chunk-GU4EWMZB.cjs');
7
- var chunkAVRO3FIN_cjs = require('./chunk-AVRO3FIN.cjs');
6
+ var chunkMCYD5LW7_cjs = require('./chunk-MCYD5LW7.cjs');
8
7
  var chunkSUKFO7UM_cjs = require('./chunk-SUKFO7UM.cjs');
9
8
  var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
9
+ var chunk4LVJBXI2_cjs = require('./chunk-4LVJBXI2.cjs');
10
10
  var chunkO7I5CWRX_cjs = require('./chunk-O7I5CWRX.cjs');
11
11
  var tools = require('@mastra/core/tools');
12
12
  var zodToJson = require('@mastra/core/utils/zod-to-json');
@@ -20,24 +20,26 @@ chunkO7I5CWRX_cjs.__export(tools_exports, {
20
20
  GET_TOOL_BY_ID_ROUTE: () => GET_TOOL_BY_ID_ROUTE,
21
21
  LIST_TOOLS_ROUTE: () => LIST_TOOLS_ROUTE
22
22
  });
23
- var LIST_TOOLS_ROUTE = chunkAVRO3FIN_cjs.createRoute({
23
+ var LIST_TOOLS_ROUTE = chunk4LVJBXI2_cjs.createRoute({
24
24
  method: "GET",
25
- path: "/api/tools",
25
+ path: "/tools",
26
26
  responseType: "json",
27
- responseSchema: chunkBRI4GUZ2_cjs.listToolsResponseSchema,
27
+ responseSchema: chunkVL4AR6TK_cjs.listToolsResponseSchema,
28
28
  summary: "List all tools",
29
29
  description: "Returns a list of all available tools in the system",
30
30
  tags: ["Tools"],
31
- handler: async ({ mastra, tools }) => {
31
+ requiresAuth: true,
32
+ handler: async ({ mastra, registeredTools }) => {
32
33
  try {
33
- const allTools = tools || mastra.listTools() || {};
34
+ const allTools = registeredTools || mastra.listTools() || {};
34
35
  const serializedTools = Object.entries(allTools).reduce(
35
36
  (acc, [id, _tool]) => {
36
37
  const tool = _tool;
37
38
  acc[id] = {
38
39
  ...tool,
39
40
  inputSchema: tool.inputSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.inputSchema)) : void 0,
40
- outputSchema: tool.outputSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.outputSchema)) : void 0
41
+ outputSchema: tool.outputSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.outputSchema)) : void 0,
42
+ requestContextSchema: tool.requestContextSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.requestContextSchema)) : void 0
41
43
  };
42
44
  return acc;
43
45
  },
@@ -49,20 +51,21 @@ var LIST_TOOLS_ROUTE = chunkAVRO3FIN_cjs.createRoute({
49
51
  }
50
52
  }
51
53
  });
52
- var GET_TOOL_BY_ID_ROUTE = chunkAVRO3FIN_cjs.createRoute({
54
+ var GET_TOOL_BY_ID_ROUTE = chunk4LVJBXI2_cjs.createRoute({
53
55
  method: "GET",
54
- path: "/api/tools/:toolId",
56
+ path: "/tools/:toolId",
55
57
  responseType: "json",
56
- pathParamSchema: chunkBRI4GUZ2_cjs.toolIdPathParams,
57
- responseSchema: chunkBRI4GUZ2_cjs.serializedToolSchema,
58
+ pathParamSchema: chunkVL4AR6TK_cjs.toolIdPathParams,
59
+ responseSchema: chunkVL4AR6TK_cjs.serializedToolSchema,
58
60
  summary: "Get tool by ID",
59
61
  description: "Returns details for a specific tool including its schema and configuration",
60
62
  tags: ["Tools"],
61
- handler: async ({ mastra, tools, toolId }) => {
63
+ requiresAuth: true,
64
+ handler: async ({ mastra, registeredTools, toolId }) => {
62
65
  try {
63
66
  let tool;
64
- if (tools && Object.keys(tools).length > 0) {
65
- tool = Object.values(tools).find((t) => t.id === toolId);
67
+ if (registeredTools && Object.keys(registeredTools).length > 0) {
68
+ tool = Object.values(registeredTools).find((t) => t.id === toolId);
66
69
  } else {
67
70
  tool = mastra.getToolById(toolId);
68
71
  }
@@ -72,7 +75,8 @@ var GET_TOOL_BY_ID_ROUTE = chunkAVRO3FIN_cjs.createRoute({
72
75
  const serializedTool = {
73
76
  ...tool,
74
77
  inputSchema: tool.inputSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.inputSchema)) : void 0,
75
- outputSchema: tool.outputSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.outputSchema)) : void 0
78
+ outputSchema: tool.outputSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.outputSchema)) : void 0,
79
+ requestContextSchema: tool.requestContextSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.requestContextSchema)) : void 0
76
80
  };
77
81
  return serializedTool;
78
82
  } catch (error) {
@@ -80,25 +84,26 @@ var GET_TOOL_BY_ID_ROUTE = chunkAVRO3FIN_cjs.createRoute({
80
84
  }
81
85
  }
82
86
  });
83
- var EXECUTE_TOOL_ROUTE = chunkAVRO3FIN_cjs.createRoute({
87
+ var EXECUTE_TOOL_ROUTE = chunk4LVJBXI2_cjs.createRoute({
84
88
  method: "POST",
85
- path: "/api/tools/:toolId/execute",
89
+ path: "/tools/:toolId/execute",
86
90
  responseType: "json",
87
- pathParamSchema: chunkBRI4GUZ2_cjs.toolIdPathParams,
91
+ pathParamSchema: chunkVL4AR6TK_cjs.toolIdPathParams,
88
92
  queryParamSchema: chunkMCYD5LW7_cjs.optionalRunIdSchema,
89
- bodySchema: chunkBRI4GUZ2_cjs.executeToolContextBodySchema,
90
- responseSchema: chunkBRI4GUZ2_cjs.executeToolResponseSchema,
93
+ bodySchema: chunkVL4AR6TK_cjs.executeToolContextBodySchema,
94
+ responseSchema: chunkVL4AR6TK_cjs.executeToolResponseSchema,
91
95
  summary: "Execute tool",
92
96
  description: "Executes a specific tool with the provided input data",
93
97
  tags: ["Tools"],
94
- handler: async ({ mastra, runId, toolId, tools: tools$1, requestContext, ...bodyParams }) => {
98
+ requiresAuth: true,
99
+ handler: async ({ mastra, runId, toolId, registeredTools, requestContext, ...bodyParams }) => {
95
100
  try {
96
101
  if (!toolId) {
97
102
  throw new chunk64ITUOXI_cjs.HTTPException(400, { message: "Tool ID is required" });
98
103
  }
99
104
  let tool;
100
- if (tools$1 && Object.keys(tools$1).length > 0) {
101
- tool = Object.values(tools$1).find((t) => t.id === toolId);
105
+ if (registeredTools && Object.keys(registeredTools).length > 0) {
106
+ tool = Object.values(registeredTools).find((t) => t.id === toolId);
102
107
  } else {
103
108
  tool = mastra.getToolById(toolId);
104
109
  }
@@ -109,7 +114,7 @@ var EXECUTE_TOOL_ROUTE = chunkAVRO3FIN_cjs.createRoute({
109
114
  throw new chunk64ITUOXI_cjs.HTTPException(400, { message: "Tool is not executable" });
110
115
  }
111
116
  const { data } = bodyParams;
112
- chunk5W4RPVTK_cjs.validateBody({ data });
117
+ chunkZKMVCV4G_cjs.validateBody({ data });
113
118
  if (tools.isVercelTool(tool)) {
114
119
  const result2 = await tool.execute(data);
115
120
  return result2;
@@ -133,15 +138,16 @@ var EXECUTE_TOOL_ROUTE = chunkAVRO3FIN_cjs.createRoute({
133
138
  }
134
139
  }
135
140
  });
136
- var GET_AGENT_TOOL_ROUTE = chunkAVRO3FIN_cjs.createRoute({
141
+ var GET_AGENT_TOOL_ROUTE = chunk4LVJBXI2_cjs.createRoute({
137
142
  method: "GET",
138
- path: "/api/agents/:agentId/tools/:toolId",
143
+ path: "/agents/:agentId/tools/:toolId",
139
144
  responseType: "json",
140
- pathParamSchema: chunkBRI4GUZ2_cjs.agentToolPathParams,
141
- responseSchema: chunkBRI4GUZ2_cjs.serializedToolSchema,
145
+ pathParamSchema: chunkVL4AR6TK_cjs.agentToolPathParams,
146
+ responseSchema: chunkVL4AR6TK_cjs.serializedToolSchema,
142
147
  summary: "Get agent tool",
143
148
  description: "Returns details for a specific tool assigned to the agent",
144
149
  tags: ["Agents", "Tools"],
150
+ requiresAuth: true,
145
151
  handler: async ({ mastra, agentId, toolId, requestContext }) => {
146
152
  try {
147
153
  const agent = agentId ? mastra.getAgentById(agentId) : null;
@@ -156,7 +162,8 @@ var GET_AGENT_TOOL_ROUTE = chunkAVRO3FIN_cjs.createRoute({
156
162
  const serializedTool = {
157
163
  ...tool,
158
164
  inputSchema: tool.inputSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.inputSchema)) : void 0,
159
- outputSchema: tool.outputSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.outputSchema)) : void 0
165
+ outputSchema: tool.outputSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.outputSchema)) : void 0,
166
+ requestContextSchema: tool.requestContextSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(tool.requestContextSchema)) : void 0
160
167
  };
161
168
  return serializedTool;
162
169
  } catch (error) {
@@ -164,21 +171,22 @@ var GET_AGENT_TOOL_ROUTE = chunkAVRO3FIN_cjs.createRoute({
164
171
  }
165
172
  }
166
173
  });
167
- var EXECUTE_AGENT_TOOL_ROUTE = chunkAVRO3FIN_cjs.createRoute({
174
+ var EXECUTE_AGENT_TOOL_ROUTE = chunk4LVJBXI2_cjs.createRoute({
168
175
  method: "POST",
169
- path: "/api/agents/:agentId/tools/:toolId/execute",
176
+ path: "/agents/:agentId/tools/:toolId/execute",
170
177
  responseType: "json",
171
- pathParamSchema: chunkBRI4GUZ2_cjs.agentToolPathParams,
172
- bodySchema: chunkBRI4GUZ2_cjs.executeToolBodySchema,
173
- responseSchema: chunkBRI4GUZ2_cjs.executeToolResponseSchema,
178
+ pathParamSchema: chunkVL4AR6TK_cjs.agentToolPathParams,
179
+ bodySchema: chunkVL4AR6TK_cjs.executeToolBodySchema,
180
+ responseSchema: chunkVL4AR6TK_cjs.executeToolResponseSchema,
174
181
  summary: "Execute agent tool",
175
182
  description: "Executes a specific tool assigned to the agent with the provided input data",
176
183
  tags: ["Agents", "Tools"],
184
+ requiresAuth: true,
177
185
  handler: async ({ mastra, agentId, toolId, data, requestContext }) => {
178
186
  try {
179
187
  const agent = agentId ? mastra.getAgentById(agentId) : null;
180
188
  if (!agent) {
181
- throw new chunk64ITUOXI_cjs.HTTPException(404, { message: "Tool not found" });
189
+ throw new chunk64ITUOXI_cjs.HTTPException(404, { message: "Agent not found" });
182
190
  }
183
191
  const agentTools = await agent.listTools({ requestContext });
184
192
  const tool = Object.values(agentTools || {}).find((tool2) => tool2.id === toolId);
@@ -207,5 +215,5 @@ exports.GET_AGENT_TOOL_ROUTE = GET_AGENT_TOOL_ROUTE;
207
215
  exports.GET_TOOL_BY_ID_ROUTE = GET_TOOL_BY_ID_ROUTE;
208
216
  exports.LIST_TOOLS_ROUTE = LIST_TOOLS_ROUTE;
209
217
  exports.tools_exports = tools_exports;
210
- //# sourceMappingURL=chunk-6MP2S6VI.cjs.map
211
- //# sourceMappingURL=chunk-6MP2S6VI.cjs.map
218
+ //# sourceMappingURL=chunk-EJCBKZET.cjs.map
219
+ //# sourceMappingURL=chunk-EJCBKZET.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/handlers/tools.ts"],"names":["__export","createRoute","listToolsResponseSchema","stringify","zodToJsonSchema","handleError","toolIdPathParams","serializedToolSchema","HTTPException","optionalRunIdSchema","executeToolContextBodySchema","executeToolResponseSchema","validateBody","isVercelTool","result","agentToolPathParams","tool","executeToolBodySchema"],"mappings":"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","file":"chunk-EJCBKZET.cjs","sourcesContent":["import { isVercelTool } from '@mastra/core/tools';\nimport { zodToJsonSchema } from '@mastra/core/utils/zod-to-json';\nimport { stringify } from 'superjson';\nimport { HTTPException } from '../http-exception';\nimport {\n executeToolContextBodySchema,\n executeToolResponseSchema,\n listToolsResponseSchema,\n serializedToolSchema,\n toolIdPathParams,\n agentToolPathParams,\n executeToolBodySchema,\n} from '../schemas/agents';\nimport { optionalRunIdSchema } from '../schemas/common';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { handleError } from './error';\nimport { validateBody } from './utils';\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const LIST_TOOLS_ROUTE = createRoute({\n method: 'GET',\n path: '/tools',\n responseType: 'json',\n responseSchema: listToolsResponseSchema,\n summary: 'List all tools',\n description: 'Returns a list of all available tools in the system',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools }) => {\n try {\n const allTools = registeredTools || mastra.listTools() || {};\n\n const serializedTools = Object.entries(allTools).reduce(\n (acc, [id, _tool]) => {\n // Cast to any since we're serializing to a generic Record<string, any>\n // and the tool types have varying property availability\n const tool = _tool as any;\n acc[id] = {\n ...tool,\n inputSchema: tool.inputSchema ? stringify(zodToJsonSchema(tool.inputSchema)) : undefined,\n outputSchema: tool.outputSchema ? stringify(zodToJsonSchema(tool.outputSchema)) : undefined,\n requestContextSchema: tool.requestContextSchema\n ? stringify(zodToJsonSchema(tool.requestContextSchema))\n : undefined,\n };\n return acc;\n },\n {} as Record<string, any>,\n );\n\n return serializedTools;\n } catch (error) {\n return handleError(error, 'Error getting tools');\n }\n },\n});\n\nexport const GET_TOOL_BY_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/tools/:toolId',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get tool by ID',\n description: 'Returns details for a specific tool including its schema and configuration',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools, toolId }) => {\n try {\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n } else {\n tool = mastra.getToolById(toolId);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n const serializedTool = {\n ...tool,\n inputSchema: tool.inputSchema ? stringify(zodToJsonSchema(tool.inputSchema)) : undefined,\n outputSchema: tool.outputSchema ? stringify(zodToJsonSchema(tool.outputSchema)) : undefined,\n requestContextSchema: tool.requestContextSchema\n ? stringify(zodToJsonSchema(tool.requestContextSchema))\n : undefined,\n };\n\n return serializedTool;\n } catch (error) {\n return handleError(error, 'Error getting tool');\n }\n },\n});\n\nexport const EXECUTE_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n queryParamSchema: optionalRunIdSchema,\n bodySchema: executeToolContextBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute tool',\n description: 'Executes a specific tool with the provided input data',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, runId, toolId, registeredTools, requestContext, ...bodyParams }) => {\n try {\n if (!toolId) {\n throw new HTTPException(400, { message: 'Tool ID is required' });\n }\n\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n } else {\n tool = mastra.getToolById(toolId);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const { data } = bodyParams;\n\n validateBody({ data });\n\n if (isVercelTool(tool)) {\n const result = await (tool as any).execute(data);\n return result;\n }\n\n const result = await tool.execute(data!, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n ...(runId\n ? {\n workflow: {\n runId,\n suspend: async () => {},\n },\n }\n : {}),\n });\n return result;\n } catch (error) {\n return handleError(error, 'Error executing tool');\n }\n },\n});\n\n// ============================================================================\n// Agent Tool Routes\n// ============================================================================\n\nexport const GET_AGENT_TOOL_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/tools/:toolId',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get agent tool',\n description: 'Returns details for a specific tool assigned to the agent',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, requestContext }) => {\n try {\n const agent = agentId ? mastra.getAgentById(agentId) : null;\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n const serializedTool = {\n ...tool,\n inputSchema: tool.inputSchema ? stringify(zodToJsonSchema(tool.inputSchema)) : undefined,\n outputSchema: tool.outputSchema ? stringify(zodToJsonSchema(tool.outputSchema)) : undefined,\n requestContextSchema: tool.requestContextSchema\n ? stringify(zodToJsonSchema(tool.requestContextSchema))\n : undefined,\n };\n\n return serializedTool;\n } catch (error) {\n return handleError(error, 'Error getting agent tool');\n }\n },\n});\n\nexport const EXECUTE_AGENT_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n bodySchema: executeToolBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute agent tool',\n description: 'Executes a specific tool assigned to the agent with the provided input data',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, data, requestContext }) => {\n try {\n const agent = agentId ? mastra.getAgentById(agentId) : null;\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const result = await tool.execute(data, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing agent tool');\n }\n },\n});\n"]}
@@ -3,6 +3,23 @@
3
3
  var chunkGU4EWMZB_cjs = require('./chunk-GU4EWMZB.cjs');
4
4
  var zodToJson = require('@mastra/core/utils/zod-to-json');
5
5
 
6
+ function normalizeRoutePath(path) {
7
+ let normalized = path.trim();
8
+ if (normalized.includes("..") || normalized.includes("?") || normalized.includes("#")) {
9
+ throw new Error(`Invalid route path: "${path}". Path cannot contain '..', '?', or '#'`);
10
+ }
11
+ normalized = normalized.replace(/\/+/g, "/");
12
+ if (normalized === "/" || normalized === "") {
13
+ return "";
14
+ }
15
+ if (normalized.endsWith("/")) {
16
+ normalized = normalized.slice(0, -1);
17
+ }
18
+ if (!normalized.startsWith("/")) {
19
+ normalized = `/${normalized}`;
20
+ }
21
+ return normalized;
22
+ }
6
23
  function looksLikeProcessorStepSchema(schema) {
7
24
  if (!schema) return false;
8
25
  try {
@@ -74,6 +91,7 @@ function getWorkflowInfo(workflow, partial = false) {
74
91
  resumeSchema: step.resumeSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(step.resumeSchema)) : void 0,
75
92
  suspendSchema: step.suspendSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(step.suspendSchema)) : void 0,
76
93
  stateSchema: step.stateSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(step.stateSchema)) : void 0,
94
+ requestContextSchema: step.requestContextSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(step.requestContextSchema)) : void 0,
77
95
  component: step.component
78
96
  };
79
97
  return acc;
@@ -83,6 +101,7 @@ function getWorkflowInfo(workflow, partial = false) {
83
101
  inputSchema: workflow.inputSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(workflow.inputSchema)) : void 0,
84
102
  outputSchema: workflow.outputSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(workflow.outputSchema)) : void 0,
85
103
  stateSchema: workflow.stateSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(workflow.stateSchema)) : void 0,
104
+ requestContextSchema: workflow.requestContextSchema ? chunkGU4EWMZB_cjs.stringify(zodToJson.zodToJsonSchema(workflow.requestContextSchema)) : void 0,
86
105
  options: workflow.options,
87
106
  isProcessorWorkflow: workflow.type === "processor" || looksLikeProcessorStepSchema(workflow.inputSchema)
88
107
  };
@@ -171,5 +190,6 @@ function convertInstructionsToString(message) {
171
190
  exports.WorkflowRegistry = WorkflowRegistry;
172
191
  exports.convertInstructionsToString = convertInstructionsToString;
173
192
  exports.getWorkflowInfo = getWorkflowInfo;
174
- //# sourceMappingURL=chunk-33CKPQS4.cjs.map
175
- //# sourceMappingURL=chunk-33CKPQS4.cjs.map
193
+ exports.normalizeRoutePath = normalizeRoutePath;
194
+ //# sourceMappingURL=chunk-ERXWG5L2.cjs.map
195
+ //# sourceMappingURL=chunk-ERXWG5L2.cjs.map