@mastra/server 1.33.0-alpha.1 → 1.33.0-alpha.13

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 (404) hide show
  1. package/CHANGELOG.md +296 -0
  2. package/dist/_types/@internal_core/dist/index.d.ts +9 -1
  3. package/dist/api-schema-manifest-H56IOQ7Q.cjs +58 -0
  4. package/dist/api-schema-manifest-H56IOQ7Q.cjs.map +1 -0
  5. package/dist/api-schema-manifest-SCZXY4HI.js +56 -0
  6. package/dist/api-schema-manifest-SCZXY4HI.js.map +1 -0
  7. package/dist/{chunk-HTSSEM5Z.cjs → chunk-24XD6PRY.cjs} +21 -6
  8. package/dist/chunk-24XD6PRY.cjs.map +1 -0
  9. package/dist/{chunk-4QGPES7N.js → chunk-2F6R22KQ.js} +3 -3
  10. package/dist/{chunk-4QGPES7N.js.map → chunk-2F6R22KQ.js.map} +1 -1
  11. package/dist/{chunk-ABCXNCRJ.js → chunk-2L6MRDXM.js} +3 -3
  12. package/dist/{chunk-ABCXNCRJ.js.map → chunk-2L6MRDXM.js.map} +1 -1
  13. package/dist/{chunk-3SVFRICR.js → chunk-2R5GLZJD.js} +3 -3
  14. package/dist/chunk-2R5GLZJD.js.map +1 -0
  15. package/dist/{chunk-F22H7Z7L.cjs → chunk-3BMOLOBX.cjs} +10 -10
  16. package/dist/{chunk-F22H7Z7L.cjs.map → chunk-3BMOLOBX.cjs.map} +1 -1
  17. package/dist/{chunk-BSGOXMAI.js → chunk-3GNDZVNF.js} +4 -4
  18. package/dist/{chunk-BSGOXMAI.js.map → chunk-3GNDZVNF.js.map} +1 -1
  19. package/dist/{chunk-EPYO4OC5.js → chunk-3OED33MB.js} +3 -3
  20. package/dist/{chunk-EPYO4OC5.js.map → chunk-3OED33MB.js.map} +1 -1
  21. package/dist/{chunk-QCSBOQGP.cjs → chunk-3RMKJTCU.cjs} +10 -10
  22. package/dist/{chunk-QCSBOQGP.cjs.map → chunk-3RMKJTCU.cjs.map} +1 -1
  23. package/dist/{chunk-SAOJYYFE.cjs → chunk-42WZN6MM.cjs} +10 -6
  24. package/dist/chunk-42WZN6MM.cjs.map +1 -0
  25. package/dist/{chunk-RFKNM47Y.js → chunk-4KCXZZ2I.js} +3 -3
  26. package/dist/{chunk-RFKNM47Y.js.map → chunk-4KCXZZ2I.js.map} +1 -1
  27. package/dist/chunk-4PB6LUYQ.js +46 -0
  28. package/dist/chunk-4PB6LUYQ.js.map +1 -0
  29. package/dist/{chunk-LYXVNT6L.cjs → chunk-54CKNFLM.cjs} +27 -27
  30. package/dist/{chunk-LYXVNT6L.cjs.map → chunk-54CKNFLM.cjs.map} +1 -1
  31. package/dist/{chunk-QXG537D5.cjs → chunk-5CGIBJFA.cjs} +13 -13
  32. package/dist/{chunk-QXG537D5.cjs.map → chunk-5CGIBJFA.cjs.map} +1 -1
  33. package/dist/{chunk-CJ2LC5EE.cjs → chunk-5HTICUZW.cjs} +164 -21
  34. package/dist/chunk-5HTICUZW.cjs.map +1 -0
  35. package/dist/{chunk-EUJHJEM6.cjs → chunk-5SURXCX2.cjs} +10 -10
  36. package/dist/{chunk-EUJHJEM6.cjs.map → chunk-5SURXCX2.cjs.map} +1 -1
  37. package/dist/{chunk-EFW6MWXU.cjs → chunk-5XW4MKE6.cjs} +22 -2
  38. package/dist/chunk-5XW4MKE6.cjs.map +1 -0
  39. package/dist/{chunk-SXARBGNQ.js → chunk-6BX5UZ67.js} +3 -3
  40. package/dist/{chunk-SXARBGNQ.js.map → chunk-6BX5UZ67.js.map} +1 -1
  41. package/dist/chunk-6UWC2NY3.cjs +638 -0
  42. package/dist/chunk-6UWC2NY3.cjs.map +1 -0
  43. package/dist/{chunk-64YJOWH2.cjs → chunk-72W42JL4.cjs} +5 -5
  44. package/dist/{chunk-64YJOWH2.cjs.map → chunk-72W42JL4.cjs.map} +1 -1
  45. package/dist/{chunk-URRUDXO5.cjs → chunk-7CCIRVMW.cjs} +173 -69
  46. package/dist/chunk-7CCIRVMW.cjs.map +1 -0
  47. package/dist/{chunk-V5AXCSSN.js → chunk-7Y5IMVVS.js} +4 -4
  48. package/dist/{chunk-V5AXCSSN.js.map → chunk-7Y5IMVVS.js.map} +1 -1
  49. package/dist/{chunk-MJXZZQ5O.js → chunk-AE7WAPJS.js} +3 -3
  50. package/dist/{chunk-MJXZZQ5O.js.map → chunk-AE7WAPJS.js.map} +1 -1
  51. package/dist/{chunk-BBX7Q7UG.cjs → chunk-AJL76XIL.cjs} +328 -140
  52. package/dist/chunk-AJL76XIL.cjs.map +1 -0
  53. package/dist/chunk-B3CHYE7C.js +549 -0
  54. package/dist/chunk-B3CHYE7C.js.map +1 -0
  55. package/dist/{chunk-6NY3T42O.js → chunk-BIUL4Y6W.js} +10 -6
  56. package/dist/chunk-BIUL4Y6W.js.map +1 -0
  57. package/dist/{chunk-F6MVX6E6.cjs → chunk-BQ4HXRAL.cjs} +11 -11
  58. package/dist/{chunk-F6MVX6E6.cjs.map → chunk-BQ4HXRAL.cjs.map} +1 -1
  59. package/dist/{chunk-XI4WY2MX.cjs → chunk-CQOIFPKU.cjs} +30 -30
  60. package/dist/{chunk-XI4WY2MX.cjs.map → chunk-CQOIFPKU.cjs.map} +1 -1
  61. package/dist/{chunk-R6JGZX7Q.cjs → chunk-CRN2HHZ4.cjs} +13 -13
  62. package/dist/{chunk-R6JGZX7Q.cjs.map → chunk-CRN2HHZ4.cjs.map} +1 -1
  63. package/dist/{chunk-CNTWPG57.cjs → chunk-CXAJPAJ2.cjs} +9 -2
  64. package/dist/chunk-CXAJPAJ2.cjs.map +1 -0
  65. package/dist/{chunk-XCIJHMUE.js → chunk-D3MJC643.js} +8 -6
  66. package/dist/chunk-D3MJC643.js.map +1 -0
  67. package/dist/{chunk-X2LYM3QK.js → chunk-DYHG4LMH.js} +3 -3
  68. package/dist/{chunk-X2LYM3QK.js.map → chunk-DYHG4LMH.js.map} +1 -1
  69. package/dist/{chunk-UWBU3GWI.cjs → chunk-DZVF6RQF.cjs} +8 -8
  70. package/dist/{chunk-UWBU3GWI.cjs.map → chunk-DZVF6RQF.cjs.map} +1 -1
  71. package/dist/chunk-E7UDPLDF.cjs +53 -0
  72. package/dist/chunk-E7UDPLDF.cjs.map +1 -0
  73. package/dist/{chunk-43CWQ4M3.js → chunk-EQUOHUYY.js} +164 -3
  74. package/dist/chunk-EQUOHUYY.js.map +1 -0
  75. package/dist/{chunk-JHUXQK47.cjs → chunk-EUI4PQF5.cjs} +11 -11
  76. package/dist/{chunk-JHUXQK47.cjs.map → chunk-EUI4PQF5.cjs.map} +1 -1
  77. package/dist/{chunk-GQOWV33T.js → chunk-EXI2FQQE.js} +9 -5
  78. package/dist/chunk-EXI2FQQE.js.map +1 -0
  79. package/dist/chunk-F3HP5HM6.cjs +998 -0
  80. package/dist/chunk-F3HP5HM6.cjs.map +1 -0
  81. package/dist/{chunk-GSURMQA2.js → chunk-FAEMMSQB.js} +4 -4
  82. package/dist/{chunk-GSURMQA2.js.map → chunk-FAEMMSQB.js.map} +1 -1
  83. package/dist/{chunk-SOJ2UNB6.js → chunk-FZNUEGME.js} +4 -4
  84. package/dist/{chunk-SOJ2UNB6.js.map → chunk-FZNUEGME.js.map} +1 -1
  85. package/dist/{chunk-GXSML4LI.js → chunk-GBFE3ATX.js} +4 -4
  86. package/dist/{chunk-GXSML4LI.js.map → chunk-GBFE3ATX.js.map} +1 -1
  87. package/dist/{chunk-5APP5R3R.cjs → chunk-GKWEP64R.cjs} +5 -5
  88. package/dist/{chunk-5APP5R3R.cjs.map → chunk-GKWEP64R.cjs.map} +1 -1
  89. package/dist/{chunk-KUEMDK4R.js → chunk-GTLERIMC.js} +3 -3
  90. package/dist/{chunk-KUEMDK4R.js.map → chunk-GTLERIMC.js.map} +1 -1
  91. package/dist/{chunk-QAFWIUAD.cjs → chunk-GW475GAG.cjs} +11 -11
  92. package/dist/{chunk-QAFWIUAD.cjs.map → chunk-GW475GAG.cjs.map} +1 -1
  93. package/dist/{chunk-CFK4R6LE.js → chunk-GZQFBILP.js} +3 -3
  94. package/dist/{chunk-CFK4R6LE.js.map → chunk-GZQFBILP.js.map} +1 -1
  95. package/dist/{chunk-NVM46NSG.js → chunk-HC7DEFY6.js} +91 -77
  96. package/dist/chunk-HC7DEFY6.js.map +1 -0
  97. package/dist/{chunk-K7IVZQKI.cjs → chunk-HKZWPQSC.cjs} +6 -6
  98. package/dist/{chunk-K7IVZQKI.cjs.map → chunk-HKZWPQSC.cjs.map} +1 -1
  99. package/dist/{chunk-LS5NHYVW.js → chunk-HX5WL5ZF.js} +3 -3
  100. package/dist/{chunk-LS5NHYVW.js.map → chunk-HX5WL5ZF.js.map} +1 -1
  101. package/dist/{chunk-UEACXZ5C.cjs → chunk-IIGNRK55.cjs} +4 -4
  102. package/dist/{chunk-UEACXZ5C.cjs.map → chunk-IIGNRK55.cjs.map} +1 -1
  103. package/dist/{chunk-SRJJBXTO.cjs → chunk-J2TNUEHZ.cjs} +11 -11
  104. package/dist/{chunk-SRJJBXTO.cjs.map → chunk-J2TNUEHZ.cjs.map} +1 -1
  105. package/dist/{chunk-APVIDF5T.cjs → chunk-J6L4JMBT.cjs} +7 -7
  106. package/dist/{chunk-APVIDF5T.cjs.map → chunk-J6L4JMBT.cjs.map} +1 -1
  107. package/dist/{chunk-DSJM7F5A.js → chunk-JH5BL5V2.js} +109 -7
  108. package/dist/chunk-JH5BL5V2.js.map +1 -0
  109. package/dist/{chunk-UOC4K3RU.js → chunk-JOUPK2UV.js} +3 -3
  110. package/dist/{chunk-UOC4K3RU.js.map → chunk-JOUPK2UV.js.map} +1 -1
  111. package/dist/{chunk-XBT4ZT22.js → chunk-KBRQAVQ7.js} +4 -4
  112. package/dist/{chunk-XBT4ZT22.js.map → chunk-KBRQAVQ7.js.map} +1 -1
  113. package/dist/{chunk-TJNZEYLA.js → chunk-KEE6UMGC.js} +9 -2
  114. package/dist/chunk-KEE6UMGC.js.map +1 -0
  115. package/dist/{chunk-IYEGDP3G.js → chunk-M7DF3D2M.js} +3 -3
  116. package/dist/{chunk-IYEGDP3G.js.map → chunk-M7DF3D2M.js.map} +1 -1
  117. package/dist/{chunk-44K6EWHN.cjs → chunk-M7WKIFTE.cjs} +388 -281
  118. package/dist/chunk-M7WKIFTE.cjs.map +1 -0
  119. package/dist/{chunk-SMAUVMWQ.cjs → chunk-MGUB4XMC.cjs} +10 -10
  120. package/dist/{chunk-SMAUVMWQ.cjs.map → chunk-MGUB4XMC.cjs.map} +1 -1
  121. package/dist/{chunk-3KIFZFY7.js → chunk-MIWKRHIV.js} +134 -11
  122. package/dist/chunk-MIWKRHIV.js.map +1 -0
  123. package/dist/{chunk-S65AMBAF.js → chunk-MQIZJZCT.js} +328 -140
  124. package/dist/chunk-MQIZJZCT.js.map +1 -0
  125. package/dist/{chunk-DTCRA7JS.js → chunk-MU5LIFIL.js} +290 -183
  126. package/dist/chunk-MU5LIFIL.js.map +1 -0
  127. package/dist/{chunk-MG4EE3KA.cjs → chunk-OG5H7763.cjs} +11 -11
  128. package/dist/{chunk-MG4EE3KA.cjs.map → chunk-OG5H7763.cjs.map} +1 -1
  129. package/dist/{chunk-YEAIZPBY.js → chunk-OMF7VJBL.js} +4 -4
  130. package/dist/{chunk-YEAIZPBY.js.map → chunk-OMF7VJBL.js.map} +1 -1
  131. package/dist/{chunk-P6DRWWFU.cjs → chunk-QH24MMM4.cjs} +24 -24
  132. package/dist/{chunk-P6DRWWFU.cjs.map → chunk-QH24MMM4.cjs.map} +1 -1
  133. package/dist/{chunk-X37VNBBB.cjs → chunk-QYJ2Z4NM.cjs} +28 -28
  134. package/dist/{chunk-X37VNBBB.cjs.map → chunk-QYJ2Z4NM.cjs.map} +1 -1
  135. package/dist/{chunk-I34RGOPQ.js → chunk-R2FHHF2M.js} +4 -4
  136. package/dist/{chunk-I34RGOPQ.js.map → chunk-R2FHHF2M.js.map} +1 -1
  137. package/dist/{chunk-EXVKDDKD.cjs → chunk-RS2S4SBQ.cjs} +10 -10
  138. package/dist/{chunk-EXVKDDKD.cjs.map → chunk-RS2S4SBQ.cjs.map} +1 -1
  139. package/dist/{chunk-ZV7XANBD.cjs → chunk-SALKEPIL.cjs} +10 -10
  140. package/dist/{chunk-ZV7XANBD.cjs.map → chunk-SALKEPIL.cjs.map} +1 -1
  141. package/dist/{chunk-H656FJUZ.js → chunk-SAWFPSUZ.js} +3 -3
  142. package/dist/{chunk-H656FJUZ.js.map → chunk-SAWFPSUZ.js.map} +1 -1
  143. package/dist/{chunk-VIX5OA2V.cjs → chunk-SBS6VJM2.cjs} +42 -40
  144. package/dist/chunk-SBS6VJM2.cjs.map +1 -0
  145. package/dist/{chunk-RRS33WBW.cjs → chunk-SQK6E6OB.cjs} +13 -13
  146. package/dist/{chunk-RRS33WBW.cjs.map → chunk-SQK6E6OB.cjs.map} +1 -1
  147. package/dist/{chunk-KDUX3YN3.js → chunk-SW5NAE22.js} +40 -40
  148. package/dist/{chunk-KDUX3YN3.js.map → chunk-SW5NAE22.js.map} +1 -1
  149. package/dist/{chunk-MI3PFFAR.js → chunk-SYAGB4OG.js} +286 -47
  150. package/dist/chunk-SYAGB4OG.js.map +1 -0
  151. package/dist/{chunk-W5JSRJAK.js → chunk-T2TSJEGX.js} +6 -6
  152. package/dist/{chunk-W5JSRJAK.js.map → chunk-T2TSJEGX.js.map} +1 -1
  153. package/dist/{chunk-7LAFXMXB.cjs → chunk-T3G3GPE3.cjs} +40 -39
  154. package/dist/{chunk-7LAFXMXB.cjs.map → chunk-T3G3GPE3.cjs.map} +1 -1
  155. package/dist/chunk-TLLV2JP5.js +983 -0
  156. package/dist/chunk-TLLV2JP5.js.map +1 -0
  157. package/dist/{chunk-4P237WJB.cjs → chunk-TMGV2NRM.cjs} +3 -3
  158. package/dist/chunk-TMGV2NRM.cjs.map +1 -0
  159. package/dist/chunk-TTJ3DYZH.cjs +557 -0
  160. package/dist/chunk-TTJ3DYZH.cjs.map +1 -0
  161. package/dist/{chunk-Y32L6Z5V.cjs → chunk-TYOEQICH.cjs} +35 -35
  162. package/dist/{chunk-Y32L6Z5V.cjs.map → chunk-TYOEQICH.cjs.map} +1 -1
  163. package/dist/{chunk-JU54MAJE.js → chunk-UG4TQYA5.js} +4 -4
  164. package/dist/{chunk-JU54MAJE.js.map → chunk-UG4TQYA5.js.map} +1 -1
  165. package/dist/{chunk-ELU7GCBF.cjs → chunk-UTA2JCM5.cjs} +52 -52
  166. package/dist/{chunk-ELU7GCBF.cjs.map → chunk-UTA2JCM5.cjs.map} +1 -1
  167. package/dist/{chunk-ALVHNIDP.js → chunk-UUK46T7P.js} +4 -4
  168. package/dist/{chunk-ALVHNIDP.js.map → chunk-UUK46T7P.js.map} +1 -1
  169. package/dist/{chunk-R3DQGOTC.cjs → chunk-VBFA6U5X.cjs} +12 -8
  170. package/dist/chunk-VBFA6U5X.cjs.map +1 -0
  171. package/dist/{chunk-MMHEXUTF.cjs → chunk-VG5YTXWO.cjs} +7 -7
  172. package/dist/{chunk-MMHEXUTF.cjs.map → chunk-VG5YTXWO.cjs.map} +1 -1
  173. package/dist/{chunk-YH452QGH.js → chunk-VMHV5ATJ.js} +3 -3
  174. package/dist/{chunk-YH452QGH.js.map → chunk-VMHV5ATJ.js.map} +1 -1
  175. package/dist/chunk-VRW4RECS.js +632 -0
  176. package/dist/chunk-VRW4RECS.js.map +1 -0
  177. package/dist/{chunk-OGFJRI4R.js → chunk-VSXPATYI.js} +19 -5
  178. package/dist/chunk-VSXPATYI.js.map +1 -0
  179. package/dist/{chunk-JLRBUMQA.cjs → chunk-WHTPC7MP.cjs} +10 -10
  180. package/dist/{chunk-JLRBUMQA.cjs.map → chunk-WHTPC7MP.cjs.map} +1 -1
  181. package/dist/{chunk-GTERDDNK.js → chunk-WXLLZARK.js} +3 -3
  182. package/dist/{chunk-GTERDDNK.js.map → chunk-WXLLZARK.js.map} +1 -1
  183. package/dist/{chunk-VF2DSR6J.js → chunk-WYZWXMWT.js} +4 -4
  184. package/dist/{chunk-VF2DSR6J.js.map → chunk-WYZWXMWT.js.map} +1 -1
  185. package/dist/{chunk-FE2MMCKW.js → chunk-XGKFSSPC.js} +8 -8
  186. package/dist/{chunk-FE2MMCKW.js.map → chunk-XGKFSSPC.js.map} +1 -1
  187. package/dist/{chunk-YF6DVWNN.cjs → chunk-XOVUIPJ5.cjs} +120 -106
  188. package/dist/chunk-XOVUIPJ5.cjs.map +1 -0
  189. package/dist/{chunk-FZSDG2KA.cjs → chunk-XQCH52QI.cjs} +10 -10
  190. package/dist/{chunk-FZSDG2KA.cjs.map → chunk-XQCH52QI.cjs.map} +1 -1
  191. package/dist/{chunk-BK2PRWVJ.cjs → chunk-Y5LNMKEY.cjs} +5 -5
  192. package/dist/{chunk-BK2PRWVJ.cjs.map → chunk-Y5LNMKEY.cjs.map} +1 -1
  193. package/dist/{chunk-DK46ZSF7.js → chunk-Y7PKRD75.js} +3 -3
  194. package/dist/{chunk-DK46ZSF7.js.map → chunk-Y7PKRD75.js.map} +1 -1
  195. package/dist/{chunk-OJRAH5VV.js → chunk-YARY4I5U.js} +18 -3
  196. package/dist/chunk-YARY4I5U.js.map +1 -0
  197. package/dist/{chunk-KUCUFXLD.js → chunk-YY6BP6U2.js} +7 -7
  198. package/dist/{chunk-KUCUFXLD.js.map → chunk-YY6BP6U2.js.map} +1 -1
  199. package/dist/{chunk-GUWIV3ZN.cjs → chunk-YYOGSRHT.cjs} +166 -2
  200. package/dist/chunk-YYOGSRHT.cjs.map +1 -0
  201. package/dist/{chunk-YWORLTQM.js → chunk-YYTNZ4KH.js} +7 -5
  202. package/dist/chunk-YYTNZ4KH.js.map +1 -0
  203. package/dist/{chunk-WZKXMP2U.cjs → chunk-ZCRTO66C.cjs} +473 -231
  204. package/dist/chunk-ZCRTO66C.cjs.map +1 -0
  205. package/dist/{chunk-V4DZUIDM.cjs → chunk-ZHOGHUAX.cjs} +87 -85
  206. package/dist/chunk-ZHOGHUAX.cjs.map +1 -0
  207. package/dist/docs/SKILL.md +1 -1
  208. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  209. package/dist/{observational-memory-KH7G7Y6B-QKEOJZME.js → observational-memory-NL7AQHZV-24ODMDOC.js} +3 -3
  210. package/dist/{observational-memory-KH7G7Y6B-QKEOJZME.js.map → observational-memory-NL7AQHZV-24ODMDOC.js.map} +1 -1
  211. package/dist/{observational-memory-KH7G7Y6B-Y3XQXW3K.cjs → observational-memory-NL7AQHZV-2F4R3W62.cjs} +26 -26
  212. package/dist/{observational-memory-KH7G7Y6B-Y3XQXW3K.cjs.map → observational-memory-NL7AQHZV-2F4R3W62.cjs.map} +1 -1
  213. package/dist/{probe-image-size-H2PYJKCK.cjs → probe-image-size-7HF7Q24F.cjs} +12 -113
  214. package/dist/probe-image-size-7HF7Q24F.cjs.map +1 -0
  215. package/dist/{probe-image-size-QWKVSEOF.js → probe-image-size-M5NYSF5D.js} +12 -113
  216. package/dist/probe-image-size-M5NYSF5D.js.map +1 -0
  217. package/dist/server/a2a/agent-card-signing.d.ts +7 -0
  218. package/dist/server/a2a/agent-card-signing.d.ts.map +1 -0
  219. package/dist/server/auth/index.cjs +15 -15
  220. package/dist/server/auth/index.js +1 -1
  221. package/dist/server/constants.d.ts +5 -0
  222. package/dist/server/constants.d.ts.map +1 -1
  223. package/dist/server/handlers/a2a.cjs +14 -14
  224. package/dist/server/handlers/a2a.d.ts +10 -0
  225. package/dist/server/handlers/a2a.d.ts.map +1 -1
  226. package/dist/server/handlers/a2a.js +1 -1
  227. package/dist/server/handlers/agent-builder.cjs +16 -16
  228. package/dist/server/handlers/agent-builder.js +1 -1
  229. package/dist/server/handlers/agent-versions.cjs +8 -8
  230. package/dist/server/handlers/agent-versions.js +1 -1
  231. package/dist/server/handlers/agents.cjs +50 -38
  232. package/dist/server/handlers/agents.d.ts +235 -60
  233. package/dist/server/handlers/agents.d.ts.map +1 -1
  234. package/dist/server/handlers/agents.js +1 -1
  235. package/dist/server/handlers/auth.cjs +11 -11
  236. package/dist/server/handlers/auth.js +1 -1
  237. package/dist/server/handlers/background-tasks.cjs +4 -4
  238. package/dist/server/handlers/background-tasks.d.ts +18 -5
  239. package/dist/server/handlers/background-tasks.d.ts.map +1 -1
  240. package/dist/server/handlers/background-tasks.js +1 -1
  241. package/dist/server/handlers/channels.cjs +5 -5
  242. package/dist/server/handlers/channels.js +1 -1
  243. package/dist/server/handlers/conversations.cjs +5 -5
  244. package/dist/server/handlers/conversations.js +1 -1
  245. package/dist/server/handlers/datasets.cjs +26 -26
  246. package/dist/server/handlers/datasets.js +1 -1
  247. package/dist/server/handlers/logs.cjs +4 -4
  248. package/dist/server/handlers/logs.js +1 -1
  249. package/dist/server/handlers/mcp-client-versions.cjs +8 -8
  250. package/dist/server/handlers/mcp-client-versions.js +1 -1
  251. package/dist/server/handlers/mcp.cjs +11 -11
  252. package/dist/server/handlers/mcp.js +1 -1
  253. package/dist/server/handlers/memory.cjs +27 -27
  254. package/dist/server/handlers/memory.d.ts.map +1 -1
  255. package/dist/server/handlers/memory.js +1 -1
  256. package/dist/server/handlers/observability-new-endpoints.cjs +28 -28
  257. package/dist/server/handlers/observability-new-endpoints.d.ts +18 -6
  258. package/dist/server/handlers/observability-new-endpoints.d.ts.map +1 -1
  259. package/dist/server/handlers/observability-new-endpoints.js +1 -1
  260. package/dist/server/handlers/observability.cjs +38 -38
  261. package/dist/server/handlers/observability.js +2 -2
  262. package/dist/server/handlers/processor-providers.cjs +3 -3
  263. package/dist/server/handlers/processor-providers.js +1 -1
  264. package/dist/server/handlers/processors.cjs +4 -4
  265. package/dist/server/handlers/processors.d.ts +6 -2
  266. package/dist/server/handlers/processors.d.ts.map +1 -1
  267. package/dist/server/handlers/processors.js +1 -1
  268. package/dist/server/handlers/prompt-block-versions.cjs +8 -8
  269. package/dist/server/handlers/prompt-block-versions.js +1 -1
  270. package/dist/server/handlers/responses.adapter.cjs +18 -14
  271. package/dist/server/handlers/responses.adapter.d.ts +96 -2
  272. package/dist/server/handlers/responses.adapter.d.ts.map +1 -1
  273. package/dist/server/handlers/responses.adapter.js +1 -1
  274. package/dist/server/handlers/responses.cjs +4 -4
  275. package/dist/server/handlers/responses.d.ts +8 -2
  276. package/dist/server/handlers/responses.d.ts.map +1 -1
  277. package/dist/server/handlers/responses.js +1 -1
  278. package/dist/server/handlers/responses.storage.cjs +8 -8
  279. package/dist/server/handlers/responses.storage.d.ts +4 -2
  280. package/dist/server/handlers/responses.storage.d.ts.map +1 -1
  281. package/dist/server/handlers/responses.storage.js +1 -1
  282. package/dist/server/handlers/schedules.cjs +6 -6
  283. package/dist/server/handlers/schedules.js +1 -1
  284. package/dist/server/handlers/scorer-versions.cjs +8 -8
  285. package/dist/server/handlers/scorer-versions.js +1 -1
  286. package/dist/server/handlers/scores.cjs +7 -7
  287. package/dist/server/handlers/scores.js +1 -1
  288. package/dist/server/handlers/stored-agents.cjs +7 -7
  289. package/dist/server/handlers/stored-agents.js +1 -1
  290. package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
  291. package/dist/server/handlers/stored-mcp-clients.js +1 -1
  292. package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
  293. package/dist/server/handlers/stored-prompt-blocks.js +1 -1
  294. package/dist/server/handlers/stored-scorers.cjs +6 -6
  295. package/dist/server/handlers/stored-scorers.js +1 -1
  296. package/dist/server/handlers/stored-skills.cjs +7 -7
  297. package/dist/server/handlers/stored-skills.js +1 -1
  298. package/dist/server/handlers/stored-workspaces.cjs +6 -6
  299. package/dist/server/handlers/stored-workspaces.js +1 -1
  300. package/dist/server/handlers/system.cjs +6 -2
  301. package/dist/server/handlers/system.d.ts +39 -0
  302. package/dist/server/handlers/system.d.ts.map +1 -1
  303. package/dist/server/handlers/system.js +1 -1
  304. package/dist/server/handlers/tool-providers.cjs +5 -5
  305. package/dist/server/handlers/tool-providers.js +1 -1
  306. package/dist/server/handlers/tools.cjs +6 -6
  307. package/dist/server/handlers/tools.js +1 -1
  308. package/dist/server/handlers/utils.cjs +10 -10
  309. package/dist/server/handlers/utils.js +1 -1
  310. package/dist/server/handlers/vector.cjs +16 -16
  311. package/dist/server/handlers/vector.js +1 -1
  312. package/dist/server/handlers/voice.cjs +8 -8
  313. package/dist/server/handlers/voice.js +1 -1
  314. package/dist/server/handlers/workflows.cjs +32 -24
  315. package/dist/server/handlers/workflows.d.ts +83 -0
  316. package/dist/server/handlers/workflows.d.ts.map +1 -1
  317. package/dist/server/handlers/workflows.js +1 -1
  318. package/dist/server/handlers/workspace.cjs +26 -26
  319. package/dist/server/handlers/workspace.js +1 -1
  320. package/dist/server/handlers.cjs +30 -30
  321. package/dist/server/handlers.js +15 -15
  322. package/dist/server/schemas/a2a.d.ts +5 -0
  323. package/dist/server/schemas/a2a.d.ts.map +1 -1
  324. package/dist/server/schemas/agents.d.ts +1373 -1
  325. package/dist/server/schemas/agents.d.ts.map +1 -1
  326. package/dist/server/schemas/background-tasks.d.ts +11 -0
  327. package/dist/server/schemas/background-tasks.d.ts.map +1 -1
  328. package/dist/server/schemas/index.cjs +115 -91
  329. package/dist/server/schemas/index.js +6 -6
  330. package/dist/server/schemas/processors.d.ts +3 -0
  331. package/dist/server/schemas/processors.d.ts.map +1 -1
  332. package/dist/server/schemas/responses.d.ts +3 -1
  333. package/dist/server/schemas/responses.d.ts.map +1 -1
  334. package/dist/server/schemas/system.d.ts +54 -0
  335. package/dist/server/schemas/system.d.ts.map +1 -1
  336. package/dist/server/server-adapter/api-schema-manifest.d.ts +23 -0
  337. package/dist/server/server-adapter/api-schema-manifest.d.ts.map +1 -0
  338. package/dist/server/server-adapter/index.cjs +83 -655
  339. package/dist/server/server-adapter/index.cjs.map +1 -1
  340. package/dist/server/server-adapter/index.d.ts +6 -2
  341. package/dist/server/server-adapter/index.d.ts.map +1 -1
  342. package/dist/server/server-adapter/index.js +33 -638
  343. package/dist/server/server-adapter/index.js.map +1 -1
  344. package/dist/server/server-adapter/openapi-utils.d.ts +5 -0
  345. package/dist/server/server-adapter/openapi-utils.d.ts.map +1 -1
  346. package/dist/server/server-adapter/routes/a2a.d.ts +10 -0
  347. package/dist/server/server-adapter/routes/a2a.d.ts.map +1 -1
  348. package/dist/server/server-adapter/routes/agents.d.ts +4 -1
  349. package/dist/server/server-adapter/routes/agents.d.ts.map +1 -1
  350. package/dist/server/server-adapter/routes/observability.d.ts +9 -3
  351. package/dist/server/server-adapter/routes/observability.d.ts.map +1 -1
  352. package/dist/server/server-adapter/routes/processors.d.ts +6 -2
  353. package/dist/server/server-adapter/routes/processors.d.ts.map +1 -1
  354. package/dist/server/server-adapter/routes/responses.d.ts +8 -2
  355. package/dist/server/server-adapter/routes/responses.d.ts.map +1 -1
  356. package/dist/server/server-adapter/routes/system.d.ts +39 -1
  357. package/dist/server/server-adapter/routes/system.d.ts.map +1 -1
  358. package/dist/server/server-adapter/routes/workflows.d.ts +66 -1
  359. package/dist/server/server-adapter/routes/workflows.d.ts.map +1 -1
  360. package/package.json +9 -7
  361. package/dist/chunk-3KIFZFY7.js.map +0 -1
  362. package/dist/chunk-3SVFRICR.js.map +0 -1
  363. package/dist/chunk-43CWQ4M3.js.map +0 -1
  364. package/dist/chunk-44K6EWHN.cjs.map +0 -1
  365. package/dist/chunk-4P237WJB.cjs.map +0 -1
  366. package/dist/chunk-4P7D66VB.cjs +0 -30
  367. package/dist/chunk-4P7D66VB.cjs.map +0 -1
  368. package/dist/chunk-6NY3T42O.js.map +0 -1
  369. package/dist/chunk-AJYJ4H7P.js +0 -438
  370. package/dist/chunk-AJYJ4H7P.js.map +0 -1
  371. package/dist/chunk-BBX7Q7UG.cjs.map +0 -1
  372. package/dist/chunk-CJ2LC5EE.cjs.map +0 -1
  373. package/dist/chunk-CNTWPG57.cjs.map +0 -1
  374. package/dist/chunk-DFSUBEGE.js +0 -226
  375. package/dist/chunk-DFSUBEGE.js.map +0 -1
  376. package/dist/chunk-DSJM7F5A.js.map +0 -1
  377. package/dist/chunk-DTCRA7JS.js.map +0 -1
  378. package/dist/chunk-EFW6MWXU.cjs.map +0 -1
  379. package/dist/chunk-GGCDSOHW.js +0 -26
  380. package/dist/chunk-GGCDSOHW.js.map +0 -1
  381. package/dist/chunk-GQOWV33T.js.map +0 -1
  382. package/dist/chunk-GUWIV3ZN.cjs.map +0 -1
  383. package/dist/chunk-HTSSEM5Z.cjs.map +0 -1
  384. package/dist/chunk-MI3PFFAR.js.map +0 -1
  385. package/dist/chunk-NVM46NSG.js.map +0 -1
  386. package/dist/chunk-OGFJRI4R.js.map +0 -1
  387. package/dist/chunk-OJ72T77G.cjs +0 -452
  388. package/dist/chunk-OJ72T77G.cjs.map +0 -1
  389. package/dist/chunk-OJRAH5VV.js.map +0 -1
  390. package/dist/chunk-PJYQMPXT.cjs +0 -234
  391. package/dist/chunk-PJYQMPXT.cjs.map +0 -1
  392. package/dist/chunk-R3DQGOTC.cjs.map +0 -1
  393. package/dist/chunk-S65AMBAF.js.map +0 -1
  394. package/dist/chunk-SAOJYYFE.cjs.map +0 -1
  395. package/dist/chunk-TJNZEYLA.js.map +0 -1
  396. package/dist/chunk-URRUDXO5.cjs.map +0 -1
  397. package/dist/chunk-V4DZUIDM.cjs.map +0 -1
  398. package/dist/chunk-VIX5OA2V.cjs.map +0 -1
  399. package/dist/chunk-WZKXMP2U.cjs.map +0 -1
  400. package/dist/chunk-XCIJHMUE.js.map +0 -1
  401. package/dist/chunk-YF6DVWNN.cjs.map +0 -1
  402. package/dist/chunk-YWORLTQM.js.map +0 -1
  403. package/dist/probe-image-size-H2PYJKCK.cjs.map +0 -1
  404. package/dist/probe-image-size-QWKVSEOF.js.map +0 -1
@@ -14,7 +14,8 @@ var responseInputMessageSchema = z.object({
14
14
  });
15
15
  var providerOptionValuesSchema = z.record(z.string(), z.unknown());
16
16
  var providerOptionsSchema = z.object({
17
- openai: providerOptionValuesSchema.optional().describe("OpenAI provider options such as previousResponseId, conversation, or responseId")
17
+ openai: providerOptionValuesSchema.optional().describe("OpenAI provider options such as previousResponseId, conversation, or responseId"),
18
+ azure: providerOptionValuesSchema.optional().describe("Azure OpenAI provider options such as previousResponseId, store, or itemId")
18
19
  }).passthrough();
19
20
  var responseTextFormatJsonObjectSchema = z.object({
20
21
  type: z.literal("json_object").describe("Requests JSON object output compatibility for the response")
@@ -37,7 +38,7 @@ var createResponseBodySchema = z.object({
37
38
  model: z.string().optional().describe(
38
39
  "Optional model identifier override, such as openai/gpt-5. When omitted, the agent default model is used."
39
40
  ),
40
- agent_id: z.string().describe("Mastra agent ID for the request"),
41
+ agent_id: z.string().min(1).optional().describe("Mastra agent ID for the request. Required unless previous_response_id is provided."),
41
42
  input: z.union([z.string(), z.array(responseInputMessageSchema)]),
42
43
  instructions: z.string().optional(),
43
44
  text: responseTextSchema.optional().describe(
@@ -47,8 +48,11 @@ var createResponseBodySchema = z.object({
47
48
  providerOptions: providerOptionsSchema.optional().describe("Optional provider-specific options passed through to the underlying model call"),
48
49
  stream: z.boolean().optional().default(false),
49
50
  store: z.boolean().optional().default(false),
50
- previous_response_id: z.string().optional()
51
- }).passthrough();
51
+ previous_response_id: z.string().min(1).optional()
52
+ }).passthrough().refine((data) => data.agent_id || data.previous_response_id, {
53
+ message: "agent_id is required unless previous_response_id is provided",
54
+ path: []
55
+ });
52
56
  var responseOutputTextSchema = z.object({
53
57
  type: z.literal("output_text"),
54
58
  text: z.string(),
@@ -141,5 +145,5 @@ var deleteResponseSchema = z.object({
141
145
  });
142
146
 
143
147
  export { conversationItemMessageSchema, conversationItemSchema, conversationMessageContentSchema, createResponseBodySchema, deleteResponseSchema, responseIdPathParams, responseInputMessageSchema, responseInputTextContentSchema, responseInputTextPartSchema, responseObjectSchema, responseOutputFunctionCallOutputSchema, responseOutputFunctionCallSchema, responseOutputItemSchema, responseOutputMessageSchema, responseOutputTextSchema, responseTextFormatSchema, responseToolSchema, responseUsageSchema };
144
- //# sourceMappingURL=chunk-6NY3T42O.js.map
145
- //# sourceMappingURL=chunk-6NY3T42O.js.map
148
+ //# sourceMappingURL=chunk-BIUL4Y6W.js.map
149
+ //# sourceMappingURL=chunk-BIUL4Y6W.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/schemas/responses.ts"],"names":[],"mappings":"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","file":"chunk-BIUL4Y6W.js","sourcesContent":["import z from 'zod';\n\nexport const responseIdPathParams = z.object({\n responseId: z.string().describe('Unique identifier for the stored response'),\n});\n\nexport const responseInputTextPartSchema = z.object({\n type: z.enum(['input_text', 'text', 'output_text']),\n text: z.string(),\n});\n\nexport const responseInputMessageSchema = z.object({\n role: z.enum(['system', 'developer', 'user', 'assistant']),\n content: z.union([z.string(), z.array(responseInputTextPartSchema)]),\n});\n\nexport type ResponseInputMessage = z.infer<typeof responseInputMessageSchema>;\n\nconst providerOptionValuesSchema = z.record(z.string(), z.unknown());\n\nconst providerOptionsSchema = z\n .object({\n openai: providerOptionValuesSchema\n .optional()\n .describe('OpenAI provider options such as previousResponseId, conversation, or responseId'),\n azure: providerOptionValuesSchema\n .optional()\n .describe('Azure OpenAI provider options such as previousResponseId, store, or itemId'),\n })\n .passthrough();\n\nconst responseTextFormatJsonObjectSchema = z.object({\n type: z.literal('json_object').describe('Requests JSON object output compatibility for the response'),\n});\n\nconst responseTextFormatJsonSchemaSchema = z.object({\n type: z.literal('json_schema'),\n name: z.string(),\n description: z.string().optional(),\n schema: z.record(z.string(), z.unknown()),\n strict: z.boolean().optional(),\n});\n\nexport const responseTextFormatSchema = z.union([\n responseTextFormatJsonObjectSchema,\n responseTextFormatJsonSchemaSchema,\n]);\n\nexport type ResponseTextFormat = z.infer<typeof responseTextFormatSchema>;\n\nconst responseTextSchema = z.object({\n format: responseTextFormatSchema,\n});\n\nexport type ResponseTextConfig = z.infer<typeof responseTextSchema>;\n\nexport const createResponseBodySchema = z\n .object({\n model: z\n .string()\n .optional()\n .describe(\n 'Optional model identifier override, such as openai/gpt-5. When omitted, the agent default model is used.',\n ),\n agent_id: z\n .string()\n .min(1)\n .optional()\n .describe('Mastra agent ID for the request. Required unless previous_response_id is provided.'),\n input: z.union([z.string(), z.array(responseInputMessageSchema)]),\n instructions: z.string().optional(),\n text: responseTextSchema\n .optional()\n .describe(\n 'Optional text output format. Supports `json_object` for JSON mode and `json_schema` for schema-constrained structured output.',\n ),\n conversation_id: z.string().optional().describe('Optional conversation ID. In Mastra this is the raw threadId.'),\n providerOptions: providerOptionsSchema\n .optional()\n .describe('Optional provider-specific options passed through to the underlying model call'),\n stream: z.boolean().optional().default(false),\n store: z.boolean().optional().default(false),\n previous_response_id: z.string().min(1).optional(),\n })\n .passthrough()\n .refine(data => data.agent_id || data.previous_response_id, {\n message: 'agent_id is required unless previous_response_id is provided',\n path: [],\n });\n\nexport type CreateResponseBody = z.infer<typeof createResponseBodySchema>;\n\nexport const responseOutputTextSchema = z.object({\n type: z.literal('output_text'),\n text: z.string(),\n annotations: z.array(z.unknown()).optional(),\n logprobs: z.array(z.unknown()).optional(),\n});\n\nexport const responseInputTextContentSchema = z.object({\n type: z.literal('input_text'),\n text: z.string(),\n});\n\nexport const conversationMessageContentSchema = z.union([responseInputTextContentSchema, responseOutputTextSchema]);\n\nexport const responseOutputMessageSchema = z.object({\n id: z.string(),\n type: z.literal('message'),\n role: z.literal('assistant'),\n status: z.enum(['in_progress', 'completed', 'incomplete']),\n content: z.array(responseOutputTextSchema),\n});\n\nexport const responseOutputFunctionCallSchema = z.object({\n id: z.string(),\n type: z.literal('function_call'),\n call_id: z.string(),\n name: z.string(),\n arguments: z.string(),\n status: z.enum(['in_progress', 'completed', 'incomplete']).optional(),\n});\n\nexport const responseOutputFunctionCallOutputSchema = z.object({\n id: z.string(),\n type: z.literal('function_call_output'),\n call_id: z.string(),\n output: z.string(),\n});\n\nexport const responseUsageSchema = z.object({\n input_tokens: z.number(),\n output_tokens: z.number(),\n total_tokens: z.number(),\n input_tokens_details: z\n .object({\n cached_tokens: z.number(),\n })\n .optional(),\n output_tokens_details: z\n .object({\n reasoning_tokens: z.number(),\n })\n .optional(),\n});\n\nexport type ResponseUsage = z.infer<typeof responseUsageSchema>;\n\nexport const responseToolSchema = z.object({\n type: z.literal('function'),\n name: z.string(),\n description: z.string().optional(),\n parameters: z.unknown().optional(),\n});\n\nexport type ResponseTool = z.infer<typeof responseToolSchema>;\n\nexport const responseOutputItemSchema = z.union([\n responseOutputMessageSchema,\n responseOutputFunctionCallSchema,\n responseOutputFunctionCallOutputSchema,\n]);\n\nexport type ResponseOutputItem = z.infer<typeof responseOutputItemSchema>;\n\nexport const conversationItemMessageSchema = z.object({\n id: z.string(),\n type: z.literal('message'),\n role: z.enum(['system', 'user', 'assistant']),\n status: z.literal('completed'),\n content: z.array(conversationMessageContentSchema),\n});\n\nexport const conversationItemSchema = z.union([\n conversationItemMessageSchema,\n responseOutputFunctionCallSchema,\n responseOutputFunctionCallOutputSchema,\n]);\n\nexport type ConversationItem = z.infer<typeof conversationItemSchema>;\n\nexport const responseObjectSchema = z.object({\n id: z.string(),\n object: z.literal('response'),\n created_at: z.number(),\n completed_at: z.number().nullable(),\n model: z.string(),\n status: z.enum(['in_progress', 'completed', 'incomplete']),\n output: z.array(responseOutputItemSchema),\n usage: responseUsageSchema.nullable(),\n error: z.null().optional(),\n incomplete_details: z.null().optional(),\n instructions: z.string().nullable().optional(),\n text: responseTextSchema.nullable().optional(),\n previous_response_id: z.string().nullable().optional(),\n conversation_id: z.string().nullable().optional(),\n providerOptions: providerOptionsSchema.optional(),\n tools: z.array(responseToolSchema).optional(),\n store: z.boolean().optional(),\n});\n\nexport type ResponseObject = z.infer<typeof responseObjectSchema>;\n\nexport const deleteResponseSchema = z.object({\n id: z.string(),\n object: z.literal('response'),\n deleted: z.literal(true),\n});\n\nexport type DeleteResponse = z.infer<typeof deleteResponseSchema>;\n"]}
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkDCDQNIYY_cjs = require('./chunk-DCDQNIYY.cjs');
4
- var chunkWZKXMP2U_cjs = require('./chunk-WZKXMP2U.cjs');
4
+ var chunkZCRTO66C_cjs = require('./chunk-ZCRTO66C.cjs');
5
5
  var chunkDIG2K5CV_cjs = require('./chunk-DIG2K5CV.cjs');
6
- var chunk7LAFXMXB_cjs = require('./chunk-7LAFXMXB.cjs');
6
+ var chunkT3G3GPE3_cjs = require('./chunk-T3G3GPE3.cjs');
7
7
  var chunkB34S64RC_cjs = require('./chunk-B34S64RC.cjs');
8
8
  var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
9
9
  var chunkO7I5CWRX_cjs = require('./chunk-O7I5CWRX.cjs');
@@ -130,7 +130,7 @@ function getTraceDetails(traceIdWithSpanId) {
130
130
  ...spanId ? { spanId } : {}
131
131
  };
132
132
  }
133
- var LIST_SCORERS_ROUTE = chunk7LAFXMXB_cjs.createRoute({
133
+ var LIST_SCORERS_ROUTE = chunkT3G3GPE3_cjs.createRoute({
134
134
  method: "GET",
135
135
  path: "/scores/scorers",
136
136
  responseType: "json",
@@ -147,7 +147,7 @@ var LIST_SCORERS_ROUTE = chunk7LAFXMXB_cjs.createRoute({
147
147
  return scorers;
148
148
  })
149
149
  });
150
- var GET_SCORER_ROUTE = chunk7LAFXMXB_cjs.createRoute({
150
+ var GET_SCORER_ROUTE = chunkT3G3GPE3_cjs.createRoute({
151
151
  method: "GET",
152
152
  path: "/scores/scorers/:scorerId",
153
153
  responseType: "json",
@@ -169,7 +169,7 @@ var GET_SCORER_ROUTE = chunk7LAFXMXB_cjs.createRoute({
169
169
  return scorer;
170
170
  })
171
171
  });
172
- var LIST_SCORES_BY_RUN_ID_ROUTE = chunk7LAFXMXB_cjs.createRoute({
172
+ var LIST_SCORES_BY_RUN_ID_ROUTE = chunkT3G3GPE3_cjs.createRoute({
173
173
  method: "GET",
174
174
  path: "/scores/run/:runId",
175
175
  responseType: "json",
@@ -201,7 +201,7 @@ var LIST_SCORES_BY_RUN_ID_ROUTE = chunk7LAFXMXB_cjs.createRoute({
201
201
  }
202
202
  }
203
203
  });
204
- var LIST_SCORES_BY_SCORER_ID_ROUTE = chunk7LAFXMXB_cjs.createRoute({
204
+ var LIST_SCORES_BY_SCORER_ID_ROUTE = chunkT3G3GPE3_cjs.createRoute({
205
205
  method: "GET",
206
206
  path: "/scores/scorer/:scorerId",
207
207
  responseType: "json",
@@ -231,7 +231,7 @@ var LIST_SCORES_BY_SCORER_ID_ROUTE = chunk7LAFXMXB_cjs.createRoute({
231
231
  }
232
232
  }
233
233
  });
234
- var LIST_SCORES_BY_ENTITY_ID_ROUTE = chunk7LAFXMXB_cjs.createRoute({
234
+ var LIST_SCORES_BY_ENTITY_ID_ROUTE = chunkT3G3GPE3_cjs.createRoute({
235
235
  method: "GET",
236
236
  path: "/scores/entity/:entityType/:entityId",
237
237
  responseType: "json",
@@ -247,7 +247,7 @@ var LIST_SCORES_BY_ENTITY_ID_ROUTE = chunk7LAFXMXB_cjs.createRoute({
247
247
  const { page, perPage } = params;
248
248
  let entityIdToUse = entityId;
249
249
  if (entityType === "AGENT") {
250
- const agent = await chunkWZKXMP2U_cjs.getAgentFromSystem({ mastra, agentId: entityId });
250
+ const agent = await chunkZCRTO66C_cjs.getAgentFromSystem({ mastra, agentId: entityId });
251
251
  entityIdToUse = agent.id;
252
252
  } else if (entityType === "WORKFLOW") {
253
253
  const workflow = mastra.getWorkflowById(entityId);
@@ -272,7 +272,7 @@ var LIST_SCORES_BY_ENTITY_ID_ROUTE = chunk7LAFXMXB_cjs.createRoute({
272
272
  }
273
273
  }
274
274
  });
275
- var SAVE_SCORE_ROUTE = chunk7LAFXMXB_cjs.createRoute({
275
+ var SAVE_SCORE_ROUTE = chunkT3G3GPE3_cjs.createRoute({
276
276
  method: "POST",
277
277
  path: "/scores",
278
278
  responseType: "json",
@@ -304,5 +304,5 @@ exports.LIST_SCORES_BY_RUN_ID_ROUTE = LIST_SCORES_BY_RUN_ID_ROUTE;
304
304
  exports.LIST_SCORES_BY_SCORER_ID_ROUTE = LIST_SCORES_BY_SCORER_ID_ROUTE;
305
305
  exports.SAVE_SCORE_ROUTE = SAVE_SCORE_ROUTE;
306
306
  exports.scores_exports = scores_exports;
307
- //# sourceMappingURL=chunk-F6MVX6E6.cjs.map
308
- //# sourceMappingURL=chunk-F6MVX6E6.cjs.map
307
+ //# sourceMappingURL=chunk-BQ4HXRAL.cjs.map
308
+ //# sourceMappingURL=chunk-BQ4HXRAL.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/scores.ts"],"names":["__export","createRoute","listScorersResponseSchema","scorerIdPathParams","scorerEntrySchema","runIdSchema","listScoresByRunIdQuerySchema","scoresWithPaginationResponseSchema","handleError","listScoresByScorerIdQuerySchema","entityPathParams","listScoresByEntityIdQuerySchema","getAgentFromSystem","saveScoreBodySchema","saveScoreResponseSchema","HTTPException"],"mappings":"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","file":"chunk-F6MVX6E6.cjs","sourcesContent":["import type { MastraScorerEntry, ScoreRowData } from '@mastra/core/evals';\nimport type { RequestContext } from '@mastra/core/request-context';\nimport type { StoragePagination } from '@mastra/core/storage';\nimport { HTTPException } from '../http-exception';\nimport { runIdSchema } from '../schemas/common';\nimport {\n listScorersResponseSchema,\n scorerEntrySchema,\n scorerIdPathParams,\n entityPathParams,\n listScoresByRunIdQuerySchema,\n listScoresByScorerIdQuerySchema,\n listScoresByEntityIdQuerySchema,\n saveScoreBodySchema,\n scoresWithPaginationResponseSchema,\n saveScoreResponseSchema,\n} from '../schemas/scores';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport type { Context } from '../types';\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\n\nasync function listScorersFromSystem({\n mastra,\n requestContext,\n}: Context & {\n requestContext: RequestContext;\n}) {\n const agents = mastra.listAgents();\n const workflows = mastra.listWorkflows();\n\n const scorersMap = new Map<\n string,\n MastraScorerEntry & {\n agentIds: string[];\n agentNames: string[];\n workflowIds: string[];\n isRegistered: boolean;\n source: 'code' | 'stored';\n }\n >();\n\n // Helper function to process an agent's scorers\n const processAgentScorers = async (agent: {\n id: string;\n name: string;\n listScorers: (typeof agents)[string]['listScorers'];\n }) => {\n const scorers =\n (await agent.listScorers({\n requestContext,\n })) || {};\n\n if (Object.keys(scorers).length > 0) {\n for (const [_scorerId, scorer] of Object.entries(scorers)) {\n const scorerId = scorer.scorer.id;\n if (scorersMap.has(scorerId)) {\n scorersMap.get(scorerId)?.agentIds.push(agent.id);\n scorersMap.get(scorerId)?.agentNames.push(agent.name);\n } else {\n scorersMap.set(scorerId, {\n workflowIds: [],\n ...scorer,\n agentNames: [agent.name],\n agentIds: [agent.id],\n isRegistered: false,\n source: scorer.scorer.source ?? 'code',\n });\n }\n }\n }\n };\n\n // Process code-defined agents\n for (const [_, agent] of Object.entries(agents)) {\n await processAgentScorers(agent);\n }\n\n // Process stored agents (database-backed agents)\n try {\n const editor = mastra.getEditor();\n const storedAgentsResult = await editor?.agent.list();\n if (storedAgentsResult?.agents) {\n for (const storedAgentConfig of storedAgentsResult.agents) {\n try {\n const agent = await editor?.agent.getById(storedAgentConfig.id);\n if (agent) {\n await processAgentScorers(agent);\n }\n } catch {\n // Skip individual agents that fail to hydrate\n }\n }\n }\n } catch {\n // Silently ignore if storage is not configured - not all setups have storage\n }\n\n // Process stored scorers (standalone CMS-created scorers)\n try {\n const editor = mastra.getEditor();\n const storedScorersResult = await editor?.scorer.list();\n if (storedScorersResult?.scorerDefinitions) {\n for (const storedScorerConfig of storedScorersResult.scorerDefinitions) {\n try {\n await editor?.scorer.getById(storedScorerConfig.id);\n } catch {\n // Skip individual scorers that fail to hydrate\n }\n }\n }\n } catch {\n // Silently ignore if storage is not configured\n }\n\n for (const [workflowId, workflow] of Object.entries(workflows)) {\n const scorers =\n (await workflow.listScorers({\n requestContext,\n })) || {};\n\n if (Object.keys(scorers).length > 0) {\n for (const [_scorerId, scorer] of Object.entries(scorers)) {\n const scorerName = scorer.scorer.name;\n if (scorersMap.has(scorerName)) {\n scorersMap.get(scorerName)?.workflowIds.push(workflowId);\n } else {\n scorersMap.set(scorerName, {\n agentIds: [],\n agentNames: [],\n ...scorer,\n workflowIds: [workflowId],\n isRegistered: false,\n source: scorer.scorer.source ?? 'code',\n });\n }\n }\n }\n }\n\n const registeredScorers = await mastra.listScorers();\n for (const [_scorerId, scorer] of Object.entries(registeredScorers || {})) {\n const scorerId = scorer.id;\n if (scorersMap.has(scorerId)) {\n scorersMap.get(scorerId)!.isRegistered = true;\n } else {\n scorersMap.set(scorerId, {\n scorer: scorer,\n agentIds: [],\n agentNames: [],\n workflowIds: [],\n isRegistered: true,\n source: scorer.source ?? 'code',\n });\n }\n }\n\n return Object.fromEntries(scorersMap.entries());\n}\n\n// Legacy function to get trace and span details\nfunction getTraceDetails(traceIdWithSpanId?: string) {\n if (!traceIdWithSpanId) {\n return {};\n }\n\n const [traceId, spanId] = traceIdWithSpanId.split('-');\n\n return {\n ...(traceId ? { traceId } : {}),\n ...(spanId ? { spanId } : {}),\n };\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const LIST_SCORERS_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/scorers',\n responseType: 'json',\n responseSchema: listScorersResponseSchema,\n summary: 'List all scorers',\n description: 'Returns a list of all registered scorers with their configuration and associated agents and workflows',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: (async ({ mastra, requestContext }: any) => {\n const scorers = await listScorersFromSystem({\n mastra,\n requestContext,\n });\n return scorers;\n }) as any,\n});\n\nexport const GET_SCORER_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/scorers/:scorerId',\n responseType: 'json',\n pathParamSchema: scorerIdPathParams,\n responseSchema: scorerEntrySchema.nullable(),\n summary: 'Get scorer by ID',\n description: 'Returns details for a specific scorer including its configuration and associations',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: (async ({ mastra, scorerId, requestContext }: any) => {\n const scorers = await listScorersFromSystem({\n mastra,\n requestContext,\n });\n\n const scorer = scorers[scorerId];\n\n if (!scorer) {\n return null;\n }\n\n return scorer;\n }) as any,\n});\n\nexport const LIST_SCORES_BY_RUN_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/run/:runId',\n responseType: 'json',\n pathParamSchema: runIdSchema,\n queryParamSchema: listScoresByRunIdQuerySchema,\n responseSchema: scoresWithPaginationResponseSchema,\n summary: 'List scores by run ID',\n description: 'Returns all scores for a specific execution run',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, runId, ...params }) => {\n try {\n const { page, perPage } = params;\n const pagination: StoragePagination = {\n page: page ?? 0,\n perPage: perPage ?? 10,\n };\n const scores = await mastra.getStorage()?.getStore('scores');\n const scoreResults = (await scores?.listScoresByRunId?.({\n runId,\n pagination,\n })) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };\n return {\n pagination: scoreResults.pagination,\n scores: scoreResults.scores.map((score: ScoreRowData) => ({ ...score, ...getTraceDetails(score.traceId) })),\n };\n } catch (error) {\n return handleError(error, 'Error getting scores by run id');\n }\n },\n});\n\nexport const LIST_SCORES_BY_SCORER_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/scorer/:scorerId',\n responseType: 'json',\n pathParamSchema: scorerIdPathParams,\n queryParamSchema: listScoresByScorerIdQuerySchema,\n responseSchema: scoresWithPaginationResponseSchema,\n summary: 'List scores by scorer ID',\n description: 'Returns all scores generated by a specific scorer',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, scorerId, ...params }) => {\n try {\n const { page, perPage, entityId, entityType } = params;\n const filters = Object.fromEntries(Object.entries({ entityId, entityType }).filter(([_, v]) => v !== undefined));\n const scores = await mastra.getStorage()?.getStore('scores');\n const scoreResults = (await scores?.listScoresByScorerId?.({\n scorerId,\n pagination: { page: page ?? 0, perPage: perPage ?? 10 },\n ...filters,\n })) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };\n return {\n pagination: scoreResults.pagination,\n scores: scoreResults.scores.map((score: ScoreRowData) => ({ ...score, ...getTraceDetails(score.traceId) })),\n };\n } catch (error) {\n return handleError(error, 'Error getting scores by scorer id');\n }\n },\n});\n\nexport const LIST_SCORES_BY_ENTITY_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/entity/:entityType/:entityId',\n responseType: 'json',\n pathParamSchema: entityPathParams,\n queryParamSchema: listScoresByEntityIdQuerySchema,\n responseSchema: scoresWithPaginationResponseSchema,\n summary: 'List scores by entity ID',\n description: 'Returns all scores for a specific entity (agent or workflow)',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, entityId, entityType, ...params }) => {\n try {\n const { page, perPage } = params;\n let entityIdToUse = entityId;\n\n if (entityType === 'AGENT') {\n const agent = await getAgentFromSystem({ mastra, agentId: entityId });\n entityIdToUse = agent.id;\n } else if (entityType === 'WORKFLOW') {\n const workflow = mastra.getWorkflowById(entityId);\n entityIdToUse = workflow.id;\n }\n\n const pagination: StoragePagination = {\n page: page ?? 0,\n perPage: perPage ?? 10,\n };\n\n const scoresStore = await mastra.getStorage()?.getStore('scores');\n const scoreResults = (await scoresStore?.listScoresByEntityId?.({\n entityId: entityIdToUse,\n entityType,\n pagination,\n })) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };\n\n return {\n pagination: scoreResults.pagination,\n scores: scoreResults.scores.map((score: ScoreRowData) => ({ ...score, ...getTraceDetails(score.traceId) })),\n };\n } catch (error) {\n return handleError(error, 'Error getting scores by entity id');\n }\n },\n});\n\nexport const SAVE_SCORE_ROUTE = createRoute({\n method: 'POST',\n path: '/scores',\n responseType: 'json',\n bodySchema: saveScoreBodySchema,\n responseSchema: saveScoreResponseSchema,\n summary: 'Save score',\n description: 'Saves a new score record to storage',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\n const { score } = params as { score: ScoreRowData };\n const scoresStore = await mastra.getStorage()?.getStore('scores');\n const result = await scoresStore?.saveScore?.(score);\n if (!result) {\n throw new HTTPException(500, { message: 'Storage not configured' });\n }\n return result;\n } catch (error) {\n return handleError(error, 'Error saving score');\n }\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/scores.ts"],"names":["__export","createRoute","listScorersResponseSchema","scorerIdPathParams","scorerEntrySchema","runIdSchema","listScoresByRunIdQuerySchema","scoresWithPaginationResponseSchema","handleError","listScoresByScorerIdQuerySchema","entityPathParams","listScoresByEntityIdQuerySchema","getAgentFromSystem","saveScoreBodySchema","saveScoreResponseSchema","HTTPException"],"mappings":"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","file":"chunk-BQ4HXRAL.cjs","sourcesContent":["import type { MastraScorerEntry, ScoreRowData } from '@mastra/core/evals';\nimport type { RequestContext } from '@mastra/core/request-context';\nimport type { StoragePagination } from '@mastra/core/storage';\nimport { HTTPException } from '../http-exception';\nimport { runIdSchema } from '../schemas/common';\nimport {\n listScorersResponseSchema,\n scorerEntrySchema,\n scorerIdPathParams,\n entityPathParams,\n listScoresByRunIdQuerySchema,\n listScoresByScorerIdQuerySchema,\n listScoresByEntityIdQuerySchema,\n saveScoreBodySchema,\n scoresWithPaginationResponseSchema,\n saveScoreResponseSchema,\n} from '../schemas/scores';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport type { Context } from '../types';\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\n\nasync function listScorersFromSystem({\n mastra,\n requestContext,\n}: Context & {\n requestContext: RequestContext;\n}) {\n const agents = mastra.listAgents();\n const workflows = mastra.listWorkflows();\n\n const scorersMap = new Map<\n string,\n MastraScorerEntry & {\n agentIds: string[];\n agentNames: string[];\n workflowIds: string[];\n isRegistered: boolean;\n source: 'code' | 'stored';\n }\n >();\n\n // Helper function to process an agent's scorers\n const processAgentScorers = async (agent: {\n id: string;\n name: string;\n listScorers: (typeof agents)[string]['listScorers'];\n }) => {\n const scorers =\n (await agent.listScorers({\n requestContext,\n })) || {};\n\n if (Object.keys(scorers).length > 0) {\n for (const [_scorerId, scorer] of Object.entries(scorers)) {\n const scorerId = scorer.scorer.id;\n if (scorersMap.has(scorerId)) {\n scorersMap.get(scorerId)?.agentIds.push(agent.id);\n scorersMap.get(scorerId)?.agentNames.push(agent.name);\n } else {\n scorersMap.set(scorerId, {\n workflowIds: [],\n ...scorer,\n agentNames: [agent.name],\n agentIds: [agent.id],\n isRegistered: false,\n source: scorer.scorer.source ?? 'code',\n });\n }\n }\n }\n };\n\n // Process code-defined agents\n for (const [_, agent] of Object.entries(agents)) {\n await processAgentScorers(agent);\n }\n\n // Process stored agents (database-backed agents)\n try {\n const editor = mastra.getEditor();\n const storedAgentsResult = await editor?.agent.list();\n if (storedAgentsResult?.agents) {\n for (const storedAgentConfig of storedAgentsResult.agents) {\n try {\n const agent = await editor?.agent.getById(storedAgentConfig.id);\n if (agent) {\n await processAgentScorers(agent);\n }\n } catch {\n // Skip individual agents that fail to hydrate\n }\n }\n }\n } catch {\n // Silently ignore if storage is not configured - not all setups have storage\n }\n\n // Process stored scorers (standalone CMS-created scorers)\n try {\n const editor = mastra.getEditor();\n const storedScorersResult = await editor?.scorer.list();\n if (storedScorersResult?.scorerDefinitions) {\n for (const storedScorerConfig of storedScorersResult.scorerDefinitions) {\n try {\n await editor?.scorer.getById(storedScorerConfig.id);\n } catch {\n // Skip individual scorers that fail to hydrate\n }\n }\n }\n } catch {\n // Silently ignore if storage is not configured\n }\n\n for (const [workflowId, workflow] of Object.entries(workflows)) {\n const scorers =\n (await workflow.listScorers({\n requestContext,\n })) || {};\n\n if (Object.keys(scorers).length > 0) {\n for (const [_scorerId, scorer] of Object.entries(scorers)) {\n const scorerName = scorer.scorer.name;\n if (scorersMap.has(scorerName)) {\n scorersMap.get(scorerName)?.workflowIds.push(workflowId);\n } else {\n scorersMap.set(scorerName, {\n agentIds: [],\n agentNames: [],\n ...scorer,\n workflowIds: [workflowId],\n isRegistered: false,\n source: scorer.scorer.source ?? 'code',\n });\n }\n }\n }\n }\n\n const registeredScorers = await mastra.listScorers();\n for (const [_scorerId, scorer] of Object.entries(registeredScorers || {})) {\n const scorerId = scorer.id;\n if (scorersMap.has(scorerId)) {\n scorersMap.get(scorerId)!.isRegistered = true;\n } else {\n scorersMap.set(scorerId, {\n scorer: scorer,\n agentIds: [],\n agentNames: [],\n workflowIds: [],\n isRegistered: true,\n source: scorer.source ?? 'code',\n });\n }\n }\n\n return Object.fromEntries(scorersMap.entries());\n}\n\n// Legacy function to get trace and span details\nfunction getTraceDetails(traceIdWithSpanId?: string) {\n if (!traceIdWithSpanId) {\n return {};\n }\n\n const [traceId, spanId] = traceIdWithSpanId.split('-');\n\n return {\n ...(traceId ? { traceId } : {}),\n ...(spanId ? { spanId } : {}),\n };\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const LIST_SCORERS_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/scorers',\n responseType: 'json',\n responseSchema: listScorersResponseSchema,\n summary: 'List all scorers',\n description: 'Returns a list of all registered scorers with their configuration and associated agents and workflows',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: (async ({ mastra, requestContext }: any) => {\n const scorers = await listScorersFromSystem({\n mastra,\n requestContext,\n });\n return scorers;\n }) as any,\n});\n\nexport const GET_SCORER_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/scorers/:scorerId',\n responseType: 'json',\n pathParamSchema: scorerIdPathParams,\n responseSchema: scorerEntrySchema.nullable(),\n summary: 'Get scorer by ID',\n description: 'Returns details for a specific scorer including its configuration and associations',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: (async ({ mastra, scorerId, requestContext }: any) => {\n const scorers = await listScorersFromSystem({\n mastra,\n requestContext,\n });\n\n const scorer = scorers[scorerId];\n\n if (!scorer) {\n return null;\n }\n\n return scorer;\n }) as any,\n});\n\nexport const LIST_SCORES_BY_RUN_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/run/:runId',\n responseType: 'json',\n pathParamSchema: runIdSchema,\n queryParamSchema: listScoresByRunIdQuerySchema,\n responseSchema: scoresWithPaginationResponseSchema,\n summary: 'List scores by run ID',\n description: 'Returns all scores for a specific execution run',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, runId, ...params }) => {\n try {\n const { page, perPage } = params;\n const pagination: StoragePagination = {\n page: page ?? 0,\n perPage: perPage ?? 10,\n };\n const scores = await mastra.getStorage()?.getStore('scores');\n const scoreResults = (await scores?.listScoresByRunId?.({\n runId,\n pagination,\n })) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };\n return {\n pagination: scoreResults.pagination,\n scores: scoreResults.scores.map((score: ScoreRowData) => ({ ...score, ...getTraceDetails(score.traceId) })),\n };\n } catch (error) {\n return handleError(error, 'Error getting scores by run id');\n }\n },\n});\n\nexport const LIST_SCORES_BY_SCORER_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/scorer/:scorerId',\n responseType: 'json',\n pathParamSchema: scorerIdPathParams,\n queryParamSchema: listScoresByScorerIdQuerySchema,\n responseSchema: scoresWithPaginationResponseSchema,\n summary: 'List scores by scorer ID',\n description: 'Returns all scores generated by a specific scorer',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, scorerId, ...params }) => {\n try {\n const { page, perPage, entityId, entityType } = params;\n const filters = Object.fromEntries(Object.entries({ entityId, entityType }).filter(([_, v]) => v !== undefined));\n const scores = await mastra.getStorage()?.getStore('scores');\n const scoreResults = (await scores?.listScoresByScorerId?.({\n scorerId,\n pagination: { page: page ?? 0, perPage: perPage ?? 10 },\n ...filters,\n })) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };\n return {\n pagination: scoreResults.pagination,\n scores: scoreResults.scores.map((score: ScoreRowData) => ({ ...score, ...getTraceDetails(score.traceId) })),\n };\n } catch (error) {\n return handleError(error, 'Error getting scores by scorer id');\n }\n },\n});\n\nexport const LIST_SCORES_BY_ENTITY_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/entity/:entityType/:entityId',\n responseType: 'json',\n pathParamSchema: entityPathParams,\n queryParamSchema: listScoresByEntityIdQuerySchema,\n responseSchema: scoresWithPaginationResponseSchema,\n summary: 'List scores by entity ID',\n description: 'Returns all scores for a specific entity (agent or workflow)',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, entityId, entityType, ...params }) => {\n try {\n const { page, perPage } = params;\n let entityIdToUse = entityId;\n\n if (entityType === 'AGENT') {\n const agent = await getAgentFromSystem({ mastra, agentId: entityId });\n entityIdToUse = agent.id;\n } else if (entityType === 'WORKFLOW') {\n const workflow = mastra.getWorkflowById(entityId);\n entityIdToUse = workflow.id;\n }\n\n const pagination: StoragePagination = {\n page: page ?? 0,\n perPage: perPage ?? 10,\n };\n\n const scoresStore = await mastra.getStorage()?.getStore('scores');\n const scoreResults = (await scoresStore?.listScoresByEntityId?.({\n entityId: entityIdToUse,\n entityType,\n pagination,\n })) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };\n\n return {\n pagination: scoreResults.pagination,\n scores: scoreResults.scores.map((score: ScoreRowData) => ({ ...score, ...getTraceDetails(score.traceId) })),\n };\n } catch (error) {\n return handleError(error, 'Error getting scores by entity id');\n }\n },\n});\n\nexport const SAVE_SCORE_ROUTE = createRoute({\n method: 'POST',\n path: '/scores',\n responseType: 'json',\n bodySchema: saveScoreBodySchema,\n responseSchema: saveScoreResponseSchema,\n summary: 'Save score',\n description: 'Saves a new score record to storage',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\n const { score } = params as { score: ScoreRowData };\n const scoresStore = await mastra.getStorage()?.getStore('scores');\n const result = await scoresStore?.saveScore?.(score);\n if (!result) {\n throw new HTTPException(500, { message: 'Storage not configured' });\n }\n return result;\n } catch (error) {\n return handleError(error, 'Error saving score');\n }\n },\n});\n"]}
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var chunkWZKXMP2U_cjs = require('./chunk-WZKXMP2U.cjs');
4
- var chunkGUWIV3ZN_cjs = require('./chunk-GUWIV3ZN.cjs');
5
- var chunkK7IVZQKI_cjs = require('./chunk-K7IVZQKI.cjs');
6
- var chunk64YJOWH2_cjs = require('./chunk-64YJOWH2.cjs');
3
+ var chunkZCRTO66C_cjs = require('./chunk-ZCRTO66C.cjs');
4
+ var chunkYYOGSRHT_cjs = require('./chunk-YYOGSRHT.cjs');
5
+ var chunkHKZWPQSC_cjs = require('./chunk-HKZWPQSC.cjs');
6
+ var chunk72W42JL4_cjs = require('./chunk-72W42JL4.cjs');
7
7
  var chunkL4M23OMB_cjs = require('./chunk-L4M23OMB.cjs');
8
8
  var chunkDIG2K5CV_cjs = require('./chunk-DIG2K5CV.cjs');
9
- var chunk7LAFXMXB_cjs = require('./chunk-7LAFXMXB.cjs');
9
+ var chunkT3G3GPE3_cjs = require('./chunk-T3G3GPE3.cjs');
10
10
  var chunkB34S64RC_cjs = require('./chunk-B34S64RC.cjs');
11
11
  var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
12
12
  var chunkO7I5CWRX_cjs = require('./chunk-O7I5CWRX.cjs');
@@ -31,12 +31,12 @@ function schemaToJsonSchema(schema) {
31
31
  if (!schema) {
32
32
  return void 0;
33
33
  }
34
- return chunk7LAFXMXB_cjs.standardSchemaToJSONSchema(chunk7LAFXMXB_cjs.toStandardSchema5(schema), { target: "draft-2020-12" });
34
+ return chunkT3G3GPE3_cjs.standardSchemaToJSONSchema(chunkT3G3GPE3_cjs.toStandardSchema5(schema), { target: "draft-2020-12" });
35
35
  }
36
36
  function serializeSchema(schema) {
37
37
  const jsonSchema = schemaToJsonSchema(resolveLazySchema(schema));
38
38
  if (jsonSchema === void 0) return void 0;
39
- return chunkK7IVZQKI_cjs.stringify(jsonSchema);
39
+ return chunkHKZWPQSC_cjs.stringify(jsonSchema);
40
40
  }
41
41
  async function findToolInAgents(mastra, toolId, requestContext) {
42
42
  const agents = mastra.listAgents() || {};
@@ -61,8 +61,8 @@ function serializeTool(tool) {
61
61
  const resolvedOutput = resolveLazySchema(tool.outputSchema);
62
62
  return {
63
63
  ...tool,
64
- inputSchema: resolvedInput && typeof resolvedInput === "object" && "jsonSchema" in resolvedInput ? chunkK7IVZQKI_cjs.stringify(resolvedInput.jsonSchema) : void 0,
65
- outputSchema: resolvedOutput && typeof resolvedOutput === "object" && "jsonSchema" in resolvedOutput ? chunkK7IVZQKI_cjs.stringify(resolvedOutput.jsonSchema) : void 0
64
+ inputSchema: resolvedInput && typeof resolvedInput === "object" && "jsonSchema" in resolvedInput ? chunkHKZWPQSC_cjs.stringify(resolvedInput.jsonSchema) : void 0,
65
+ outputSchema: resolvedOutput && typeof resolvedOutput === "object" && "jsonSchema" in resolvedOutput ? chunkHKZWPQSC_cjs.stringify(resolvedOutput.jsonSchema) : void 0
66
66
  };
67
67
  }
68
68
  return {
@@ -72,11 +72,11 @@ function serializeTool(tool) {
72
72
  requestContextSchema: serializeSchema(tool.requestContextSchema)
73
73
  };
74
74
  }
75
- var LIST_TOOLS_ROUTE = chunk7LAFXMXB_cjs.createRoute({
75
+ var LIST_TOOLS_ROUTE = chunkT3G3GPE3_cjs.createRoute({
76
76
  method: "GET",
77
77
  path: "/tools",
78
78
  responseType: "json",
79
- responseSchema: chunkGUWIV3ZN_cjs.listToolsResponseSchema,
79
+ responseSchema: chunkYYOGSRHT_cjs.listToolsResponseSchema,
80
80
  summary: "List all tools",
81
81
  description: "Returns a list of all available tools in the system",
82
82
  tags: ["Tools"],
@@ -109,12 +109,12 @@ var LIST_TOOLS_ROUTE = chunk7LAFXMXB_cjs.createRoute({
109
109
  }
110
110
  }
111
111
  });
112
- var GET_TOOL_BY_ID_ROUTE = chunk7LAFXMXB_cjs.createRoute({
112
+ var GET_TOOL_BY_ID_ROUTE = chunkT3G3GPE3_cjs.createRoute({
113
113
  method: "GET",
114
114
  path: "/tools/:toolId",
115
115
  responseType: "json",
116
- pathParamSchema: chunkGUWIV3ZN_cjs.toolIdPathParams,
117
- responseSchema: chunkGUWIV3ZN_cjs.serializedToolSchema,
116
+ pathParamSchema: chunkYYOGSRHT_cjs.toolIdPathParams,
117
+ responseSchema: chunkYYOGSRHT_cjs.serializedToolSchema,
118
118
  summary: "Get tool by ID",
119
119
  description: "Returns details for a specific tool including its schema and configuration",
120
120
  tags: ["Tools"],
@@ -144,14 +144,14 @@ var GET_TOOL_BY_ID_ROUTE = chunk7LAFXMXB_cjs.createRoute({
144
144
  }
145
145
  }
146
146
  });
147
- var EXECUTE_TOOL_ROUTE = chunk7LAFXMXB_cjs.createRoute({
147
+ var EXECUTE_TOOL_ROUTE = chunkT3G3GPE3_cjs.createRoute({
148
148
  method: "POST",
149
149
  path: "/tools/:toolId/execute",
150
150
  responseType: "json",
151
- pathParamSchema: chunkGUWIV3ZN_cjs.toolIdPathParams,
151
+ pathParamSchema: chunkYYOGSRHT_cjs.toolIdPathParams,
152
152
  queryParamSchema: chunkDIG2K5CV_cjs.optionalRunIdSchema,
153
- bodySchema: chunkGUWIV3ZN_cjs.executeToolContextBodySchema,
154
- responseSchema: chunkGUWIV3ZN_cjs.executeToolResponseSchema,
153
+ bodySchema: chunkYYOGSRHT_cjs.executeToolContextBodySchema,
154
+ responseSchema: chunkYYOGSRHT_cjs.executeToolResponseSchema,
155
155
  summary: "Execute tool",
156
156
  description: "Executes a specific tool with the provided input data",
157
157
  tags: ["Tools"],
@@ -182,7 +182,7 @@ var EXECUTE_TOOL_ROUTE = chunk7LAFXMXB_cjs.createRoute({
182
182
  throw new chunk64ITUOXI_cjs.HTTPException(400, { message: "Tool is not executable" });
183
183
  }
184
184
  const { data } = bodyParams;
185
- chunk64YJOWH2_cjs.validateBody({ data });
185
+ chunk72W42JL4_cjs.validateBody({ data });
186
186
  let result;
187
187
  if (tools.isVercelTool(tool)) {
188
188
  result = await tool.execute(data);
@@ -207,12 +207,12 @@ var EXECUTE_TOOL_ROUTE = chunk7LAFXMXB_cjs.createRoute({
207
207
  }
208
208
  }
209
209
  });
210
- var GET_AGENT_TOOL_ROUTE = chunk7LAFXMXB_cjs.createRoute({
210
+ var GET_AGENT_TOOL_ROUTE = chunkT3G3GPE3_cjs.createRoute({
211
211
  method: "GET",
212
212
  path: "/agents/:agentId/tools/:toolId",
213
213
  responseType: "json",
214
- pathParamSchema: chunkGUWIV3ZN_cjs.agentToolPathParams,
215
- responseSchema: chunkGUWIV3ZN_cjs.serializedToolSchema,
214
+ pathParamSchema: chunkYYOGSRHT_cjs.agentToolPathParams,
215
+ responseSchema: chunkYYOGSRHT_cjs.serializedToolSchema,
216
216
  summary: "Get agent tool",
217
217
  description: "Returns details for a specific tool assigned to the agent",
218
218
  tags: ["Agents", "Tools"],
@@ -227,7 +227,7 @@ var GET_AGENT_TOOL_ROUTE = chunk7LAFXMXB_cjs.createRoute({
227
227
  if (!agentId) {
228
228
  throw new chunk64ITUOXI_cjs.HTTPException(400, { message: "Agent ID is required" });
229
229
  }
230
- const agent = await chunkWZKXMP2U_cjs.getAgentFromSystem({ mastra, agentId });
230
+ const agent = await chunkZCRTO66C_cjs.getAgentFromSystem({ mastra, agentId });
231
231
  const agentTools = await agent.listTools({ requestContext });
232
232
  const tool = Object.values(agentTools || {}).find((tool2) => tool2.id === toolId);
233
233
  if (!tool) {
@@ -239,13 +239,13 @@ var GET_AGENT_TOOL_ROUTE = chunk7LAFXMXB_cjs.createRoute({
239
239
  }
240
240
  }
241
241
  });
242
- var EXECUTE_AGENT_TOOL_ROUTE = chunk7LAFXMXB_cjs.createRoute({
242
+ var EXECUTE_AGENT_TOOL_ROUTE = chunkT3G3GPE3_cjs.createRoute({
243
243
  method: "POST",
244
244
  path: "/agents/:agentId/tools/:toolId/execute",
245
245
  responseType: "json",
246
- pathParamSchema: chunkGUWIV3ZN_cjs.agentToolPathParams,
247
- bodySchema: chunkGUWIV3ZN_cjs.executeToolBodySchema,
248
- responseSchema: chunkGUWIV3ZN_cjs.executeToolResponseSchema,
246
+ pathParamSchema: chunkYYOGSRHT_cjs.agentToolPathParams,
247
+ bodySchema: chunkYYOGSRHT_cjs.executeToolBodySchema,
248
+ responseSchema: chunkYYOGSRHT_cjs.executeToolResponseSchema,
249
249
  summary: "Execute agent tool",
250
250
  description: "Executes a specific tool assigned to the agent with the provided input data",
251
251
  tags: ["Agents", "Tools"],
@@ -260,7 +260,7 @@ var EXECUTE_AGENT_TOOL_ROUTE = chunk7LAFXMXB_cjs.createRoute({
260
260
  if (!agentId) {
261
261
  throw new chunk64ITUOXI_cjs.HTTPException(400, { message: "Agent ID is required" });
262
262
  }
263
- const agent = await chunkWZKXMP2U_cjs.getAgentFromSystem({ mastra, agentId });
263
+ const agent = await chunkZCRTO66C_cjs.getAgentFromSystem({ mastra, agentId });
264
264
  const agentTools = await agent.listTools({ requestContext });
265
265
  const tool = Object.values(agentTools || {}).find((tool2) => tool2.id === toolId);
266
266
  if (!tool) {
@@ -288,5 +288,5 @@ exports.GET_AGENT_TOOL_ROUTE = GET_AGENT_TOOL_ROUTE;
288
288
  exports.GET_TOOL_BY_ID_ROUTE = GET_TOOL_BY_ID_ROUTE;
289
289
  exports.LIST_TOOLS_ROUTE = LIST_TOOLS_ROUTE;
290
290
  exports.tools_exports = tools_exports;
291
- //# sourceMappingURL=chunk-XI4WY2MX.cjs.map
292
- //# sourceMappingURL=chunk-XI4WY2MX.cjs.map
291
+ //# sourceMappingURL=chunk-CQOIFPKU.cjs.map
292
+ //# sourceMappingURL=chunk-CQOIFPKU.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/tools.ts"],"names":["__export","standardSchemaToJSONSchema","toStandardSchema5","stringify","isProviderDefinedTool","createRoute","listToolsResponseSchema","MastraFGAPermissions","handleError","toolIdPathParams","serializedToolSchema","HTTPException","optionalRunIdSchema","executeToolContextBodySchema","executeToolResponseSchema","validateBody","isVercelTool","agentToolPathParams","getAgentFromSystem","tool","executeToolBodySchema"],"mappings":"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","file":"chunk-XI4WY2MX.cjs","sourcesContent":["import { isVercelTool, isProviderDefinedTool } from '@mastra/core/tools';\nimport { toStandardSchema, standardSchemaToJSONSchema } from '@mastra/schema-compat/schema';\nimport type { PublicSchema } from '@mastra/schema-compat/schema';\nimport { stringify } from 'superjson';\nimport { MastraFGAPermissions } from '../fga-permissions';\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 { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport { validateBody } from './utils';\n\n/**\n * Resolves a schema that may be a lazy function (e.g. AI SDK provider tools).\n * Recursively resolves until a non-function value is returned.\n * Skips functions that are themselves valid schemas (e.g. ArkType types are\n * callable but also implement StandardSchema via ~standard).\n */\nfunction resolveLazySchema(schema: unknown): unknown {\n if (typeof schema === 'function' && !('~standard' in schema)) {\n return resolveLazySchema(schema());\n }\n return schema;\n}\n\nfunction schemaToJsonSchema(schema: PublicSchema<unknown> | undefined) {\n if (!schema) {\n return undefined;\n }\n\n return standardSchemaToJSONSchema(toStandardSchema(schema), { target: 'draft-2020-12' });\n}\n\nfunction serializeSchema(schema: unknown): string | undefined {\n const jsonSchema = schemaToJsonSchema(resolveLazySchema(schema) as PublicSchema<unknown> | undefined);\n if (jsonSchema === undefined) return undefined;\n return stringify(jsonSchema);\n}\n\n/**\n * Searches dynamically-resolved agent tools (provided via `toolsResolver` /\n * function-based `tools`) for a tool with the given id. Used as a fallback\n * after the static tool registry (`registeredTools` + `mastra.getToolById`)\n * misses, so global tool routes can resolve tools that only exist on agents.\n *\n * Errors thrown by an individual agent's `listTools()` are logged and\n * skipped so a single broken resolver doesn't take down the whole lookup.\n */\nasync function findToolInAgents(mastra: any, toolId: string, requestContext: any): Promise<any | undefined> {\n const agents = mastra.listAgents() || {};\n for (const agent of Object.values(agents) as any[]) {\n try {\n const agentTools = await agent.listTools({ requestContext });\n const found = Object.values(agentTools || {}).find((t: any) => t.id === toolId);\n if (found) return found;\n } catch (error) {\n mastra.getLogger?.()?.warn?.('Failed to list tools for agent while resolving tool by id', {\n agentId: agent?.id,\n toolId,\n error: error instanceof Error ? error.message : String(error),\n });\n }\n }\n return undefined;\n}\n\n/**\n * Serializes a tool for API responses, handling both regular tools (with Zod schemas)\n * and provider-defined tools (with AI SDK lazy schemas).\n */\nfunction serializeTool(tool: any): any {\n // Provider-defined tools (e.g. google.tools.googleSearch(), openai.tools.webSearch())\n // have lazy inputSchema functions that return AI SDK Schema objects, not Zod schemas.\n // We resolve them and use the jsonSchema property directly.\n if (isProviderDefinedTool(tool)) {\n const resolvedInput = resolveLazySchema(tool.inputSchema);\n const resolvedOutput = resolveLazySchema(tool.outputSchema);\n return {\n ...tool,\n inputSchema:\n resolvedInput && typeof resolvedInput === 'object' && 'jsonSchema' in resolvedInput\n ? stringify(resolvedInput.jsonSchema)\n : undefined,\n outputSchema:\n resolvedOutput && typeof resolvedOutput === 'object' && 'jsonSchema' in resolvedOutput\n ? stringify(resolvedOutput.jsonSchema)\n : undefined,\n };\n }\n\n return {\n ...tool,\n inputSchema: serializeSchema(tool.inputSchema),\n outputSchema: serializeSchema(tool.outputSchema),\n requestContextSchema: serializeSchema(tool.requestContextSchema),\n };\n}\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, requestContext }) => {\n try {\n const allTools =\n registeredTools && Object.keys(registeredTools).length > 0 ? registeredTools : mastra.listTools() || {};\n\n const serializedTools = Object.entries(allTools).reduce(\n (acc, [id, _tool]) => {\n acc[id] = serializeTool(_tool);\n return acc;\n },\n {} as Record<string, any>,\n );\n\n // Filter tools by FGA if configured\n const fgaProvider = mastra.getServer?.()?.fga;\n const user = requestContext?.get('user');\n if (fgaProvider && user) {\n const toolList = Object.entries(serializedTools).map(([id, t]) => ({ id, ...t }));\n const accessible = await fgaProvider.filterAccessible(user, toolList, 'tool', MastraFGAPermissions.TOOLS_READ);\n const accessibleSet = new Set(accessible.map((t: any) => t.id));\n for (const id of Object.keys(serializedTools)) {\n if (!accessibleSet.has(id)) {\n delete serializedTools[id];\n }\n }\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 fga: { resourceType: 'tool', resourceIdParam: 'toolId', permission: MastraFGAPermissions.TOOLS_READ },\n handler: async ({ mastra, registeredTools, toolId, requestContext }) => {\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 }\n if (!tool) {\n try {\n tool = mastra.getToolById(toolId);\n } catch {\n // tool not found in global registry, continue to agent fallback\n }\n }\n\n // Fallback: search dynamically-resolved agent tools (toolsResolver)\n if (!tool) {\n tool = await findToolInAgents(mastra, toolId, requestContext);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\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 fga: { resourceType: 'tool', resourceIdParam: 'toolId', permission: MastraFGAPermissions.TOOLS_EXECUTE },\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 }\n if (!tool) {\n try {\n tool = mastra.getToolById(toolId);\n } catch {\n // tool not found in global registry, continue to agent fallback\n }\n }\n\n // Fallback: search dynamically-resolved agent tools (toolsResolver)\n if (!tool) {\n tool = await findToolInAgents(mastra, toolId, requestContext);\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 let result;\n if (isVercelTool(tool)) {\n result = await (tool as any).execute(data);\n } else {\n 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 }\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 fga: {\n resourceType: 'tool',\n resourceId: ({ agentId, toolId }) => `${String(agentId)}:${String(toolId)}`,\n permission: MastraFGAPermissions.TOOLS_READ,\n },\n handler: async ({ mastra, agentId, toolId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\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 return serializeTool(tool);\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 fga: {\n resourceType: 'tool',\n resourceId: ({ agentId, toolId }) => `${String(agentId)}:${String(toolId)}`,\n permission: MastraFGAPermissions.TOOLS_EXECUTE,\n },\n handler: async ({ mastra, agentId, toolId, data, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\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"]}
1
+ {"version":3,"sources":["../src/server/handlers/tools.ts"],"names":["__export","standardSchemaToJSONSchema","toStandardSchema5","stringify","isProviderDefinedTool","createRoute","listToolsResponseSchema","MastraFGAPermissions","handleError","toolIdPathParams","serializedToolSchema","HTTPException","optionalRunIdSchema","executeToolContextBodySchema","executeToolResponseSchema","validateBody","isVercelTool","agentToolPathParams","getAgentFromSystem","tool","executeToolBodySchema"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAA,aAAA,GAAA;AAAAA,0BAAA,CAAA,aAAA,EAAA;AAAA,EAAA,wBAAA,EAAA,MAAA,wBAAA;AAAA,EAAA,kBAAA,EAAA,MAAA,kBAAA;AAAA,EAAA,oBAAA,EAAA,MAAA,oBAAA;AAAA,EAAA,oBAAA,EAAA,MAAA,oBAAA;AAAA,EAAA,gBAAA,EAAA,MAAA;AAAA,CAAA,CAAA;AA4BA,SAAS,kBAAkB,MAAA,EAA0B;AACnD,EAAA,IAAI,OAAO,MAAA,KAAW,UAAA,IAAc,EAAE,eAAe,MAAA,CAAA,EAAS;AAC5D,IAAA,OAAO,iBAAA,CAAkB,QAAQ,CAAA;AAAA,EACnC;AACA,EAAA,OAAO,MAAA;AACT;AAEA,SAAS,mBAAmB,MAAA,EAA2C;AACrE,EAAA,IAAI,CAAC,MAAA,EAAQ;AACX,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,OAAOC,6CAA2BC,mCAAA,CAAiB,MAAM,GAAG,EAAE,MAAA,EAAQ,iBAAiB,CAAA;AACzF;AAEA,SAAS,gBAAgB,MAAA,EAAqC;AAC5D,EAAA,MAAM,UAAA,GAAa,kBAAA,CAAmB,iBAAA,CAAkB,MAAM,CAAsC,CAAA;AACpG,EAAA,IAAI,UAAA,KAAe,QAAW,OAAO,MAAA;AACrC,EAAA,OAAOC,4BAAU,UAAU,CAAA;AAC7B;AAWA,eAAe,gBAAA,CAAiB,MAAA,EAAa,MAAA,EAAgB,cAAA,EAA+C;AAC1G,EAAA,MAAM,MAAA,GAAS,MAAA,CAAO,UAAA,EAAW,IAAK,EAAC;AACvC,EAAA,KAAA,MAAW,KAAA,IAAS,MAAA,CAAO,MAAA,CAAO,MAAM,CAAA,EAAY;AAClD,IAAA,IAAI;AACF,MAAA,MAAM,aAAa,MAAM,KAAA,CAAM,SAAA,CAAU,EAAE,gBAAgB,CAAA;AAC3D,MAAA,MAAM,KAAA,GAAQ,MAAA,CAAO,MAAA,CAAO,UAAA,IAAc,EAAE,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,KAAW,CAAA,CAAE,EAAA,KAAO,MAAM,CAAA;AAC9E,MAAA,IAAI,OAAO,OAAO,KAAA;AAAA,IACpB,SAAS,KAAA,EAAO;AACd,MAAA,MAAA,CAAO,SAAA,IAAY,EAAG,IAAA,GAAO,2DAAA,EAA6D;AAAA,QACxF,SAAS,KAAA,EAAO,EAAA;AAAA,QAChB,MAAA;AAAA,QACA,OAAO,KAAA,YAAiB,KAAA,GAAQ,KAAA,CAAM,OAAA,GAAU,OAAO,KAAK;AAAA,OAC7D,CAAA;AAAA,IACH;AAAA,EACF;AACA,EAAA,OAAO,MAAA;AACT;AAMA,SAAS,cAAc,IAAA,EAAgB;AAIrC,EAAA,IAAIC,2BAAA,CAAsB,IAAI,CAAA,EAAG;AAC/B,IAAA,MAAM,aAAA,GAAgB,iBAAA,CAAkB,IAAA,CAAK,WAAW,CAAA;AACxD,IAAA,MAAM,cAAA,GAAiB,iBAAA,CAAkB,IAAA,CAAK,YAAY,CAAA;AAC1D,IAAA,OAAO;AAAA,MACL,GAAG,IAAA;AAAA,MACH,WAAA,EACE,aAAA,IAAiB,OAAO,aAAA,KAAkB,QAAA,IAAY,gBAAgB,aAAA,GAClED,2BAAA,CAAU,aAAA,CAAc,UAAU,CAAA,GAClC,MAAA;AAAA,MACN,YAAA,EACE,cAAA,IAAkB,OAAO,cAAA,KAAmB,QAAA,IAAY,gBAAgB,cAAA,GACpEA,2BAAA,CAAU,cAAA,CAAe,UAAU,CAAA,GACnC;AAAA,KACR;AAAA,EACF;AAEA,EAAA,OAAO;AAAA,IACL,GAAG,IAAA;AAAA,IACH,WAAA,EAAa,eAAA,CAAgB,IAAA,CAAK,WAAW,CAAA;AAAA,IAC7C,YAAA,EAAc,eAAA,CAAgB,IAAA,CAAK,YAAY,CAAA;AAAA,IAC/C,oBAAA,EAAsB,eAAA,CAAgB,IAAA,CAAK,oBAAoB;AAAA,GACjE;AACF;AAMO,IAAM,mBAAmBE,6BAAA,CAAY;AAAA,EAC1C,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,QAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,cAAA,EAAgBC,yCAAA;AAAA,EAChB,OAAA,EAAS,gBAAA;AAAA,EACT,WAAA,EAAa,qDAAA;AAAA,EACb,IAAA,EAAM,CAAC,OAAO,CAAA;AAAA,EACd,YAAA,EAAc,IAAA;AAAA,EACd,SAAS,OAAO,EAAE,MAAA,EAAQ,eAAA,EAAiB,gBAAe,KAAM;AAC9D,IAAA,IAAI;AACF,MAAA,MAAM,QAAA,GACJ,eAAA,IAAmB,MAAA,CAAO,IAAA,CAAK,eAAe,CAAA,CAAE,MAAA,GAAS,CAAA,GAAI,eAAA,GAAkB,MAAA,CAAO,SAAA,EAAU,IAAK,EAAC;AAExG,MAAA,MAAM,eAAA,GAAkB,MAAA,CAAO,OAAA,CAAQ,QAAQ,CAAA,CAAE,MAAA;AAAA,QAC/C,CAAC,GAAA,EAAK,CAAC,EAAA,EAAI,KAAK,CAAA,KAAM;AACpB,UAAA,GAAA,CAAI,EAAE,CAAA,GAAI,aAAA,CAAc,KAAK,CAAA;AAC7B,UAAA,OAAO,GAAA;AAAA,QACT,CAAA;AAAA,QACA;AAAC,OACH;AAGA,MAAA,MAAM,WAAA,GAAc,MAAA,CAAO,SAAA,IAAY,EAAG,GAAA;AAC1C,MAAA,MAAM,IAAA,GAAO,cAAA,EAAgB,GAAA,CAAI,MAAM,CAAA;AACvC,MAAA,IAAI,eAAe,IAAA,EAAM;AACvB,QAAA,MAAM,QAAA,GAAW,MAAA,CAAO,OAAA,CAAQ,eAAe,EAAE,GAAA,CAAI,CAAC,CAAC,EAAA,EAAI,CAAC,CAAA,MAAO,EAAE,EAAA,EAAI,GAAG,GAAE,CAAE,CAAA;AAChF,QAAA,MAAM,UAAA,GAAa,MAAM,WAAA,CAAY,gBAAA,CAAiB,MAAM,QAAA,EAAU,MAAA,EAAQC,uCAAqB,UAAU,CAAA;AAC7G,QAAA,MAAM,aAAA,GAAgB,IAAI,GAAA,CAAI,UAAA,CAAW,IAAI,CAAC,CAAA,KAAW,CAAA,CAAE,EAAE,CAAC,CAAA;AAC9D,QAAA,KAAA,MAAW,EAAA,IAAM,MAAA,CAAO,IAAA,CAAK,eAAe,CAAA,EAAG;AAC7C,UAAA,IAAI,CAAC,aAAA,CAAc,GAAA,CAAI,EAAE,CAAA,EAAG;AAC1B,YAAA,OAAO,gBAAgB,EAAE,CAAA;AAAA,UAC3B;AAAA,QACF;AAAA,MACF;AAEA,MAAA,OAAO,eAAA;AAAA,IACT,SAAS,KAAA,EAAO;AACd,MAAA,OAAOC,6BAAA,CAAY,OAAO,qBAAqB,CAAA;AAAA,IACjD;AAAA,EACF;AACF,CAAC;AAEM,IAAM,uBAAuBH,6BAAA,CAAY;AAAA,EAC9C,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,gBAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBI,kCAAA;AAAA,EACjB,cAAA,EAAgBC,sCAAA;AAAA,EAChB,OAAA,EAAS,gBAAA;AAAA,EACT,WAAA,EAAa,4EAAA;AAAA,EACb,IAAA,EAAM,CAAC,OAAO,CAAA;AAAA,EACd,YAAA,EAAc,IAAA;AAAA,EACd,GAAA,EAAK,EAAE,YAAA,EAAc,MAAA,EAAQ,iBAAiB,QAAA,EAAU,UAAA,EAAYH,uCAAqB,UAAA,EAAW;AAAA,EACpG,SAAS,OAAO,EAAE,QAAQ,eAAA,EAAiB,MAAA,EAAQ,gBAAe,KAAM;AACtE,IAAA,IAAI;AACF,MAAA,IAAI,IAAA;AAGJ,MAAA,IAAI,mBAAmB,MAAA,CAAO,IAAA,CAAK,eAAe,CAAA,CAAE,SAAS,CAAA,EAAG;AAC9D,QAAA,IAAA,GAAO,MAAA,CAAO,OAAO,eAAe,CAAA,CAAE,KAAK,CAAC,CAAA,KAAW,CAAA,CAAE,EAAA,KAAO,MAAM,CAAA;AAAA,MACxE;AACA,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,IAAI;AACF,UAAA,IAAA,GAAO,MAAA,CAAO,YAAY,MAAM,CAAA;AAAA,QAClC,CAAA,CAAA,MAAQ;AAAA,QAER;AAAA,MACF;AAGA,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,IAAA,GAAO,MAAM,gBAAA,CAAiB,MAAA,EAAQ,MAAA,EAAQ,cAAc,CAAA;AAAA,MAC9D;AAEA,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,MAAM,IAAII,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,kBAAkB,CAAA;AAAA,MAC5D;AAEA,MAAA,OAAO,cAAc,IAAI,CAAA;AAAA,IAC3B,SAAS,KAAA,EAAO;AACd,MAAA,OAAOH,6BAAA,CAAY,OAAO,oBAAoB,CAAA;AAAA,IAChD;AAAA,EACF;AACF,CAAC;AAEM,IAAM,qBAAqBH,6BAAA,CAAY;AAAA,EAC5C,MAAA,EAAQ,MAAA;AAAA,EACR,IAAA,EAAM,wBAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBI,kCAAA;AAAA,EACjB,gBAAA,EAAkBG,qCAAA;AAAA,EAClB,UAAA,EAAYC,8CAAA;AAAA,EACZ,cAAA,EAAgBC,2CAAA;AAAA,EAChB,OAAA,EAAS,cAAA;AAAA,EACT,WAAA,EAAa,uDAAA;AAAA,EACb,IAAA,EAAM,CAAC,OAAO,CAAA;AAAA,EACd,YAAA,EAAc,IAAA;AAAA,EACd,GAAA,EAAK,EAAE,YAAA,EAAc,MAAA,EAAQ,iBAAiB,QAAA,EAAU,UAAA,EAAYP,uCAAqB,aAAA,EAAc;AAAA,EACvG,OAAA,EAAS,OAAO,EAAE,MAAA,EAAQ,KAAA,EAAO,QAAQ,eAAA,EAAiB,cAAA,EAAgB,GAAG,UAAA,EAAW,KAAM;AAC5F,IAAA,IAAI;AACF,MAAA,IAAI,CAAC,MAAA,EAAQ;AACX,QAAA,MAAM,IAAII,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,uBAAuB,CAAA;AAAA,MACjE;AAEA,MAAA,IAAI,IAAA;AAGJ,MAAA,IAAI,mBAAmB,MAAA,CAAO,IAAA,CAAK,eAAe,CAAA,CAAE,SAAS,CAAA,EAAG;AAC9D,QAAA,IAAA,GAAO,MAAA,CAAO,OAAO,eAAe,CAAA,CAAE,KAAK,CAAC,CAAA,KAAW,CAAA,CAAE,EAAA,KAAO,MAAM,CAAA;AAAA,MACxE;AACA,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,IAAI;AACF,UAAA,IAAA,GAAO,MAAA,CAAO,YAAY,MAAM,CAAA;AAAA,QAClC,CAAA,CAAA,MAAQ;AAAA,QAER;AAAA,MACF;AAGA,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,IAAA,GAAO,MAAM,gBAAA,CAAiB,MAAA,EAAQ,MAAA,EAAQ,cAAc,CAAA;AAAA,MAC9D;AAEA,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,kBAAkB,CAAA;AAAA,MAC5D;AAEA,MAAA,IAAI,CAAC,MAAM,OAAA,EAAS;AAClB,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,0BAA0B,CAAA;AAAA,MACpE;AAEA,MAAA,MAAM,EAAE,MAAK,GAAI,UAAA;AAEjB,MAAAI,8BAAA,CAAa,EAAE,MAAM,CAAA;AAErB,MAAA,IAAI,MAAA;AACJ,MAAA,IAAIC,kBAAA,CAAa,IAAI,CAAA,EAAG;AACtB,QAAA,MAAA,GAAS,MAAO,IAAA,CAAa,OAAA,CAAQ,IAAI,CAAA;AAAA,MAC3C,CAAA,MAAO;AACL,QAAA,MAAA,GAAS,MAAM,IAAA,CAAK,OAAA,CAAQ,IAAA,EAAO;AAAA,UACjC,MAAA;AAAA,UACA,cAAA;AAAA;AAAA,UAEA,cAAA,EAAgB,EAAE,WAAA,EAAa,MAAA,EAAU;AAAA,UACzC,GAAI,KAAA,GACA;AAAA,YACE,QAAA,EAAU;AAAA,cACR,KAAA;AAAA,cACA,SAAS,YAAY;AAAA,cAAC;AAAA;AACxB,cAEF;AAAC,SACN,CAAA;AAAA,MACH;AAEA,MAAA,OAAO,MAAA;AAAA,IACT,SAAS,KAAA,EAAO;AACd,MAAA,OAAOR,6BAAA,CAAY,OAAO,sBAAsB,CAAA;AAAA,IAClD;AAAA,EACF;AACF,CAAC;AAMM,IAAM,uBAAuBH,6BAAA,CAAY;AAAA,EAC9C,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,gCAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBY,qCAAA;AAAA,EACjB,cAAA,EAAgBP,sCAAA;AAAA,EAChB,OAAA,EAAS,gBAAA;AAAA,EACT,WAAA,EAAa,2DAAA;AAAA,EACb,IAAA,EAAM,CAAC,QAAA,EAAU,OAAO,CAAA;AAAA,EACxB,YAAA,EAAc,IAAA;AAAA,EACd,GAAA,EAAK;AAAA,IACH,YAAA,EAAc,MAAA;AAAA,IACd,UAAA,EAAY,CAAC,EAAE,OAAA,EAAS,MAAA,EAAO,KAAM,CAAA,EAAG,MAAA,CAAO,OAAO,CAAC,CAAA,CAAA,EAAI,MAAA,CAAO,MAAM,CAAC,CAAA,CAAA;AAAA,IACzE,YAAYH,sCAAA,CAAqB;AAAA,GACnC;AAAA,EACA,SAAS,OAAO,EAAE,QAAQ,OAAA,EAAS,MAAA,EAAQ,gBAAe,KAAM;AAC9D,IAAA,IAAI;AACF,MAAA,IAAI,CAAC,OAAA,EAAS;AACZ,QAAA,MAAM,IAAII,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,wBAAwB,CAAA;AAAA,MAClE;AACA,MAAA,MAAM,QAAQ,MAAMO,oCAAA,CAAmB,EAAE,MAAA,EAAQ,SAAS,CAAA;AAE1D,MAAA,MAAM,aAAa,MAAM,KAAA,CAAM,SAAA,CAAU,EAAE,gBAAgB,CAAA;AAE3D,MAAA,MAAM,IAAA,GAAO,MAAA,CAAO,MAAA,CAAO,UAAA,IAAc,EAAE,CAAA,CAAE,IAAA,CAAK,CAACC,KAAAA,KAAcA,KAAAA,CAAK,EAAA,KAAO,MAAM,CAAA;AAEnF,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,MAAM,IAAIR,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,kBAAkB,CAAA;AAAA,MAC5D;AAEA,MAAA,OAAO,cAAc,IAAI,CAAA;AAAA,IAC3B,SAAS,KAAA,EAAO;AACd,MAAA,OAAOH,6BAAA,CAAY,OAAO,0BAA0B,CAAA;AAAA,IACtD;AAAA,EACF;AACF,CAAC;AAEM,IAAM,2BAA2BH,6BAAA,CAAY;AAAA,EAClD,MAAA,EAAQ,MAAA;AAAA,EACR,IAAA,EAAM,wCAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBY,qCAAA;AAAA,EACjB,UAAA,EAAYG,uCAAA;AAAA,EACZ,cAAA,EAAgBN,2CAAA;AAAA,EAChB,OAAA,EAAS,oBAAA;AAAA,EACT,WAAA,EAAa,6EAAA;AAAA,EACb,IAAA,EAAM,CAAC,QAAA,EAAU,OAAO,CAAA;AAAA,EACxB,YAAA,EAAc,IAAA;AAAA,EACd,GAAA,EAAK;AAAA,IACH,YAAA,EAAc,MAAA;AAAA,IACd,UAAA,EAAY,CAAC,EAAE,OAAA,EAAS,MAAA,EAAO,KAAM,CAAA,EAAG,MAAA,CAAO,OAAO,CAAC,CAAA,CAAA,EAAI,MAAA,CAAO,MAAM,CAAC,CAAA,CAAA;AAAA,IACzE,YAAYP,sCAAA,CAAqB;AAAA,GACnC;AAAA,EACA,OAAA,EAAS,OAAO,EAAE,MAAA,EAAQ,SAAS,MAAA,EAAQ,IAAA,EAAM,gBAAe,KAAM;AACpE,IAAA,IAAI;AACF,MAAA,IAAI,CAAC,OAAA,EAAS;AACZ,QAAA,MAAM,IAAII,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,wBAAwB,CAAA;AAAA,MAClE;AACA,MAAA,MAAM,QAAQ,MAAMO,oCAAA,CAAmB,EAAE,MAAA,EAAQ,SAAS,CAAA;AAE1D,MAAA,MAAM,aAAa,MAAM,KAAA,CAAM,SAAA,CAAU,EAAE,gBAAgB,CAAA;AAE3D,MAAA,MAAM,IAAA,GAAO,MAAA,CAAO,MAAA,CAAO,UAAA,IAAc,EAAE,CAAA,CAAE,IAAA,CAAK,CAACC,KAAAA,KAAcA,KAAAA,CAAK,EAAA,KAAO,MAAM,CAAA;AAEnF,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,MAAM,IAAIR,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,kBAAkB,CAAA;AAAA,MAC5D;AAEA,MAAA,IAAI,CAAC,MAAM,OAAA,EAAS;AAClB,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,0BAA0B,CAAA;AAAA,MACpE;AAEA,MAAA,MAAM,MAAA,GAAS,MAAM,IAAA,CAAK,OAAA,CAAQ,IAAA,EAAM;AAAA,QACtC,MAAA;AAAA,QACA,cAAA;AAAA;AAAA,QAEA,cAAA,EAAgB,EAAE,WAAA,EAAa,MAAA;AAAU,OAC1C,CAAA;AAED,MAAA,OAAO,MAAA;AAAA,IACT,SAAS,KAAA,EAAO;AACd,MAAA,OAAOH,6BAAA,CAAY,OAAO,4BAA4B,CAAA;AAAA,IACxD;AAAA,EACF;AACF,CAAC","file":"chunk-CQOIFPKU.cjs","sourcesContent":["import { isVercelTool, isProviderDefinedTool } from '@mastra/core/tools';\nimport { toStandardSchema, standardSchemaToJSONSchema } from '@mastra/schema-compat/schema';\nimport type { PublicSchema } from '@mastra/schema-compat/schema';\nimport { stringify } from 'superjson';\nimport { MastraFGAPermissions } from '../fga-permissions';\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 { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport { validateBody } from './utils';\n\n/**\n * Resolves a schema that may be a lazy function (e.g. AI SDK provider tools).\n * Recursively resolves until a non-function value is returned.\n * Skips functions that are themselves valid schemas (e.g. ArkType types are\n * callable but also implement StandardSchema via ~standard).\n */\nfunction resolveLazySchema(schema: unknown): unknown {\n if (typeof schema === 'function' && !('~standard' in schema)) {\n return resolveLazySchema(schema());\n }\n return schema;\n}\n\nfunction schemaToJsonSchema(schema: PublicSchema<unknown> | undefined) {\n if (!schema) {\n return undefined;\n }\n\n return standardSchemaToJSONSchema(toStandardSchema(schema), { target: 'draft-2020-12' });\n}\n\nfunction serializeSchema(schema: unknown): string | undefined {\n const jsonSchema = schemaToJsonSchema(resolveLazySchema(schema) as PublicSchema<unknown> | undefined);\n if (jsonSchema === undefined) return undefined;\n return stringify(jsonSchema);\n}\n\n/**\n * Searches dynamically-resolved agent tools (provided via `toolsResolver` /\n * function-based `tools`) for a tool with the given id. Used as a fallback\n * after the static tool registry (`registeredTools` + `mastra.getToolById`)\n * misses, so global tool routes can resolve tools that only exist on agents.\n *\n * Errors thrown by an individual agent's `listTools()` are logged and\n * skipped so a single broken resolver doesn't take down the whole lookup.\n */\nasync function findToolInAgents(mastra: any, toolId: string, requestContext: any): Promise<any | undefined> {\n const agents = mastra.listAgents() || {};\n for (const agent of Object.values(agents) as any[]) {\n try {\n const agentTools = await agent.listTools({ requestContext });\n const found = Object.values(agentTools || {}).find((t: any) => t.id === toolId);\n if (found) return found;\n } catch (error) {\n mastra.getLogger?.()?.warn?.('Failed to list tools for agent while resolving tool by id', {\n agentId: agent?.id,\n toolId,\n error: error instanceof Error ? error.message : String(error),\n });\n }\n }\n return undefined;\n}\n\n/**\n * Serializes a tool for API responses, handling both regular tools (with Zod schemas)\n * and provider-defined tools (with AI SDK lazy schemas).\n */\nfunction serializeTool(tool: any): any {\n // Provider-defined tools (e.g. google.tools.googleSearch(), openai.tools.webSearch())\n // have lazy inputSchema functions that return AI SDK Schema objects, not Zod schemas.\n // We resolve them and use the jsonSchema property directly.\n if (isProviderDefinedTool(tool)) {\n const resolvedInput = resolveLazySchema(tool.inputSchema);\n const resolvedOutput = resolveLazySchema(tool.outputSchema);\n return {\n ...tool,\n inputSchema:\n resolvedInput && typeof resolvedInput === 'object' && 'jsonSchema' in resolvedInput\n ? stringify(resolvedInput.jsonSchema)\n : undefined,\n outputSchema:\n resolvedOutput && typeof resolvedOutput === 'object' && 'jsonSchema' in resolvedOutput\n ? stringify(resolvedOutput.jsonSchema)\n : undefined,\n };\n }\n\n return {\n ...tool,\n inputSchema: serializeSchema(tool.inputSchema),\n outputSchema: serializeSchema(tool.outputSchema),\n requestContextSchema: serializeSchema(tool.requestContextSchema),\n };\n}\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, requestContext }) => {\n try {\n const allTools =\n registeredTools && Object.keys(registeredTools).length > 0 ? registeredTools : mastra.listTools() || {};\n\n const serializedTools = Object.entries(allTools).reduce(\n (acc, [id, _tool]) => {\n acc[id] = serializeTool(_tool);\n return acc;\n },\n {} as Record<string, any>,\n );\n\n // Filter tools by FGA if configured\n const fgaProvider = mastra.getServer?.()?.fga;\n const user = requestContext?.get('user');\n if (fgaProvider && user) {\n const toolList = Object.entries(serializedTools).map(([id, t]) => ({ id, ...t }));\n const accessible = await fgaProvider.filterAccessible(user, toolList, 'tool', MastraFGAPermissions.TOOLS_READ);\n const accessibleSet = new Set(accessible.map((t: any) => t.id));\n for (const id of Object.keys(serializedTools)) {\n if (!accessibleSet.has(id)) {\n delete serializedTools[id];\n }\n }\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 fga: { resourceType: 'tool', resourceIdParam: 'toolId', permission: MastraFGAPermissions.TOOLS_READ },\n handler: async ({ mastra, registeredTools, toolId, requestContext }) => {\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 }\n if (!tool) {\n try {\n tool = mastra.getToolById(toolId);\n } catch {\n // tool not found in global registry, continue to agent fallback\n }\n }\n\n // Fallback: search dynamically-resolved agent tools (toolsResolver)\n if (!tool) {\n tool = await findToolInAgents(mastra, toolId, requestContext);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\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 fga: { resourceType: 'tool', resourceIdParam: 'toolId', permission: MastraFGAPermissions.TOOLS_EXECUTE },\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 }\n if (!tool) {\n try {\n tool = mastra.getToolById(toolId);\n } catch {\n // tool not found in global registry, continue to agent fallback\n }\n }\n\n // Fallback: search dynamically-resolved agent tools (toolsResolver)\n if (!tool) {\n tool = await findToolInAgents(mastra, toolId, requestContext);\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 let result;\n if (isVercelTool(tool)) {\n result = await (tool as any).execute(data);\n } else {\n 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 }\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 fga: {\n resourceType: 'tool',\n resourceId: ({ agentId, toolId }) => `${String(agentId)}:${String(toolId)}`,\n permission: MastraFGAPermissions.TOOLS_READ,\n },\n handler: async ({ mastra, agentId, toolId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\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 return serializeTool(tool);\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 fga: {\n resourceType: 'tool',\n resourceId: ({ agentId, toolId }) => `${String(agentId)}:${String(toolId)}`,\n permission: MastraFGAPermissions.TOOLS_EXECUTE,\n },\n handler: async ({ mastra, agentId, toolId, data, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\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"]}