@mastra/server 1.36.0-alpha.1 → 1.36.0-alpha.2

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 (476) hide show
  1. package/CHANGELOG.md +118 -0
  2. package/dist/{api-schema-manifest-EMKHNXSD.cjs → api-schema-manifest-CF2WPQBA.cjs} +6 -6
  3. package/dist/{api-schema-manifest-EMKHNXSD.cjs.map → api-schema-manifest-CF2WPQBA.cjs.map} +1 -1
  4. package/dist/{api-schema-manifest-EJXNYOFH.js → api-schema-manifest-YS3FEIFG.js} +4 -4
  5. package/dist/{api-schema-manifest-EJXNYOFH.js.map → api-schema-manifest-YS3FEIFG.js.map} +1 -1
  6. package/dist/{chunk-YARY4I5U.js → chunk-23S37FLK.js} +9 -3
  7. package/dist/chunk-23S37FLK.js.map +1 -0
  8. package/dist/{chunk-NG62OLVA.js → chunk-2JXX4IPC.js} +3 -3
  9. package/dist/{chunk-NG62OLVA.js.map → chunk-2JXX4IPC.js.map} +1 -1
  10. package/dist/{chunk-6IUJAAQ2.js → chunk-2SMGXJZJ.js} +42 -8
  11. package/dist/chunk-2SMGXJZJ.js.map +1 -0
  12. package/dist/{chunk-PQDYNK4J.cjs → chunk-3AKG5KEE.cjs} +45 -37
  13. package/dist/chunk-3AKG5KEE.cjs.map +1 -0
  14. package/dist/{chunk-Y6CAJLYX.js → chunk-3FLL7GNJ.js} +6 -6
  15. package/dist/{chunk-Y6CAJLYX.js.map → chunk-3FLL7GNJ.js.map} +1 -1
  16. package/dist/chunk-3ZWALPHI.cjs +101 -0
  17. package/dist/chunk-3ZWALPHI.cjs.map +1 -0
  18. package/dist/{chunk-Y5LNMKEY.cjs → chunk-43KD3CRE.cjs} +21 -7
  19. package/dist/chunk-43KD3CRE.cjs.map +1 -0
  20. package/dist/{chunk-3NA22RQ5.cjs → chunk-4BLUIUHS.cjs} +5 -5
  21. package/dist/{chunk-3NA22RQ5.cjs.map → chunk-4BLUIUHS.cjs.map} +1 -1
  22. package/dist/{chunk-FRFWWBSS.js → chunk-4DUHTOLC.js} +4 -4
  23. package/dist/{chunk-FRFWWBSS.js.map → chunk-4DUHTOLC.js.map} +1 -1
  24. package/dist/chunk-4G7S52U3.cjs +356 -0
  25. package/dist/chunk-4G7S52U3.cjs.map +1 -0
  26. package/dist/{chunk-XHA6OBT3.cjs → chunk-4UFLVROK.cjs} +13 -13
  27. package/dist/{chunk-XHA6OBT3.cjs.map → chunk-4UFLVROK.cjs.map} +1 -1
  28. package/dist/{chunk-YHRGDSTK.js → chunk-4XSWMZTL.js} +40 -3
  29. package/dist/chunk-4XSWMZTL.js.map +1 -0
  30. package/dist/{chunk-MHQFFRA2.cjs → chunk-4Z24UGLY.cjs} +26 -26
  31. package/dist/{chunk-MHQFFRA2.cjs.map → chunk-4Z24UGLY.cjs.map} +1 -1
  32. package/dist/{chunk-GPLCXP3B.cjs → chunk-5GI232FP.cjs} +8 -8
  33. package/dist/{chunk-GPLCXP3B.cjs.map → chunk-5GI232FP.cjs.map} +1 -1
  34. package/dist/{chunk-5XW4MKE6.cjs → chunk-65T6KVYX.cjs} +11 -2
  35. package/dist/chunk-65T6KVYX.cjs.map +1 -0
  36. package/dist/{chunk-W32BPAIP.js → chunk-664F5XOW.js} +7 -7
  37. package/dist/{chunk-W32BPAIP.js.map → chunk-664F5XOW.js.map} +1 -1
  38. package/dist/{chunk-N44OOOAL.js → chunk-6GMGCV74.js} +5 -5
  39. package/dist/{chunk-N44OOOAL.js.map → chunk-6GMGCV74.js.map} +1 -1
  40. package/dist/chunk-6JCLSYOU.js +351 -0
  41. package/dist/chunk-6JCLSYOU.js.map +1 -0
  42. package/dist/{chunk-HT4KV7V5.js → chunk-6NIQROP2.js} +23 -13
  43. package/dist/chunk-6NIQROP2.js.map +1 -0
  44. package/dist/chunk-753JFAF2.js +134 -0
  45. package/dist/chunk-753JFAF2.js.map +1 -0
  46. package/dist/{chunk-7BM2AIKU.js → chunk-7BZ2N56X.js} +5 -5
  47. package/dist/{chunk-7BM2AIKU.js.map → chunk-7BZ2N56X.js.map} +1 -1
  48. package/dist/{chunk-LQRPDQCE.js → chunk-7EDTSUCY.js} +4 -4
  49. package/dist/{chunk-LQRPDQCE.js.map → chunk-7EDTSUCY.js.map} +1 -1
  50. package/dist/chunk-7U7OWTR2.js +149 -0
  51. package/dist/chunk-7U7OWTR2.js.map +1 -0
  52. package/dist/{chunk-SR6QNILC.cjs → chunk-A4FTF4A7.cjs} +55 -55
  53. package/dist/{chunk-SR6QNILC.cjs.map → chunk-A4FTF4A7.cjs.map} +1 -1
  54. package/dist/{chunk-7YV7MYOP.js → chunk-AAZDGIDJ.js} +22 -12
  55. package/dist/chunk-AAZDGIDJ.js.map +1 -0
  56. package/dist/chunk-AR7VSXHH.cjs +143 -0
  57. package/dist/chunk-AR7VSXHH.cjs.map +1 -0
  58. package/dist/{chunk-JRFHBWKQ.cjs → chunk-AY3ZP465.cjs} +36 -26
  59. package/dist/chunk-AY3ZP465.cjs.map +1 -0
  60. package/dist/{chunk-YLJ5EVO3.js → chunk-BWNJBSXL.js} +3 -3
  61. package/dist/{chunk-YLJ5EVO3.js.map → chunk-BWNJBSXL.js.map} +1 -1
  62. package/dist/{chunk-JBAQMT4Y.cjs → chunk-CBHBMWZ2.cjs} +12 -12
  63. package/dist/{chunk-JBAQMT4Y.cjs.map → chunk-CBHBMWZ2.cjs.map} +1 -1
  64. package/dist/{chunk-JW4P6OFG.js → chunk-CCL4C2ZO.js} +4 -4
  65. package/dist/{chunk-JW4P6OFG.js.map → chunk-CCL4C2ZO.js.map} +1 -1
  66. package/dist/{chunk-7LBBDT4S.js → chunk-CGB327L6.js} +3 -3
  67. package/dist/{chunk-7LBBDT4S.js.map → chunk-CGB327L6.js.map} +1 -1
  68. package/dist/{chunk-WP67ASKV.js → chunk-CKCZVUUB.js} +7 -7
  69. package/dist/{chunk-WP67ASKV.js.map → chunk-CKCZVUUB.js.map} +1 -1
  70. package/dist/chunk-CM2C2H2Y.cjs +101 -0
  71. package/dist/chunk-CM2C2H2Y.cjs.map +1 -0
  72. package/dist/{chunk-RGUKCKGB.cjs → chunk-CODPCBGN.cjs} +22 -22
  73. package/dist/{chunk-RGUKCKGB.cjs.map → chunk-CODPCBGN.cjs.map} +1 -1
  74. package/dist/chunk-CRTDKNOZ.cjs +654 -0
  75. package/dist/chunk-CRTDKNOZ.cjs.map +1 -0
  76. package/dist/{chunk-OS2636MU.js → chunk-D4HVKF56.js} +5 -5
  77. package/dist/{chunk-OS2636MU.js.map → chunk-D4HVKF56.js.map} +1 -1
  78. package/dist/{chunk-73MISLDN.cjs → chunk-D774EZRN.cjs} +16 -16
  79. package/dist/{chunk-73MISLDN.cjs.map → chunk-D774EZRN.cjs.map} +1 -1
  80. package/dist/{chunk-L3WM4IWR.cjs → chunk-DYXX34YU.cjs} +56 -21
  81. package/dist/chunk-DYXX34YU.cjs.map +1 -0
  82. package/dist/{chunk-DZWFQD53.cjs → chunk-EAPGRYRG.cjs} +6 -6
  83. package/dist/{chunk-DZWFQD53.cjs.map → chunk-EAPGRYRG.cjs.map} +1 -1
  84. package/dist/{chunk-R4IYXUNR.cjs → chunk-ESZN7NKS.cjs} +34 -26
  85. package/dist/chunk-ESZN7NKS.cjs.map +1 -0
  86. package/dist/{chunk-XZT7USLH.js → chunk-EX3XD2F5.js} +79 -40
  87. package/dist/chunk-EX3XD2F5.js.map +1 -0
  88. package/dist/{chunk-E53AJNZB.js → chunk-F2FAL5CZ.js} +2 -2
  89. package/dist/{chunk-E53AJNZB.js.map → chunk-F2FAL5CZ.js.map} +1 -1
  90. package/dist/chunk-G5LQCOFZ.js +292 -0
  91. package/dist/chunk-G5LQCOFZ.js.map +1 -0
  92. package/dist/chunk-GA4BG5JK.js +46 -0
  93. package/dist/chunk-GA4BG5JK.js.map +1 -0
  94. package/dist/{chunk-YPXOTWND.js → chunk-GAGC4WDU.js} +3 -3
  95. package/dist/{chunk-YPXOTWND.js.map → chunk-GAGC4WDU.js.map} +1 -1
  96. package/dist/{chunk-T6QQYYPA.cjs → chunk-GAL7C4Y5.cjs} +36 -26
  97. package/dist/chunk-GAL7C4Y5.cjs.map +1 -0
  98. package/dist/{chunk-GTYVB2TS.js → chunk-GFZR6THV.js} +3 -3
  99. package/dist/{chunk-GTYVB2TS.js.map → chunk-GFZR6THV.js.map} +1 -1
  100. package/dist/{chunk-Q7LA2XMK.js → chunk-GW6T4HLN.js} +9 -9
  101. package/dist/{chunk-Q7LA2XMK.js.map → chunk-GW6T4HLN.js.map} +1 -1
  102. package/dist/{chunk-OOEYTKTC.js → chunk-HGRG2WVX.js} +35 -18
  103. package/dist/chunk-HGRG2WVX.js.map +1 -0
  104. package/dist/chunk-HMJL3C3H.js +36 -0
  105. package/dist/chunk-HMJL3C3H.js.map +1 -0
  106. package/dist/{chunk-X7ZNZFHV.js → chunk-HNGYUI5N.js} +23 -15
  107. package/dist/chunk-HNGYUI5N.js.map +1 -0
  108. package/dist/{chunk-7R7WT24X.cjs → chunk-HWT5YD7H.cjs} +17 -17
  109. package/dist/{chunk-7R7WT24X.cjs.map → chunk-HWT5YD7H.cjs.map} +1 -1
  110. package/dist/{chunk-PM6YRFZW.cjs → chunk-HXEMVATM.cjs} +8 -8
  111. package/dist/{chunk-PM6YRFZW.cjs.map → chunk-HXEMVATM.cjs.map} +1 -1
  112. package/dist/{chunk-R3R6VJRM.cjs → chunk-HZNJ4B7D.cjs} +32 -32
  113. package/dist/{chunk-R3R6VJRM.cjs.map → chunk-HZNJ4B7D.cjs.map} +1 -1
  114. package/dist/{chunk-XGNMFTYF.js → chunk-I3RWQGD7.js} +9 -9
  115. package/dist/{chunk-XGNMFTYF.js.map → chunk-I3RWQGD7.js.map} +1 -1
  116. package/dist/{chunk-UQ2H32RT.cjs → chunk-I6WBJDRP.cjs} +10 -10
  117. package/dist/{chunk-UQ2H32RT.cjs.map → chunk-I6WBJDRP.cjs.map} +1 -1
  118. package/dist/{chunk-T3PECMPO.js → chunk-IRJQQYII.js} +7 -7
  119. package/dist/{chunk-T3PECMPO.js.map → chunk-IRJQQYII.js.map} +1 -1
  120. package/dist/{chunk-4YSEVAAS.cjs → chunk-J6IRCLC6.cjs} +31 -31
  121. package/dist/{chunk-4YSEVAAS.cjs.map → chunk-J6IRCLC6.cjs.map} +1 -1
  122. package/dist/chunk-JUYUBEMU.js +28 -0
  123. package/dist/chunk-JUYUBEMU.js.map +1 -0
  124. package/dist/chunk-K6AEVBZQ.js +98 -0
  125. package/dist/chunk-K6AEVBZQ.js.map +1 -0
  126. package/dist/{chunk-B3UPXBHD.js → chunk-K74VFJKF.js} +227 -41
  127. package/dist/chunk-K74VFJKF.js.map +1 -0
  128. package/dist/{chunk-MEYWNCUV.cjs → chunk-KE4V4LJE.cjs} +7 -7
  129. package/dist/{chunk-MEYWNCUV.cjs.map → chunk-KE4V4LJE.cjs.map} +1 -1
  130. package/dist/{chunk-DYN7KSCZ.js → chunk-KTOJ2F6V.js} +5 -5
  131. package/dist/{chunk-DYN7KSCZ.js.map → chunk-KTOJ2F6V.js.map} +1 -1
  132. package/dist/{chunk-ES23WZRF.cjs → chunk-LEIV627E.cjs} +15 -15
  133. package/dist/{chunk-ES23WZRF.cjs.map → chunk-LEIV627E.cjs.map} +1 -1
  134. package/dist/chunk-LG57RYYL.cjs +551 -0
  135. package/dist/chunk-LG57RYYL.cjs.map +1 -0
  136. package/dist/{chunk-AIRSK4QU.js → chunk-LH5Y7AJF.js} +46 -7
  137. package/dist/chunk-LH5Y7AJF.js.map +1 -0
  138. package/dist/{chunk-5TTCUSSA.js → chunk-LPFE6YTG.js} +3 -3
  139. package/dist/{chunk-5TTCUSSA.js.map → chunk-LPFE6YTG.js.map} +1 -1
  140. package/dist/{chunk-WYLVJSGR.cjs → chunk-LTRLD33R.cjs} +47 -8
  141. package/dist/chunk-LTRLD33R.cjs.map +1 -0
  142. package/dist/{chunk-UH3MHVDF.cjs → chunk-M4B42JGO.cjs} +6 -3
  143. package/dist/chunk-M4B42JGO.cjs.map +1 -0
  144. package/dist/{chunk-QWPEAC7I.cjs → chunk-MERLF4UP.cjs} +94 -94
  145. package/dist/{chunk-QWPEAC7I.cjs.map → chunk-MERLF4UP.cjs.map} +1 -1
  146. package/dist/chunk-MXMOHULN.js +497 -0
  147. package/dist/chunk-MXMOHULN.js.map +1 -0
  148. package/dist/{chunk-CIPZ4VOZ.cjs → chunk-N6RQC4Z3.cjs} +4 -4
  149. package/dist/{chunk-CIPZ4VOZ.cjs.map → chunk-N6RQC4Z3.cjs.map} +1 -1
  150. package/dist/{chunk-DM6UW5RD.js → chunk-N7CG7MFQ.js} +8 -8
  151. package/dist/{chunk-DM6UW5RD.js.map → chunk-N7CG7MFQ.js.map} +1 -1
  152. package/dist/chunk-NRRAME2S.js +98 -0
  153. package/dist/chunk-NRRAME2S.js.map +1 -0
  154. package/dist/chunk-O4O2EJF7.cjs +13 -0
  155. package/dist/chunk-O4O2EJF7.cjs.map +1 -0
  156. package/dist/{chunk-H3RUJBEL.cjs → chunk-O7B3P2AT.cjs} +57 -40
  157. package/dist/chunk-O7B3P2AT.cjs.map +1 -0
  158. package/dist/{chunk-L2RZNUOW.js → chunk-OGYYXNGI.js} +4 -4
  159. package/dist/{chunk-L2RZNUOW.js.map → chunk-OGYYXNGI.js.map} +1 -1
  160. package/dist/{chunk-M7DF3D2M.js → chunk-OJNVSXOF.js} +19 -5
  161. package/dist/chunk-OJNVSXOF.js.map +1 -0
  162. package/dist/{chunk-KGK2LCZ4.js → chunk-OKKJPM5N.js} +21 -14
  163. package/dist/chunk-OKKJPM5N.js.map +1 -0
  164. package/dist/{chunk-Z6C7SDXA.js → chunk-ONCDLJUQ.js} +6 -3
  165. package/dist/chunk-ONCDLJUQ.js.map +1 -0
  166. package/dist/{chunk-M7CTMLXS.js → chunk-OSN3DL34.js} +4 -4
  167. package/dist/{chunk-M7CTMLXS.js.map → chunk-OSN3DL34.js.map} +1 -1
  168. package/dist/chunk-OXSAN74Y.cjs +504 -0
  169. package/dist/chunk-OXSAN74Y.cjs.map +1 -0
  170. package/dist/{chunk-ZIR2AE52.js → chunk-P5ZWPVC2.js} +4 -4
  171. package/dist/{chunk-ZIR2AE52.js.map → chunk-P5ZWPVC2.js.map} +1 -1
  172. package/dist/{chunk-BBD7VAAR.js → chunk-PQ37PNAE.js} +22 -12
  173. package/dist/chunk-PQ37PNAE.js.map +1 -0
  174. package/dist/{chunk-DRNCUSSM.cjs → chunk-PWGPLCL4.cjs} +5 -5
  175. package/dist/{chunk-DRNCUSSM.cjs.map → chunk-PWGPLCL4.cjs.map} +1 -1
  176. package/dist/{chunk-NPMJ6FRL.cjs → chunk-QGPIJ3KB.cjs} +67 -67
  177. package/dist/{chunk-NPMJ6FRL.cjs.map → chunk-QGPIJ3KB.cjs.map} +1 -1
  178. package/dist/chunk-QJU62KP2.cjs +298 -0
  179. package/dist/chunk-QJU62KP2.cjs.map +1 -0
  180. package/dist/{chunk-AY5TY4EN.js → chunk-QKAIQUSC.js} +4 -4
  181. package/dist/{chunk-AY5TY4EN.js.map → chunk-QKAIQUSC.js.map} +1 -1
  182. package/dist/{chunk-NDMG7SUN.js → chunk-QLX34MAR.js} +8 -8
  183. package/dist/{chunk-NDMG7SUN.js.map → chunk-QLX34MAR.js.map} +1 -1
  184. package/dist/{chunk-LTYRUL3Q.cjs → chunk-QZ6UFQ7V.cjs} +42 -2
  185. package/dist/chunk-QZ6UFQ7V.cjs.map +1 -0
  186. package/dist/{chunk-IVFIYTLD.cjs → chunk-RJF75FEP.cjs} +26 -26
  187. package/dist/{chunk-IVFIYTLD.cjs.map → chunk-RJF75FEP.cjs.map} +1 -1
  188. package/dist/{chunk-M4MNMBQF.cjs → chunk-RYPLQO4Z.cjs} +32 -25
  189. package/dist/chunk-RYPLQO4Z.cjs.map +1 -0
  190. package/dist/chunk-SFPN7SHZ.js +11 -0
  191. package/dist/chunk-SFPN7SHZ.js.map +1 -0
  192. package/dist/{chunk-BBB4NKZZ.cjs → chunk-SKLREO5Z.cjs} +82 -82
  193. package/dist/{chunk-BBB4NKZZ.cjs.map → chunk-SKLREO5Z.cjs.map} +1 -1
  194. package/dist/{chunk-LBEQ4EE4.js → chunk-SPGVPADY.js} +3 -3
  195. package/dist/{chunk-LBEQ4EE4.js.map → chunk-SPGVPADY.js.map} +1 -1
  196. package/dist/{chunk-Q2B7W7GA.cjs → chunk-T3C54LPX.cjs} +57 -5
  197. package/dist/chunk-T3C54LPX.cjs.map +1 -0
  198. package/dist/{chunk-DGJSHUP4.cjs → chunk-U6QDJKSZ.cjs} +105 -105
  199. package/dist/{chunk-DGJSHUP4.cjs.map → chunk-U6QDJKSZ.cjs.map} +1 -1
  200. package/dist/{chunk-DZXHO72E.cjs → chunk-UBYGPC2S.cjs} +12 -12
  201. package/dist/{chunk-DZXHO72E.cjs.map → chunk-UBYGPC2S.cjs.map} +1 -1
  202. package/dist/{chunk-IDUFQ5HG.js → chunk-UCKK7LPQ.js} +3 -3
  203. package/dist/{chunk-IDUFQ5HG.js.map → chunk-UCKK7LPQ.js.map} +1 -1
  204. package/dist/{chunk-JX4UGU4A.cjs → chunk-UGJBURIS.cjs} +12 -12
  205. package/dist/{chunk-JX4UGU4A.cjs.map → chunk-UGJBURIS.cjs.map} +1 -1
  206. package/dist/{chunk-PDHGJ7GP.js → chunk-UIRQU4GW.js} +54 -6
  207. package/dist/chunk-UIRQU4GW.js.map +1 -0
  208. package/dist/chunk-V4ATNZXG.cjs +31 -0
  209. package/dist/chunk-V4ATNZXG.cjs.map +1 -0
  210. package/dist/chunk-VX3MJR4P.cjs +161 -0
  211. package/dist/chunk-VX3MJR4P.cjs.map +1 -0
  212. package/dist/{chunk-YE3LMHL3.js → chunk-WD2L3ZU3.js} +5 -5
  213. package/dist/{chunk-YE3LMHL3.js.map → chunk-WD2L3ZU3.js.map} +1 -1
  214. package/dist/{chunk-QTPAVOG2.cjs → chunk-WLGC3IWY.cjs} +49 -39
  215. package/dist/chunk-WLGC3IWY.cjs.map +1 -0
  216. package/dist/{chunk-MXGCIYNM.js → chunk-XI3XH4G7.js} +22 -12
  217. package/dist/chunk-XI3XH4G7.js.map +1 -0
  218. package/dist/{chunk-PYZAUXQX.cjs → chunk-XNR667MS.cjs} +27 -27
  219. package/dist/{chunk-PYZAUXQX.cjs.map → chunk-XNR667MS.cjs.map} +1 -1
  220. package/dist/{chunk-Y6MWNLAA.cjs → chunk-XR3CGVKU.cjs} +8 -8
  221. package/dist/{chunk-Y6MWNLAA.cjs.map → chunk-XR3CGVKU.cjs.map} +1 -1
  222. package/dist/{chunk-AZORAK4H.cjs → chunk-XTFWFQZ7.cjs} +2 -2
  223. package/dist/{chunk-AZORAK4H.cjs.map → chunk-XTFWFQZ7.cjs.map} +1 -1
  224. package/dist/{chunk-ELWN7ZXR.js → chunk-Y3KIKJW6.js} +6 -6
  225. package/dist/{chunk-ELWN7ZXR.js.map → chunk-Y3KIKJW6.js.map} +1 -1
  226. package/dist/{chunk-3BL73LS3.cjs → chunk-YETIPEQM.cjs} +40 -40
  227. package/dist/{chunk-3BL73LS3.cjs.map → chunk-YETIPEQM.cjs.map} +1 -1
  228. package/dist/{chunk-B34S64RC.cjs → chunk-YNSUYESL.cjs} +23 -3
  229. package/dist/chunk-YNSUYESL.cjs.map +1 -0
  230. package/dist/{chunk-3PQSHLG7.cjs → chunk-YQYYIRDS.cjs} +164 -164
  231. package/dist/{chunk-3PQSHLG7.cjs.map → chunk-YQYYIRDS.cjs.map} +1 -1
  232. package/dist/{chunk-JRZZN55Y.cjs → chunk-Z772ZUYH.cjs} +53 -43
  233. package/dist/chunk-Z772ZUYH.cjs.map +1 -0
  234. package/dist/chunk-ZCX2J552.cjs +38 -0
  235. package/dist/chunk-ZCX2J552.cjs.map +1 -0
  236. package/dist/{chunk-OULCMO5R.js → chunk-ZHS2QDGO.js} +23 -15
  237. package/dist/chunk-ZHS2QDGO.js.map +1 -0
  238. package/dist/docs/SKILL.md +1 -1
  239. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  240. package/dist/server/auth/helpers.d.ts +3 -0
  241. package/dist/server/auth/helpers.d.ts.map +1 -1
  242. package/dist/server/auth/index.cjs +28 -15
  243. package/dist/server/auth/index.js +2 -1
  244. package/dist/server/browser-stream/types.d.ts +9 -0
  245. package/dist/server/browser-stream/types.d.ts.map +1 -1
  246. package/dist/server/constants.d.ts +3 -0
  247. package/dist/server/constants.d.ts.map +1 -1
  248. package/dist/server/handlers/a2a.cjs +14 -14
  249. package/dist/server/handlers/a2a.js +1 -1
  250. package/dist/server/handlers/agent-builder.cjs +16 -16
  251. package/dist/server/handlers/agent-builder.js +1 -1
  252. package/dist/server/handlers/agent-versions.cjs +8 -8
  253. package/dist/server/handlers/agent-versions.d.ts.map +1 -1
  254. package/dist/server/handlers/agent-versions.js +1 -1
  255. package/dist/server/handlers/agents.cjs +41 -41
  256. package/dist/server/handlers/agents.d.ts +185 -0
  257. package/dist/server/handlers/agents.d.ts.map +1 -1
  258. package/dist/server/handlers/agents.js +1 -1
  259. package/dist/server/handlers/auth.cjs +15 -11
  260. package/dist/server/handlers/auth.d.ts +168 -146
  261. package/dist/server/handlers/auth.d.ts.map +1 -1
  262. package/dist/server/handlers/auth.js +1 -1
  263. package/dist/server/handlers/authorship.cjs +52 -0
  264. package/dist/server/handlers/authorship.cjs.map +1 -0
  265. package/dist/server/handlers/authorship.d.ts +176 -0
  266. package/dist/server/handlers/authorship.d.ts.map +1 -0
  267. package/dist/server/handlers/authorship.js +3 -0
  268. package/dist/server/handlers/authorship.js.map +1 -0
  269. package/dist/server/handlers/background-tasks.cjs +4 -4
  270. package/dist/server/handlers/background-tasks.js +1 -1
  271. package/dist/server/handlers/builder-registry.cjs +28 -0
  272. package/dist/server/handlers/builder-registry.cjs.map +1 -0
  273. package/dist/server/handlers/builder-registry.d.ts +170 -0
  274. package/dist/server/handlers/builder-registry.d.ts.map +1 -0
  275. package/dist/server/handlers/builder-registry.js +3 -0
  276. package/dist/server/handlers/builder-registry.js.map +1 -0
  277. package/dist/server/handlers/channels.cjs +5 -5
  278. package/dist/server/handlers/channels.js +1 -1
  279. package/dist/server/handlers/conversations.cjs +5 -5
  280. package/dist/server/handlers/conversations.js +1 -1
  281. package/dist/server/handlers/datasets.cjs +26 -26
  282. package/dist/server/handlers/datasets.js +1 -1
  283. package/dist/server/handlers/editor-builder.cjs +24 -0
  284. package/dist/server/handlers/editor-builder.cjs.map +1 -0
  285. package/dist/server/handlers/editor-builder.d.ts +259 -0
  286. package/dist/server/handlers/editor-builder.d.ts.map +1 -0
  287. package/dist/server/handlers/editor-builder.js +3 -0
  288. package/dist/server/handlers/editor-builder.js.map +1 -0
  289. package/dist/server/handlers/error.cjs +3 -3
  290. package/dist/server/handlers/error.d.ts.map +1 -1
  291. package/dist/server/handlers/error.js +1 -1
  292. package/dist/server/handlers/favorites-enrichment.cjs +16 -0
  293. package/dist/server/handlers/favorites-enrichment.cjs.map +1 -0
  294. package/dist/server/handlers/favorites-enrichment.d.ts +27 -0
  295. package/dist/server/handlers/favorites-enrichment.d.ts.map +1 -0
  296. package/dist/server/handlers/favorites-enrichment.js +3 -0
  297. package/dist/server/handlers/favorites-enrichment.js.map +1 -0
  298. package/dist/server/handlers/logs.cjs +4 -4
  299. package/dist/server/handlers/logs.js +1 -1
  300. package/dist/server/handlers/mcp-client-versions.cjs +8 -8
  301. package/dist/server/handlers/mcp-client-versions.d.ts.map +1 -1
  302. package/dist/server/handlers/mcp-client-versions.js +1 -1
  303. package/dist/server/handlers/mcp.cjs +11 -11
  304. package/dist/server/handlers/mcp.js +1 -1
  305. package/dist/server/handlers/memory.cjs +27 -27
  306. package/dist/server/handlers/memory.js +1 -1
  307. package/dist/server/handlers/observability-new-endpoints.cjs +28 -28
  308. package/dist/server/handlers/observability-new-endpoints.js +1 -1
  309. package/dist/server/handlers/observability.cjs +39 -39
  310. package/dist/server/handlers/observability.js +2 -2
  311. package/dist/server/handlers/processor-providers.cjs +3 -3
  312. package/dist/server/handlers/processor-providers.js +1 -1
  313. package/dist/server/handlers/processors.cjs +4 -4
  314. package/dist/server/handlers/processors.js +1 -1
  315. package/dist/server/handlers/prompt-block-versions.cjs +8 -8
  316. package/dist/server/handlers/prompt-block-versions.d.ts.map +1 -1
  317. package/dist/server/handlers/prompt-block-versions.js +1 -1
  318. package/dist/server/handlers/responses.cjs +4 -4
  319. package/dist/server/handlers/responses.js +1 -1
  320. package/dist/server/handlers/responses.storage.cjs +8 -8
  321. package/dist/server/handlers/responses.storage.js +1 -1
  322. package/dist/server/handlers/schedules.cjs +6 -6
  323. package/dist/server/handlers/schedules.js +1 -1
  324. package/dist/server/handlers/scorer-versions.cjs +8 -8
  325. package/dist/server/handlers/scorer-versions.d.ts.map +1 -1
  326. package/dist/server/handlers/scorer-versions.js +1 -1
  327. package/dist/server/handlers/scores.cjs +7 -7
  328. package/dist/server/handlers/scores.js +1 -1
  329. package/dist/server/handlers/skills-sh-shared.cjs +40 -0
  330. package/dist/server/handlers/skills-sh-shared.cjs.map +1 -0
  331. package/dist/server/handlers/skills-sh-shared.d.ts +89 -0
  332. package/dist/server/handlers/skills-sh-shared.d.ts.map +1 -0
  333. package/dist/server/handlers/skills-sh-shared.js +3 -0
  334. package/dist/server/handlers/skills-sh-shared.js.map +1 -0
  335. package/dist/server/handlers/stored-agent-favorites.cjs +16 -0
  336. package/dist/server/handlers/stored-agent-favorites.cjs.map +1 -0
  337. package/dist/server/handlers/stored-agent-favorites.d.ts +29 -0
  338. package/dist/server/handlers/stored-agent-favorites.d.ts.map +1 -0
  339. package/dist/server/handlers/stored-agent-favorites.js +3 -0
  340. package/dist/server/handlers/stored-agent-favorites.js.map +1 -0
  341. package/dist/server/handlers/stored-agents.cjs +7 -7
  342. package/dist/server/handlers/stored-agents.d.ts +390 -0
  343. package/dist/server/handlers/stored-agents.d.ts.map +1 -1
  344. package/dist/server/handlers/stored-agents.js +1 -1
  345. package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
  346. package/dist/server/handlers/stored-mcp-clients.d.ts.map +1 -1
  347. package/dist/server/handlers/stored-mcp-clients.js +1 -1
  348. package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
  349. package/dist/server/handlers/stored-prompt-blocks.d.ts.map +1 -1
  350. package/dist/server/handlers/stored-prompt-blocks.js +1 -1
  351. package/dist/server/handlers/stored-scorers.cjs +6 -6
  352. package/dist/server/handlers/stored-scorers.d.ts.map +1 -1
  353. package/dist/server/handlers/stored-scorers.js +1 -1
  354. package/dist/server/handlers/stored-skill-favorites.cjs +16 -0
  355. package/dist/server/handlers/stored-skill-favorites.cjs.map +1 -0
  356. package/dist/server/handlers/stored-skill-favorites.d.ts +29 -0
  357. package/dist/server/handlers/stored-skill-favorites.d.ts.map +1 -0
  358. package/dist/server/handlers/stored-skill-favorites.js +3 -0
  359. package/dist/server/handlers/stored-skill-favorites.js.map +1 -0
  360. package/dist/server/handlers/stored-skills.cjs +7 -7
  361. package/dist/server/handlers/stored-skills.d.ts +117 -0
  362. package/dist/server/handlers/stored-skills.d.ts.map +1 -1
  363. package/dist/server/handlers/stored-skills.js +1 -1
  364. package/dist/server/handlers/stored-workspaces.cjs +6 -6
  365. package/dist/server/handlers/stored-workspaces.d.ts +2 -0
  366. package/dist/server/handlers/stored-workspaces.d.ts.map +1 -1
  367. package/dist/server/handlers/stored-workspaces.js +1 -1
  368. package/dist/server/handlers/system.cjs +3 -3
  369. package/dist/server/handlers/system.js +1 -1
  370. package/dist/server/handlers/tool-providers.cjs +5 -5
  371. package/dist/server/handlers/tool-providers.js +1 -1
  372. package/dist/server/handlers/tools.cjs +6 -6
  373. package/dist/server/handlers/tools.js +1 -1
  374. package/dist/server/handlers/utils.cjs +10 -10
  375. package/dist/server/handlers/utils.d.ts +1 -1
  376. package/dist/server/handlers/utils.js +1 -1
  377. package/dist/server/handlers/validate-avatar.cjs +12 -0
  378. package/dist/server/handlers/validate-avatar.cjs.map +1 -0
  379. package/dist/server/handlers/validate-avatar.d.ts +7 -0
  380. package/dist/server/handlers/validate-avatar.d.ts.map +1 -0
  381. package/dist/server/handlers/validate-avatar.js +3 -0
  382. package/dist/server/handlers/validate-avatar.js.map +1 -0
  383. package/dist/server/handlers/vector.cjs +16 -16
  384. package/dist/server/handlers/vector.js +1 -1
  385. package/dist/server/handlers/voice.cjs +8 -8
  386. package/dist/server/handlers/voice.js +1 -1
  387. package/dist/server/handlers/workflows.cjs +26 -26
  388. package/dist/server/handlers/workflows.js +1 -1
  389. package/dist/server/handlers/workspace.cjs +26 -26
  390. package/dist/server/handlers/workspace.js +1 -1
  391. package/dist/server/handlers.cjs +38 -38
  392. package/dist/server/handlers.js +16 -16
  393. package/dist/server/schemas/builder-registry.d.ts +73 -0
  394. package/dist/server/schemas/builder-registry.d.ts.map +1 -0
  395. package/dist/server/schemas/editor-builder.d.ts +288 -0
  396. package/dist/server/schemas/editor-builder.d.ts.map +1 -0
  397. package/dist/server/schemas/favorites.d.ts +9 -0
  398. package/dist/server/schemas/favorites.d.ts.map +1 -0
  399. package/dist/server/schemas/index.cjs +400 -384
  400. package/dist/server/schemas/index.js +9 -9
  401. package/dist/server/schemas/stored-agents.d.ts +1066 -94
  402. package/dist/server/schemas/stored-agents.d.ts.map +1 -1
  403. package/dist/server/schemas/stored-skills.d.ts +111 -0
  404. package/dist/server/schemas/stored-skills.d.ts.map +1 -1
  405. package/dist/server/schemas/stored-workspaces.d.ts +1 -0
  406. package/dist/server/schemas/stored-workspaces.d.ts.map +1 -1
  407. package/dist/server/server-adapter/index.cjs +200 -124
  408. package/dist/server/server-adapter/index.cjs.map +1 -1
  409. package/dist/server/server-adapter/index.d.ts +9 -1
  410. package/dist/server/server-adapter/index.d.ts.map +1 -1
  411. package/dist/server/server-adapter/index.js +174 -98
  412. package/dist/server/server-adapter/index.js.map +1 -1
  413. package/dist/server/server-adapter/routes/editor-builder.d.ts +353 -0
  414. package/dist/server/server-adapter/routes/editor-builder.d.ts.map +1 -0
  415. package/dist/server/server-adapter/routes/fga-manifest.d.ts +4 -0
  416. package/dist/server/server-adapter/routes/fga-manifest.d.ts.map +1 -0
  417. package/dist/server/server-adapter/routes/index.d.ts +7 -1
  418. package/dist/server/server-adapter/routes/index.d.ts.map +1 -1
  419. package/dist/server/server-adapter/routes/permissions.d.ts +8 -3
  420. package/dist/server/server-adapter/routes/permissions.d.ts.map +1 -1
  421. package/dist/server/server-adapter/routes/route-builder.d.ts +3 -1
  422. package/dist/server/server-adapter/routes/route-builder.d.ts.map +1 -1
  423. package/dist/server/server-adapter/routes/stored-agents.d.ts +4 -1
  424. package/dist/server/server-adapter/routes/stored-agents.d.ts.map +1 -1
  425. package/dist/server/server-adapter/routes/stored-skills.d.ts +138 -1
  426. package/dist/server/server-adapter/routes/stored-skills.d.ts.map +1 -1
  427. package/dist/server/server-adapter/routes/stored-workspaces.d.ts +2 -0
  428. package/dist/server/server-adapter/routes/stored-workspaces.d.ts.map +1 -1
  429. package/dist/server/utils/resolve-builder-model-policy.d.ts +17 -0
  430. package/dist/server/utils/resolve-builder-model-policy.d.ts.map +1 -0
  431. package/dist/server/utils.d.ts +11 -0
  432. package/dist/server/utils.d.ts.map +1 -1
  433. package/package.json +4 -4
  434. package/dist/chunk-5XW4MKE6.cjs.map +0 -1
  435. package/dist/chunk-6IUJAAQ2.js.map +0 -1
  436. package/dist/chunk-7YV7MYOP.js.map +0 -1
  437. package/dist/chunk-AIRSK4QU.js.map +0 -1
  438. package/dist/chunk-B34S64RC.cjs.map +0 -1
  439. package/dist/chunk-B3UPXBHD.js.map +0 -1
  440. package/dist/chunk-BBD7VAAR.js.map +0 -1
  441. package/dist/chunk-DRTUU5WC.cjs +0 -365
  442. package/dist/chunk-DRTUU5WC.cjs.map +0 -1
  443. package/dist/chunk-H3RUJBEL.cjs.map +0 -1
  444. package/dist/chunk-HT4KV7V5.js.map +0 -1
  445. package/dist/chunk-JRFHBWKQ.cjs.map +0 -1
  446. package/dist/chunk-JRZZN55Y.cjs.map +0 -1
  447. package/dist/chunk-KGK2LCZ4.js.map +0 -1
  448. package/dist/chunk-L3WM4IWR.cjs.map +0 -1
  449. package/dist/chunk-LTYRUL3Q.cjs.map +0 -1
  450. package/dist/chunk-M4MNMBQF.cjs.map +0 -1
  451. package/dist/chunk-M7DF3D2M.js.map +0 -1
  452. package/dist/chunk-MXGCIYNM.js.map +0 -1
  453. package/dist/chunk-OMLB6EMJ.cjs +0 -313
  454. package/dist/chunk-OMLB6EMJ.cjs.map +0 -1
  455. package/dist/chunk-OOEYTKTC.js.map +0 -1
  456. package/dist/chunk-OULCMO5R.js.map +0 -1
  457. package/dist/chunk-P23KBWKB.js +0 -26
  458. package/dist/chunk-P23KBWKB.js.map +0 -1
  459. package/dist/chunk-PDHGJ7GP.js.map +0 -1
  460. package/dist/chunk-PQDYNK4J.cjs.map +0 -1
  461. package/dist/chunk-Q2B7W7GA.cjs.map +0 -1
  462. package/dist/chunk-QTPAVOG2.cjs.map +0 -1
  463. package/dist/chunk-R4IYXUNR.cjs.map +0 -1
  464. package/dist/chunk-T6QQYYPA.cjs.map +0 -1
  465. package/dist/chunk-UH3MHVDF.cjs.map +0 -1
  466. package/dist/chunk-WNIL6DVE.cjs +0 -615
  467. package/dist/chunk-WNIL6DVE.cjs.map +0 -1
  468. package/dist/chunk-WYLVJSGR.cjs.map +0 -1
  469. package/dist/chunk-X7ZNZFHV.js.map +0 -1
  470. package/dist/chunk-XT5ZVU5J.js +0 -306
  471. package/dist/chunk-XT5ZVU5J.js.map +0 -1
  472. package/dist/chunk-XZT7USLH.js.map +0 -1
  473. package/dist/chunk-Y5LNMKEY.cjs.map +0 -1
  474. package/dist/chunk-YARY4I5U.js.map +0 -1
  475. package/dist/chunk-YHRGDSTK.js.map +0 -1
  476. package/dist/chunk-Z6C7SDXA.js.map +0 -1
@@ -1,18 +1,143 @@
1
- import { getEffectivePermission, SERVER_ROUTES } from '../../chunk-XZT7USLH.js';
2
- export { SERVER_ROUTES, deriveAction, derivePermission, extractResource, getEffectivePermission } from '../../chunk-XZT7USLH.js';
3
- import { coreAuthMiddleware } from '../../chunk-M7DF3D2M.js';
4
- import { normalizeRoutePath } from '../../chunk-YHRGDSTK.js';
5
- export { WorkflowRegistry, normalizeRoutePath } from '../../chunk-YHRGDSTK.js';
6
- import { generateOpenAPIDocument, convertCustomRoutesToOpenAPIPaths } from '../../chunk-E53AJNZB.js';
7
- export { createPublicRoute, createRoute, generateOpenAPIDocument, jsonQueryParam, pickParams, wrapSchemaForQueryParams } from '../../chunk-E53AJNZB.js';
8
- import { formatZodError } from '../../chunk-P23KBWKB.js';
9
- import { isReservedRequestContextKey, isStudioClientTypeHeader, MASTRA_CLIENT_TYPE_HEADER, MASTRA_IS_STUDIO_KEY } from '../../chunk-YARY4I5U.js';
10
- export { MASTRA_CLIENT_TYPE_HEADER, MASTRA_IS_STUDIO_KEY, MASTRA_STUDIO_CLIENT_TYPE, isReservedRequestContextKey, isStudioClientTypeHeader } from '../../chunk-YARY4I5U.js';
1
+ import { getEffectivePermission, SERVER_ROUTES } from '../../chunk-EX3XD2F5.js';
2
+ export { SERVER_ROUTES, deriveAction, derivePermission, extractResource, getEffectivePermission } from '../../chunk-EX3XD2F5.js';
3
+ import { coreAuthMiddleware } from '../../chunk-OJNVSXOF.js';
4
+ import { normalizeRoutePath } from '../../chunk-4XSWMZTL.js';
5
+ export { WorkflowRegistry, normalizeRoutePath } from '../../chunk-4XSWMZTL.js';
6
+ import { formatZodError } from '../../chunk-GA4BG5JK.js';
7
+ import { generateOpenAPIDocument, convertCustomRoutesToOpenAPIPaths } from '../../chunk-F2FAL5CZ.js';
8
+ export { createPublicRoute, createRoute, generateOpenAPIDocument, jsonQueryParam, pickParams, wrapSchemaForQueryParams } from '../../chunk-F2FAL5CZ.js';
9
+ import { isReservedRequestContextKey, isStudioClientTypeHeader, MASTRA_CLIENT_TYPE_HEADER, MASTRA_IS_STUDIO_KEY, MASTRA_RESOURCE_ID_KEY } from '../../chunk-23S37FLK.js';
10
+ export { MASTRA_CLIENT_TYPE_HEADER, MASTRA_IS_STUDIO_KEY, MASTRA_STUDIO_CLIENT_TYPE, isReservedRequestContextKey, isStudioClientTypeHeader } from '../../chunk-23S37FLK.js';
11
11
  import { RequestContext } from '@mastra/core/request-context';
12
12
  import { MastraServerBase } from '@mastra/core/server';
13
13
  import { Hono } from 'hono';
14
14
  import { z } from 'zod/v4';
15
15
 
16
+ // src/server/server-adapter/routes/fga-manifest.ts
17
+ function isProtectedFGARoute(route) {
18
+ return route.requiresAuth !== false;
19
+ }
20
+ function getToolRoutePermission(path) {
21
+ return path.includes("/execute") ? "tools:execute" : "tools:read";
22
+ }
23
+ function getAgentToolResourceId(agentId, toolId) {
24
+ return `${agentId}:${toolId}`;
25
+ }
26
+ function getMCPToolResourceId(serverId, toolId) {
27
+ return JSON.stringify([serverId, toolId]);
28
+ }
29
+ var STORED_ROUTE_FGA = {
30
+ agents: { resourceType: "stored-agents", idParams: ["storedAgentId", "agentId"] },
31
+ "mcp-clients": { resourceType: "stored-mcp-clients", idParams: ["storedMCPClientId", "mcpClientId"] },
32
+ "prompt-blocks": { resourceType: "stored-prompt-blocks", idParams: ["storedPromptBlockId", "promptBlockId"] },
33
+ scorers: { resourceType: "stored-scorers", idParams: ["storedScorerId", "scorerId"] },
34
+ skills: { resourceType: "stored-skills", idParams: ["storedSkillId"] },
35
+ workspaces: { resourceType: "stored-workspaces", idParams: ["storedWorkspaceId"] }
36
+ };
37
+ function getStoredResourceRouteFGAConfig(path, permission) {
38
+ const match = path.match(/^\/stored\/([^/]+)/);
39
+ if (!match?.[1]) {
40
+ return null;
41
+ }
42
+ const config = STORED_ROUTE_FGA[match[1]];
43
+ if (!config) {
44
+ return null;
45
+ }
46
+ return {
47
+ resourceType: config.resourceType,
48
+ resourceId: (params, { requestContext }) => {
49
+ for (const idParam of config.idParams) {
50
+ const id = params[idParam];
51
+ if (typeof id === "string" && id) {
52
+ return id;
53
+ }
54
+ }
55
+ const scopedResourceId = requestContext?.get(MASTRA_RESOURCE_ID_KEY);
56
+ return typeof scopedResourceId === "string" && scopedResourceId ? scopedResourceId : config.resourceType;
57
+ },
58
+ permission
59
+ };
60
+ }
61
+ function getBuiltInRouteFGAConfig(route) {
62
+ if (!isProtectedFGARoute(route) || !route.path || !route.method) {
63
+ return null;
64
+ }
65
+ const permission = getEffectivePermission(route);
66
+ if (!permission) {
67
+ return null;
68
+ }
69
+ const path = route.path;
70
+ const storedRouteConfig = getStoredResourceRouteFGAConfig(path, permission);
71
+ if (storedRouteConfig) {
72
+ return storedRouteConfig;
73
+ }
74
+ if (path.startsWith("/agents/:agentId/tools/:toolId")) {
75
+ return {
76
+ resourceType: "tool",
77
+ resourceId: ({ agentId, toolId }) => getAgentToolResourceId(String(agentId), String(toolId)),
78
+ permission: getToolRoutePermission(path)
79
+ };
80
+ }
81
+ if (path.startsWith("/agents/:agentId")) {
82
+ return { resourceType: "agent", resourceIdParam: "agentId", permission };
83
+ }
84
+ if (path.startsWith("/workflows/:workflowId")) {
85
+ return { resourceType: "workflow", resourceIdParam: "workflowId", permission };
86
+ }
87
+ if (path.startsWith("/tools/:toolId")) {
88
+ return { resourceType: "tool", resourceIdParam: "toolId", permission };
89
+ }
90
+ if (path.startsWith("/mcp/:serverId/tools/:toolId")) {
91
+ return {
92
+ resourceType: "tool",
93
+ resourceId: ({ serverId, toolId }) => getMCPToolResourceId(String(serverId), String(toolId)),
94
+ permission: getToolRoutePermission(path)
95
+ };
96
+ }
97
+ if (path.startsWith("/mcp/:serverId")) {
98
+ return { resourceType: "mcp", resourceIdParam: "serverId", permission };
99
+ }
100
+ if (path.startsWith("/memory/threads/:threadId") || path.startsWith("/memory/network/threads/:threadId")) {
101
+ return { resourceType: "thread", resourceIdParam: "threadId", permission };
102
+ }
103
+ if (path === "/memory/threads" || path === "/memory/network/threads") {
104
+ return {
105
+ resourceType: "thread",
106
+ resourceId: ({ threadId, resourceId }) => {
107
+ if (typeof threadId === "string") return threadId;
108
+ return typeof resourceId === "string" ? resourceId : void 0;
109
+ },
110
+ permission
111
+ };
112
+ }
113
+ if (path === "/memory/save-messages" || path === "/memory/network/save-messages") {
114
+ return {
115
+ resourceType: "thread",
116
+ resourceId: ({ messages }) => {
117
+ if (!Array.isArray(messages)) return void 0;
118
+ const threadId = messages.find(
119
+ (message) => message && typeof message === "object" && "threadId" in message
120
+ )?.threadId;
121
+ return typeof threadId === "string" ? threadId : void 0;
122
+ },
123
+ permission
124
+ };
125
+ }
126
+ if (path === "/v1/responses") {
127
+ return { resourceType: "agent", resourceIdParam: "agent_id", permission };
128
+ }
129
+ if (path.startsWith("/v1/responses/:responseId")) {
130
+ return { resourceType: "response", resourceIdParam: "responseId", permission };
131
+ }
132
+ if (path === "/v1/conversations") {
133
+ return { resourceType: "agent", resourceIdParam: "agent_id", permission };
134
+ }
135
+ if (path.startsWith("/v1/conversations/:conversationId")) {
136
+ return { resourceType: "conversation", resourceIdParam: "conversationId", permission };
137
+ }
138
+ return null;
139
+ }
140
+
16
141
  // src/server/server-adapter/redact.ts
17
142
  function redactV2Payload(payload) {
18
143
  const redactedPayload = { ...payload };
@@ -105,7 +230,7 @@ function redactStreamChunk(chunk) {
105
230
  }
106
231
 
107
232
  // src/server/server-adapter/index.ts
108
- function isProtectedFGARoute(route) {
233
+ function isProtectedFGARoute2(route) {
109
234
  return route.requiresAuth !== false;
110
235
  }
111
236
  function formatRoute(route) {
@@ -124,87 +249,7 @@ function getFGARouteInfo(route) {
124
249
  };
125
250
  }
126
251
  function getRoutePermissions(route) {
127
- return [getEffectivePermission(route), route.fga?.permission].filter(
128
- (permission) => Boolean(permission)
129
- );
130
- }
131
- function getToolRoutePermission(path) {
132
- return path.includes("/execute") ? "tools:execute" : "tools:read";
133
- }
134
- function getBuiltInRouteFGAConfig(route) {
135
- if (!isProtectedFGARoute(route) || !route.path || !route.method) {
136
- return null;
137
- }
138
- const permission = getEffectivePermission(route);
139
- if (!permission) {
140
- return null;
141
- }
142
- const path = route.path;
143
- if (path.startsWith("/agents/:agentId/tools/:toolId")) {
144
- return {
145
- resourceType: "tool",
146
- resourceId: ({ agentId, toolId }) => `${String(agentId)}:${String(toolId)}`,
147
- permission: getToolRoutePermission(path)
148
- };
149
- }
150
- if (path.startsWith("/agents/:agentId")) {
151
- return { resourceType: "agent", resourceIdParam: "agentId", permission };
152
- }
153
- if (path.startsWith("/workflows/:workflowId")) {
154
- return { resourceType: "workflow", resourceIdParam: "workflowId", permission };
155
- }
156
- if (path.startsWith("/tools/:toolId")) {
157
- return { resourceType: "tool", resourceIdParam: "toolId", permission };
158
- }
159
- if (path.startsWith("/mcp/:serverId/tools/:toolId")) {
160
- return {
161
- resourceType: "tool",
162
- resourceId: ({ serverId, toolId }) => JSON.stringify([String(serverId), String(toolId)]),
163
- permission: getToolRoutePermission(path)
164
- };
165
- }
166
- if (path.startsWith("/mcp/:serverId")) {
167
- return { resourceType: "mcp", resourceIdParam: "serverId", permission };
168
- }
169
- if (path.startsWith("/memory/threads/:threadId") || path.startsWith("/memory/network/threads/:threadId")) {
170
- return { resourceType: "thread", resourceIdParam: "threadId", permission };
171
- }
172
- if (path === "/memory/threads" || path === "/memory/network/threads") {
173
- return {
174
- resourceType: "thread",
175
- resourceId: ({ threadId, resourceId }) => {
176
- if (typeof threadId === "string") return threadId;
177
- return typeof resourceId === "string" ? resourceId : void 0;
178
- },
179
- permission
180
- };
181
- }
182
- if (path === "/memory/save-messages" || path === "/memory/network/save-messages") {
183
- return {
184
- resourceType: "thread",
185
- resourceId: ({ messages }) => {
186
- if (!Array.isArray(messages)) return void 0;
187
- const threadId = messages.find(
188
- (message) => message && typeof message === "object" && "threadId" in message
189
- )?.threadId;
190
- return typeof threadId === "string" ? threadId : void 0;
191
- },
192
- permission
193
- };
194
- }
195
- if (path === "/v1/responses") {
196
- return { resourceType: "agent", resourceIdParam: "agent_id", permission };
197
- }
198
- if (path.startsWith("/v1/responses/:responseId")) {
199
- return { resourceType: "response", resourceIdParam: "responseId", permission };
200
- }
201
- if (path === "/v1/conversations") {
202
- return { resourceType: "agent", resourceIdParam: "agent_id", permission };
203
- }
204
- if (path.startsWith("/v1/conversations/:conversationId")) {
205
- return { resourceType: "conversation", resourceIdParam: "conversationId", permission };
206
- }
207
- return null;
252
+ return [getEffectivePermission(route), route.fga?.permission].flatMap((value) => Array.isArray(value) ? value : [value]).filter((permission) => Boolean(permission));
208
253
  }
209
254
  async function resolveRouteFGAConfig(fgaProvider, route, requestContext, params) {
210
255
  if (route.fga) {
@@ -427,7 +472,8 @@ var MastraServer = class _MastraServer extends MastraServerBase {
427
472
  requestContext: context.requestContext,
428
473
  rawRequest: context.request,
429
474
  token,
430
- buildAuthorizeContext: context.buildAuthorizeContext ?? (() => null)
475
+ buildAuthorizeContext: context.buildAuthorizeContext ?? (() => null),
476
+ requiresAuth: route.requiresAuth
431
477
  });
432
478
  if (result.action === "next") {
433
479
  if (result.headers) {
@@ -446,6 +492,9 @@ var MastraServer = class _MastraServer extends MastraServerBase {
446
492
  * 2. Otherwise, derive permission from path/method (e.g., GET /agents → agents:read)
447
493
  * 3. Routes with `requiresAuth: false` skip permission checks
448
494
  *
495
+ * When the route specifies an array of permissions, the user needs ANY ONE
496
+ * of them (logical OR).
497
+ *
449
498
  * @param route - The route being accessed
450
499
  * @param userPermissions - The user's permissions from the request context
451
500
  * @returns Error response if permission denied, null if allowed
@@ -459,11 +508,13 @@ var MastraServer = class _MastraServer extends MastraServerBase {
459
508
  if (!requiredPermission) {
460
509
  return null;
461
510
  }
462
- if (!userPermissions || !hasPermissionFn(userPermissions, requiredPermission)) {
511
+ const permissions = Array.isArray(requiredPermission) ? requiredPermission : [requiredPermission];
512
+ const hasAny = userPermissions && permissions.some((perm) => hasPermissionFn(userPermissions, perm));
513
+ if (!hasAny) {
463
514
  return {
464
515
  status: 403,
465
516
  error: "Forbidden",
466
- message: `Missing required permission: ${requiredPermission}`
517
+ message: `Missing required permission: ${permissions.join(" or ")}`
467
518
  };
468
519
  }
469
520
  return null;
@@ -473,6 +524,7 @@ var MastraServer = class _MastraServer extends MastraServerBase {
473
524
  this.registerAuthMiddleware();
474
525
  this.registerHttpLoggingMiddleware();
475
526
  await this.validateEELicense();
527
+ await this.validateAgentBuilderLicense();
476
528
  await this.validateFGAPolicyCoverage();
477
529
  await this.registerCustomApiRoutes();
478
530
  await this.registerRoutes();
@@ -508,6 +560,29 @@ Ensure @mastra/core is updated to a version that includes EE support.`
508
560
  );
509
561
  }
510
562
  }
563
+ /**
564
+ * Validate that an Agent Builder configuration has a valid EE license.
565
+ * Throws if the editor is configured with builder support but no valid EE license is available.
566
+ */
567
+ async validateAgentBuilderLicense() {
568
+ const editor = this.mastra.getEditor();
569
+ if (!editor?.hasEnabledBuilderConfig?.()) return;
570
+ try {
571
+ const { isEEEnabled } = await import('@mastra/core/auth/ee');
572
+ if (!isEEEnabled()) {
573
+ throw new Error(
574
+ "[mastra/auth-ee] Agent Builder is configured but no valid EE license was found.\nAgent Builder requires a Mastra Enterprise License for production use.\nSet the MASTRA_EE_LICENSE environment variable with your license key.\nLearn more: https://github.com/mastra-ai/mastra/blob/main/ee/LICENSE"
575
+ );
576
+ }
577
+ } catch (err) {
578
+ if (err instanceof Error && err.message.startsWith("[mastra/auth-ee]")) {
579
+ throw err;
580
+ }
581
+ throw new Error(
582
+ "[mastra/auth-ee] Agent Builder is configured but the EE module (@mastra/core/auth/ee) could not be loaded.\nEnsure @mastra/core is updated to a version that includes EE support."
583
+ );
584
+ }
585
+ }
511
586
  /**
512
587
  * Validate route-level FGA policy coverage when an FGA provider opts into
513
588
  * startup checks.
@@ -527,7 +602,7 @@ Ensure @mastra/core is updated to a version that includes EE support.`
527
602
  const auditMode = fgaProvider.auditProtectedRoutes ?? (fgaProvider.requireForProtectedRoutes ? "warn" : false);
528
603
  if (!auditMode || fgaProvider.resolveRouteFGA) return;
529
604
  const missingRoutes = routes.filter(
530
- (route) => isProtectedFGARoute(route) && !route.fga && !getBuiltInRouteFGAConfig(route)
605
+ (route) => isProtectedFGARoute2(route) && !route.fga && !getBuiltInRouteFGAConfig(route)
531
606
  );
532
607
  if (missingRoutes.length === 0) return;
533
608
  const routeList = missingRoutes.map((route) => formatRoute(route));
@@ -773,7 +848,7 @@ async function checkRouteFGA(mastra, route, requestContext, params) {
773
848
  if (!fgaProvider) return null;
774
849
  const fgaConfig = await resolveRouteFGAConfig(fgaProvider, route, requestContext, params);
775
850
  if (!fgaConfig) {
776
- if (fgaProvider.requireForProtectedRoutes && isProtectedFGARoute(route)) {
851
+ if (fgaProvider.requireForProtectedRoutes && isProtectedFGARoute2(route)) {
777
852
  return {
778
853
  status: 403,
779
854
  error: "Forbidden",
@@ -798,7 +873,8 @@ async function checkRouteFGA(mastra, route, requestContext, params) {
798
873
  message: "FGA authorization denied: route FGA metadata is incomplete"
799
874
  };
800
875
  }
801
- const permission = fgaConfig.permission || (route.path ? getEffectivePermission(route) : null) || `${getFGAResourcePermissionSlug(fgaConfig.resourceType)}:${deriveFGAAction(route.method)}`;
876
+ const effectivePermission = route.path ? getEffectivePermission(route) : null;
877
+ const permission = fgaConfig.permission || effectivePermission || `${getFGAResourcePermissionSlug(fgaConfig.resourceType)}:${deriveFGAAction(route.method)}`;
802
878
  const authorized = await fgaProvider.check(user, {
803
879
  resource: { type: fgaConfig.resourceType, id: resourceId },
804
880
  permission,