@ainetwork/adk 0.3.5 → 0.3.7
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/dist/cjs/chunk-24RRJOOI.cjs +362 -0
- package/dist/cjs/chunk-24RRJOOI.cjs.map +1 -0
- package/dist/cjs/chunk-257LB5MI.cjs +17 -0
- package/dist/cjs/chunk-257LB5MI.cjs.map +1 -0
- package/dist/cjs/chunk-25RWHBEF.cjs +62 -0
- package/dist/cjs/chunk-25RWHBEF.cjs.map +1 -0
- package/dist/cjs/chunk-2BUYQCWK.cjs +44 -0
- package/dist/cjs/chunk-2BUYQCWK.cjs.map +1 -0
- package/dist/cjs/chunk-2CQQ34ED.cjs +83 -0
- package/dist/cjs/chunk-2CQQ34ED.cjs.map +1 -0
- package/dist/cjs/chunk-2H7YXXKF.cjs +38 -0
- package/dist/cjs/chunk-2H7YXXKF.cjs.map +1 -0
- package/dist/cjs/chunk-2KGEFVQ2.cjs +111 -0
- package/dist/cjs/chunk-2KGEFVQ2.cjs.map +1 -0
- package/dist/cjs/chunk-2LUY44JT.cjs +74 -0
- package/dist/cjs/chunk-2LUY44JT.cjs.map +1 -0
- package/dist/cjs/chunk-2OOV44LV.cjs +22 -0
- package/dist/cjs/chunk-2OOV44LV.cjs.map +1 -0
- package/dist/cjs/chunk-2PCMBTXX.cjs +17 -0
- package/dist/cjs/chunk-2PCMBTXX.cjs.map +1 -0
- package/dist/cjs/chunk-2YT6WOL2.cjs +44 -0
- package/dist/cjs/chunk-2YT6WOL2.cjs.map +1 -0
- package/dist/cjs/chunk-33HKSNG7.cjs +18 -0
- package/dist/cjs/chunk-33HKSNG7.cjs.map +1 -0
- package/dist/cjs/chunk-34QKYJJA.cjs +62 -0
- package/dist/cjs/chunk-34QKYJJA.cjs.map +1 -0
- package/dist/cjs/chunk-36IQIRJO.cjs +44 -0
- package/dist/cjs/chunk-36IQIRJO.cjs.map +1 -0
- package/dist/cjs/chunk-3CCO4M2T.cjs +18 -0
- package/dist/cjs/chunk-3CCO4M2T.cjs.map +1 -0
- package/dist/cjs/chunk-3CWYO4DR.cjs +29 -0
- package/dist/cjs/chunk-3CWYO4DR.cjs.map +1 -0
- package/dist/cjs/chunk-3FSMQH6T.cjs +60 -0
- package/dist/cjs/chunk-3FSMQH6T.cjs.map +1 -0
- package/dist/cjs/chunk-3J7RAJKT.cjs +17 -0
- package/dist/cjs/chunk-3J7RAJKT.cjs.map +1 -0
- package/dist/cjs/chunk-3NR7RC2M.cjs +52 -0
- package/dist/cjs/chunk-3NR7RC2M.cjs.map +1 -0
- package/dist/cjs/chunk-3OLHAXDU.cjs +92 -0
- package/dist/cjs/chunk-3OLHAXDU.cjs.map +1 -0
- package/dist/cjs/chunk-3QBMBRXS.cjs +44 -0
- package/dist/cjs/chunk-3QBMBRXS.cjs.map +1 -0
- package/dist/cjs/chunk-3RPRJF2T.cjs +45 -0
- package/dist/cjs/chunk-3RPRJF2T.cjs.map +1 -0
- package/dist/cjs/chunk-4IROMVRW.cjs +29 -0
- package/dist/cjs/chunk-4IROMVRW.cjs.map +1 -0
- package/dist/cjs/chunk-4MV4JCVO.cjs +62 -0
- package/dist/cjs/chunk-4MV4JCVO.cjs.map +1 -0
- package/dist/cjs/chunk-4P7BIS7W.cjs +89 -0
- package/dist/cjs/chunk-4P7BIS7W.cjs.map +1 -0
- package/dist/cjs/chunk-4QGJ7JWW.cjs +17 -0
- package/dist/cjs/chunk-4QGJ7JWW.cjs.map +1 -0
- package/dist/cjs/chunk-4U5AKJ4H.cjs +376 -0
- package/dist/cjs/chunk-4U5AKJ4H.cjs.map +1 -0
- package/dist/cjs/chunk-5BQBOLKF.cjs +18 -0
- package/dist/cjs/chunk-5BQBOLKF.cjs.map +1 -0
- package/dist/cjs/chunk-5ON32BOF.cjs +44 -0
- package/dist/cjs/chunk-5ON32BOF.cjs.map +1 -0
- package/dist/cjs/chunk-5Q2KJ4H4.cjs +45 -0
- package/dist/cjs/chunk-5Q2KJ4H4.cjs.map +1 -0
- package/dist/cjs/chunk-5QAUKT4U.cjs +74 -0
- package/dist/cjs/chunk-5QAUKT4U.cjs.map +1 -0
- package/dist/cjs/chunk-5QK57J6T.cjs +29 -0
- package/dist/cjs/chunk-5QK57J6T.cjs.map +1 -0
- package/dist/cjs/chunk-5RLT7IZP.cjs +38 -0
- package/dist/cjs/chunk-5RLT7IZP.cjs.map +1 -0
- package/dist/cjs/chunk-6EBDGU4W.cjs +74 -0
- package/dist/cjs/chunk-6EBDGU4W.cjs.map +1 -0
- package/dist/cjs/chunk-6ENXUHR3.cjs +18 -0
- package/dist/cjs/chunk-6ENXUHR3.cjs.map +1 -0
- package/dist/cjs/chunk-6KXWGXJM.cjs +89 -0
- package/dist/cjs/chunk-6KXWGXJM.cjs.map +1 -0
- package/dist/cjs/chunk-6VEASJDK.cjs +62 -0
- package/dist/cjs/chunk-6VEASJDK.cjs.map +1 -0
- package/dist/cjs/chunk-6VHRJD7F.cjs +17 -0
- package/dist/cjs/chunk-6VHRJD7F.cjs.map +1 -0
- package/dist/cjs/chunk-6Z2RYVUO.cjs +74 -0
- package/dist/cjs/chunk-6Z2RYVUO.cjs.map +1 -0
- package/dist/cjs/chunk-6Z5XTC56.cjs +17 -0
- package/dist/cjs/chunk-6Z5XTC56.cjs.map +1 -0
- package/dist/cjs/chunk-75RI45E4.cjs +44 -0
- package/dist/cjs/chunk-75RI45E4.cjs.map +1 -0
- package/dist/cjs/chunk-76LBH57A.cjs +18 -0
- package/dist/cjs/chunk-76LBH57A.cjs.map +1 -0
- package/dist/cjs/chunk-76M7BSJ3.cjs +44 -0
- package/dist/cjs/chunk-76M7BSJ3.cjs.map +1 -0
- package/dist/cjs/chunk-7BO5E2NH.cjs +365 -0
- package/dist/cjs/chunk-7BO5E2NH.cjs.map +1 -0
- package/dist/cjs/chunk-7DEPTYG3.cjs +17 -0
- package/dist/cjs/chunk-7DEPTYG3.cjs.map +1 -0
- package/dist/cjs/chunk-7K5Z7DWN.cjs +361 -0
- package/dist/cjs/chunk-7K5Z7DWN.cjs.map +1 -0
- package/dist/cjs/chunk-7MKV6BXH.cjs +29 -0
- package/dist/cjs/chunk-7MKV6BXH.cjs.map +1 -0
- package/dist/cjs/chunk-7QRK2PZ7.cjs +18 -0
- package/dist/cjs/chunk-7QRK2PZ7.cjs.map +1 -0
- package/dist/cjs/chunk-7ZASM7UH.cjs +18 -0
- package/dist/cjs/chunk-7ZASM7UH.cjs.map +1 -0
- package/dist/cjs/chunk-7ZZOQCNU.cjs +17 -0
- package/dist/cjs/chunk-7ZZOQCNU.cjs.map +1 -0
- package/dist/cjs/chunk-A3FKCCSJ.cjs +44 -0
- package/dist/cjs/chunk-A3FKCCSJ.cjs.map +1 -0
- package/dist/cjs/chunk-A4ZX4Y47.cjs +45 -0
- package/dist/cjs/chunk-A4ZX4Y47.cjs.map +1 -0
- package/dist/cjs/chunk-A5SOUOEA.cjs +89 -0
- package/dist/cjs/chunk-A5SOUOEA.cjs.map +1 -0
- package/dist/cjs/chunk-AAUUAPCC.cjs +38 -0
- package/dist/cjs/chunk-AAUUAPCC.cjs.map +1 -0
- package/dist/cjs/chunk-AD6V5E5Q.cjs +89 -0
- package/dist/cjs/chunk-AD6V5E5Q.cjs.map +1 -0
- package/dist/cjs/chunk-AEPKSXT7.cjs +44 -0
- package/dist/cjs/chunk-AEPKSXT7.cjs.map +1 -0
- package/dist/cjs/chunk-AKDAUOUK.cjs +44 -0
- package/dist/cjs/chunk-AKDAUOUK.cjs.map +1 -0
- package/dist/cjs/chunk-AKQQCR26.cjs +17 -0
- package/dist/cjs/chunk-AKQQCR26.cjs.map +1 -0
- package/dist/cjs/chunk-ALPK75M7.cjs +100 -0
- package/dist/cjs/chunk-ALPK75M7.cjs.map +1 -0
- package/dist/cjs/chunk-AMKL65AS.cjs +20 -0
- package/dist/cjs/chunk-AMKL65AS.cjs.map +1 -0
- package/dist/cjs/chunk-AURUUSKY.cjs +44 -0
- package/dist/cjs/chunk-AURUUSKY.cjs.map +1 -0
- package/dist/cjs/chunk-AWKZRMOE.cjs +17 -0
- package/dist/cjs/chunk-AWKZRMOE.cjs.map +1 -0
- package/dist/cjs/chunk-AY4FE732.cjs +44 -0
- package/dist/cjs/chunk-AY4FE732.cjs.map +1 -0
- package/dist/cjs/chunk-B2QI7F2C.cjs +74 -0
- package/dist/cjs/chunk-B2QI7F2C.cjs.map +1 -0
- package/dist/cjs/chunk-B6D34MKF.cjs +29 -0
- package/dist/cjs/chunk-B6D34MKF.cjs.map +1 -0
- package/dist/cjs/chunk-BBUDDS2U.cjs +62 -0
- package/dist/cjs/chunk-BBUDDS2U.cjs.map +1 -0
- package/dist/cjs/chunk-BESFTGZE.cjs +89 -0
- package/dist/cjs/chunk-BESFTGZE.cjs.map +1 -0
- package/dist/cjs/chunk-BMXLCOSM.cjs +110 -0
- package/dist/cjs/chunk-BMXLCOSM.cjs.map +1 -0
- package/dist/cjs/chunk-BQ7N5GR2.cjs +74 -0
- package/dist/cjs/chunk-BQ7N5GR2.cjs.map +1 -0
- package/dist/cjs/chunk-BUVFXGID.cjs +17 -0
- package/dist/cjs/chunk-BUVFXGID.cjs.map +1 -0
- package/dist/cjs/chunk-BYU2KBHQ.cjs +89 -0
- package/dist/cjs/chunk-BYU2KBHQ.cjs.map +1 -0
- package/dist/cjs/chunk-CDKYYWPR.cjs +44 -0
- package/dist/cjs/chunk-CDKYYWPR.cjs.map +1 -0
- package/dist/cjs/chunk-CGBTMF5T.cjs +160 -0
- package/dist/cjs/chunk-CGBTMF5T.cjs.map +1 -0
- package/dist/cjs/chunk-CII4HFTO.cjs +44 -0
- package/dist/cjs/chunk-CII4HFTO.cjs.map +1 -0
- package/dist/cjs/chunk-CIOM5KV3.cjs +17 -0
- package/dist/cjs/chunk-CIOM5KV3.cjs.map +1 -0
- package/dist/cjs/chunk-CPOJVACJ.cjs +44 -0
- package/dist/cjs/chunk-CPOJVACJ.cjs.map +1 -0
- package/dist/cjs/chunk-CPXITYT4.cjs +104 -0
- package/dist/cjs/chunk-CPXITYT4.cjs.map +1 -0
- package/dist/cjs/chunk-CX3MFVU4.cjs +85 -0
- package/dist/cjs/chunk-CX3MFVU4.cjs.map +1 -0
- package/dist/cjs/chunk-CZ46DNRL.cjs +44 -0
- package/dist/cjs/chunk-CZ46DNRL.cjs.map +1 -0
- package/dist/cjs/chunk-DFUGFIB7.cjs +17 -0
- package/dist/cjs/chunk-DFUGFIB7.cjs.map +1 -0
- package/dist/cjs/chunk-DUTUWBRW.cjs +38 -0
- package/dist/cjs/chunk-DUTUWBRW.cjs.map +1 -0
- package/dist/cjs/chunk-DXUGFSHK.cjs +11 -0
- package/dist/cjs/chunk-DXUGFSHK.cjs.map +1 -0
- package/dist/cjs/chunk-DYQVBJUW.cjs +74 -0
- package/dist/cjs/chunk-DYQVBJUW.cjs.map +1 -0
- package/dist/cjs/chunk-DZZFES73.cjs +29 -0
- package/dist/cjs/chunk-DZZFES73.cjs.map +1 -0
- package/dist/cjs/chunk-E3CMG6RX.cjs +44 -0
- package/dist/cjs/chunk-E3CMG6RX.cjs.map +1 -0
- package/dist/cjs/chunk-E4MOFVBQ.cjs +29 -0
- package/dist/cjs/chunk-E4MOFVBQ.cjs.map +1 -0
- package/dist/cjs/chunk-EAEGZUHR.cjs +38 -0
- package/dist/cjs/chunk-EAEGZUHR.cjs.map +1 -0
- package/dist/cjs/chunk-EJFZ3FVM.cjs +17 -0
- package/dist/cjs/chunk-EJFZ3FVM.cjs.map +1 -0
- package/dist/cjs/chunk-EJMGDCI2.cjs +95 -0
- package/dist/cjs/chunk-EJMGDCI2.cjs.map +1 -0
- package/dist/cjs/chunk-EO6SZ6Y2.cjs +18 -0
- package/dist/cjs/chunk-EO6SZ6Y2.cjs.map +1 -0
- package/dist/cjs/chunk-EOLXWHTI.cjs +17 -0
- package/dist/cjs/chunk-EOLXWHTI.cjs.map +1 -0
- package/dist/cjs/chunk-ESLEPGTR.cjs +17 -0
- package/dist/cjs/chunk-ESLEPGTR.cjs.map +1 -0
- package/dist/cjs/chunk-EY6LRYGR.cjs +44 -0
- package/dist/cjs/chunk-EY6LRYGR.cjs.map +1 -0
- package/dist/cjs/chunk-EYWBSYOP.cjs +44 -0
- package/dist/cjs/chunk-EYWBSYOP.cjs.map +1 -0
- package/dist/cjs/chunk-F34KCFDI.cjs +38 -0
- package/dist/cjs/chunk-F34KCFDI.cjs.map +1 -0
- package/dist/cjs/chunk-FANWWNES.cjs +38 -0
- package/dist/cjs/chunk-FANWWNES.cjs.map +1 -0
- package/dist/cjs/chunk-FFOBJEZ4.cjs +18 -0
- package/dist/cjs/chunk-FFOBJEZ4.cjs.map +1 -0
- package/dist/cjs/chunk-FJCNUHOK.cjs +123 -0
- package/dist/cjs/chunk-FJCNUHOK.cjs.map +1 -0
- package/dist/cjs/chunk-FK2PASX2.cjs +89 -0
- package/dist/cjs/chunk-FK2PASX2.cjs.map +1 -0
- package/dist/cjs/chunk-FLGB7KZC.cjs +74 -0
- package/dist/cjs/chunk-FLGB7KZC.cjs.map +1 -0
- package/dist/cjs/chunk-FRURA3TL.cjs +18 -0
- package/dist/cjs/chunk-FRURA3TL.cjs.map +1 -0
- package/dist/cjs/chunk-FXJABXH2.cjs +44 -0
- package/dist/cjs/chunk-FXJABXH2.cjs.map +1 -0
- package/dist/cjs/chunk-FYIPH2Y6.cjs +38 -0
- package/dist/cjs/chunk-FYIPH2Y6.cjs.map +1 -0
- package/dist/cjs/chunk-G2YDAC3K.cjs +17 -0
- package/dist/cjs/chunk-G2YDAC3K.cjs.map +1 -0
- package/dist/cjs/chunk-G5E3ISQF.cjs +18 -0
- package/dist/cjs/chunk-G5E3ISQF.cjs.map +1 -0
- package/dist/cjs/chunk-GE3YIMKB.cjs +38 -0
- package/dist/cjs/chunk-GE3YIMKB.cjs.map +1 -0
- package/dist/cjs/chunk-GF3T2PUU.cjs +89 -0
- package/dist/cjs/chunk-GF3T2PUU.cjs.map +1 -0
- package/dist/cjs/chunk-GGZLS3DW.cjs +362 -0
- package/dist/cjs/chunk-GGZLS3DW.cjs.map +1 -0
- package/dist/cjs/chunk-GNOOMK7W.cjs +17 -0
- package/dist/cjs/chunk-GNOOMK7W.cjs.map +1 -0
- package/dist/cjs/chunk-GP7IXGFK.cjs +17 -0
- package/dist/cjs/chunk-GP7IXGFK.cjs.map +1 -0
- package/dist/cjs/chunk-GQ7GLAJK.cjs +29 -0
- package/dist/cjs/chunk-GQ7GLAJK.cjs.map +1 -0
- package/dist/cjs/chunk-GS4SRUTV.cjs +89 -0
- package/dist/cjs/chunk-GS4SRUTV.cjs.map +1 -0
- package/dist/cjs/chunk-GU6HDVQH.cjs +62 -0
- package/dist/cjs/chunk-GU6HDVQH.cjs.map +1 -0
- package/dist/cjs/chunk-HFYBAX4K.cjs +89 -0
- package/dist/cjs/chunk-HFYBAX4K.cjs.map +1 -0
- package/dist/cjs/chunk-HLTFUIIN.cjs +16 -0
- package/dist/cjs/chunk-HLTFUIIN.cjs.map +1 -0
- package/dist/cjs/chunk-HMLQQSC5.cjs +45 -0
- package/dist/cjs/chunk-HMLQQSC5.cjs.map +1 -0
- package/dist/cjs/chunk-HNFRGOJS.cjs +38 -0
- package/dist/cjs/chunk-HNFRGOJS.cjs.map +1 -0
- package/dist/cjs/chunk-HQ2XGXLM.cjs +44 -0
- package/dist/cjs/chunk-HQ2XGXLM.cjs.map +1 -0
- package/dist/cjs/chunk-HR3PYWGD.cjs +108 -0
- package/dist/cjs/chunk-HR3PYWGD.cjs.map +1 -0
- package/dist/cjs/chunk-HRZFYMBV.cjs +89 -0
- package/dist/cjs/chunk-HRZFYMBV.cjs.map +1 -0
- package/dist/cjs/chunk-I25WEIX7.cjs +44 -0
- package/dist/cjs/chunk-I25WEIX7.cjs.map +1 -0
- package/dist/cjs/chunk-IDDQKX45.cjs +18 -0
- package/dist/cjs/chunk-IDDQKX45.cjs.map +1 -0
- package/dist/cjs/chunk-IMLEZU2H.cjs +44 -0
- package/dist/cjs/chunk-IMLEZU2H.cjs.map +1 -0
- package/dist/cjs/chunk-IRTWZKRL.cjs +29 -0
- package/dist/cjs/chunk-IRTWZKRL.cjs.map +1 -0
- package/dist/cjs/chunk-IS6Q542T.cjs +18 -0
- package/dist/cjs/chunk-IS6Q542T.cjs.map +1 -0
- package/dist/cjs/chunk-ISLBO7I5.cjs +29 -0
- package/dist/cjs/chunk-ISLBO7I5.cjs.map +1 -0
- package/dist/{esm/chunk-MC5KX7MQ.js → cjs/chunk-IVNKHMZI.cjs} +54 -25
- package/dist/cjs/chunk-IVNKHMZI.cjs.map +1 -0
- package/dist/cjs/chunk-J6GZHVKA.cjs +17 -0
- package/dist/cjs/chunk-J6GZHVKA.cjs.map +1 -0
- package/dist/cjs/chunk-J7XZEYNH.cjs +18 -0
- package/dist/cjs/chunk-J7XZEYNH.cjs.map +1 -0
- package/dist/cjs/chunk-JBW43DLI.cjs +44 -0
- package/dist/cjs/chunk-JBW43DLI.cjs.map +1 -0
- package/dist/cjs/chunk-JCC4WECX.cjs +17 -0
- package/dist/cjs/chunk-JCC4WECX.cjs.map +1 -0
- package/dist/cjs/chunk-JCHBG2CK.cjs +29 -0
- package/dist/cjs/chunk-JCHBG2CK.cjs.map +1 -0
- package/dist/cjs/chunk-JJOPCTCU.cjs +17 -0
- package/dist/cjs/chunk-JJOPCTCU.cjs.map +1 -0
- package/dist/cjs/chunk-JLA2XKKK.cjs +17 -0
- package/dist/cjs/chunk-JLA2XKKK.cjs.map +1 -0
- package/dist/cjs/chunk-JRAXCPQO.cjs +44 -0
- package/dist/cjs/chunk-JRAXCPQO.cjs.map +1 -0
- package/dist/{esm/chunk-QQZ5ANSD.js → cjs/chunk-K3UELZ4W.cjs} +47 -35
- package/dist/cjs/chunk-K3UELZ4W.cjs.map +1 -0
- package/dist/cjs/chunk-K4BDE4VQ.cjs +17 -0
- package/dist/cjs/chunk-K4BDE4VQ.cjs.map +1 -0
- package/dist/cjs/chunk-K54PUMX5.cjs +44 -0
- package/dist/cjs/chunk-K54PUMX5.cjs.map +1 -0
- package/dist/cjs/chunk-KAEDNRF3.cjs +97 -0
- package/dist/cjs/chunk-KAEDNRF3.cjs.map +1 -0
- package/dist/cjs/chunk-KHG7EBRN.cjs +17 -0
- package/dist/cjs/chunk-KHG7EBRN.cjs.map +1 -0
- package/dist/cjs/chunk-KJ4E6VUE.cjs +62 -0
- package/dist/cjs/chunk-KJ4E6VUE.cjs.map +1 -0
- package/dist/cjs/chunk-KJJ6WEOJ.cjs +11 -0
- package/dist/cjs/chunk-KJJ6WEOJ.cjs.map +1 -0
- package/dist/cjs/chunk-KMREZ7PZ.cjs +74 -0
- package/dist/cjs/chunk-KMREZ7PZ.cjs.map +1 -0
- package/dist/cjs/chunk-KN5CERX5.cjs +89 -0
- package/dist/cjs/chunk-KN5CERX5.cjs.map +1 -0
- package/dist/cjs/chunk-KNYVRACQ.cjs +62 -0
- package/dist/cjs/chunk-KNYVRACQ.cjs.map +1 -0
- package/dist/cjs/chunk-KP4L7527.cjs +17 -0
- package/dist/cjs/chunk-KP4L7527.cjs.map +1 -0
- package/dist/cjs/chunk-KQDMWEET.cjs +18 -0
- package/dist/cjs/chunk-KQDMWEET.cjs.map +1 -0
- package/dist/cjs/chunk-KWYDGO4G.cjs +62 -0
- package/dist/cjs/chunk-KWYDGO4G.cjs.map +1 -0
- package/dist/cjs/chunk-L6EOB53F.cjs +79 -0
- package/dist/cjs/chunk-L6EOB53F.cjs.map +1 -0
- package/dist/cjs/chunk-LAX3Y732.cjs +18 -0
- package/dist/cjs/chunk-LAX3Y732.cjs.map +1 -0
- package/dist/cjs/chunk-LDLF7MAE.cjs +132 -0
- package/dist/cjs/chunk-LDLF7MAE.cjs.map +1 -0
- package/dist/cjs/chunk-LETDXZVR.cjs +17 -0
- package/dist/cjs/chunk-LETDXZVR.cjs.map +1 -0
- package/dist/cjs/chunk-LI2XLHPP.cjs +38 -0
- package/dist/cjs/chunk-LI2XLHPP.cjs.map +1 -0
- package/dist/cjs/chunk-LJRPZUWA.cjs +104 -0
- package/dist/cjs/chunk-LJRPZUWA.cjs.map +1 -0
- package/dist/cjs/chunk-LKUN737V.cjs +74 -0
- package/dist/cjs/chunk-LKUN737V.cjs.map +1 -0
- package/dist/cjs/chunk-LLHF36B4.cjs +74 -0
- package/dist/cjs/chunk-LLHF36B4.cjs.map +1 -0
- package/dist/cjs/chunk-LMRBAR7I.cjs +89 -0
- package/dist/cjs/chunk-LMRBAR7I.cjs.map +1 -0
- package/dist/cjs/chunk-LNJJUOEN.cjs +160 -0
- package/dist/cjs/chunk-LNJJUOEN.cjs.map +1 -0
- package/dist/cjs/chunk-LS3KARP2.cjs +29 -0
- package/dist/cjs/chunk-LS3KARP2.cjs.map +1 -0
- package/dist/cjs/chunk-LUNBSV2I.cjs +74 -0
- package/dist/cjs/chunk-LUNBSV2I.cjs.map +1 -0
- package/dist/cjs/chunk-LVIMWZQS.cjs +89 -0
- package/dist/cjs/chunk-LVIMWZQS.cjs.map +1 -0
- package/dist/cjs/chunk-M6OZBNV3.cjs +17 -0
- package/dist/cjs/chunk-M6OZBNV3.cjs.map +1 -0
- package/dist/cjs/chunk-MAXQRRIY.cjs +365 -0
- package/dist/cjs/chunk-MAXQRRIY.cjs.map +1 -0
- package/dist/cjs/chunk-MIPD6XXN.cjs +17 -0
- package/dist/cjs/chunk-MIPD6XXN.cjs.map +1 -0
- package/dist/cjs/chunk-MNZP3CZB.cjs +45 -0
- package/dist/cjs/chunk-MNZP3CZB.cjs.map +1 -0
- package/dist/cjs/chunk-MOFEEAGY.cjs +17 -0
- package/dist/cjs/chunk-MOFEEAGY.cjs.map +1 -0
- package/dist/cjs/chunk-MTMT3CVP.cjs +17 -0
- package/dist/cjs/chunk-MTMT3CVP.cjs.map +1 -0
- package/dist/cjs/chunk-MYFVFI5F.cjs +74 -0
- package/dist/cjs/chunk-MYFVFI5F.cjs.map +1 -0
- package/dist/cjs/chunk-MYS55MIK.cjs +38 -0
- package/dist/cjs/chunk-MYS55MIK.cjs.map +1 -0
- package/dist/cjs/chunk-N6U4EN2R.cjs +44 -0
- package/dist/cjs/chunk-N6U4EN2R.cjs.map +1 -0
- package/dist/cjs/chunk-NBQ3VSRH.cjs +38 -0
- package/dist/cjs/chunk-NBQ3VSRH.cjs.map +1 -0
- package/dist/cjs/chunk-NFAEF6W7.cjs +62 -0
- package/dist/cjs/chunk-NFAEF6W7.cjs.map +1 -0
- package/dist/cjs/chunk-NFFV5YMX.cjs +44 -0
- package/dist/cjs/chunk-NFFV5YMX.cjs.map +1 -0
- package/dist/cjs/chunk-NFW54MQ7.cjs +17 -0
- package/dist/cjs/chunk-NFW54MQ7.cjs.map +1 -0
- package/dist/cjs/chunk-NK3ADXTX.cjs +44 -0
- package/dist/cjs/chunk-NK3ADXTX.cjs.map +1 -0
- package/dist/cjs/chunk-NN7IOMRL.cjs +62 -0
- package/dist/cjs/chunk-NN7IOMRL.cjs.map +1 -0
- package/dist/cjs/chunk-NNVSYWA3.cjs +62 -0
- package/dist/cjs/chunk-NNVSYWA3.cjs.map +1 -0
- package/dist/cjs/chunk-NZXQID5S.cjs +104 -0
- package/dist/cjs/chunk-NZXQID5S.cjs.map +1 -0
- package/dist/{esm/chunk-CC6DWPHZ.js → cjs/chunk-O4WIK7YI.cjs} +17 -17
- package/dist/cjs/chunk-O4WIK7YI.cjs.map +1 -0
- package/dist/cjs/chunk-O7WYT77Q.cjs +62 -0
- package/dist/cjs/chunk-O7WYT77Q.cjs.map +1 -0
- package/dist/cjs/chunk-OCBMFZHQ.cjs +29 -0
- package/dist/cjs/chunk-OCBMFZHQ.cjs.map +1 -0
- package/dist/cjs/chunk-OCXNCC5B.cjs +17 -0
- package/dist/cjs/chunk-OCXNCC5B.cjs.map +1 -0
- package/dist/cjs/chunk-OG2R3NBK.cjs +38 -0
- package/dist/cjs/chunk-OG2R3NBK.cjs.map +1 -0
- package/dist/cjs/chunk-OHVXQ2LX.cjs +53 -0
- package/dist/cjs/chunk-OHVXQ2LX.cjs.map +1 -0
- package/dist/cjs/chunk-OJM4BUY2.cjs +89 -0
- package/dist/cjs/chunk-OJM4BUY2.cjs.map +1 -0
- package/dist/cjs/chunk-ORAYV7WD.cjs +17 -0
- package/dist/cjs/chunk-ORAYV7WD.cjs.map +1 -0
- package/dist/cjs/chunk-OVCUZFLV.cjs +44 -0
- package/dist/cjs/chunk-OVCUZFLV.cjs.map +1 -0
- package/dist/cjs/chunk-OYDNFJAM.cjs +44 -0
- package/dist/cjs/chunk-OYDNFJAM.cjs.map +1 -0
- package/dist/cjs/chunk-P2GCTU6M.cjs +109 -0
- package/dist/cjs/chunk-P2GCTU6M.cjs.map +1 -0
- package/dist/cjs/chunk-P2KW3E6U.cjs +29 -0
- package/dist/cjs/chunk-P2KW3E6U.cjs.map +1 -0
- package/dist/cjs/chunk-P2P5M3T2.cjs +29 -0
- package/dist/cjs/chunk-P2P5M3T2.cjs.map +1 -0
- package/dist/cjs/chunk-P362DRT2.cjs +44 -0
- package/dist/cjs/chunk-P362DRT2.cjs.map +1 -0
- package/dist/cjs/chunk-P3AYWRS7.cjs +18 -0
- package/dist/cjs/chunk-P3AYWRS7.cjs.map +1 -0
- package/dist/cjs/chunk-P64FBXOS.cjs +104 -0
- package/dist/cjs/chunk-P64FBXOS.cjs.map +1 -0
- package/dist/cjs/chunk-PAWQF7J7.cjs +17 -0
- package/dist/cjs/chunk-PAWQF7J7.cjs.map +1 -0
- package/dist/cjs/chunk-PF3ER2QU.cjs +17 -0
- package/dist/cjs/chunk-PF3ER2QU.cjs.map +1 -0
- package/dist/cjs/chunk-PG4SO7ML.cjs +29 -0
- package/dist/cjs/chunk-PG4SO7ML.cjs.map +1 -0
- package/dist/cjs/chunk-PN3F26EA.cjs +38 -0
- package/dist/cjs/chunk-PN3F26EA.cjs.map +1 -0
- package/dist/cjs/chunk-PO443XHM.cjs +62 -0
- package/dist/cjs/chunk-PO443XHM.cjs.map +1 -0
- package/dist/cjs/chunk-PQQU77V7.cjs +160 -0
- package/dist/cjs/chunk-PQQU77V7.cjs.map +1 -0
- package/dist/cjs/chunk-PQW35YAY.cjs +89 -0
- package/dist/cjs/chunk-PQW35YAY.cjs.map +1 -0
- package/dist/cjs/chunk-PTJST6LH.cjs +38 -0
- package/dist/cjs/chunk-PTJST6LH.cjs.map +1 -0
- package/dist/cjs/chunk-PWM3QPWT.cjs +62 -0
- package/dist/cjs/chunk-PWM3QPWT.cjs.map +1 -0
- package/dist/cjs/chunk-PX2NZ7SE.cjs +29 -0
- package/dist/cjs/chunk-PX2NZ7SE.cjs.map +1 -0
- package/dist/cjs/chunk-QD5ARR2B.cjs +17 -0
- package/dist/cjs/chunk-QD5ARR2B.cjs.map +1 -0
- package/dist/{esm/chunk-5IIF5O4A.js → cjs/chunk-QK26HLOI.cjs} +9 -9
- package/dist/cjs/chunk-QK26HLOI.cjs.map +1 -0
- package/dist/cjs/chunk-QOFTRHCH.cjs +62 -0
- package/dist/cjs/chunk-QOFTRHCH.cjs.map +1 -0
- package/dist/cjs/chunk-QQI3367Y.cjs +29 -0
- package/dist/cjs/chunk-QQI3367Y.cjs.map +1 -0
- package/dist/cjs/chunk-QS4IGZTN.cjs +17 -0
- package/dist/cjs/chunk-QS4IGZTN.cjs.map +1 -0
- package/dist/cjs/chunk-QUWVIY46.cjs +17 -0
- package/dist/cjs/chunk-QUWVIY46.cjs.map +1 -0
- package/dist/cjs/chunk-QYA4XUJT.cjs +18 -0
- package/dist/cjs/chunk-QYA4XUJT.cjs.map +1 -0
- package/dist/cjs/chunk-QYUFEGMJ.cjs +62 -0
- package/dist/cjs/chunk-QYUFEGMJ.cjs.map +1 -0
- package/dist/cjs/chunk-R4UYONDW.cjs +17 -0
- package/dist/cjs/chunk-R4UYONDW.cjs.map +1 -0
- package/dist/cjs/chunk-RAL7YD6T.cjs +44 -0
- package/dist/cjs/chunk-RAL7YD6T.cjs.map +1 -0
- package/dist/cjs/chunk-RGVKM4WY.cjs +62 -0
- package/dist/cjs/chunk-RGVKM4WY.cjs.map +1 -0
- package/dist/cjs/chunk-RHZY3ODR.cjs +361 -0
- package/dist/cjs/chunk-RHZY3ODR.cjs.map +1 -0
- package/dist/cjs/chunk-RN65SUJF.cjs +97 -0
- package/dist/cjs/chunk-RN65SUJF.cjs.map +1 -0
- package/dist/cjs/chunk-RNORLGS6.cjs +45 -0
- package/dist/cjs/chunk-RNORLGS6.cjs.map +1 -0
- package/dist/cjs/chunk-ROQH4P3W.cjs +38 -0
- package/dist/cjs/chunk-ROQH4P3W.cjs.map +1 -0
- package/dist/cjs/chunk-RRUMJQUL.cjs +89 -0
- package/dist/cjs/chunk-RRUMJQUL.cjs.map +1 -0
- package/dist/cjs/chunk-RSW62NMI.cjs +199 -0
- package/dist/cjs/chunk-RSW62NMI.cjs.map +1 -0
- package/dist/cjs/chunk-RUWGV4WR.cjs +17 -0
- package/dist/cjs/chunk-RUWGV4WR.cjs.map +1 -0
- package/dist/cjs/chunk-RXKDAHG2.cjs +44 -0
- package/dist/cjs/chunk-RXKDAHG2.cjs.map +1 -0
- package/dist/cjs/chunk-S6QSKB6P.cjs +16 -0
- package/dist/cjs/chunk-S6QSKB6P.cjs.map +1 -0
- package/dist/cjs/chunk-S6T455CQ.cjs +17 -0
- package/dist/cjs/chunk-S6T455CQ.cjs.map +1 -0
- package/dist/cjs/chunk-SC7EAJGH.cjs +17 -0
- package/dist/cjs/chunk-SC7EAJGH.cjs.map +1 -0
- package/dist/cjs/chunk-SD3MWNJS.cjs +38 -0
- package/dist/cjs/chunk-SD3MWNJS.cjs.map +1 -0
- package/dist/cjs/chunk-SFLERIBX.cjs +44 -0
- package/dist/cjs/chunk-SFLERIBX.cjs.map +1 -0
- package/dist/cjs/chunk-SFS4SXF6.cjs +53 -0
- package/dist/cjs/chunk-SFS4SXF6.cjs.map +1 -0
- package/dist/cjs/chunk-SFZRVWAS.cjs +116 -0
- package/dist/cjs/chunk-SFZRVWAS.cjs.map +1 -0
- package/dist/cjs/chunk-SMW34VVM.cjs +44 -0
- package/dist/cjs/chunk-SMW34VVM.cjs.map +1 -0
- package/dist/cjs/chunk-SSKGQ6Q6.cjs +44 -0
- package/dist/cjs/chunk-SSKGQ6Q6.cjs.map +1 -0
- package/dist/cjs/chunk-ST3FQEPC.cjs +17 -0
- package/dist/cjs/chunk-ST3FQEPC.cjs.map +1 -0
- package/dist/cjs/chunk-SUWPGEHX.cjs +17 -0
- package/dist/cjs/chunk-SUWPGEHX.cjs.map +1 -0
- package/dist/cjs/chunk-SV2K3QIF.cjs +89 -0
- package/dist/cjs/chunk-SV2K3QIF.cjs.map +1 -0
- package/dist/cjs/chunk-SVO42FE4.cjs +199 -0
- package/dist/cjs/chunk-SVO42FE4.cjs.map +1 -0
- package/dist/cjs/chunk-SVWQ7SSG.cjs +17 -0
- package/dist/cjs/chunk-SVWQ7SSG.cjs.map +1 -0
- package/dist/cjs/chunk-SWXYI6B3.cjs +17 -0
- package/dist/cjs/chunk-SWXYI6B3.cjs.map +1 -0
- package/dist/cjs/chunk-SYRDNATI.cjs +18 -0
- package/dist/cjs/chunk-SYRDNATI.cjs.map +1 -0
- package/dist/cjs/chunk-T6JV6NPL.cjs +29 -0
- package/dist/cjs/chunk-T6JV6NPL.cjs.map +1 -0
- package/dist/cjs/chunk-TA7HWVVM.cjs +44 -0
- package/dist/cjs/chunk-TA7HWVVM.cjs.map +1 -0
- package/dist/cjs/chunk-TO3PRCSI.cjs +29 -0
- package/dist/cjs/chunk-TO3PRCSI.cjs.map +1 -0
- package/dist/cjs/chunk-TR6LECJD.cjs +17 -0
- package/dist/cjs/chunk-TR6LECJD.cjs.map +1 -0
- package/dist/cjs/chunk-TUCSLVSF.cjs +74 -0
- package/dist/cjs/chunk-TUCSLVSF.cjs.map +1 -0
- package/dist/cjs/chunk-TWEE7ZVM.cjs +17 -0
- package/dist/cjs/chunk-TWEE7ZVM.cjs.map +1 -0
- package/dist/cjs/chunk-TXCJLAJF.cjs +38 -0
- package/dist/cjs/chunk-TXCJLAJF.cjs.map +1 -0
- package/dist/cjs/chunk-U6NNAQNQ.cjs +38 -0
- package/dist/cjs/chunk-U6NNAQNQ.cjs.map +1 -0
- package/dist/cjs/chunk-UFRZN76M.cjs +62 -0
- package/dist/cjs/chunk-UFRZN76M.cjs.map +1 -0
- package/dist/cjs/chunk-UHBLYOYU.cjs +74 -0
- package/dist/cjs/chunk-UHBLYOYU.cjs.map +1 -0
- package/dist/cjs/chunk-UHDH333D.cjs +62 -0
- package/dist/cjs/chunk-UHDH333D.cjs.map +1 -0
- package/dist/cjs/chunk-UNJZ3SCR.cjs +38 -0
- package/dist/cjs/chunk-UNJZ3SCR.cjs.map +1 -0
- package/dist/cjs/chunk-UOTEA2IY.cjs +104 -0
- package/dist/cjs/chunk-UOTEA2IY.cjs.map +1 -0
- package/dist/cjs/chunk-UQFLEWWA.cjs +362 -0
- package/dist/cjs/chunk-UQFLEWWA.cjs.map +1 -0
- package/dist/cjs/chunk-UUCZKT5D.cjs +132 -0
- package/dist/cjs/chunk-UUCZKT5D.cjs.map +1 -0
- package/dist/cjs/chunk-UVPSBGW7.cjs +74 -0
- package/dist/cjs/chunk-UVPSBGW7.cjs.map +1 -0
- package/dist/cjs/chunk-UZJTUZGY.cjs +17 -0
- package/dist/cjs/chunk-UZJTUZGY.cjs.map +1 -0
- package/dist/cjs/chunk-V4RBT5K7.cjs +17 -0
- package/dist/cjs/chunk-V4RBT5K7.cjs.map +1 -0
- package/dist/cjs/chunk-VDXJGAFA.cjs +17 -0
- package/dist/cjs/chunk-VDXJGAFA.cjs.map +1 -0
- package/dist/cjs/chunk-VMO3EK7D.cjs +17 -0
- package/dist/cjs/chunk-VMO3EK7D.cjs.map +1 -0
- package/dist/cjs/chunk-VT73FQL4.cjs +89 -0
- package/dist/cjs/chunk-VT73FQL4.cjs.map +1 -0
- package/dist/cjs/chunk-VXA4ORKK.cjs +74 -0
- package/dist/cjs/chunk-VXA4ORKK.cjs.map +1 -0
- package/dist/cjs/chunk-W7SORD7U.cjs +44 -0
- package/dist/cjs/chunk-W7SORD7U.cjs.map +1 -0
- package/dist/cjs/chunk-WATBESF4.cjs +44 -0
- package/dist/cjs/chunk-WATBESF4.cjs.map +1 -0
- package/dist/cjs/chunk-WCTCFUE2.cjs +367 -0
- package/dist/cjs/chunk-WCTCFUE2.cjs.map +1 -0
- package/dist/cjs/chunk-WDYGGL7T.cjs +74 -0
- package/dist/cjs/chunk-WDYGGL7T.cjs.map +1 -0
- package/dist/cjs/chunk-WIS6QBYF.cjs +77 -0
- package/dist/cjs/chunk-WIS6QBYF.cjs.map +1 -0
- package/dist/cjs/chunk-WJNXA7H5.cjs +17 -0
- package/dist/cjs/chunk-WJNXA7H5.cjs.map +1 -0
- package/dist/cjs/chunk-WK2SDNK6.cjs +29 -0
- package/dist/cjs/chunk-WK2SDNK6.cjs.map +1 -0
- package/dist/cjs/chunk-WL657FMV.cjs +17 -0
- package/dist/cjs/chunk-WL657FMV.cjs.map +1 -0
- package/dist/cjs/chunk-WQJUJFBG.cjs +89 -0
- package/dist/cjs/chunk-WQJUJFBG.cjs.map +1 -0
- package/dist/cjs/chunk-WQKJT2J5.cjs +17 -0
- package/dist/cjs/chunk-WQKJT2J5.cjs.map +1 -0
- package/dist/cjs/chunk-WUCAGTUK.cjs +17 -0
- package/dist/cjs/chunk-WUCAGTUK.cjs.map +1 -0
- package/dist/cjs/chunk-WY7CK7W5.cjs +74 -0
- package/dist/cjs/chunk-WY7CK7W5.cjs.map +1 -0
- package/dist/cjs/chunk-WZEICEMD.cjs +62 -0
- package/dist/cjs/chunk-WZEICEMD.cjs.map +1 -0
- package/dist/cjs/chunk-X3QHGDUT.cjs +74 -0
- package/dist/cjs/chunk-X3QHGDUT.cjs.map +1 -0
- package/dist/cjs/chunk-XDHFS7VI.cjs +44 -0
- package/dist/cjs/chunk-XDHFS7VI.cjs.map +1 -0
- package/dist/cjs/chunk-XIVWRYNJ.cjs +38 -0
- package/dist/cjs/chunk-XIVWRYNJ.cjs.map +1 -0
- package/dist/cjs/chunk-XTZB7I5O.cjs +365 -0
- package/dist/cjs/chunk-XTZB7I5O.cjs.map +1 -0
- package/dist/cjs/chunk-XTZXXP5H.cjs +17 -0
- package/dist/cjs/chunk-XTZXXP5H.cjs.map +1 -0
- package/dist/cjs/chunk-XWQATYRB.cjs +17 -0
- package/dist/cjs/chunk-XWQATYRB.cjs.map +1 -0
- package/dist/cjs/chunk-XZUUYWF4.cjs +74 -0
- package/dist/cjs/chunk-XZUUYWF4.cjs.map +1 -0
- package/dist/cjs/chunk-Y3E7ELDU.cjs +17 -0
- package/dist/cjs/chunk-Y3E7ELDU.cjs.map +1 -0
- package/dist/cjs/chunk-Y524IIF6.cjs +199 -0
- package/dist/cjs/chunk-Y524IIF6.cjs.map +1 -0
- package/dist/cjs/chunk-YEEYYIBK.cjs +17 -0
- package/dist/cjs/chunk-YEEYYIBK.cjs.map +1 -0
- package/dist/cjs/chunk-YM24CPSE.cjs +44 -0
- package/dist/cjs/chunk-YM24CPSE.cjs.map +1 -0
- package/dist/cjs/chunk-YMFMJL47.cjs +137 -0
- package/dist/cjs/chunk-YMFMJL47.cjs.map +1 -0
- package/dist/cjs/chunk-YNPHQW5S.cjs +17 -0
- package/dist/cjs/chunk-YNPHQW5S.cjs.map +1 -0
- package/dist/cjs/chunk-YUTGCYSF.cjs +199 -0
- package/dist/cjs/chunk-YUTGCYSF.cjs.map +1 -0
- package/dist/cjs/chunk-Z2IE2N4Z.cjs +38 -0
- package/dist/cjs/chunk-Z2IE2N4Z.cjs.map +1 -0
- package/dist/cjs/chunk-Z57RTBQ6.cjs +18 -0
- package/dist/cjs/chunk-Z57RTBQ6.cjs.map +1 -0
- package/dist/cjs/chunk-Z6WB6GE6.cjs +17 -0
- package/dist/cjs/chunk-Z6WB6GE6.cjs.map +1 -0
- package/dist/cjs/chunk-ZEUSN4Q4.cjs +89 -0
- package/dist/cjs/chunk-ZEUSN4Q4.cjs.map +1 -0
- package/dist/cjs/chunk-ZF2XEV4M.cjs +362 -0
- package/dist/cjs/chunk-ZF2XEV4M.cjs.map +1 -0
- package/dist/cjs/chunk-ZO4B7BJ3.cjs +38 -0
- package/dist/cjs/chunk-ZO4B7BJ3.cjs.map +1 -0
- package/dist/cjs/chunk-ZRQ2BXVC.cjs +38 -0
- package/dist/cjs/chunk-ZRQ2BXVC.cjs.map +1 -0
- package/dist/cjs/chunk-ZUIRE3CM.cjs +18 -0
- package/dist/cjs/chunk-ZUIRE3CM.cjs.map +1 -0
- package/dist/cjs/chunk-ZUTXQWDF.cjs +29 -0
- package/dist/cjs/chunk-ZUTXQWDF.cjs.map +1 -0
- package/dist/cjs/container/controllers.cjs +7 -6
- package/dist/cjs/container/controllers.cjs.map +1 -1
- package/dist/cjs/container/index.cjs +28 -25
- package/dist/cjs/container/index.cjs.map +1 -1
- package/dist/cjs/container/services.cjs +18 -15
- package/dist/cjs/container/services.cjs.map +1 -1
- package/dist/cjs/controllers/a2a.controller.cjs +3 -3
- package/dist/cjs/controllers/api/workflow.api.controller.cjs +2 -2
- package/dist/cjs/controllers/index.cjs +7 -7
- package/dist/cjs/controllers/index.cjs.map +1 -1
- package/dist/cjs/controllers/query.controller.cjs +4 -3
- package/dist/cjs/controllers/query.controller.cjs.map +1 -1
- package/dist/cjs/index.cjs +46 -43
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/middlewares/error.middleware.cjs +3 -3
- package/dist/cjs/modules/a2a/a2a.module.cjs +4 -4
- package/dist/cjs/modules/index.cjs +8 -8
- package/dist/cjs/modules/mcp/mcp.module.cjs +3 -3
- package/dist/cjs/routes/a2a.routes.cjs +29 -26
- package/dist/cjs/routes/a2a.routes.cjs.map +1 -1
- package/dist/cjs/routes/api/agent.routes.cjs +27 -24
- package/dist/cjs/routes/api/agent.routes.cjs.map +1 -1
- package/dist/cjs/routes/api/intent.routes.cjs +27 -24
- package/dist/cjs/routes/api/intent.routes.cjs.map +1 -1
- package/dist/cjs/routes/api/model.routes.cjs +27 -24
- package/dist/cjs/routes/api/model.routes.cjs.map +1 -1
- package/dist/cjs/routes/api/threads.routes.cjs +27 -24
- package/dist/cjs/routes/api/threads.routes.cjs.map +1 -1
- package/dist/cjs/routes/api/workflow.routes.cjs +27 -24
- package/dist/cjs/routes/api/workflow.routes.cjs.map +1 -1
- package/dist/cjs/routes/api.routes.cjs +32 -29
- package/dist/cjs/routes/api.routes.cjs.map +1 -1
- package/dist/cjs/routes/index.cjs +36 -33
- package/dist/cjs/routes/index.cjs.map +1 -1
- package/dist/cjs/routes/intent.routes.cjs +27 -24
- package/dist/cjs/routes/intent.routes.cjs.map +1 -1
- package/dist/cjs/routes/query.routes.cjs +27 -24
- package/dist/cjs/routes/query.routes.cjs.map +1 -1
- package/dist/cjs/services/a2a.service.cjs +3 -3
- package/dist/cjs/services/index.cjs +16 -13
- package/dist/cjs/services/index.cjs.map +1 -1
- package/dist/cjs/services/intents/aggregate.service.cjs +3 -4
- package/dist/cjs/services/intents/aggregate.service.cjs.map +1 -1
- package/dist/cjs/services/intents/fulfill.service.cjs +8 -7
- package/dist/cjs/services/intents/fulfill.service.cjs.map +1 -1
- package/dist/cjs/services/intents/multi-trigger.service.cjs +4 -3
- package/dist/cjs/services/intents/multi-trigger.service.cjs.map +1 -1
- package/dist/cjs/services/intents/single-trigger.service.cjs +4 -3
- package/dist/cjs/services/intents/single-trigger.service.cjs.map +1 -1
- package/dist/cjs/services/intents/trigger.service.cjs +7 -5
- package/dist/cjs/services/intents/trigger.service.cjs.map +1 -1
- package/dist/cjs/services/prompts/aggregate.cjs +7 -0
- package/dist/cjs/services/prompts/aggregate.cjs.map +1 -0
- package/dist/cjs/services/prompts/fulfill.cjs +7 -0
- package/dist/cjs/services/prompts/fulfill.cjs.map +1 -0
- package/dist/cjs/services/prompts/generate-title.cjs +7 -0
- package/dist/cjs/services/prompts/generate-title.cjs.map +1 -0
- package/dist/cjs/services/prompts/multi-trigger.cjs +7 -0
- package/dist/cjs/services/prompts/multi-trigger.cjs.map +1 -0
- package/dist/cjs/services/prompts/single-trigger.cjs +7 -0
- package/dist/cjs/services/prompts/single-trigger.cjs.map +1 -0
- package/dist/cjs/services/prompts/tool-select.cjs +7 -0
- package/dist/cjs/services/prompts/tool-select.cjs.map +1 -0
- package/dist/cjs/services/query.service.cjs +5 -5
- package/dist/cjs/services/utils/aggregate.common.cjs +2 -4
- package/dist/cjs/services/utils/aggregate.common.cjs.map +1 -1
- package/dist/cjs/services/utils/query.common.cjs +1 -8
- package/dist/cjs/services/utils/query.common.cjs.map +1 -1
- package/dist/cjs/types/memory.cjs +2 -2
- package/dist/cjs/utils/logger.cjs +4 -2
- package/dist/cjs/utils/logger.cjs.map +1 -1
- package/dist/cjs/utils/tableBuffer.cjs +7 -0
- package/dist/cjs/utils/tableBuffer.cjs.map +1 -0
- package/dist/esm/{chunk-7BH6AYP7.js → chunk-22ELL7WG.js} +6 -4
- package/dist/esm/chunk-22ELL7WG.js.map +1 -0
- package/dist/esm/{chunk-FISBL7OM.js → chunk-2RLUCOJF.js} +65 -21
- package/dist/esm/chunk-2RLUCOJF.js.map +1 -0
- package/dist/esm/chunk-3CR3ZB6L.js +60 -0
- package/dist/esm/chunk-3CR3ZB6L.js.map +1 -0
- package/dist/esm/chunk-5Z3SX3AE.js +11 -0
- package/dist/esm/chunk-5Z3SX3AE.js.map +1 -0
- package/dist/esm/{chunk-LC5XQGWK.js → chunk-BQO572DY.js} +10 -10
- package/dist/esm/{chunk-RAHOYMKY.js → chunk-BYGS3GS6.js} +2 -2
- package/dist/esm/{chunk-JXGQVFCO.js → chunk-C6GUUAED.js} +40 -10
- package/dist/esm/chunk-C6GUUAED.js.map +1 -0
- package/dist/esm/chunk-CRQEBSRD.js +85 -0
- package/dist/esm/chunk-CRQEBSRD.js.map +1 -0
- package/dist/esm/chunk-DDSAK722.js +92 -0
- package/dist/esm/chunk-DDSAK722.js.map +1 -0
- package/dist/esm/{chunk-PVWOU6LA.js → chunk-FWPJQG4N.js} +4 -4
- package/dist/esm/chunk-FWPJQG4N.js.map +1 -0
- package/dist/esm/{chunk-ZNZZZ4NN.js → chunk-G4TS67ZV.js} +4 -4
- package/dist/esm/chunk-G4TS67ZV.js.map +1 -0
- package/dist/esm/{chunk-VUMI4XOY.js → chunk-GHUEA7V5.js} +23 -2
- package/dist/esm/chunk-GHUEA7V5.js.map +1 -0
- package/dist/esm/{chunk-HNKYLU4R.js → chunk-GKG27ZGB.js} +10 -10
- package/dist/esm/{chunk-A5CFFQUV.js → chunk-GT74YHJR.js} +2 -2
- package/dist/esm/chunk-HSAGEBXJ.js +16 -0
- package/dist/esm/chunk-HSAGEBXJ.js.map +1 -0
- package/dist/esm/{chunk-RKLWSV24.js → chunk-IQ3BAWVV.js} +2 -2
- package/dist/esm/{chunk-T3FCCMU6.js → chunk-M7YQE7I2.js} +3 -3
- package/dist/esm/{chunk-VRFQFDSM.js → chunk-MJMNQNQL.js} +2 -2
- package/dist/esm/{chunk-YMSNW2SU.js → chunk-MVVAEPGR.js} +2 -2
- package/dist/esm/{chunk-MB7ZI64O.js → chunk-NHYC66BI.js} +8 -8
- package/dist/esm/{chunk-MDQEA2US.js → chunk-OCULYA2R.js} +2 -2
- package/dist/esm/{chunk-ZTYRQOCO.js → chunk-OV5MNKPH.js} +2 -2
- package/dist/esm/chunk-QMAVALRZ.js +97 -0
- package/dist/esm/chunk-QMAVALRZ.js.map +1 -0
- package/dist/esm/{chunk-S46LW2P7.js → chunk-RDXHEDJT.js} +2 -2
- package/dist/esm/{chunk-D6STNZ2L.js → chunk-RE676AIN.js} +16 -1
- package/dist/esm/chunk-RE676AIN.js.map +1 -0
- package/dist/esm/{chunk-FRQSMPPK.js → chunk-RYEA7EL2.js} +4 -4
- package/dist/esm/chunk-RYEA7EL2.js.map +1 -0
- package/dist/esm/{chunk-SUBXSJXS.js → chunk-TIIWZOBY.js} +5 -5
- package/dist/esm/{chunk-YUFYGSSY.js → chunk-TR2QAQEW.js} +2 -2
- package/dist/esm/chunk-TR2QAQEW.js.map +1 -0
- package/dist/esm/{chunk-4BHU7SPZ.js → chunk-VX3VWWYW.js} +1 -1
- package/dist/esm/{chunk-4BHU7SPZ.js.map → chunk-VX3VWWYW.js.map} +1 -1
- package/dist/esm/chunk-WFYXNKCJ.js +20 -0
- package/dist/esm/chunk-WFYXNKCJ.js.map +1 -0
- package/dist/esm/{chunk-ZJVWC666.js → chunk-WMHUZEL2.js} +2 -2
- package/dist/esm/chunk-XQUENGL4.js +29 -0
- package/dist/esm/chunk-XQUENGL4.js.map +1 -0
- package/dist/esm/{chunk-HZC52S2R.js → chunk-XSDHB2WQ.js} +2 -2
- package/dist/esm/container/controllers.js +6 -5
- package/dist/esm/container/index.js +26 -23
- package/dist/esm/container/services.js +18 -15
- package/dist/esm/controllers/a2a.controller.js +2 -2
- package/dist/esm/controllers/api/workflow.api.controller.js +1 -1
- package/dist/esm/controllers/index.js +6 -6
- package/dist/esm/controllers/query.controller.js +3 -2
- package/dist/esm/index.js +43 -40
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/middlewares/error.middleware.js +2 -2
- package/dist/esm/modules/a2a/a2a.module.d.ts +1 -1
- package/dist/esm/modules/a2a/a2a.module.js +3 -3
- package/dist/esm/modules/index.js +9 -9
- package/dist/esm/modules/mcp/mcp.module.d.ts +1 -1
- package/dist/esm/modules/mcp/mcp.module.js +2 -2
- package/dist/esm/modules/memory/base.memory.d.ts +6 -1
- package/dist/esm/routes/a2a.routes.js +29 -26
- package/dist/esm/routes/api/agent.routes.js +27 -24
- package/dist/esm/routes/api/intent.routes.js +27 -24
- package/dist/esm/routes/api/model.routes.js +27 -24
- package/dist/esm/routes/api/threads.routes.js +27 -24
- package/dist/esm/routes/api/workflow.routes.js +27 -24
- package/dist/esm/routes/api.routes.js +32 -29
- package/dist/esm/routes/index.js +38 -35
- package/dist/esm/routes/intent.routes.js +27 -24
- package/dist/esm/routes/query.routes.js +27 -24
- package/dist/esm/services/a2a.service.js +2 -2
- package/dist/esm/services/index.js +16 -13
- package/dist/esm/services/intents/aggregate.service.d.ts +9 -14
- package/dist/esm/services/intents/aggregate.service.js +2 -3
- package/dist/esm/services/intents/fulfill.service.d.ts +5 -4
- package/dist/esm/services/intents/fulfill.service.js +7 -6
- package/dist/esm/services/intents/multi-trigger.service.d.ts +3 -3
- package/dist/esm/services/intents/multi-trigger.service.js +3 -2
- package/dist/esm/services/intents/single-trigger.service.d.ts +3 -3
- package/dist/esm/services/intents/single-trigger.service.js +3 -2
- package/dist/esm/services/intents/trigger.service.d.ts +3 -3
- package/dist/esm/services/intents/trigger.service.js +6 -4
- package/dist/esm/services/prompts/aggregate.d.ts +7 -0
- package/dist/esm/services/prompts/aggregate.js +7 -0
- package/dist/esm/services/prompts/fulfill.d.ts +7 -0
- package/dist/esm/services/prompts/fulfill.js +7 -0
- package/dist/esm/services/prompts/generate-title.d.ts +7 -0
- package/dist/esm/services/prompts/generate-title.js +7 -0
- package/dist/esm/services/prompts/multi-trigger.d.ts +7 -0
- package/dist/esm/services/prompts/multi-trigger.js +7 -0
- package/dist/esm/services/prompts/multi-trigger.js.map +1 -0
- package/dist/esm/services/prompts/single-trigger.d.ts +7 -0
- package/dist/esm/services/prompts/single-trigger.js +7 -0
- package/dist/esm/services/prompts/single-trigger.js.map +1 -0
- package/dist/esm/services/prompts/tool-select.d.ts +7 -0
- package/dist/esm/services/prompts/tool-select.js +7 -0
- package/dist/esm/services/prompts/tool-select.js.map +1 -0
- package/dist/esm/services/query.service.d.ts +1 -0
- package/dist/esm/services/query.service.js +4 -4
- package/dist/esm/types/memory.d.ts +11 -1
- package/dist/esm/types/memory.js +1 -1
- package/dist/esm/utils/logger.d.ts +2 -1
- package/dist/esm/utils/logger.js +3 -1
- package/package.json +1 -1
- package/dist/esm/chunk-5IIF5O4A.js.map +0 -1
- package/dist/esm/chunk-7BH6AYP7.js.map +0 -1
- package/dist/esm/chunk-CC6DWPHZ.js.map +0 -1
- package/dist/esm/chunk-D6STNZ2L.js.map +0 -1
- package/dist/esm/chunk-FISBL7OM.js.map +0 -1
- package/dist/esm/chunk-FRQSMPPK.js.map +0 -1
- package/dist/esm/chunk-JXGQVFCO.js.map +0 -1
- package/dist/esm/chunk-MC5KX7MQ.js.map +0 -1
- package/dist/esm/chunk-O3MPFL5J.js +0 -47
- package/dist/esm/chunk-O3MPFL5J.js.map +0 -1
- package/dist/esm/chunk-PVWOU6LA.js.map +0 -1
- package/dist/esm/chunk-QQZ5ANSD.js.map +0 -1
- package/dist/esm/chunk-VUMI4XOY.js.map +0 -1
- package/dist/esm/chunk-YUFYGSSY.js.map +0 -1
- package/dist/esm/chunk-ZNZZZ4NN.js.map +0 -1
- package/dist/esm/services/utils/aggregate.common.d.ts +0 -10
- package/dist/esm/services/utils/aggregate.common.js +0 -9
- package/dist/esm/services/utils/fulfill.common.d.ts +0 -6
- package/dist/esm/services/utils/fulfill.common.js +0 -7
- package/dist/esm/services/utils/query.common.d.ts +0 -9
- package/dist/esm/services/utils/query.common.js +0 -8
- /package/dist/esm/{chunk-LC5XQGWK.js.map → chunk-BQO572DY.js.map} +0 -0
- /package/dist/esm/{chunk-RAHOYMKY.js.map → chunk-BYGS3GS6.js.map} +0 -0
- /package/dist/esm/{chunk-HNKYLU4R.js.map → chunk-GKG27ZGB.js.map} +0 -0
- /package/dist/esm/{chunk-A5CFFQUV.js.map → chunk-GT74YHJR.js.map} +0 -0
- /package/dist/esm/{chunk-RKLWSV24.js.map → chunk-IQ3BAWVV.js.map} +0 -0
- /package/dist/esm/{chunk-T3FCCMU6.js.map → chunk-M7YQE7I2.js.map} +0 -0
- /package/dist/esm/{chunk-VRFQFDSM.js.map → chunk-MJMNQNQL.js.map} +0 -0
- /package/dist/esm/{chunk-YMSNW2SU.js.map → chunk-MVVAEPGR.js.map} +0 -0
- /package/dist/esm/{chunk-MB7ZI64O.js.map → chunk-NHYC66BI.js.map} +0 -0
- /package/dist/esm/{chunk-MDQEA2US.js.map → chunk-OCULYA2R.js.map} +0 -0
- /package/dist/esm/{chunk-ZTYRQOCO.js.map → chunk-OV5MNKPH.js.map} +0 -0
- /package/dist/esm/{chunk-S46LW2P7.js.map → chunk-RDXHEDJT.js.map} +0 -0
- /package/dist/esm/{chunk-SUBXSJXS.js.map → chunk-TIIWZOBY.js.map} +0 -0
- /package/dist/esm/{chunk-ZJVWC666.js.map → chunk-WMHUZEL2.js.map} +0 -0
- /package/dist/esm/{chunk-HZC52S2R.js.map → chunk-XSDHB2WQ.js.map} +0 -0
- /package/dist/esm/services/{utils/aggregate.common.js.map → prompts/aggregate.js.map} +0 -0
- /package/dist/esm/services/{utils/fulfill.common.js.map → prompts/fulfill.js.map} +0 -0
- /package/dist/esm/services/{utils/query.common.js.map → prompts/generate-title.js.map} +0 -0
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkEQWAVDJYcjs = require('./chunk-EQWAVDJY.cjs');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
var _chunkO5X5QT63cjs = require('./chunk-O5X5QT63.cjs');
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
var _chunk2CQQ34EDcjs = require('./chunk-2CQQ34ED.cjs');
|
|
11
|
+
|
|
12
|
+
// src/services/intents/aggregate.service.ts
|
|
13
|
+
var AggregateService = class {
|
|
14
|
+
|
|
15
|
+
constructor(modelModule) {
|
|
16
|
+
this.modelModule = modelModule;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Generates a unified response combining all results (always aggregates).
|
|
20
|
+
* Use this when needsAggregation is already determined to be true.
|
|
21
|
+
*
|
|
22
|
+
* @param originalQuery - The user's original query
|
|
23
|
+
* @param results - Array of fulfillment results from each intent
|
|
24
|
+
* @returns AsyncGenerator yielding StreamEvent objects
|
|
25
|
+
*/
|
|
26
|
+
async *aggregate(originalQuery, results) {
|
|
27
|
+
if (results.length <= 1) {
|
|
28
|
+
const response = _nullishCoalesce(_optionalChain([results, 'access', _ => _[0], 'optionalAccess', _2 => _2.response]), () => ( ""));
|
|
29
|
+
if (response) {
|
|
30
|
+
yield {
|
|
31
|
+
event: "text_chunk",
|
|
32
|
+
data: { delta: response }
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
yield {
|
|
38
|
+
event: "thinking_process",
|
|
39
|
+
data: {
|
|
40
|
+
title: `[${_chunkO5X5QT63cjs.getManifest.call(void 0, ).name}] \uC751\uB2F5 \uD1B5\uD569 \uC911`,
|
|
41
|
+
description: "\uC5EC\uB7EC \uC791\uC5C5 \uACB0\uACFC\uB97C \uD558\uB098\uC758 \uC751\uB2F5\uC73C\uB85C \uD1B5\uD569\uD569\uB2C8\uB2E4."
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
yield* this.generateAggregatedResponse(originalQuery, results);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Analyzes fulfillment results and either returns the last response as-is
|
|
48
|
+
* or generates a unified response combining all results.
|
|
49
|
+
*
|
|
50
|
+
* @deprecated Use aggregate() instead when needsAggregation is determined at trigger time
|
|
51
|
+
* @param originalQuery - The user's original query
|
|
52
|
+
* @param results - Array of fulfillment results from each intent
|
|
53
|
+
* @returns AsyncGenerator yielding StreamEvent objects
|
|
54
|
+
*/
|
|
55
|
+
async *aggregateIfNeeded(originalQuery, results) {
|
|
56
|
+
if (results.length <= 1) {
|
|
57
|
+
const response = _nullishCoalesce(_optionalChain([results, 'access', _3 => _3[0], 'optionalAccess', _4 => _4.response]), () => ( ""));
|
|
58
|
+
if (response) {
|
|
59
|
+
yield {
|
|
60
|
+
event: "text_chunk",
|
|
61
|
+
data: { delta: response }
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
const decision = await this.shouldAggregate(originalQuery, results);
|
|
67
|
+
_chunk2CQQ34EDcjs.loggers.intent.info("Aggregate decision", {
|
|
68
|
+
needsAggregation: decision.needsAggregation,
|
|
69
|
+
reason: decision.reason
|
|
70
|
+
});
|
|
71
|
+
if (!decision.needsAggregation) {
|
|
72
|
+
yield {
|
|
73
|
+
event: "text_chunk",
|
|
74
|
+
data: { delta: results[results.length - 1].response }
|
|
75
|
+
};
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
yield {
|
|
79
|
+
event: "thinking_process",
|
|
80
|
+
data: {
|
|
81
|
+
title: `[${_chunkO5X5QT63cjs.getManifest.call(void 0, ).name}] \uC751\uB2F5 \uD1B5\uD569 \uC911`,
|
|
82
|
+
description: decision.reason || "\uC5EC\uB7EC \uC791\uC5C5 \uACB0\uACFC\uB97C \uD558\uB098\uC758 \uC751\uB2F5\uC73C\uB85C \uD1B5\uD569\uD569\uB2C8\uB2E4."
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
yield* this.generateAggregatedResponse(originalQuery, results);
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Asks LLM to decide whether the results need to be aggregated.
|
|
89
|
+
*/
|
|
90
|
+
async shouldAggregate(originalQuery, results) {
|
|
91
|
+
const modelInstance = this.modelModule.getModel();
|
|
92
|
+
const modelOptions = this.modelModule.getModelOptions();
|
|
93
|
+
const prompt = this.buildDecisionPrompt(originalQuery, results);
|
|
94
|
+
const emptyThread = {
|
|
95
|
+
messages: [],
|
|
96
|
+
userId: "",
|
|
97
|
+
threadId: "",
|
|
98
|
+
type: "CHAT",
|
|
99
|
+
title: ""
|
|
100
|
+
};
|
|
101
|
+
const messages = modelInstance.generateMessages({
|
|
102
|
+
query: prompt,
|
|
103
|
+
thread: emptyThread,
|
|
104
|
+
systemPrompt: _chunkEQWAVDJYcjs.AGGREGATE_DECISION_SYSTEM_PROMPT
|
|
105
|
+
});
|
|
106
|
+
try {
|
|
107
|
+
const response = await modelInstance.fetchWithContextMessage(
|
|
108
|
+
messages,
|
|
109
|
+
[],
|
|
110
|
+
modelOptions
|
|
111
|
+
);
|
|
112
|
+
const responseText = _nullishCoalesce(response.content, () => ( ""));
|
|
113
|
+
let jsonStr = responseText;
|
|
114
|
+
const jsonMatch = responseText.match(/```(?:json)?\s*([\s\S]*?)```/);
|
|
115
|
+
if (jsonMatch) {
|
|
116
|
+
jsonStr = jsonMatch[1].trim();
|
|
117
|
+
}
|
|
118
|
+
const parsed = JSON.parse(jsonStr);
|
|
119
|
+
return {
|
|
120
|
+
needsAggregation: _nullishCoalesce(parsed.needsAggregation, () => ( true)),
|
|
121
|
+
reason: _nullishCoalesce(parsed.reason, () => ( ""))
|
|
122
|
+
};
|
|
123
|
+
} catch (error) {
|
|
124
|
+
_chunk2CQQ34EDcjs.loggers.intent.warn(
|
|
125
|
+
"Failed to parse aggregate decision, defaulting to aggregate",
|
|
126
|
+
{
|
|
127
|
+
error
|
|
128
|
+
}
|
|
129
|
+
);
|
|
130
|
+
return { needsAggregation: true, reason: "Failed to parse decision" };
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Generates a unified response by streaming from the model.
|
|
135
|
+
*/
|
|
136
|
+
async *generateAggregatedResponse(originalQuery, results) {
|
|
137
|
+
const modelInstance = this.modelModule.getModel();
|
|
138
|
+
const modelOptions = this.modelModule.getModelOptions();
|
|
139
|
+
const prompt = this.buildAggregatePrompt(originalQuery, results);
|
|
140
|
+
const emptyThread = {
|
|
141
|
+
messages: [],
|
|
142
|
+
userId: "",
|
|
143
|
+
threadId: "",
|
|
144
|
+
type: "CHAT",
|
|
145
|
+
title: ""
|
|
146
|
+
};
|
|
147
|
+
const messages = modelInstance.generateMessages({
|
|
148
|
+
query: prompt,
|
|
149
|
+
thread: emptyThread,
|
|
150
|
+
systemPrompt: _chunkEQWAVDJYcjs.AGGREGATE_GENERATION_SYSTEM_PROMPT
|
|
151
|
+
});
|
|
152
|
+
const stream = await modelInstance.fetchStreamWithContextMessage(
|
|
153
|
+
messages,
|
|
154
|
+
[],
|
|
155
|
+
modelOptions
|
|
156
|
+
);
|
|
157
|
+
for await (const chunk of stream) {
|
|
158
|
+
if (_optionalChain([chunk, 'access', _5 => _5.delta, 'optionalAccess', _6 => _6.content])) {
|
|
159
|
+
yield {
|
|
160
|
+
event: "text_chunk",
|
|
161
|
+
data: { delta: chunk.delta.content }
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Builds the prompt for the aggregation decision.
|
|
168
|
+
*/
|
|
169
|
+
buildDecisionPrompt(originalQuery, results) {
|
|
170
|
+
const resultsText = results.map(
|
|
171
|
+
(r, i) => `[Task ${i + 1}] ${r.subquery}
|
|
172
|
+
[Response ${i + 1}] ${r.response}`
|
|
173
|
+
).join("\n\n---\n\n");
|
|
174
|
+
return `Original Query: ${originalQuery}
|
|
175
|
+
|
|
176
|
+
Results:
|
|
177
|
+
${resultsText}`;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Builds the prompt for generating an aggregated response.
|
|
181
|
+
*/
|
|
182
|
+
buildAggregatePrompt(originalQuery, results) {
|
|
183
|
+
const resultsText = results.map(
|
|
184
|
+
(r, i) => `[Task ${i + 1}] ${r.subquery}
|
|
185
|
+
[Response ${i + 1}] ${r.response}`
|
|
186
|
+
).join("\n\n---\n\n");
|
|
187
|
+
return `Original Query: ${originalQuery}
|
|
188
|
+
|
|
189
|
+
All task results:
|
|
190
|
+
${resultsText}
|
|
191
|
+
|
|
192
|
+
Please provide a unified response that addresses the original query.`;
|
|
193
|
+
}
|
|
194
|
+
};
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
exports.AggregateService = AggregateService;
|
|
199
|
+
//# sourceMappingURL=chunk-Y524IIF6.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-Y524IIF6.cjs","../../src/services/intents/aggregate.service.ts"],"names":[],"mappings":"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","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-Y524IIF6.cjs","sourcesContent":[null,"import { getManifest } from \"@/config/manifest\";\nimport type { ModelModule } from \"@/modules\";\nimport type { FulfillmentResult, ThreadType } from \"@/types/memory\";\nimport type { StreamEvent } from \"@/types/stream\";\nimport { loggers } from \"@/utils/logger\";\nimport {\n\tAGGREGATE_DECISION_SYSTEM_PROMPT,\n\tAGGREGATE_GENERATION_SYSTEM_PROMPT,\n} from \"../utils/aggregate.common\";\n\ninterface AggregateDecision {\n\tneedsAggregation: boolean;\n\treason: string;\n}\n\n/**\n * Service for determining whether multiple fulfillment results need to be\n * aggregated into a unified response, and generating that response if needed.\n */\nexport class AggregateService {\n\tprivate modelModule: ModelModule;\n\n\tconstructor(modelModule: ModelModule) {\n\t\tthis.modelModule = modelModule;\n\t}\n\n\t/**\n\t * Generates a unified response combining all results (always aggregates).\n\t * Use this when needsAggregation is already determined to be true.\n\t *\n\t * @param originalQuery - The user's original query\n\t * @param results - Array of fulfillment results from each intent\n\t * @returns AsyncGenerator yielding StreamEvent objects\n\t */\n\tpublic async *aggregate(\n\t\toriginalQuery: string,\n\t\tresults: FulfillmentResult[],\n\t): AsyncGenerator<StreamEvent> {\n\t\t// Single result doesn't need aggregation\n\t\tif (results.length <= 1) {\n\t\t\tconst response = results[0]?.response ?? \"\";\n\t\t\tif (response) {\n\t\t\t\tyield {\n\t\t\t\t\tevent: \"text_chunk\",\n\t\t\t\t\tdata: { delta: response },\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\n\t\t// Emit thinking_process event for aggregate step\n\t\tyield {\n\t\t\tevent: \"thinking_process\",\n\t\t\tdata: {\n\t\t\t\ttitle: `[${getManifest().name}] 응답 통합 중`,\n\t\t\t\tdescription: \"여러 작업 결과를 하나의 응답으로 통합합니다.\",\n\t\t\t},\n\t\t};\n\n\t\t// Generate unified response (streaming)\n\t\tyield* this.generateAggregatedResponse(originalQuery, results);\n\t}\n\n\t/**\n\t * Analyzes fulfillment results and either returns the last response as-is\n\t * or generates a unified response combining all results.\n\t *\n\t * @deprecated Use aggregate() instead when needsAggregation is determined at trigger time\n\t * @param originalQuery - The user's original query\n\t * @param results - Array of fulfillment results from each intent\n\t * @returns AsyncGenerator yielding StreamEvent objects\n\t */\n\tpublic async *aggregateIfNeeded(\n\t\toriginalQuery: string,\n\t\tresults: FulfillmentResult[],\n\t): AsyncGenerator<StreamEvent> {\n\t\t// Single result doesn't need aggregation\n\t\tif (results.length <= 1) {\n\t\t\tconst response = results[0]?.response ?? \"\";\n\t\t\tif (response) {\n\t\t\t\tyield {\n\t\t\t\t\tevent: \"text_chunk\",\n\t\t\t\t\tdata: { delta: response },\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\n\t\t// Ask LLM whether aggregation is needed\n\t\tconst decision = await this.shouldAggregate(originalQuery, results);\n\n\t\tloggers.intent.info(\"Aggregate decision\", {\n\t\t\tneedsAggregation: decision.needsAggregation,\n\t\t\treason: decision.reason,\n\t\t});\n\n\t\tif (!decision.needsAggregation) {\n\t\t\t// Last response already contains aggregated content\n\t\t\tyield {\n\t\t\t\tevent: \"text_chunk\",\n\t\t\t\tdata: { delta: results[results.length - 1].response },\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\n\t\t// Emit thinking_process event for aggregate step\n\t\tyield {\n\t\t\tevent: \"thinking_process\",\n\t\t\tdata: {\n\t\t\t\ttitle: `[${getManifest().name}] 응답 통합 중`,\n\t\t\t\tdescription:\n\t\t\t\t\tdecision.reason || \"여러 작업 결과를 하나의 응답으로 통합합니다.\",\n\t\t\t},\n\t\t};\n\n\t\t// Generate unified response (streaming)\n\t\tyield* this.generateAggregatedResponse(originalQuery, results);\n\t}\n\n\t/**\n\t * Asks LLM to decide whether the results need to be aggregated.\n\t */\n\tprivate async shouldAggregate(\n\t\toriginalQuery: string,\n\t\tresults: FulfillmentResult[],\n\t): Promise<AggregateDecision> {\n\t\tconst modelInstance = this.modelModule.getModel();\n\t\tconst modelOptions = this.modelModule.getModelOptions();\n\n\t\tconst prompt = this.buildDecisionPrompt(originalQuery, results);\n\n\t\tconst emptyThread = {\n\t\t\tmessages: [],\n\t\t\tuserId: \"\",\n\t\t\tthreadId: \"\",\n\t\t\ttype: \"CHAT\" as ThreadType,\n\t\t\ttitle: \"\",\n\t\t};\n\n\t\tconst messages = modelInstance.generateMessages({\n\t\t\tquery: prompt,\n\t\t\tthread: emptyThread,\n\t\t\tsystemPrompt: AGGREGATE_DECISION_SYSTEM_PROMPT,\n\t\t});\n\n\t\ttry {\n\t\t\tconst response = await modelInstance.fetchWithContextMessage(\n\t\t\t\tmessages,\n\t\t\t\t[],\n\t\t\t\tmodelOptions,\n\t\t\t);\n\n\t\t\t// Extract JSON from response (handle markdown code blocks)\n\t\t\tconst responseText = response.content ?? \"\";\n\t\t\tlet jsonStr = responseText;\n\t\t\tconst jsonMatch = responseText.match(/```(?:json)?\\s*([\\s\\S]*?)```/);\n\t\t\tif (jsonMatch) {\n\t\t\t\tjsonStr = jsonMatch[1].trim();\n\t\t\t}\n\n\t\t\tconst parsed = JSON.parse(jsonStr);\n\t\t\treturn {\n\t\t\t\tneedsAggregation: parsed.needsAggregation ?? true,\n\t\t\t\treason: parsed.reason ?? \"\",\n\t\t\t};\n\t\t} catch (error) {\n\t\t\tloggers.intent.warn(\n\t\t\t\t\"Failed to parse aggregate decision, defaulting to aggregate\",\n\t\t\t\t{\n\t\t\t\t\terror,\n\t\t\t\t},\n\t\t\t);\n\t\t\t// Default to aggregating if parsing fails\n\t\t\treturn { needsAggregation: true, reason: \"Failed to parse decision\" };\n\t\t}\n\t}\n\n\t/**\n\t * Generates a unified response by streaming from the model.\n\t */\n\tprivate async *generateAggregatedResponse(\n\t\toriginalQuery: string,\n\t\tresults: FulfillmentResult[],\n\t): AsyncGenerator<StreamEvent> {\n\t\tconst modelInstance = this.modelModule.getModel();\n\t\tconst modelOptions = this.modelModule.getModelOptions();\n\n\t\tconst prompt = this.buildAggregatePrompt(originalQuery, results);\n\n\t\tconst emptyThread = {\n\t\t\tmessages: [],\n\t\t\tuserId: \"\",\n\t\t\tthreadId: \"\",\n\t\t\ttype: \"CHAT\" as ThreadType,\n\t\t\ttitle: \"\",\n\t\t};\n\n\t\tconst messages = modelInstance.generateMessages({\n\t\t\tquery: prompt,\n\t\t\tthread: emptyThread,\n\t\t\tsystemPrompt: AGGREGATE_GENERATION_SYSTEM_PROMPT,\n\t\t});\n\n\t\tconst stream = await modelInstance.fetchStreamWithContextMessage(\n\t\t\tmessages,\n\t\t\t[],\n\t\t\tmodelOptions,\n\t\t);\n\n\t\tfor await (const chunk of stream) {\n\t\t\tif (chunk.delta?.content) {\n\t\t\t\tyield {\n\t\t\t\t\tevent: \"text_chunk\",\n\t\t\t\t\tdata: { delta: chunk.delta.content },\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Builds the prompt for the aggregation decision.\n\t */\n\tprivate buildDecisionPrompt(\n\t\toriginalQuery: string,\n\t\tresults: FulfillmentResult[],\n\t): string {\n\t\tconst resultsText = results\n\t\t\t.map(\n\t\t\t\t(r, i) =>\n\t\t\t\t\t`[Task ${i + 1}] ${r.subquery}\\n[Response ${i + 1}] ${r.response}`,\n\t\t\t)\n\t\t\t.join(\"\\n\\n---\\n\\n\");\n\n\t\treturn `Original Query: ${originalQuery}\n\nResults:\n${resultsText}`;\n\t}\n\n\t/**\n\t * Builds the prompt for generating an aggregated response.\n\t */\n\tprivate buildAggregatePrompt(\n\t\toriginalQuery: string,\n\t\tresults: FulfillmentResult[],\n\t): string {\n\t\tconst resultsText = results\n\t\t\t.map(\n\t\t\t\t(r, i) =>\n\t\t\t\t\t`[Task ${i + 1}] ${r.subquery}\\n[Response ${i + 1}] ${r.response}`,\n\t\t\t)\n\t\t\t.join(\"\\n\\n---\\n\\n\");\n\n\t\treturn `Original Query: ${originalQuery}\n\nAll task results:\n${resultsText}\n\nPlease provide a unified response that addresses the original query.`;\n\t}\n}\n"]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
var _chunkLUNBSV2Icjs = require('./chunk-LUNBSV2I.cjs');
|
|
4
|
+
|
|
5
|
+
// src/routes/api/model.routes.ts
|
|
6
|
+
var _express = require('express');
|
|
7
|
+
var createModelApiRouter = () => {
|
|
8
|
+
const router = _express.Router.call(void 0, );
|
|
9
|
+
const modelApiController = _chunkLUNBSV2Icjs.container.getModelApiController();
|
|
10
|
+
router.get("/", modelApiController.handleModelList);
|
|
11
|
+
return router;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
exports.createModelApiRouter = createModelApiRouter;
|
|
17
|
+
//# sourceMappingURL=chunk-YEEYYIBK.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-YEEYYIBK.cjs","../../src/routes/api/model.routes.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACJA,kCAAuB;AAGhB,IAAM,qBAAA,EAAuB,CAAA,EAAA,GAAc;AACjD,EAAA,MAAM,OAAA,EAAS,6BAAA,CAAO;AACtB,EAAA,MAAM,mBAAA,EAAqB,2BAAA,CAAU,qBAAA,CAAsB,CAAA;AAG3D,EAAA,MAAA,CAAO,GAAA,CAAI,GAAA,EAAK,kBAAA,CAAmB,eAAe,CAAA;AAElD,EAAA,OAAO,MAAA;AACR,CAAA;ADCA;AACA;AACE;AACF,oDAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-YEEYYIBK.cjs","sourcesContent":[null,"import { Router } from \"express\";\nimport { container } from \"@/container\";\n\nexport const createModelApiRouter = (): Router => {\n\tconst router = Router();\n\tconst modelApiController = container.getModelApiController();\n\n\t// APIs (prefix: /api/model)\n\trouter.get(\"/\", modelApiController.handleModelList);\n\n\treturn router;\n};\n"]}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
var _chunkWY7CK7W5cjs = require('./chunk-WY7CK7W5.cjs');
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
var _chunkOERUQFT7cjs = require('./chunk-OERUQFT7.cjs');
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
var _chunk4VIZ52C2cjs = require('./chunk-4VIZ52C2.cjs');
|
|
10
|
+
|
|
11
|
+
// src/routes/api/threads.routes.ts
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
var _express = require('express');
|
|
15
|
+
var _httpstatuscodes = require('http-status-codes');
|
|
16
|
+
var createThreadApiRouter = () => {
|
|
17
|
+
const router = _express.Router.call(void 0, );
|
|
18
|
+
const threadApiController = _chunkWY7CK7W5cjs.container.getThreadApiController();
|
|
19
|
+
const checkThreadMemory = (_req, _res, next) => {
|
|
20
|
+
const memoryModule = _chunk4VIZ52C2cjs.getMemoryModule.call(void 0, );
|
|
21
|
+
const threadMemory = memoryModule.getThreadMemory();
|
|
22
|
+
if (!threadMemory) {
|
|
23
|
+
const error = new (0, _chunkOERUQFT7cjs.AinHttpError)(
|
|
24
|
+
_httpstatuscodes.StatusCodes.SERVICE_UNAVAILABLE,
|
|
25
|
+
"Memory module is not initialized"
|
|
26
|
+
);
|
|
27
|
+
throw error;
|
|
28
|
+
}
|
|
29
|
+
next();
|
|
30
|
+
};
|
|
31
|
+
router.get("/", checkThreadMemory, threadApiController.handleGetUserThreads);
|
|
32
|
+
router.get("/:id", checkThreadMemory, threadApiController.handleGetThread);
|
|
33
|
+
router.post(
|
|
34
|
+
"/delete/:id",
|
|
35
|
+
checkThreadMemory,
|
|
36
|
+
threadApiController.handleDeleteThread
|
|
37
|
+
);
|
|
38
|
+
return router;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
exports.createThreadApiRouter = createThreadApiRouter;
|
|
44
|
+
//# sourceMappingURL=chunk-YM24CPSE.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-YM24CPSE.cjs","../../src/routes/api/threads.routes.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACVA;AAIC;AAAA,kCACM;AACP,oDAA4B;AAKrB,IAAM,sBAAA,EAAwB,CAAA,EAAA,GAAc;AAClD,EAAA,MAAM,OAAA,EAAS,6BAAA,CAAO;AACtB,EAAA,MAAM,oBAAA,EAAsB,2BAAA,CAAU,sBAAA,CAAuB,CAAA;AAE7D,EAAA,MAAM,kBAAA,EAAoB,CACzB,IAAA,EACA,IAAA,EACA,IAAA,EAAA,GACI;AACJ,IAAA,MAAM,aAAA,EAAe,+CAAA,CAAgB;AACrC,IAAA,MAAM,aAAA,EAAe,YAAA,CAAa,eAAA,CAAgB,CAAA;AAClD,IAAA,GAAA,CAAI,CAAC,YAAA,EAAc;AAClB,MAAA,MAAM,MAAA,EAAQ,IAAI,mCAAA;AAAA,QACjB,4BAAA,CAAY,mBAAA;AAAA,QACZ;AAAA,MACD,CAAA;AACA,MAAA,MAAM,KAAA;AAAA,IACP;AACA,IAAA,IAAA,CAAK,CAAA;AAAA,EACN,CAAA;AAGA,EAAA,MAAA,CAAO,GAAA,CAAI,GAAA,EAAK,iBAAA,EAAmB,mBAAA,CAAoB,oBAAoB,CAAA;AAC3E,EAAA,MAAA,CAAO,GAAA,CAAI,MAAA,EAAQ,iBAAA,EAAmB,mBAAA,CAAoB,eAAe,CAAA;AACzE,EAAA,MAAA,CAAO,IAAA;AAAA,IACN,aAAA;AAAA,IACA,iBAAA;AAAA,IACA,mBAAA,CAAoB;AAAA,EACrB,CAAA;AAEA,EAAA,OAAO,MAAA;AACR,CAAA;ADHA;AACA;AACE;AACF,sDAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-YM24CPSE.cjs","sourcesContent":[null,"import {\n\ttype NextFunction,\n\ttype Request,\n\ttype Response,\n\tRouter,\n} from \"express\";\nimport { StatusCodes } from \"http-status-codes\";\nimport { getMemoryModule } from \"@/config/modules\";\nimport { container } from \"@/container\";\nimport { AinHttpError } from \"@/types/agent\";\n\nexport const createThreadApiRouter = (): Router => {\n\tconst router = Router();\n\tconst threadApiController = container.getThreadApiController();\n\n\tconst checkThreadMemory = (\n\t\t_req: Request,\n\t\t_res: Response,\n\t\tnext: NextFunction,\n\t) => {\n\t\tconst memoryModule = getMemoryModule();\n\t\tconst threadMemory = memoryModule.getThreadMemory();\n\t\tif (!threadMemory) {\n\t\t\tconst error = new AinHttpError(\n\t\t\t\tStatusCodes.SERVICE_UNAVAILABLE,\n\t\t\t\t\"Memory module is not initialized\",\n\t\t\t);\n\t\t\tthrow error;\n\t\t}\n\t\tnext();\n\t};\n\n\t// APIs (prefix: /api/threads)\n\trouter.get(\"/\", checkThreadMemory, threadApiController.handleGetUserThreads);\n\trouter.get(\"/:id\", checkThreadMemory, threadApiController.handleGetThread);\n\trouter.post(\n\t\t\"/delete/:id\",\n\t\tcheckThreadMemory,\n\t\tthreadApiController.handleDeleteThread,\n\t);\n\n\treturn router;\n};\n"]}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } async function _asyncNullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return await rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
|
+
|
|
3
|
+
var _chunk2CQQ34EDcjs = require('./chunk-2CQQ34ED.cjs');
|
|
4
|
+
|
|
5
|
+
// src/services/intents/multi-trigger.service.ts
|
|
6
|
+
var MultiIntentTriggerService = class {
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
constructor(modelModule, memoryModule) {
|
|
10
|
+
this.modelModule = modelModule;
|
|
11
|
+
this.memoryModule = memoryModule;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Detects multiple intents from context by decomposing queries into subqueries.
|
|
15
|
+
*
|
|
16
|
+
* @param query - The user's input query
|
|
17
|
+
* @param thread - The thread history
|
|
18
|
+
* @returns IntentTriggerResult containing intents and aggregation flag
|
|
19
|
+
*/
|
|
20
|
+
async intentTriggering(query, thread) {
|
|
21
|
+
const modelInstance = this.modelModule.getModel();
|
|
22
|
+
const modelOptions = this.modelModule.getModelOptions();
|
|
23
|
+
const intentMemory = this.memoryModule.getIntentMemory();
|
|
24
|
+
if (!intentMemory) {
|
|
25
|
+
return { intents: [{ subquery: query }], needsAggregation: false };
|
|
26
|
+
}
|
|
27
|
+
const agentMemory = this.memoryModule.getAgentMemory();
|
|
28
|
+
const additionalTriggerPrompt = await _asyncNullishCoalesce(await _optionalChain([agentMemory, 'optionalAccess', _ => _.getAdditionalTriggerPrompt, 'optionalCall', _2 => _2()]), async () => ( ""));
|
|
29
|
+
const intents = await intentMemory.listIntents();
|
|
30
|
+
if (intents.length === 0) {
|
|
31
|
+
_chunk2CQQ34EDcjs.loggers.intentStream.warn("No intent found");
|
|
32
|
+
return { intents: [{ subquery: query }], needsAggregation: false };
|
|
33
|
+
}
|
|
34
|
+
const intentList = intents.map((intent) => `- ${intent.name}: ${intent.description}`).join("\n");
|
|
35
|
+
const threadMessages = !thread ? "" : thread.messages.sort((a, b) => a.timestamp - b.timestamp).map((message) => {
|
|
36
|
+
const role = message.role === "USER" ? "User" : message.role === "MODEL" ? "Assistant" : "System";
|
|
37
|
+
const content = Array.isArray(message.content.parts) ? message.content.parts.join(" ") : String(message.content.parts);
|
|
38
|
+
return `${role}: """${content}"""`;
|
|
39
|
+
}).join("\n");
|
|
40
|
+
const systemPrompt = `
|
|
41
|
+
Today is ${(/* @__PURE__ */ new Date()).toLocaleDateString()}.
|
|
42
|
+
You are an expert in accurately identifying user intentions.
|
|
43
|
+
${additionalTriggerPrompt ? `
|
|
44
|
+
Additional Guidelines:
|
|
45
|
+
${additionalTriggerPrompt}
|
|
46
|
+
` : ""}
|
|
47
|
+
Available intent list:
|
|
48
|
+
${intentList}
|
|
49
|
+
|
|
50
|
+
Please select and answer only from the above intent list.`;
|
|
51
|
+
const userMessage = `
|
|
52
|
+
${threadMessages !== "" ? `The following is the conversation history with the user: ${threadMessages}
|
|
53
|
+
|
|
54
|
+
` : ""}
|
|
55
|
+
Last user question: "${query}"
|
|
56
|
+
|
|
57
|
+
Based on the above conversation history, analyze the last user question and identify all relevant intents.
|
|
58
|
+
|
|
59
|
+
Instructions:
|
|
60
|
+
1. **First, review the available intent list** to understand what intents are available and what each intent can handle
|
|
61
|
+
2. **Identify which intents from the list are relevant** to the user's question
|
|
62
|
+
3. **Decompose the question based on intent boundaries**:
|
|
63
|
+
- Prioritize splitting the query where each subquery can map to an intent from the available list
|
|
64
|
+
- If a portion of the query matches an available intent, create a subquery for it and set the intentName
|
|
65
|
+
- If a portion of the query does NOT match any available intent, still create a subquery for it but leave intentName empty/null
|
|
66
|
+
- Each subquery should be the minimal unit that represents a coherent request or action
|
|
67
|
+
- If the query maps to a single intent (or single action), keep it as one subquery
|
|
68
|
+
4. For each subquery, provide a 2-3 sentence summary of what actions will be performed
|
|
69
|
+
5. Maintain the logical sequence of the original question when splitting into subqueries
|
|
70
|
+
6. **Important**: Use the intent list as a guide for decomposition, but don't force-fit queries into intents that don't match. It's acceptable to have subqueries without matching intents.
|
|
71
|
+
7. Determine if the final response needs aggregation:
|
|
72
|
+
- Set needsAggregation to TRUE if: multiple subqueries exist AND their results should be combined into a unified response
|
|
73
|
+
- Set needsAggregation to FALSE if: only one subquery exists, OR multiple subqueries are independent and can be answered separately without combining
|
|
74
|
+
|
|
75
|
+
Output Format:
|
|
76
|
+
You MUST return the output in the following JSON format. Do not include any other text before or after the JSON:
|
|
77
|
+
{
|
|
78
|
+
"needsAggregation": <true or false>,
|
|
79
|
+
"subqueries": [
|
|
80
|
+
{
|
|
81
|
+
"subquery": "<subquery_1>",
|
|
82
|
+
"intentName": "<intent_name_1>",
|
|
83
|
+
"actionPlan": "<2-3 sentence description of what will be done for this subquery>"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"subquery": "<subquery_2>",
|
|
87
|
+
"intentName": "<intent_name_2>",
|
|
88
|
+
"actionPlan": "<2-3 sentence description of what will be done for this subquery>"
|
|
89
|
+
}
|
|
90
|
+
]
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
Requirements:
|
|
94
|
+
- Prioritize using available intents when decomposing queries
|
|
95
|
+
- Use intent boundaries as the primary guide for splitting, but allow subqueries without matching intents when necessary
|
|
96
|
+
- Preserve the original meaning and context when splitting queries
|
|
97
|
+
- Set intentName only when there's a clear match with an available intent; leave it empty/null otherwise
|
|
98
|
+
- Even if the query is simple and maps to a single intent (or action), return it as a single-element array with one subquery object
|
|
99
|
+
- Set needsAggregation based on whether the user expects a unified combined answer or separate responses`;
|
|
100
|
+
const messages = modelInstance.generateMessages({
|
|
101
|
+
query: userMessage,
|
|
102
|
+
systemPrompt
|
|
103
|
+
});
|
|
104
|
+
const response = await modelInstance.fetch(messages, modelOptions);
|
|
105
|
+
if (!response.content) {
|
|
106
|
+
_chunk2CQQ34EDcjs.loggers.intent.warn("Cannot extract intent from query");
|
|
107
|
+
return { intents: [{ subquery: query }], needsAggregation: false };
|
|
108
|
+
}
|
|
109
|
+
let parsed;
|
|
110
|
+
try {
|
|
111
|
+
parsed = JSON.parse(response.content);
|
|
112
|
+
} catch (error) {
|
|
113
|
+
return { intents: [{ subquery: query }], needsAggregation: false };
|
|
114
|
+
}
|
|
115
|
+
const subqueries = _nullishCoalesce(parsed.subqueries, () => ( []));
|
|
116
|
+
const needsAggregation = _nullishCoalesce(parsed.needsAggregation, () => ( false));
|
|
117
|
+
const triggeredIntents = [];
|
|
118
|
+
for (const { subquery, intentName, actionPlan } of subqueries) {
|
|
119
|
+
if (!subquery) continue;
|
|
120
|
+
const item = { subquery, actionPlan };
|
|
121
|
+
if (intentName) {
|
|
122
|
+
item.intent = await intentMemory.getIntentByName(intentName);
|
|
123
|
+
}
|
|
124
|
+
triggeredIntents.push(item);
|
|
125
|
+
}
|
|
126
|
+
_chunk2CQQ34EDcjs.loggers.intent.info("Intent triggering result", {
|
|
127
|
+
intentCount: triggeredIntents.length,
|
|
128
|
+
needsAggregation
|
|
129
|
+
});
|
|
130
|
+
return { intents: triggeredIntents, needsAggregation };
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
exports.MultiIntentTriggerService = MultiIntentTriggerService;
|
|
137
|
+
//# sourceMappingURL=chunk-YMFMJL47.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-YMFMJL47.cjs","../../src/services/intents/multi-trigger.service.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACSO,IAAM,0BAAA,EAAN,MAAgC;AAAA,EAC9B;AAAA,EACA;AAAA,EAER,WAAA,CAAY,WAAA,EAA0B,YAAA,EAA4B;AACjE,IAAA,IAAA,CAAK,YAAA,EAAc,WAAA;AACnB,IAAA,IAAA,CAAK,aAAA,EAAe,YAAA;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAa,gBAAA,CACZ,KAAA,EACA,MAAA,EAC+B;AAC/B,IAAA,MAAM,cAAA,EAAgB,IAAA,CAAK,WAAA,CAAY,QAAA,CAAS,CAAA;AAChD,IAAA,MAAM,aAAA,EAAe,IAAA,CAAK,WAAA,CAAY,eAAA,CAAgB,CAAA;AACtD,IAAA,MAAM,aAAA,EAAe,IAAA,CAAK,YAAA,CAAa,eAAA,CAAgB,CAAA;AACvD,IAAA,GAAA,CAAI,CAAC,YAAA,EAAc;AAClB,MAAA,OAAO,EAAE,OAAA,EAAS,CAAC,EAAE,QAAA,EAAU,MAAM,CAAC,CAAA,EAAG,gBAAA,EAAkB,MAAM,CAAA;AAAA,IAClE;AAGA,IAAA,MAAM,YAAA,EAAc,IAAA,CAAK,YAAA,CAAa,cAAA,CAAe,CAAA;AACrD,IAAA,MAAM,wBAAA,8BACJ,sBAAM,WAAA,2BAAa,0BAAA,0BAAA,CAA6B,GAAA,gBAAM,IAAA;AAGxD,IAAA,MAAM,QAAA,EAAU,MAAM,YAAA,CAAa,WAAA,CAAY,CAAA;AAE/C,IAAA,GAAA,CAAI,OAAA,CAAQ,OAAA,IAAW,CAAA,EAAG;AACzB,MAAA,yBAAA,CAAQ,YAAA,CAAa,IAAA,CAAK,iBAAiB,CAAA;AAC3C,MAAA,OAAO,EAAE,OAAA,EAAS,CAAC,EAAE,QAAA,EAAU,MAAM,CAAC,CAAA,EAAG,gBAAA,EAAkB,MAAM,CAAA;AAAA,IAClE;AAEA,IAAA,MAAM,WAAA,EAAa,OAAA,CACjB,GAAA,CAAI,CAAC,MAAA,EAAA,GAAW,CAAA,EAAA,EAAK,MAAA,CAAO,IAAI,CAAA,EAAA,EAAK,MAAA,CAAO,WAAW,CAAA,CAAA;AAOxB,IAAA;AAMxB,MAAA;AAGoB,MAAA;AAEI,MAAA;AAEpB,IAAA;AAEQ,IAAA;AACmB,SAAA;AAAA;AAItC;AAAA;AAEqB;AAGzB;AAAA;AAEY;AAAA;AAAA,yDAAA;AAIU,IAAA;AAG0C;AAAc;AAI9E,CAAA;AAC4B,qBAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wGAAA;AA8CsB,IAAA;AACxC,MAAA;AACP,MAAA;AACA,IAAA;AAEgE,IAAA;AAC1C,IAAA;AACgC,MAAA;AACW,MAAA;AAClE,IAAA;AAEI,IAAA;AAQA,IAAA;AACiC,MAAA;AACZ,IAAA;AACyC,MAAA;AAClE,IAAA;AAEyC,IAAA;AACW,IAAA;AAEF,IAAA;AACa,IAAA;AAC/C,MAAA;AACqB,MAAA;AACpB,MAAA;AAC4C,QAAA;AAC5D,MAAA;AAC0B,MAAA;AAC3B,IAAA;AAEgD,IAAA;AACjB,MAAA;AAC9B,MAAA;AACA,IAAA;AAEoD,IAAA;AACtD,EAAA;AACD;AD3DuF;AACA;AACA;AACA","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-YMFMJL47.cjs","sourcesContent":[null,"import type { MemoryModule, ModelModule } from \"@/modules\";\nimport type {\n\tIntentTriggerResult,\n\tMessageObject,\n\tThreadObject,\n\tTriggeredIntent,\n} from \"@/types/memory\";\nimport { loggers } from \"@/utils/logger\";\n\n/**\n * Service for multi-intent triggering.\n * Decomposes queries into multiple subqueries and maps each to an intent.\n */\nexport class MultiIntentTriggerService {\n\tprivate modelModule: ModelModule;\n\tprivate memoryModule: MemoryModule;\n\n\tconstructor(modelModule: ModelModule, memoryModule: MemoryModule) {\n\t\tthis.modelModule = modelModule;\n\t\tthis.memoryModule = memoryModule;\n\t}\n\n\t/**\n\t * Detects multiple intents from context by decomposing queries into subqueries.\n\t *\n\t * @param query - The user's input query\n\t * @param thread - The thread history\n\t * @returns IntentTriggerResult containing intents and aggregation flag\n\t */\n\tpublic async intentTriggering(\n\t\tquery: string,\n\t\tthread: ThreadObject | undefined,\n\t): Promise<IntentTriggerResult> {\n\t\tconst modelInstance = this.modelModule.getModel();\n\t\tconst modelOptions = this.modelModule.getModelOptions();\n\t\tconst intentMemory = this.memoryModule.getIntentMemory();\n\t\tif (!intentMemory) {\n\t\t\treturn { intents: [{ subquery: query }], needsAggregation: false };\n\t\t}\n\n\t\t// Get agent memory for additional trigger prompt\n\t\tconst agentMemory = this.memoryModule.getAgentMemory();\n\t\tconst additionalTriggerPrompt =\n\t\t\t(await agentMemory?.getAdditionalTriggerPrompt?.()) ?? \"\";\n\n\t\t// 인텐트 목록 가져오기\n\t\tconst intents = await intentMemory.listIntents();\n\n\t\tif (intents.length === 0) {\n\t\t\tloggers.intentStream.warn(\"No intent found\");\n\t\t\treturn { intents: [{ subquery: query }], needsAggregation: false };\n\t\t}\n\n\t\tconst intentList = intents\n\t\t\t.map((intent) => `- ${intent.name}: ${intent.description}`)\n\t\t\t.join(\"\\n\");\n\n\t\t// Convert thread messages to a string\n\t\tconst threadMessages = !thread\n\t\t\t? \"\"\n\t\t\t: thread.messages\n\t\t\t\t\t.sort((a, b) => a.timestamp - b.timestamp)\n\t\t\t\t\t.map((message: MessageObject) => {\n\t\t\t\t\t\tconst role =\n\t\t\t\t\t\t\tmessage.role === \"USER\"\n\t\t\t\t\t\t\t\t? \"User\"\n\t\t\t\t\t\t\t\t: message.role === \"MODEL\"\n\t\t\t\t\t\t\t\t\t? \"Assistant\"\n\t\t\t\t\t\t\t\t\t: \"System\";\n\t\t\t\t\t\tconst content = Array.isArray(message.content.parts)\n\t\t\t\t\t\t\t? message.content.parts.join(\" \")\n\t\t\t\t\t\t\t: String(message.content.parts);\n\t\t\t\t\t\treturn `${role}: \"\"\"${content}\"\"\"`;\n\t\t\t\t\t})\n\t\t\t\t\t.join(\"\\n\");\n\n\t\tconst systemPrompt = `\nToday is ${new Date().toLocaleDateString()}.\nYou are an expert in accurately identifying user intentions.\n${\n\tadditionalTriggerPrompt\n\t\t? `\nAdditional Guidelines:\n${additionalTriggerPrompt}\n`\n\t\t: \"\"\n}\nAvailable intent list:\n${intentList}\n\nPlease select and answer only from the above intent list.`;\n\n\t\tconst userMessage = `\n${\n\tthreadMessages !== \"\"\n\t\t? `The following is the conversation history with the user: ${threadMessages}\n\n\t`\n\t\t: \"\"\n}\nLast user question: \"${query}\"\n\nBased on the above conversation history, analyze the last user question and identify all relevant intents.\n\nInstructions:\n1. **First, review the available intent list** to understand what intents are available and what each intent can handle\n2. **Identify which intents from the list are relevant** to the user's question\n3. **Decompose the question based on intent boundaries**:\n - Prioritize splitting the query where each subquery can map to an intent from the available list\n - If a portion of the query matches an available intent, create a subquery for it and set the intentName\n - If a portion of the query does NOT match any available intent, still create a subquery for it but leave intentName empty/null\n - Each subquery should be the minimal unit that represents a coherent request or action\n - If the query maps to a single intent (or single action), keep it as one subquery\n4. For each subquery, provide a 2-3 sentence summary of what actions will be performed\n5. Maintain the logical sequence of the original question when splitting into subqueries\n6. **Important**: Use the intent list as a guide for decomposition, but don't force-fit queries into intents that don't match. It's acceptable to have subqueries without matching intents.\n7. Determine if the final response needs aggregation:\n - Set needsAggregation to TRUE if: multiple subqueries exist AND their results should be combined into a unified response\n - Set needsAggregation to FALSE if: only one subquery exists, OR multiple subqueries are independent and can be answered separately without combining\n\nOutput Format:\nYou MUST return the output in the following JSON format. Do not include any other text before or after the JSON:\n{\n \"needsAggregation\": <true or false>,\n \"subqueries\": [\n {\n \"subquery\": \"<subquery_1>\",\n \"intentName\": \"<intent_name_1>\",\n \"actionPlan\": \"<2-3 sentence description of what will be done for this subquery>\"\n },\n {\n \"subquery\": \"<subquery_2>\",\n \"intentName\": \"<intent_name_2>\",\n \"actionPlan\": \"<2-3 sentence description of what will be done for this subquery>\"\n }\n ]\n}\n\nRequirements:\n- Prioritize using available intents when decomposing queries\n- Use intent boundaries as the primary guide for splitting, but allow subqueries without matching intents when necessary\n- Preserve the original meaning and context when splitting queries\n- Set intentName only when there's a clear match with an available intent; leave it empty/null otherwise\n- Even if the query is simple and maps to a single intent (or action), return it as a single-element array with one subquery object\n- Set needsAggregation based on whether the user expects a unified combined answer or separate responses`;\n\n\t\tconst messages = modelInstance.generateMessages({\n\t\t\tquery: userMessage,\n\t\t\tsystemPrompt,\n\t\t});\n\n\t\tconst response = await modelInstance.fetch(messages, modelOptions);\n\t\tif (!response.content) {\n\t\t\tloggers.intent.warn(\"Cannot extract intent from query\");\n\t\t\treturn { intents: [{ subquery: query }], needsAggregation: false };\n\t\t}\n\n\t\tlet parsed: {\n\t\t\tneedsAggregation?: boolean;\n\t\t\tsubqueries?: Array<{\n\t\t\t\tsubquery?: string;\n\t\t\t\tintentName?: string;\n\t\t\t\tactionPlan?: string;\n\t\t\t}>;\n\t\t};\n\t\ttry {\n\t\t\tparsed = JSON.parse(response.content);\n\t\t} catch (error: unknown) {\n\t\t\treturn { intents: [{ subquery: query }], needsAggregation: false };\n\t\t}\n\n\t\tconst subqueries = parsed.subqueries ?? [];\n\t\tconst needsAggregation = parsed.needsAggregation ?? false;\n\n\t\tconst triggeredIntents: Array<TriggeredIntent> = [];\n\t\tfor (const { subquery, intentName, actionPlan } of subqueries) {\n\t\t\tif (!subquery) continue;\n\t\t\tconst item = { subquery, actionPlan } as TriggeredIntent;\n\t\t\tif (intentName) {\n\t\t\t\titem.intent = await intentMemory.getIntentByName(intentName);\n\t\t\t}\n\t\t\ttriggeredIntents.push(item);\n\t\t}\n\n\t\tloggers.intent.info(\"Intent triggering result\", {\n\t\t\tintentCount: triggeredIntents.length,\n\t\t\tneedsAggregation,\n\t\t});\n\n\t\treturn { intents: triggeredIntents, needsAggregation };\n\t}\n}\n"]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
var _chunkTUCSLVSFcjs = require('./chunk-TUCSLVSF.cjs');
|
|
4
|
+
|
|
5
|
+
// src/routes/api/model.routes.ts
|
|
6
|
+
var _express = require('express');
|
|
7
|
+
var createModelApiRouter = () => {
|
|
8
|
+
const router = _express.Router.call(void 0, );
|
|
9
|
+
const modelApiController = _chunkTUCSLVSFcjs.container.getModelApiController();
|
|
10
|
+
router.get("/", modelApiController.handleModelList);
|
|
11
|
+
return router;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
exports.createModelApiRouter = createModelApiRouter;
|
|
17
|
+
//# sourceMappingURL=chunk-YNPHQW5S.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-YNPHQW5S.cjs","../../src/routes/api/model.routes.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACJA,kCAAuB;AAGhB,IAAM,qBAAA,EAAuB,CAAA,EAAA,GAAc;AACjD,EAAA,MAAM,OAAA,EAAS,6BAAA,CAAO;AACtB,EAAA,MAAM,mBAAA,EAAqB,2BAAA,CAAU,qBAAA,CAAsB,CAAA;AAG3D,EAAA,MAAA,CAAO,GAAA,CAAI,GAAA,EAAK,kBAAA,CAAmB,eAAe,CAAA;AAElD,EAAA,OAAO,MAAA;AACR,CAAA;ADCA;AACA;AACE;AACF,oDAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-YNPHQW5S.cjs","sourcesContent":[null,"import { Router } from \"express\";\nimport { container } from \"@/container\";\n\nexport const createModelApiRouter = (): Router => {\n\tconst router = Router();\n\tconst modelApiController = container.getModelApiController();\n\n\t// APIs (prefix: /api/model)\n\trouter.get(\"/\", modelApiController.handleModelList);\n\n\treturn router;\n};\n"]}
|