@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.
Files changed (817) hide show
  1. package/dist/cjs/chunk-24RRJOOI.cjs +362 -0
  2. package/dist/cjs/chunk-24RRJOOI.cjs.map +1 -0
  3. package/dist/cjs/chunk-257LB5MI.cjs +17 -0
  4. package/dist/cjs/chunk-257LB5MI.cjs.map +1 -0
  5. package/dist/cjs/chunk-25RWHBEF.cjs +62 -0
  6. package/dist/cjs/chunk-25RWHBEF.cjs.map +1 -0
  7. package/dist/cjs/chunk-2BUYQCWK.cjs +44 -0
  8. package/dist/cjs/chunk-2BUYQCWK.cjs.map +1 -0
  9. package/dist/cjs/chunk-2CQQ34ED.cjs +83 -0
  10. package/dist/cjs/chunk-2CQQ34ED.cjs.map +1 -0
  11. package/dist/cjs/chunk-2H7YXXKF.cjs +38 -0
  12. package/dist/cjs/chunk-2H7YXXKF.cjs.map +1 -0
  13. package/dist/cjs/chunk-2KGEFVQ2.cjs +111 -0
  14. package/dist/cjs/chunk-2KGEFVQ2.cjs.map +1 -0
  15. package/dist/cjs/chunk-2LUY44JT.cjs +74 -0
  16. package/dist/cjs/chunk-2LUY44JT.cjs.map +1 -0
  17. package/dist/cjs/chunk-2OOV44LV.cjs +22 -0
  18. package/dist/cjs/chunk-2OOV44LV.cjs.map +1 -0
  19. package/dist/cjs/chunk-2PCMBTXX.cjs +17 -0
  20. package/dist/cjs/chunk-2PCMBTXX.cjs.map +1 -0
  21. package/dist/cjs/chunk-2YT6WOL2.cjs +44 -0
  22. package/dist/cjs/chunk-2YT6WOL2.cjs.map +1 -0
  23. package/dist/cjs/chunk-33HKSNG7.cjs +18 -0
  24. package/dist/cjs/chunk-33HKSNG7.cjs.map +1 -0
  25. package/dist/cjs/chunk-34QKYJJA.cjs +62 -0
  26. package/dist/cjs/chunk-34QKYJJA.cjs.map +1 -0
  27. package/dist/cjs/chunk-36IQIRJO.cjs +44 -0
  28. package/dist/cjs/chunk-36IQIRJO.cjs.map +1 -0
  29. package/dist/cjs/chunk-3CCO4M2T.cjs +18 -0
  30. package/dist/cjs/chunk-3CCO4M2T.cjs.map +1 -0
  31. package/dist/cjs/chunk-3CWYO4DR.cjs +29 -0
  32. package/dist/cjs/chunk-3CWYO4DR.cjs.map +1 -0
  33. package/dist/cjs/chunk-3FSMQH6T.cjs +60 -0
  34. package/dist/cjs/chunk-3FSMQH6T.cjs.map +1 -0
  35. package/dist/cjs/chunk-3J7RAJKT.cjs +17 -0
  36. package/dist/cjs/chunk-3J7RAJKT.cjs.map +1 -0
  37. package/dist/cjs/chunk-3NR7RC2M.cjs +52 -0
  38. package/dist/cjs/chunk-3NR7RC2M.cjs.map +1 -0
  39. package/dist/cjs/chunk-3OLHAXDU.cjs +92 -0
  40. package/dist/cjs/chunk-3OLHAXDU.cjs.map +1 -0
  41. package/dist/cjs/chunk-3QBMBRXS.cjs +44 -0
  42. package/dist/cjs/chunk-3QBMBRXS.cjs.map +1 -0
  43. package/dist/cjs/chunk-3RPRJF2T.cjs +45 -0
  44. package/dist/cjs/chunk-3RPRJF2T.cjs.map +1 -0
  45. package/dist/cjs/chunk-4IROMVRW.cjs +29 -0
  46. package/dist/cjs/chunk-4IROMVRW.cjs.map +1 -0
  47. package/dist/cjs/chunk-4MV4JCVO.cjs +62 -0
  48. package/dist/cjs/chunk-4MV4JCVO.cjs.map +1 -0
  49. package/dist/cjs/chunk-4P7BIS7W.cjs +89 -0
  50. package/dist/cjs/chunk-4P7BIS7W.cjs.map +1 -0
  51. package/dist/cjs/chunk-4QGJ7JWW.cjs +17 -0
  52. package/dist/cjs/chunk-4QGJ7JWW.cjs.map +1 -0
  53. package/dist/cjs/chunk-4U5AKJ4H.cjs +376 -0
  54. package/dist/cjs/chunk-4U5AKJ4H.cjs.map +1 -0
  55. package/dist/cjs/chunk-5BQBOLKF.cjs +18 -0
  56. package/dist/cjs/chunk-5BQBOLKF.cjs.map +1 -0
  57. package/dist/cjs/chunk-5ON32BOF.cjs +44 -0
  58. package/dist/cjs/chunk-5ON32BOF.cjs.map +1 -0
  59. package/dist/cjs/chunk-5Q2KJ4H4.cjs +45 -0
  60. package/dist/cjs/chunk-5Q2KJ4H4.cjs.map +1 -0
  61. package/dist/cjs/chunk-5QAUKT4U.cjs +74 -0
  62. package/dist/cjs/chunk-5QAUKT4U.cjs.map +1 -0
  63. package/dist/cjs/chunk-5QK57J6T.cjs +29 -0
  64. package/dist/cjs/chunk-5QK57J6T.cjs.map +1 -0
  65. package/dist/cjs/chunk-5RLT7IZP.cjs +38 -0
  66. package/dist/cjs/chunk-5RLT7IZP.cjs.map +1 -0
  67. package/dist/cjs/chunk-6EBDGU4W.cjs +74 -0
  68. package/dist/cjs/chunk-6EBDGU4W.cjs.map +1 -0
  69. package/dist/cjs/chunk-6ENXUHR3.cjs +18 -0
  70. package/dist/cjs/chunk-6ENXUHR3.cjs.map +1 -0
  71. package/dist/cjs/chunk-6KXWGXJM.cjs +89 -0
  72. package/dist/cjs/chunk-6KXWGXJM.cjs.map +1 -0
  73. package/dist/cjs/chunk-6VEASJDK.cjs +62 -0
  74. package/dist/cjs/chunk-6VEASJDK.cjs.map +1 -0
  75. package/dist/cjs/chunk-6VHRJD7F.cjs +17 -0
  76. package/dist/cjs/chunk-6VHRJD7F.cjs.map +1 -0
  77. package/dist/cjs/chunk-6Z2RYVUO.cjs +74 -0
  78. package/dist/cjs/chunk-6Z2RYVUO.cjs.map +1 -0
  79. package/dist/cjs/chunk-6Z5XTC56.cjs +17 -0
  80. package/dist/cjs/chunk-6Z5XTC56.cjs.map +1 -0
  81. package/dist/cjs/chunk-75RI45E4.cjs +44 -0
  82. package/dist/cjs/chunk-75RI45E4.cjs.map +1 -0
  83. package/dist/cjs/chunk-76LBH57A.cjs +18 -0
  84. package/dist/cjs/chunk-76LBH57A.cjs.map +1 -0
  85. package/dist/cjs/chunk-76M7BSJ3.cjs +44 -0
  86. package/dist/cjs/chunk-76M7BSJ3.cjs.map +1 -0
  87. package/dist/cjs/chunk-7BO5E2NH.cjs +365 -0
  88. package/dist/cjs/chunk-7BO5E2NH.cjs.map +1 -0
  89. package/dist/cjs/chunk-7DEPTYG3.cjs +17 -0
  90. package/dist/cjs/chunk-7DEPTYG3.cjs.map +1 -0
  91. package/dist/cjs/chunk-7K5Z7DWN.cjs +361 -0
  92. package/dist/cjs/chunk-7K5Z7DWN.cjs.map +1 -0
  93. package/dist/cjs/chunk-7MKV6BXH.cjs +29 -0
  94. package/dist/cjs/chunk-7MKV6BXH.cjs.map +1 -0
  95. package/dist/cjs/chunk-7QRK2PZ7.cjs +18 -0
  96. package/dist/cjs/chunk-7QRK2PZ7.cjs.map +1 -0
  97. package/dist/cjs/chunk-7ZASM7UH.cjs +18 -0
  98. package/dist/cjs/chunk-7ZASM7UH.cjs.map +1 -0
  99. package/dist/cjs/chunk-7ZZOQCNU.cjs +17 -0
  100. package/dist/cjs/chunk-7ZZOQCNU.cjs.map +1 -0
  101. package/dist/cjs/chunk-A3FKCCSJ.cjs +44 -0
  102. package/dist/cjs/chunk-A3FKCCSJ.cjs.map +1 -0
  103. package/dist/cjs/chunk-A4ZX4Y47.cjs +45 -0
  104. package/dist/cjs/chunk-A4ZX4Y47.cjs.map +1 -0
  105. package/dist/cjs/chunk-A5SOUOEA.cjs +89 -0
  106. package/dist/cjs/chunk-A5SOUOEA.cjs.map +1 -0
  107. package/dist/cjs/chunk-AAUUAPCC.cjs +38 -0
  108. package/dist/cjs/chunk-AAUUAPCC.cjs.map +1 -0
  109. package/dist/cjs/chunk-AD6V5E5Q.cjs +89 -0
  110. package/dist/cjs/chunk-AD6V5E5Q.cjs.map +1 -0
  111. package/dist/cjs/chunk-AEPKSXT7.cjs +44 -0
  112. package/dist/cjs/chunk-AEPKSXT7.cjs.map +1 -0
  113. package/dist/cjs/chunk-AKDAUOUK.cjs +44 -0
  114. package/dist/cjs/chunk-AKDAUOUK.cjs.map +1 -0
  115. package/dist/cjs/chunk-AKQQCR26.cjs +17 -0
  116. package/dist/cjs/chunk-AKQQCR26.cjs.map +1 -0
  117. package/dist/cjs/chunk-ALPK75M7.cjs +100 -0
  118. package/dist/cjs/chunk-ALPK75M7.cjs.map +1 -0
  119. package/dist/cjs/chunk-AMKL65AS.cjs +20 -0
  120. package/dist/cjs/chunk-AMKL65AS.cjs.map +1 -0
  121. package/dist/cjs/chunk-AURUUSKY.cjs +44 -0
  122. package/dist/cjs/chunk-AURUUSKY.cjs.map +1 -0
  123. package/dist/cjs/chunk-AWKZRMOE.cjs +17 -0
  124. package/dist/cjs/chunk-AWKZRMOE.cjs.map +1 -0
  125. package/dist/cjs/chunk-AY4FE732.cjs +44 -0
  126. package/dist/cjs/chunk-AY4FE732.cjs.map +1 -0
  127. package/dist/cjs/chunk-B2QI7F2C.cjs +74 -0
  128. package/dist/cjs/chunk-B2QI7F2C.cjs.map +1 -0
  129. package/dist/cjs/chunk-B6D34MKF.cjs +29 -0
  130. package/dist/cjs/chunk-B6D34MKF.cjs.map +1 -0
  131. package/dist/cjs/chunk-BBUDDS2U.cjs +62 -0
  132. package/dist/cjs/chunk-BBUDDS2U.cjs.map +1 -0
  133. package/dist/cjs/chunk-BESFTGZE.cjs +89 -0
  134. package/dist/cjs/chunk-BESFTGZE.cjs.map +1 -0
  135. package/dist/cjs/chunk-BMXLCOSM.cjs +110 -0
  136. package/dist/cjs/chunk-BMXLCOSM.cjs.map +1 -0
  137. package/dist/cjs/chunk-BQ7N5GR2.cjs +74 -0
  138. package/dist/cjs/chunk-BQ7N5GR2.cjs.map +1 -0
  139. package/dist/cjs/chunk-BUVFXGID.cjs +17 -0
  140. package/dist/cjs/chunk-BUVFXGID.cjs.map +1 -0
  141. package/dist/cjs/chunk-BYU2KBHQ.cjs +89 -0
  142. package/dist/cjs/chunk-BYU2KBHQ.cjs.map +1 -0
  143. package/dist/cjs/chunk-CDKYYWPR.cjs +44 -0
  144. package/dist/cjs/chunk-CDKYYWPR.cjs.map +1 -0
  145. package/dist/cjs/chunk-CGBTMF5T.cjs +160 -0
  146. package/dist/cjs/chunk-CGBTMF5T.cjs.map +1 -0
  147. package/dist/cjs/chunk-CII4HFTO.cjs +44 -0
  148. package/dist/cjs/chunk-CII4HFTO.cjs.map +1 -0
  149. package/dist/cjs/chunk-CIOM5KV3.cjs +17 -0
  150. package/dist/cjs/chunk-CIOM5KV3.cjs.map +1 -0
  151. package/dist/cjs/chunk-CPOJVACJ.cjs +44 -0
  152. package/dist/cjs/chunk-CPOJVACJ.cjs.map +1 -0
  153. package/dist/cjs/chunk-CPXITYT4.cjs +104 -0
  154. package/dist/cjs/chunk-CPXITYT4.cjs.map +1 -0
  155. package/dist/cjs/chunk-CX3MFVU4.cjs +85 -0
  156. package/dist/cjs/chunk-CX3MFVU4.cjs.map +1 -0
  157. package/dist/cjs/chunk-CZ46DNRL.cjs +44 -0
  158. package/dist/cjs/chunk-CZ46DNRL.cjs.map +1 -0
  159. package/dist/cjs/chunk-DFUGFIB7.cjs +17 -0
  160. package/dist/cjs/chunk-DFUGFIB7.cjs.map +1 -0
  161. package/dist/cjs/chunk-DUTUWBRW.cjs +38 -0
  162. package/dist/cjs/chunk-DUTUWBRW.cjs.map +1 -0
  163. package/dist/cjs/chunk-DXUGFSHK.cjs +11 -0
  164. package/dist/cjs/chunk-DXUGFSHK.cjs.map +1 -0
  165. package/dist/cjs/chunk-DYQVBJUW.cjs +74 -0
  166. package/dist/cjs/chunk-DYQVBJUW.cjs.map +1 -0
  167. package/dist/cjs/chunk-DZZFES73.cjs +29 -0
  168. package/dist/cjs/chunk-DZZFES73.cjs.map +1 -0
  169. package/dist/cjs/chunk-E3CMG6RX.cjs +44 -0
  170. package/dist/cjs/chunk-E3CMG6RX.cjs.map +1 -0
  171. package/dist/cjs/chunk-E4MOFVBQ.cjs +29 -0
  172. package/dist/cjs/chunk-E4MOFVBQ.cjs.map +1 -0
  173. package/dist/cjs/chunk-EAEGZUHR.cjs +38 -0
  174. package/dist/cjs/chunk-EAEGZUHR.cjs.map +1 -0
  175. package/dist/cjs/chunk-EJFZ3FVM.cjs +17 -0
  176. package/dist/cjs/chunk-EJFZ3FVM.cjs.map +1 -0
  177. package/dist/cjs/chunk-EJMGDCI2.cjs +95 -0
  178. package/dist/cjs/chunk-EJMGDCI2.cjs.map +1 -0
  179. package/dist/cjs/chunk-EO6SZ6Y2.cjs +18 -0
  180. package/dist/cjs/chunk-EO6SZ6Y2.cjs.map +1 -0
  181. package/dist/cjs/chunk-EOLXWHTI.cjs +17 -0
  182. package/dist/cjs/chunk-EOLXWHTI.cjs.map +1 -0
  183. package/dist/cjs/chunk-ESLEPGTR.cjs +17 -0
  184. package/dist/cjs/chunk-ESLEPGTR.cjs.map +1 -0
  185. package/dist/cjs/chunk-EY6LRYGR.cjs +44 -0
  186. package/dist/cjs/chunk-EY6LRYGR.cjs.map +1 -0
  187. package/dist/cjs/chunk-EYWBSYOP.cjs +44 -0
  188. package/dist/cjs/chunk-EYWBSYOP.cjs.map +1 -0
  189. package/dist/cjs/chunk-F34KCFDI.cjs +38 -0
  190. package/dist/cjs/chunk-F34KCFDI.cjs.map +1 -0
  191. package/dist/cjs/chunk-FANWWNES.cjs +38 -0
  192. package/dist/cjs/chunk-FANWWNES.cjs.map +1 -0
  193. package/dist/cjs/chunk-FFOBJEZ4.cjs +18 -0
  194. package/dist/cjs/chunk-FFOBJEZ4.cjs.map +1 -0
  195. package/dist/cjs/chunk-FJCNUHOK.cjs +123 -0
  196. package/dist/cjs/chunk-FJCNUHOK.cjs.map +1 -0
  197. package/dist/cjs/chunk-FK2PASX2.cjs +89 -0
  198. package/dist/cjs/chunk-FK2PASX2.cjs.map +1 -0
  199. package/dist/cjs/chunk-FLGB7KZC.cjs +74 -0
  200. package/dist/cjs/chunk-FLGB7KZC.cjs.map +1 -0
  201. package/dist/cjs/chunk-FRURA3TL.cjs +18 -0
  202. package/dist/cjs/chunk-FRURA3TL.cjs.map +1 -0
  203. package/dist/cjs/chunk-FXJABXH2.cjs +44 -0
  204. package/dist/cjs/chunk-FXJABXH2.cjs.map +1 -0
  205. package/dist/cjs/chunk-FYIPH2Y6.cjs +38 -0
  206. package/dist/cjs/chunk-FYIPH2Y6.cjs.map +1 -0
  207. package/dist/cjs/chunk-G2YDAC3K.cjs +17 -0
  208. package/dist/cjs/chunk-G2YDAC3K.cjs.map +1 -0
  209. package/dist/cjs/chunk-G5E3ISQF.cjs +18 -0
  210. package/dist/cjs/chunk-G5E3ISQF.cjs.map +1 -0
  211. package/dist/cjs/chunk-GE3YIMKB.cjs +38 -0
  212. package/dist/cjs/chunk-GE3YIMKB.cjs.map +1 -0
  213. package/dist/cjs/chunk-GF3T2PUU.cjs +89 -0
  214. package/dist/cjs/chunk-GF3T2PUU.cjs.map +1 -0
  215. package/dist/cjs/chunk-GGZLS3DW.cjs +362 -0
  216. package/dist/cjs/chunk-GGZLS3DW.cjs.map +1 -0
  217. package/dist/cjs/chunk-GNOOMK7W.cjs +17 -0
  218. package/dist/cjs/chunk-GNOOMK7W.cjs.map +1 -0
  219. package/dist/cjs/chunk-GP7IXGFK.cjs +17 -0
  220. package/dist/cjs/chunk-GP7IXGFK.cjs.map +1 -0
  221. package/dist/cjs/chunk-GQ7GLAJK.cjs +29 -0
  222. package/dist/cjs/chunk-GQ7GLAJK.cjs.map +1 -0
  223. package/dist/cjs/chunk-GS4SRUTV.cjs +89 -0
  224. package/dist/cjs/chunk-GS4SRUTV.cjs.map +1 -0
  225. package/dist/cjs/chunk-GU6HDVQH.cjs +62 -0
  226. package/dist/cjs/chunk-GU6HDVQH.cjs.map +1 -0
  227. package/dist/cjs/chunk-HFYBAX4K.cjs +89 -0
  228. package/dist/cjs/chunk-HFYBAX4K.cjs.map +1 -0
  229. package/dist/cjs/chunk-HLTFUIIN.cjs +16 -0
  230. package/dist/cjs/chunk-HLTFUIIN.cjs.map +1 -0
  231. package/dist/cjs/chunk-HMLQQSC5.cjs +45 -0
  232. package/dist/cjs/chunk-HMLQQSC5.cjs.map +1 -0
  233. package/dist/cjs/chunk-HNFRGOJS.cjs +38 -0
  234. package/dist/cjs/chunk-HNFRGOJS.cjs.map +1 -0
  235. package/dist/cjs/chunk-HQ2XGXLM.cjs +44 -0
  236. package/dist/cjs/chunk-HQ2XGXLM.cjs.map +1 -0
  237. package/dist/cjs/chunk-HR3PYWGD.cjs +108 -0
  238. package/dist/cjs/chunk-HR3PYWGD.cjs.map +1 -0
  239. package/dist/cjs/chunk-HRZFYMBV.cjs +89 -0
  240. package/dist/cjs/chunk-HRZFYMBV.cjs.map +1 -0
  241. package/dist/cjs/chunk-I25WEIX7.cjs +44 -0
  242. package/dist/cjs/chunk-I25WEIX7.cjs.map +1 -0
  243. package/dist/cjs/chunk-IDDQKX45.cjs +18 -0
  244. package/dist/cjs/chunk-IDDQKX45.cjs.map +1 -0
  245. package/dist/cjs/chunk-IMLEZU2H.cjs +44 -0
  246. package/dist/cjs/chunk-IMLEZU2H.cjs.map +1 -0
  247. package/dist/cjs/chunk-IRTWZKRL.cjs +29 -0
  248. package/dist/cjs/chunk-IRTWZKRL.cjs.map +1 -0
  249. package/dist/cjs/chunk-IS6Q542T.cjs +18 -0
  250. package/dist/cjs/chunk-IS6Q542T.cjs.map +1 -0
  251. package/dist/cjs/chunk-ISLBO7I5.cjs +29 -0
  252. package/dist/cjs/chunk-ISLBO7I5.cjs.map +1 -0
  253. package/dist/{esm/chunk-MC5KX7MQ.js → cjs/chunk-IVNKHMZI.cjs} +54 -25
  254. package/dist/cjs/chunk-IVNKHMZI.cjs.map +1 -0
  255. package/dist/cjs/chunk-J6GZHVKA.cjs +17 -0
  256. package/dist/cjs/chunk-J6GZHVKA.cjs.map +1 -0
  257. package/dist/cjs/chunk-J7XZEYNH.cjs +18 -0
  258. package/dist/cjs/chunk-J7XZEYNH.cjs.map +1 -0
  259. package/dist/cjs/chunk-JBW43DLI.cjs +44 -0
  260. package/dist/cjs/chunk-JBW43DLI.cjs.map +1 -0
  261. package/dist/cjs/chunk-JCC4WECX.cjs +17 -0
  262. package/dist/cjs/chunk-JCC4WECX.cjs.map +1 -0
  263. package/dist/cjs/chunk-JCHBG2CK.cjs +29 -0
  264. package/dist/cjs/chunk-JCHBG2CK.cjs.map +1 -0
  265. package/dist/cjs/chunk-JJOPCTCU.cjs +17 -0
  266. package/dist/cjs/chunk-JJOPCTCU.cjs.map +1 -0
  267. package/dist/cjs/chunk-JLA2XKKK.cjs +17 -0
  268. package/dist/cjs/chunk-JLA2XKKK.cjs.map +1 -0
  269. package/dist/cjs/chunk-JRAXCPQO.cjs +44 -0
  270. package/dist/cjs/chunk-JRAXCPQO.cjs.map +1 -0
  271. package/dist/{esm/chunk-QQZ5ANSD.js → cjs/chunk-K3UELZ4W.cjs} +47 -35
  272. package/dist/cjs/chunk-K3UELZ4W.cjs.map +1 -0
  273. package/dist/cjs/chunk-K4BDE4VQ.cjs +17 -0
  274. package/dist/cjs/chunk-K4BDE4VQ.cjs.map +1 -0
  275. package/dist/cjs/chunk-K54PUMX5.cjs +44 -0
  276. package/dist/cjs/chunk-K54PUMX5.cjs.map +1 -0
  277. package/dist/cjs/chunk-KAEDNRF3.cjs +97 -0
  278. package/dist/cjs/chunk-KAEDNRF3.cjs.map +1 -0
  279. package/dist/cjs/chunk-KHG7EBRN.cjs +17 -0
  280. package/dist/cjs/chunk-KHG7EBRN.cjs.map +1 -0
  281. package/dist/cjs/chunk-KJ4E6VUE.cjs +62 -0
  282. package/dist/cjs/chunk-KJ4E6VUE.cjs.map +1 -0
  283. package/dist/cjs/chunk-KJJ6WEOJ.cjs +11 -0
  284. package/dist/cjs/chunk-KJJ6WEOJ.cjs.map +1 -0
  285. package/dist/cjs/chunk-KMREZ7PZ.cjs +74 -0
  286. package/dist/cjs/chunk-KMREZ7PZ.cjs.map +1 -0
  287. package/dist/cjs/chunk-KN5CERX5.cjs +89 -0
  288. package/dist/cjs/chunk-KN5CERX5.cjs.map +1 -0
  289. package/dist/cjs/chunk-KNYVRACQ.cjs +62 -0
  290. package/dist/cjs/chunk-KNYVRACQ.cjs.map +1 -0
  291. package/dist/cjs/chunk-KP4L7527.cjs +17 -0
  292. package/dist/cjs/chunk-KP4L7527.cjs.map +1 -0
  293. package/dist/cjs/chunk-KQDMWEET.cjs +18 -0
  294. package/dist/cjs/chunk-KQDMWEET.cjs.map +1 -0
  295. package/dist/cjs/chunk-KWYDGO4G.cjs +62 -0
  296. package/dist/cjs/chunk-KWYDGO4G.cjs.map +1 -0
  297. package/dist/cjs/chunk-L6EOB53F.cjs +79 -0
  298. package/dist/cjs/chunk-L6EOB53F.cjs.map +1 -0
  299. package/dist/cjs/chunk-LAX3Y732.cjs +18 -0
  300. package/dist/cjs/chunk-LAX3Y732.cjs.map +1 -0
  301. package/dist/cjs/chunk-LDLF7MAE.cjs +132 -0
  302. package/dist/cjs/chunk-LDLF7MAE.cjs.map +1 -0
  303. package/dist/cjs/chunk-LETDXZVR.cjs +17 -0
  304. package/dist/cjs/chunk-LETDXZVR.cjs.map +1 -0
  305. package/dist/cjs/chunk-LI2XLHPP.cjs +38 -0
  306. package/dist/cjs/chunk-LI2XLHPP.cjs.map +1 -0
  307. package/dist/cjs/chunk-LJRPZUWA.cjs +104 -0
  308. package/dist/cjs/chunk-LJRPZUWA.cjs.map +1 -0
  309. package/dist/cjs/chunk-LKUN737V.cjs +74 -0
  310. package/dist/cjs/chunk-LKUN737V.cjs.map +1 -0
  311. package/dist/cjs/chunk-LLHF36B4.cjs +74 -0
  312. package/dist/cjs/chunk-LLHF36B4.cjs.map +1 -0
  313. package/dist/cjs/chunk-LMRBAR7I.cjs +89 -0
  314. package/dist/cjs/chunk-LMRBAR7I.cjs.map +1 -0
  315. package/dist/cjs/chunk-LNJJUOEN.cjs +160 -0
  316. package/dist/cjs/chunk-LNJJUOEN.cjs.map +1 -0
  317. package/dist/cjs/chunk-LS3KARP2.cjs +29 -0
  318. package/dist/cjs/chunk-LS3KARP2.cjs.map +1 -0
  319. package/dist/cjs/chunk-LUNBSV2I.cjs +74 -0
  320. package/dist/cjs/chunk-LUNBSV2I.cjs.map +1 -0
  321. package/dist/cjs/chunk-LVIMWZQS.cjs +89 -0
  322. package/dist/cjs/chunk-LVIMWZQS.cjs.map +1 -0
  323. package/dist/cjs/chunk-M6OZBNV3.cjs +17 -0
  324. package/dist/cjs/chunk-M6OZBNV3.cjs.map +1 -0
  325. package/dist/cjs/chunk-MAXQRRIY.cjs +365 -0
  326. package/dist/cjs/chunk-MAXQRRIY.cjs.map +1 -0
  327. package/dist/cjs/chunk-MIPD6XXN.cjs +17 -0
  328. package/dist/cjs/chunk-MIPD6XXN.cjs.map +1 -0
  329. package/dist/cjs/chunk-MNZP3CZB.cjs +45 -0
  330. package/dist/cjs/chunk-MNZP3CZB.cjs.map +1 -0
  331. package/dist/cjs/chunk-MOFEEAGY.cjs +17 -0
  332. package/dist/cjs/chunk-MOFEEAGY.cjs.map +1 -0
  333. package/dist/cjs/chunk-MTMT3CVP.cjs +17 -0
  334. package/dist/cjs/chunk-MTMT3CVP.cjs.map +1 -0
  335. package/dist/cjs/chunk-MYFVFI5F.cjs +74 -0
  336. package/dist/cjs/chunk-MYFVFI5F.cjs.map +1 -0
  337. package/dist/cjs/chunk-MYS55MIK.cjs +38 -0
  338. package/dist/cjs/chunk-MYS55MIK.cjs.map +1 -0
  339. package/dist/cjs/chunk-N6U4EN2R.cjs +44 -0
  340. package/dist/cjs/chunk-N6U4EN2R.cjs.map +1 -0
  341. package/dist/cjs/chunk-NBQ3VSRH.cjs +38 -0
  342. package/dist/cjs/chunk-NBQ3VSRH.cjs.map +1 -0
  343. package/dist/cjs/chunk-NFAEF6W7.cjs +62 -0
  344. package/dist/cjs/chunk-NFAEF6W7.cjs.map +1 -0
  345. package/dist/cjs/chunk-NFFV5YMX.cjs +44 -0
  346. package/dist/cjs/chunk-NFFV5YMX.cjs.map +1 -0
  347. package/dist/cjs/chunk-NFW54MQ7.cjs +17 -0
  348. package/dist/cjs/chunk-NFW54MQ7.cjs.map +1 -0
  349. package/dist/cjs/chunk-NK3ADXTX.cjs +44 -0
  350. package/dist/cjs/chunk-NK3ADXTX.cjs.map +1 -0
  351. package/dist/cjs/chunk-NN7IOMRL.cjs +62 -0
  352. package/dist/cjs/chunk-NN7IOMRL.cjs.map +1 -0
  353. package/dist/cjs/chunk-NNVSYWA3.cjs +62 -0
  354. package/dist/cjs/chunk-NNVSYWA3.cjs.map +1 -0
  355. package/dist/cjs/chunk-NZXQID5S.cjs +104 -0
  356. package/dist/cjs/chunk-NZXQID5S.cjs.map +1 -0
  357. package/dist/{esm/chunk-CC6DWPHZ.js → cjs/chunk-O4WIK7YI.cjs} +17 -17
  358. package/dist/cjs/chunk-O4WIK7YI.cjs.map +1 -0
  359. package/dist/cjs/chunk-O7WYT77Q.cjs +62 -0
  360. package/dist/cjs/chunk-O7WYT77Q.cjs.map +1 -0
  361. package/dist/cjs/chunk-OCBMFZHQ.cjs +29 -0
  362. package/dist/cjs/chunk-OCBMFZHQ.cjs.map +1 -0
  363. package/dist/cjs/chunk-OCXNCC5B.cjs +17 -0
  364. package/dist/cjs/chunk-OCXNCC5B.cjs.map +1 -0
  365. package/dist/cjs/chunk-OG2R3NBK.cjs +38 -0
  366. package/dist/cjs/chunk-OG2R3NBK.cjs.map +1 -0
  367. package/dist/cjs/chunk-OHVXQ2LX.cjs +53 -0
  368. package/dist/cjs/chunk-OHVXQ2LX.cjs.map +1 -0
  369. package/dist/cjs/chunk-OJM4BUY2.cjs +89 -0
  370. package/dist/cjs/chunk-OJM4BUY2.cjs.map +1 -0
  371. package/dist/cjs/chunk-ORAYV7WD.cjs +17 -0
  372. package/dist/cjs/chunk-ORAYV7WD.cjs.map +1 -0
  373. package/dist/cjs/chunk-OVCUZFLV.cjs +44 -0
  374. package/dist/cjs/chunk-OVCUZFLV.cjs.map +1 -0
  375. package/dist/cjs/chunk-OYDNFJAM.cjs +44 -0
  376. package/dist/cjs/chunk-OYDNFJAM.cjs.map +1 -0
  377. package/dist/cjs/chunk-P2GCTU6M.cjs +109 -0
  378. package/dist/cjs/chunk-P2GCTU6M.cjs.map +1 -0
  379. package/dist/cjs/chunk-P2KW3E6U.cjs +29 -0
  380. package/dist/cjs/chunk-P2KW3E6U.cjs.map +1 -0
  381. package/dist/cjs/chunk-P2P5M3T2.cjs +29 -0
  382. package/dist/cjs/chunk-P2P5M3T2.cjs.map +1 -0
  383. package/dist/cjs/chunk-P362DRT2.cjs +44 -0
  384. package/dist/cjs/chunk-P362DRT2.cjs.map +1 -0
  385. package/dist/cjs/chunk-P3AYWRS7.cjs +18 -0
  386. package/dist/cjs/chunk-P3AYWRS7.cjs.map +1 -0
  387. package/dist/cjs/chunk-P64FBXOS.cjs +104 -0
  388. package/dist/cjs/chunk-P64FBXOS.cjs.map +1 -0
  389. package/dist/cjs/chunk-PAWQF7J7.cjs +17 -0
  390. package/dist/cjs/chunk-PAWQF7J7.cjs.map +1 -0
  391. package/dist/cjs/chunk-PF3ER2QU.cjs +17 -0
  392. package/dist/cjs/chunk-PF3ER2QU.cjs.map +1 -0
  393. package/dist/cjs/chunk-PG4SO7ML.cjs +29 -0
  394. package/dist/cjs/chunk-PG4SO7ML.cjs.map +1 -0
  395. package/dist/cjs/chunk-PN3F26EA.cjs +38 -0
  396. package/dist/cjs/chunk-PN3F26EA.cjs.map +1 -0
  397. package/dist/cjs/chunk-PO443XHM.cjs +62 -0
  398. package/dist/cjs/chunk-PO443XHM.cjs.map +1 -0
  399. package/dist/cjs/chunk-PQQU77V7.cjs +160 -0
  400. package/dist/cjs/chunk-PQQU77V7.cjs.map +1 -0
  401. package/dist/cjs/chunk-PQW35YAY.cjs +89 -0
  402. package/dist/cjs/chunk-PQW35YAY.cjs.map +1 -0
  403. package/dist/cjs/chunk-PTJST6LH.cjs +38 -0
  404. package/dist/cjs/chunk-PTJST6LH.cjs.map +1 -0
  405. package/dist/cjs/chunk-PWM3QPWT.cjs +62 -0
  406. package/dist/cjs/chunk-PWM3QPWT.cjs.map +1 -0
  407. package/dist/cjs/chunk-PX2NZ7SE.cjs +29 -0
  408. package/dist/cjs/chunk-PX2NZ7SE.cjs.map +1 -0
  409. package/dist/cjs/chunk-QD5ARR2B.cjs +17 -0
  410. package/dist/cjs/chunk-QD5ARR2B.cjs.map +1 -0
  411. package/dist/{esm/chunk-5IIF5O4A.js → cjs/chunk-QK26HLOI.cjs} +9 -9
  412. package/dist/cjs/chunk-QK26HLOI.cjs.map +1 -0
  413. package/dist/cjs/chunk-QOFTRHCH.cjs +62 -0
  414. package/dist/cjs/chunk-QOFTRHCH.cjs.map +1 -0
  415. package/dist/cjs/chunk-QQI3367Y.cjs +29 -0
  416. package/dist/cjs/chunk-QQI3367Y.cjs.map +1 -0
  417. package/dist/cjs/chunk-QS4IGZTN.cjs +17 -0
  418. package/dist/cjs/chunk-QS4IGZTN.cjs.map +1 -0
  419. package/dist/cjs/chunk-QUWVIY46.cjs +17 -0
  420. package/dist/cjs/chunk-QUWVIY46.cjs.map +1 -0
  421. package/dist/cjs/chunk-QYA4XUJT.cjs +18 -0
  422. package/dist/cjs/chunk-QYA4XUJT.cjs.map +1 -0
  423. package/dist/cjs/chunk-QYUFEGMJ.cjs +62 -0
  424. package/dist/cjs/chunk-QYUFEGMJ.cjs.map +1 -0
  425. package/dist/cjs/chunk-R4UYONDW.cjs +17 -0
  426. package/dist/cjs/chunk-R4UYONDW.cjs.map +1 -0
  427. package/dist/cjs/chunk-RAL7YD6T.cjs +44 -0
  428. package/dist/cjs/chunk-RAL7YD6T.cjs.map +1 -0
  429. package/dist/cjs/chunk-RGVKM4WY.cjs +62 -0
  430. package/dist/cjs/chunk-RGVKM4WY.cjs.map +1 -0
  431. package/dist/cjs/chunk-RHZY3ODR.cjs +361 -0
  432. package/dist/cjs/chunk-RHZY3ODR.cjs.map +1 -0
  433. package/dist/cjs/chunk-RN65SUJF.cjs +97 -0
  434. package/dist/cjs/chunk-RN65SUJF.cjs.map +1 -0
  435. package/dist/cjs/chunk-RNORLGS6.cjs +45 -0
  436. package/dist/cjs/chunk-RNORLGS6.cjs.map +1 -0
  437. package/dist/cjs/chunk-ROQH4P3W.cjs +38 -0
  438. package/dist/cjs/chunk-ROQH4P3W.cjs.map +1 -0
  439. package/dist/cjs/chunk-RRUMJQUL.cjs +89 -0
  440. package/dist/cjs/chunk-RRUMJQUL.cjs.map +1 -0
  441. package/dist/cjs/chunk-RSW62NMI.cjs +199 -0
  442. package/dist/cjs/chunk-RSW62NMI.cjs.map +1 -0
  443. package/dist/cjs/chunk-RUWGV4WR.cjs +17 -0
  444. package/dist/cjs/chunk-RUWGV4WR.cjs.map +1 -0
  445. package/dist/cjs/chunk-RXKDAHG2.cjs +44 -0
  446. package/dist/cjs/chunk-RXKDAHG2.cjs.map +1 -0
  447. package/dist/cjs/chunk-S6QSKB6P.cjs +16 -0
  448. package/dist/cjs/chunk-S6QSKB6P.cjs.map +1 -0
  449. package/dist/cjs/chunk-S6T455CQ.cjs +17 -0
  450. package/dist/cjs/chunk-S6T455CQ.cjs.map +1 -0
  451. package/dist/cjs/chunk-SC7EAJGH.cjs +17 -0
  452. package/dist/cjs/chunk-SC7EAJGH.cjs.map +1 -0
  453. package/dist/cjs/chunk-SD3MWNJS.cjs +38 -0
  454. package/dist/cjs/chunk-SD3MWNJS.cjs.map +1 -0
  455. package/dist/cjs/chunk-SFLERIBX.cjs +44 -0
  456. package/dist/cjs/chunk-SFLERIBX.cjs.map +1 -0
  457. package/dist/cjs/chunk-SFS4SXF6.cjs +53 -0
  458. package/dist/cjs/chunk-SFS4SXF6.cjs.map +1 -0
  459. package/dist/cjs/chunk-SFZRVWAS.cjs +116 -0
  460. package/dist/cjs/chunk-SFZRVWAS.cjs.map +1 -0
  461. package/dist/cjs/chunk-SMW34VVM.cjs +44 -0
  462. package/dist/cjs/chunk-SMW34VVM.cjs.map +1 -0
  463. package/dist/cjs/chunk-SSKGQ6Q6.cjs +44 -0
  464. package/dist/cjs/chunk-SSKGQ6Q6.cjs.map +1 -0
  465. package/dist/cjs/chunk-ST3FQEPC.cjs +17 -0
  466. package/dist/cjs/chunk-ST3FQEPC.cjs.map +1 -0
  467. package/dist/cjs/chunk-SUWPGEHX.cjs +17 -0
  468. package/dist/cjs/chunk-SUWPGEHX.cjs.map +1 -0
  469. package/dist/cjs/chunk-SV2K3QIF.cjs +89 -0
  470. package/dist/cjs/chunk-SV2K3QIF.cjs.map +1 -0
  471. package/dist/cjs/chunk-SVO42FE4.cjs +199 -0
  472. package/dist/cjs/chunk-SVO42FE4.cjs.map +1 -0
  473. package/dist/cjs/chunk-SVWQ7SSG.cjs +17 -0
  474. package/dist/cjs/chunk-SVWQ7SSG.cjs.map +1 -0
  475. package/dist/cjs/chunk-SWXYI6B3.cjs +17 -0
  476. package/dist/cjs/chunk-SWXYI6B3.cjs.map +1 -0
  477. package/dist/cjs/chunk-SYRDNATI.cjs +18 -0
  478. package/dist/cjs/chunk-SYRDNATI.cjs.map +1 -0
  479. package/dist/cjs/chunk-T6JV6NPL.cjs +29 -0
  480. package/dist/cjs/chunk-T6JV6NPL.cjs.map +1 -0
  481. package/dist/cjs/chunk-TA7HWVVM.cjs +44 -0
  482. package/dist/cjs/chunk-TA7HWVVM.cjs.map +1 -0
  483. package/dist/cjs/chunk-TO3PRCSI.cjs +29 -0
  484. package/dist/cjs/chunk-TO3PRCSI.cjs.map +1 -0
  485. package/dist/cjs/chunk-TR6LECJD.cjs +17 -0
  486. package/dist/cjs/chunk-TR6LECJD.cjs.map +1 -0
  487. package/dist/cjs/chunk-TUCSLVSF.cjs +74 -0
  488. package/dist/cjs/chunk-TUCSLVSF.cjs.map +1 -0
  489. package/dist/cjs/chunk-TWEE7ZVM.cjs +17 -0
  490. package/dist/cjs/chunk-TWEE7ZVM.cjs.map +1 -0
  491. package/dist/cjs/chunk-TXCJLAJF.cjs +38 -0
  492. package/dist/cjs/chunk-TXCJLAJF.cjs.map +1 -0
  493. package/dist/cjs/chunk-U6NNAQNQ.cjs +38 -0
  494. package/dist/cjs/chunk-U6NNAQNQ.cjs.map +1 -0
  495. package/dist/cjs/chunk-UFRZN76M.cjs +62 -0
  496. package/dist/cjs/chunk-UFRZN76M.cjs.map +1 -0
  497. package/dist/cjs/chunk-UHBLYOYU.cjs +74 -0
  498. package/dist/cjs/chunk-UHBLYOYU.cjs.map +1 -0
  499. package/dist/cjs/chunk-UHDH333D.cjs +62 -0
  500. package/dist/cjs/chunk-UHDH333D.cjs.map +1 -0
  501. package/dist/cjs/chunk-UNJZ3SCR.cjs +38 -0
  502. package/dist/cjs/chunk-UNJZ3SCR.cjs.map +1 -0
  503. package/dist/cjs/chunk-UOTEA2IY.cjs +104 -0
  504. package/dist/cjs/chunk-UOTEA2IY.cjs.map +1 -0
  505. package/dist/cjs/chunk-UQFLEWWA.cjs +362 -0
  506. package/dist/cjs/chunk-UQFLEWWA.cjs.map +1 -0
  507. package/dist/cjs/chunk-UUCZKT5D.cjs +132 -0
  508. package/dist/cjs/chunk-UUCZKT5D.cjs.map +1 -0
  509. package/dist/cjs/chunk-UVPSBGW7.cjs +74 -0
  510. package/dist/cjs/chunk-UVPSBGW7.cjs.map +1 -0
  511. package/dist/cjs/chunk-UZJTUZGY.cjs +17 -0
  512. package/dist/cjs/chunk-UZJTUZGY.cjs.map +1 -0
  513. package/dist/cjs/chunk-V4RBT5K7.cjs +17 -0
  514. package/dist/cjs/chunk-V4RBT5K7.cjs.map +1 -0
  515. package/dist/cjs/chunk-VDXJGAFA.cjs +17 -0
  516. package/dist/cjs/chunk-VDXJGAFA.cjs.map +1 -0
  517. package/dist/cjs/chunk-VMO3EK7D.cjs +17 -0
  518. package/dist/cjs/chunk-VMO3EK7D.cjs.map +1 -0
  519. package/dist/cjs/chunk-VT73FQL4.cjs +89 -0
  520. package/dist/cjs/chunk-VT73FQL4.cjs.map +1 -0
  521. package/dist/cjs/chunk-VXA4ORKK.cjs +74 -0
  522. package/dist/cjs/chunk-VXA4ORKK.cjs.map +1 -0
  523. package/dist/cjs/chunk-W7SORD7U.cjs +44 -0
  524. package/dist/cjs/chunk-W7SORD7U.cjs.map +1 -0
  525. package/dist/cjs/chunk-WATBESF4.cjs +44 -0
  526. package/dist/cjs/chunk-WATBESF4.cjs.map +1 -0
  527. package/dist/cjs/chunk-WCTCFUE2.cjs +367 -0
  528. package/dist/cjs/chunk-WCTCFUE2.cjs.map +1 -0
  529. package/dist/cjs/chunk-WDYGGL7T.cjs +74 -0
  530. package/dist/cjs/chunk-WDYGGL7T.cjs.map +1 -0
  531. package/dist/cjs/chunk-WIS6QBYF.cjs +77 -0
  532. package/dist/cjs/chunk-WIS6QBYF.cjs.map +1 -0
  533. package/dist/cjs/chunk-WJNXA7H5.cjs +17 -0
  534. package/dist/cjs/chunk-WJNXA7H5.cjs.map +1 -0
  535. package/dist/cjs/chunk-WK2SDNK6.cjs +29 -0
  536. package/dist/cjs/chunk-WK2SDNK6.cjs.map +1 -0
  537. package/dist/cjs/chunk-WL657FMV.cjs +17 -0
  538. package/dist/cjs/chunk-WL657FMV.cjs.map +1 -0
  539. package/dist/cjs/chunk-WQJUJFBG.cjs +89 -0
  540. package/dist/cjs/chunk-WQJUJFBG.cjs.map +1 -0
  541. package/dist/cjs/chunk-WQKJT2J5.cjs +17 -0
  542. package/dist/cjs/chunk-WQKJT2J5.cjs.map +1 -0
  543. package/dist/cjs/chunk-WUCAGTUK.cjs +17 -0
  544. package/dist/cjs/chunk-WUCAGTUK.cjs.map +1 -0
  545. package/dist/cjs/chunk-WY7CK7W5.cjs +74 -0
  546. package/dist/cjs/chunk-WY7CK7W5.cjs.map +1 -0
  547. package/dist/cjs/chunk-WZEICEMD.cjs +62 -0
  548. package/dist/cjs/chunk-WZEICEMD.cjs.map +1 -0
  549. package/dist/cjs/chunk-X3QHGDUT.cjs +74 -0
  550. package/dist/cjs/chunk-X3QHGDUT.cjs.map +1 -0
  551. package/dist/cjs/chunk-XDHFS7VI.cjs +44 -0
  552. package/dist/cjs/chunk-XDHFS7VI.cjs.map +1 -0
  553. package/dist/cjs/chunk-XIVWRYNJ.cjs +38 -0
  554. package/dist/cjs/chunk-XIVWRYNJ.cjs.map +1 -0
  555. package/dist/cjs/chunk-XTZB7I5O.cjs +365 -0
  556. package/dist/cjs/chunk-XTZB7I5O.cjs.map +1 -0
  557. package/dist/cjs/chunk-XTZXXP5H.cjs +17 -0
  558. package/dist/cjs/chunk-XTZXXP5H.cjs.map +1 -0
  559. package/dist/cjs/chunk-XWQATYRB.cjs +17 -0
  560. package/dist/cjs/chunk-XWQATYRB.cjs.map +1 -0
  561. package/dist/cjs/chunk-XZUUYWF4.cjs +74 -0
  562. package/dist/cjs/chunk-XZUUYWF4.cjs.map +1 -0
  563. package/dist/cjs/chunk-Y3E7ELDU.cjs +17 -0
  564. package/dist/cjs/chunk-Y3E7ELDU.cjs.map +1 -0
  565. package/dist/cjs/chunk-Y524IIF6.cjs +199 -0
  566. package/dist/cjs/chunk-Y524IIF6.cjs.map +1 -0
  567. package/dist/cjs/chunk-YEEYYIBK.cjs +17 -0
  568. package/dist/cjs/chunk-YEEYYIBK.cjs.map +1 -0
  569. package/dist/cjs/chunk-YM24CPSE.cjs +44 -0
  570. package/dist/cjs/chunk-YM24CPSE.cjs.map +1 -0
  571. package/dist/cjs/chunk-YMFMJL47.cjs +137 -0
  572. package/dist/cjs/chunk-YMFMJL47.cjs.map +1 -0
  573. package/dist/cjs/chunk-YNPHQW5S.cjs +17 -0
  574. package/dist/cjs/chunk-YNPHQW5S.cjs.map +1 -0
  575. package/dist/cjs/chunk-YUTGCYSF.cjs +199 -0
  576. package/dist/cjs/chunk-YUTGCYSF.cjs.map +1 -0
  577. package/dist/cjs/chunk-Z2IE2N4Z.cjs +38 -0
  578. package/dist/cjs/chunk-Z2IE2N4Z.cjs.map +1 -0
  579. package/dist/cjs/chunk-Z57RTBQ6.cjs +18 -0
  580. package/dist/cjs/chunk-Z57RTBQ6.cjs.map +1 -0
  581. package/dist/cjs/chunk-Z6WB6GE6.cjs +17 -0
  582. package/dist/cjs/chunk-Z6WB6GE6.cjs.map +1 -0
  583. package/dist/cjs/chunk-ZEUSN4Q4.cjs +89 -0
  584. package/dist/cjs/chunk-ZEUSN4Q4.cjs.map +1 -0
  585. package/dist/cjs/chunk-ZF2XEV4M.cjs +362 -0
  586. package/dist/cjs/chunk-ZF2XEV4M.cjs.map +1 -0
  587. package/dist/cjs/chunk-ZO4B7BJ3.cjs +38 -0
  588. package/dist/cjs/chunk-ZO4B7BJ3.cjs.map +1 -0
  589. package/dist/cjs/chunk-ZRQ2BXVC.cjs +38 -0
  590. package/dist/cjs/chunk-ZRQ2BXVC.cjs.map +1 -0
  591. package/dist/cjs/chunk-ZUIRE3CM.cjs +18 -0
  592. package/dist/cjs/chunk-ZUIRE3CM.cjs.map +1 -0
  593. package/dist/cjs/chunk-ZUTXQWDF.cjs +29 -0
  594. package/dist/cjs/chunk-ZUTXQWDF.cjs.map +1 -0
  595. package/dist/cjs/container/controllers.cjs +7 -6
  596. package/dist/cjs/container/controllers.cjs.map +1 -1
  597. package/dist/cjs/container/index.cjs +28 -25
  598. package/dist/cjs/container/index.cjs.map +1 -1
  599. package/dist/cjs/container/services.cjs +18 -15
  600. package/dist/cjs/container/services.cjs.map +1 -1
  601. package/dist/cjs/controllers/a2a.controller.cjs +3 -3
  602. package/dist/cjs/controllers/api/workflow.api.controller.cjs +2 -2
  603. package/dist/cjs/controllers/index.cjs +7 -7
  604. package/dist/cjs/controllers/index.cjs.map +1 -1
  605. package/dist/cjs/controllers/query.controller.cjs +4 -3
  606. package/dist/cjs/controllers/query.controller.cjs.map +1 -1
  607. package/dist/cjs/index.cjs +46 -43
  608. package/dist/cjs/index.cjs.map +1 -1
  609. package/dist/cjs/middlewares/error.middleware.cjs +3 -3
  610. package/dist/cjs/modules/a2a/a2a.module.cjs +4 -4
  611. package/dist/cjs/modules/index.cjs +8 -8
  612. package/dist/cjs/modules/mcp/mcp.module.cjs +3 -3
  613. package/dist/cjs/routes/a2a.routes.cjs +29 -26
  614. package/dist/cjs/routes/a2a.routes.cjs.map +1 -1
  615. package/dist/cjs/routes/api/agent.routes.cjs +27 -24
  616. package/dist/cjs/routes/api/agent.routes.cjs.map +1 -1
  617. package/dist/cjs/routes/api/intent.routes.cjs +27 -24
  618. package/dist/cjs/routes/api/intent.routes.cjs.map +1 -1
  619. package/dist/cjs/routes/api/model.routes.cjs +27 -24
  620. package/dist/cjs/routes/api/model.routes.cjs.map +1 -1
  621. package/dist/cjs/routes/api/threads.routes.cjs +27 -24
  622. package/dist/cjs/routes/api/threads.routes.cjs.map +1 -1
  623. package/dist/cjs/routes/api/workflow.routes.cjs +27 -24
  624. package/dist/cjs/routes/api/workflow.routes.cjs.map +1 -1
  625. package/dist/cjs/routes/api.routes.cjs +32 -29
  626. package/dist/cjs/routes/api.routes.cjs.map +1 -1
  627. package/dist/cjs/routes/index.cjs +36 -33
  628. package/dist/cjs/routes/index.cjs.map +1 -1
  629. package/dist/cjs/routes/intent.routes.cjs +27 -24
  630. package/dist/cjs/routes/intent.routes.cjs.map +1 -1
  631. package/dist/cjs/routes/query.routes.cjs +27 -24
  632. package/dist/cjs/routes/query.routes.cjs.map +1 -1
  633. package/dist/cjs/services/a2a.service.cjs +3 -3
  634. package/dist/cjs/services/index.cjs +16 -13
  635. package/dist/cjs/services/index.cjs.map +1 -1
  636. package/dist/cjs/services/intents/aggregate.service.cjs +3 -4
  637. package/dist/cjs/services/intents/aggregate.service.cjs.map +1 -1
  638. package/dist/cjs/services/intents/fulfill.service.cjs +8 -7
  639. package/dist/cjs/services/intents/fulfill.service.cjs.map +1 -1
  640. package/dist/cjs/services/intents/multi-trigger.service.cjs +4 -3
  641. package/dist/cjs/services/intents/multi-trigger.service.cjs.map +1 -1
  642. package/dist/cjs/services/intents/single-trigger.service.cjs +4 -3
  643. package/dist/cjs/services/intents/single-trigger.service.cjs.map +1 -1
  644. package/dist/cjs/services/intents/trigger.service.cjs +7 -5
  645. package/dist/cjs/services/intents/trigger.service.cjs.map +1 -1
  646. package/dist/cjs/services/prompts/aggregate.cjs +7 -0
  647. package/dist/cjs/services/prompts/aggregate.cjs.map +1 -0
  648. package/dist/cjs/services/prompts/fulfill.cjs +7 -0
  649. package/dist/cjs/services/prompts/fulfill.cjs.map +1 -0
  650. package/dist/cjs/services/prompts/generate-title.cjs +7 -0
  651. package/dist/cjs/services/prompts/generate-title.cjs.map +1 -0
  652. package/dist/cjs/services/prompts/multi-trigger.cjs +7 -0
  653. package/dist/cjs/services/prompts/multi-trigger.cjs.map +1 -0
  654. package/dist/cjs/services/prompts/single-trigger.cjs +7 -0
  655. package/dist/cjs/services/prompts/single-trigger.cjs.map +1 -0
  656. package/dist/cjs/services/prompts/tool-select.cjs +7 -0
  657. package/dist/cjs/services/prompts/tool-select.cjs.map +1 -0
  658. package/dist/cjs/services/query.service.cjs +5 -5
  659. package/dist/cjs/services/utils/aggregate.common.cjs +2 -4
  660. package/dist/cjs/services/utils/aggregate.common.cjs.map +1 -1
  661. package/dist/cjs/services/utils/query.common.cjs +1 -8
  662. package/dist/cjs/services/utils/query.common.cjs.map +1 -1
  663. package/dist/cjs/types/memory.cjs +2 -2
  664. package/dist/cjs/utils/logger.cjs +4 -2
  665. package/dist/cjs/utils/logger.cjs.map +1 -1
  666. package/dist/cjs/utils/tableBuffer.cjs +7 -0
  667. package/dist/cjs/utils/tableBuffer.cjs.map +1 -0
  668. package/dist/esm/{chunk-7BH6AYP7.js → chunk-22ELL7WG.js} +6 -4
  669. package/dist/esm/chunk-22ELL7WG.js.map +1 -0
  670. package/dist/esm/{chunk-FISBL7OM.js → chunk-2RLUCOJF.js} +65 -21
  671. package/dist/esm/chunk-2RLUCOJF.js.map +1 -0
  672. package/dist/esm/chunk-3CR3ZB6L.js +60 -0
  673. package/dist/esm/chunk-3CR3ZB6L.js.map +1 -0
  674. package/dist/esm/chunk-5Z3SX3AE.js +11 -0
  675. package/dist/esm/chunk-5Z3SX3AE.js.map +1 -0
  676. package/dist/esm/{chunk-LC5XQGWK.js → chunk-BQO572DY.js} +10 -10
  677. package/dist/esm/{chunk-RAHOYMKY.js → chunk-BYGS3GS6.js} +2 -2
  678. package/dist/esm/{chunk-JXGQVFCO.js → chunk-C6GUUAED.js} +40 -10
  679. package/dist/esm/chunk-C6GUUAED.js.map +1 -0
  680. package/dist/esm/chunk-CRQEBSRD.js +85 -0
  681. package/dist/esm/chunk-CRQEBSRD.js.map +1 -0
  682. package/dist/esm/chunk-DDSAK722.js +92 -0
  683. package/dist/esm/chunk-DDSAK722.js.map +1 -0
  684. package/dist/esm/{chunk-PVWOU6LA.js → chunk-FWPJQG4N.js} +4 -4
  685. package/dist/esm/chunk-FWPJQG4N.js.map +1 -0
  686. package/dist/esm/{chunk-ZNZZZ4NN.js → chunk-G4TS67ZV.js} +4 -4
  687. package/dist/esm/chunk-G4TS67ZV.js.map +1 -0
  688. package/dist/esm/{chunk-VUMI4XOY.js → chunk-GHUEA7V5.js} +23 -2
  689. package/dist/esm/chunk-GHUEA7V5.js.map +1 -0
  690. package/dist/esm/{chunk-HNKYLU4R.js → chunk-GKG27ZGB.js} +10 -10
  691. package/dist/esm/{chunk-A5CFFQUV.js → chunk-GT74YHJR.js} +2 -2
  692. package/dist/esm/chunk-HSAGEBXJ.js +16 -0
  693. package/dist/esm/chunk-HSAGEBXJ.js.map +1 -0
  694. package/dist/esm/{chunk-RKLWSV24.js → chunk-IQ3BAWVV.js} +2 -2
  695. package/dist/esm/{chunk-T3FCCMU6.js → chunk-M7YQE7I2.js} +3 -3
  696. package/dist/esm/{chunk-VRFQFDSM.js → chunk-MJMNQNQL.js} +2 -2
  697. package/dist/esm/{chunk-YMSNW2SU.js → chunk-MVVAEPGR.js} +2 -2
  698. package/dist/esm/{chunk-MB7ZI64O.js → chunk-NHYC66BI.js} +8 -8
  699. package/dist/esm/{chunk-MDQEA2US.js → chunk-OCULYA2R.js} +2 -2
  700. package/dist/esm/{chunk-ZTYRQOCO.js → chunk-OV5MNKPH.js} +2 -2
  701. package/dist/esm/chunk-QMAVALRZ.js +97 -0
  702. package/dist/esm/chunk-QMAVALRZ.js.map +1 -0
  703. package/dist/esm/{chunk-S46LW2P7.js → chunk-RDXHEDJT.js} +2 -2
  704. package/dist/esm/{chunk-D6STNZ2L.js → chunk-RE676AIN.js} +16 -1
  705. package/dist/esm/chunk-RE676AIN.js.map +1 -0
  706. package/dist/esm/{chunk-FRQSMPPK.js → chunk-RYEA7EL2.js} +4 -4
  707. package/dist/esm/chunk-RYEA7EL2.js.map +1 -0
  708. package/dist/esm/{chunk-SUBXSJXS.js → chunk-TIIWZOBY.js} +5 -5
  709. package/dist/esm/{chunk-YUFYGSSY.js → chunk-TR2QAQEW.js} +2 -2
  710. package/dist/esm/chunk-TR2QAQEW.js.map +1 -0
  711. package/dist/esm/{chunk-4BHU7SPZ.js → chunk-VX3VWWYW.js} +1 -1
  712. package/dist/esm/{chunk-4BHU7SPZ.js.map → chunk-VX3VWWYW.js.map} +1 -1
  713. package/dist/esm/chunk-WFYXNKCJ.js +20 -0
  714. package/dist/esm/chunk-WFYXNKCJ.js.map +1 -0
  715. package/dist/esm/{chunk-ZJVWC666.js → chunk-WMHUZEL2.js} +2 -2
  716. package/dist/esm/chunk-XQUENGL4.js +29 -0
  717. package/dist/esm/chunk-XQUENGL4.js.map +1 -0
  718. package/dist/esm/{chunk-HZC52S2R.js → chunk-XSDHB2WQ.js} +2 -2
  719. package/dist/esm/container/controllers.js +6 -5
  720. package/dist/esm/container/index.js +26 -23
  721. package/dist/esm/container/services.js +18 -15
  722. package/dist/esm/controllers/a2a.controller.js +2 -2
  723. package/dist/esm/controllers/api/workflow.api.controller.js +1 -1
  724. package/dist/esm/controllers/index.js +6 -6
  725. package/dist/esm/controllers/query.controller.js +3 -2
  726. package/dist/esm/index.js +43 -40
  727. package/dist/esm/index.js.map +1 -1
  728. package/dist/esm/middlewares/error.middleware.js +2 -2
  729. package/dist/esm/modules/a2a/a2a.module.d.ts +1 -1
  730. package/dist/esm/modules/a2a/a2a.module.js +3 -3
  731. package/dist/esm/modules/index.js +9 -9
  732. package/dist/esm/modules/mcp/mcp.module.d.ts +1 -1
  733. package/dist/esm/modules/mcp/mcp.module.js +2 -2
  734. package/dist/esm/modules/memory/base.memory.d.ts +6 -1
  735. package/dist/esm/routes/a2a.routes.js +29 -26
  736. package/dist/esm/routes/api/agent.routes.js +27 -24
  737. package/dist/esm/routes/api/intent.routes.js +27 -24
  738. package/dist/esm/routes/api/model.routes.js +27 -24
  739. package/dist/esm/routes/api/threads.routes.js +27 -24
  740. package/dist/esm/routes/api/workflow.routes.js +27 -24
  741. package/dist/esm/routes/api.routes.js +32 -29
  742. package/dist/esm/routes/index.js +38 -35
  743. package/dist/esm/routes/intent.routes.js +27 -24
  744. package/dist/esm/routes/query.routes.js +27 -24
  745. package/dist/esm/services/a2a.service.js +2 -2
  746. package/dist/esm/services/index.js +16 -13
  747. package/dist/esm/services/intents/aggregate.service.d.ts +9 -14
  748. package/dist/esm/services/intents/aggregate.service.js +2 -3
  749. package/dist/esm/services/intents/fulfill.service.d.ts +5 -4
  750. package/dist/esm/services/intents/fulfill.service.js +7 -6
  751. package/dist/esm/services/intents/multi-trigger.service.d.ts +3 -3
  752. package/dist/esm/services/intents/multi-trigger.service.js +3 -2
  753. package/dist/esm/services/intents/single-trigger.service.d.ts +3 -3
  754. package/dist/esm/services/intents/single-trigger.service.js +3 -2
  755. package/dist/esm/services/intents/trigger.service.d.ts +3 -3
  756. package/dist/esm/services/intents/trigger.service.js +6 -4
  757. package/dist/esm/services/prompts/aggregate.d.ts +7 -0
  758. package/dist/esm/services/prompts/aggregate.js +7 -0
  759. package/dist/esm/services/prompts/fulfill.d.ts +7 -0
  760. package/dist/esm/services/prompts/fulfill.js +7 -0
  761. package/dist/esm/services/prompts/generate-title.d.ts +7 -0
  762. package/dist/esm/services/prompts/generate-title.js +7 -0
  763. package/dist/esm/services/prompts/multi-trigger.d.ts +7 -0
  764. package/dist/esm/services/prompts/multi-trigger.js +7 -0
  765. package/dist/esm/services/prompts/multi-trigger.js.map +1 -0
  766. package/dist/esm/services/prompts/single-trigger.d.ts +7 -0
  767. package/dist/esm/services/prompts/single-trigger.js +7 -0
  768. package/dist/esm/services/prompts/single-trigger.js.map +1 -0
  769. package/dist/esm/services/prompts/tool-select.d.ts +7 -0
  770. package/dist/esm/services/prompts/tool-select.js +7 -0
  771. package/dist/esm/services/prompts/tool-select.js.map +1 -0
  772. package/dist/esm/services/query.service.d.ts +1 -0
  773. package/dist/esm/services/query.service.js +4 -4
  774. package/dist/esm/types/memory.d.ts +11 -1
  775. package/dist/esm/types/memory.js +1 -1
  776. package/dist/esm/utils/logger.d.ts +2 -1
  777. package/dist/esm/utils/logger.js +3 -1
  778. package/package.json +1 -1
  779. package/dist/esm/chunk-5IIF5O4A.js.map +0 -1
  780. package/dist/esm/chunk-7BH6AYP7.js.map +0 -1
  781. package/dist/esm/chunk-CC6DWPHZ.js.map +0 -1
  782. package/dist/esm/chunk-D6STNZ2L.js.map +0 -1
  783. package/dist/esm/chunk-FISBL7OM.js.map +0 -1
  784. package/dist/esm/chunk-FRQSMPPK.js.map +0 -1
  785. package/dist/esm/chunk-JXGQVFCO.js.map +0 -1
  786. package/dist/esm/chunk-MC5KX7MQ.js.map +0 -1
  787. package/dist/esm/chunk-O3MPFL5J.js +0 -47
  788. package/dist/esm/chunk-O3MPFL5J.js.map +0 -1
  789. package/dist/esm/chunk-PVWOU6LA.js.map +0 -1
  790. package/dist/esm/chunk-QQZ5ANSD.js.map +0 -1
  791. package/dist/esm/chunk-VUMI4XOY.js.map +0 -1
  792. package/dist/esm/chunk-YUFYGSSY.js.map +0 -1
  793. package/dist/esm/chunk-ZNZZZ4NN.js.map +0 -1
  794. package/dist/esm/services/utils/aggregate.common.d.ts +0 -10
  795. package/dist/esm/services/utils/aggregate.common.js +0 -9
  796. package/dist/esm/services/utils/fulfill.common.d.ts +0 -6
  797. package/dist/esm/services/utils/fulfill.common.js +0 -7
  798. package/dist/esm/services/utils/query.common.d.ts +0 -9
  799. package/dist/esm/services/utils/query.common.js +0 -8
  800. /package/dist/esm/{chunk-LC5XQGWK.js.map → chunk-BQO572DY.js.map} +0 -0
  801. /package/dist/esm/{chunk-RAHOYMKY.js.map → chunk-BYGS3GS6.js.map} +0 -0
  802. /package/dist/esm/{chunk-HNKYLU4R.js.map → chunk-GKG27ZGB.js.map} +0 -0
  803. /package/dist/esm/{chunk-A5CFFQUV.js.map → chunk-GT74YHJR.js.map} +0 -0
  804. /package/dist/esm/{chunk-RKLWSV24.js.map → chunk-IQ3BAWVV.js.map} +0 -0
  805. /package/dist/esm/{chunk-T3FCCMU6.js.map → chunk-M7YQE7I2.js.map} +0 -0
  806. /package/dist/esm/{chunk-VRFQFDSM.js.map → chunk-MJMNQNQL.js.map} +0 -0
  807. /package/dist/esm/{chunk-YMSNW2SU.js.map → chunk-MVVAEPGR.js.map} +0 -0
  808. /package/dist/esm/{chunk-MB7ZI64O.js.map → chunk-NHYC66BI.js.map} +0 -0
  809. /package/dist/esm/{chunk-MDQEA2US.js.map → chunk-OCULYA2R.js.map} +0 -0
  810. /package/dist/esm/{chunk-ZTYRQOCO.js.map → chunk-OV5MNKPH.js.map} +0 -0
  811. /package/dist/esm/{chunk-S46LW2P7.js.map → chunk-RDXHEDJT.js.map} +0 -0
  812. /package/dist/esm/{chunk-SUBXSJXS.js.map → chunk-TIIWZOBY.js.map} +0 -0
  813. /package/dist/esm/{chunk-ZJVWC666.js.map → chunk-WMHUZEL2.js.map} +0 -0
  814. /package/dist/esm/{chunk-HZC52S2R.js.map → chunk-XSDHB2WQ.js.map} +0 -0
  815. /package/dist/esm/services/{utils/aggregate.common.js.map → prompts/aggregate.js.map} +0 -0
  816. /package/dist/esm/services/{utils/fulfill.common.js.map → prompts/fulfill.js.map} +0 -0
  817. /package/dist/esm/services/{utils/query.common.js.map → prompts/generate-title.js.map} +0 -0
@@ -1,5 +1,6 @@
1
- // src/services/utils/fulfill.common.ts
2
- async function createFulfillPrompt(agentMemory, intent) {
1
+ // src/services/prompts/fulfill.ts
2
+ async function fulfillPrompt(memoryModule, intent) {
3
+ const agentMemory = memoryModule.getAgentMemory();
3
4
  const agentPrompt = agentMemory ? await agentMemory.getAgentPrompt() : "";
4
5
  return `
5
6
  Today is ${(/* @__PURE__ */ new Date()).toLocaleDateString()}.
@@ -44,8 +45,9 @@ ${agentPrompt}
44
45
  ${intent?.prompt || ""}
45
46
  `.trim();
46
47
  }
48
+ var fulfill_default = fulfillPrompt;
47
49
 
48
50
  export {
49
- createFulfillPrompt
51
+ fulfill_default
50
52
  };
51
- //# sourceMappingURL=chunk-7BH6AYP7.js.map
53
+ //# sourceMappingURL=chunk-22ELL7WG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/prompts/fulfill.ts"],"sourcesContent":["import type { MemoryModule } from \"@/modules\";\nimport type { Intent } from \"@/types/memory\";\n\nasync function fulfillPrompt(memoryModule: MemoryModule, intent?: Intent) {\n\tconst agentMemory = memoryModule.getAgentMemory();\n\tconst agentPrompt = agentMemory ? await agentMemory.getAgentPrompt() : \"\";\n\n\treturn `\nToday is ${new Date().toLocaleDateString()}.\nYou are a highly sophisticated automated agent that can answer user queries by utilizing various tools and resources.\n\nThere is a selection of tools that let you perform actions or retrieve helpful context to answer the user's question.\nYou can call tools repeatedly to take actions or gather as much context as needed until you have completed the task fully.\n\nDon't give up unless you are sure the request cannot be fulfilled with the tools you have.\nIt's YOUR RESPONSIBILITY to make sure that you have done all you can to collect necessary context.\n\nIf you are not sure about content or context pertaining to the user's request, use your tools to read data and gather the relevant information: do NOT guess or make up an answer.\nBe THOROUGH when gathering information. Make sure you have the FULL picture before replying. Use additional tool calls or clarifying questions as needed.\n\nDon't try to answer the user's question directly.\nFirst break down the user's request into smaller concepts and think about the kinds of tools and queries you need to grasp each concept.\n\nThere are two <tool_type> for tools: MCP_Tool and A2A_Tool.\nThe tool type can be identified by the presence of \"[Bot Called <tool_type> with args <tool_args>]\" at the beginning of the tool result message.\nAfter executing a tool, a final response message must be written.\n\nRefer to the usage instructions below for each <tool_type>.\n\n<MCP_Tool>\n Use MCP tools through tools.\n MCP tool names are structured as follows:\n {MCP_NAME}_{TOOL_NAME}\n For example, tool names for the \"notionApi\" mcp would be:\n notionApi_API-post-search\n\n Separate rules can be specified under <{MCP_NAME}> for each MCP_NAME.\n</MCP_Tool>\n\n<A2A_Tool>\n A2A_Tool is a tool that sends queries to Agents with different information than mine and receives answers. The Agent that provided the answer must be clearly indicated.\n Results from A2A_Tool are text generated after thorough consideration by the requested Agent, and are complete outputs that cannot be further developed.\n There is no need to supplement the content with the same question or use new tools.\n</A2A_Tool>\n\n${agentPrompt}\n\n${intent?.prompt || \"\"}\n\t`.trim();\n}\n\nexport default fulfillPrompt;\n"],"mappings":";AAGA,eAAe,cAAc,cAA4B,QAAiB;AACzE,QAAM,cAAc,aAAa,eAAe;AAChD,QAAM,cAAc,cAAc,MAAM,YAAY,eAAe,IAAI;AAEvE,SAAO;AAAA,YACG,oBAAI,KAAK,GAAE,mBAAmB,CAAC;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,EAqCxC,WAAW;AAAA;AAAA,EAEX,QAAQ,UAAU,EAAE;AAAA,GACnB,KAAK;AACR;AAEA,IAAO,kBAAQ;","names":[]}
@@ -1,22 +1,21 @@
1
1
  import {
2
- createFulfillPrompt
3
- } from "./chunk-7BH6AYP7.js";
2
+ tool_select_default
3
+ } from "./chunk-5Z3SX3AE.js";
4
4
  import {
5
5
  AggregateService
6
- } from "./chunk-MC5KX7MQ.js";
6
+ } from "./chunk-QMAVALRZ.js";
7
+ import {
8
+ fulfill_default
9
+ } from "./chunk-22ELL7WG.js";
7
10
  import {
8
11
  getManifest
9
12
  } from "./chunk-2J2TQRP4.js";
10
13
  import {
11
14
  loggers
12
- } from "./chunk-VUMI4XOY.js";
15
+ } from "./chunk-GHUEA7V5.js";
13
16
 
14
17
  // src/services/intents/fulfill.service.ts
15
18
  import { randomUUID } from "crypto";
16
- function isMultiIntentDisabled() {
17
- const value = process.env.DISABLE_MULTI_INTENTS;
18
- return value === "true" || value === "1";
19
- }
20
19
  var IntentFulfillService = class {
21
20
  modelModule;
22
21
  memoryModule;
@@ -30,7 +29,7 @@ var IntentFulfillService = class {
30
29
  this.a2aModule = a2aModule;
31
30
  this.mcpModule = mcpModule;
32
31
  this.onIntentFallback = onIntentFallback;
33
- this.aggregateService = new AggregateService(modelModule);
32
+ this.aggregateService = new AggregateService(modelModule, memoryModule);
34
33
  }
35
34
  async addToThreadMessages(thread, params) {
36
35
  try {
@@ -66,22 +65,22 @@ var IntentFulfillService = class {
66
65
  * @returns AsyncGenerator yielding StreamEvent objects
67
66
  */
68
67
  async *intentFulfilling(query, thread, intent) {
69
- const agentMemory = this.memoryModule.getAgentMemory();
70
- const fulfillPrompt = await createFulfillPrompt(agentMemory, intent);
68
+ const prompt = await fulfill_default(this.memoryModule, intent);
71
69
  const modelInstance = this.modelModule.getModel();
72
70
  const modelOptions = this.modelModule.getModelOptions();
73
71
  const messages = modelInstance.generateMessages({
74
72
  query,
75
73
  thread,
76
- systemPrompt: fulfillPrompt.trim()
74
+ systemPrompt: prompt.trim()
77
75
  });
78
76
  loggers.intent.debug("Intent fulfillment start", {
79
77
  threadId: thread.threadId,
80
78
  messages
81
79
  });
82
80
  const tools = [];
83
- this.mcpModule && tools.push(...this.mcpModule.getTools());
84
- this.a2aModule && tools.push(...await this.a2aModule.getTools());
81
+ const toolPrompt = await tool_select_default(this.memoryModule);
82
+ this.mcpModule && tools.push(...this.mcpModule.getTools(toolPrompt));
83
+ this.a2aModule && tools.push(...await this.a2aModule.getTools(toolPrompt));
85
84
  const processList = [];
86
85
  while (true) {
87
86
  const functions = modelInstance.convertToolsToFunctions(tools);
@@ -204,23 +203,25 @@ var IntentFulfillService = class {
204
203
  * Workflow:
205
204
  * 1. Process each intent sequentially, collecting results
206
205
  * 2. Yield thinking_process events for progress visibility
207
- * 3. Use RewriteService to determine if results need unification
208
- * 4. Stream the final (possibly rewritten) response
206
+ * 3. Use AggregateService to unify results if needsAggregation is true
207
+ * 4. Stream the final (possibly aggregated) response
209
208
  *
210
209
  * @param intents - Array of triggered intents to process
211
210
  * @param thread - The thread history
212
- * @param originalQuery - The user's original query (for rewrite context)
211
+ * @param originalQuery - The user's original query (for aggregate context)
212
+ * @param needsAggregation - Whether the results need to be aggregated
213
213
  * @returns AsyncGenerator yielding StreamEvent objects
214
214
  */
215
- async *intentFulfill(intents, thread, originalQuery) {
215
+ async *intentFulfill(intents, thread, originalQuery, needsAggregation) {
216
216
  const streamStartTime = Date.now();
217
217
  loggers.intentStream.info("Stream session started", {
218
218
  threadId: thread.threadId,
219
219
  intentCount: intents.length,
220
+ needsAggregation,
220
221
  startTime: new Date(streamStartTime).toISOString()
221
222
  });
222
223
  let finalResponseText = "";
223
- if (isMultiIntentDisabled() || intents.length <= 1) {
224
+ if (intents.length <= 1) {
224
225
  const triggeredIntent = intents[0];
225
226
  if (!triggeredIntent) {
226
227
  return;
@@ -247,6 +248,49 @@ var IntentFulfillService = class {
247
248
  }
248
249
  yield event;
249
250
  }
251
+ } else if (!needsAggregation) {
252
+ for (let i = 0; i < intents.length; i++) {
253
+ const triggeredIntent = intents[i];
254
+ const { subquery = "", intent, actionPlan } = triggeredIntent;
255
+ loggers.intent.info(`Process query: ${subquery}, ${intent?.name}`);
256
+ loggers.intent.info(`Action plan: ${actionPlan}`);
257
+ const isLastIntent = i === intents.length - 1;
258
+ yield {
259
+ event: "thinking_process",
260
+ data: {
261
+ title: `[${getManifest().name}] ${subquery}`,
262
+ description: actionPlan || ""
263
+ }
264
+ };
265
+ const stream = this.getIntentStream(triggeredIntent, thread);
266
+ if (!stream) {
267
+ continue;
268
+ }
269
+ if (isLastIntent) {
270
+ for await (const event of stream) {
271
+ if (event.event === "text_chunk" && event.data.delta) {
272
+ finalResponseText += event.data.delta;
273
+ }
274
+ yield event;
275
+ }
276
+ } else {
277
+ let responseText = "";
278
+ for await (const event of stream) {
279
+ if (event.event === "text_chunk" && event.data.delta) {
280
+ responseText += event.data.delta;
281
+ } else if (event.event === "thinking_process") {
282
+ yield event;
283
+ }
284
+ }
285
+ thread.messages.push({
286
+ messageId: randomUUID(),
287
+ role: "MODEL" /* MODEL */,
288
+ timestamp: Date.now(),
289
+ content: { type: "text", parts: [responseText] },
290
+ metadata: { isThinking: true }
291
+ });
292
+ }
293
+ }
250
294
  } else {
251
295
  const fulfillmentResults = [];
252
296
  for (let i = 0; i < intents.length; i++) {
@@ -290,7 +334,7 @@ var IntentFulfillService = class {
290
334
  response: responseText
291
335
  });
292
336
  }
293
- const aggregateStream = this.aggregateService.aggregateIfNeeded(
337
+ const aggregateStream = this.aggregateService.aggregate(
294
338
  originalQuery,
295
339
  fulfillmentResults
296
340
  );
@@ -318,4 +362,4 @@ var IntentFulfillService = class {
318
362
  export {
319
363
  IntentFulfillService
320
364
  };
321
- //# sourceMappingURL=chunk-FISBL7OM.js.map
365
+ //# sourceMappingURL=chunk-2RLUCOJF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/intents/fulfill.service.ts"],"sourcesContent":["import { randomUUID } from \"node:crypto\";\nimport { getManifest } from \"@/config/manifest\";\nimport type {\n\tA2AModule,\n\tMCPModule,\n\tMemoryModule,\n\tModelModule,\n} from \"@/modules\";\nimport type { OnIntentFallback } from \"@/types/agent\";\nimport { CONNECTOR_PROTOCOL_TYPE, type ConnectorTool } from \"@/types/connector\";\nimport {\n\ttype FulfillmentResult,\n\ttype Intent,\n\ttype MessageObject,\n\tMessageRole,\n\ttype ThreadObject,\n\ttype TriggeredIntent,\n} from \"@/types/memory\";\nimport type { StreamEvent } from \"@/types/stream\";\nimport { loggers } from \"@/utils/logger\";\nimport fulfillPrompt from \"../prompts/fulfill\";\nimport toolSelectPrompt from \"../prompts/tool-select\";\nimport { AggregateService } from \"./aggregate.service\";\n\nexport class IntentFulfillService {\n\tprivate modelModule: ModelModule;\n\tprivate memoryModule: MemoryModule;\n\tprivate a2aModule?: A2AModule;\n\tprivate mcpModule?: MCPModule;\n\tprivate onIntentFallback?: OnIntentFallback;\n\tprivate aggregateService: AggregateService;\n\n\tconstructor(\n\t\tmodelModule: ModelModule,\n\t\tmemoryModule: MemoryModule,\n\t\ta2aModule?: A2AModule,\n\t\tmcpModule?: MCPModule,\n\t\tonIntentFallback?: OnIntentFallback,\n\t) {\n\t\tthis.modelModule = modelModule;\n\t\tthis.memoryModule = memoryModule;\n\t\tthis.a2aModule = a2aModule;\n\t\tthis.mcpModule = mcpModule;\n\t\tthis.onIntentFallback = onIntentFallback;\n\t\tthis.aggregateService = new AggregateService(modelModule, memoryModule);\n\t}\n\n\tprivate async addToThreadMessages(\n\t\tthread: ThreadObject,\n\t\tparams: {\n\t\t\trole: MessageRole;\n\t\t\tcontent: string;\n\t\t\tmetadata?: Record<string, unknown>;\n\t\t},\n\t) {\n\t\ttry {\n\t\t\tconst threadMemory = this.memoryModule.getThreadMemory();\n\t\t\tconst { userId, threadId } = thread;\n\t\t\tconst newMessage: MessageObject = {\n\t\t\t\tmessageId: randomUUID(),\n\t\t\t\trole: params.role,\n\t\t\t\ttimestamp: Date.now(),\n\t\t\t\tcontent: { type: \"text\", parts: [params.content] },\n\t\t\t\tmetadata: params.metadata,\n\t\t\t};\n\t\t\tthread.messages.push(newMessage);\n\t\t\tawait threadMemory?.addMessagesToThread(userId, threadId, [newMessage]);\n\t\t} catch (error) {\n\t\t\tloggers.intentStream.error(\"Error adding message to thread\", error);\n\t\t}\n\t}\n\n\t/**\n\t * Fulfills the detected intent by generating a streaming response.\n\t *\n\t * Manages the complete inference loop including:\n\t * - Loading prompts and conversation history\n\t * - Collecting available tools from modules\n\t * - Executing model inference with tool support\n\t * - Processing tool calls iteratively until completion\n\t * - Streaming results as Server-Sent Events\n\t *\n\t * @param query - The user's input query\n\t * @param threadId - Thread identifier for context\n\t * @param thread - Previous conversation history\n\t * @param intent - Optional detected intent with custom prompt\n\t * @returns AsyncGenerator yielding StreamEvent objects\n\t */\n\tprivate async *intentFulfilling(\n\t\tquery: string,\n\t\tthread: ThreadObject,\n\t\tintent?: Intent,\n\t): AsyncGenerator<StreamEvent> {\n\t\tconst prompt = await fulfillPrompt(this.memoryModule, intent);\n\n\t\tconst modelInstance = this.modelModule.getModel();\n\t\tconst modelOptions = this.modelModule.getModelOptions();\n\t\tconst messages = modelInstance.generateMessages({\n\t\t\tquery,\n\t\t\tthread,\n\t\t\tsystemPrompt: prompt.trim(),\n\t\t});\n\n\t\tloggers.intent.debug(\"Intent fulfillment start\", {\n\t\t\tthreadId: thread.threadId,\n\t\t\tmessages,\n\t\t});\n\n\t\tconst tools: ConnectorTool[] = [];\n\t\tconst toolPrompt = await toolSelectPrompt(this.memoryModule);\n\t\tthis.mcpModule && tools.push(...this.mcpModule.getTools(toolPrompt));\n\t\tthis.a2aModule &&\n\t\t\ttools.push(...(await this.a2aModule.getTools(toolPrompt)));\n\n\t\tconst processList: string[] = [];\n\n\t\twhile (true) {\n\t\t\tconst functions = modelInstance.convertToolsToFunctions(tools);\n\t\t\tconst responseStream = await modelInstance.fetchStreamWithContextMessage(\n\t\t\t\tmessages,\n\t\t\t\tfunctions,\n\t\t\t\tmodelOptions,\n\t\t\t);\n\n\t\t\tconst assembledToolCalls: {\n\t\t\t\tid: string;\n\t\t\t\ttype: \"function\";\n\t\t\t\tfunction: { name: string; arguments: string };\n\t\t\t}[] = [];\n\n\t\t\tfor await (const chunk of responseStream) {\n\t\t\t\tconst delta = chunk.delta;\n\t\t\t\tif (delta?.tool_calls) {\n\t\t\t\t\tfor (const { index, id, function: func } of delta.tool_calls) {\n\t\t\t\t\t\tassembledToolCalls[index] ??= {\n\t\t\t\t\t\t\tid: \"\",\n\t\t\t\t\t\t\ttype: \"function\",\n\t\t\t\t\t\t\tfunction: { name: \"\", arguments: \"\" },\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tif (id) assembledToolCalls[index].id = id;\n\t\t\t\t\t\tif (func?.name) assembledToolCalls[index].function.name = func.name;\n\t\t\t\t\t\tif (func?.arguments)\n\t\t\t\t\t\t\tassembledToolCalls[index].function.arguments += func.arguments;\n\t\t\t\t\t}\n\t\t\t\t} else if (chunk.delta?.content) {\n\t\t\t\t\tyield {\n\t\t\t\t\t\tevent: \"text_chunk\",\n\t\t\t\t\t\tdata: { delta: chunk.delta.content },\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tloggers.intentStream.debug(\"assembledToolCalls\", {\n\t\t\t\tthreadId: thread.threadId,\n\t\t\t\tassembledToolCalls,\n\t\t\t});\n\n\t\t\tif (assembledToolCalls.length > 0) {\n\t\t\t\tfor (const toolCall of assembledToolCalls) {\n\t\t\t\t\tconst toolName = toolCall.function.name;\n\t\t\t\t\tlet selectedTool: ConnectorTool | undefined;\n\t\t\t\t\tfor (const [index, toolTmp] of tools.entries()) {\n\t\t\t\t\t\tif (toolTmp.toolName === toolName) {\n\t\t\t\t\t\t\tif (toolTmp.protocol === CONNECTOR_PROTOCOL_TYPE.A2A) {\n\t\t\t\t\t\t\t\t// remove used tool to prevent infinite loop\n\t\t\t\t\t\t\t\tselectedTool = tools.splice(index, 1)[0];\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tselectedTool = toolTmp;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!selectedTool) {\n\t\t\t\t\t\t// it cannot be happened...\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst toolArgs = JSON.parse(toolCall.function.arguments);\n\t\t\t\t\tconst thinkData = {\n\t\t\t\t\t\ttitle: `[${getManifest().name}] ${selectedTool.protocol} 실행: ${toolName}`,\n\t\t\t\t\t\tdescription: `${toolArgs.thinking_text || \"\"}`,\n\t\t\t\t\t};\n\t\t\t\t\tyield {\n\t\t\t\t\t\tevent: \"thinking_process\",\n\t\t\t\t\t\tdata: thinkData,\n\t\t\t\t\t};\n\n\t\t\t\t\tlet toolResult = \"\";\n\t\t\t\t\tif (\n\t\t\t\t\t\tthis.mcpModule &&\n\t\t\t\t\t\tselectedTool.protocol === CONNECTOR_PROTOCOL_TYPE.MCP\n\t\t\t\t\t) {\n\t\t\t\t\t\tloggers.intent.info(\"MCP tool call\", { toolName, toolArgs });\n\t\t\t\t\t\ttoolResult = await this.mcpModule.useTool(selectedTool, toolArgs);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\tthis.a2aModule &&\n\t\t\t\t\t\tselectedTool.protocol === CONNECTOR_PROTOCOL_TYPE.A2A\n\t\t\t\t\t) {\n\t\t\t\t\t\tloggers.intent.info(\"A2A tool call\", { toolName });\n\t\t\t\t\t\tconst a2aStream = this.a2aModule.useTool(\n\t\t\t\t\t\t\tselectedTool,\n\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\tthread.threadId,\n\t\t\t\t\t\t);\n\t\t\t\t\t\t// yield intermediate events and get final result\n\t\t\t\t\t\tlet result = await a2aStream.next();\n\t\t\t\t\t\twhile (!result.done) {\n\t\t\t\t\t\t\tif (result.value.event === \"thinking_process\") {\n\t\t\t\t\t\t\t\tyield result.value;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tresult = await a2aStream.next();\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttoolResult = result.value;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Unrecognized tool type. It cannot be happened...\n\t\t\t\t\t\tloggers.intent.warn(\n\t\t\t\t\t\t\t`Unrecognized tool type: ${selectedTool.protocol}`,\n\t\t\t\t\t\t);\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tloggers.intent.debug(\"Tool Result\", { toolResult });\n\n\t\t\t\t\tprocessList.push(toolResult);\n\t\t\t\t\tmodelInstance.appendMessages(messages, toolResult);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\tloggers.intent.debug(\"Intent fulfillment completed\", {\n\t\t\tthreadId: thread.threadId,\n\t\t\ttoolCallsExecuted: processList.length,\n\t\t\tintentName: intent?.name,\n\t\t});\n\t}\n\n\t/**\n\t * Returns the appropriate stream for a triggered intent.\n\t * Uses fallback handler if no intent matched and fallback is configured.\n\t */\n\tprivate getIntentStream(\n\t\ttriggeredIntent: TriggeredIntent,\n\t\tthread: ThreadObject,\n\t): AsyncGenerator<StreamEvent> | undefined {\n\t\tconst { subquery = \"\", intent } = triggeredIntent;\n\n\t\tif (!intent && this.onIntentFallback) {\n\t\t\tloggers.intent.info(\"No intent matched, calling fallback handler\");\n\t\t\tconst fallbackStream = this.onIntentFallback({\n\t\t\t\ttriggeredIntent,\n\t\t\t\tthread,\n\t\t\t});\n\t\t\tif (fallbackStream !== undefined) {\n\t\t\t\treturn fallbackStream;\n\t\t\t}\n\t\t}\n\n\t\treturn this.intentFulfilling(subquery, thread, intent);\n\t}\n\n\t/**\n\t * Processes all triggered intents and generates a unified response.\n\t *\n\t * Workflow:\n\t * 1. Process each intent sequentially, collecting results\n\t * 2. Yield thinking_process events for progress visibility\n\t * 3. Use AggregateService to unify results if needsAggregation is true\n\t * 4. Stream the final (possibly aggregated) response\n\t *\n\t * @param intents - Array of triggered intents to process\n\t * @param thread - The thread history\n\t * @param originalQuery - The user's original query (for aggregate context)\n\t * @param needsAggregation - Whether the results need to be aggregated\n\t * @returns AsyncGenerator yielding StreamEvent objects\n\t */\n\tpublic async *intentFulfill(\n\t\tintents: Array<TriggeredIntent>,\n\t\tthread: ThreadObject,\n\t\toriginalQuery: string,\n\t\tneedsAggregation: boolean,\n\t): AsyncGenerator<StreamEvent> {\n\t\tconst streamStartTime = Date.now();\n\t\tloggers.intentStream.info(\"Stream session started\", {\n\t\t\tthreadId: thread.threadId,\n\t\t\tintentCount: intents.length,\n\t\t\tneedsAggregation,\n\t\t\tstartTime: new Date(streamStartTime).toISOString(),\n\t\t});\n\n\t\tlet finalResponseText = \"\";\n\n\t\tif (intents.length <= 1) {\n\t\t\t// Single intent: stream response directly\n\t\t\tconst triggeredIntent = intents[0];\n\t\t\tif (!triggeredIntent) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { subquery = \"\", intent, actionPlan } = triggeredIntent;\n\t\t\tloggers.intent.info(\n\t\t\t\t`Process single intent: ${subquery}, ${intent?.name}`,\n\t\t\t);\n\t\t\tloggers.intent.info(`Action plan: ${actionPlan}`);\n\n\t\t\t// Yield thinking_process for progress visibility\n\t\t\tyield {\n\t\t\t\tevent: \"thinking_process\",\n\t\t\t\tdata: {\n\t\t\t\t\ttitle: `[${getManifest().name}] ${subquery}`,\n\t\t\t\t\tdescription: actionPlan || \"\",\n\t\t\t\t},\n\t\t\t};\n\n\t\t\t// Get the stream for this intent\n\t\t\tconst stream = this.getIntentStream(triggeredIntent, thread);\n\t\t\tif (!stream) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Stream response directly\n\t\t\tfor await (const event of stream) {\n\t\t\t\tif (event.event === \"text_chunk\" && event.data.delta) {\n\t\t\t\t\tfinalResponseText += event.data.delta;\n\t\t\t\t}\n\t\t\t\tyield event;\n\t\t\t}\n\t\t} else if (!needsAggregation) {\n\t\t\t// Multiple intents but no aggregation needed: collect intermediate results, stream only last\n\t\t\tfor (let i = 0; i < intents.length; i++) {\n\t\t\t\tconst triggeredIntent = intents[i];\n\t\t\t\tconst { subquery = \"\", intent, actionPlan } = triggeredIntent;\n\t\t\t\tloggers.intent.info(`Process query: ${subquery}, ${intent?.name}`);\n\t\t\t\tloggers.intent.info(`Action plan: ${actionPlan}`);\n\n\t\t\t\tconst isLastIntent = i === intents.length - 1;\n\n\t\t\t\t// Yield thinking_process for progress visibility\n\t\t\t\tyield {\n\t\t\t\t\tevent: \"thinking_process\",\n\t\t\t\t\tdata: {\n\t\t\t\t\t\ttitle: `[${getManifest().name}] ${subquery}`,\n\t\t\t\t\t\tdescription: actionPlan || \"\",\n\t\t\t\t\t},\n\t\t\t\t};\n\n\t\t\t\t// Get the stream for this intent\n\t\t\t\tconst stream = this.getIntentStream(triggeredIntent, thread);\n\t\t\t\tif (!stream) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif (isLastIntent) {\n\t\t\t\t\t// Stream last intent response directly\n\t\t\t\t\tfor await (const event of stream) {\n\t\t\t\t\t\tif (event.event === \"text_chunk\" && event.data.delta) {\n\t\t\t\t\t\t\tfinalResponseText += event.data.delta;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tyield event;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Collect intermediate results without streaming text_chunk\n\t\t\t\t\tlet responseText = \"\";\n\t\t\t\t\tfor await (const event of stream) {\n\t\t\t\t\t\tif (event.event === \"text_chunk\" && event.data.delta) {\n\t\t\t\t\t\t\tresponseText += event.data.delta;\n\t\t\t\t\t\t} else if (event.event === \"thinking_process\") {\n\t\t\t\t\t\t\t// Tool execution thinking_process events are yielded immediately\n\t\t\t\t\t\t\tyield event;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// Add intermediate result to thread context for next intent\n\t\t\t\t\tthread.messages.push({\n\t\t\t\t\t\tmessageId: randomUUID(),\n\t\t\t\t\t\trole: MessageRole.MODEL,\n\t\t\t\t\t\ttimestamp: Date.now(),\n\t\t\t\t\t\tcontent: { type: \"text\", parts: [responseText] },\n\t\t\t\t\t\tmetadata: { isThinking: true },\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\t// Multi-intent mode with aggregation: collect all results then aggregate\n\t\t\tconst fulfillmentResults: FulfillmentResult[] = [];\n\n\t\t\tfor (let i = 0; i < intents.length; i++) {\n\t\t\t\tconst triggeredIntent = intents[i];\n\t\t\t\tconst { subquery = \"\", intent, actionPlan } = triggeredIntent;\n\t\t\t\tloggers.intent.info(`Process query: ${subquery}, ${intent?.name}`);\n\t\t\t\tloggers.intent.info(`Action plan: ${actionPlan}`);\n\n\t\t\t\t// Add previous result to thread context for inference (not stored in memory)\n\t\t\t\tif (fulfillmentResults.length > 0) {\n\t\t\t\t\tconst lastResult = fulfillmentResults[fulfillmentResults.length - 1];\n\t\t\t\t\tthread.messages.push({\n\t\t\t\t\t\tmessageId: randomUUID(),\n\t\t\t\t\t\trole: MessageRole.MODEL,\n\t\t\t\t\t\ttimestamp: Date.now(),\n\t\t\t\t\t\tcontent: { type: \"text\", parts: [lastResult.response] },\n\t\t\t\t\t\tmetadata: { isThinking: true },\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\t// Yield thinking_process for progress visibility\n\t\t\t\tyield {\n\t\t\t\t\tevent: \"thinking_process\",\n\t\t\t\t\tdata: {\n\t\t\t\t\t\ttitle: `[${getManifest().name}] ${subquery}`,\n\t\t\t\t\t\tdescription: actionPlan || \"\",\n\t\t\t\t\t},\n\t\t\t\t};\n\n\t\t\t\t// Get the stream for this intent\n\t\t\t\tconst stream = this.getIntentStream(triggeredIntent, thread);\n\t\t\t\tif (!stream) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t// Collect response text (don't yield text_chunk yet)\n\t\t\t\tlet responseText = \"\";\n\t\t\t\tfor await (const event of stream) {\n\t\t\t\t\tif (event.event === \"text_chunk\" && event.data.delta) {\n\t\t\t\t\t\tresponseText += event.data.delta;\n\t\t\t\t\t} else if (event.event === \"thinking_process\") {\n\t\t\t\t\t\t// Tool execution thinking_process events are yielded immediately\n\t\t\t\t\t\tyield event;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tfulfillmentResults.push({\n\t\t\t\t\tsubquery,\n\t\t\t\t\tintent,\n\t\t\t\t\tactionPlan,\n\t\t\t\t\tresponse: responseText,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t// Aggregate step: generate unified response\n\t\t\tconst aggregateStream = this.aggregateService.aggregate(\n\t\t\t\toriginalQuery,\n\t\t\t\tfulfillmentResults,\n\t\t\t);\n\n\t\t\tfor await (const event of aggregateStream) {\n\t\t\t\tif (event.event === \"text_chunk\" && event.data.delta) {\n\t\t\t\t\tfinalResponseText += event.data.delta;\n\t\t\t\t}\n\t\t\t\tyield event;\n\t\t\t}\n\t\t}\n\n\t\t// Save final response to memory\n\t\tawait this.addToThreadMessages(thread, {\n\t\t\trole: MessageRole.MODEL,\n\t\t\tcontent: finalResponseText,\n\t\t});\n\n\t\tconst streamEndTime = Date.now();\n\t\tconst streamDuration = streamEndTime - streamStartTime;\n\n\t\tloggers.intentStream.info(\"Stream session completed\", {\n\t\t\tthreadId: thread.threadId,\n\t\t\tduration: `${streamDuration}ms`,\n\t\t\tendTime: new Date(streamEndTime).toISOString(),\n\t\t});\n\t}\n}\n"],"mappings":"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","names":[]}
@@ -0,0 +1,60 @@
1
+ // src/services/prompts/multi-trigger.ts
2
+ async function multiTriggerPrompt(memoryModule, intentList) {
3
+ const multiTriggerPrompt2 = await memoryModule?.getAgentMemory()?.getMultiTriggerPrompt?.() || `Instructions:
4
+ 1. **First, review the available intent list** to understand what intents are available and what each intent can handle
5
+ 2. **Identify which intents from the list are relevant** to the user's question
6
+ 3. **Decompose the question based on intent boundaries**:
7
+ - Prioritize splitting the query where each subquery can map to an intent from the available list
8
+ - If a portion of the query matches an available intent, create a subquery for it and set the intentName
9
+ - If a portion of the query does NOT match any available intent, still create a subquery for it but leave intentName empty/null
10
+ - Each subquery should be the minimal unit that represents a coherent request or action
11
+ - If the query maps to a single intent (or single action), keep it as one subquery
12
+ 4. For each subquery, provide a 2-3 sentence summary of what actions will be performed
13
+ 5. Maintain the logical sequence of the original question when splitting into subqueries
14
+ 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.
15
+ 7. Determine if the final response needs aggregation:
16
+ - Review all decomposed subqueries and their expected results
17
+ - Set needsAggregation to TRUE if: the results from multiple subqueries should be combined and synthesized into a single, unified response
18
+ - Set needsAggregation to FALSE if: the aggregation step is not required (e.g., only one subquery exists, OR the subqueries are independent and their individual results can be returned separately without combination)
19
+
20
+ Requirements:
21
+ - Prioritize using available intents when decomposing queries
22
+ - Use intent boundaries as the primary guide for splitting, but allow subqueries without matching intents when necessary
23
+ - Preserve the original meaning and context when splitting queries
24
+ - Set intentName only when there's a clear match with an available intent; leave it empty/null otherwise
25
+ - 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
26
+ - Set needsAggregation based on whether the user expects a unified combined answer or separate responses
27
+ `;
28
+ return `
29
+ Today is ${(/* @__PURE__ */ new Date()).toLocaleDateString()}.
30
+
31
+ ${multiTriggerPrompt2}
32
+
33
+ Output Format:
34
+ You MUST return the output in the following JSON format. Do not include any other text before or after the JSON:
35
+ {
36
+ "needsAggregation": <true or false>,
37
+ "subqueries": [
38
+ {
39
+ "subquery": "<subquery_1>",
40
+ "intentName": "<intent_name_1>",
41
+ "actionPlan": "<2-3 sentence description of what will be done for this subquery>"
42
+ },
43
+ {
44
+ "subquery": "<subquery_2>",
45
+ "intentName": "<intent_name_2>",
46
+ "actionPlan": "<2-3 sentence description of what will be done for this subquery>"
47
+ }
48
+ ]
49
+ }
50
+
51
+ Available intent list:
52
+ ${intentList}
53
+ `;
54
+ }
55
+ var multi_trigger_default = multiTriggerPrompt;
56
+
57
+ export {
58
+ multi_trigger_default
59
+ };
60
+ //# sourceMappingURL=chunk-3CR3ZB6L.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/prompts/multi-trigger.ts"],"sourcesContent":["import type { MemoryModule } from \"@/modules\";\n\nasync function multiTriggerPrompt(\n\tmemoryModule: MemoryModule,\n\tintentList: string,\n) {\n\tconst multiTriggerPrompt =\n\t\t(await memoryModule?.getAgentMemory()?.getMultiTriggerPrompt?.()) ||\n\t\t`Instructions:\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 - Review all decomposed subqueries and their expected results\n - Set needsAggregation to TRUE if: the results from multiple subqueries should be combined and synthesized into a single, unified response\n - Set needsAggregation to FALSE if: the aggregation step is not required (e.g., only one subquery exists, OR the subqueries are independent and their individual results can be returned separately without combination)\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\n\treturn `\nToday is ${new Date().toLocaleDateString()}.\n\n${multiTriggerPrompt}\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\nAvailable intent list:\n${intentList}\n`;\n}\n\nexport default multiTriggerPrompt;\n"],"mappings":";AAEA,eAAe,mBACd,cACA,YACC;AACD,QAAMA,sBACJ,MAAM,cAAc,eAAe,GAAG,wBAAwB,KAC/D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA0BD,SAAO;AAAA,YACG,oBAAI,KAAK,GAAE,mBAAmB,CAAC;AAAA;AAAA,EAExCA,mBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAqBlB,UAAU;AAAA;AAEZ;AAEA,IAAO,wBAAQ;","names":["multiTriggerPrompt"]}
@@ -0,0 +1,11 @@
1
+ // src/services/prompts/tool-select.ts
2
+ async function toolSelectPrompt(memoryModule) {
3
+ const toolSelectPrompt2 = await memoryModule?.getAgentMemory()?.getToolSelectPrompt?.() || "\uC0AC\uC6A9\uC790\uC758 \uC694\uCCAD\uC744 \uD574\uACB0\uD558\uAE30 \uC704\uD574 \uC774 \uB3C4\uAD6C\uB97C \uC120\uD0DD\uD55C \uAD6C\uCCB4\uC801\uC778 \uC774\uC720\uC640 \uBAA9\uC801 (Why & What). \uD55C\uB450\uC904 \uC815\uB3C4\uC758 \uBD84\uB7C9\uC73C\uB85C \uC785\uB825 \uC5B8\uC5B4\uC640 \uAC19\uC740 \uC5B8\uC5B4\uB85C \uC0DD\uC131\uD558\uBA70, \uC815\uC911\uD55C \uD45C\uD604\uC744 \uC0AC\uC6A9\uD55C\uB2E4.";
4
+ return toolSelectPrompt2;
5
+ }
6
+ var tool_select_default = toolSelectPrompt;
7
+
8
+ export {
9
+ tool_select_default
10
+ };
11
+ //# sourceMappingURL=chunk-5Z3SX3AE.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/prompts/tool-select.ts"],"sourcesContent":["import type { MemoryModule } from \"@/modules\";\n\nasync function toolSelectPrompt(memoryModule: MemoryModule) {\n\tconst toolSelectPrompt =\n\t\t(await memoryModule?.getAgentMemory()?.getToolSelectPrompt?.()) ||\n\t\t\"사용자의 요청을 해결하기 위해 이 도구를 선택한 구체적인 이유와 목적 (Why & What). \\\n\t\t한두줄 정도의 분량으로 입력 언어와 같은 언어로 생성하며, 정중한 표현을 사용한다.\";\n\n\treturn toolSelectPrompt;\n}\n\nexport default toolSelectPrompt;\n"],"mappings":";AAEA,eAAe,iBAAiB,cAA4B;AAC3D,QAAMA,oBACJ,MAAM,cAAc,eAAe,GAAG,sBAAsB,KAC7D;AAGD,SAAOA;AACR;AAEA,IAAO,sBAAQ;","names":["toolSelectPrompt"]}
@@ -1,18 +1,18 @@
1
+ import {
2
+ createModelApiRouter
3
+ } from "./chunk-IQ3BAWVV.js";
4
+ import {
5
+ createThreadApiRouter
6
+ } from "./chunk-MJMNQNQL.js";
1
7
  import {
2
8
  createWorkflowApiRouter
3
- } from "./chunk-ZTYRQOCO.js";
9
+ } from "./chunk-OV5MNKPH.js";
4
10
  import {
5
11
  createAgentApiRouter
6
- } from "./chunk-MDQEA2US.js";
12
+ } from "./chunk-OCULYA2R.js";
7
13
  import {
8
14
  createIntentApiRouter
9
- } from "./chunk-A5CFFQUV.js";
10
- import {
11
- createModelApiRouter
12
- } from "./chunk-RKLWSV24.js";
13
- import {
14
- createThreadApiRouter
15
- } from "./chunk-VRFQFDSM.js";
15
+ } from "./chunk-GT74YHJR.js";
16
16
  import {
17
17
  getMemoryModule
18
18
  } from "./chunk-VSQVYW2H.js";
@@ -35,4 +35,4 @@ var createApiRouter = () => {
35
35
  export {
36
36
  createApiRouter
37
37
  };
38
- //# sourceMappingURL=chunk-LC5XQGWK.js.map
38
+ //# sourceMappingURL=chunk-BQO572DY.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  logger
3
- } from "./chunk-VUMI4XOY.js";
3
+ } from "./chunk-GHUEA7V5.js";
4
4
 
5
5
  // src/middlewares/error.middleware.ts
6
6
  var errorMiddleware = (error, req, res, next) => {
@@ -19,4 +19,4 @@ var errorMiddleware = (error, req, res, next) => {
19
19
  export {
20
20
  errorMiddleware
21
21
  };
22
- //# sourceMappingURL=chunk-RAHOYMKY.js.map
22
+ //# sourceMappingURL=chunk-BYGS3GS6.js.map
@@ -1,12 +1,12 @@
1
1
  import {
2
- generateTitle
3
- } from "./chunk-5IIF5O4A.js";
2
+ generate_title_default
3
+ } from "./chunk-HSAGEBXJ.js";
4
4
  import {
5
5
  AinHttpError
6
6
  } from "./chunk-C5JXXLCW.js";
7
7
  import {
8
8
  loggers
9
- } from "./chunk-VUMI4XOY.js";
9
+ } from "./chunk-GHUEA7V5.js";
10
10
 
11
11
  // src/services/query.service.ts
12
12
  import { randomUUID } from "crypto";
@@ -26,6 +26,28 @@ var QueryService = class {
26
26
  const threadMemory = this.memoryModule.getThreadMemory();
27
27
  await threadMemory?.addMessagesToThread(userId, threadId, messages);
28
28
  }
29
+ async generateTitle(query, options) {
30
+ const DEFAULT_TITLE = "New Chat";
31
+ try {
32
+ const modelInstance = this.modelModule.getModel();
33
+ const modelOptions = this.modelModule.getModelOptions();
34
+ const messages = modelInstance.generateMessages({
35
+ query,
36
+ systemPrompt: await generate_title_default(this.memoryModule)
37
+ });
38
+ const response = await modelInstance.fetch(
39
+ messages,
40
+ options ?? modelOptions
41
+ );
42
+ return response.content || DEFAULT_TITLE;
43
+ } catch (error) {
44
+ loggers.intent.error("Error generating title", {
45
+ error,
46
+ query
47
+ });
48
+ return DEFAULT_TITLE;
49
+ }
50
+ }
29
51
  /**
30
52
  * Main entry point for processing streaming user queries.
31
53
  *
@@ -56,7 +78,7 @@ var QueryService = class {
56
78
  }
57
79
  threadId ??= randomUUID();
58
80
  if (!thread) {
59
- const title = await generateTitle(this.modelModule, query, options);
81
+ const title = await this.generateTitle(query, options);
60
82
  const metadata = await threadMemory?.createThread(
61
83
  type,
62
84
  userId,
@@ -67,8 +89,15 @@ var QueryService = class {
67
89
  loggers.intent.info(`Create new thread: ${threadId}`);
68
90
  yield { event: "thread_id", data: { type, userId, threadId, title } };
69
91
  }
70
- const triggeredIntent = await this.intentTriggerService.intentTriggering(query, thread);
71
- loggers.intent.debug("Triggered intents", { triggeredIntent });
92
+ const triggerResult = await this.intentTriggerService.intentTriggering(
93
+ query,
94
+ thread
95
+ );
96
+ const { intents: triggeredIntents, needsAggregation } = triggerResult;
97
+ loggers.intent.debug("Triggered intents", {
98
+ triggeredIntents,
99
+ needsAggregation
100
+ });
72
101
  await this.addToThreadMessages(userId, threadId, [
73
102
  {
74
103
  messageId: randomUUID(),
@@ -77,7 +106,7 @@ var QueryService = class {
77
106
  // use displayQuery for better UX in enterprise application
78
107
  content: { type: "text", parts: [displayQuery || query] },
79
108
  metadata: {
80
- intents: triggeredIntent.filter((intent) => !!intent.intent).map((intent) => ({
109
+ intents: triggeredIntents.filter((intent) => !!intent.intent).map((intent) => ({
81
110
  id: intent.intent?.id,
82
111
  subquery: intent.subquery
83
112
  })),
@@ -86,9 +115,10 @@ var QueryService = class {
86
115
  }
87
116
  ]);
88
117
  const stream = this.intentFulfillService.intentFulfill(
89
- triggeredIntent,
118
+ triggeredIntents,
90
119
  thread,
91
- query
120
+ query,
121
+ needsAggregation
92
122
  );
93
123
  for await (const event of stream) {
94
124
  yield event;
@@ -99,4 +129,4 @@ var QueryService = class {
99
129
  export {
100
130
  QueryService
101
131
  };
102
- //# sourceMappingURL=chunk-JXGQVFCO.js.map
132
+ //# sourceMappingURL=chunk-C6GUUAED.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/query.service.ts"],"sourcesContent":["import { randomUUID } from \"node:crypto\";\nimport { StatusCodes } from \"http-status-codes\";\nimport type {\n\tMemoryModule,\n\tModelFetchOptions,\n\tModelModule,\n} from \"@/modules/index.js\";\nimport { AinHttpError } from \"@/types/agent.js\";\nimport {\n\ttype MessageObject,\n\tMessageRole,\n\ttype ThreadMetadata,\n\ttype ThreadObject,\n\ttype ThreadType,\n} from \"@/types/memory.js\";\nimport type { StreamEvent } from \"@/types/stream\";\nimport { loggers } from \"@/utils/logger.js\";\nimport type { IntentFulfillService } from \"./intents/fulfill.service\";\nimport type { IntentTriggerService } from \"./intents/trigger.service\";\nimport generateTitlePrompt from \"./prompts/generate-title\";\n\n/**\n * Service for processing user queries through the agent's AI pipeline.\n *\n * Orchestrates the query processing workflow including intent detection,\n * model inference, tool execution, and response generation. Manages\n * conversation context and coordinates between different modules.\n */\nexport class QueryService {\n\tprivate modelModule: ModelModule;\n\tprivate memoryModule: MemoryModule;\n\tprivate intentTriggerService: IntentTriggerService;\n\tprivate intentFulfillService: IntentFulfillService;\n\n\tconstructor(\n\t\tmodelModule: ModelModule,\n\t\tmemoryModule: MemoryModule,\n\t\tintentTriggerService: IntentTriggerService,\n\t\tintentFulfillService: IntentFulfillService,\n\t) {\n\t\tthis.modelModule = modelModule;\n\t\tthis.memoryModule = memoryModule;\n\t\tthis.intentTriggerService = intentTriggerService;\n\t\tthis.intentFulfillService = intentFulfillService;\n\t}\n\n\tpublic async addToThreadMessages(\n\t\tuserId: string,\n\t\tthreadId: string,\n\t\tmessages: Array<MessageObject>,\n\t) {\n\t\tconst threadMemory = this.memoryModule.getThreadMemory();\n\t\tawait threadMemory?.addMessagesToThread(userId, threadId, messages);\n\t}\n\n\tpublic async generateTitle(\n\t\tquery: string,\n\t\toptions?: ModelFetchOptions,\n\t): Promise<string> {\n\t\tconst DEFAULT_TITLE = \"New Chat\";\n\t\ttry {\n\t\t\tconst modelInstance = this.modelModule.getModel();\n\t\t\tconst modelOptions = this.modelModule.getModelOptions();\n\t\t\tconst messages = modelInstance.generateMessages({\n\t\t\t\tquery,\n\t\t\t\tsystemPrompt: await generateTitlePrompt(this.memoryModule),\n\t\t\t});\n\t\t\tconst response = await modelInstance.fetch(\n\t\t\t\tmessages,\n\t\t\t\toptions ?? modelOptions,\n\t\t\t);\n\t\t\treturn response.content || DEFAULT_TITLE;\n\t\t} catch (error) {\n\t\t\tloggers.intent.error(\"Error generating title\", {\n\t\t\t\terror,\n\t\t\t\tquery,\n\t\t\t});\n\t\t\treturn DEFAULT_TITLE;\n\t\t}\n\t}\n\n\t/**\n\t * Main entry point for processing streaming user queries.\n\t *\n\t * Handles the complete query lifecycle:\n\t * 1. Loads or creates thread from memory\n\t * 2. Detects intent from the query\n\t * 3. Fulfills the intent with streaming AI response\n\t * 4. Updates conversation history in real-time\n\t *\n\t * @param threadMetadata - Metadata containing type, userId, and optional threadId\n\t * @param threadMetadata.type - The type of thread (e.g., chat, workflow)\n\t * @param threadMetadata.userId - The user's unique identifier\n\t * @param threadMetadata.threadId - Optional thread identifier\n\t * @param query - The user's input query\n\t * @returns AsyncGenerator yielding StreamEvent objects for SSE\n\t */\n\tpublic async *handleQuery(\n\t\tthreadMetadata: {\n\t\t\ttype: ThreadType;\n\t\t\tuserId: string;\n\t\t\tthreadId?: string;\n\t\t\toptions?: ModelFetchOptions;\n\t\t},\n\t\tqueryData: {\n\t\t\tquery: string;\n\t\t\tdisplayQuery?: string;\n\t\t},\n\t\tisA2A?: boolean,\n\t): AsyncGenerator<StreamEvent> {\n\t\tconst { type, userId, options } = threadMetadata;\n\t\tconst { query, displayQuery } = queryData;\n\t\tconst threadMemory = this.memoryModule.getThreadMemory();\n\n\t\t// 1. Load or create thread\n\t\tlet threadId = threadMetadata.threadId;\n\t\tlet thread: ThreadObject | undefined;\n\t\tif (threadId) {\n\t\t\tthread = await threadMemory?.getThread(userId, threadId);\n\t\t\tif (!thread && !isA2A) {\n\t\t\t\tthrow new AinHttpError(StatusCodes.NOT_FOUND, \"Thread not found\");\n\t\t\t}\n\t\t}\n\n\t\tthreadId ??= randomUUID();\n\t\tif (!thread) {\n\t\t\tconst title = await this.generateTitle(query, options);\n\t\t\tconst metadata: ThreadMetadata = (await threadMemory?.createThread(\n\t\t\t\ttype,\n\t\t\t\tuserId,\n\t\t\t\tthreadId,\n\t\t\t\ttitle,\n\t\t\t)) || { type, userId, threadId, title };\n\t\t\tthread = { ...metadata, messages: [] };\n\t\t\tloggers.intent.info(`Create new thread: ${threadId}`);\n\t\t\tyield { event: \"thread_id\", data: { type, userId, threadId, title } };\n\t\t}\n\n\t\t// 2. intent triggering\n\t\tconst triggerResult = await this.intentTriggerService.intentTriggering(\n\t\t\tquery,\n\t\t\tthread,\n\t\t);\n\t\tconst { intents: triggeredIntents, needsAggregation } = triggerResult;\n\t\tloggers.intent.debug(\"Triggered intents\", {\n\t\t\ttriggeredIntents,\n\t\t\tneedsAggregation,\n\t\t});\n\n\t\t// only add for storage, not for inference\n\t\tawait this.addToThreadMessages(userId, threadId, [\n\t\t\t{\n\t\t\t\tmessageId: randomUUID(),\n\t\t\t\trole: MessageRole.USER,\n\t\t\t\ttimestamp: Date.now(),\n\t\t\t\t// use displayQuery for better UX in enterprise application\n\t\t\t\tcontent: { type: \"text\", parts: [displayQuery || query] },\n\t\t\t\tmetadata: {\n\t\t\t\t\tintents: triggeredIntents\n\t\t\t\t\t\t.filter((intent) => !!intent.intent)\n\t\t\t\t\t\t.map((intent) => ({\n\t\t\t\t\t\t\tid: intent.intent?.id,\n\t\t\t\t\t\t\tsubquery: intent.subquery,\n\t\t\t\t\t\t})),\n\t\t\t\t\tquery: !displayQuery ? undefined : query,\n\t\t\t\t},\n\t\t\t},\n\t\t]);\n\n\t\t// 3. intent fulfillment (with rewrite step)\n\t\tconst stream = this.intentFulfillService.intentFulfill(\n\t\t\ttriggeredIntents,\n\t\t\tthread,\n\t\t\tquery,\n\t\t\tneedsAggregation,\n\t\t);\n\n\t\tfor await (const event of stream) {\n\t\t\tyield event;\n\t\t}\n\t}\n}\n"],"mappings":"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","names":[]}
@@ -0,0 +1,85 @@
1
+ import {
2
+ single_trigger_default
3
+ } from "./chunk-XQUENGL4.js";
4
+ import {
5
+ loggers
6
+ } from "./chunk-GHUEA7V5.js";
7
+
8
+ // src/services/intents/single-trigger.service.ts
9
+ var SingleIntentTriggerService = class {
10
+ modelModule;
11
+ memoryModule;
12
+ constructor(modelModule, memoryModule) {
13
+ this.modelModule = modelModule;
14
+ this.memoryModule = memoryModule;
15
+ }
16
+ /**
17
+ * Detects a single intent from context.
18
+ * Simpler prompt that doesn't decompose queries into subqueries.
19
+ *
20
+ * @param query - The user's input query
21
+ * @param thread - The thread history
22
+ * @returns IntentTriggerResult with single intent and needsAggregation=false
23
+ */
24
+ async intentTriggering(query, thread) {
25
+ const modelInstance = this.modelModule.getModel();
26
+ const modelOptions = this.modelModule.getModelOptions();
27
+ const intentMemory = this.memoryModule.getIntentMemory();
28
+ if (!intentMemory) {
29
+ return { intents: [{ subquery: query }], needsAggregation: false };
30
+ }
31
+ const intents = await intentMemory.listIntents();
32
+ if (intents.length === 0) {
33
+ loggers.intentStream.warn("No intent found");
34
+ return { intents: [{ subquery: query }], needsAggregation: false };
35
+ }
36
+ const intentList = intents.map((intent) => `- ${intent.name}: ${intent.description}`).join("\n");
37
+ const threadMessages = !thread ? "" : thread.messages.sort((a, b) => a.timestamp - b.timestamp).map((message) => {
38
+ const role = message.role === "USER" ? "User" : message.role === "MODEL" ? "Assistant" : "System";
39
+ const content = Array.isArray(message.content.parts) ? message.content.parts.join(" ") : String(message.content.parts);
40
+ return `${role}: """${content}"""`;
41
+ }).join("\n");
42
+ const systemPrompt = await single_trigger_default(
43
+ this.memoryModule,
44
+ intentList
45
+ );
46
+ const triggerMessage = `
47
+ ${threadMessages !== "" ? `
48
+ The following is the conversation history with the user:
49
+ ${threadMessages}
50
+
51
+ ` : ""}
52
+ User question: "${query}"
53
+
54
+ Based on the above conversation history, analyze the user question and identify the most relevant intent.
55
+ `;
56
+ const messages = modelInstance.generateMessages({
57
+ query: triggerMessage,
58
+ systemPrompt
59
+ });
60
+ const response = await modelInstance.fetch(messages, modelOptions);
61
+ if (!response.content) {
62
+ loggers.intent.warn("Cannot extract intent from query");
63
+ return { intents: [{ subquery: query }], needsAggregation: false };
64
+ }
65
+ let parsed;
66
+ try {
67
+ parsed = JSON.parse(response.content);
68
+ } catch (error) {
69
+ return { intents: [{ subquery: query }], needsAggregation: false };
70
+ }
71
+ const result = {
72
+ subquery: query,
73
+ actionPlan: parsed.actionPlan
74
+ };
75
+ if (parsed.intentName) {
76
+ result.intent = await intentMemory.getIntentByName(parsed.intentName);
77
+ }
78
+ return { intents: [result], needsAggregation: false };
79
+ }
80
+ };
81
+
82
+ export {
83
+ SingleIntentTriggerService
84
+ };
85
+ //# sourceMappingURL=chunk-CRQEBSRD.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/intents/single-trigger.service.ts"],"sourcesContent":["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\";\nimport singleTriggerPrompt from \"../prompts/single-trigger\";\n\n/**\n * Service for single-intent triggering.\n * Identifies a single intent without decomposing queries into subqueries.\n */\nexport class SingleIntentTriggerService {\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 a single intent from context.\n\t * Simpler prompt that doesn't decompose 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 with single intent and needsAggregation=false\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\tconst intents = await intentMemory.listIntents();\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 = await singleTriggerPrompt(\n\t\t\tthis.memoryModule,\n\t\t\tintentList,\n\t\t);\n\n\t\tconst triggerMessage = `\n${\n\tthreadMessages !== \"\"\n\t\t? `\nThe following is the conversation history with the user:\n${threadMessages}\n\n`\n\t\t: \"\"\n}\nUser question: \"${query}\"\n\nBased on the above conversation history, analyze the user question and identify the most relevant intent.\n`;\n\n\t\tconst messages = modelInstance.generateMessages({\n\t\t\tquery: triggerMessage,\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: { intentName?: string; actionPlan?: string };\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 result: TriggeredIntent = {\n\t\t\tsubquery: query,\n\t\t\tactionPlan: parsed.actionPlan,\n\t\t};\n\n\t\tif (parsed.intentName) {\n\t\t\tresult.intent = await intentMemory.getIntentByName(parsed.intentName);\n\t\t}\n\n\t\treturn { intents: [result], needsAggregation: false };\n\t}\n}\n"],"mappings":";;;;;;;;AAcO,IAAM,6BAAN,MAAiC;AAAA,EAC/B;AAAA,EACA;AAAA,EAER,YAAY,aAA0B,cAA4B;AACjE,SAAK,cAAc;AACnB,SAAK,eAAe;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,MAAa,iBACZ,OACA,QAC+B;AAC/B,UAAM,gBAAgB,KAAK,YAAY,SAAS;AAChD,UAAM,eAAe,KAAK,YAAY,gBAAgB;AACtD,UAAM,eAAe,KAAK,aAAa,gBAAgB;AACvD,QAAI,CAAC,cAAc;AAClB,aAAO,EAAE,SAAS,CAAC,EAAE,UAAU,MAAM,CAAC,GAAG,kBAAkB,MAAM;AAAA,IAClE;AAEA,UAAM,UAAU,MAAM,aAAa,YAAY;AAC/C,QAAI,QAAQ,WAAW,GAAG;AACzB,cAAQ,aAAa,KAAK,iBAAiB;AAC3C,aAAO,EAAE,SAAS,CAAC,EAAE,UAAU,MAAM,CAAC,GAAG,kBAAkB,MAAM;AAAA,IAClE;AAEA,UAAM,aAAa,QACjB,IAAI,CAAC,WAAW,KAAK,OAAO,IAAI,KAAK,OAAO,WAAW,EAAE,EACzD,KAAK,IAAI;AAGX,UAAM,iBAAiB,CAAC,SACrB,KACA,OAAO,SACN,KAAK,CAAC,GAAG,MAAM,EAAE,YAAY,EAAE,SAAS,EACxC,IAAI,CAAC,YAA2B;AAChC,YAAM,OACL,QAAQ,SAAS,SACd,SACA,QAAQ,SAAS,UAChB,cACA;AACL,YAAM,UAAU,MAAM,QAAQ,QAAQ,QAAQ,KAAK,IAChD,QAAQ,QAAQ,MAAM,KAAK,GAAG,IAC9B,OAAO,QAAQ,QAAQ,KAAK;AAC/B,aAAO,GAAG,IAAI,QAAQ,OAAO;AAAA,IAC9B,CAAC,EACA,KAAK,IAAI;AAEb,UAAM,eAAe,MAAM;AAAA,MAC1B,KAAK;AAAA,MACL;AAAA,IACD;AAEA,UAAM,iBAAiB;AAAA,EAExB,mBAAmB,KAChB;AAAA;AAAA,EAEF,cAAc;AAAA;AAAA,IAGZ,EACJ;AAAA,kBACkB,KAAK;AAAA;AAAA;AAAA;AAKrB,UAAM,WAAW,cAAc,iBAAiB;AAAA,MAC/C,OAAO;AAAA,MACP;AAAA,IACD,CAAC;AAED,UAAM,WAAW,MAAM,cAAc,MAAM,UAAU,YAAY;AACjE,QAAI,CAAC,SAAS,SAAS;AACtB,cAAQ,OAAO,KAAK,kCAAkC;AACtD,aAAO,EAAE,SAAS,CAAC,EAAE,UAAU,MAAM,CAAC,GAAG,kBAAkB,MAAM;AAAA,IAClE;AAEA,QAAI;AACJ,QAAI;AACH,eAAS,KAAK,MAAM,SAAS,OAAO;AAAA,IACrC,SAAS,OAAgB;AACxB,aAAO,EAAE,SAAS,CAAC,EAAE,UAAU,MAAM,CAAC,GAAG,kBAAkB,MAAM;AAAA,IAClE;AAEA,UAAM,SAA0B;AAAA,MAC/B,UAAU;AAAA,MACV,YAAY,OAAO;AAAA,IACpB;AAEA,QAAI,OAAO,YAAY;AACtB,aAAO,SAAS,MAAM,aAAa,gBAAgB,OAAO,UAAU;AAAA,IACrE;AAEA,WAAO,EAAE,SAAS,CAAC,MAAM,GAAG,kBAAkB,MAAM;AAAA,EACrD;AACD;","names":[]}