@mastra/server 1.36.0-alpha.0 → 1.36.0-alpha.10
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.
- package/CHANGELOG.md +236 -0
- package/dist/_types/@internal_core/dist/index.d.ts +506 -28
- package/dist/{api-schema-manifest-FWK7OIXL.cjs → api-schema-manifest-4VHMCJM3.cjs} +6 -6
- package/dist/{api-schema-manifest-FWK7OIXL.cjs.map → api-schema-manifest-4VHMCJM3.cjs.map} +1 -1
- package/dist/{api-schema-manifest-AUYKZJAA.js → api-schema-manifest-DZFKQXHM.js} +4 -4
- package/dist/{api-schema-manifest-AUYKZJAA.js.map → api-schema-manifest-DZFKQXHM.js.map} +1 -1
- package/dist/{chunk-YARY4I5U.js → chunk-23S37FLK.js} +9 -3
- package/dist/chunk-23S37FLK.js.map +1 -0
- package/dist/{chunk-NG62OLVA.js → chunk-2JXX4IPC.js} +3 -3
- package/dist/{chunk-NG62OLVA.js.map → chunk-2JXX4IPC.js.map} +1 -1
- package/dist/{chunk-BYX5LHPW.cjs → chunk-2R76OYDZ.cjs} +22 -5
- package/dist/chunk-2R76OYDZ.cjs.map +1 -0
- package/dist/{chunk-3Y7SOTAS.js → chunk-2SMGXJZJ.js} +42 -8
- package/dist/chunk-2SMGXJZJ.js.map +1 -0
- package/dist/chunk-2YUSBWAC.js +101 -0
- package/dist/chunk-2YUSBWAC.js.map +1 -0
- package/dist/{chunk-SBGAKEDX.js → chunk-32CLLOUG.js} +5 -5
- package/dist/{chunk-SBGAKEDX.js.map → chunk-32CLLOUG.js.map} +1 -1
- package/dist/{chunk-NIX5VQJ6.cjs → chunk-35SOHRUB.cjs} +251 -251
- package/dist/{chunk-NIX5VQJ6.cjs.map → chunk-35SOHRUB.cjs.map} +1 -1
- package/dist/{chunk-SUNXO2H2.cjs → chunk-3AKG5KEE.cjs} +44 -36
- package/dist/chunk-3AKG5KEE.cjs.map +1 -0
- package/dist/{chunk-NPMJ6FRL.cjs → chunk-3AWUH2DT.cjs} +113 -86
- package/dist/chunk-3AWUH2DT.cjs.map +1 -0
- package/dist/{chunk-NONHI6TJ.js → chunk-3HMSFYGA.js} +81 -41
- package/dist/chunk-3HMSFYGA.js.map +1 -0
- package/dist/{chunk-Y5LNMKEY.cjs → chunk-43KD3CRE.cjs} +21 -7
- package/dist/chunk-43KD3CRE.cjs.map +1 -0
- package/dist/{chunk-RUKCZLXN.cjs → chunk-4BLUIUHS.cjs} +5 -5
- package/dist/{chunk-RUKCZLXN.cjs.map → chunk-4BLUIUHS.cjs.map} +1 -1
- package/dist/{chunk-FRFWWBSS.js → chunk-4DUHTOLC.js} +4 -4
- package/dist/{chunk-FRFWWBSS.js.map → chunk-4DUHTOLC.js.map} +1 -1
- package/dist/chunk-4G7S52U3.cjs +356 -0
- package/dist/chunk-4G7S52U3.cjs.map +1 -0
- package/dist/{chunk-MJBD3YYS.js → chunk-4KSV4WWQ.js} +6 -6
- package/dist/{chunk-MJBD3YYS.js.map → chunk-4KSV4WWQ.js.map} +1 -1
- package/dist/{chunk-CJFSLVFA.js → chunk-4RLRTJ5M.js} +22 -5
- package/dist/chunk-4RLRTJ5M.js.map +1 -0
- package/dist/{chunk-XHA6OBT3.cjs → chunk-4UFLVROK.cjs} +13 -13
- package/dist/{chunk-XHA6OBT3.cjs.map → chunk-4UFLVROK.cjs.map} +1 -1
- package/dist/{chunk-YHRGDSTK.js → chunk-4XSWMZTL.js} +40 -3
- package/dist/chunk-4XSWMZTL.js.map +1 -0
- package/dist/{chunk-GPLCXP3B.cjs → chunk-5GI232FP.cjs} +8 -8
- package/dist/{chunk-GPLCXP3B.cjs.map → chunk-5GI232FP.cjs.map} +1 -1
- package/dist/{chunk-IIGNRK55.cjs → chunk-5OGVOPLG.cjs} +4 -4
- package/dist/{chunk-IIGNRK55.cjs.map → chunk-5OGVOPLG.cjs.map} +1 -1
- package/dist/{chunk-JMFAOQYF.cjs → chunk-5R2TJISH.cjs} +34 -34
- package/dist/{chunk-JMFAOQYF.cjs.map → chunk-5R2TJISH.cjs.map} +1 -1
- package/dist/{chunk-5XW4MKE6.cjs → chunk-65T6KVYX.cjs} +11 -2
- package/dist/chunk-65T6KVYX.cjs.map +1 -0
- package/dist/{chunk-OMODGV6O.js → chunk-6GMGCV74.js} +5 -5
- package/dist/{chunk-OMODGV6O.js.map → chunk-6GMGCV74.js.map} +1 -1
- package/dist/chunk-6HR2SJBP.js +101 -0
- package/dist/chunk-6HR2SJBP.js.map +1 -0
- package/dist/chunk-6JCLSYOU.js +351 -0
- package/dist/chunk-6JCLSYOU.js.map +1 -0
- package/dist/{chunk-WWXG4HNX.js → chunk-6NIQROP2.js} +22 -12
- package/dist/chunk-6NIQROP2.js.map +1 -0
- package/dist/chunk-753JFAF2.js +134 -0
- package/dist/chunk-753JFAF2.js.map +1 -0
- package/dist/{chunk-LQRPDQCE.js → chunk-7EDTSUCY.js} +4 -4
- package/dist/{chunk-LQRPDQCE.js.map → chunk-7EDTSUCY.js.map} +1 -1
- package/dist/chunk-7U7OWTR2.js +149 -0
- package/dist/chunk-7U7OWTR2.js.map +1 -0
- package/dist/{chunk-VTMAYC4R.js → chunk-AAZDGIDJ.js} +22 -12
- package/dist/chunk-AAZDGIDJ.js.map +1 -0
- package/dist/{chunk-I63ON7JW.js → chunk-ADCOCQN6.js} +5 -5
- package/dist/{chunk-I63ON7JW.js.map → chunk-ADCOCQN6.js.map} +1 -1
- package/dist/{chunk-KME4O3RJ.cjs → chunk-ADOALG4G.cjs} +3 -2
- package/dist/chunk-ADOALG4G.cjs.map +1 -0
- package/dist/chunk-APCBVLVG.js +497 -0
- package/dist/chunk-APCBVLVG.js.map +1 -0
- package/dist/chunk-AR7VSXHH.cjs +143 -0
- package/dist/chunk-AR7VSXHH.cjs.map +1 -0
- package/dist/{chunk-OG3CV6IN.cjs → chunk-AY3ZP465.cjs} +35 -25
- package/dist/chunk-AY3ZP465.cjs.map +1 -0
- package/dist/{chunk-T2YPTXXE.js → chunk-BWNJBSXL.js} +3 -3
- package/dist/{chunk-T2YPTXXE.js.map → chunk-BWNJBSXL.js.map} +1 -1
- package/dist/{chunk-AFVKVAJZ.cjs → chunk-BXXP2OVD.cjs} +8 -8
- package/dist/{chunk-AFVKVAJZ.cjs.map → chunk-BXXP2OVD.cjs.map} +1 -1
- package/dist/{chunk-JW4P6OFG.js → chunk-CCL4C2ZO.js} +4 -4
- package/dist/{chunk-JW4P6OFG.js.map → chunk-CCL4C2ZO.js.map} +1 -1
- package/dist/{chunk-7LBBDT4S.js → chunk-CGB327L6.js} +3 -3
- package/dist/{chunk-7LBBDT4S.js.map → chunk-CGB327L6.js.map} +1 -1
- package/dist/{chunk-2CT57Y5S.cjs → chunk-CUCQCEE7.cjs} +115 -115
- package/dist/{chunk-2CT57Y5S.cjs.map → chunk-CUCQCEE7.cjs.map} +1 -1
- package/dist/{chunk-73MISLDN.cjs → chunk-D774EZRN.cjs} +16 -16
- package/dist/{chunk-73MISLDN.cjs.map → chunk-D774EZRN.cjs.map} +1 -1
- package/dist/{chunk-MFBQYZP2.cjs → chunk-DYXX34YU.cjs} +56 -21
- package/dist/chunk-DYXX34YU.cjs.map +1 -0
- package/dist/{chunk-DZWFQD53.cjs → chunk-EAPGRYRG.cjs} +6 -6
- package/dist/{chunk-DZWFQD53.cjs.map → chunk-EAPGRYRG.cjs.map} +1 -1
- package/dist/{chunk-PCOJOGO5.cjs → chunk-EQICIFWJ.cjs} +40 -40
- package/dist/{chunk-PCOJOGO5.cjs.map → chunk-EQICIFWJ.cjs.map} +1 -1
- package/dist/{chunk-4WXROF2X.cjs → chunk-ESZN7NKS.cjs} +32 -24
- package/dist/chunk-ESZN7NKS.cjs.map +1 -0
- package/dist/{chunk-E53AJNZB.js → chunk-F2FAL5CZ.js} +2 -2
- package/dist/{chunk-E53AJNZB.js.map → chunk-F2FAL5CZ.js.map} +1 -1
- package/dist/{chunk-7BM2AIKU.js → chunk-FKQCQSXF.js} +44 -17
- package/dist/chunk-FKQCQSXF.js.map +1 -0
- package/dist/{chunk-Y65G4C35.cjs → chunk-FP3SA3LK.cjs} +177 -177
- package/dist/{chunk-Y65G4C35.cjs.map → chunk-FP3SA3LK.cjs.map} +1 -1
- package/dist/chunk-G5LQCOFZ.js +292 -0
- package/dist/chunk-G5LQCOFZ.js.map +1 -0
- package/dist/{chunk-53OYU4CP.js → chunk-G6W3FFTU.js} +226 -40
- package/dist/chunk-G6W3FFTU.js.map +1 -0
- package/dist/chunk-GA4BG5JK.js +46 -0
- package/dist/chunk-GA4BG5JK.js.map +1 -0
- package/dist/{chunk-YPXOTWND.js → chunk-GAGC4WDU.js} +3 -3
- package/dist/{chunk-YPXOTWND.js.map → chunk-GAGC4WDU.js.map} +1 -1
- package/dist/{chunk-KEAF4TVC.cjs → chunk-GAL7C4Y5.cjs} +35 -25
- package/dist/chunk-GAL7C4Y5.cjs.map +1 -0
- package/dist/{chunk-UT2JT5GC.js → chunk-GFZR6THV.js} +3 -3
- package/dist/{chunk-UT2JT5GC.js.map → chunk-GFZR6THV.js.map} +1 -1
- package/dist/{chunk-72Q6PR4Q.js → chunk-GYC5P37S.js} +8 -8
- package/dist/{chunk-72Q6PR4Q.js.map → chunk-GYC5P37S.js.map} +1 -1
- package/dist/{chunk-XL55VCXM.cjs → chunk-GZ4HIOSP.cjs} +98 -98
- package/dist/{chunk-XL55VCXM.cjs.map → chunk-GZ4HIOSP.cjs.map} +1 -1
- package/dist/{chunk-SWCWNQL5.js → chunk-HGRG2WVX.js} +35 -18
- package/dist/chunk-HGRG2WVX.js.map +1 -0
- package/dist/chunk-HMJL3C3H.js +36 -0
- package/dist/chunk-HMJL3C3H.js.map +1 -0
- package/dist/{chunk-JGTLNFH2.js → chunk-HNGYUI5N.js} +21 -13
- package/dist/chunk-HNGYUI5N.js.map +1 -0
- package/dist/{chunk-R3R6VJRM.cjs → chunk-HZNJ4B7D.cjs} +32 -32
- package/dist/{chunk-R3R6VJRM.cjs.map → chunk-HZNJ4B7D.cjs.map} +1 -1
- package/dist/{chunk-UQ2H32RT.cjs → chunk-I6WBJDRP.cjs} +10 -10
- package/dist/{chunk-UQ2H32RT.cjs.map → chunk-I6WBJDRP.cjs.map} +1 -1
- package/dist/{chunk-2OEEHCXR.js → chunk-JHFU2P6Z.js} +5 -5
- package/dist/{chunk-2OEEHCXR.js.map → chunk-JHFU2P6Z.js.map} +1 -1
- package/dist/{chunk-ZRU7KWNW.cjs → chunk-JIB75MHZ.cjs} +7 -3
- package/dist/chunk-JIB75MHZ.cjs.map +1 -0
- package/dist/chunk-JUYUBEMU.js +28 -0
- package/dist/chunk-JUYUBEMU.js.map +1 -0
- package/dist/{chunk-XAHATWVE.js → chunk-K2KT5JNX.js} +8 -8
- package/dist/{chunk-XAHATWVE.js.map → chunk-K2KT5JNX.js.map} +1 -1
- package/dist/{chunk-KWJC4MNT.js → chunk-K5ED24PC.js} +7 -7
- package/dist/{chunk-KWJC4MNT.js.map → chunk-K5ED24PC.js.map} +1 -1
- package/dist/{chunk-7ASFLZZ6.cjs → chunk-KE4V4LJE.cjs} +7 -7
- package/dist/{chunk-7ASFLZZ6.cjs.map → chunk-KE4V4LJE.cjs.map} +1 -1
- package/dist/chunk-KIR4MF3S.cjs +655 -0
- package/dist/chunk-KIR4MF3S.cjs.map +1 -0
- package/dist/{chunk-JTMIZMGO.cjs → chunk-LEIV627E.cjs} +15 -15
- package/dist/{chunk-JTMIZMGO.cjs.map → chunk-LEIV627E.cjs.map} +1 -1
- package/dist/{chunk-AIRSK4QU.js → chunk-LH5Y7AJF.js} +46 -7
- package/dist/chunk-LH5Y7AJF.js.map +1 -0
- package/dist/{chunk-KWREVMMS.js → chunk-LO3JBCO6.js} +7 -3
- package/dist/chunk-LO3JBCO6.js.map +1 -0
- package/dist/{chunk-5TTCUSSA.js → chunk-LPFE6YTG.js} +3 -3
- package/dist/{chunk-5TTCUSSA.js.map → chunk-LPFE6YTG.js.map} +1 -1
- package/dist/{chunk-7GX35QLL.cjs → chunk-LRIYO7KQ.cjs} +30 -30
- package/dist/{chunk-7GX35QLL.cjs.map → chunk-LRIYO7KQ.cjs.map} +1 -1
- package/dist/{chunk-WYLVJSGR.cjs → chunk-LTRLD33R.cjs} +47 -8
- package/dist/chunk-LTRLD33R.cjs.map +1 -0
- package/dist/{chunk-CXI6IIFZ.cjs → chunk-M2CPNUSL.cjs} +16 -16
- package/dist/{chunk-CXI6IIFZ.cjs.map → chunk-M2CPNUSL.cjs.map} +1 -1
- package/dist/{chunk-UH3MHVDF.cjs → chunk-M4B42JGO.cjs} +6 -3
- package/dist/chunk-M4B42JGO.cjs.map +1 -0
- package/dist/{chunk-2M7CLYTM.js → chunk-MRG75BLC.js} +9 -9
- package/dist/{chunk-2M7CLYTM.js.map → chunk-MRG75BLC.js.map} +1 -1
- package/dist/{chunk-CIPZ4VOZ.cjs → chunk-N6RQC4Z3.cjs} +4 -4
- package/dist/{chunk-CIPZ4VOZ.cjs.map → chunk-N6RQC4Z3.cjs.map} +1 -1
- package/dist/chunk-NHJWT4KF.cjs +104 -0
- package/dist/chunk-NHJWT4KF.cjs.map +1 -0
- package/dist/{chunk-FIWR56T7.cjs → chunk-NVWA33MV.cjs} +88 -88
- package/dist/{chunk-FIWR56T7.cjs.map → chunk-NVWA33MV.cjs.map} +1 -1
- package/dist/chunk-O4O2EJF7.cjs +13 -0
- package/dist/chunk-O4O2EJF7.cjs.map +1 -0
- package/dist/{chunk-PG4IJL7T.cjs → chunk-O7B3P2AT.cjs} +57 -40
- package/dist/chunk-O7B3P2AT.cjs.map +1 -0
- package/dist/{chunk-L2RZNUOW.js → chunk-OGYYXNGI.js} +4 -4
- package/dist/{chunk-L2RZNUOW.js.map → chunk-OGYYXNGI.js.map} +1 -1
- package/dist/{chunk-M7DF3D2M.js → chunk-OJNVSXOF.js} +19 -5
- package/dist/chunk-OJNVSXOF.js.map +1 -0
- package/dist/{chunk-5PPFITJ3.js → chunk-OKKJPM5N.js} +19 -12
- package/dist/chunk-OKKJPM5N.js.map +1 -0
- package/dist/{chunk-Z6C7SDXA.js → chunk-ONCDLJUQ.js} +6 -3
- package/dist/chunk-ONCDLJUQ.js.map +1 -0
- package/dist/{chunk-HX5WL5ZF.js → chunk-OORAVFI4.js} +3 -3
- package/dist/{chunk-HX5WL5ZF.js.map → chunk-OORAVFI4.js.map} +1 -1
- package/dist/{chunk-M7CTMLXS.js → chunk-OSN3DL34.js} +4 -4
- package/dist/{chunk-M7CTMLXS.js.map → chunk-OSN3DL34.js.map} +1 -1
- package/dist/{chunk-ZIR2AE52.js → chunk-P5ZWPVC2.js} +4 -4
- package/dist/{chunk-ZIR2AE52.js.map → chunk-P5ZWPVC2.js.map} +1 -1
- package/dist/{chunk-HDBLTBJ4.js → chunk-P673H7LK.js} +6 -6
- package/dist/{chunk-HDBLTBJ4.js.map → chunk-P673H7LK.js.map} +1 -1
- package/dist/{chunk-LXXKGWXS.js → chunk-PQ37PNAE.js} +21 -11
- package/dist/chunk-PQ37PNAE.js.map +1 -0
- package/dist/{chunk-5JX72ECO.cjs → chunk-PQKBBJOP.cjs} +12 -12
- package/dist/{chunk-5JX72ECO.cjs.map → chunk-PQKBBJOP.cjs.map} +1 -1
- package/dist/{chunk-DRNCUSSM.cjs → chunk-PWGPLCL4.cjs} +5 -5
- package/dist/{chunk-DRNCUSSM.cjs.map → chunk-PWGPLCL4.cjs.map} +1 -1
- package/dist/chunk-QJU62KP2.cjs +298 -0
- package/dist/chunk-QJU62KP2.cjs.map +1 -0
- package/dist/{chunk-AY5TY4EN.js → chunk-QUVYOHFH.js} +178 -52
- package/dist/chunk-QUVYOHFH.js.map +1 -0
- package/dist/{chunk-LTYRUL3Q.cjs → chunk-QZ6UFQ7V.cjs} +42 -2
- package/dist/chunk-QZ6UFQ7V.cjs.map +1 -0
- package/dist/{chunk-ULDCHPOZ.cjs → chunk-RDR3XN2X.cjs} +36 -36
- package/dist/{chunk-ULDCHPOZ.cjs.map → chunk-RDR3XN2X.cjs.map} +1 -1
- package/dist/chunk-REJUB2HI.cjs +104 -0
- package/dist/chunk-REJUB2HI.cjs.map +1 -0
- package/dist/chunk-RJUQQE46.cjs +551 -0
- package/dist/chunk-RJUQQE46.cjs.map +1 -0
- package/dist/{chunk-EG3QNCBQ.cjs → chunk-RYPLQO4Z.cjs} +30 -23
- package/dist/chunk-RYPLQO4Z.cjs.map +1 -0
- package/dist/chunk-S77FIEDZ.cjs +504 -0
- package/dist/chunk-S77FIEDZ.cjs.map +1 -0
- package/dist/{chunk-KD46CAJV.js → chunk-SAPM56NU.js} +7 -7
- package/dist/{chunk-KD46CAJV.js.map → chunk-SAPM56NU.js.map} +1 -1
- package/dist/chunk-SFPN7SHZ.js +11 -0
- package/dist/chunk-SFPN7SHZ.js.map +1 -0
- package/dist/{chunk-LBEQ4EE4.js → chunk-SPGVPADY.js} +3 -3
- package/dist/{chunk-LBEQ4EE4.js.map → chunk-SPGVPADY.js.map} +1 -1
- package/dist/{chunk-Q2B7W7GA.cjs → chunk-T3C54LPX.cjs} +57 -5
- package/dist/chunk-T3C54LPX.cjs.map +1 -0
- package/dist/{chunk-3BL73LS3.cjs → chunk-U72BY62E.cjs} +260 -133
- package/dist/chunk-U72BY62E.cjs.map +1 -0
- package/dist/{chunk-DZXHO72E.cjs → chunk-UBYGPC2S.cjs} +12 -12
- package/dist/{chunk-DZXHO72E.cjs.map → chunk-UBYGPC2S.cjs.map} +1 -1
- package/dist/{chunk-IDUFQ5HG.js → chunk-UCKK7LPQ.js} +3 -3
- package/dist/{chunk-IDUFQ5HG.js.map → chunk-UCKK7LPQ.js.map} +1 -1
- package/dist/{chunk-JX4UGU4A.cjs → chunk-UGJBURIS.cjs} +12 -12
- package/dist/{chunk-JX4UGU4A.cjs.map → chunk-UGJBURIS.cjs.map} +1 -1
- package/dist/{chunk-PDHGJ7GP.js → chunk-UIRQU4GW.js} +54 -6
- package/dist/chunk-UIRQU4GW.js.map +1 -0
- package/dist/chunk-V4ATNZXG.cjs +31 -0
- package/dist/chunk-V4ATNZXG.cjs.map +1 -0
- package/dist/{chunk-IFYVRBFS.js → chunk-VVLD43MX.js} +3 -2
- package/dist/chunk-VVLD43MX.js.map +1 -0
- package/dist/chunk-VX3MJR4P.cjs +161 -0
- package/dist/chunk-VX3MJR4P.cjs.map +1 -0
- package/dist/{chunk-M7VWAJP3.cjs → chunk-WLGC3IWY.cjs} +48 -38
- package/dist/chunk-WLGC3IWY.cjs.map +1 -0
- package/dist/{chunk-Z35VW4BM.cjs → chunk-WNPUO7IZ.cjs} +141 -26
- package/dist/chunk-WNPUO7IZ.cjs.map +1 -0
- package/dist/{chunk-4L2UVFJO.js → chunk-WYP25ZMM.js} +120 -5
- package/dist/chunk-WYP25ZMM.js.map +1 -0
- package/dist/{chunk-LL2CVXJG.js → chunk-XI3XH4G7.js} +21 -11
- package/dist/chunk-XI3XH4G7.js.map +1 -0
- package/dist/{chunk-PYZAUXQX.cjs → chunk-XNR667MS.cjs} +27 -27
- package/dist/{chunk-PYZAUXQX.cjs.map → chunk-XNR667MS.cjs.map} +1 -1
- package/dist/{chunk-Y6MWNLAA.cjs → chunk-XR3CGVKU.cjs} +8 -8
- package/dist/{chunk-Y6MWNLAA.cjs.map → chunk-XR3CGVKU.cjs.map} +1 -1
- package/dist/{chunk-AZORAK4H.cjs → chunk-XTFWFQZ7.cjs} +2 -2
- package/dist/{chunk-AZORAK4H.cjs.map → chunk-XTFWFQZ7.cjs.map} +1 -1
- package/dist/{chunk-B34S64RC.cjs → chunk-YNSUYESL.cjs} +23 -3
- package/dist/chunk-YNSUYESL.cjs.map +1 -0
- package/dist/chunk-YRLCLLKR.js +14 -0
- package/dist/chunk-YRLCLLKR.js.map +1 -0
- package/dist/{chunk-M5H6F2QB.js → chunk-YZPXWF6M.js} +7 -7
- package/dist/{chunk-M5H6F2QB.js.map → chunk-YZPXWF6M.js.map} +1 -1
- package/dist/{chunk-SUT6SU4I.cjs → chunk-Z4PDJRZT.cjs} +124 -5
- package/dist/chunk-Z4PDJRZT.cjs.map +1 -0
- package/dist/{chunk-BVZLX6R4.cjs → chunk-Z772ZUYH.cjs} +53 -43
- package/dist/chunk-Z772ZUYH.cjs.map +1 -0
- package/dist/chunk-ZCX2J552.cjs +38 -0
- package/dist/chunk-ZCX2J552.cjs.map +1 -0
- package/dist/{chunk-M4IITA2G.js → chunk-ZHS2QDGO.js} +22 -14
- package/dist/chunk-ZHS2QDGO.js.map +1 -0
- package/dist/{chunk-U2HTITB4.js → chunk-ZJVB5TZ4.js} +141 -26
- package/dist/chunk-ZJVB5TZ4.js.map +1 -0
- package/dist/chunk-ZNP74O27.cjs +19 -0
- package/dist/chunk-ZNP74O27.cjs.map +1 -0
- package/dist/{chunk-TINX42C4.js → chunk-ZUWPQVWA.js} +8 -8
- package/dist/{chunk-TINX42C4.js.map → chunk-ZUWPQVWA.js.map} +1 -1
- package/dist/{dist-PWSP7TGP.js → dist-7I6EPNH3.js} +5 -5
- package/dist/{dist-PWSP7TGP.js.map → dist-7I6EPNH3.js.map} +1 -1
- package/dist/{dist-5GW5WUSJ.cjs → dist-HR6TOFJM.cjs} +20 -20
- package/dist/{dist-5GW5WUSJ.cjs.map → dist-HR6TOFJM.cjs.map} +1 -1
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/docs/references/docs-agents-a2a.md +115 -88
- package/dist/{observational-memory-SYNXJVL4-CJCHK6QY.cjs → observational-memory-KFKHBTCB-RMGPISAP.cjs} +26 -26
- package/dist/{observational-memory-SYNXJVL4-CJCHK6QY.cjs.map → observational-memory-KFKHBTCB-RMGPISAP.cjs.map} +1 -1
- package/dist/{observational-memory-SYNXJVL4-ATVV3WOD.js → observational-memory-KFKHBTCB-RX2CEPSU.js} +3 -3
- package/dist/{observational-memory-SYNXJVL4-ATVV3WOD.js.map → observational-memory-KFKHBTCB-RX2CEPSU.js.map} +1 -1
- package/dist/server/auth/helpers.d.ts +3 -0
- package/dist/server/auth/helpers.d.ts.map +1 -1
- package/dist/server/auth/index.cjs +28 -15
- package/dist/server/auth/index.js +2 -1
- package/dist/server/browser-stream/index.cjs +6 -3
- package/dist/server/browser-stream/index.cjs.map +1 -1
- package/dist/server/browser-stream/index.js +6 -3
- package/dist/server/browser-stream/index.js.map +1 -1
- package/dist/server/browser-stream/input-handler.d.ts +2 -2
- package/dist/server/browser-stream/input-handler.d.ts.map +1 -1
- package/dist/server/browser-stream/types.d.ts +10 -1
- package/dist/server/browser-stream/types.d.ts.map +1 -1
- package/dist/server/browser-stream/viewer-registry.d.ts.map +1 -1
- package/dist/server/constants.d.ts +3 -0
- package/dist/server/constants.d.ts.map +1 -1
- package/dist/server/handlers/a2a.cjs +14 -14
- package/dist/server/handlers/a2a.js +1 -1
- package/dist/server/handlers/agent-builder.cjs +16 -16
- package/dist/server/handlers/agent-builder.js +1 -1
- package/dist/server/handlers/agent-versions.cjs +8 -8
- package/dist/server/handlers/agent-versions.d.ts.map +1 -1
- package/dist/server/handlers/agent-versions.js +1 -1
- package/dist/server/handlers/agents.cjs +41 -41
- package/dist/server/handlers/agents.d.ts +193 -0
- package/dist/server/handlers/agents.d.ts.map +1 -1
- package/dist/server/handlers/agents.js +1 -1
- package/dist/server/handlers/auth.cjs +15 -11
- package/dist/server/handlers/auth.d.ts +168 -146
- package/dist/server/handlers/auth.d.ts.map +1 -1
- package/dist/server/handlers/auth.js +1 -1
- package/dist/server/handlers/authorship.cjs +52 -0
- package/dist/server/handlers/authorship.cjs.map +1 -0
- package/dist/server/handlers/authorship.d.ts +176 -0
- package/dist/server/handlers/authorship.d.ts.map +1 -0
- package/dist/server/handlers/authorship.js +3 -0
- package/dist/server/handlers/authorship.js.map +1 -0
- package/dist/server/handlers/background-tasks.cjs +4 -4
- package/dist/server/handlers/background-tasks.js +1 -1
- package/dist/server/handlers/builder-registry.cjs +28 -0
- package/dist/server/handlers/builder-registry.cjs.map +1 -0
- package/dist/server/handlers/builder-registry.d.ts +170 -0
- package/dist/server/handlers/builder-registry.d.ts.map +1 -0
- package/dist/server/handlers/builder-registry.js +3 -0
- package/dist/server/handlers/builder-registry.js.map +1 -0
- package/dist/server/handlers/channels.cjs +5 -5
- package/dist/server/handlers/channels.js +1 -1
- package/dist/server/handlers/conversations.cjs +5 -5
- package/dist/server/handlers/conversations.js +1 -1
- package/dist/server/handlers/datasets.cjs +26 -26
- package/dist/server/handlers/datasets.d.ts +2 -0
- package/dist/server/handlers/datasets.d.ts.map +1 -1
- package/dist/server/handlers/datasets.js +1 -1
- package/dist/server/handlers/editor-builder.cjs +24 -0
- package/dist/server/handlers/editor-builder.cjs.map +1 -0
- package/dist/server/handlers/editor-builder.d.ts +259 -0
- package/dist/server/handlers/editor-builder.d.ts.map +1 -0
- package/dist/server/handlers/editor-builder.js +3 -0
- package/dist/server/handlers/editor-builder.js.map +1 -0
- package/dist/server/handlers/error.cjs +3 -3
- package/dist/server/handlers/error.d.ts.map +1 -1
- package/dist/server/handlers/error.js +1 -1
- package/dist/server/handlers/favorites-enrichment.cjs +16 -0
- package/dist/server/handlers/favorites-enrichment.cjs.map +1 -0
- package/dist/server/handlers/favorites-enrichment.d.ts +27 -0
- package/dist/server/handlers/favorites-enrichment.d.ts.map +1 -0
- package/dist/server/handlers/favorites-enrichment.js +3 -0
- package/dist/server/handlers/favorites-enrichment.js.map +1 -0
- package/dist/server/handlers/logs.cjs +4 -4
- package/dist/server/handlers/logs.js +1 -1
- package/dist/server/handlers/mcp-client-versions.cjs +8 -8
- package/dist/server/handlers/mcp-client-versions.d.ts.map +1 -1
- package/dist/server/handlers/mcp-client-versions.js +1 -1
- package/dist/server/handlers/mcp.cjs +11 -11
- package/dist/server/handlers/mcp.js +1 -1
- package/dist/server/handlers/memory.cjs +27 -27
- package/dist/server/handlers/memory.d.ts +36 -36
- package/dist/server/handlers/memory.js +1 -1
- package/dist/server/handlers/observability-list-query-schemas.cjs +24 -0
- package/dist/server/handlers/observability-list-query-schemas.cjs.map +1 -0
- package/dist/server/handlers/observability-list-query-schemas.d.ts +29 -0
- package/dist/server/handlers/observability-list-query-schemas.d.ts.map +1 -0
- package/dist/server/handlers/observability-list-query-schemas.js +3 -0
- package/dist/server/handlers/observability-list-query-schemas.js.map +1 -0
- package/dist/server/handlers/observability-new-endpoints.cjs +32 -28
- package/dist/server/handlers/observability-new-endpoints.d.ts +326 -48
- package/dist/server/handlers/observability-new-endpoints.d.ts.map +1 -1
- package/dist/server/handlers/observability-new-endpoints.js +1 -1
- package/dist/server/handlers/observability-shared.cjs +23 -7
- package/dist/server/handlers/observability-shared.d.ts +22 -1
- package/dist/server/handlers/observability-shared.d.ts.map +1 -1
- package/dist/server/handlers/observability-shared.js +1 -1
- package/dist/server/handlers/observability.cjs +43 -39
- package/dist/server/handlers/observability.d.ts +18 -8
- package/dist/server/handlers/observability.d.ts.map +1 -1
- package/dist/server/handlers/observability.js +2 -2
- package/dist/server/handlers/processor-providers.cjs +3 -3
- package/dist/server/handlers/processor-providers.js +1 -1
- package/dist/server/handlers/processors.cjs +4 -4
- package/dist/server/handlers/processors.js +1 -1
- package/dist/server/handlers/prompt-block-versions.cjs +8 -8
- package/dist/server/handlers/prompt-block-versions.d.ts.map +1 -1
- package/dist/server/handlers/prompt-block-versions.js +1 -1
- package/dist/server/handlers/responses.cjs +4 -4
- package/dist/server/handlers/responses.js +1 -1
- package/dist/server/handlers/responses.storage.cjs +8 -8
- package/dist/server/handlers/responses.storage.js +1 -1
- package/dist/server/handlers/schedules.cjs +6 -6
- package/dist/server/handlers/schedules.js +1 -1
- package/dist/server/handlers/scorer-versions.cjs +8 -8
- package/dist/server/handlers/scorer-versions.d.ts.map +1 -1
- package/dist/server/handlers/scorer-versions.js +1 -1
- package/dist/server/handlers/scores.cjs +7 -7
- package/dist/server/handlers/scores.js +1 -1
- package/dist/server/handlers/skills-sh-shared.cjs +40 -0
- package/dist/server/handlers/skills-sh-shared.cjs.map +1 -0
- package/dist/server/handlers/skills-sh-shared.d.ts +89 -0
- package/dist/server/handlers/skills-sh-shared.d.ts.map +1 -0
- package/dist/server/handlers/skills-sh-shared.js +3 -0
- package/dist/server/handlers/skills-sh-shared.js.map +1 -0
- package/dist/server/handlers/stored-agent-favorites.cjs +16 -0
- package/dist/server/handlers/stored-agent-favorites.cjs.map +1 -0
- package/dist/server/handlers/stored-agent-favorites.d.ts +29 -0
- package/dist/server/handlers/stored-agent-favorites.d.ts.map +1 -0
- package/dist/server/handlers/stored-agent-favorites.js +3 -0
- package/dist/server/handlers/stored-agent-favorites.js.map +1 -0
- package/dist/server/handlers/stored-agents.cjs +7 -7
- package/dist/server/handlers/stored-agents.d.ts +390 -0
- package/dist/server/handlers/stored-agents.d.ts.map +1 -1
- package/dist/server/handlers/stored-agents.js +1 -1
- package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
- package/dist/server/handlers/stored-mcp-clients.d.ts.map +1 -1
- package/dist/server/handlers/stored-mcp-clients.js +1 -1
- package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
- package/dist/server/handlers/stored-prompt-blocks.d.ts.map +1 -1
- package/dist/server/handlers/stored-prompt-blocks.js +1 -1
- package/dist/server/handlers/stored-scorers.cjs +6 -6
- package/dist/server/handlers/stored-scorers.d.ts.map +1 -1
- package/dist/server/handlers/stored-scorers.js +1 -1
- package/dist/server/handlers/stored-skill-favorites.cjs +16 -0
- package/dist/server/handlers/stored-skill-favorites.cjs.map +1 -0
- package/dist/server/handlers/stored-skill-favorites.d.ts +29 -0
- package/dist/server/handlers/stored-skill-favorites.d.ts.map +1 -0
- package/dist/server/handlers/stored-skill-favorites.js +3 -0
- package/dist/server/handlers/stored-skill-favorites.js.map +1 -0
- package/dist/server/handlers/stored-skills.cjs +7 -7
- package/dist/server/handlers/stored-skills.d.ts +117 -0
- package/dist/server/handlers/stored-skills.d.ts.map +1 -1
- package/dist/server/handlers/stored-skills.js +1 -1
- package/dist/server/handlers/stored-workspaces.cjs +6 -6
- package/dist/server/handlers/stored-workspaces.d.ts +2 -0
- package/dist/server/handlers/stored-workspaces.d.ts.map +1 -1
- package/dist/server/handlers/stored-workspaces.js +1 -1
- package/dist/server/handlers/system.cjs +3 -3
- package/dist/server/handlers/system.js +1 -1
- package/dist/server/handlers/tool-providers.cjs +5 -5
- package/dist/server/handlers/tool-providers.js +1 -1
- package/dist/server/handlers/tools.cjs +6 -6
- package/dist/server/handlers/tools.js +1 -1
- package/dist/server/handlers/utils.cjs +10 -10
- package/dist/server/handlers/utils.d.ts +1 -1
- package/dist/server/handlers/utils.js +1 -1
- package/dist/server/handlers/validate-avatar.cjs +12 -0
- package/dist/server/handlers/validate-avatar.cjs.map +1 -0
- package/dist/server/handlers/validate-avatar.d.ts +7 -0
- package/dist/server/handlers/validate-avatar.d.ts.map +1 -0
- package/dist/server/handlers/validate-avatar.js +3 -0
- package/dist/server/handlers/validate-avatar.js.map +1 -0
- package/dist/server/handlers/vector.cjs +16 -16
- package/dist/server/handlers/vector.js +1 -1
- package/dist/server/handlers/voice.cjs +8 -8
- package/dist/server/handlers/voice.js +1 -1
- package/dist/server/handlers/workflows.cjs +26 -26
- package/dist/server/handlers/workflows.js +1 -1
- package/dist/server/handlers/workspace.cjs +26 -26
- package/dist/server/handlers/workspace.js +1 -1
- package/dist/server/handlers.cjs +37 -37
- package/dist/server/handlers.js +16 -16
- package/dist/server/schemas/agents.d.ts +8 -0
- package/dist/server/schemas/agents.d.ts.map +1 -1
- package/dist/server/schemas/builder-registry.d.ts +73 -0
- package/dist/server/schemas/builder-registry.d.ts.map +1 -0
- package/dist/server/schemas/datasets.d.ts +2 -0
- package/dist/server/schemas/datasets.d.ts.map +1 -1
- package/dist/server/schemas/editor-builder.d.ts +288 -0
- package/dist/server/schemas/editor-builder.d.ts.map +1 -0
- package/dist/server/schemas/favorites.d.ts +9 -0
- package/dist/server/schemas/favorites.d.ts.map +1 -0
- package/dist/server/schemas/index.cjs +285 -269
- package/dist/server/schemas/index.js +10 -10
- package/dist/server/schemas/memory.d.ts +25 -19
- package/dist/server/schemas/memory.d.ts.map +1 -1
- package/dist/server/schemas/stored-agents.d.ts +1066 -94
- package/dist/server/schemas/stored-agents.d.ts.map +1 -1
- package/dist/server/schemas/stored-skills.d.ts +111 -0
- package/dist/server/schemas/stored-skills.d.ts.map +1 -1
- package/dist/server/schemas/stored-workspaces.d.ts +1 -0
- package/dist/server/schemas/stored-workspaces.d.ts.map +1 -1
- package/dist/server/server-adapter/index.cjs +212 -136
- package/dist/server/server-adapter/index.cjs.map +1 -1
- package/dist/server/server-adapter/index.d.ts +9 -1
- package/dist/server/server-adapter/index.d.ts.map +1 -1
- package/dist/server/server-adapter/index.js +175 -99
- package/dist/server/server-adapter/index.js.map +1 -1
- package/dist/server/server-adapter/routes/datasets.d.ts +2 -0
- package/dist/server/server-adapter/routes/datasets.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/editor-builder.d.ts +353 -0
- package/dist/server/server-adapter/routes/editor-builder.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/fga-manifest.d.ts +4 -0
- package/dist/server/server-adapter/routes/fga-manifest.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/index.d.ts +7 -1
- package/dist/server/server-adapter/routes/index.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/memory.d.ts +36 -36
- package/dist/server/server-adapter/routes/observability.d.ts +176 -28
- package/dist/server/server-adapter/routes/observability.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/permissions.d.ts +8 -3
- package/dist/server/server-adapter/routes/permissions.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/route-builder.d.ts +3 -1
- package/dist/server/server-adapter/routes/route-builder.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/stored-agents.d.ts +4 -1
- package/dist/server/server-adapter/routes/stored-agents.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/stored-skills.d.ts +138 -1
- package/dist/server/server-adapter/routes/stored-skills.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/stored-workspaces.d.ts +2 -0
- package/dist/server/server-adapter/routes/stored-workspaces.d.ts.map +1 -1
- package/dist/server/utils/resolve-builder-model-policy.d.ts +17 -0
- package/dist/server/utils/resolve-builder-model-policy.d.ts.map +1 -0
- package/dist/server/utils.d.ts +11 -0
- package/dist/server/utils.d.ts.map +1 -1
- package/package.json +8 -8
- package/dist/chunk-3BL73LS3.cjs.map +0 -1
- package/dist/chunk-3Y7SOTAS.js.map +0 -1
- package/dist/chunk-4L2UVFJO.js.map +0 -1
- package/dist/chunk-4WXROF2X.cjs.map +0 -1
- package/dist/chunk-53OYU4CP.js.map +0 -1
- package/dist/chunk-5PPFITJ3.js.map +0 -1
- package/dist/chunk-5XW4MKE6.cjs.map +0 -1
- package/dist/chunk-7BM2AIKU.js.map +0 -1
- package/dist/chunk-AIRSK4QU.js.map +0 -1
- package/dist/chunk-AY5TY4EN.js.map +0 -1
- package/dist/chunk-B34S64RC.cjs.map +0 -1
- package/dist/chunk-BVZLX6R4.cjs.map +0 -1
- package/dist/chunk-BYX5LHPW.cjs.map +0 -1
- package/dist/chunk-CJFSLVFA.js.map +0 -1
- package/dist/chunk-EG3QNCBQ.cjs.map +0 -1
- package/dist/chunk-IFYVRBFS.js.map +0 -1
- package/dist/chunk-JGTLNFH2.js.map +0 -1
- package/dist/chunk-KEAF4TVC.cjs.map +0 -1
- package/dist/chunk-KME4O3RJ.cjs.map +0 -1
- package/dist/chunk-KWREVMMS.js.map +0 -1
- package/dist/chunk-LL2CVXJG.js.map +0 -1
- package/dist/chunk-LTYRUL3Q.cjs.map +0 -1
- package/dist/chunk-LXXKGWXS.js.map +0 -1
- package/dist/chunk-M4IITA2G.js.map +0 -1
- package/dist/chunk-M7DF3D2M.js.map +0 -1
- package/dist/chunk-M7VWAJP3.cjs.map +0 -1
- package/dist/chunk-MFBQYZP2.cjs.map +0 -1
- package/dist/chunk-NONHI6TJ.js.map +0 -1
- package/dist/chunk-NPMJ6FRL.cjs.map +0 -1
- package/dist/chunk-OG3CV6IN.cjs.map +0 -1
- package/dist/chunk-OMLB6EMJ.cjs +0 -313
- package/dist/chunk-OMLB6EMJ.cjs.map +0 -1
- package/dist/chunk-P23KBWKB.js +0 -26
- package/dist/chunk-P23KBWKB.js.map +0 -1
- package/dist/chunk-PDHGJ7GP.js.map +0 -1
- package/dist/chunk-PG4IJL7T.cjs.map +0 -1
- package/dist/chunk-Q2B7W7GA.cjs.map +0 -1
- package/dist/chunk-SUNXO2H2.cjs.map +0 -1
- package/dist/chunk-SUT6SU4I.cjs.map +0 -1
- package/dist/chunk-SWCWNQL5.js.map +0 -1
- package/dist/chunk-U2HTITB4.js.map +0 -1
- package/dist/chunk-UH3MHVDF.cjs.map +0 -1
- package/dist/chunk-URAYY3ZG.cjs +0 -365
- package/dist/chunk-URAYY3ZG.cjs.map +0 -1
- package/dist/chunk-VTMAYC4R.js.map +0 -1
- package/dist/chunk-WWXG4HNX.js.map +0 -1
- package/dist/chunk-WYLVJSGR.cjs.map +0 -1
- package/dist/chunk-XT5ZVU5J.js +0 -306
- package/dist/chunk-XT5ZVU5J.js.map +0 -1
- package/dist/chunk-Y344MAUV.cjs +0 -615
- package/dist/chunk-Y344MAUV.cjs.map +0 -1
- package/dist/chunk-Y5LNMKEY.cjs.map +0 -1
- package/dist/chunk-YARY4I5U.js.map +0 -1
- package/dist/chunk-YHRGDSTK.js.map +0 -1
- package/dist/chunk-Z35VW4BM.cjs.map +0 -1
- package/dist/chunk-Z6C7SDXA.js.map +0 -1
- package/dist/chunk-ZRU7KWNW.cjs.map +0 -1
package/dist/chunk-OMLB6EMJ.cjs
DELETED
|
@@ -1,313 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var chunkQ2B7W7GA_cjs = require('./chunk-Q2B7W7GA.cjs');
|
|
4
|
-
var chunkLTYRUL3Q_cjs = require('./chunk-LTYRUL3Q.cjs');
|
|
5
|
-
var chunkAZORAK4H_cjs = require('./chunk-AZORAK4H.cjs');
|
|
6
|
-
var chunkB34S64RC_cjs = require('./chunk-B34S64RC.cjs');
|
|
7
|
-
var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
|
|
8
|
-
var workspace = require('@mastra/core/workspace');
|
|
9
|
-
|
|
10
|
-
var LIST_STORED_SKILLS_ROUTE = chunkAZORAK4H_cjs.createRoute({
|
|
11
|
-
method: "GET",
|
|
12
|
-
path: "/stored/skills",
|
|
13
|
-
responseType: "json",
|
|
14
|
-
queryParamSchema: chunkQ2B7W7GA_cjs.listStoredSkillsQuerySchema,
|
|
15
|
-
responseSchema: chunkQ2B7W7GA_cjs.listStoredSkillsResponseSchema,
|
|
16
|
-
summary: "List stored skills",
|
|
17
|
-
description: "Returns a paginated list of all skill configurations stored in the database",
|
|
18
|
-
tags: ["Stored Skills"],
|
|
19
|
-
requiresAuth: true,
|
|
20
|
-
handler: async ({ mastra, page, perPage, orderBy, authorId, metadata }) => {
|
|
21
|
-
try {
|
|
22
|
-
const storage = mastra.getStorage();
|
|
23
|
-
if (!storage) {
|
|
24
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Storage is not configured" });
|
|
25
|
-
}
|
|
26
|
-
const skillStore = await storage.getStore("skills");
|
|
27
|
-
if (!skillStore) {
|
|
28
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Skills storage domain is not available" });
|
|
29
|
-
}
|
|
30
|
-
const result = await skillStore.listResolved({
|
|
31
|
-
page,
|
|
32
|
-
perPage,
|
|
33
|
-
orderBy,
|
|
34
|
-
authorId,
|
|
35
|
-
metadata
|
|
36
|
-
});
|
|
37
|
-
return result;
|
|
38
|
-
} catch (error) {
|
|
39
|
-
return chunkB34S64RC_cjs.handleError(error, "Error listing stored skills");
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
var GET_STORED_SKILL_ROUTE = chunkAZORAK4H_cjs.createRoute({
|
|
44
|
-
method: "GET",
|
|
45
|
-
path: "/stored/skills/:storedSkillId",
|
|
46
|
-
responseType: "json",
|
|
47
|
-
pathParamSchema: chunkQ2B7W7GA_cjs.storedSkillIdPathParams,
|
|
48
|
-
responseSchema: chunkQ2B7W7GA_cjs.getStoredSkillResponseSchema,
|
|
49
|
-
summary: "Get stored skill by ID",
|
|
50
|
-
description: "Returns a specific skill from storage by its unique identifier (resolved with active version config)",
|
|
51
|
-
tags: ["Stored Skills"],
|
|
52
|
-
requiresAuth: true,
|
|
53
|
-
handler: async ({ mastra, storedSkillId }) => {
|
|
54
|
-
try {
|
|
55
|
-
const storage = mastra.getStorage();
|
|
56
|
-
if (!storage) {
|
|
57
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Storage is not configured" });
|
|
58
|
-
}
|
|
59
|
-
const skillStore = await storage.getStore("skills");
|
|
60
|
-
if (!skillStore) {
|
|
61
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Skills storage domain is not available" });
|
|
62
|
-
}
|
|
63
|
-
const skill = await skillStore.getByIdResolved(storedSkillId);
|
|
64
|
-
if (!skill) {
|
|
65
|
-
throw new chunk64ITUOXI_cjs.HTTPException(404, { message: `Stored skill with id ${storedSkillId} not found` });
|
|
66
|
-
}
|
|
67
|
-
return skill;
|
|
68
|
-
} catch (error) {
|
|
69
|
-
return chunkB34S64RC_cjs.handleError(error, "Error getting stored skill");
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
var CREATE_STORED_SKILL_ROUTE = chunkAZORAK4H_cjs.createRoute({
|
|
74
|
-
method: "POST",
|
|
75
|
-
path: "/stored/skills",
|
|
76
|
-
responseType: "json",
|
|
77
|
-
bodySchema: chunkQ2B7W7GA_cjs.createStoredSkillBodySchema,
|
|
78
|
-
responseSchema: chunkQ2B7W7GA_cjs.createStoredSkillResponseSchema,
|
|
79
|
-
summary: "Create stored skill",
|
|
80
|
-
description: "Creates a new skill configuration in storage with the provided details",
|
|
81
|
-
tags: ["Stored Skills"],
|
|
82
|
-
requiresAuth: true,
|
|
83
|
-
handler: async ({
|
|
84
|
-
mastra,
|
|
85
|
-
id: providedId,
|
|
86
|
-
authorId,
|
|
87
|
-
name,
|
|
88
|
-
description,
|
|
89
|
-
instructions,
|
|
90
|
-
license,
|
|
91
|
-
compatibility,
|
|
92
|
-
source,
|
|
93
|
-
references,
|
|
94
|
-
scripts,
|
|
95
|
-
assets,
|
|
96
|
-
metadata
|
|
97
|
-
}) => {
|
|
98
|
-
try {
|
|
99
|
-
const storage = mastra.getStorage();
|
|
100
|
-
if (!storage) {
|
|
101
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Storage is not configured" });
|
|
102
|
-
}
|
|
103
|
-
const skillStore = await storage.getStore("skills");
|
|
104
|
-
if (!skillStore) {
|
|
105
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Skills storage domain is not available" });
|
|
106
|
-
}
|
|
107
|
-
const id = providedId || chunkLTYRUL3Q_cjs.toSlug(name);
|
|
108
|
-
if (!id) {
|
|
109
|
-
throw new chunk64ITUOXI_cjs.HTTPException(400, {
|
|
110
|
-
message: "Could not derive skill ID from name. Please provide an explicit id."
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
const existing = await skillStore.getById(id);
|
|
114
|
-
if (existing) {
|
|
115
|
-
throw new chunk64ITUOXI_cjs.HTTPException(409, { message: `Skill with id ${id} already exists` });
|
|
116
|
-
}
|
|
117
|
-
await skillStore.create({
|
|
118
|
-
skill: {
|
|
119
|
-
id,
|
|
120
|
-
authorId,
|
|
121
|
-
name,
|
|
122
|
-
description,
|
|
123
|
-
instructions,
|
|
124
|
-
license,
|
|
125
|
-
compatibility,
|
|
126
|
-
source,
|
|
127
|
-
references,
|
|
128
|
-
scripts,
|
|
129
|
-
assets,
|
|
130
|
-
metadata
|
|
131
|
-
}
|
|
132
|
-
});
|
|
133
|
-
const resolved = await skillStore.getByIdResolved(id);
|
|
134
|
-
if (!resolved) {
|
|
135
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Failed to resolve created skill" });
|
|
136
|
-
}
|
|
137
|
-
return resolved;
|
|
138
|
-
} catch (error) {
|
|
139
|
-
return chunkB34S64RC_cjs.handleError(error, "Error creating stored skill");
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
});
|
|
143
|
-
var UPDATE_STORED_SKILL_ROUTE = chunkAZORAK4H_cjs.createRoute({
|
|
144
|
-
method: "PATCH",
|
|
145
|
-
path: "/stored/skills/:storedSkillId",
|
|
146
|
-
responseType: "json",
|
|
147
|
-
pathParamSchema: chunkQ2B7W7GA_cjs.storedSkillIdPathParams,
|
|
148
|
-
bodySchema: chunkQ2B7W7GA_cjs.updateStoredSkillBodySchema,
|
|
149
|
-
responseSchema: chunkQ2B7W7GA_cjs.updateStoredSkillResponseSchema,
|
|
150
|
-
summary: "Update stored skill",
|
|
151
|
-
description: "Updates an existing skill in storage with the provided fields",
|
|
152
|
-
tags: ["Stored Skills"],
|
|
153
|
-
requiresAuth: true,
|
|
154
|
-
handler: async ({
|
|
155
|
-
mastra,
|
|
156
|
-
storedSkillId,
|
|
157
|
-
// Entity-level fields
|
|
158
|
-
authorId,
|
|
159
|
-
// Config fields (snapshot-level)
|
|
160
|
-
name,
|
|
161
|
-
description,
|
|
162
|
-
instructions,
|
|
163
|
-
license,
|
|
164
|
-
compatibility,
|
|
165
|
-
source,
|
|
166
|
-
references,
|
|
167
|
-
scripts,
|
|
168
|
-
assets,
|
|
169
|
-
metadata
|
|
170
|
-
}) => {
|
|
171
|
-
try {
|
|
172
|
-
const storage = mastra.getStorage();
|
|
173
|
-
if (!storage) {
|
|
174
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Storage is not configured" });
|
|
175
|
-
}
|
|
176
|
-
const skillStore = await storage.getStore("skills");
|
|
177
|
-
if (!skillStore) {
|
|
178
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Skills storage domain is not available" });
|
|
179
|
-
}
|
|
180
|
-
const existing = await skillStore.getById(storedSkillId);
|
|
181
|
-
if (!existing) {
|
|
182
|
-
throw new chunk64ITUOXI_cjs.HTTPException(404, { message: `Stored skill with id ${storedSkillId} not found` });
|
|
183
|
-
}
|
|
184
|
-
await skillStore.update({
|
|
185
|
-
id: storedSkillId,
|
|
186
|
-
authorId,
|
|
187
|
-
name,
|
|
188
|
-
description,
|
|
189
|
-
instructions,
|
|
190
|
-
license,
|
|
191
|
-
compatibility,
|
|
192
|
-
source,
|
|
193
|
-
references,
|
|
194
|
-
scripts,
|
|
195
|
-
assets,
|
|
196
|
-
metadata
|
|
197
|
-
});
|
|
198
|
-
const resolved = await skillStore.getByIdResolved(storedSkillId);
|
|
199
|
-
if (!resolved) {
|
|
200
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Failed to resolve updated skill" });
|
|
201
|
-
}
|
|
202
|
-
return resolved;
|
|
203
|
-
} catch (error) {
|
|
204
|
-
return chunkB34S64RC_cjs.handleError(error, "Error updating stored skill");
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
});
|
|
208
|
-
var DELETE_STORED_SKILL_ROUTE = chunkAZORAK4H_cjs.createRoute({
|
|
209
|
-
method: "DELETE",
|
|
210
|
-
path: "/stored/skills/:storedSkillId",
|
|
211
|
-
responseType: "json",
|
|
212
|
-
pathParamSchema: chunkQ2B7W7GA_cjs.storedSkillIdPathParams,
|
|
213
|
-
responseSchema: chunkQ2B7W7GA_cjs.deleteStoredSkillResponseSchema,
|
|
214
|
-
summary: "Delete stored skill",
|
|
215
|
-
description: "Deletes a skill from storage by its unique identifier",
|
|
216
|
-
tags: ["Stored Skills"],
|
|
217
|
-
requiresAuth: true,
|
|
218
|
-
handler: async ({ mastra, storedSkillId }) => {
|
|
219
|
-
try {
|
|
220
|
-
const storage = mastra.getStorage();
|
|
221
|
-
if (!storage) {
|
|
222
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Storage is not configured" });
|
|
223
|
-
}
|
|
224
|
-
const skillStore = await storage.getStore("skills");
|
|
225
|
-
if (!skillStore) {
|
|
226
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Skills storage domain is not available" });
|
|
227
|
-
}
|
|
228
|
-
const existing = await skillStore.getById(storedSkillId);
|
|
229
|
-
if (!existing) {
|
|
230
|
-
throw new chunk64ITUOXI_cjs.HTTPException(404, { message: `Stored skill with id ${storedSkillId} not found` });
|
|
231
|
-
}
|
|
232
|
-
await skillStore.delete(storedSkillId);
|
|
233
|
-
return {
|
|
234
|
-
success: true,
|
|
235
|
-
message: `Skill ${storedSkillId} deleted successfully`
|
|
236
|
-
};
|
|
237
|
-
} catch (error) {
|
|
238
|
-
return chunkB34S64RC_cjs.handleError(error, "Error deleting stored skill");
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
});
|
|
242
|
-
var PUBLISH_STORED_SKILL_ROUTE = chunkAZORAK4H_cjs.createRoute({
|
|
243
|
-
method: "POST",
|
|
244
|
-
path: "/stored/skills/:storedSkillId/publish",
|
|
245
|
-
responseType: "json",
|
|
246
|
-
pathParamSchema: chunkQ2B7W7GA_cjs.storedSkillIdPathParams,
|
|
247
|
-
bodySchema: chunkQ2B7W7GA_cjs.publishStoredSkillBodySchema,
|
|
248
|
-
responseSchema: chunkQ2B7W7GA_cjs.publishStoredSkillResponseSchema,
|
|
249
|
-
summary: "Publish stored skill",
|
|
250
|
-
description: "Snapshots the skill directory from the filesystem into content-addressable blob storage, creates a new version with a tree manifest, and marks the skill as published",
|
|
251
|
-
tags: ["Stored Skills"],
|
|
252
|
-
requiresAuth: true,
|
|
253
|
-
handler: async ({ mastra, storedSkillId, skillPath }) => {
|
|
254
|
-
try {
|
|
255
|
-
const storage = mastra.getStorage();
|
|
256
|
-
if (!storage) {
|
|
257
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Storage is not configured" });
|
|
258
|
-
}
|
|
259
|
-
const skillStore = await storage.getStore("skills");
|
|
260
|
-
if (!skillStore) {
|
|
261
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Skills storage domain is not available" });
|
|
262
|
-
}
|
|
263
|
-
const blobStore = await storage.getStore("blobs");
|
|
264
|
-
if (!blobStore) {
|
|
265
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Blob storage domain is not available" });
|
|
266
|
-
}
|
|
267
|
-
const existing = await skillStore.getById(storedSkillId);
|
|
268
|
-
if (!existing) {
|
|
269
|
-
throw new chunk64ITUOXI_cjs.HTTPException(404, { message: `Stored skill with id ${storedSkillId} not found` });
|
|
270
|
-
}
|
|
271
|
-
const path = await import('path');
|
|
272
|
-
const resolvedPath = path.default.resolve(skillPath);
|
|
273
|
-
const allowedBase = path.default.resolve(process.env.SKILLS_BASE_DIR || process.cwd());
|
|
274
|
-
if (!resolvedPath.startsWith(allowedBase + path.default.sep) && resolvedPath !== allowedBase) {
|
|
275
|
-
throw new chunk64ITUOXI_cjs.HTTPException(400, {
|
|
276
|
-
message: `skillPath must be within the allowed directory: ${allowedBase}`
|
|
277
|
-
});
|
|
278
|
-
}
|
|
279
|
-
const source = new workspace.LocalSkillSource();
|
|
280
|
-
const { publishSkillFromSource } = await import('@mastra/core/workspace');
|
|
281
|
-
const { snapshot, tree } = await publishSkillFromSource(source, resolvedPath, blobStore);
|
|
282
|
-
await skillStore.update({
|
|
283
|
-
id: storedSkillId,
|
|
284
|
-
...snapshot,
|
|
285
|
-
tree,
|
|
286
|
-
status: "published"
|
|
287
|
-
});
|
|
288
|
-
const latestVersion = await skillStore.getLatestVersion(storedSkillId);
|
|
289
|
-
if (latestVersion) {
|
|
290
|
-
await skillStore.update({
|
|
291
|
-
id: storedSkillId,
|
|
292
|
-
activeVersionId: latestVersion.id
|
|
293
|
-
});
|
|
294
|
-
}
|
|
295
|
-
const resolved = await skillStore.getByIdResolved(storedSkillId);
|
|
296
|
-
if (!resolved) {
|
|
297
|
-
throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Failed to resolve skill after publish" });
|
|
298
|
-
}
|
|
299
|
-
return resolved;
|
|
300
|
-
} catch (error) {
|
|
301
|
-
return chunkB34S64RC_cjs.handleError(error, "Error publishing stored skill");
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
});
|
|
305
|
-
|
|
306
|
-
exports.CREATE_STORED_SKILL_ROUTE = CREATE_STORED_SKILL_ROUTE;
|
|
307
|
-
exports.DELETE_STORED_SKILL_ROUTE = DELETE_STORED_SKILL_ROUTE;
|
|
308
|
-
exports.GET_STORED_SKILL_ROUTE = GET_STORED_SKILL_ROUTE;
|
|
309
|
-
exports.LIST_STORED_SKILLS_ROUTE = LIST_STORED_SKILLS_ROUTE;
|
|
310
|
-
exports.PUBLISH_STORED_SKILL_ROUTE = PUBLISH_STORED_SKILL_ROUTE;
|
|
311
|
-
exports.UPDATE_STORED_SKILL_ROUTE = UPDATE_STORED_SKILL_ROUTE;
|
|
312
|
-
//# sourceMappingURL=chunk-OMLB6EMJ.cjs.map
|
|
313
|
-
//# sourceMappingURL=chunk-OMLB6EMJ.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/handlers/stored-skills.ts"],"names":["createRoute","listStoredSkillsQuerySchema","listStoredSkillsResponseSchema","HTTPException","handleError","storedSkillIdPathParams","getStoredSkillResponseSchema","createStoredSkillBodySchema","createStoredSkillResponseSchema","toSlug","updateStoredSkillBodySchema","updateStoredSkillResponseSchema","deleteStoredSkillResponseSchema","publishStoredSkillBodySchema","publishStoredSkillResponseSchema","LocalSkillSource"],"mappings":"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","file":"chunk-OMLB6EMJ.cjs","sourcesContent":["import { LocalSkillSource } from '@mastra/core/workspace';\n\nimport { HTTPException } from '../http-exception';\nimport {\n storedSkillIdPathParams,\n listStoredSkillsQuerySchema,\n createStoredSkillBodySchema,\n updateStoredSkillBodySchema,\n publishStoredSkillBodySchema,\n listStoredSkillsResponseSchema,\n getStoredSkillResponseSchema,\n createStoredSkillResponseSchema,\n updateStoredSkillResponseSchema,\n deleteStoredSkillResponseSchema,\n publishStoredSkillResponseSchema,\n} from '../schemas/stored-skills';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { toSlug } from '../utils';\n\nimport { handleError } from './error';\n\n// ============================================================================\n// Route Definitions\n// ============================================================================\n\n/**\n * GET /stored/skills - List all stored skills\n */\nexport const LIST_STORED_SKILLS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/skills',\n responseType: 'json',\n queryParamSchema: listStoredSkillsQuerySchema,\n responseSchema: listStoredSkillsResponseSchema,\n summary: 'List stored skills',\n description: 'Returns a paginated list of all skill configurations stored in the database',\n tags: ['Stored Skills'],\n requiresAuth: true,\n handler: async ({ mastra, page, perPage, orderBy, authorId, metadata }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const skillStore = await storage.getStore('skills');\n if (!skillStore) {\n throw new HTTPException(500, { message: 'Skills storage domain is not available' });\n }\n\n const result = await skillStore.listResolved({\n page,\n perPage,\n orderBy,\n authorId,\n metadata,\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error listing stored skills');\n }\n },\n});\n\n/**\n * GET /stored/skills/:storedSkillId - Get a stored skill by ID\n */\nexport const GET_STORED_SKILL_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/skills/:storedSkillId',\n responseType: 'json',\n pathParamSchema: storedSkillIdPathParams,\n responseSchema: getStoredSkillResponseSchema,\n summary: 'Get stored skill by ID',\n description: 'Returns a specific skill from storage by its unique identifier (resolved with active version config)',\n tags: ['Stored Skills'],\n requiresAuth: true,\n handler: async ({ mastra, storedSkillId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const skillStore = await storage.getStore('skills');\n if (!skillStore) {\n throw new HTTPException(500, { message: 'Skills storage domain is not available' });\n }\n\n const skill = await skillStore.getByIdResolved(storedSkillId);\n\n if (!skill) {\n throw new HTTPException(404, { message: `Stored skill with id ${storedSkillId} not found` });\n }\n\n return skill;\n } catch (error) {\n return handleError(error, 'Error getting stored skill');\n }\n },\n});\n\n/**\n * POST /stored/skills - Create a new stored skill\n */\nexport const CREATE_STORED_SKILL_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/skills',\n responseType: 'json',\n bodySchema: createStoredSkillBodySchema,\n responseSchema: createStoredSkillResponseSchema,\n summary: 'Create stored skill',\n description: 'Creates a new skill configuration in storage with the provided details',\n tags: ['Stored Skills'],\n requiresAuth: true,\n handler: async ({\n mastra,\n id: providedId,\n authorId,\n name,\n description,\n instructions,\n license,\n compatibility,\n source,\n references,\n scripts,\n assets,\n metadata,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const skillStore = await storage.getStore('skills');\n if (!skillStore) {\n throw new HTTPException(500, { message: 'Skills storage domain is not available' });\n }\n\n // Derive ID from name if not explicitly provided\n const id = providedId || toSlug(name);\n\n if (!id) {\n throw new HTTPException(400, {\n message: 'Could not derive skill ID from name. Please provide an explicit id.',\n });\n }\n\n // Check if skill with this ID already exists\n const existing = await skillStore.getById(id);\n if (existing) {\n throw new HTTPException(409, { message: `Skill with id ${id} already exists` });\n }\n\n await skillStore.create({\n skill: {\n id,\n authorId,\n name,\n description,\n instructions,\n license,\n compatibility,\n source,\n references,\n scripts,\n assets,\n metadata,\n },\n });\n\n // Return the resolved skill (thin record + version config)\n const resolved = await skillStore.getByIdResolved(id);\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve created skill' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error creating stored skill');\n }\n },\n});\n\n/**\n * PATCH /stored/skills/:storedSkillId - Update a stored skill\n */\nexport const UPDATE_STORED_SKILL_ROUTE = createRoute({\n method: 'PATCH',\n path: '/stored/skills/:storedSkillId',\n responseType: 'json',\n pathParamSchema: storedSkillIdPathParams,\n bodySchema: updateStoredSkillBodySchema,\n responseSchema: updateStoredSkillResponseSchema,\n summary: 'Update stored skill',\n description: 'Updates an existing skill in storage with the provided fields',\n tags: ['Stored Skills'],\n requiresAuth: true,\n handler: async ({\n mastra,\n storedSkillId,\n // Entity-level fields\n authorId,\n // Config fields (snapshot-level)\n name,\n description,\n instructions,\n license,\n compatibility,\n source,\n references,\n scripts,\n assets,\n metadata,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const skillStore = await storage.getStore('skills');\n if (!skillStore) {\n throw new HTTPException(500, { message: 'Skills storage domain is not available' });\n }\n\n // Check if skill exists\n const existing = await skillStore.getById(storedSkillId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored skill with id ${storedSkillId} not found` });\n }\n\n // Update the skill with both entity-level and config-level fields\n // The storage layer handles separating these into record updates vs new-version creation\n await skillStore.update({\n id: storedSkillId,\n authorId,\n name,\n description,\n instructions,\n license,\n compatibility,\n source,\n references,\n scripts,\n assets,\n metadata,\n });\n\n // Return the resolved skill with the updated config\n const resolved = await skillStore.getByIdResolved(storedSkillId);\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve updated skill' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error updating stored skill');\n }\n },\n});\n\n/**\n * DELETE /stored/skills/:storedSkillId - Delete a stored skill\n */\nexport const DELETE_STORED_SKILL_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/skills/:storedSkillId',\n responseType: 'json',\n pathParamSchema: storedSkillIdPathParams,\n responseSchema: deleteStoredSkillResponseSchema,\n summary: 'Delete stored skill',\n description: 'Deletes a skill from storage by its unique identifier',\n tags: ['Stored Skills'],\n requiresAuth: true,\n handler: async ({ mastra, storedSkillId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const skillStore = await storage.getStore('skills');\n if (!skillStore) {\n throw new HTTPException(500, { message: 'Skills storage domain is not available' });\n }\n\n // Check if skill exists\n const existing = await skillStore.getById(storedSkillId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored skill with id ${storedSkillId} not found` });\n }\n\n await skillStore.delete(storedSkillId);\n\n return {\n success: true,\n message: `Skill ${storedSkillId} deleted successfully`,\n };\n } catch (error) {\n return handleError(error, 'Error deleting stored skill');\n }\n },\n});\n\n/**\n * POST /stored/skills/:storedSkillId/publish - Publish a skill from filesystem\n * Walks the skill directory, hashes files into blob store, creates a new version\n * with the tree manifest, and sets activeVersionId.\n */\nexport const PUBLISH_STORED_SKILL_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/skills/:storedSkillId/publish',\n responseType: 'json',\n pathParamSchema: storedSkillIdPathParams,\n bodySchema: publishStoredSkillBodySchema,\n responseSchema: publishStoredSkillResponseSchema,\n summary: 'Publish stored skill',\n description:\n 'Snapshots the skill directory from the filesystem into content-addressable blob storage, creates a new version with a tree manifest, and marks the skill as published',\n tags: ['Stored Skills'],\n requiresAuth: true,\n handler: async ({ mastra, storedSkillId, skillPath }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const skillStore = await storage.getStore('skills');\n if (!skillStore) {\n throw new HTTPException(500, { message: 'Skills storage domain is not available' });\n }\n\n const blobStore = await storage.getStore('blobs');\n if (!blobStore) {\n throw new HTTPException(500, { message: 'Blob storage domain is not available' });\n }\n\n // Verify skill exists\n const existing = await skillStore.getById(storedSkillId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored skill with id ${storedSkillId} not found` });\n }\n\n // Validate skillPath to prevent path traversal\n const path = await import('node:path');\n const resolvedPath = path.default.resolve(skillPath);\n const allowedBase = path.default.resolve(process.env.SKILLS_BASE_DIR || process.cwd());\n if (!resolvedPath.startsWith(allowedBase + path.default.sep) && resolvedPath !== allowedBase) {\n throw new HTTPException(400, {\n message: `skillPath must be within the allowed directory: ${allowedBase}`,\n });\n }\n\n // Use LocalSkillSource to read from the server filesystem\n const source = new LocalSkillSource();\n const { publishSkillFromSource } = await import('@mastra/core/workspace');\n\n const { snapshot, tree } = await publishSkillFromSource(source, resolvedPath, blobStore);\n\n // Update the skill with new version data + tree\n await skillStore.update({\n id: storedSkillId,\n ...snapshot,\n tree,\n status: 'published',\n });\n\n // Point activeVersionId to the newly created version\n const latestVersion = await skillStore.getLatestVersion(storedSkillId);\n if (latestVersion) {\n await skillStore.update({\n id: storedSkillId,\n activeVersionId: latestVersion.id,\n });\n }\n\n const resolved = await skillStore.getByIdResolved(storedSkillId);\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve skill after publish' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error publishing stored skill');\n }\n },\n});\n"]}
|
package/dist/chunk-P23KBWKB.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { HTTPException } from './chunk-6QWQZI4Q.js';
|
|
2
|
-
|
|
3
|
-
// src/server/handlers/error.ts
|
|
4
|
-
function formatZodError(error, context) {
|
|
5
|
-
const issues = error.issues.map((e) => ({
|
|
6
|
-
field: e.path.length > 0 ? e.path.map((p) => String(p)).join(".") : "root",
|
|
7
|
-
message: e.message
|
|
8
|
-
}));
|
|
9
|
-
return {
|
|
10
|
-
error: `Invalid ${context}`,
|
|
11
|
-
issues
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
function handleError(error, defaultMessage) {
|
|
15
|
-
const apiError = error;
|
|
16
|
-
const apiErrorStatus = apiError.status || apiError.details?.status || 500;
|
|
17
|
-
throw new HTTPException(apiErrorStatus, {
|
|
18
|
-
message: apiError.message || defaultMessage,
|
|
19
|
-
stack: apiError.stack,
|
|
20
|
-
cause: apiError.cause
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export { formatZodError, handleError };
|
|
25
|
-
//# sourceMappingURL=chunk-P23KBWKB.js.map
|
|
26
|
-
//# sourceMappingURL=chunk-P23KBWKB.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/handlers/error.ts"],"names":[],"mappings":";;;AAmBO,SAAS,cAAA,CACd,OACA,OAAA,EACsE;AACtE,EAAA,MAAM,MAAA,GAAS,KAAA,CAAM,MAAA,CAAO,GAAA,CAAI,CAAA,CAAA,MAAM;AAAA,IACpC,KAAA,EAAO,CAAA,CAAE,IAAA,CAAK,MAAA,GAAS,IAAI,CAAA,CAAE,IAAA,CAAK,GAAA,CAAI,CAAA,CAAA,KAAK,OAAO,CAAC,CAAC,CAAA,CAAE,IAAA,CAAK,GAAG,CAAA,GAAI,MAAA;AAAA,IAClE,SAAS,CAAA,CAAE;AAAA,GACb,CAAE,CAAA;AAEF,EAAA,OAAO;AAAA,IACL,KAAA,EAAO,WAAW,OAAO,CAAA,CAAA;AAAA,IACzB;AAAA,GACF;AACF;AAGO,SAAS,WAAA,CAAY,OAAgB,cAAA,EAA+B;AACzE,EAAA,MAAM,QAAA,GAAW,KAAA;AAEjB,EAAA,MAAM,cAAA,GAAiB,QAAA,CAAS,MAAA,IAAU,QAAA,CAAS,SAAS,MAAA,IAAU,GAAA;AAEtE,EAAA,MAAM,IAAI,cAAc,cAAA,EAA8B;AAAA,IACpD,OAAA,EAAS,SAAS,OAAA,IAAW,cAAA;AAAA,IAC7B,OAAO,QAAA,CAAS,KAAA;AAAA,IAChB,OAAO,QAAA,CAAS;AAAA,GACjB,CAAA;AACH","file":"chunk-P23KBWKB.js","sourcesContent":["import { HTTPException } from '../http-exception';\nimport type { StatusCode } from '../http-exception';\nimport type { ApiError } from '../types';\n\n/**\n * Duck-typed interface for ZodError-like objects.\n * Note: Zod v4 uses PropertyKey[] (string | number | symbol) for path.\n */\ninterface ZodErrorLike {\n issues: Array<{\n path: PropertyKey[];\n message: string;\n }>;\n}\n\n/**\n * Formats a ZodError into a structured validation error response.\n * Returns an object with an error message and an array of field-specific issues.\n */\nexport function formatZodError(\n error: ZodErrorLike,\n context: string,\n): { error: string; issues: Array<{ field: string; message: string }> } {\n const issues = error.issues.map(e => ({\n field: e.path.length > 0 ? e.path.map(p => String(p)).join('.') : 'root',\n message: e.message,\n }));\n\n return {\n error: `Invalid ${context}`,\n issues,\n };\n}\n\n// Helper to handle errors consistently\nexport function handleError(error: unknown, defaultMessage: string): never {\n const apiError = error as ApiError;\n\n const apiErrorStatus = apiError.status || apiError.details?.status || 500;\n\n throw new HTTPException(apiErrorStatus as StatusCode, {\n message: apiError.message || defaultMessage,\n stack: apiError.stack,\n cause: apiError.cause,\n });\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/schemas/stored-skills.ts"],"names":[],"mappings":"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","file":"chunk-PDHGJ7GP.js","sourcesContent":["import { z } from 'zod/v4';\n\nimport { paginationInfoSchema, createPagePaginationSchema } from './common';\n\n// ============================================================================\n// Path Parameter Schemas\n// ============================================================================\n\nexport const storedSkillIdPathParams = z.object({\n storedSkillId: z.string().describe('Unique identifier for the stored skill'),\n});\n\n// ============================================================================\n// Query Parameter Schemas\n// ============================================================================\n\nconst storageOrderBySchema = z.object({\n field: z.enum(['createdAt', 'updatedAt']).optional(),\n direction: z.enum(['ASC', 'DESC']).optional(),\n});\n\nexport const listStoredSkillsQuerySchema = createPagePaginationSchema(100).extend({\n orderBy: storageOrderBySchema.optional(),\n authorId: z.string().optional().describe('Filter skills by author identifier'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Filter skills by metadata key-value pairs'),\n});\n\n// ============================================================================\n// Body Parameter Schemas\n// ============================================================================\n\nconst sourceSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('external'),\n packagePath: z.string().describe('Package path for external source'),\n }),\n z.object({\n type: z.literal('local'),\n projectPath: z.string().describe('Project path for local source'),\n }),\n z.object({\n type: z.literal('managed'),\n mastraPath: z.string().describe('Mastra path for managed source'),\n }),\n]);\n\nconst snapshotConfigSchema = z.object({\n name: z.string().describe('Name of the skill'),\n description: z.string().describe('Description of what the skill does and when to use it'),\n instructions: z.string().describe('Markdown instructions for the skill'),\n license: z.string().optional().describe('License identifier for the skill'),\n compatibility: z.unknown().optional().describe('Compatibility requirements'),\n source: sourceSchema.optional().describe('Source location of the skill'),\n references: z.array(z.string()).optional().describe('List of reference file paths'),\n scripts: z.array(z.string()).optional().describe('List of script file paths'),\n assets: z.array(z.string()).optional().describe('List of asset file paths'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata for the skill'),\n});\n\nexport const createStoredSkillBodySchema = z\n .object({\n id: z.string().optional().describe('Unique identifier. If not provided, derived from name.'),\n authorId: z.string().optional().describe('Author identifier for multi-tenant filtering'),\n })\n .merge(snapshotConfigSchema);\n\nexport const updateStoredSkillBodySchema = z\n .object({\n authorId: z.string().optional(),\n })\n .partial()\n .merge(snapshotConfigSchema.partial());\n\n// ============================================================================\n// Response Schemas\n// ============================================================================\n\nexport const storedSkillSchema = z.object({\n id: z.string(),\n status: z.string().describe('Skill status: draft, published, or archived'),\n activeVersionId: z.string().optional(),\n authorId: z.string().optional(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n name: z.string().describe('Name of the skill'),\n description: z.string().describe('Description of what the skill does and when to use it'),\n instructions: z.string().describe('Markdown instructions for the skill'),\n license: z.string().optional().describe('License identifier for the skill'),\n compatibility: z.unknown().optional().describe('Compatibility requirements'),\n source: sourceSchema.optional().describe('Source location of the skill'),\n references: z.array(z.string()).optional().describe('List of reference file paths'),\n scripts: z.array(z.string()).optional().describe('List of script file paths'),\n assets: z.array(z.string()).optional().describe('List of asset file paths'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata for the skill'),\n});\n\nexport const listStoredSkillsResponseSchema = paginationInfoSchema.extend({\n skills: z.array(storedSkillSchema),\n});\n\nexport const getStoredSkillResponseSchema = storedSkillSchema;\nexport const createStoredSkillResponseSchema = storedSkillSchema;\n\nexport const updateStoredSkillResponseSchema = z.union([\n z.object({\n id: z.string(),\n status: z.string(),\n activeVersionId: z.string().optional(),\n authorId: z.string().optional(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n }),\n storedSkillSchema,\n]);\n\nexport const deleteStoredSkillResponseSchema = z.object({\n success: z.boolean(),\n message: z.string(),\n});\n\n// ============================================================================\n// Publish / Rollback Schemas\n// ============================================================================\n\nexport const publishStoredSkillBodySchema = z.object({\n skillPath: z.string().describe('Path to the skill directory on the server filesystem (containing SKILL.md)'),\n});\n\nexport const publishStoredSkillResponseSchema = storedSkillSchema;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/handlers/stored-workspaces.ts"],"names":["createRoute","listStoredWorkspacesQuerySchema","listStoredWorkspacesResponseSchema","HTTPException","handleError","storedWorkspaceIdPathParams","getStoredWorkspaceResponseSchema","createStoredWorkspaceBodySchema","createStoredWorkspaceResponseSchema","toSlug","updateStoredWorkspaceBodySchema","updateStoredWorkspaceResponseSchema","deleteStoredWorkspaceResponseSchema"],"mappings":"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","file":"chunk-PG4IJL7T.cjs","sourcesContent":["import { HTTPException } from '../http-exception';\nimport {\n storedWorkspaceIdPathParams,\n listStoredWorkspacesQuerySchema,\n createStoredWorkspaceBodySchema,\n updateStoredWorkspaceBodySchema,\n listStoredWorkspacesResponseSchema,\n getStoredWorkspaceResponseSchema,\n createStoredWorkspaceResponseSchema,\n updateStoredWorkspaceResponseSchema,\n deleteStoredWorkspaceResponseSchema,\n} from '../schemas/stored-workspaces';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { toSlug } from '../utils';\n\nimport { handleError } from './error';\n\n// ============================================================================\n// Route Definitions\n// ============================================================================\n\n/**\n * GET /stored/workspaces - List all stored workspaces\n */\nexport const LIST_STORED_WORKSPACES_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/workspaces',\n responseType: 'json',\n queryParamSchema: listStoredWorkspacesQuerySchema,\n responseSchema: listStoredWorkspacesResponseSchema,\n summary: 'List stored workspaces',\n description: 'Returns a paginated list of all workspace configurations stored in the database',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, page, perPage, orderBy, authorId, metadata }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n const result = await workspaceStore.listResolved({\n page,\n perPage,\n orderBy,\n authorId,\n metadata,\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error listing stored workspaces');\n }\n },\n});\n\n/**\n * GET /stored/workspaces/:storedWorkspaceId - Get a stored workspace by ID\n */\nexport const GET_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n responseSchema: getStoredWorkspaceResponseSchema,\n summary: 'Get stored workspace by ID',\n description:\n 'Returns a specific workspace from storage by its unique identifier (resolved with active version config)',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, storedWorkspaceId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n const workspace = await workspaceStore.getByIdResolved(storedWorkspaceId);\n\n if (!workspace) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n\n return workspace;\n } catch (error) {\n return handleError(error, 'Error getting stored workspace');\n }\n },\n});\n\n/**\n * POST /stored/workspaces - Create a new stored workspace\n */\nexport const CREATE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/workspaces',\n responseType: 'json',\n bodySchema: createStoredWorkspaceBodySchema,\n responseSchema: createStoredWorkspaceResponseSchema,\n summary: 'Create stored workspace',\n description: 'Creates a new workspace configuration in storage with the provided settings',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({\n mastra,\n id: providedId,\n authorId,\n metadata,\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Derive ID from name if not explicitly provided\n const id = providedId || toSlug(name);\n\n if (!id) {\n throw new HTTPException(400, {\n message: 'Could not derive workspace ID from name. Please provide an explicit id.',\n });\n }\n\n // Check if workspace with this ID already exists\n const existing = await workspaceStore.getById(id);\n if (existing) {\n throw new HTTPException(409, { message: `Workspace with id ${id} already exists` });\n }\n\n await workspaceStore.create({\n workspace: {\n id,\n authorId,\n metadata,\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n },\n });\n\n // Return the resolved workspace (thin record + version config)\n const resolved = await workspaceStore.getByIdResolved(id);\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve created workspace' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error creating stored workspace');\n }\n },\n});\n\n/**\n * PATCH /stored/workspaces/:storedWorkspaceId - Update a stored workspace\n */\nexport const UPDATE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'PATCH',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n bodySchema: updateStoredWorkspaceBodySchema,\n responseSchema: updateStoredWorkspaceResponseSchema,\n summary: 'Update stored workspace',\n description: 'Updates an existing workspace in storage with the provided fields',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({\n mastra,\n storedWorkspaceId,\n // Metadata-level fields\n authorId,\n metadata,\n // Config fields (snapshot-level)\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Check if workspace exists\n const existing = await workspaceStore.getById(storedWorkspaceId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n\n // Update the workspace with both metadata-level and config-level fields\n // The storage layer handles separating these into record updates vs new-version creation\n await workspaceStore.update({\n id: storedWorkspaceId,\n authorId,\n metadata,\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n });\n\n // Return the resolved workspace with the updated config\n const resolved = await workspaceStore.getByIdResolved(storedWorkspaceId);\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve updated workspace' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error updating stored workspace');\n }\n },\n});\n\n/**\n * DELETE /stored/workspaces/:storedWorkspaceId - Delete a stored workspace\n */\nexport const DELETE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n responseSchema: deleteStoredWorkspaceResponseSchema,\n summary: 'Delete stored workspace',\n description: 'Deletes a workspace from storage by its unique identifier',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, storedWorkspaceId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Check if workspace exists\n const existing = await workspaceStore.getById(storedWorkspaceId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n\n await workspaceStore.delete(storedWorkspaceId);\n\n return {\n success: true,\n message: `Workspace ${storedWorkspaceId} deleted successfully`,\n };\n } catch (error) {\n return handleError(error, 'Error deleting stored workspace');\n }\n },\n});\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/schemas/stored-skills.ts"],"names":["z","createPagePaginationSchema","paginationInfoSchema"],"mappings":"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","file":"chunk-Q2B7W7GA.cjs","sourcesContent":["import { z } from 'zod/v4';\n\nimport { paginationInfoSchema, createPagePaginationSchema } from './common';\n\n// ============================================================================\n// Path Parameter Schemas\n// ============================================================================\n\nexport const storedSkillIdPathParams = z.object({\n storedSkillId: z.string().describe('Unique identifier for the stored skill'),\n});\n\n// ============================================================================\n// Query Parameter Schemas\n// ============================================================================\n\nconst storageOrderBySchema = z.object({\n field: z.enum(['createdAt', 'updatedAt']).optional(),\n direction: z.enum(['ASC', 'DESC']).optional(),\n});\n\nexport const listStoredSkillsQuerySchema = createPagePaginationSchema(100).extend({\n orderBy: storageOrderBySchema.optional(),\n authorId: z.string().optional().describe('Filter skills by author identifier'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Filter skills by metadata key-value pairs'),\n});\n\n// ============================================================================\n// Body Parameter Schemas\n// ============================================================================\n\nconst sourceSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('external'),\n packagePath: z.string().describe('Package path for external source'),\n }),\n z.object({\n type: z.literal('local'),\n projectPath: z.string().describe('Project path for local source'),\n }),\n z.object({\n type: z.literal('managed'),\n mastraPath: z.string().describe('Mastra path for managed source'),\n }),\n]);\n\nconst snapshotConfigSchema = z.object({\n name: z.string().describe('Name of the skill'),\n description: z.string().describe('Description of what the skill does and when to use it'),\n instructions: z.string().describe('Markdown instructions for the skill'),\n license: z.string().optional().describe('License identifier for the skill'),\n compatibility: z.unknown().optional().describe('Compatibility requirements'),\n source: sourceSchema.optional().describe('Source location of the skill'),\n references: z.array(z.string()).optional().describe('List of reference file paths'),\n scripts: z.array(z.string()).optional().describe('List of script file paths'),\n assets: z.array(z.string()).optional().describe('List of asset file paths'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata for the skill'),\n});\n\nexport const createStoredSkillBodySchema = z\n .object({\n id: z.string().optional().describe('Unique identifier. If not provided, derived from name.'),\n authorId: z.string().optional().describe('Author identifier for multi-tenant filtering'),\n })\n .merge(snapshotConfigSchema);\n\nexport const updateStoredSkillBodySchema = z\n .object({\n authorId: z.string().optional(),\n })\n .partial()\n .merge(snapshotConfigSchema.partial());\n\n// ============================================================================\n// Response Schemas\n// ============================================================================\n\nexport const storedSkillSchema = z.object({\n id: z.string(),\n status: z.string().describe('Skill status: draft, published, or archived'),\n activeVersionId: z.string().optional(),\n authorId: z.string().optional(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n name: z.string().describe('Name of the skill'),\n description: z.string().describe('Description of what the skill does and when to use it'),\n instructions: z.string().describe('Markdown instructions for the skill'),\n license: z.string().optional().describe('License identifier for the skill'),\n compatibility: z.unknown().optional().describe('Compatibility requirements'),\n source: sourceSchema.optional().describe('Source location of the skill'),\n references: z.array(z.string()).optional().describe('List of reference file paths'),\n scripts: z.array(z.string()).optional().describe('List of script file paths'),\n assets: z.array(z.string()).optional().describe('List of asset file paths'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata for the skill'),\n});\n\nexport const listStoredSkillsResponseSchema = paginationInfoSchema.extend({\n skills: z.array(storedSkillSchema),\n});\n\nexport const getStoredSkillResponseSchema = storedSkillSchema;\nexport const createStoredSkillResponseSchema = storedSkillSchema;\n\nexport const updateStoredSkillResponseSchema = z.union([\n z.object({\n id: z.string(),\n status: z.string(),\n activeVersionId: z.string().optional(),\n authorId: z.string().optional(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n }),\n storedSkillSchema,\n]);\n\nexport const deleteStoredSkillResponseSchema = z.object({\n success: z.boolean(),\n message: z.string(),\n});\n\n// ============================================================================\n// Publish / Rollback Schemas\n// ============================================================================\n\nexport const publishStoredSkillBodySchema = z.object({\n skillPath: z.string().describe('Path to the skill directory on the server filesystem (containing SKILL.md)'),\n});\n\nexport const publishStoredSkillResponseSchema = storedSkillSchema;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/handlers/stored-scorers.ts"],"names":["createRoute","listStoredScorersQuerySchema","listStoredScorersResponseSchema","HTTPException","handleError","storedScorerIdPathParams","statusQuerySchema","getStoredScorerResponseSchema","createStoredScorerBodySchema","createStoredScorerResponseSchema","toSlug","updateStoredScorerBodySchema","updateStoredScorerResponseSchema","handleAutoVersioning","deleteStoredScorerResponseSchema"],"mappings":"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","file":"chunk-SUNXO2H2.cjs","sourcesContent":["import { HTTPException } from '../http-exception';\nimport {\n storedScorerIdPathParams,\n statusQuerySchema,\n listStoredScorersQuerySchema,\n createStoredScorerBodySchema,\n updateStoredScorerBodySchema,\n listStoredScorersResponseSchema,\n getStoredScorerResponseSchema,\n createStoredScorerResponseSchema,\n updateStoredScorerResponseSchema,\n deleteStoredScorerResponseSchema,\n} from '../schemas/stored-scorers';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { toSlug } from '../utils';\n\nimport { handleError } from './error';\nimport { handleAutoVersioning } from './version-helpers';\nimport type { VersionedStoreInterface } from './version-helpers';\n\nconst SCORER_SNAPSHOT_CONFIG_FIELDS = [\n 'name',\n 'description',\n 'type',\n 'model',\n 'instructions',\n 'scoreRange',\n 'presetConfig',\n 'defaultSampling',\n] as const;\n\n// ============================================================================\n// Route Definitions\n// ============================================================================\n\n/**\n * GET /stored/scorers - List all stored scorer definitions\n */\nexport const LIST_STORED_SCORERS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers',\n responseType: 'json',\n queryParamSchema: listStoredScorersQuerySchema,\n responseSchema: listStoredScorersResponseSchema,\n summary: 'List stored scorer definitions',\n description: 'Returns a paginated list of all scorer definitions stored in the database',\n tags: ['Stored Scorers'],\n requiresAuth: true,\n handler: async ({ mastra, page, perPage, orderBy, status, authorId, metadata }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const result = await scorerStore.listResolved({\n page,\n perPage,\n orderBy,\n status,\n authorId,\n metadata,\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error listing stored scorer definitions');\n }\n },\n});\n\n/**\n * GET /stored/scorers/:storedScorerId - Get a stored scorer definition by ID\n */\nexport const GET_STORED_SCORER_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:storedScorerId',\n responseType: 'json',\n pathParamSchema: storedScorerIdPathParams,\n queryParamSchema: statusQuerySchema,\n responseSchema: getStoredScorerResponseSchema,\n summary: 'Get stored scorer definition by ID',\n description:\n 'Returns a specific scorer definition from storage by its unique identifier. Use ?status=draft to resolve with the latest (draft) version, or ?status=published (default) for the active published version.',\n tags: ['Stored Scorers'],\n requiresAuth: true,\n handler: async ({ mastra, storedScorerId, status }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getByIdResolved(storedScorerId, { status });\n\n if (!scorer) {\n throw new HTTPException(404, { message: `Stored scorer definition with id ${storedScorerId} not found` });\n }\n\n return scorer;\n } catch (error) {\n return handleError(error, 'Error getting stored scorer definition');\n }\n },\n});\n\n/**\n * POST /stored/scorers - Create a new stored scorer definition\n */\nexport const CREATE_STORED_SCORER_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers',\n responseType: 'json',\n bodySchema: createStoredScorerBodySchema,\n responseSchema: createStoredScorerResponseSchema,\n summary: 'Create stored scorer definition',\n description: 'Creates a new scorer definition in storage with the provided configuration',\n tags: ['Stored Scorers'],\n requiresAuth: true,\n handler: async ({\n mastra,\n id: providedId,\n authorId,\n metadata,\n name,\n description,\n type,\n model,\n instructions,\n scoreRange,\n presetConfig,\n defaultSampling,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n // Derive ID from name if not explicitly provided\n const id = providedId || toSlug(name);\n\n if (!id) {\n throw new HTTPException(400, {\n message: 'Could not derive scorer definition ID from name. Please provide an explicit id.',\n });\n }\n\n // Check if scorer definition with this ID already exists\n const existing = await scorerStore.getById(id);\n if (existing) {\n throw new HTTPException(409, { message: `Scorer definition with id ${id} already exists` });\n }\n\n await scorerStore.create({\n scorerDefinition: {\n id,\n authorId,\n metadata,\n name,\n description,\n type,\n model,\n instructions,\n scoreRange,\n presetConfig,\n defaultSampling,\n },\n });\n\n // Return the resolved scorer definition (thin record + version config)\n // Use draft status since newly created entities start as drafts\n const resolved = await scorerStore.getByIdResolved(id, { status: 'draft' });\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve created scorer definition' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error creating stored scorer definition');\n }\n },\n});\n\n/**\n * PATCH /stored/scorers/:storedScorerId - Update a stored scorer definition\n */\nexport const UPDATE_STORED_SCORER_ROUTE = createRoute({\n method: 'PATCH',\n path: '/stored/scorers/:storedScorerId',\n responseType: 'json',\n pathParamSchema: storedScorerIdPathParams,\n bodySchema: updateStoredScorerBodySchema,\n responseSchema: updateStoredScorerResponseSchema,\n summary: 'Update stored scorer definition',\n description: 'Updates an existing scorer definition in storage with the provided fields',\n tags: ['Stored Scorers'],\n requiresAuth: true,\n handler: async ({\n mastra,\n storedScorerId,\n // Metadata-level fields\n authorId,\n metadata,\n // Config fields (snapshot-level)\n name,\n description,\n type,\n model,\n instructions,\n scoreRange,\n presetConfig,\n defaultSampling,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n // Check if scorer definition exists\n const existing = await scorerStore.getById(storedScorerId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored scorer definition with id ${storedScorerId} not found` });\n }\n\n // Update the scorer definition with both metadata-level and config-level fields\n const updatedScorer = await scorerStore.update({\n id: storedScorerId,\n authorId,\n metadata,\n name,\n description,\n type,\n model,\n instructions,\n scoreRange,\n presetConfig,\n defaultSampling,\n });\n\n // Build the snapshot config for auto-versioning comparison\n const configFields = {\n name,\n description,\n type,\n model,\n instructions,\n scoreRange,\n presetConfig,\n defaultSampling,\n };\n\n // Filter out undefined values to get only the config fields that were provided\n const providedConfigFields = Object.fromEntries(Object.entries(configFields).filter(([_, v]) => v !== undefined));\n\n // Handle auto-versioning with retry logic for race conditions\n // This creates a new version if there are meaningful config changes.\n // It does NOT update activeVersionId — the version stays as a draft until explicitly published.\n await handleAutoVersioning(\n scorerStore as unknown as VersionedStoreInterface,\n storedScorerId,\n 'scorerDefinitionId',\n SCORER_SNAPSHOT_CONFIG_FIELDS,\n existing,\n updatedScorer,\n providedConfigFields,\n );\n\n // Clear the cached scorer instance so the next request gets the updated config\n const editor = mastra.getEditor();\n if (editor) {\n editor.scorer.clearCache(storedScorerId);\n }\n\n // Return the resolved scorer definition with the latest (draft) version so the UI sees its edits\n const resolved = await scorerStore.getByIdResolved(storedScorerId, { status: 'draft' });\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve updated scorer definition' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error updating stored scorer definition');\n }\n },\n});\n\n/**\n * DELETE /stored/scorers/:storedScorerId - Delete a stored scorer definition\n */\nexport const DELETE_STORED_SCORER_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/scorers/:storedScorerId',\n responseType: 'json',\n pathParamSchema: storedScorerIdPathParams,\n responseSchema: deleteStoredScorerResponseSchema,\n summary: 'Delete stored scorer definition',\n description: 'Deletes a scorer definition from storage by its unique identifier',\n tags: ['Stored Scorers'],\n requiresAuth: true,\n handler: async ({ mastra, storedScorerId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n // Check if scorer definition exists\n const existing = await scorerStore.getById(storedScorerId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored scorer definition with id ${storedScorerId} not found` });\n }\n\n await scorerStore.delete(storedScorerId);\n\n // Clear the cached scorer instance\n mastra.getEditor()?.scorer.clearCache(storedScorerId);\n\n return { success: true, message: `Scorer definition ${storedScorerId} deleted successfully` };\n } catch (error) {\n return handleError(error, 'Error deleting stored scorer definition');\n }\n },\n});\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/handlers/observability-shared.ts"],"names":["HTTPException"],"mappings":"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","file":"chunk-SUT6SU4I.cjs","sourcesContent":["import type { Mastra } from '@mastra/core';\nimport type { MastraCompositeStore, ObservabilityStorage } from '@mastra/core/storage';\nimport { HTTPException } from '../http-exception';\nimport type { ServerRoute } from '../server-adapter/routes';\n\nexport const NEW_OBSERVABILITY_UPGRADE_MESSAGE =\n 'New observability endpoints require a newer @mastra/core. Please upgrade.';\n\n/** Retrieves MastraCompositeStore or throws 500 if unavailable. */\nexport function getStorage(mastra: Mastra): MastraCompositeStore {\n const storage = mastra.getStorage();\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not available' });\n }\n return storage;\n}\n\n/** Retrieves the observability storage domain or throws 500 if unavailable. */\nexport async function getObservabilityStore(mastra: Mastra): Promise<ObservabilityStorage> {\n const storage = getStorage(mastra);\n const observability = await storage.getStore('observability');\n if (!observability) {\n throw new HTTPException(500, { message: 'Observability storage domain is not available' });\n }\n return observability;\n}\n\nexport interface RouteDetails {\n method: ServerRoute['method'];\n path: `/${string}`;\n summary: string;\n description: string;\n requiresPermission?: ServerRoute['requiresPermission'];\n}\n\nexport const NEW_ROUTE_DEFS = {\n LIST_LOGS: {\n method: 'GET',\n path: '/observability/logs',\n summary: 'List logs',\n description: 'Returns a paginated list of logs with optional filtering and sorting',\n },\n\n LIST_SCORES: {\n method: 'GET',\n path: '/observability/scores',\n summary: 'List scores',\n description: 'Returns a paginated list of scores with optional filtering and sorting',\n },\n\n CREATE_SCORE: {\n method: 'POST',\n path: '/observability/scores',\n summary: 'Create a score',\n description: 'Creates a single score record in the observability store',\n },\n\n GET_SCORE: {\n method: 'GET',\n path: '/observability/scores/:scoreId',\n summary: 'Get score',\n description: 'Returns a single score by scoreId',\n },\n\n GET_SCORE_AGGREGATE: {\n method: 'POST',\n path: '/observability/scores/aggregate',\n summary: 'Get score aggregate',\n description: 'Returns an aggregated score value with optional period-over-period comparison',\n requiresPermission: 'observability:read',\n },\n\n GET_SCORE_BREAKDOWN: {\n method: 'POST',\n path: '/observability/scores/breakdown',\n summary: 'Get score breakdown',\n description: 'Returns score values grouped by specified dimensions',\n requiresPermission: 'observability:read',\n },\n\n GET_SCORE_TIME_SERIES: {\n method: 'POST',\n path: '/observability/scores/timeseries',\n summary: 'Get score time series',\n description: 'Returns score values bucketed by time interval with optional grouping',\n requiresPermission: 'observability:read',\n },\n\n GET_SCORE_PERCENTILES: {\n method: 'POST',\n path: '/observability/scores/percentiles',\n summary: 'Get score percentiles',\n description: 'Returns percentile values for a score bucketed by time interval',\n requiresPermission: 'observability:read',\n },\n\n LIST_FEEDBACK: {\n method: 'GET',\n path: '/observability/feedback',\n summary: 'List feedback',\n description: 'Returns a paginated list of feedback with optional filtering and sorting',\n },\n\n CREATE_FEEDBACK: {\n method: 'POST',\n path: '/observability/feedback',\n summary: 'Create feedback',\n description: 'Creates a single feedback record in the observability store',\n },\n\n GET_FEEDBACK_AGGREGATE: {\n method: 'POST',\n path: '/observability/feedback/aggregate',\n summary: 'Get feedback aggregate',\n description: 'Returns an aggregated numeric feedback value with optional period-over-period comparison',\n requiresPermission: 'observability:read',\n },\n\n GET_FEEDBACK_BREAKDOWN: {\n method: 'POST',\n path: '/observability/feedback/breakdown',\n summary: 'Get feedback breakdown',\n description: 'Returns numeric feedback values grouped by specified dimensions',\n requiresPermission: 'observability:read',\n },\n\n GET_FEEDBACK_TIME_SERIES: {\n method: 'POST',\n path: '/observability/feedback/timeseries',\n summary: 'Get feedback time series',\n description: 'Returns numeric feedback values bucketed by time interval with optional grouping',\n requiresPermission: 'observability:read',\n },\n\n GET_FEEDBACK_PERCENTILES: {\n method: 'POST',\n path: '/observability/feedback/percentiles',\n summary: 'Get feedback percentiles',\n description: 'Returns percentile values for numeric feedback bucketed by time interval',\n requiresPermission: 'observability:read',\n },\n\n GET_METRIC_AGGREGATE: {\n method: 'POST',\n path: '/observability/metrics/aggregate',\n summary: 'Get metric aggregate',\n description: 'Returns an aggregated metric value with optional period-over-period comparison',\n requiresPermission: 'observability:read',\n },\n\n GET_METRIC_BREAKDOWN: {\n method: 'POST',\n path: '/observability/metrics/breakdown',\n summary: 'Get metric breakdown',\n description: 'Returns metric values grouped by specified dimensions',\n requiresPermission: 'observability:read',\n },\n\n GET_METRIC_TIME_SERIES: {\n method: 'POST',\n path: '/observability/metrics/timeseries',\n summary: 'Get metric time series',\n description: 'Returns metric values bucketed by time interval with optional grouping',\n requiresPermission: 'observability:read',\n },\n\n GET_METRIC_PERCENTILES: {\n method: 'POST',\n path: '/observability/metrics/percentiles',\n summary: 'Get metric percentiles',\n description: 'Returns percentile values for a metric bucketed by time interval',\n requiresPermission: 'observability:read',\n },\n\n GET_METRIC_NAMES: {\n method: 'GET',\n path: '/observability/discovery/metric-names',\n summary: 'Get metric names',\n description: 'Returns distinct metric names with optional prefix filtering',\n },\n\n GET_METRIC_LABEL_KEYS: {\n method: 'GET',\n path: '/observability/discovery/metric-label-keys',\n summary: 'Get metric label keys',\n description: 'Returns distinct label keys for a given metric',\n },\n\n GET_METRIC_LABEL_VALUES: {\n method: 'GET',\n path: '/observability/discovery/metric-label-values',\n summary: 'Get label values',\n description: 'Returns distinct values for a given metric label key',\n },\n\n GET_ENTITY_TYPES: {\n method: 'GET',\n path: '/observability/discovery/entity-types',\n summary: 'Get entity types',\n description: 'Returns distinct entity types from observability data',\n },\n\n GET_ENTITY_NAMES: {\n method: 'GET',\n path: '/observability/discovery/entity-names',\n summary: 'Get entity names',\n description: 'Returns distinct entity names with optional type filtering',\n },\n\n GET_SERVICE_NAMES: {\n method: 'GET',\n path: '/observability/discovery/service-names',\n summary: 'Get service names',\n description: 'Returns distinct service names from observability data',\n },\n\n GET_ENVIRONMENTS: {\n method: 'GET',\n path: '/observability/discovery/environments',\n summary: 'Get environments',\n description: 'Returns distinct environments from observability data',\n },\n\n GET_TAGS: {\n method: 'GET',\n path: '/observability/discovery/tags',\n summary: 'Get tags',\n description: 'Returns distinct tags with optional entity type filtering',\n },\n} as const satisfies Record<string, RouteDetails>;\n\nexport type NewRoutesKey = keyof typeof NEW_ROUTE_DEFS;\nexport type NewRoutesDefinitions = (typeof NEW_ROUTE_DEFS)[NewRoutesKey];\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/handlers/stored-workspaces.ts"],"names":[],"mappings":"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","file":"chunk-SWCWNQL5.js","sourcesContent":["import { HTTPException } from '../http-exception';\nimport {\n storedWorkspaceIdPathParams,\n listStoredWorkspacesQuerySchema,\n createStoredWorkspaceBodySchema,\n updateStoredWorkspaceBodySchema,\n listStoredWorkspacesResponseSchema,\n getStoredWorkspaceResponseSchema,\n createStoredWorkspaceResponseSchema,\n updateStoredWorkspaceResponseSchema,\n deleteStoredWorkspaceResponseSchema,\n} from '../schemas/stored-workspaces';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { toSlug } from '../utils';\n\nimport { handleError } from './error';\n\n// ============================================================================\n// Route Definitions\n// ============================================================================\n\n/**\n * GET /stored/workspaces - List all stored workspaces\n */\nexport const LIST_STORED_WORKSPACES_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/workspaces',\n responseType: 'json',\n queryParamSchema: listStoredWorkspacesQuerySchema,\n responseSchema: listStoredWorkspacesResponseSchema,\n summary: 'List stored workspaces',\n description: 'Returns a paginated list of all workspace configurations stored in the database',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, page, perPage, orderBy, authorId, metadata }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n const result = await workspaceStore.listResolved({\n page,\n perPage,\n orderBy,\n authorId,\n metadata,\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error listing stored workspaces');\n }\n },\n});\n\n/**\n * GET /stored/workspaces/:storedWorkspaceId - Get a stored workspace by ID\n */\nexport const GET_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n responseSchema: getStoredWorkspaceResponseSchema,\n summary: 'Get stored workspace by ID',\n description:\n 'Returns a specific workspace from storage by its unique identifier (resolved with active version config)',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, storedWorkspaceId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n const workspace = await workspaceStore.getByIdResolved(storedWorkspaceId);\n\n if (!workspace) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n\n return workspace;\n } catch (error) {\n return handleError(error, 'Error getting stored workspace');\n }\n },\n});\n\n/**\n * POST /stored/workspaces - Create a new stored workspace\n */\nexport const CREATE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/workspaces',\n responseType: 'json',\n bodySchema: createStoredWorkspaceBodySchema,\n responseSchema: createStoredWorkspaceResponseSchema,\n summary: 'Create stored workspace',\n description: 'Creates a new workspace configuration in storage with the provided settings',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({\n mastra,\n id: providedId,\n authorId,\n metadata,\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Derive ID from name if not explicitly provided\n const id = providedId || toSlug(name);\n\n if (!id) {\n throw new HTTPException(400, {\n message: 'Could not derive workspace ID from name. Please provide an explicit id.',\n });\n }\n\n // Check if workspace with this ID already exists\n const existing = await workspaceStore.getById(id);\n if (existing) {\n throw new HTTPException(409, { message: `Workspace with id ${id} already exists` });\n }\n\n await workspaceStore.create({\n workspace: {\n id,\n authorId,\n metadata,\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n },\n });\n\n // Return the resolved workspace (thin record + version config)\n const resolved = await workspaceStore.getByIdResolved(id);\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve created workspace' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error creating stored workspace');\n }\n },\n});\n\n/**\n * PATCH /stored/workspaces/:storedWorkspaceId - Update a stored workspace\n */\nexport const UPDATE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'PATCH',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n bodySchema: updateStoredWorkspaceBodySchema,\n responseSchema: updateStoredWorkspaceResponseSchema,\n summary: 'Update stored workspace',\n description: 'Updates an existing workspace in storage with the provided fields',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({\n mastra,\n storedWorkspaceId,\n // Metadata-level fields\n authorId,\n metadata,\n // Config fields (snapshot-level)\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Check if workspace exists\n const existing = await workspaceStore.getById(storedWorkspaceId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n\n // Update the workspace with both metadata-level and config-level fields\n // The storage layer handles separating these into record updates vs new-version creation\n await workspaceStore.update({\n id: storedWorkspaceId,\n authorId,\n metadata,\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n });\n\n // Return the resolved workspace with the updated config\n const resolved = await workspaceStore.getByIdResolved(storedWorkspaceId);\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve updated workspace' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error updating stored workspace');\n }\n },\n});\n\n/**\n * DELETE /stored/workspaces/:storedWorkspaceId - Delete a stored workspace\n */\nexport const DELETE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n responseSchema: deleteStoredWorkspaceResponseSchema,\n summary: 'Delete stored workspace',\n description: 'Deletes a workspace from storage by its unique identifier',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, storedWorkspaceId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Check if workspace exists\n const existing = await workspaceStore.getById(storedWorkspaceId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n\n await workspaceStore.delete(storedWorkspaceId);\n\n return {\n success: true,\n message: `Workspace ${storedWorkspaceId} deleted successfully`,\n };\n } catch (error) {\n return handleError(error, 'Error deleting stored workspace');\n }\n },\n});\n"]}
|