@mastra/server 1.51.0-alpha.6 → 1.51.0-alpha.8
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 +53 -0
- package/dist/_types/@mastra_schema-compat/dist/_types/@internal_ai-sdk-v5/dist/index.d.ts +93 -3
- package/dist/_types/@mastra_schema-compat/dist/_types/@internal_ai-v6/dist/index.d.ts +467 -22
- package/dist/{api-schema-manifest-KG6HIYJ2.js → api-schema-manifest-5N4CH3B3.js} +4 -4
- package/dist/{api-schema-manifest-KG6HIYJ2.js.map → api-schema-manifest-5N4CH3B3.js.map} +1 -1
- package/dist/{api-schema-manifest-BCLG3S2X.cjs → api-schema-manifest-PY3KYLMU.cjs} +6 -6
- package/dist/{api-schema-manifest-BCLG3S2X.cjs.map → api-schema-manifest-PY3KYLMU.cjs.map} +1 -1
- package/dist/{chunk-I432F3YA.cjs → chunk-2QNU6QRD.cjs} +11 -11
- package/dist/{chunk-I432F3YA.cjs.map → chunk-2QNU6QRD.cjs.map} +1 -1
- package/dist/{chunk-JA7XOFOA.cjs → chunk-3MPULWGH.cjs} +8 -8
- package/dist/{chunk-JA7XOFOA.cjs.map → chunk-3MPULWGH.cjs.map} +1 -1
- package/dist/{chunk-HVRGAK4V.cjs → chunk-4I32EWP4.cjs} +7 -7
- package/dist/{chunk-HVRGAK4V.cjs.map → chunk-4I32EWP4.cjs.map} +1 -1
- package/dist/{chunk-NNXRZOOG.js → chunk-4NK4LJMY.js} +3 -3
- package/dist/{chunk-NNXRZOOG.js.map → chunk-4NK4LJMY.js.map} +1 -1
- package/dist/{chunk-FEUXFWF5.cjs → chunk-4VDJYNCU.cjs} +4 -4
- package/dist/{chunk-FEUXFWF5.cjs.map → chunk-4VDJYNCU.cjs.map} +1 -1
- package/dist/{chunk-CB3IBAR2.js → chunk-5JAVWC7V.js} +2097 -1297
- package/dist/chunk-5JAVWC7V.js.map +1 -0
- package/dist/{chunk-CKEYMXKW.cjs → chunk-5L67H7RK.cjs} +6 -6
- package/dist/{chunk-CKEYMXKW.cjs.map → chunk-5L67H7RK.cjs.map} +1 -1
- package/dist/{chunk-XB733TW2.js → chunk-5W7JSJKI.js} +3 -3
- package/dist/{chunk-XB733TW2.js.map → chunk-5W7JSJKI.js.map} +1 -1
- package/dist/{chunk-3KAKK4VV.js → chunk-5XOPSLKG.js} +4 -4
- package/dist/{chunk-3KAKK4VV.js.map → chunk-5XOPSLKG.js.map} +1 -1
- package/dist/{chunk-RZXHWEO7.js → chunk-632HKME2.js} +3 -3
- package/dist/{chunk-RZXHWEO7.js.map → chunk-632HKME2.js.map} +1 -1
- package/dist/{chunk-IE5RWKUF.js → chunk-64F6SQJI.js} +4 -4
- package/dist/{chunk-IE5RWKUF.js.map → chunk-64F6SQJI.js.map} +1 -1
- package/dist/{chunk-IQBRYCQO.js → chunk-67343LAI.js} +3 -3
- package/dist/{chunk-IQBRYCQO.js.map → chunk-67343LAI.js.map} +1 -1
- package/dist/{chunk-OZ5AR746.cjs → chunk-6DZQOTRB.cjs} +8 -8
- package/dist/{chunk-OZ5AR746.cjs.map → chunk-6DZQOTRB.cjs.map} +1 -1
- package/dist/{chunk-2QKDMZ5B.cjs → chunk-7LDYURHI.cjs} +29 -29
- package/dist/{chunk-2QKDMZ5B.cjs.map → chunk-7LDYURHI.cjs.map} +1 -1
- package/dist/{chunk-PPSCC3RI.js → chunk-7NXOMYYC.js} +4 -4
- package/dist/{chunk-PPSCC3RI.js.map → chunk-7NXOMYYC.js.map} +1 -1
- package/dist/{chunk-LQZHT5U7.js → chunk-AGMARPDG.js} +3 -3
- package/dist/{chunk-LQZHT5U7.js.map → chunk-AGMARPDG.js.map} +1 -1
- package/dist/{chunk-ZQEOVH4F.js → chunk-AXHVYVLP.js} +3 -3
- package/dist/{chunk-ZQEOVH4F.js.map → chunk-AXHVYVLP.js.map} +1 -1
- package/dist/{chunk-X2QVU5LG.js → chunk-B4D33SLQ.js} +3 -3
- package/dist/{chunk-X2QVU5LG.js.map → chunk-B4D33SLQ.js.map} +1 -1
- package/dist/{chunk-AGYSIGMS.cjs → chunk-BHE5YUYU.cjs} +5 -5
- package/dist/{chunk-AGYSIGMS.cjs.map → chunk-BHE5YUYU.cjs.map} +1 -1
- package/dist/{chunk-CQKT2IEY.js → chunk-CJXC5VW7.js} +5 -5
- package/dist/{chunk-CQKT2IEY.js.map → chunk-CJXC5VW7.js.map} +1 -1
- package/dist/{chunk-73YMS66A.cjs → chunk-CQQVIYU4.cjs} +8 -8
- package/dist/{chunk-73YMS66A.cjs.map → chunk-CQQVIYU4.cjs.map} +1 -1
- package/dist/{chunk-H3BXLXXW.cjs → chunk-CTCGK2XX.cjs} +6 -6
- package/dist/{chunk-H3BXLXXW.cjs.map → chunk-CTCGK2XX.cjs.map} +1 -1
- package/dist/{chunk-RUHCOOAI.cjs → chunk-ECK575WD.cjs} +8 -8
- package/dist/{chunk-RUHCOOAI.cjs.map → chunk-ECK575WD.cjs.map} +1 -1
- package/dist/{chunk-52WDAFZI.cjs → chunk-EWDKF6XB.cjs} +13 -13
- package/dist/{chunk-52WDAFZI.cjs.map → chunk-EWDKF6XB.cjs.map} +1 -1
- package/dist/{chunk-OQILSGRO.cjs → chunk-EXTGR44K.cjs} +12 -12
- package/dist/{chunk-OQILSGRO.cjs.map → chunk-EXTGR44K.cjs.map} +1 -1
- package/dist/{chunk-IBQEWSL2.cjs → chunk-FCP5XRL7.cjs} +37 -37
- package/dist/{chunk-IBQEWSL2.cjs.map → chunk-FCP5XRL7.cjs.map} +1 -1
- package/dist/{chunk-5CUCN4QC.cjs → chunk-FFEY73SL.cjs} +21 -21
- package/dist/{chunk-5CUCN4QC.cjs.map → chunk-FFEY73SL.cjs.map} +1 -1
- package/dist/{chunk-OF7S6YU7.js → chunk-FRQEU6WH.js} +3 -3
- package/dist/{chunk-OF7S6YU7.js.map → chunk-FRQEU6WH.js.map} +1 -1
- package/dist/{chunk-2ZMOUXUF.js → chunk-G4KBL45K.js} +3 -3
- package/dist/{chunk-2ZMOUXUF.js.map → chunk-G4KBL45K.js.map} +1 -1
- package/dist/{chunk-EXP66755.cjs → chunk-G64MMB22.cjs} +8 -8
- package/dist/{chunk-EXP66755.cjs.map → chunk-G64MMB22.cjs.map} +1 -1
- package/dist/{chunk-LXVZZCYL.cjs → chunk-GCLIAMDG.cjs} +9 -9
- package/dist/{chunk-LXVZZCYL.cjs.map → chunk-GCLIAMDG.cjs.map} +1 -1
- package/dist/{chunk-CSRGFSPD.js → chunk-GZGTYOPE.js} +3 -3
- package/dist/{chunk-CSRGFSPD.js.map → chunk-GZGTYOPE.js.map} +1 -1
- package/dist/{chunk-CQMRVXYZ.cjs → chunk-H7P3Y3AH.cjs} +19 -19
- package/dist/{chunk-CQMRVXYZ.cjs.map → chunk-H7P3Y3AH.cjs.map} +1 -1
- package/dist/{chunk-IY2HGGCJ.cjs → chunk-HKGKW4W5.cjs} +8 -8
- package/dist/{chunk-IY2HGGCJ.cjs.map → chunk-HKGKW4W5.cjs.map} +1 -1
- package/dist/{chunk-RJVJRSE5.js → chunk-HWTB2EEP.js} +3 -3
- package/dist/{chunk-RJVJRSE5.js.map → chunk-HWTB2EEP.js.map} +1 -1
- package/dist/{chunk-HFJIIPAD.js → chunk-IAMAWCBK.js} +5 -5
- package/dist/{chunk-HFJIIPAD.js.map → chunk-IAMAWCBK.js.map} +1 -1
- package/dist/{chunk-M3MTW44C.js → chunk-IM2EVMH4.js} +3 -3
- package/dist/{chunk-M3MTW44C.js.map → chunk-IM2EVMH4.js.map} +1 -1
- package/dist/{chunk-FEUCP6F3.cjs → chunk-JJZLY2OT.cjs} +4 -4
- package/dist/{chunk-FEUCP6F3.cjs.map → chunk-JJZLY2OT.cjs.map} +1 -1
- package/dist/{chunk-L2VRTBCQ.cjs → chunk-JKZGEIZO.cjs} +4 -4
- package/dist/{chunk-L2VRTBCQ.cjs.map → chunk-JKZGEIZO.cjs.map} +1 -1
- package/dist/{chunk-Q3CG4MLT.js → chunk-JZWODCZ2.js} +3 -3
- package/dist/{chunk-Q3CG4MLT.js.map → chunk-JZWODCZ2.js.map} +1 -1
- package/dist/{chunk-MRD47GBP.cjs → chunk-K7KLUGGM.cjs} +74 -74
- package/dist/{chunk-MRD47GBP.cjs.map → chunk-K7KLUGGM.cjs.map} +1 -1
- package/dist/{chunk-RP4Q5IAW.cjs → chunk-KXNUETBI.cjs} +6 -6
- package/dist/{chunk-RP4Q5IAW.cjs.map → chunk-KXNUETBI.cjs.map} +1 -1
- package/dist/{chunk-J5SAYGPG.cjs → chunk-KZK4QA4W.cjs} +8 -8
- package/dist/{chunk-J5SAYGPG.cjs.map → chunk-KZK4QA4W.cjs.map} +1 -1
- package/dist/{chunk-SB3YYDCD.js → chunk-L2ABDMKW.js} +124 -70
- package/dist/chunk-L2ABDMKW.js.map +1 -0
- package/dist/{chunk-LA3YFTNL.cjs → chunk-L2OBN5CQ.cjs} +10 -10
- package/dist/{chunk-LA3YFTNL.cjs.map → chunk-L2OBN5CQ.cjs.map} +1 -1
- package/dist/{chunk-B2OMBLIL.js → chunk-L4UEC3WG.js} +3 -3
- package/dist/{chunk-B2OMBLIL.js.map → chunk-L4UEC3WG.js.map} +1 -1
- package/dist/chunk-L7VLEQZ5.cjs +744 -0
- package/dist/{chunk-IYKBTTYT.cjs.map → chunk-L7VLEQZ5.cjs.map} +1 -1
- package/dist/{chunk-LIFGEVRQ.js → chunk-LVYTFFO7.js} +3 -3
- package/dist/{chunk-LIFGEVRQ.js.map → chunk-LVYTFFO7.js.map} +1 -1
- package/dist/{chunk-47PVLKIL.cjs → chunk-LXWMMOJ4.cjs} +2 -2
- package/dist/{chunk-47PVLKIL.cjs.map → chunk-LXWMMOJ4.cjs.map} +1 -1
- package/dist/{chunk-U6PBK5ML.cjs → chunk-M2CKZXGA.cjs} +6 -6
- package/dist/{chunk-U6PBK5ML.cjs.map → chunk-M2CKZXGA.cjs.map} +1 -1
- package/dist/{chunk-DBJ72M3L.js → chunk-MD72DZKF.js} +4 -4
- package/dist/{chunk-DBJ72M3L.js.map → chunk-MD72DZKF.js.map} +1 -1
- package/dist/{chunk-KXZI7W4X.js → chunk-MEWQVBMF.js} +4 -4
- package/dist/{chunk-KXZI7W4X.js.map → chunk-MEWQVBMF.js.map} +1 -1
- package/dist/{chunk-LPT77UR6.js → chunk-MG3WOQQQ.js} +2 -2
- package/dist/{chunk-LPT77UR6.js.map → chunk-MG3WOQQQ.js.map} +1 -1
- package/dist/{chunk-YAURXFRL.js → chunk-NDNGZCVE.js} +4 -4
- package/dist/{chunk-YAURXFRL.js.map → chunk-NDNGZCVE.js.map} +1 -1
- package/dist/{chunk-SD7ZBPTH.js → chunk-NL77QH5H.js} +5 -5
- package/dist/{chunk-SD7ZBPTH.js.map → chunk-NL77QH5H.js.map} +1 -1
- package/dist/{chunk-3QVZXWIE.cjs → chunk-NLXGN2IS.cjs} +2 -2
- package/dist/chunk-NLXGN2IS.cjs.map +1 -0
- package/dist/{chunk-7YBYLB2K.cjs → chunk-NWF6NTJ4.cjs} +2 -2
- package/dist/chunk-NWF6NTJ4.cjs.map +1 -0
- package/dist/{chunk-XJ3NNQMH.cjs → chunk-OF77EOAS.cjs} +11 -11
- package/dist/{chunk-XJ3NNQMH.cjs.map → chunk-OF77EOAS.cjs.map} +1 -1
- package/dist/{chunk-67Y5VZH2.js → chunk-OPHNEPME.js} +5 -5
- package/dist/{chunk-67Y5VZH2.js.map → chunk-OPHNEPME.js.map} +1 -1
- package/dist/{chunk-5AZEKCIF.cjs → chunk-OTTFQ6PW.cjs} +11 -11
- package/dist/{chunk-5AZEKCIF.cjs.map → chunk-OTTFQ6PW.cjs.map} +1 -1
- package/dist/{chunk-JQEHJTZT.cjs → chunk-OXOPBLIY.cjs} +41 -41
- package/dist/{chunk-JQEHJTZT.cjs.map → chunk-OXOPBLIY.cjs.map} +1 -1
- package/dist/{chunk-62IXMOKZ.js → chunk-P73K3SWT.js} +3 -3
- package/dist/{chunk-62IXMOKZ.js.map → chunk-P73K3SWT.js.map} +1 -1
- package/dist/{chunk-OFGVQFG2.cjs → chunk-PRO5XP7M.cjs} +10 -10
- package/dist/{chunk-OFGVQFG2.cjs.map → chunk-PRO5XP7M.cjs.map} +1 -1
- package/dist/{chunk-C4AFQDAO.js → chunk-PTJBYYMK.js} +2 -2
- package/dist/chunk-PTJBYYMK.js.map +1 -0
- package/dist/{chunk-OZC33KF7.js → chunk-QCKUEI6M.js} +3 -3
- package/dist/{chunk-OZC33KF7.js.map → chunk-QCKUEI6M.js.map} +1 -1
- package/dist/{chunk-5O6B2WSE.js → chunk-QDEYRPYD.js} +4 -4
- package/dist/{chunk-5O6B2WSE.js.map → chunk-QDEYRPYD.js.map} +1 -1
- package/dist/{chunk-NCHOAORF.cjs → chunk-QRV7327G.cjs} +2097 -1297
- package/dist/chunk-QRV7327G.cjs.map +1 -0
- package/dist/{chunk-HF3RNFJN.js → chunk-QVOR4Y5X.js} +42 -42
- package/dist/{chunk-HF3RNFJN.js.map → chunk-QVOR4Y5X.js.map} +1 -1
- package/dist/{chunk-KRXBQMZA.cjs → chunk-QW7IQZIB.cjs} +13 -13
- package/dist/{chunk-KRXBQMZA.cjs.map → chunk-QW7IQZIB.cjs.map} +1 -1
- package/dist/{chunk-BS75OYMS.cjs → chunk-REFU47IR.cjs} +16 -16
- package/dist/{chunk-BS75OYMS.cjs.map → chunk-REFU47IR.cjs.map} +1 -1
- package/dist/{chunk-GJPUTFUV.js → chunk-RPCAKN2L.js} +5 -5
- package/dist/{chunk-GJPUTFUV.js.map → chunk-RPCAKN2L.js.map} +1 -1
- package/dist/{chunk-ICNDDYVU.cjs → chunk-RTHBJGHO.cjs} +8 -8
- package/dist/{chunk-ICNDDYVU.cjs.map → chunk-RTHBJGHO.cjs.map} +1 -1
- package/dist/{chunk-2ONW75MN.cjs → chunk-SCCERKQS.cjs} +5 -5
- package/dist/{chunk-2ONW75MN.cjs.map → chunk-SCCERKQS.cjs.map} +1 -1
- package/dist/{chunk-LE43IZGI.js → chunk-SGMCFRSU.js} +3 -3
- package/dist/{chunk-LE43IZGI.js.map → chunk-SGMCFRSU.js.map} +1 -1
- package/dist/{chunk-NQLS4Z3W.js → chunk-SH7XKBWN.js} +5 -5
- package/dist/{chunk-NQLS4Z3W.js.map → chunk-SH7XKBWN.js.map} +1 -1
- package/dist/{chunk-RIWVPOVQ.js → chunk-SSBPVVCY.js} +3 -3
- package/dist/{chunk-RIWVPOVQ.js.map → chunk-SSBPVVCY.js.map} +1 -1
- package/dist/{chunk-6WQBVVAS.cjs → chunk-SUOTSPYJ.cjs} +71 -71
- package/dist/{chunk-6WQBVVAS.cjs.map → chunk-SUOTSPYJ.cjs.map} +1 -1
- package/dist/{chunk-RPYAXRJN.cjs → chunk-SVDQASCW.cjs} +24 -24
- package/dist/{chunk-RPYAXRJN.cjs.map → chunk-SVDQASCW.cjs.map} +1 -1
- package/dist/{chunk-6ID65TQG.js → chunk-SWINK5Y3.js} +3 -3
- package/dist/{chunk-6ID65TQG.js.map → chunk-SWINK5Y3.js.map} +1 -1
- package/dist/{chunk-4NAFUTJI.cjs → chunk-THHT3YH2.cjs} +64 -64
- package/dist/{chunk-4NAFUTJI.cjs.map → chunk-THHT3YH2.cjs.map} +1 -1
- package/dist/{chunk-PMGFP7II.cjs → chunk-THQZFNHO.cjs} +10 -10
- package/dist/{chunk-PMGFP7II.cjs.map → chunk-THQZFNHO.cjs.map} +1 -1
- package/dist/{chunk-JK3W6FO7.js → chunk-TYWNSIO2.js} +4 -4
- package/dist/{chunk-JK3W6FO7.js.map → chunk-TYWNSIO2.js.map} +1 -1
- package/dist/{chunk-SKWXNNTT.cjs → chunk-UWGT2JVT.cjs} +8 -8
- package/dist/{chunk-SKWXNNTT.cjs.map → chunk-UWGT2JVT.cjs.map} +1 -1
- package/dist/{chunk-YEQZMTCM.js → chunk-UXFBPV3G.js} +4 -4
- package/dist/{chunk-YEQZMTCM.js.map → chunk-UXFBPV3G.js.map} +1 -1
- package/dist/{chunk-AV3PJKO6.cjs → chunk-VKJ7U3MC.cjs} +28 -28
- package/dist/{chunk-AV3PJKO6.cjs.map → chunk-VKJ7U3MC.cjs.map} +1 -1
- package/dist/{chunk-ZV6M52SI.cjs → chunk-VPLRJQHG.cjs} +101 -101
- package/dist/{chunk-ZV6M52SI.cjs.map → chunk-VPLRJQHG.cjs.map} +1 -1
- package/dist/{chunk-VRWDJKTB.js → chunk-VUGDZ2GW.js} +3 -3
- package/dist/{chunk-VRWDJKTB.js.map → chunk-VUGDZ2GW.js.map} +1 -1
- package/dist/{chunk-JEFGF2F5.js → chunk-VYK2C6R3.js} +2 -2
- package/dist/chunk-VYK2C6R3.js.map +1 -0
- package/dist/{chunk-7YCROHVS.js → chunk-W3OYLKI3.js} +3 -3
- package/dist/{chunk-7YCROHVS.js.map → chunk-W3OYLKI3.js.map} +1 -1
- package/dist/{chunk-2WRJFEJK.js → chunk-WBPOFUFH.js} +3 -3
- package/dist/{chunk-2WRJFEJK.js.map → chunk-WBPOFUFH.js.map} +1 -1
- package/dist/{chunk-LJF6NNH5.cjs → chunk-WSLO4UJA.cjs} +10 -10
- package/dist/{chunk-LJF6NNH5.cjs.map → chunk-WSLO4UJA.cjs.map} +1 -1
- package/dist/{chunk-GCI33AN4.cjs → chunk-X7436A3H.cjs} +10 -10
- package/dist/{chunk-GCI33AN4.cjs.map → chunk-X7436A3H.cjs.map} +1 -1
- package/dist/{chunk-Z4VYX32V.js → chunk-XD3YM6GC.js} +3 -3
- package/dist/{chunk-Z4VYX32V.js.map → chunk-XD3YM6GC.js.map} +1 -1
- package/dist/{chunk-CIR74QPG.cjs → chunk-YDAA6BEX.cjs} +10 -10
- package/dist/{chunk-CIR74QPG.cjs.map → chunk-YDAA6BEX.cjs.map} +1 -1
- package/dist/{chunk-AMLYUMNH.js → chunk-YFTWZV4W.js} +3 -3
- package/dist/{chunk-AMLYUMNH.js.map → chunk-YFTWZV4W.js.map} +1 -1
- package/dist/{chunk-XWG6QKGI.js → chunk-YVT7P4ZS.js} +3 -3
- package/dist/{chunk-XWG6QKGI.js.map → chunk-YVT7P4ZS.js.map} +1 -1
- package/dist/{chunk-VTA32BYJ.cjs → chunk-YXCSR2S3.cjs} +158 -104
- package/dist/chunk-YXCSR2S3.cjs.map +1 -0
- package/dist/{chunk-UVGAYAEV.js → chunk-Z2QGIB47.js} +4 -4
- package/dist/{chunk-UVGAYAEV.js.map → chunk-Z2QGIB47.js.map} +1 -1
- package/dist/{chunk-5IMX5NM3.js → chunk-ZH5SPJZR.js} +3 -3
- package/dist/{chunk-5IMX5NM3.js.map → chunk-ZH5SPJZR.js.map} +1 -1
- package/dist/{chunk-MZLIIHA3.js → chunk-ZIRZQFBQ.js} +4 -4
- package/dist/{chunk-MZLIIHA3.js.map → chunk-ZIRZQFBQ.js.map} +1 -1
- package/dist/{dist-2YFKAQMY.js → dist-3IOY4UDH.js} +3 -3
- package/dist/{dist-2YFKAQMY.js.map → dist-3IOY4UDH.js.map} +1 -1
- package/dist/{dist-JWLVQJFQ.js → dist-5PUBSY65.js} +3 -3
- package/dist/{dist-JWLVQJFQ.js.map → dist-5PUBSY65.js.map} +1 -1
- package/dist/{dist-WBYMZPKB.cjs → dist-7ROGUSJI.cjs} +26 -26
- package/dist/{dist-WBYMZPKB.cjs.map → dist-7ROGUSJI.cjs.map} +1 -1
- package/dist/dist-BJSMOQXN.cjs +16 -0
- package/dist/{dist-NYM3IQLY.cjs.map → dist-BJSMOQXN.cjs.map} +1 -1
- package/dist/{dist-6VCC76Q3.cjs → dist-I2O6YPDX.cjs} +30 -30
- package/dist/{dist-6VCC76Q3.cjs.map → dist-I2O6YPDX.cjs.map} +1 -1
- package/dist/{dist-M3P3YMJP.cjs → dist-I5TS34XK.cjs} +28 -28
- package/dist/{dist-M3P3YMJP.cjs.map → dist-I5TS34XK.cjs.map} +1 -1
- package/dist/{dist-J4UWKVDM.js → dist-IB5HRZQW.js} +3 -3
- package/dist/{dist-J4UWKVDM.js.map → dist-IB5HRZQW.js.map} +1 -1
- package/dist/{dist-53MHW3NX.js → dist-PBGEHTO5.js} +194 -76
- package/dist/dist-PBGEHTO5.js.map +1 -0
- package/dist/{dist-N3JU7LHJ.cjs → dist-RRHVN2FI.cjs} +198 -80
- package/dist/dist-RRHVN2FI.cjs.map +1 -0
- package/dist/dist-SOVT5P5X.js +3 -0
- package/dist/{dist-CB67HEFG.js.map → dist-SOVT5P5X.js.map} +1 -1
- package/dist/{dist-CIZY7VDE.cjs → dist-YPPUCXOD.cjs} +20 -20
- package/dist/{dist-CIZY7VDE.cjs.map → dist-YPPUCXOD.cjs.map} +1 -1
- package/dist/{dist-IPZQFQMB.js → dist-Z62354D3.js} +3 -3
- package/dist/{dist-IPZQFQMB.js.map → dist-Z62354D3.js.map} +1 -1
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/{observational-memory-GAYCVM5R-47CI5MFB.js → observational-memory-OJN26RQ4-6ZDBBFBM.js} +3 -3
- package/dist/{observational-memory-GAYCVM5R-47CI5MFB.js.map → observational-memory-OJN26RQ4-6ZDBBFBM.js.map} +1 -1
- package/dist/{observational-memory-GAYCVM5R-DHBARU7H.cjs → observational-memory-OJN26RQ4-UCN4RMRQ.cjs} +29 -29
- package/dist/{observational-memory-GAYCVM5R-DHBARU7H.cjs.map → observational-memory-OJN26RQ4-UCN4RMRQ.cjs.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 +17 -17
- package/dist/server/handlers/agent-builder.js +1 -1
- package/dist/server/handlers/agent-controller.cjs +35 -35
- package/dist/server/handlers/agent-controller.d.ts +213 -82
- package/dist/server/handlers/agent-controller.d.ts.map +1 -1
- package/dist/server/handlers/agent-controller.js +1 -1
- package/dist/server/handlers/agent-versions.cjs +8 -8
- package/dist/server/handlers/agent-versions.js +1 -1
- package/dist/server/handlers/agents.cjs +48 -48
- package/dist/server/handlers/agents.js +1 -1
- package/dist/server/handlers/auth.cjs +13 -13
- package/dist/server/handlers/auth.js +1 -1
- 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 +6 -6
- package/dist/server/handlers/builder-registry.js +1 -1
- 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.js +1 -1
- package/dist/server/handlers/editor-builder.cjs +6 -6
- package/dist/server/handlers/editor-builder.js +1 -1
- package/dist/server/handlers/favorites-enrichment.cjs +4 -4
- package/dist/server/handlers/favorites-enrichment.js +1 -1
- package/dist/server/handlers/gateway-memory-client.cjs +8 -8
- package/dist/server/handlers/gateway-memory-client.d.ts +1 -1
- package/dist/server/handlers/gateway-memory-client.js +1 -1
- 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.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.js +1 -1
- package/dist/server/handlers/observability-new-endpoints.cjs +29 -29
- package/dist/server/handlers/observability-new-endpoints.js +1 -1
- package/dist/server/handlers/observability-shared.cjs +9 -9
- package/dist/server/handlers/observability-shared.js +1 -1
- package/dist/server/handlers/observability.cjs +40 -40
- 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.js +1 -1
- package/dist/server/handlers/responses.cjs +4 -4
- package/dist/server/handlers/responses.js +1 -1
- package/dist/server/handlers/schedules.cjs +10 -10
- package/dist/server/handlers/schedules.js +1 -1
- package/dist/server/handlers/scorer-versions.cjs +8 -8
- 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/stored-agent-favorites.cjs +3 -3
- package/dist/server/handlers/stored-agent-favorites.js +1 -1
- package/dist/server/handlers/stored-agents.cjs +10 -10
- 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.js +1 -1
- package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
- 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.js +1 -1
- package/dist/server/handlers/stored-skill-favorites.cjs +3 -3
- package/dist/server/handlers/stored-skill-favorites.js +1 -1
- package/dist/server/handlers/stored-skills.cjs +7 -7
- package/dist/server/handlers/stored-skills.js +1 -1
- package/dist/server/handlers/stored-workspaces.cjs +6 -6
- 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 +14 -14
- 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/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 +27 -27
- 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 +30 -30
- package/dist/server/handlers.js +15 -15
- package/dist/server/schemas/index.cjs +7 -7
- package/dist/server/schemas/index.js +1 -1
- package/dist/server/server-adapter/index.cjs +21 -21
- package/dist/server/server-adapter/index.js +4 -4
- package/dist/working-memory-state-OMSMSYAW-6OXJFZFI.js +3 -0
- package/dist/{working-memory-state-OMSMSYAW-NEULPFZX.js.map → working-memory-state-OMSMSYAW-6OXJFZFI.js.map} +1 -1
- package/dist/working-memory-state-OMSMSYAW-GCNI4HPX.cjs +24 -0
- package/dist/{working-memory-state-OMSMSYAW-4THWAGFK.cjs.map → working-memory-state-OMSMSYAW-GCNI4HPX.cjs.map} +1 -1
- package/package.json +11 -11
- package/dist/chunk-3QVZXWIE.cjs.map +0 -1
- package/dist/chunk-7YBYLB2K.cjs.map +0 -1
- package/dist/chunk-C4AFQDAO.js.map +0 -1
- package/dist/chunk-CB3IBAR2.js.map +0 -1
- package/dist/chunk-IYKBTTYT.cjs +0 -744
- package/dist/chunk-JEFGF2F5.js.map +0 -1
- package/dist/chunk-NCHOAORF.cjs.map +0 -1
- package/dist/chunk-SB3YYDCD.js.map +0 -1
- package/dist/chunk-VTA32BYJ.cjs.map +0 -1
- package/dist/dist-53MHW3NX.js.map +0 -1
- package/dist/dist-CB67HEFG.js +0 -3
- package/dist/dist-N3JU7LHJ.cjs.map +0 -1
- package/dist/dist-NYM3IQLY.cjs +0 -16
- package/dist/working-memory-state-OMSMSYAW-4THWAGFK.cjs +0 -24
- package/dist/working-memory-state-OMSMSYAW-NEULPFZX.js +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/handlers/stored-agent-favorites.ts"],"names":[],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/server/handlers/stored-agent-favorites.ts"],"names":[],"mappings":"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","file":"chunk-MD72DZKF.js","sourcesContent":["import { HTTPException } from '../http-exception';\nimport { favoriteToggleResponseSchema } from '../schemas/favorites';\nimport { storedAgentIdPathParams } from '../schemas/stored-agents';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { assertStoredResourceScope, getStoredResourceScope } from '../utils';\n\nimport { assertReadAccess, getCallerAuthorId } from './authorship';\nimport { requireBuilderFeature } from './editor-builder';\nimport { handleError } from './error';\n\n/**\n * Resolves the storage and favorites domains, throwing 500 if unavailable.\n */\nasync function getFavoritesContext(mastra: Parameters<typeof requireBuilderFeature>[0]) {\n const storage = mastra.getStorage();\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n const agentStore = await storage.getStore('agents');\n if (!agentStore) {\n throw new HTTPException(500, { message: 'Agents storage domain is not available' });\n }\n const favoritesStore = await storage.getStore('favorites');\n if (!favoritesStore) {\n throw new HTTPException(500, { message: 'Favorites storage domain is not available' });\n }\n return { agentStore, favoritesStore };\n}\n\n/**\n * PUT /stored/agents/:storedAgentId/favorite\n */\nexport const FAVORITE_STORED_AGENT_ROUTE = createRoute({\n method: 'PUT',\n path: '/stored/agents/:storedAgentId/favorite',\n responseType: 'json',\n pathParamSchema: storedAgentIdPathParams,\n responseSchema: favoriteToggleResponseSchema,\n summary: 'Favorite a stored agent',\n description: 'Marks the stored agent as favorited by the calling user. Idempotent.',\n tags: ['Stored Agents'],\n requiresAuth: true,\n requiresPermission: 'stored-agents:read',\n handler: async ({ mastra, requestContext, storedAgentId }) => {\n try {\n await requireBuilderFeature(mastra, 'favorites');\n\n const callerId = getCallerAuthorId(requestContext);\n if (!callerId) {\n throw new HTTPException(401, { message: 'Authentication required' });\n }\n\n const { agentStore, favoritesStore } = await getFavoritesContext(mastra);\n\n const agent = await agentStore.getById(storedAgentId);\n if (!agent) {\n throw new HTTPException(404, { message: `Stored agent with id ${storedAgentId} not found` });\n }\n assertStoredResourceScope(agent, await getStoredResourceScope(mastra, requestContext));\n\n // Throws 404 if the caller cannot read the agent (private + not owner/admin).\n assertReadAccess({ requestContext, resource: 'stored-agents', resourceId: storedAgentId, record: agent });\n\n const result = await favoritesStore.favorite({\n userId: callerId,\n entityType: 'agent',\n entityId: storedAgentId,\n });\n return result;\n } catch (error) {\n return handleError(error, 'Error favoriting stored agent');\n }\n },\n});\n\n/**\n * DELETE /stored/agents/:storedAgentId/favorite\n */\nexport const UNFAVORITE_STORED_AGENT_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/agents/:storedAgentId/favorite',\n responseType: 'json',\n pathParamSchema: storedAgentIdPathParams,\n responseSchema: favoriteToggleResponseSchema,\n summary: 'Unfavorite a stored agent',\n description: 'Removes the caller’s favorite from the stored agent. Idempotent.',\n tags: ['Stored Agents'],\n requiresAuth: true,\n requiresPermission: 'stored-agents:read',\n handler: async ({ mastra, requestContext, storedAgentId }) => {\n try {\n await requireBuilderFeature(mastra, 'favorites');\n\n const callerId = getCallerAuthorId(requestContext);\n if (!callerId) {\n throw new HTTPException(401, { message: 'Authentication required' });\n }\n\n const { agentStore, favoritesStore } = await getFavoritesContext(mastra);\n\n const agent = await agentStore.getById(storedAgentId);\n if (!agent) {\n throw new HTTPException(404, { message: `Stored agent with id ${storedAgentId} not found` });\n }\n assertStoredResourceScope(agent, await getStoredResourceScope(mastra, requestContext));\n\n assertReadAccess({ requestContext, resource: 'stored-agents', resourceId: storedAgentId, record: agent });\n\n const result = await favoritesStore.unfavorite({\n userId: callerId,\n entityType: 'agent',\n entityId: storedAgentId,\n });\n return result;\n } catch (error) {\n return handleError(error, 'Error unfavoriting stored agent');\n }\n },\n});\n"]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { storedSkillIdPathParams } from './chunk-UIRQU4GW.js';
|
|
2
2
|
import { favoriteToggleResponseSchema } from './chunk-SFPN7SHZ.js';
|
|
3
|
-
import { requireBuilderFeature } from './chunk-
|
|
3
|
+
import { requireBuilderFeature } from './chunk-64F6SQJI.js';
|
|
4
4
|
import { getCallerAuthorId, assertReadAccess } from './chunk-SXZS6VZ3.js';
|
|
5
5
|
import { assertStoredResourceScope, getStoredResourceScope } from './chunk-QIQWHDPH.js';
|
|
6
6
|
import { handleError } from './chunk-7ZWJX3AN.js';
|
|
7
|
-
import { createRoute } from './chunk-
|
|
7
|
+
import { createRoute } from './chunk-PTJBYYMK.js';
|
|
8
8
|
import { HTTPException } from './chunk-6QWQZI4Q.js';
|
|
9
9
|
|
|
10
10
|
// src/server/handlers/stored-skill-favorites.ts
|
|
@@ -97,5 +97,5 @@ var UNFAVORITE_STORED_SKILL_ROUTE = createRoute({
|
|
|
97
97
|
});
|
|
98
98
|
|
|
99
99
|
export { FAVORITE_STORED_SKILL_ROUTE, UNFAVORITE_STORED_SKILL_ROUTE };
|
|
100
|
-
//# sourceMappingURL=chunk-
|
|
101
|
-
//# sourceMappingURL=chunk-
|
|
100
|
+
//# sourceMappingURL=chunk-MEWQVBMF.js.map
|
|
101
|
+
//# sourceMappingURL=chunk-MEWQVBMF.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/handlers/stored-skill-favorites.ts"],"names":[],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/server/handlers/stored-skill-favorites.ts"],"names":[],"mappings":"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","file":"chunk-MEWQVBMF.js","sourcesContent":["import { HTTPException } from '../http-exception';\nimport { favoriteToggleResponseSchema } from '../schemas/favorites';\nimport { storedSkillIdPathParams } from '../schemas/stored-skills';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { assertStoredResourceScope, getStoredResourceScope } from '../utils';\n\nimport { assertReadAccess, getCallerAuthorId } from './authorship';\nimport { requireBuilderFeature } from './editor-builder';\nimport { handleError } from './error';\n\n/**\n * Resolves the storage and favorites domains, throwing 500 if unavailable.\n */\nasync function getFavoritesContext(mastra: Parameters<typeof requireBuilderFeature>[0]) {\n const storage = mastra.getStorage();\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\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 const favoritesStore = await storage.getStore('favorites');\n if (!favoritesStore) {\n throw new HTTPException(500, { message: 'Favorites storage domain is not available' });\n }\n return { skillStore, favoritesStore };\n}\n\n/**\n * PUT /stored/skills/:storedSkillId/favorite\n */\nexport const FAVORITE_STORED_SKILL_ROUTE = createRoute({\n method: 'PUT',\n path: '/stored/skills/:storedSkillId/favorite',\n responseType: 'json',\n pathParamSchema: storedSkillIdPathParams,\n responseSchema: favoriteToggleResponseSchema,\n summary: 'Favorite a stored skill',\n description: 'Marks the stored skill as favorited by the calling user. Idempotent.',\n tags: ['Stored Skills'],\n requiresAuth: true,\n requiresPermission: 'stored-skills:read',\n handler: async ({ mastra, requestContext, storedSkillId }) => {\n try {\n await requireBuilderFeature(mastra, 'favorites');\n\n const callerId = getCallerAuthorId(requestContext);\n if (!callerId) {\n throw new HTTPException(401, { message: 'Authentication required' });\n }\n\n const { skillStore, favoritesStore } = await getFavoritesContext(mastra);\n\n const skill = await skillStore.getByIdResolved(storedSkillId);\n if (!skill) {\n throw new HTTPException(404, { message: `Stored skill with id ${storedSkillId} not found` });\n }\n assertStoredResourceScope(skill, await getStoredResourceScope(mastra, requestContext));\n\n // Throws 404 if the caller cannot read the skill (private + not owner/admin).\n assertReadAccess({ requestContext, resource: 'stored-skills', resourceId: storedSkillId, record: skill });\n\n const result = await favoritesStore.favorite({\n userId: callerId,\n entityType: 'skill',\n entityId: storedSkillId,\n });\n return result;\n } catch (error) {\n return handleError(error, 'Error favoriting stored skill');\n }\n },\n});\n\n/**\n * DELETE /stored/skills/:storedSkillId/favorite\n */\nexport const UNFAVORITE_STORED_SKILL_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/skills/:storedSkillId/favorite',\n responseType: 'json',\n pathParamSchema: storedSkillIdPathParams,\n responseSchema: favoriteToggleResponseSchema,\n summary: 'Unfavorite a stored skill',\n description: 'Removes the caller’s favorite from the stored skill. Idempotent.',\n tags: ['Stored Skills'],\n requiresAuth: true,\n requiresPermission: 'stored-skills:read',\n handler: async ({ mastra, requestContext, storedSkillId }) => {\n try {\n await requireBuilderFeature(mastra, 'favorites');\n\n const callerId = getCallerAuthorId(requestContext);\n if (!callerId) {\n throw new HTTPException(401, { message: 'Authentication required' });\n }\n\n const { skillStore, favoritesStore } = await getFavoritesContext(mastra);\n\n const skill = await skillStore.getByIdResolved(storedSkillId);\n if (!skill) {\n throw new HTTPException(404, { message: `Stored skill with id ${storedSkillId} not found` });\n }\n assertStoredResourceScope(skill, await getStoredResourceScope(mastra, requestContext));\n\n assertReadAccess({ requestContext, resource: 'stored-skills', resourceId: storedSkillId, record: skill });\n\n const result = await favoritesStore.unfavorite({\n userId: callerId,\n entityType: 'skill',\n entityId: storedSkillId,\n });\n return result;\n } catch (error) {\n return handleError(error, 'Error unfavoriting stored skill');\n }\n },\n});\n"]}
|
|
@@ -521,5 +521,5 @@ var GET_LISTENER_ROUTE = createRoute({
|
|
|
521
521
|
});
|
|
522
522
|
|
|
523
523
|
export { GENERATE_SPEECH_DEPRECATED_ROUTE, GENERATE_SPEECH_ROUTE, GET_LISTENER_ROUTE, GET_SPEAKERS_DEPRECATED_ROUTE, GET_SPEAKERS_ROUTE, TRANSCRIBE_SPEECH_DEPRECATED_ROUTE, TRANSCRIBE_SPEECH_ROUTE, generateSpeechBodySchema, getListenerResponseSchema, speakResponseSchema, transcribeSpeechBodySchema, transcribeSpeechResponseSchema, voiceSpeakersResponseSchema };
|
|
524
|
-
//# sourceMappingURL=chunk-
|
|
525
|
-
//# sourceMappingURL=chunk-
|
|
524
|
+
//# sourceMappingURL=chunk-MG3WOQQQ.js.map
|
|
525
|
+
//# sourceMappingURL=chunk-MG3WOQQQ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../_internal-core/src/error/utils.ts","../../_internal-core/src/error/index.ts","../../_internal-core/src/routes/index.ts","../../_internals/voice/src/routes/index.ts"],"names":["ErrorDomain"],"mappings":"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","file":"chunk-LPT77UR6.js","sourcesContent":["/**\n * Safely converts an object to a string representation.\n * Uses JSON.stringify first, but falls back to String() if:\n * - JSON.stringify fails (e.g., circular references)\n * - JSON.stringify returns \"{}\" (e.g., Error objects with no enumerable properties)\n */\nexport function safeParseErrorObject(obj: unknown): string {\n if (typeof obj !== 'object' || obj === null) {\n return String(obj);\n }\n\n try {\n const stringified = JSON.stringify(obj);\n // If JSON.stringify returns \"{}\", fall back to String() for better representation\n if (stringified === '{}') {\n return String(obj);\n }\n return stringified;\n } catch {\n // Fallback to String() if JSON.stringify fails (e.g., circular references)\n return String(obj);\n }\n}\n\n/**\n * Represents a serialized error structure for JSON output.\n */\nexport type SerializedError = {\n name: string;\n message: string;\n stack?: string;\n cause?: SerializedError | unknown;\n} & Record<string, any>;\n\n/**\n * An Error instance with a toJSON method for proper serialization.\n */\nexport type SerializableError = Error & {\n toJSON: () => SerializedError;\n};\n\n/**\n * Safely converts an unknown error to an Error instance.\n */\nexport function getErrorFromUnknown<SERIALIZABLE extends boolean = true>(\n unknown: unknown,\n options: {\n /**\n * The fallback error message to use if the unknown error cannot be parsed.\n */\n fallbackMessage?: string;\n /**\n * The maximum depth to parse the cause of the error.\n */\n maxDepth?: number;\n /**\n * Whether to add .toJSON() method to the error instance to support serialization. (JSON.stringify)\n * @example\n * const error = getErrorFromUnknown(new Error('test'), { supportSerialization: true });\n * JSON.stringify(error) // { message: 'test', name: 'Error', stack: 'Error: test\\n at ...' }\n */\n supportSerialization?: SERIALIZABLE;\n /**\n * Whether to include the stack in JSON serialization.\n * The stack is always preserved on the Error instance for debugging.\n * This option only controls whether it appears in toJSON() output.\n * @default true\n */\n serializeStack?: boolean;\n } = {},\n): SERIALIZABLE extends true ? SerializableError : Error {\n const defaultOptions = {\n fallbackMessage: 'Unknown error',\n maxDepth: 5,\n supportSerialization: true,\n serializeStack: true,\n };\n const mergedOptions = options ? { ...defaultOptions, ...options } : defaultOptions;\n const { fallbackMessage, maxDepth, supportSerialization, serializeStack } = mergedOptions;\n\n if (unknown && unknown instanceof Error) {\n // Stack is always preserved on the instance for debugging\n // serializeStack only controls whether it appears in toJSON() output\n if (supportSerialization) {\n addErrorToJSON(unknown, serializeStack, { maxDepth });\n }\n return unknown as SERIALIZABLE extends true ? SerializableError : Error;\n }\n\n let error: Error | undefined;\n\n if (unknown && typeof unknown === 'object') {\n const errorMessage =\n unknown && 'message' in unknown && typeof unknown.message === 'string'\n ? unknown.message\n : safeParseErrorObject(unknown);\n\n const errorCause =\n 'cause' in unknown && unknown.cause !== undefined\n ? unknown.cause instanceof Error\n ? unknown.cause\n : maxDepth > 0 // Only process cause if we haven't exceeded max depth\n ? getErrorFromUnknown(unknown.cause, { ...mergedOptions, maxDepth: maxDepth - 1 })\n : undefined\n : undefined;\n\n error = new Error(errorMessage, errorCause ? { cause: errorCause } : undefined);\n\n Object.assign(error as Error, unknown);\n error.stack = 'stack' in unknown && typeof unknown.stack === 'string' ? unknown.stack : undefined;\n } else if (unknown && typeof unknown === 'string') {\n error = new Error(unknown);\n error.stack = undefined;\n } else {\n error = new Error(fallbackMessage);\n }\n\n if (supportSerialization) {\n addErrorToJSON(error, serializeStack, { maxDepth });\n }\n return error as SERIALIZABLE extends true ? SerializableError : Error;\n}\n\nconst DEFAULT_MAX_DEPTH = 5;\n\n/**\n * Adds a toJSON method to an Error instance for proper serialization.\n * Ensures that message, name, cause, and custom properties are all serialized.\n * Stack is only included in JSON output if serializeStack is true.\n * Recursively adds toJSON to the cause chain for proper nested error serialization.\n */\nfunction addErrorToJSON(\n error: Error,\n serializeStack: boolean = true,\n options?: { maxDepth?: number; currentDepth?: number },\n): void {\n const maxDepth = options?.maxDepth ?? DEFAULT_MAX_DEPTH;\n const currentDepth = options?.currentDepth ?? 0;\n\n // Skip if error already has toJSON - preserves custom implementations\n // and avoids re-processing (first call's options win)\n if ((error as SerializableError).toJSON) {\n return;\n }\n\n // Recursively add toJSON to cause chain (with depth protection)\n if (error.cause instanceof Error && currentDepth < maxDepth) {\n addErrorToJSON(error.cause, serializeStack, { maxDepth, currentDepth: currentDepth + 1 });\n }\n\n // Define toJSON as non-enumerable to avoid interfering with object comparisons\n Object.defineProperty(error, 'toJSON', {\n value: function (this: Error) {\n const json: SerializedError = {\n message: this.message,\n name: this.name,\n };\n // Only include stack in JSON if serializeStack is true\n if (serializeStack && this.stack !== undefined) {\n json.stack = this.stack;\n }\n\n // Serialize cause if it's an Error and has a toJSON method, else include as is\n if (this.cause !== undefined) {\n if (this.cause instanceof Error && 'toJSON' in this.cause && typeof this.cause.toJSON === 'function') {\n json.cause = this.cause.toJSON();\n } else {\n json.cause = this.cause;\n }\n }\n\n // Include all enumerable custom properties\n const errorAsAny = this as any;\n for (const key in errorAsAny) {\n if (errorAsAny.hasOwnProperty(key) && !(key in json) && key !== 'toJSON') {\n json[key] = errorAsAny[key];\n }\n }\n\n return json;\n },\n enumerable: false,\n writable: true,\n configurable: true,\n });\n}\n","import { getErrorFromUnknown } from './utils.js';\nimport type { SerializableError, SerializedError } from './utils.js';\n\nexport { getErrorFromUnknown, safeParseErrorObject } from './utils.js';\nexport type { SerializableError, SerializedError };\n\nexport enum ErrorDomain {\n TOOL = 'TOOL',\n AGENT = 'AGENT',\n MCP = 'MCP',\n AGENT_NETWORK = 'AGENT_NETWORK',\n MASTRA_SERVER = 'MASTRA_SERVER',\n MASTRA_OBSERVABILITY = 'MASTRA_OBSERVABILITY',\n MASTRA_WORKFLOW = 'MASTRA_WORKFLOW',\n MASTRA_VOICE = 'MASTRA_VOICE',\n MASTRA_VECTOR = 'MASTRA_VECTOR',\n MASTRA_MEMORY = 'MASTRA_MEMORY',\n LLM = 'LLM',\n EVAL = 'EVAL',\n SCORER = 'SCORER',\n A2A = 'A2A',\n MASTRA_INSTANCE = 'MASTRA_INSTANCE',\n MASTRA = 'MASTRA',\n DEPLOYER = 'DEPLOYER',\n STORAGE = 'STORAGE',\n MODEL_ROUTER = 'MODEL_ROUTER',\n}\n\nexport enum ErrorCategory {\n UNKNOWN = 'UNKNOWN',\n USER = 'USER',\n SYSTEM = 'SYSTEM',\n THIRD_PARTY = 'THIRD_PARTY',\n}\n\ntype Scalar = null | boolean | number | string;\n\ntype Json<T> = [T] extends [Scalar | undefined]\n ? Scalar\n : [T] extends [{ [x: number]: unknown }]\n ? { [K in keyof T]: Json<T[K]> }\n : never;\n\n/**\n * Defines the structure for an error's metadata.\n * This is used to create instances of MastraError.\n */\nexport interface IErrorDefinition<DOMAIN, CATEGORY> {\n /** Unique identifier for the error. */\n id: Uppercase<string>;\n /**\n * Optional custom error message that overrides the original error message.\n * If not provided, the original error message will be used, or 'Unknown error' if no error is provided.\n */\n text?: string;\n /**\n * Functional domain of the error (e.g., CONFIG, BUILD, API).\n */\n domain: DOMAIN;\n /** Broad category of the error (e.g., USER, SYSTEM, THIRD_PARTY). */\n category: CATEGORY;\n\n details?: Record<string, Json<Scalar>>;\n}\n\n/**\n * JSON representation of a MastraError for serialization\n */\nexport interface MastraErrorJSON<DOMAIN = string, CATEGORY = string> {\n message: string;\n code: Uppercase<string>;\n category: CATEGORY;\n domain: DOMAIN;\n details?: Record<string, Json<Scalar>>;\n cause?: ReturnType<SerializableError['toJSON']>;\n}\n\n/**\n * Base error class for the Mastra ecosystem.\n * It standardizes error reporting and can be extended for more specific error types.\n */\nexport class MastraBaseError<DOMAIN, CATEGORY> extends Error {\n public readonly id: Uppercase<string>;\n public readonly domain: DOMAIN;\n public readonly category: CATEGORY;\n public readonly details?: Record<string, Json<Scalar>> = {};\n public readonly message: string;\n public cause?: SerializableError;\n\n constructor(\n errorDefinition: IErrorDefinition<DOMAIN, CATEGORY>,\n originalError?: string | Error | MastraBaseError<DOMAIN, CATEGORY> | unknown,\n ) {\n const error = originalError\n ? getErrorFromUnknown(originalError, {\n serializeStack: false,\n fallbackMessage: 'Unknown error',\n })\n : undefined;\n\n const message = errorDefinition.text ?? error?.message ?? 'Unknown error';\n\n super(message, { cause: error });\n this.id = errorDefinition.id;\n this.domain = errorDefinition.domain;\n this.category = errorDefinition.category;\n this.details = errorDefinition.details ?? {};\n this.message = message;\n this.cause = error;\n\n Object.setPrototypeOf(this, new.target.prototype);\n }\n\n /**\n * Returns a structured representation of the error, useful for logging or API responses.\n */\n public toJSONDetails() {\n return {\n message: this.message,\n domain: this.domain,\n category: this.category,\n details: this.details,\n };\n }\n\n public toJSON(): MastraErrorJSON<DOMAIN, CATEGORY> {\n return {\n message: this.message,\n domain: this.domain,\n category: this.category,\n code: this.id,\n details: this.details,\n cause: this.cause?.toJSON?.(),\n };\n }\n\n public toString() {\n return JSON.stringify(this.toJSON());\n }\n}\n\nexport class MastraError extends MastraBaseError<`${ErrorDomain}`, `${ErrorCategory}`> {}\n","import type * as z from 'zod/v4';\nimport type { RequestContext } from '../request-context';\nimport type { ToolsInput } from '../types';\n\nexport interface OpenAPIRoute {\n summary?: string;\n description?: string;\n tags?: string[];\n deprecated?: boolean;\n requestParams?: {\n path?: z.ZodSchema;\n query?: z.ZodSchema;\n };\n requestBody?: {\n content: {\n 'application/json': {\n schema: z.ZodSchema;\n };\n };\n };\n responses: {\n [statusCode: string]: {\n description: string;\n content?: {\n 'application/json': {\n schema: z.ZodSchema;\n };\n };\n };\n };\n}\n\ninterface RouteOpenAPIConfig {\n method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';\n path: string;\n summary?: string;\n description?: string;\n tags?: string[];\n pathParamSchema?: z.ZodSchema;\n queryParamSchema?: z.ZodSchema;\n bodySchema?: z.ZodSchema;\n responseSchema?: z.ZodSchema;\n deprecated?: boolean;\n}\n\nexport function generateRouteOpenAPI({\n method,\n path,\n summary,\n description,\n tags = [],\n pathParamSchema,\n queryParamSchema,\n bodySchema,\n responseSchema,\n deprecated,\n}: RouteOpenAPIConfig): OpenAPIRoute {\n const route: OpenAPIRoute = {\n summary: summary || `${method} ${path}`,\n description,\n tags,\n deprecated,\n responses: {\n 200: {\n description: 'Successful response',\n },\n },\n };\n\n if (pathParamSchema || queryParamSchema) {\n route.requestParams = {};\n\n if (pathParamSchema) {\n route.requestParams.path = pathParamSchema;\n }\n\n if (queryParamSchema) {\n route.requestParams.query = queryParamSchema;\n }\n }\n\n if (bodySchema) {\n route.requestBody = {\n content: {\n 'application/json': {\n schema: bodySchema,\n },\n },\n };\n }\n\n if (responseSchema) {\n route.responses[200] = {\n description: 'Successful response',\n content: {\n 'application/json': {\n schema: responseSchema,\n },\n },\n };\n }\n\n return route;\n}\n\nexport type ResponseType = 'stream' | 'json' | 'datastream-response' | 'mcp-http' | 'mcp-sse';\n\nexport type InferParams<\n TPathSchema extends z.ZodTypeAny | undefined,\n TQuerySchema extends z.ZodTypeAny | undefined,\n TBodySchema extends z.ZodTypeAny | undefined,\n> = (TPathSchema extends z.ZodTypeAny ? z.infer<TPathSchema> : {}) &\n (TQuerySchema extends z.ZodTypeAny ? z.infer<TQuerySchema> : {}) &\n (TBodySchema extends z.ZodTypeAny ? z.infer<TBodySchema> : {});\n\nexport interface RouteSchemas<\n TPathSchema = unknown,\n TQuerySchema = unknown,\n TBodySchema = unknown,\n TResponseSchema = unknown,\n> {\n readonly pathParams: TPathSchema;\n readonly queryParams: TQuerySchema;\n readonly body: TBodySchema;\n readonly response: TResponseSchema;\n}\n\nexport type ServerContext = {\n mastra: any;\n requestContext: RequestContext;\n registeredTools?: ToolsInput;\n taskStore?: unknown;\n abortSignal: AbortSignal;\n routePrefix?: string;\n};\n\nexport type ServerRouteHandler<\n TParams = Record<string, unknown>,\n TResponse = unknown,\n TResponseType extends ResponseType = 'json',\n> = (\n params: TParams & ServerContext,\n) => Promise<\n TResponseType extends 'stream' ? ReadableStream : TResponseType extends 'datastream-response' ? Response : TResponse\n>;\n\nexport type ValidationErrorHook = (error: z.ZodError) => { status?: number; body?: unknown } | void;\n\nexport type ServerRoute<\n TParams = Record<string, unknown>,\n TResponse = unknown,\n TResponseType extends ResponseType = ResponseType,\n TSchemas extends RouteSchemas = RouteSchemas,\n TMethod extends string = string,\n TPath extends string = string,\n> = {\n method: TMethod;\n path: TPath;\n responseType: TResponseType;\n streamFormat?: 'sse' | 'stream';\n sseFlushOnConnect?: boolean;\n handler(params: TParams & ServerContext): ReturnType<ServerRouteHandler<TParams, TResponse, TResponseType>>;\n pathParamSchema?: z.ZodSchema;\n queryParamSchema?: z.ZodSchema;\n bodySchema?: z.ZodSchema;\n responseSchema?: z.ZodSchema;\n openapi?: OpenAPIRoute;\n maxBodySize?: number;\n deprecated?: boolean;\n requiresAuth?: boolean;\n requiresPermission?: any;\n fga?: any;\n onValidationError?: ValidationErrorHook;\n readonly __schemas?: TSchemas;\n};\n\ninterface RouteConfig<\n TPathSchema extends z.ZodTypeAny | undefined = undefined,\n TQuerySchema extends z.ZodTypeAny | undefined = undefined,\n TBodySchema extends z.ZodTypeAny | undefined = undefined,\n TResponseSchema extends z.ZodTypeAny | undefined = undefined,\n TResponseType extends ResponseType = 'json',\n TMethod extends string = string,\n TPath extends string = string,\n> {\n method: TMethod;\n path: TPath;\n responseType: TResponseType;\n streamFormat?: 'sse' | 'stream';\n sseFlushOnConnect?: boolean;\n handler: ServerRouteHandler<\n InferParams<TPathSchema, TQuerySchema, TBodySchema>,\n TResponseSchema extends z.ZodTypeAny ? z.infer<TResponseSchema> : unknown,\n TResponseType\n >;\n pathParamSchema?: TPathSchema;\n queryParamSchema?: TQuerySchema;\n bodySchema?: TBodySchema;\n responseSchema?: TResponseSchema;\n summary?: string;\n description?: string;\n tags?: string[];\n deprecated?: boolean;\n maxBodySize?: number;\n requiresAuth?: boolean;\n requiresPermission?: any;\n fga?: any;\n onValidationError?: ValidationErrorHook;\n}\n\nexport function createRoute<\n TPathSchema extends z.ZodTypeAny | undefined = undefined,\n TQuerySchema extends z.ZodTypeAny | undefined = undefined,\n TBodySchema extends z.ZodTypeAny | undefined = undefined,\n TResponseSchema extends z.ZodTypeAny | undefined = undefined,\n TResponseType extends ResponseType = 'json',\n TMethod extends string = string,\n TPath extends string = string,\n>(\n config: RouteConfig<TPathSchema, TQuerySchema, TBodySchema, TResponseSchema, TResponseType, TMethod, TPath>,\n): ServerRoute<\n InferParams<TPathSchema, TQuerySchema, TBodySchema>,\n TResponseSchema extends z.ZodTypeAny ? z.infer<TResponseSchema> : unknown,\n TResponseType,\n RouteSchemas<TPathSchema, TQuerySchema, TBodySchema, TResponseSchema>,\n TMethod,\n TPath\n> {\n const { summary, description, tags, deprecated, requiresAuth, requiresPermission, onValidationError, ...baseRoute } =\n config;\n\n const openapi =\n config.method !== 'ALL'\n ? generateRouteOpenAPI({\n method: config.method as 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH',\n path: config.path,\n summary,\n description,\n tags,\n pathParamSchema: config.pathParamSchema,\n queryParamSchema: config.queryParamSchema,\n bodySchema: config.bodySchema,\n responseSchema: config.responseSchema,\n deprecated,\n })\n : undefined;\n\n return {\n ...baseRoute,\n openapi,\n deprecated,\n requiresAuth,\n requiresPermission,\n onValidationError,\n };\n}\n\nexport function createPublicRoute<\n TPathSchema extends z.ZodTypeAny | undefined = undefined,\n TQuerySchema extends z.ZodTypeAny | undefined = undefined,\n TBodySchema extends z.ZodTypeAny | undefined = undefined,\n TResponseSchema extends z.ZodTypeAny | undefined = undefined,\n TResponseType extends ResponseType = 'json',\n TMethod extends string = string,\n TPath extends string = string,\n>(\n config: Omit<\n RouteConfig<TPathSchema, TQuerySchema, TBodySchema, TResponseSchema, TResponseType, TMethod, TPath>,\n 'requiresAuth'\n >,\n): ServerRoute<\n InferParams<TPathSchema, TQuerySchema, TBodySchema>,\n TResponseSchema extends z.ZodTypeAny ? z.infer<TResponseSchema> : unknown,\n TResponseType,\n RouteSchemas<TPathSchema, TQuerySchema, TBodySchema, TResponseSchema>,\n TMethod,\n TPath\n> {\n return createRoute({\n ...config,\n requiresAuth: false,\n });\n}\n","import { Readable } from 'node:stream';\nimport { ErrorDomain, MastraError } from '@internal/core/error';\nimport type { RequestContext } from '@internal/core/request-context';\nimport { createRoute } from '@internal/core/routes';\nimport { z } from 'zod/v4';\n\nexport const voiceSpeakersResponseSchema = z.array(\n z\n .object({\n voiceId: z.string(),\n })\n .passthrough(),\n);\n\nexport const generateSpeechBodySchema = z.object({\n text: z.string(),\n speakerId: z.string().optional(),\n});\n\nexport const transcribeSpeechBodySchema = z.object({\n audio: z.any(),\n options: z.record(z.string(), z.any()).optional(),\n});\n\nexport const transcribeSpeechResponseSchema = z.object({\n text: z.string(),\n});\n\nexport const getListenerResponseSchema = z.any();\nexport const speakResponseSchema = z.any();\n\nconst agentIdPathParams = z.object({\n agentId: z.string().describe('Agent ID'),\n});\n\ntype StatusCode = 400 | 404 | 500;\n\nclass HTTPException extends Error {\n readonly status: StatusCode;\n\n constructor(status: StatusCode, options: { message?: string; cause?: unknown; stack?: string } = {}) {\n super(options.message, { cause: options.cause });\n this.status = status;\n this.stack = options.stack || this.stack;\n }\n}\n\ntype ApiError = Error & {\n status?: number;\n details?: {\n status?: number;\n };\n};\n\nfunction isMastraVoiceError(error: unknown): error is MastraError {\n return (\n error instanceof MastraError ||\n (typeof error === 'object' && error !== null && 'domain' in error && error.domain === ErrorDomain.MASTRA_VOICE) ||\n (error instanceof Error && error.message === 'No voice provider configured')\n );\n}\n\nfunction handleError(error: unknown, defaultMessage: string): never {\n const apiError = error as ApiError;\n const status = apiError.status || apiError.details?.status || 500;\n\n throw new HTTPException(status as StatusCode, {\n message: apiError.message || defaultMessage,\n stack: apiError.stack,\n cause: apiError.cause,\n });\n}\n\nfunction validateBody(data: Record<string, unknown>): void {\n for (const [key, value] of Object.entries(data)) {\n if (value === undefined || value === null || value === '') {\n throw new HTTPException(400, { message: `${key} is required` });\n }\n }\n}\n\nasync function getAgentFromSystem({\n mastra,\n agentId,\n requestContext,\n}: {\n mastra: any;\n agentId: string;\n requestContext?: RequestContext;\n}): Promise<any> {\n const logger = mastra.getLogger?.();\n\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n let agent: any;\n\n try {\n agent = mastra.getAgentById(agentId);\n } catch (error) {\n logger?.debug?.('Error getting agent from mastra, searching agents for agent', error);\n }\n\n if (!agent) {\n logger?.debug?.('Agent not found, looking through sub-agents', { agentId });\n const agents = mastra.listAgents?.();\n if (Object.keys(agents || {}).length) {\n for (const ag of Object.values(agents)) {\n try {\n const subAgents = await (ag as any).listAgents();\n const subAgent = subAgents[agentId];\n if (subAgent) {\n agent = subAgent;\n break;\n }\n } catch (error) {\n logger?.debug?.('Error getting agent from agent', error);\n }\n }\n }\n }\n\n if (agent && mastra.getEditor) {\n try {\n const editorAgent = mastra.getEditor()?.agent;\n if (editorAgent) {\n agent = await editorAgent.applyStoredOverrides(agent, { status: 'published' }, requestContext);\n }\n } catch (error) {\n logger?.debug?.('Error applying stored overrides to code agent', error);\n }\n }\n\n if (!agent) {\n logger?.debug?.('Agent not found in code-defined agents, looking in stored agents', { agentId });\n try {\n agent = (await mastra.getEditor?.()?.agent.getById(agentId)) ?? null;\n } catch (error) {\n logger?.debug?.('Error getting stored agent', error);\n }\n }\n\n if (!agent) {\n throw new HTTPException(404, { message: `Agent with id ${agentId} not found` });\n }\n\n return agent;\n}\n\nexport const GET_SPEAKERS_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/voice/speakers',\n responseType: 'json',\n summary: 'Get voice speakers',\n description: 'Returns available voice speakers for the specified agent',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n pathParamSchema: agentIdPathParams,\n responseSchema: voiceSpeakersResponseSchema,\n handler: async ({ mastra, agentId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n const agent = await getAgentFromSystem({ mastra, agentId, requestContext });\n const voice = await agent.getVoice({ requestContext });\n\n const speakers = await Promise.resolve()\n .then(() => voice.getSpeakers())\n .catch(err => {\n if (isMastraVoiceError(err)) {\n return [];\n }\n throw err;\n });\n\n return speakers;\n } catch (error) {\n return handleError(error, 'Error getting speakers');\n }\n },\n});\n\nexport const GET_SPEAKERS_DEPRECATED_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/speakers',\n responseType: 'json',\n summary: 'Get available speakers for an agent',\n description: '[DEPRECATED] Use /agents/:agentId/voice/speakers instead. Get available speakers for an agent',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n deprecated: true,\n pathParamSchema: agentIdPathParams,\n responseSchema: voiceSpeakersResponseSchema,\n handler: GET_SPEAKERS_ROUTE.handler,\n});\n\nexport const GENERATE_SPEECH_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/voice/speak',\n responseType: 'datastream-response',\n summary: 'Generate speech',\n description: 'Generates speech audio from text using the agent voice configuration',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n pathParamSchema: agentIdPathParams,\n bodySchema: generateSpeechBodySchema,\n responseSchema: speakResponseSchema,\n handler: async ({ mastra, agentId, text, speakerId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n validateBody({ text });\n\n const agent = await getAgentFromSystem({ mastra, agentId, requestContext });\n const voice = await agent.getVoice({ requestContext });\n\n if (!voice) {\n throw new HTTPException(400, { message: 'Agent does not have voice capabilities' });\n }\n\n const audioStream = await Promise.resolve()\n .then(() => voice.speak(text!, { speaker: speakerId! }))\n .catch(err => {\n if (isMastraVoiceError(err)) {\n throw new HTTPException(400, { message: err.message });\n }\n\n throw err;\n });\n\n if (!audioStream) {\n throw new HTTPException(500, { message: 'Failed to generate speech' });\n }\n\n const webStream =\n audioStream instanceof ReadableStream\n ? audioStream\n : audioStream instanceof Readable\n ? (Readable.toWeb(audioStream) as unknown as ReadableStream<any>)\n : (audioStream as unknown as ReadableStream<any>);\n\n return new Response(webStream, {\n headers: { 'Content-Type': 'audio/mpeg' },\n });\n } catch (error) {\n return handleError(error, 'Error generating speech');\n }\n },\n});\n\nexport const GENERATE_SPEECH_DEPRECATED_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/speak',\n responseType: 'datastream-response',\n summary: 'Convert text to speech',\n description:\n \"[DEPRECATED] Use /agents/:agentId/voice/speak instead. Convert text to speech using the agent's voice provider\",\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n deprecated: true,\n pathParamSchema: agentIdPathParams,\n bodySchema: generateSpeechBodySchema,\n responseSchema: speakResponseSchema,\n handler: GENERATE_SPEECH_ROUTE.handler,\n});\n\nexport const TRANSCRIBE_SPEECH_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/voice/listen',\n responseType: 'json',\n summary: 'Transcribe speech',\n description: 'Transcribes speech audio to text using the agent voice configuration',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n pathParamSchema: agentIdPathParams,\n bodySchema: transcribeSpeechBodySchema,\n responseSchema: transcribeSpeechResponseSchema,\n handler: async ({ mastra, agentId, audio, options, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n if (!audio) {\n throw new HTTPException(400, { message: 'Audio data is required' });\n }\n\n const agent = await getAgentFromSystem({ mastra, agentId, requestContext });\n const voice = await agent.getVoice({ requestContext });\n\n if (!voice) {\n throw new HTTPException(400, { message: 'Agent does not have voice capabilities' });\n }\n\n const audioStream = new Readable();\n audioStream.push(audio);\n audioStream.push(null);\n\n const text = await voice.listen(audioStream, options);\n return { text: text as string };\n } catch (error) {\n return handleError(error, 'Error transcribing speech');\n }\n },\n});\n\nexport const TRANSCRIBE_SPEECH_DEPRECATED_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/listen',\n responseType: 'json',\n summary: 'Convert speech to text',\n description:\n \"[DEPRECATED] Use /agents/:agentId/voice/listen instead. Convert speech to text using the agent's voice provider. Additional provider-specific options can be passed as query parameters.\",\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n deprecated: true,\n pathParamSchema: agentIdPathParams,\n bodySchema: transcribeSpeechBodySchema,\n responseSchema: transcribeSpeechResponseSchema,\n handler: TRANSCRIBE_SPEECH_ROUTE.handler,\n});\n\nexport const GET_LISTENER_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/voice/listener',\n responseType: 'json',\n summary: 'Get voice listener',\n description: 'Returns the voice listener configuration for the agent',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n pathParamSchema: agentIdPathParams,\n responseSchema: getListenerResponseSchema,\n handler: async ({ mastra, agentId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n const agent = mastra.getAgentById(agentId);\n\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const voice = await agent.getVoice({ requestContext });\n\n const listeners = await Promise.resolve()\n .then(() => voice.getListener())\n .catch(err => {\n if (isMastraVoiceError(err)) {\n return { enabled: false };\n }\n throw err;\n });\n\n return listeners;\n } catch (error) {\n return handleError(error, 'Error getting listeners');\n }\n },\n});\n"]}
|
|
1
|
+
{"version":3,"sources":["../../_internal-core/src/error/utils.ts","../../_internal-core/src/error/index.ts","../../_internal-core/src/routes/index.ts","../../_internals/voice/src/routes/index.ts"],"names":["ErrorDomain"],"mappings":"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","file":"chunk-MG3WOQQQ.js","sourcesContent":["/**\n * Safely converts an object to a string representation.\n * Uses JSON.stringify first, but falls back to String() if:\n * - JSON.stringify fails (e.g., circular references)\n * - JSON.stringify returns \"{}\" (e.g., Error objects with no enumerable properties)\n */\nexport function safeParseErrorObject(obj: unknown): string {\n if (typeof obj !== 'object' || obj === null) {\n return String(obj);\n }\n\n try {\n const stringified = JSON.stringify(obj);\n // If JSON.stringify returns \"{}\", fall back to String() for better representation\n if (stringified === '{}') {\n return String(obj);\n }\n return stringified;\n } catch {\n // Fallback to String() if JSON.stringify fails (e.g., circular references)\n return String(obj);\n }\n}\n\n/**\n * Represents a serialized error structure for JSON output.\n */\nexport type SerializedError = {\n name: string;\n message: string;\n stack?: string;\n cause?: SerializedError | unknown;\n} & Record<string, any>;\n\n/**\n * An Error instance with a toJSON method for proper serialization.\n */\nexport type SerializableError = Error & {\n toJSON: () => SerializedError;\n};\n\n/**\n * Safely converts an unknown error to an Error instance.\n */\nexport function getErrorFromUnknown<SERIALIZABLE extends boolean = true>(\n unknown: unknown,\n options: {\n /**\n * The fallback error message to use if the unknown error cannot be parsed.\n */\n fallbackMessage?: string;\n /**\n * The maximum depth to parse the cause of the error.\n */\n maxDepth?: number;\n /**\n * Whether to add .toJSON() method to the error instance to support serialization. (JSON.stringify)\n * @example\n * const error = getErrorFromUnknown(new Error('test'), { supportSerialization: true });\n * JSON.stringify(error) // { message: 'test', name: 'Error', stack: 'Error: test\\n at ...' }\n */\n supportSerialization?: SERIALIZABLE;\n /**\n * Whether to include the stack in JSON serialization.\n * The stack is always preserved on the Error instance for debugging.\n * This option only controls whether it appears in toJSON() output.\n * @default true\n */\n serializeStack?: boolean;\n } = {},\n): SERIALIZABLE extends true ? SerializableError : Error {\n const defaultOptions = {\n fallbackMessage: 'Unknown error',\n maxDepth: 5,\n supportSerialization: true,\n serializeStack: true,\n };\n const mergedOptions = options ? { ...defaultOptions, ...options } : defaultOptions;\n const { fallbackMessage, maxDepth, supportSerialization, serializeStack } = mergedOptions;\n\n if (unknown && unknown instanceof Error) {\n // Stack is always preserved on the instance for debugging\n // serializeStack only controls whether it appears in toJSON() output\n if (supportSerialization) {\n addErrorToJSON(unknown, serializeStack, { maxDepth });\n }\n return unknown as SERIALIZABLE extends true ? SerializableError : Error;\n }\n\n let error: Error | undefined;\n\n if (unknown && typeof unknown === 'object') {\n const errorMessage =\n unknown && 'message' in unknown && typeof unknown.message === 'string'\n ? unknown.message\n : safeParseErrorObject(unknown);\n\n const errorCause =\n 'cause' in unknown && unknown.cause !== undefined\n ? unknown.cause instanceof Error\n ? unknown.cause\n : maxDepth > 0 // Only process cause if we haven't exceeded max depth\n ? getErrorFromUnknown(unknown.cause, { ...mergedOptions, maxDepth: maxDepth - 1 })\n : undefined\n : undefined;\n\n error = new Error(errorMessage, errorCause ? { cause: errorCause } : undefined);\n\n Object.assign(error as Error, unknown);\n error.stack = 'stack' in unknown && typeof unknown.stack === 'string' ? unknown.stack : undefined;\n } else if (unknown && typeof unknown === 'string') {\n error = new Error(unknown);\n error.stack = undefined;\n } else {\n error = new Error(fallbackMessage);\n }\n\n if (supportSerialization) {\n addErrorToJSON(error, serializeStack, { maxDepth });\n }\n return error as SERIALIZABLE extends true ? SerializableError : Error;\n}\n\nconst DEFAULT_MAX_DEPTH = 5;\n\n/**\n * Adds a toJSON method to an Error instance for proper serialization.\n * Ensures that message, name, cause, and custom properties are all serialized.\n * Stack is only included in JSON output if serializeStack is true.\n * Recursively adds toJSON to the cause chain for proper nested error serialization.\n */\nfunction addErrorToJSON(\n error: Error,\n serializeStack: boolean = true,\n options?: { maxDepth?: number; currentDepth?: number },\n): void {\n const maxDepth = options?.maxDepth ?? DEFAULT_MAX_DEPTH;\n const currentDepth = options?.currentDepth ?? 0;\n\n // Skip if error already has toJSON - preserves custom implementations\n // and avoids re-processing (first call's options win)\n if ((error as SerializableError).toJSON) {\n return;\n }\n\n // Recursively add toJSON to cause chain (with depth protection)\n if (error.cause instanceof Error && currentDepth < maxDepth) {\n addErrorToJSON(error.cause, serializeStack, { maxDepth, currentDepth: currentDepth + 1 });\n }\n\n // Define toJSON as non-enumerable to avoid interfering with object comparisons\n Object.defineProperty(error, 'toJSON', {\n value: function (this: Error) {\n const json: SerializedError = {\n message: this.message,\n name: this.name,\n };\n // Only include stack in JSON if serializeStack is true\n if (serializeStack && this.stack !== undefined) {\n json.stack = this.stack;\n }\n\n // Serialize cause if it's an Error and has a toJSON method, else include as is\n if (this.cause !== undefined) {\n if (this.cause instanceof Error && 'toJSON' in this.cause && typeof this.cause.toJSON === 'function') {\n json.cause = this.cause.toJSON();\n } else {\n json.cause = this.cause;\n }\n }\n\n // Include all enumerable custom properties\n const errorAsAny = this as any;\n for (const key in errorAsAny) {\n if (errorAsAny.hasOwnProperty(key) && !(key in json) && key !== 'toJSON') {\n json[key] = errorAsAny[key];\n }\n }\n\n return json;\n },\n enumerable: false,\n writable: true,\n configurable: true,\n });\n}\n","import { getErrorFromUnknown } from './utils.js';\nimport type { SerializableError, SerializedError } from './utils.js';\n\nexport { getErrorFromUnknown, safeParseErrorObject } from './utils.js';\nexport type { SerializableError, SerializedError };\n\nexport enum ErrorDomain {\n TOOL = 'TOOL',\n AGENT = 'AGENT',\n MCP = 'MCP',\n AGENT_NETWORK = 'AGENT_NETWORK',\n MASTRA_SERVER = 'MASTRA_SERVER',\n MASTRA_OBSERVABILITY = 'MASTRA_OBSERVABILITY',\n MASTRA_WORKFLOW = 'MASTRA_WORKFLOW',\n MASTRA_VOICE = 'MASTRA_VOICE',\n MASTRA_VECTOR = 'MASTRA_VECTOR',\n MASTRA_MEMORY = 'MASTRA_MEMORY',\n LLM = 'LLM',\n EVAL = 'EVAL',\n SCORER = 'SCORER',\n A2A = 'A2A',\n MASTRA_INSTANCE = 'MASTRA_INSTANCE',\n MASTRA = 'MASTRA',\n DEPLOYER = 'DEPLOYER',\n STORAGE = 'STORAGE',\n MODEL_ROUTER = 'MODEL_ROUTER',\n}\n\nexport enum ErrorCategory {\n UNKNOWN = 'UNKNOWN',\n USER = 'USER',\n SYSTEM = 'SYSTEM',\n THIRD_PARTY = 'THIRD_PARTY',\n}\n\ntype Scalar = null | boolean | number | string;\n\ntype Json<T> = [T] extends [Scalar | undefined]\n ? Scalar\n : [T] extends [{ [x: number]: unknown }]\n ? { [K in keyof T]: Json<T[K]> }\n : never;\n\n/**\n * Defines the structure for an error's metadata.\n * This is used to create instances of MastraError.\n */\nexport interface IErrorDefinition<DOMAIN, CATEGORY> {\n /** Unique identifier for the error. */\n id: Uppercase<string>;\n /**\n * Optional custom error message that overrides the original error message.\n * If not provided, the original error message will be used, or 'Unknown error' if no error is provided.\n */\n text?: string;\n /**\n * Functional domain of the error (e.g., CONFIG, BUILD, API).\n */\n domain: DOMAIN;\n /** Broad category of the error (e.g., USER, SYSTEM, THIRD_PARTY). */\n category: CATEGORY;\n\n details?: Record<string, Json<Scalar>>;\n}\n\n/**\n * JSON representation of a MastraError for serialization\n */\nexport interface MastraErrorJSON<DOMAIN = string, CATEGORY = string> {\n message: string;\n code: Uppercase<string>;\n category: CATEGORY;\n domain: DOMAIN;\n details?: Record<string, Json<Scalar>>;\n cause?: ReturnType<SerializableError['toJSON']>;\n}\n\n/**\n * Base error class for the Mastra ecosystem.\n * It standardizes error reporting and can be extended for more specific error types.\n */\nexport class MastraBaseError<DOMAIN, CATEGORY> extends Error {\n public readonly id: Uppercase<string>;\n public readonly domain: DOMAIN;\n public readonly category: CATEGORY;\n public readonly details?: Record<string, Json<Scalar>> = {};\n public readonly message: string;\n public cause?: SerializableError;\n\n constructor(\n errorDefinition: IErrorDefinition<DOMAIN, CATEGORY>,\n originalError?: string | Error | MastraBaseError<DOMAIN, CATEGORY> | unknown,\n ) {\n const error = originalError\n ? getErrorFromUnknown(originalError, {\n serializeStack: false,\n fallbackMessage: 'Unknown error',\n })\n : undefined;\n\n const message = errorDefinition.text ?? error?.message ?? 'Unknown error';\n\n super(message, { cause: error });\n this.id = errorDefinition.id;\n this.domain = errorDefinition.domain;\n this.category = errorDefinition.category;\n this.details = errorDefinition.details ?? {};\n this.message = message;\n this.cause = error;\n\n Object.setPrototypeOf(this, new.target.prototype);\n }\n\n /**\n * Returns a structured representation of the error, useful for logging or API responses.\n */\n public toJSONDetails() {\n return {\n message: this.message,\n domain: this.domain,\n category: this.category,\n details: this.details,\n };\n }\n\n public toJSON(): MastraErrorJSON<DOMAIN, CATEGORY> {\n return {\n message: this.message,\n domain: this.domain,\n category: this.category,\n code: this.id,\n details: this.details,\n cause: this.cause?.toJSON?.(),\n };\n }\n\n public toString() {\n return JSON.stringify(this.toJSON());\n }\n}\n\nexport class MastraError extends MastraBaseError<`${ErrorDomain}`, `${ErrorCategory}`> {}\n\n/** Permanent workflow step failure — bypasses workflow retryConfig. */\nexport class MastraNonRetryableError extends Error {\n public readonly isNonRetryable = true as const;\n\n constructor(message: string, options?: ErrorOptions) {\n super(message, options);\n this.name = 'MastraNonRetryableError';\n Object.setPrototypeOf(this, new.target.prototype);\n }\n}\n","import type * as z from 'zod/v4';\nimport type { RequestContext } from '../request-context';\nimport type { ToolsInput } from '../types';\n\nexport interface OpenAPIRoute {\n summary?: string;\n description?: string;\n tags?: string[];\n deprecated?: boolean;\n requestParams?: {\n path?: z.ZodSchema;\n query?: z.ZodSchema;\n };\n requestBody?: {\n content: {\n 'application/json': {\n schema: z.ZodSchema;\n };\n };\n };\n responses: {\n [statusCode: string]: {\n description: string;\n content?: {\n 'application/json': {\n schema: z.ZodSchema;\n };\n };\n };\n };\n}\n\ninterface RouteOpenAPIConfig {\n method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';\n path: string;\n summary?: string;\n description?: string;\n tags?: string[];\n pathParamSchema?: z.ZodSchema;\n queryParamSchema?: z.ZodSchema;\n bodySchema?: z.ZodSchema;\n responseSchema?: z.ZodSchema;\n deprecated?: boolean;\n}\n\nexport function generateRouteOpenAPI({\n method,\n path,\n summary,\n description,\n tags = [],\n pathParamSchema,\n queryParamSchema,\n bodySchema,\n responseSchema,\n deprecated,\n}: RouteOpenAPIConfig): OpenAPIRoute {\n const route: OpenAPIRoute = {\n summary: summary || `${method} ${path}`,\n description,\n tags,\n deprecated,\n responses: {\n 200: {\n description: 'Successful response',\n },\n },\n };\n\n if (pathParamSchema || queryParamSchema) {\n route.requestParams = {};\n\n if (pathParamSchema) {\n route.requestParams.path = pathParamSchema;\n }\n\n if (queryParamSchema) {\n route.requestParams.query = queryParamSchema;\n }\n }\n\n if (bodySchema) {\n route.requestBody = {\n content: {\n 'application/json': {\n schema: bodySchema,\n },\n },\n };\n }\n\n if (responseSchema) {\n route.responses[200] = {\n description: 'Successful response',\n content: {\n 'application/json': {\n schema: responseSchema,\n },\n },\n };\n }\n\n return route;\n}\n\nexport type ResponseType = 'stream' | 'json' | 'datastream-response' | 'mcp-http' | 'mcp-sse';\n\nexport type InferParams<\n TPathSchema extends z.ZodTypeAny | undefined,\n TQuerySchema extends z.ZodTypeAny | undefined,\n TBodySchema extends z.ZodTypeAny | undefined,\n> = (TPathSchema extends z.ZodTypeAny ? z.infer<TPathSchema> : {}) &\n (TQuerySchema extends z.ZodTypeAny ? z.infer<TQuerySchema> : {}) &\n (TBodySchema extends z.ZodTypeAny ? z.infer<TBodySchema> : {});\n\nexport interface RouteSchemas<\n TPathSchema = unknown,\n TQuerySchema = unknown,\n TBodySchema = unknown,\n TResponseSchema = unknown,\n> {\n readonly pathParams: TPathSchema;\n readonly queryParams: TQuerySchema;\n readonly body: TBodySchema;\n readonly response: TResponseSchema;\n}\n\nexport type ServerContext = {\n mastra: any;\n requestContext: RequestContext;\n registeredTools?: ToolsInput;\n taskStore?: unknown;\n abortSignal: AbortSignal;\n routePrefix?: string;\n};\n\nexport type ServerRouteHandler<\n TParams = Record<string, unknown>,\n TResponse = unknown,\n TResponseType extends ResponseType = 'json',\n> = (\n params: TParams & ServerContext,\n) => Promise<\n TResponseType extends 'stream' ? ReadableStream : TResponseType extends 'datastream-response' ? Response : TResponse\n>;\n\nexport type ValidationErrorHook = (error: z.ZodError) => { status?: number; body?: unknown } | void;\n\nexport type ServerRoute<\n TParams = Record<string, unknown>,\n TResponse = unknown,\n TResponseType extends ResponseType = ResponseType,\n TSchemas extends RouteSchemas = RouteSchemas,\n TMethod extends string = string,\n TPath extends string = string,\n> = {\n method: TMethod;\n path: TPath;\n responseType: TResponseType;\n streamFormat?: 'sse' | 'stream';\n sseFlushOnConnect?: boolean;\n handler(params: TParams & ServerContext): ReturnType<ServerRouteHandler<TParams, TResponse, TResponseType>>;\n pathParamSchema?: z.ZodSchema;\n queryParamSchema?: z.ZodSchema;\n bodySchema?: z.ZodSchema;\n responseSchema?: z.ZodSchema;\n openapi?: OpenAPIRoute;\n maxBodySize?: number;\n deprecated?: boolean;\n requiresAuth?: boolean;\n requiresPermission?: any;\n fga?: any;\n onValidationError?: ValidationErrorHook;\n readonly __schemas?: TSchemas;\n};\n\ninterface RouteConfig<\n TPathSchema extends z.ZodTypeAny | undefined = undefined,\n TQuerySchema extends z.ZodTypeAny | undefined = undefined,\n TBodySchema extends z.ZodTypeAny | undefined = undefined,\n TResponseSchema extends z.ZodTypeAny | undefined = undefined,\n TResponseType extends ResponseType = 'json',\n TMethod extends string = string,\n TPath extends string = string,\n> {\n method: TMethod;\n path: TPath;\n responseType: TResponseType;\n streamFormat?: 'sse' | 'stream';\n sseFlushOnConnect?: boolean;\n handler: ServerRouteHandler<\n InferParams<TPathSchema, TQuerySchema, TBodySchema>,\n TResponseSchema extends z.ZodTypeAny ? z.infer<TResponseSchema> : unknown,\n TResponseType\n >;\n pathParamSchema?: TPathSchema;\n queryParamSchema?: TQuerySchema;\n bodySchema?: TBodySchema;\n responseSchema?: TResponseSchema;\n summary?: string;\n description?: string;\n tags?: string[];\n deprecated?: boolean;\n maxBodySize?: number;\n requiresAuth?: boolean;\n requiresPermission?: any;\n fga?: any;\n onValidationError?: ValidationErrorHook;\n}\n\nexport function createRoute<\n TPathSchema extends z.ZodTypeAny | undefined = undefined,\n TQuerySchema extends z.ZodTypeAny | undefined = undefined,\n TBodySchema extends z.ZodTypeAny | undefined = undefined,\n TResponseSchema extends z.ZodTypeAny | undefined = undefined,\n TResponseType extends ResponseType = 'json',\n TMethod extends string = string,\n TPath extends string = string,\n>(\n config: RouteConfig<TPathSchema, TQuerySchema, TBodySchema, TResponseSchema, TResponseType, TMethod, TPath>,\n): ServerRoute<\n InferParams<TPathSchema, TQuerySchema, TBodySchema>,\n TResponseSchema extends z.ZodTypeAny ? z.infer<TResponseSchema> : unknown,\n TResponseType,\n RouteSchemas<TPathSchema, TQuerySchema, TBodySchema, TResponseSchema>,\n TMethod,\n TPath\n> {\n const { summary, description, tags, deprecated, requiresAuth, requiresPermission, onValidationError, ...baseRoute } =\n config;\n\n const openapi =\n config.method !== 'ALL'\n ? generateRouteOpenAPI({\n method: config.method as 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH',\n path: config.path,\n summary,\n description,\n tags,\n pathParamSchema: config.pathParamSchema,\n queryParamSchema: config.queryParamSchema,\n bodySchema: config.bodySchema,\n responseSchema: config.responseSchema,\n deprecated,\n })\n : undefined;\n\n return {\n ...baseRoute,\n openapi,\n deprecated,\n requiresAuth,\n requiresPermission,\n onValidationError,\n };\n}\n\nexport function createPublicRoute<\n TPathSchema extends z.ZodTypeAny | undefined = undefined,\n TQuerySchema extends z.ZodTypeAny | undefined = undefined,\n TBodySchema extends z.ZodTypeAny | undefined = undefined,\n TResponseSchema extends z.ZodTypeAny | undefined = undefined,\n TResponseType extends ResponseType = 'json',\n TMethod extends string = string,\n TPath extends string = string,\n>(\n config: Omit<\n RouteConfig<TPathSchema, TQuerySchema, TBodySchema, TResponseSchema, TResponseType, TMethod, TPath>,\n 'requiresAuth'\n >,\n): ServerRoute<\n InferParams<TPathSchema, TQuerySchema, TBodySchema>,\n TResponseSchema extends z.ZodTypeAny ? z.infer<TResponseSchema> : unknown,\n TResponseType,\n RouteSchemas<TPathSchema, TQuerySchema, TBodySchema, TResponseSchema>,\n TMethod,\n TPath\n> {\n return createRoute({\n ...config,\n requiresAuth: false,\n });\n}\n","import { Readable } from 'node:stream';\nimport { ErrorDomain, MastraError } from '@internal/core/error';\nimport type { RequestContext } from '@internal/core/request-context';\nimport { createRoute } from '@internal/core/routes';\nimport { z } from 'zod/v4';\n\nexport const voiceSpeakersResponseSchema = z.array(\n z\n .object({\n voiceId: z.string(),\n })\n .passthrough(),\n);\n\nexport const generateSpeechBodySchema = z.object({\n text: z.string(),\n speakerId: z.string().optional(),\n});\n\nexport const transcribeSpeechBodySchema = z.object({\n audio: z.any(),\n options: z.record(z.string(), z.any()).optional(),\n});\n\nexport const transcribeSpeechResponseSchema = z.object({\n text: z.string(),\n});\n\nexport const getListenerResponseSchema = z.any();\nexport const speakResponseSchema = z.any();\n\nconst agentIdPathParams = z.object({\n agentId: z.string().describe('Agent ID'),\n});\n\ntype StatusCode = 400 | 404 | 500;\n\nclass HTTPException extends Error {\n readonly status: StatusCode;\n\n constructor(status: StatusCode, options: { message?: string; cause?: unknown; stack?: string } = {}) {\n super(options.message, { cause: options.cause });\n this.status = status;\n this.stack = options.stack || this.stack;\n }\n}\n\ntype ApiError = Error & {\n status?: number;\n details?: {\n status?: number;\n };\n};\n\nfunction isMastraVoiceError(error: unknown): error is MastraError {\n return (\n error instanceof MastraError ||\n (typeof error === 'object' && error !== null && 'domain' in error && error.domain === ErrorDomain.MASTRA_VOICE) ||\n (error instanceof Error && error.message === 'No voice provider configured')\n );\n}\n\nfunction handleError(error: unknown, defaultMessage: string): never {\n const apiError = error as ApiError;\n const status = apiError.status || apiError.details?.status || 500;\n\n throw new HTTPException(status as StatusCode, {\n message: apiError.message || defaultMessage,\n stack: apiError.stack,\n cause: apiError.cause,\n });\n}\n\nfunction validateBody(data: Record<string, unknown>): void {\n for (const [key, value] of Object.entries(data)) {\n if (value === undefined || value === null || value === '') {\n throw new HTTPException(400, { message: `${key} is required` });\n }\n }\n}\n\nasync function getAgentFromSystem({\n mastra,\n agentId,\n requestContext,\n}: {\n mastra: any;\n agentId: string;\n requestContext?: RequestContext;\n}): Promise<any> {\n const logger = mastra.getLogger?.();\n\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n let agent: any;\n\n try {\n agent = mastra.getAgentById(agentId);\n } catch (error) {\n logger?.debug?.('Error getting agent from mastra, searching agents for agent', error);\n }\n\n if (!agent) {\n logger?.debug?.('Agent not found, looking through sub-agents', { agentId });\n const agents = mastra.listAgents?.();\n if (Object.keys(agents || {}).length) {\n for (const ag of Object.values(agents)) {\n try {\n const subAgents = await (ag as any).listAgents();\n const subAgent = subAgents[agentId];\n if (subAgent) {\n agent = subAgent;\n break;\n }\n } catch (error) {\n logger?.debug?.('Error getting agent from agent', error);\n }\n }\n }\n }\n\n if (agent && mastra.getEditor) {\n try {\n const editorAgent = mastra.getEditor()?.agent;\n if (editorAgent) {\n agent = await editorAgent.applyStoredOverrides(agent, { status: 'published' }, requestContext);\n }\n } catch (error) {\n logger?.debug?.('Error applying stored overrides to code agent', error);\n }\n }\n\n if (!agent) {\n logger?.debug?.('Agent not found in code-defined agents, looking in stored agents', { agentId });\n try {\n agent = (await mastra.getEditor?.()?.agent.getById(agentId)) ?? null;\n } catch (error) {\n logger?.debug?.('Error getting stored agent', error);\n }\n }\n\n if (!agent) {\n throw new HTTPException(404, { message: `Agent with id ${agentId} not found` });\n }\n\n return agent;\n}\n\nexport const GET_SPEAKERS_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/voice/speakers',\n responseType: 'json',\n summary: 'Get voice speakers',\n description: 'Returns available voice speakers for the specified agent',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n pathParamSchema: agentIdPathParams,\n responseSchema: voiceSpeakersResponseSchema,\n handler: async ({ mastra, agentId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n const agent = await getAgentFromSystem({ mastra, agentId, requestContext });\n const voice = await agent.getVoice({ requestContext });\n\n const speakers = await Promise.resolve()\n .then(() => voice.getSpeakers())\n .catch(err => {\n if (isMastraVoiceError(err)) {\n return [];\n }\n throw err;\n });\n\n return speakers;\n } catch (error) {\n return handleError(error, 'Error getting speakers');\n }\n },\n});\n\nexport const GET_SPEAKERS_DEPRECATED_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/speakers',\n responseType: 'json',\n summary: 'Get available speakers for an agent',\n description: '[DEPRECATED] Use /agents/:agentId/voice/speakers instead. Get available speakers for an agent',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n deprecated: true,\n pathParamSchema: agentIdPathParams,\n responseSchema: voiceSpeakersResponseSchema,\n handler: GET_SPEAKERS_ROUTE.handler,\n});\n\nexport const GENERATE_SPEECH_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/voice/speak',\n responseType: 'datastream-response',\n summary: 'Generate speech',\n description: 'Generates speech audio from text using the agent voice configuration',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n pathParamSchema: agentIdPathParams,\n bodySchema: generateSpeechBodySchema,\n responseSchema: speakResponseSchema,\n handler: async ({ mastra, agentId, text, speakerId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n validateBody({ text });\n\n const agent = await getAgentFromSystem({ mastra, agentId, requestContext });\n const voice = await agent.getVoice({ requestContext });\n\n if (!voice) {\n throw new HTTPException(400, { message: 'Agent does not have voice capabilities' });\n }\n\n const audioStream = await Promise.resolve()\n .then(() => voice.speak(text!, { speaker: speakerId! }))\n .catch(err => {\n if (isMastraVoiceError(err)) {\n throw new HTTPException(400, { message: err.message });\n }\n\n throw err;\n });\n\n if (!audioStream) {\n throw new HTTPException(500, { message: 'Failed to generate speech' });\n }\n\n const webStream =\n audioStream instanceof ReadableStream\n ? audioStream\n : audioStream instanceof Readable\n ? (Readable.toWeb(audioStream) as unknown as ReadableStream<any>)\n : (audioStream as unknown as ReadableStream<any>);\n\n return new Response(webStream, {\n headers: { 'Content-Type': 'audio/mpeg' },\n });\n } catch (error) {\n return handleError(error, 'Error generating speech');\n }\n },\n});\n\nexport const GENERATE_SPEECH_DEPRECATED_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/speak',\n responseType: 'datastream-response',\n summary: 'Convert text to speech',\n description:\n \"[DEPRECATED] Use /agents/:agentId/voice/speak instead. Convert text to speech using the agent's voice provider\",\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n deprecated: true,\n pathParamSchema: agentIdPathParams,\n bodySchema: generateSpeechBodySchema,\n responseSchema: speakResponseSchema,\n handler: GENERATE_SPEECH_ROUTE.handler,\n});\n\nexport const TRANSCRIBE_SPEECH_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/voice/listen',\n responseType: 'json',\n summary: 'Transcribe speech',\n description: 'Transcribes speech audio to text using the agent voice configuration',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n pathParamSchema: agentIdPathParams,\n bodySchema: transcribeSpeechBodySchema,\n responseSchema: transcribeSpeechResponseSchema,\n handler: async ({ mastra, agentId, audio, options, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n if (!audio) {\n throw new HTTPException(400, { message: 'Audio data is required' });\n }\n\n const agent = await getAgentFromSystem({ mastra, agentId, requestContext });\n const voice = await agent.getVoice({ requestContext });\n\n if (!voice) {\n throw new HTTPException(400, { message: 'Agent does not have voice capabilities' });\n }\n\n const audioStream = new Readable();\n audioStream.push(audio);\n audioStream.push(null);\n\n const text = await voice.listen(audioStream, options);\n return { text: text as string };\n } catch (error) {\n return handleError(error, 'Error transcribing speech');\n }\n },\n});\n\nexport const TRANSCRIBE_SPEECH_DEPRECATED_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/listen',\n responseType: 'json',\n summary: 'Convert speech to text',\n description:\n \"[DEPRECATED] Use /agents/:agentId/voice/listen instead. Convert speech to text using the agent's voice provider. Additional provider-specific options can be passed as query parameters.\",\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n deprecated: true,\n pathParamSchema: agentIdPathParams,\n bodySchema: transcribeSpeechBodySchema,\n responseSchema: transcribeSpeechResponseSchema,\n handler: TRANSCRIBE_SPEECH_ROUTE.handler,\n});\n\nexport const GET_LISTENER_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/voice/listener',\n responseType: 'json',\n summary: 'Get voice listener',\n description: 'Returns the voice listener configuration for the agent',\n tags: ['Agents', 'Voice'],\n requiresAuth: true,\n pathParamSchema: agentIdPathParams,\n responseSchema: getListenerResponseSchema,\n handler: async ({ mastra, agentId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n const agent = mastra.getAgentById(agentId);\n\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const voice = await agent.getVoice({ requestContext });\n\n const listeners = await Promise.resolve()\n .then(() => voice.getListener())\n .catch(err => {\n if (isMastraVoiceError(err)) {\n return { enabled: false };\n }\n throw err;\n });\n\n return listeners;\n } catch (error) {\n return handleError(error, 'Error getting listeners');\n }\n },\n});\n"]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { getAgentFromSystem } from './chunk-
|
|
1
|
+
import { getAgentFromSystem } from './chunk-G4KBL45K.js';
|
|
2
2
|
import { listToolsResponseSchema, serializedToolSchema, toolIdPathParams, executeToolResponseSchema, executeToolContextBodySchema, agentToolPathParams, executeToolBodySchema } from './chunk-256OPP7S.js';
|
|
3
3
|
import { MastraFGAPermissions, validateBody } from './chunk-JBSUT5XF.js';
|
|
4
4
|
import { optionalRunIdSchema } from './chunk-2YY3EMMS.js';
|
|
5
5
|
import { stringify } from './chunk-QIQWHDPH.js';
|
|
6
6
|
import { handleError } from './chunk-7ZWJX3AN.js';
|
|
7
|
-
import { createRoute } from './chunk-
|
|
7
|
+
import { createRoute } from './chunk-PTJBYYMK.js';
|
|
8
8
|
import { standardSchemaToJSONSchema, toStandardSchema5 } from './chunk-YZAQOU2I.js';
|
|
9
9
|
import { HTTPException } from './chunk-6QWQZI4Q.js';
|
|
10
10
|
import { __export } from './chunk-PR4QN5HX.js';
|
|
@@ -282,5 +282,5 @@ var EXECUTE_AGENT_TOOL_ROUTE = createRoute({
|
|
|
282
282
|
});
|
|
283
283
|
|
|
284
284
|
export { EXECUTE_AGENT_TOOL_ROUTE, EXECUTE_TOOL_ROUTE, GET_AGENT_TOOL_ROUTE, GET_TOOL_BY_ID_ROUTE, LIST_TOOLS_ROUTE, tools_exports };
|
|
285
|
-
//# sourceMappingURL=chunk-
|
|
286
|
-
//# sourceMappingURL=chunk-
|
|
285
|
+
//# sourceMappingURL=chunk-NDNGZCVE.js.map
|
|
286
|
+
//# sourceMappingURL=chunk-NDNGZCVE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/handlers/tools.ts"],"names":["tool"],"mappings":"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","file":"chunk-YAURXFRL.js","sourcesContent":["import { isVercelTool, isProviderDefinedTool } from '@mastra/core/tools';\nimport { toStandardSchema, standardSchemaToJSONSchema } from '@mastra/schema-compat/schema';\nimport type { PublicSchema } from '@mastra/schema-compat/schema';\nimport { stringify } from 'superjson';\nimport { MastraFGAPermissions } from '../fga-permissions';\nimport { HTTPException } from '../http-exception';\nimport {\n executeToolContextBodySchema,\n executeToolResponseSchema,\n listToolsResponseSchema,\n serializedToolSchema,\n toolIdPathParams,\n agentToolPathParams,\n executeToolBodySchema,\n} from '../schemas/agents';\nimport { optionalRunIdSchema } from '../schemas/common';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport { validateBody } from './utils';\n\n/**\n * Resolves a schema that may be a lazy function (e.g. AI SDK provider tools).\n * Recursively resolves until a non-function value is returned.\n * Skips functions that are themselves valid schemas (e.g. ArkType types are\n * callable but also implement StandardSchema via ~standard).\n */\nfunction resolveLazySchema(schema: unknown): unknown {\n if (typeof schema === 'function' && !('~standard' in schema)) {\n return resolveLazySchema(schema());\n }\n return schema;\n}\n\nfunction schemaToJsonSchema(schema: PublicSchema<unknown> | undefined) {\n if (!schema) {\n return undefined;\n }\n\n return standardSchemaToJSONSchema(toStandardSchema(schema), { target: 'draft-2020-12' });\n}\n\nfunction serializeSchema(schema: unknown): string | undefined {\n const jsonSchema = schemaToJsonSchema(resolveLazySchema(schema) as PublicSchema<unknown> | undefined);\n if (jsonSchema === undefined) return undefined;\n return stringify(jsonSchema);\n}\n\n/**\n * Searches dynamically-resolved agent tools (provided via `toolsResolver` /\n * function-based `tools`) for a tool with the given id. Used as a fallback\n * after the static tool registry (`registeredTools` + `mastra.getToolById`)\n * misses, so global tool routes can resolve tools that only exist on agents.\n *\n * Errors thrown by an individual agent's `listTools()` are logged and\n * skipped so a single broken resolver doesn't take down the whole lookup.\n */\nasync function findToolInAgents(mastra: any, toolId: string, requestContext: any): Promise<any | undefined> {\n const agents = mastra.listAgents() || {};\n for (const agent of Object.values(agents) as any[]) {\n try {\n const agentTools = await agent.listTools({ requestContext });\n const found = Object.values(agentTools || {}).find((t: any) => t.id === toolId);\n if (found) return found;\n } catch (error) {\n mastra.getLogger?.()?.warn?.('Failed to list tools for agent while resolving tool by id', {\n agentId: agent?.id,\n toolId,\n error: error instanceof Error ? error.message : String(error),\n });\n }\n }\n return undefined;\n}\n\n/**\n * Serializes a tool for API responses, handling both regular tools (with Zod schemas)\n * and provider-defined tools (with AI SDK lazy schemas).\n */\nfunction serializeTool(tool: any): any {\n // Provider-defined tools (e.g. google.tools.googleSearch(), openai.tools.webSearch())\n // have lazy inputSchema functions that return AI SDK Schema objects, not Zod schemas.\n // We resolve them and use the jsonSchema property directly.\n if (isProviderDefinedTool(tool)) {\n const resolvedInput = resolveLazySchema(tool.inputSchema);\n const resolvedOutput = resolveLazySchema(tool.outputSchema);\n return {\n ...tool,\n inputSchema:\n resolvedInput && typeof resolvedInput === 'object' && 'jsonSchema' in resolvedInput\n ? stringify(resolvedInput.jsonSchema)\n : undefined,\n outputSchema:\n resolvedOutput && typeof resolvedOutput === 'object' && 'jsonSchema' in resolvedOutput\n ? stringify(resolvedOutput.jsonSchema)\n : undefined,\n };\n }\n\n return {\n ...tool,\n inputSchema: serializeSchema(tool.inputSchema),\n outputSchema: serializeSchema(tool.outputSchema),\n requestContextSchema: serializeSchema(tool.requestContextSchema),\n };\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const LIST_TOOLS_ROUTE = createRoute({\n method: 'GET',\n path: '/tools',\n responseType: 'json',\n responseSchema: listToolsResponseSchema,\n summary: 'List all tools',\n description: 'Returns a list of all available tools in the system',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools, requestContext }) => {\n try {\n // Merge tools from two sources: mastra.listTools() includes dynamically created tools\n // (e.g. MCP tools, or agent tools registered by their intrinsic id), while registeredTools\n // includes tools discovered by the CLI bundler (keyed by export name).\n //\n // The same tool instance can appear in both maps under different keys (e.g. an agent\n // registers it by `tool.id` while the bundler registers it by export name). Dedupe by\n // `tool.id`, preferring the registeredTools (bundler) key, so each tool appears once.\n const registered = registeredTools && Object.keys(registeredTools).length > 0 ? registeredTools : {};\n\n const allTools: Record<string, any> = {};\n const seenToolIds = new Map<string, string>();\n\n // registeredTools first so their key wins for a given tool.id.\n for (const [key, tool] of Object.entries(registered)) {\n const toolId = typeof (tool as any)?.id === 'string' ? (tool as any).id : undefined;\n if (toolId !== undefined) seenToolIds.set(toolId, key);\n allTools[key] = tool;\n }\n\n for (const [key, tool] of Object.entries(mastra.listTools() ?? {})) {\n const toolId = typeof (tool as any)?.id === 'string' ? (tool as any).id : undefined;\n // Skip if this exact tool.id was already registered (under any key) by registeredTools.\n if (toolId !== undefined && seenToolIds.has(toolId)) continue;\n if (toolId !== undefined) seenToolIds.set(toolId, key);\n allTools[key] = tool;\n }\n\n const serializedTools = Object.entries(allTools).reduce(\n (acc, [id, _tool]) => {\n acc[id] = serializeTool(_tool);\n return acc;\n },\n {} as Record<string, any>,\n );\n\n // Filter tools by FGA if configured\n const fgaProvider = mastra.getServer?.()?.fga;\n const user = requestContext?.get('user');\n if (fgaProvider && user) {\n const toolList = Object.entries(serializedTools).map(([id, t]) => ({ id, ...t }));\n const accessible = await fgaProvider.filterAccessible(user, toolList, 'tool', MastraFGAPermissions.TOOLS_READ);\n const accessibleSet = new Set(accessible.map((t: any) => t.id));\n for (const id of Object.keys(serializedTools)) {\n if (!accessibleSet.has(id)) {\n delete serializedTools[id];\n }\n }\n }\n\n return serializedTools;\n } catch (error) {\n return handleError(error, 'Error getting tools');\n }\n },\n});\n\nexport const GET_TOOL_BY_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/tools/:toolId',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get tool by ID',\n description: 'Returns details for a specific tool including its schema and configuration',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools, toolId, requestContext }) => {\n try {\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n }\n if (!tool) {\n try {\n tool = mastra.getToolById(toolId);\n } catch {\n // tool not found in global registry, continue to agent fallback\n }\n }\n\n // Fallback: search dynamically-resolved agent tools (toolsResolver)\n if (!tool) {\n tool = await findToolInAgents(mastra, toolId, requestContext);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\n } catch (error) {\n return handleError(error, 'Error getting tool');\n }\n },\n});\n\nexport const EXECUTE_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n queryParamSchema: optionalRunIdSchema,\n bodySchema: executeToolContextBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute tool',\n description: 'Executes a specific tool with the provided input data',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, runId, toolId, registeredTools, requestContext, ...bodyParams }) => {\n try {\n if (!toolId) {\n throw new HTTPException(400, { message: 'Tool ID is required' });\n }\n\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n }\n if (!tool) {\n try {\n tool = mastra.getToolById(toolId);\n } catch {\n // tool not found in global registry, continue to agent fallback\n }\n }\n\n // Fallback: search dynamically-resolved agent tools (toolsResolver)\n if (!tool) {\n tool = await findToolInAgents(mastra, toolId, requestContext);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const { data } = bodyParams;\n\n validateBody({ data });\n\n let result;\n if (isVercelTool(tool)) {\n result = await (tool as any).execute(data);\n } else {\n result = await tool.execute(data!, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n ...(runId\n ? {\n workflow: {\n runId,\n suspend: async () => {},\n },\n }\n : {}),\n });\n }\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing tool');\n }\n },\n});\n\n// ============================================================================\n// Agent Tool Routes\n// ============================================================================\n\nexport const GET_AGENT_TOOL_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/tools/:toolId',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get agent tool',\n description: 'Returns details for a specific tool assigned to the agent',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\n } catch (error) {\n return handleError(error, 'Error getting agent tool');\n }\n },\n});\n\nexport const EXECUTE_AGENT_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n bodySchema: executeToolBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute agent tool',\n description: 'Executes a specific tool assigned to the agent with the provided input data',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, data, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const result = await tool.execute(data, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing agent tool');\n }\n },\n});\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/server/handlers/tools.ts"],"names":["tool"],"mappings":"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","file":"chunk-NDNGZCVE.js","sourcesContent":["import { isVercelTool, isProviderDefinedTool } from '@mastra/core/tools';\nimport { toStandardSchema, standardSchemaToJSONSchema } from '@mastra/schema-compat/schema';\nimport type { PublicSchema } from '@mastra/schema-compat/schema';\nimport { stringify } from 'superjson';\nimport { MastraFGAPermissions } from '../fga-permissions';\nimport { HTTPException } from '../http-exception';\nimport {\n executeToolContextBodySchema,\n executeToolResponseSchema,\n listToolsResponseSchema,\n serializedToolSchema,\n toolIdPathParams,\n agentToolPathParams,\n executeToolBodySchema,\n} from '../schemas/agents';\nimport { optionalRunIdSchema } from '../schemas/common';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport { validateBody } from './utils';\n\n/**\n * Resolves a schema that may be a lazy function (e.g. AI SDK provider tools).\n * Recursively resolves until a non-function value is returned.\n * Skips functions that are themselves valid schemas (e.g. ArkType types are\n * callable but also implement StandardSchema via ~standard).\n */\nfunction resolveLazySchema(schema: unknown): unknown {\n if (typeof schema === 'function' && !('~standard' in schema)) {\n return resolveLazySchema(schema());\n }\n return schema;\n}\n\nfunction schemaToJsonSchema(schema: PublicSchema<unknown> | undefined) {\n if (!schema) {\n return undefined;\n }\n\n return standardSchemaToJSONSchema(toStandardSchema(schema), { target: 'draft-2020-12' });\n}\n\nfunction serializeSchema(schema: unknown): string | undefined {\n const jsonSchema = schemaToJsonSchema(resolveLazySchema(schema) as PublicSchema<unknown> | undefined);\n if (jsonSchema === undefined) return undefined;\n return stringify(jsonSchema);\n}\n\n/**\n * Searches dynamically-resolved agent tools (provided via `toolsResolver` /\n * function-based `tools`) for a tool with the given id. Used as a fallback\n * after the static tool registry (`registeredTools` + `mastra.getToolById`)\n * misses, so global tool routes can resolve tools that only exist on agents.\n *\n * Errors thrown by an individual agent's `listTools()` are logged and\n * skipped so a single broken resolver doesn't take down the whole lookup.\n */\nasync function findToolInAgents(mastra: any, toolId: string, requestContext: any): Promise<any | undefined> {\n const agents = mastra.listAgents() || {};\n for (const agent of Object.values(agents) as any[]) {\n try {\n const agentTools = await agent.listTools({ requestContext });\n const found = Object.values(agentTools || {}).find((t: any) => t.id === toolId);\n if (found) return found;\n } catch (error) {\n mastra.getLogger?.()?.warn?.('Failed to list tools for agent while resolving tool by id', {\n agentId: agent?.id,\n toolId,\n error: error instanceof Error ? error.message : String(error),\n });\n }\n }\n return undefined;\n}\n\n/**\n * Serializes a tool for API responses, handling both regular tools (with Zod schemas)\n * and provider-defined tools (with AI SDK lazy schemas).\n */\nfunction serializeTool(tool: any): any {\n // Provider-defined tools (e.g. google.tools.googleSearch(), openai.tools.webSearch())\n // have lazy inputSchema functions that return AI SDK Schema objects, not Zod schemas.\n // We resolve them and use the jsonSchema property directly.\n if (isProviderDefinedTool(tool)) {\n const resolvedInput = resolveLazySchema(tool.inputSchema);\n const resolvedOutput = resolveLazySchema(tool.outputSchema);\n return {\n ...tool,\n inputSchema:\n resolvedInput && typeof resolvedInput === 'object' && 'jsonSchema' in resolvedInput\n ? stringify(resolvedInput.jsonSchema)\n : undefined,\n outputSchema:\n resolvedOutput && typeof resolvedOutput === 'object' && 'jsonSchema' in resolvedOutput\n ? stringify(resolvedOutput.jsonSchema)\n : undefined,\n };\n }\n\n return {\n ...tool,\n inputSchema: serializeSchema(tool.inputSchema),\n outputSchema: serializeSchema(tool.outputSchema),\n requestContextSchema: serializeSchema(tool.requestContextSchema),\n };\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const LIST_TOOLS_ROUTE = createRoute({\n method: 'GET',\n path: '/tools',\n responseType: 'json',\n responseSchema: listToolsResponseSchema,\n summary: 'List all tools',\n description: 'Returns a list of all available tools in the system',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools, requestContext }) => {\n try {\n // Merge tools from two sources: mastra.listTools() includes dynamically created tools\n // (e.g. MCP tools, or agent tools registered by their intrinsic id), while registeredTools\n // includes tools discovered by the CLI bundler (keyed by export name).\n //\n // The same tool instance can appear in both maps under different keys (e.g. an agent\n // registers it by `tool.id` while the bundler registers it by export name). Dedupe by\n // `tool.id`, preferring the registeredTools (bundler) key, so each tool appears once.\n const registered = registeredTools && Object.keys(registeredTools).length > 0 ? registeredTools : {};\n\n const allTools: Record<string, any> = {};\n const seenToolIds = new Map<string, string>();\n\n // registeredTools first so their key wins for a given tool.id.\n for (const [key, tool] of Object.entries(registered)) {\n const toolId = typeof (tool as any)?.id === 'string' ? (tool as any).id : undefined;\n if (toolId !== undefined) seenToolIds.set(toolId, key);\n allTools[key] = tool;\n }\n\n for (const [key, tool] of Object.entries(mastra.listTools() ?? {})) {\n const toolId = typeof (tool as any)?.id === 'string' ? (tool as any).id : undefined;\n // Skip if this exact tool.id was already registered (under any key) by registeredTools.\n if (toolId !== undefined && seenToolIds.has(toolId)) continue;\n if (toolId !== undefined) seenToolIds.set(toolId, key);\n allTools[key] = tool;\n }\n\n const serializedTools = Object.entries(allTools).reduce(\n (acc, [id, _tool]) => {\n acc[id] = serializeTool(_tool);\n return acc;\n },\n {} as Record<string, any>,\n );\n\n // Filter tools by FGA if configured\n const fgaProvider = mastra.getServer?.()?.fga;\n const user = requestContext?.get('user');\n if (fgaProvider && user) {\n const toolList = Object.entries(serializedTools).map(([id, t]) => ({ id, ...t }));\n const accessible = await fgaProvider.filterAccessible(user, toolList, 'tool', MastraFGAPermissions.TOOLS_READ);\n const accessibleSet = new Set(accessible.map((t: any) => t.id));\n for (const id of Object.keys(serializedTools)) {\n if (!accessibleSet.has(id)) {\n delete serializedTools[id];\n }\n }\n }\n\n return serializedTools;\n } catch (error) {\n return handleError(error, 'Error getting tools');\n }\n },\n});\n\nexport const GET_TOOL_BY_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/tools/:toolId',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get tool by ID',\n description: 'Returns details for a specific tool including its schema and configuration',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools, toolId, requestContext }) => {\n try {\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n }\n if (!tool) {\n try {\n tool = mastra.getToolById(toolId);\n } catch {\n // tool not found in global registry, continue to agent fallback\n }\n }\n\n // Fallback: search dynamically-resolved agent tools (toolsResolver)\n if (!tool) {\n tool = await findToolInAgents(mastra, toolId, requestContext);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\n } catch (error) {\n return handleError(error, 'Error getting tool');\n }\n },\n});\n\nexport const EXECUTE_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n queryParamSchema: optionalRunIdSchema,\n bodySchema: executeToolContextBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute tool',\n description: 'Executes a specific tool with the provided input data',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, runId, toolId, registeredTools, requestContext, ...bodyParams }) => {\n try {\n if (!toolId) {\n throw new HTTPException(400, { message: 'Tool ID is required' });\n }\n\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n }\n if (!tool) {\n try {\n tool = mastra.getToolById(toolId);\n } catch {\n // tool not found in global registry, continue to agent fallback\n }\n }\n\n // Fallback: search dynamically-resolved agent tools (toolsResolver)\n if (!tool) {\n tool = await findToolInAgents(mastra, toolId, requestContext);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const { data } = bodyParams;\n\n validateBody({ data });\n\n let result;\n if (isVercelTool(tool)) {\n result = await (tool as any).execute(data);\n } else {\n result = await tool.execute(data!, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n ...(runId\n ? {\n workflow: {\n runId,\n suspend: async () => {},\n },\n }\n : {}),\n });\n }\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing tool');\n }\n },\n});\n\n// ============================================================================\n// Agent Tool Routes\n// ============================================================================\n\nexport const GET_AGENT_TOOL_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/tools/:toolId',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get agent tool',\n description: 'Returns details for a specific tool assigned to the agent',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\n } catch (error) {\n return handleError(error, 'Error getting agent tool');\n }\n },\n});\n\nexport const EXECUTE_AGENT_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n bodySchema: executeToolBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute agent tool',\n description: 'Executes a specific tool assigned to the agent with the provided input data',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, data, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const result = await tool.execute(data, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing agent tool');\n }\n },\n});\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { NEW_ROUTES, LIST_SCORES, LIST_METRICS, LIST_LOGS, LIST_FEEDBACK, GET_TAGS, GET_SERVICE_NAMES, GET_SCORE_TIME_SERIES, GET_SCORE_PERCENTILES, GET_SCORE_BREAKDOWN, GET_SCORE_AGGREGATE, GET_SCORE, GET_METRIC_TIME_SERIES, GET_METRIC_PERCENTILES, GET_METRIC_NAMES, GET_METRIC_LABEL_VALUES, GET_METRIC_LABEL_KEYS, GET_METRIC_BREAKDOWN, GET_METRIC_AGGREGATE, GET_FEEDBACK_TIME_SERIES, GET_FEEDBACK_PERCENTILES, GET_FEEDBACK_BREAKDOWN, GET_FEEDBACK_AGGREGATE, GET_ENVIRONMENTS, GET_ENTITY_TYPES, GET_ENTITY_NAMES, CREATE_SCORE, CREATE_FEEDBACK } from './chunk-
|
|
2
|
-
import { getObservabilityStore, assertObservabilityDeltaSupported, OBSERVABILITY_LIST_ENDPOINTS, createObservabilityListQuerySchema, getStorage } from './chunk-
|
|
1
|
+
import { NEW_ROUTES, LIST_SCORES, LIST_METRICS, LIST_LOGS, LIST_FEEDBACK, GET_TAGS, GET_SERVICE_NAMES, GET_SCORE_TIME_SERIES, GET_SCORE_PERCENTILES, GET_SCORE_BREAKDOWN, GET_SCORE_AGGREGATE, GET_SCORE, GET_METRIC_TIME_SERIES, GET_METRIC_PERCENTILES, GET_METRIC_NAMES, GET_METRIC_LABEL_VALUES, GET_METRIC_LABEL_KEYS, GET_METRIC_BREAKDOWN, GET_METRIC_AGGREGATE, GET_FEEDBACK_TIME_SERIES, GET_FEEDBACK_PERCENTILES, GET_FEEDBACK_BREAKDOWN, GET_FEEDBACK_AGGREGATE, GET_ENVIRONMENTS, GET_ENTITY_TYPES, GET_ENTITY_NAMES, CREATE_SCORE, CREATE_FEEDBACK } from './chunk-QDEYRPYD.js';
|
|
2
|
+
import { getObservabilityStore, assertObservabilityDeltaSupported, OBSERVABILITY_LIST_ENDPOINTS, createObservabilityListQuerySchema, getStorage } from './chunk-SWINK5Y3.js';
|
|
3
3
|
import { paginationArgsSchema } from './chunk-YRLCLLKR.js';
|
|
4
4
|
import { listTracesLightResponseSchema, listBranchesResponseSchema, branchesFilterSchema, branchesOrderBySchema, getBranchResponseSchema, getBranchArgsSchema } from './chunk-5HICERRG.js';
|
|
5
5
|
import { handleError } from './chunk-7ZWJX3AN.js';
|
|
6
|
-
import { wrapSchemaForQueryParams, createRoute, pickParams } from './chunk-
|
|
6
|
+
import { wrapSchemaForQueryParams, createRoute, pickParams } from './chunk-PTJBYYMK.js';
|
|
7
7
|
import { HTTPException } from './chunk-6QWQZI4Q.js';
|
|
8
8
|
import { __export } from './chunk-PR4QN5HX.js';
|
|
9
9
|
import { extractTrajectoryFromTrace, listScoresResponseSchema } from '@mastra/core/evals';
|
|
@@ -380,5 +380,5 @@ var LIST_SCORES_BY_SPAN_ROUTE = createRoute({
|
|
|
380
380
|
});
|
|
381
381
|
|
|
382
382
|
export { GET_BRANCH_ROUTE, GET_SPAN_ROUTE, GET_TRACE_LIGHT_ROUTE, GET_TRACE_ROUTE, GET_TRACE_TRAJECTORY_ROUTE, LIST_BRANCHES_ROUTE, LIST_SCORES_BY_SPAN_ROUTE, LIST_TRACES_LIGHT_ROUTE, LIST_TRACES_ROUTE, SCORE_TRACES_ROUTE, observability_exports };
|
|
383
|
-
//# sourceMappingURL=chunk-
|
|
384
|
-
//# sourceMappingURL=chunk-
|
|
383
|
+
//# sourceMappingURL=chunk-NL77QH5H.js.map
|
|
384
|
+
//# sourceMappingURL=chunk-NL77QH5H.js.map
|