@ainetwork/adk 0.3.2 → 0.3.4

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 (382) hide show
  1. package/README.md +62 -29
  2. package/dist/cjs/{chunk-RCOESZIX.cjs → chunk-3COIZ4H5.cjs} +5 -5
  3. package/dist/cjs/chunk-3COIZ4H5.cjs.map +1 -0
  4. package/dist/cjs/chunk-4VIZ52C2.cjs +37 -0
  5. package/dist/cjs/chunk-4VIZ52C2.cjs.map +1 -0
  6. package/dist/cjs/{chunk-X46GJS7X.cjs → chunk-4ZTPNV3C.cjs} +4 -4
  7. package/dist/cjs/chunk-4ZTPNV3C.cjs.map +1 -0
  8. package/dist/cjs/{chunk-A2I7D6JW.cjs → chunk-6HUEBFXL.cjs} +1 -1
  9. package/dist/cjs/{chunk-A2I7D6JW.cjs.map → chunk-6HUEBFXL.cjs.map} +1 -1
  10. package/dist/cjs/{chunk-EA3YMPST.cjs → chunk-6JO4LWIY.cjs} +7 -14
  11. package/dist/cjs/chunk-6JO4LWIY.cjs.map +1 -0
  12. package/dist/cjs/{chunk-NEWJ7PXH.cjs → chunk-7E3A6PCO.cjs} +9 -8
  13. package/dist/cjs/chunk-7E3A6PCO.cjs.map +1 -0
  14. package/dist/cjs/chunk-7XYVRO76.cjs +68 -0
  15. package/dist/cjs/chunk-7XYVRO76.cjs.map +1 -0
  16. package/dist/cjs/chunk-AQGJBXBU.cjs +8 -0
  17. package/dist/cjs/chunk-AQGJBXBU.cjs.map +1 -0
  18. package/dist/cjs/chunk-CHREGFB3.cjs +38 -0
  19. package/dist/cjs/chunk-CHREGFB3.cjs.map +1 -0
  20. package/dist/cjs/chunk-CKZDAQBG.cjs +17 -0
  21. package/dist/cjs/chunk-CKZDAQBG.cjs.map +1 -0
  22. package/dist/cjs/chunk-EQWAVDJY.cjs +47 -0
  23. package/dist/cjs/chunk-EQWAVDJY.cjs.map +1 -0
  24. package/dist/cjs/{chunk-5FZ7QLJD.cjs → chunk-EUNCRF3F.cjs} +4 -4
  25. package/dist/cjs/chunk-EUNCRF3F.cjs.map +1 -0
  26. package/dist/cjs/chunk-FLPLVYXQ.cjs +45 -0
  27. package/dist/cjs/chunk-FLPLVYXQ.cjs.map +1 -0
  28. package/dist/cjs/chunk-GA6NTHXB.cjs +17 -0
  29. package/dist/cjs/chunk-GA6NTHXB.cjs.map +1 -0
  30. package/dist/cjs/{chunk-NNYPZA6W.cjs → chunk-HDF5WQFQ.cjs} +31 -26
  31. package/dist/cjs/chunk-HDF5WQFQ.cjs.map +1 -0
  32. package/dist/cjs/{chunk-YCTPMLZO.cjs → chunk-HVNTK4O7.cjs} +12 -8
  33. package/dist/cjs/chunk-HVNTK4O7.cjs.map +1 -0
  34. package/dist/cjs/chunk-I72VEOEC.cjs +62 -0
  35. package/dist/cjs/chunk-I72VEOEC.cjs.map +1 -0
  36. package/dist/cjs/{chunk-OZPPTVUA.cjs → chunk-IP6P2TQM.cjs} +121 -37
  37. package/dist/cjs/chunk-IP6P2TQM.cjs.map +1 -0
  38. package/dist/cjs/chunk-JQIAM5N4.cjs +18 -0
  39. package/dist/cjs/chunk-JQIAM5N4.cjs.map +1 -0
  40. package/dist/cjs/chunk-LTBTLUJD.cjs +74 -0
  41. package/dist/cjs/chunk-LTBTLUJD.cjs.map +1 -0
  42. package/dist/cjs/chunk-MSPDYSCC.cjs +21 -0
  43. package/dist/cjs/chunk-MSPDYSCC.cjs.map +1 -0
  44. package/dist/cjs/chunk-NFEFQTIX.cjs +104 -0
  45. package/dist/cjs/chunk-NFEFQTIX.cjs.map +1 -0
  46. package/dist/cjs/{chunk-QCYLIOXZ.cjs → chunk-NLONGI2K.cjs} +7 -4
  47. package/dist/cjs/chunk-NLONGI2K.cjs.map +1 -0
  48. package/dist/cjs/chunk-NNVC34HX.cjs +95 -0
  49. package/dist/cjs/chunk-NNVC34HX.cjs.map +1 -0
  50. package/dist/cjs/{chunk-Z6TQ7TFO.cjs → chunk-OERUQFT7.cjs} +1 -1
  51. package/dist/cjs/chunk-OERUQFT7.cjs.map +1 -0
  52. package/dist/cjs/{chunk-TZ6JOGWV.cjs → chunk-PH5CFKLN.cjs} +4 -1
  53. package/dist/cjs/chunk-PH5CFKLN.cjs.map +1 -0
  54. package/dist/cjs/{chunk-FJ2JWXSL.cjs → chunk-QHDIM62U.cjs} +12 -8
  55. package/dist/cjs/chunk-QHDIM62U.cjs.map +1 -0
  56. package/dist/cjs/{chunk-5QSLQX4H.cjs → chunk-TDHM5TWT.cjs} +24 -34
  57. package/dist/cjs/chunk-TDHM5TWT.cjs.map +1 -0
  58. package/dist/cjs/{chunk-W224GBH7.cjs → chunk-UNRN7WF6.cjs} +1 -1
  59. package/dist/cjs/{chunk-W224GBH7.cjs.map → chunk-UNRN7WF6.cjs.map} +1 -1
  60. package/dist/cjs/chunk-VM74R2KP.cjs +170 -0
  61. package/dist/cjs/chunk-VM74R2KP.cjs.map +1 -0
  62. package/dist/cjs/chunk-WQIUHNUX.cjs +45 -0
  63. package/dist/cjs/chunk-WQIUHNUX.cjs.map +1 -0
  64. package/dist/cjs/chunk-ZWJ6IAP2.cjs +89 -0
  65. package/dist/cjs/chunk-ZWJ6IAP2.cjs.map +1 -0
  66. package/dist/cjs/{chunk-4Z4HSVCQ.cjs → chunk-ZZP6LQ5R.cjs} +4 -5
  67. package/dist/cjs/chunk-ZZP6LQ5R.cjs.map +1 -0
  68. package/dist/cjs/config/agent.cjs +9 -0
  69. package/dist/cjs/config/agent.cjs.map +1 -0
  70. package/dist/cjs/config/modules.cjs +19 -0
  71. package/dist/cjs/config/modules.cjs.map +1 -0
  72. package/dist/cjs/config/options.cjs +11 -0
  73. package/dist/cjs/config/options.cjs.map +1 -0
  74. package/dist/cjs/container/controllers.cjs +16 -0
  75. package/dist/cjs/container/controllers.cjs.map +1 -0
  76. package/dist/cjs/container/index.cjs +40 -0
  77. package/dist/cjs/container/index.cjs.map +1 -0
  78. package/dist/cjs/container/services.cjs +25 -0
  79. package/dist/cjs/container/services.cjs.map +1 -0
  80. package/dist/cjs/controllers/api/agent.api.controller.cjs +2 -2
  81. package/dist/cjs/controllers/api/threads.api.controller.cjs +2 -2
  82. package/dist/cjs/controllers/api/workflow.api.controller.cjs +7 -0
  83. package/dist/cjs/controllers/api/workflow.api.controller.cjs.map +1 -0
  84. package/dist/cjs/controllers/index.cjs +7 -8
  85. package/dist/cjs/controllers/index.cjs.map +1 -1
  86. package/dist/cjs/controllers/query.controller.cjs +3 -4
  87. package/dist/cjs/controllers/query.controller.cjs.map +1 -1
  88. package/dist/cjs/index.cjs +74 -50
  89. package/dist/cjs/index.cjs.map +1 -1
  90. package/dist/cjs/middlewares/auth.middleware.cjs +3 -3
  91. package/dist/cjs/modules/a2a/a2a.module.cjs +1 -1
  92. package/dist/cjs/modules/auth/auth.module.cjs +7 -0
  93. package/dist/cjs/modules/auth/auth.module.cjs.map +1 -0
  94. package/dist/cjs/modules/index.cjs +9 -9
  95. package/dist/cjs/modules/index.cjs.map +1 -1
  96. package/dist/cjs/modules/memory/memory.module.cjs +2 -2
  97. package/dist/cjs/routes/a2a.routes.cjs +29 -11
  98. package/dist/cjs/routes/a2a.routes.cjs.map +1 -1
  99. package/dist/cjs/routes/api/agent.routes.cjs +30 -3
  100. package/dist/cjs/routes/api/agent.routes.cjs.map +1 -1
  101. package/dist/cjs/routes/api/intent.routes.cjs +29 -3
  102. package/dist/cjs/routes/api/intent.routes.cjs.map +1 -1
  103. package/dist/cjs/routes/api/model.routes.cjs +29 -2
  104. package/dist/cjs/routes/api/model.routes.cjs.map +1 -1
  105. package/dist/cjs/routes/api/threads.routes.cjs +30 -4
  106. package/dist/cjs/routes/api/threads.routes.cjs.map +1 -1
  107. package/dist/cjs/routes/api/workflow.routes.cjs +35 -0
  108. package/dist/cjs/routes/api/workflow.routes.cjs.map +1 -0
  109. package/dist/cjs/routes/api.routes.cjs +33 -9
  110. package/dist/cjs/routes/api.routes.cjs.map +1 -1
  111. package/dist/cjs/routes/index.cjs +36 -24
  112. package/dist/cjs/routes/index.cjs.map +1 -1
  113. package/dist/cjs/routes/intent.routes.cjs +27 -15
  114. package/dist/cjs/routes/intent.routes.cjs.map +1 -1
  115. package/dist/cjs/routes/query.routes.cjs +27 -12
  116. package/dist/cjs/routes/query.routes.cjs.map +1 -1
  117. package/dist/cjs/services/a2a.service.cjs +2 -2
  118. package/dist/cjs/services/index.cjs +14 -19
  119. package/dist/cjs/services/index.cjs.map +1 -1
  120. package/dist/cjs/services/intents/aggregate.service.cjs +10 -0
  121. package/dist/cjs/services/intents/aggregate.service.cjs.map +1 -0
  122. package/dist/cjs/services/intents/fulfill.service.cjs +6 -3
  123. package/dist/cjs/services/intents/fulfill.service.cjs.map +1 -1
  124. package/dist/cjs/services/intents/multi-trigger.service.cjs +8 -0
  125. package/dist/cjs/services/intents/multi-trigger.service.cjs.map +1 -0
  126. package/dist/cjs/services/intents/single-trigger.service.cjs +8 -0
  127. package/dist/cjs/services/intents/single-trigger.service.cjs.map +1 -0
  128. package/dist/cjs/services/intents/trigger.service.cjs +4 -2
  129. package/dist/cjs/services/intents/trigger.service.cjs.map +1 -1
  130. package/dist/cjs/services/query.service.cjs +4 -8
  131. package/dist/cjs/services/query.service.cjs.map +1 -1
  132. package/dist/cjs/services/thread.service.cjs +2 -2
  133. package/dist/cjs/services/utils/aggregate.common.cjs +9 -0
  134. package/dist/cjs/services/utils/aggregate.common.cjs.map +1 -0
  135. package/dist/cjs/types/agent.cjs +2 -2
  136. package/dist/cjs/types/memory.cjs +2 -2
  137. package/dist/esm/{chunk-275JHD5P.js → chunk-2VGXYWJD.js} +5 -5
  138. package/dist/esm/chunk-2VGXYWJD.js.map +1 -0
  139. package/dist/esm/{chunk-A5PRJ33H.js → chunk-44CTGJX4.js} +116 -32
  140. package/dist/esm/chunk-44CTGJX4.js.map +1 -0
  141. package/dist/esm/{chunk-GRN6CHNO.js → chunk-4BHU7SPZ.js} +1 -1
  142. package/dist/esm/{chunk-GRN6CHNO.js.map → chunk-4BHU7SPZ.js.map} +1 -1
  143. package/dist/esm/{chunk-SPRW6KUR.js → chunk-6YBQCUNB.js} +12 -8
  144. package/dist/esm/chunk-6YBQCUNB.js.map +1 -0
  145. package/dist/esm/chunk-7DH4SI44.js +89 -0
  146. package/dist/esm/chunk-7DH4SI44.js.map +1 -0
  147. package/dist/esm/{chunk-OUIXXZFI.js → chunk-7GV6DSPE.js} +4 -1
  148. package/dist/esm/chunk-7GV6DSPE.js.map +1 -0
  149. package/dist/esm/chunk-7XQPJVYO.js +62 -0
  150. package/dist/esm/chunk-7XQPJVYO.js.map +1 -0
  151. package/dist/esm/{chunk-6AN7Z5OC.js → chunk-AEBBZSQ4.js} +10 -17
  152. package/dist/esm/chunk-AEBBZSQ4.js.map +1 -0
  153. package/dist/esm/chunk-BS52JTBH.js +8 -0
  154. package/dist/esm/chunk-BS52JTBH.js.map +1 -0
  155. package/dist/esm/chunk-BZUWX7HX.js +68 -0
  156. package/dist/esm/chunk-BZUWX7HX.js.map +1 -0
  157. package/dist/esm/{chunk-WUNZG3WP.js → chunk-C5JXXLCW.js} +1 -1
  158. package/dist/esm/chunk-C5JXXLCW.js.map +1 -0
  159. package/dist/esm/chunk-CC6DWPHZ.js +95 -0
  160. package/dist/esm/chunk-CC6DWPHZ.js.map +1 -0
  161. package/dist/esm/chunk-CG35V3ZH.js +21 -0
  162. package/dist/esm/chunk-CG35V3ZH.js.map +1 -0
  163. package/dist/esm/{chunk-JHKBIDPX.js → chunk-D6STNZ2L.js} +30 -25
  164. package/dist/esm/chunk-D6STNZ2L.js.map +1 -0
  165. package/dist/esm/chunk-FCH7BUK4.js +17 -0
  166. package/dist/esm/chunk-FCH7BUK4.js.map +1 -0
  167. package/dist/esm/chunk-I4P7JMJC.js +104 -0
  168. package/dist/esm/chunk-I4P7JMJC.js.map +1 -0
  169. package/dist/esm/chunk-IG3B5AXN.js +74 -0
  170. package/dist/esm/chunk-IG3B5AXN.js.map +1 -0
  171. package/dist/esm/{chunk-JCXAHLRN.js → chunk-JXGQVFCO.js} +20 -30
  172. package/dist/esm/chunk-JXGQVFCO.js.map +1 -0
  173. package/dist/esm/chunk-LMOWEXWF.js +38 -0
  174. package/dist/esm/chunk-LMOWEXWF.js.map +1 -0
  175. package/dist/esm/chunk-O3MPFL5J.js +47 -0
  176. package/dist/esm/chunk-O3MPFL5J.js.map +1 -0
  177. package/dist/esm/chunk-PZQRSWST.js +18 -0
  178. package/dist/esm/chunk-PZQRSWST.js.map +1 -0
  179. package/dist/esm/{chunk-KOCOM7IC.js → chunk-QQZ5ANSD.js} +8 -7
  180. package/dist/esm/chunk-QQZ5ANSD.js.map +1 -0
  181. package/dist/esm/chunk-TQJCYP7X.js +170 -0
  182. package/dist/esm/chunk-TQJCYP7X.js.map +1 -0
  183. package/dist/esm/{chunk-WZQVH4XY.js → chunk-V23GKNNJ.js} +7 -7
  184. package/dist/esm/chunk-V23GKNNJ.js.map +1 -0
  185. package/dist/esm/chunk-VBK4WM2M.js +17 -0
  186. package/dist/esm/chunk-VBK4WM2M.js.map +1 -0
  187. package/dist/esm/{chunk-F3SGL62A.js → chunk-VP5Q63JU.js} +12 -8
  188. package/dist/esm/chunk-VP5Q63JU.js.map +1 -0
  189. package/dist/esm/chunk-VSQVYW2H.js +37 -0
  190. package/dist/esm/chunk-VSQVYW2H.js.map +1 -0
  191. package/dist/esm/{chunk-TUEEIIR3.js → chunk-WKFSYGMH.js} +5 -6
  192. package/dist/esm/chunk-WKFSYGMH.js.map +1 -0
  193. package/dist/esm/{chunk-OTBWAUJF.js → chunk-YDER5JOU.js} +5 -2
  194. package/dist/esm/chunk-YDER5JOU.js.map +1 -0
  195. package/dist/esm/{chunk-4LBR3TIJ.js → chunk-ZJVWC666.js} +6 -6
  196. package/dist/esm/chunk-ZJVWC666.js.map +1 -0
  197. package/dist/esm/{chunk-AMRKK46V.js → chunk-ZK3HZBER.js} +5 -5
  198. package/dist/esm/chunk-ZK3HZBER.js.map +1 -0
  199. package/dist/esm/chunk-ZNZZZ4NN.js +45 -0
  200. package/dist/esm/chunk-ZNZZZ4NN.js.map +1 -0
  201. package/dist/esm/{chunk-RL6SRSSK.js → chunk-ZVYC5Y6Z.js} +1 -1
  202. package/dist/esm/chunk-ZVYC5Y6Z.js.map +1 -0
  203. package/dist/esm/config/agent.d.ts +25 -0
  204. package/dist/esm/config/agent.js +9 -0
  205. package/dist/esm/config/manifest.d.ts +3 -0
  206. package/dist/esm/config/modules.d.ts +34 -0
  207. package/dist/esm/config/modules.js +19 -0
  208. package/dist/esm/config/options.d.ts +14 -0
  209. package/dist/esm/config/options.js +11 -0
  210. package/dist/esm/container/controllers.d.ts +57 -0
  211. package/dist/esm/container/controllers.js +16 -0
  212. package/dist/esm/container/index.d.ts +68 -0
  213. package/dist/esm/container/index.js +40 -0
  214. package/dist/esm/container/index.js.map +1 -0
  215. package/dist/esm/container/services.d.ts +42 -0
  216. package/dist/esm/container/services.js +25 -0
  217. package/dist/esm/container/services.js.map +1 -0
  218. package/dist/esm/controllers/a2a.controller.d.ts +11 -7
  219. package/dist/esm/controllers/api/agent.api.controller.d.ts +3 -17
  220. package/dist/esm/controllers/api/agent.api.controller.js +1 -1
  221. package/dist/esm/controllers/api/threads.api.controller.js +1 -1
  222. package/dist/esm/controllers/api/workflow.api.controller.d.ts +16 -0
  223. package/dist/esm/controllers/api/workflow.api.controller.js +7 -0
  224. package/dist/esm/controllers/api/workflow.api.controller.js.map +1 -0
  225. package/dist/esm/controllers/index.d.ts +9 -11
  226. package/dist/esm/controllers/index.js +7 -8
  227. package/dist/esm/controllers/query.controller.d.ts +13 -11
  228. package/dist/esm/controllers/query.controller.js +2 -3
  229. package/dist/esm/index.d.ts +16 -10
  230. package/dist/esm/index.js +77 -53
  231. package/dist/esm/index.js.map +1 -1
  232. package/dist/esm/middlewares/auth.middleware.d.ts +2 -2
  233. package/dist/esm/middlewares/auth.middleware.js +2 -2
  234. package/dist/esm/middlewares/error.middleware.d.ts +3 -0
  235. package/dist/esm/modules/a2a/a2a.module.js +1 -1
  236. package/dist/esm/modules/auth/{base.auth.d.ts → auth.module.d.ts} +2 -2
  237. package/dist/esm/modules/auth/auth.module.js +7 -0
  238. package/dist/esm/modules/auth/auth.module.js.map +1 -0
  239. package/dist/esm/modules/index.d.ts +2 -2
  240. package/dist/esm/modules/index.js +9 -9
  241. package/dist/esm/modules/memory/base.memory.d.ts +13 -2
  242. package/dist/esm/modules/memory/memory.module.d.ts +2 -1
  243. package/dist/esm/modules/memory/memory.module.js +1 -1
  244. package/dist/esm/routes/a2a.routes.d.ts +1 -22
  245. package/dist/esm/routes/a2a.routes.js +28 -10
  246. package/dist/esm/routes/api/agent.routes.d.ts +1 -20
  247. package/dist/esm/routes/api/agent.routes.js +29 -2
  248. package/dist/esm/routes/api/intent.routes.d.ts +1 -4
  249. package/dist/esm/routes/api/intent.routes.js +28 -2
  250. package/dist/esm/routes/api/model.routes.d.ts +1 -6
  251. package/dist/esm/routes/api/model.routes.js +28 -1
  252. package/dist/esm/routes/api/threads.routes.d.ts +1 -4
  253. package/dist/esm/routes/api/threads.routes.js +29 -3
  254. package/dist/esm/routes/api/workflow.routes.d.ts +5 -0
  255. package/dist/esm/routes/api/workflow.routes.js +35 -0
  256. package/dist/esm/routes/api/workflow.routes.js.map +1 -0
  257. package/dist/esm/routes/api.routes.d.ts +1 -20
  258. package/dist/esm/routes/api.routes.js +32 -8
  259. package/dist/esm/routes/index.d.ts +0 -19
  260. package/dist/esm/routes/index.js +39 -27
  261. package/dist/esm/routes/intent.routes.d.ts +1 -20
  262. package/dist/esm/routes/intent.routes.js +26 -14
  263. package/dist/esm/routes/query.routes.d.ts +1 -20
  264. package/dist/esm/routes/query.routes.js +26 -11
  265. package/dist/esm/services/a2a.service.d.ts +14 -10
  266. package/dist/esm/services/a2a.service.js +1 -1
  267. package/dist/esm/services/index.d.ts +9 -9
  268. package/dist/esm/services/index.js +16 -21
  269. package/dist/esm/services/intents/aggregate.service.d.ts +41 -0
  270. package/dist/esm/services/intents/aggregate.service.js +10 -0
  271. package/dist/esm/services/intents/aggregate.service.js.map +1 -0
  272. package/dist/esm/services/intents/fulfill.service.d.ts +23 -7
  273. package/dist/esm/services/intents/fulfill.service.js +5 -2
  274. package/dist/esm/services/intents/multi-trigger.service.d.ts +27 -0
  275. package/dist/esm/services/intents/multi-trigger.service.js +8 -0
  276. package/dist/esm/services/intents/multi-trigger.service.js.map +1 -0
  277. package/dist/esm/services/intents/single-trigger.service.d.ts +28 -0
  278. package/dist/esm/services/intents/single-trigger.service.js +8 -0
  279. package/dist/esm/services/intents/single-trigger.service.js.map +1 -0
  280. package/dist/esm/services/intents/trigger.service.d.ts +9 -4
  281. package/dist/esm/services/intents/trigger.service.js +3 -1
  282. package/dist/esm/services/query.service.d.ts +21 -15
  283. package/dist/esm/services/query.service.js +3 -7
  284. package/dist/esm/services/thread.service.d.ts +2 -2
  285. package/dist/esm/services/thread.service.js +1 -1
  286. package/dist/esm/services/utils/aggregate.common.d.ts +10 -0
  287. package/dist/esm/services/utils/aggregate.common.js +9 -0
  288. package/dist/esm/services/utils/aggregate.common.js.map +1 -0
  289. package/dist/esm/types/agent.d.ts +9 -1
  290. package/dist/esm/types/agent.js +1 -1
  291. package/dist/esm/types/memory.d.ts +23 -1
  292. package/dist/esm/types/memory.js +1 -1
  293. package/dist/esm/types/stream.d.ts +11 -0
  294. package/package.json +1 -1
  295. package/dist/cjs/chunk-2P3ZBNVN.cjs +0 -45
  296. package/dist/cjs/chunk-2P3ZBNVN.cjs.map +0 -1
  297. package/dist/cjs/chunk-3RS6NVSN.cjs +0 -41
  298. package/dist/cjs/chunk-3RS6NVSN.cjs.map +0 -1
  299. package/dist/cjs/chunk-4Z4HSVCQ.cjs.map +0 -1
  300. package/dist/cjs/chunk-5FZ7QLJD.cjs.map +0 -1
  301. package/dist/cjs/chunk-5QSLQX4H.cjs.map +0 -1
  302. package/dist/cjs/chunk-6T2YGFSD.cjs +0 -28
  303. package/dist/cjs/chunk-6T2YGFSD.cjs.map +0 -1
  304. package/dist/cjs/chunk-7KXB6FOT.cjs +0 -112
  305. package/dist/cjs/chunk-7KXB6FOT.cjs.map +0 -1
  306. package/dist/cjs/chunk-AHNKY3JY.cjs +0 -30
  307. package/dist/cjs/chunk-AHNKY3JY.cjs.map +0 -1
  308. package/dist/cjs/chunk-DGXLVGIM.cjs +0 -36
  309. package/dist/cjs/chunk-DGXLVGIM.cjs.map +0 -1
  310. package/dist/cjs/chunk-E3PD4Q76.cjs +0 -41
  311. package/dist/cjs/chunk-E3PD4Q76.cjs.map +0 -1
  312. package/dist/cjs/chunk-EA3YMPST.cjs.map +0 -1
  313. package/dist/cjs/chunk-FJ2JWXSL.cjs.map +0 -1
  314. package/dist/cjs/chunk-HF2QUMQV.cjs +0 -30
  315. package/dist/cjs/chunk-HF2QUMQV.cjs.map +0 -1
  316. package/dist/cjs/chunk-HF7GKQ6Y.cjs +0 -105
  317. package/dist/cjs/chunk-HF7GKQ6Y.cjs.map +0 -1
  318. package/dist/cjs/chunk-MT722JJC.cjs +0 -1
  319. package/dist/cjs/chunk-MT722JJC.cjs.map +0 -1
  320. package/dist/cjs/chunk-NEWJ7PXH.cjs.map +0 -1
  321. package/dist/cjs/chunk-NNYPZA6W.cjs.map +0 -1
  322. package/dist/cjs/chunk-OZPPTVUA.cjs.map +0 -1
  323. package/dist/cjs/chunk-QCYLIOXZ.cjs.map +0 -1
  324. package/dist/cjs/chunk-RCOESZIX.cjs.map +0 -1
  325. package/dist/cjs/chunk-RVT67VJL.cjs +0 -105
  326. package/dist/cjs/chunk-RVT67VJL.cjs.map +0 -1
  327. package/dist/cjs/chunk-TZ6JOGWV.cjs.map +0 -1
  328. package/dist/cjs/chunk-U47SG7XG.cjs +0 -168
  329. package/dist/cjs/chunk-U47SG7XG.cjs.map +0 -1
  330. package/dist/cjs/chunk-X46GJS7X.cjs.map +0 -1
  331. package/dist/cjs/chunk-XEAJBA3S.cjs +0 -30
  332. package/dist/cjs/chunk-XEAJBA3S.cjs.map +0 -1
  333. package/dist/cjs/chunk-XQTVE64W.cjs +0 -8
  334. package/dist/cjs/chunk-XQTVE64W.cjs.map +0 -1
  335. package/dist/cjs/chunk-YCTPMLZO.cjs.map +0 -1
  336. package/dist/cjs/chunk-YY7HSXBP.cjs +0 -36
  337. package/dist/cjs/chunk-YY7HSXBP.cjs.map +0 -1
  338. package/dist/cjs/chunk-Z6TQ7TFO.cjs.map +0 -1
  339. package/dist/cjs/modules/auth/base.auth.cjs +0 -7
  340. package/dist/cjs/modules/auth/base.auth.cjs.map +0 -1
  341. package/dist/cjs/services/intents/fulfill-stream.service.cjs +0 -12
  342. package/dist/cjs/services/intents/fulfill-stream.service.cjs.map +0 -1
  343. package/dist/cjs/services/query-stream.service.cjs +0 -16
  344. package/dist/cjs/services/query-stream.service.cjs.map +0 -1
  345. package/dist/esm/chunk-275JHD5P.js.map +0 -1
  346. package/dist/esm/chunk-4LBR3TIJ.js.map +0 -1
  347. package/dist/esm/chunk-6AN7Z5OC.js.map +0 -1
  348. package/dist/esm/chunk-A5PRJ33H.js.map +0 -1
  349. package/dist/esm/chunk-AMRKK46V.js.map +0 -1
  350. package/dist/esm/chunk-F3SGL62A.js.map +0 -1
  351. package/dist/esm/chunk-FF5RJ4L2.js +0 -8
  352. package/dist/esm/chunk-FF5RJ4L2.js.map +0 -1
  353. package/dist/esm/chunk-JCXAHLRN.js.map +0 -1
  354. package/dist/esm/chunk-JHKBIDPX.js.map +0 -1
  355. package/dist/esm/chunk-KOCOM7IC.js.map +0 -1
  356. package/dist/esm/chunk-OTBWAUJF.js.map +0 -1
  357. package/dist/esm/chunk-OUIXXZFI.js.map +0 -1
  358. package/dist/esm/chunk-Q7NLA5X4.js +0 -30
  359. package/dist/esm/chunk-Q7NLA5X4.js.map +0 -1
  360. package/dist/esm/chunk-RL6SRSSK.js.map +0 -1
  361. package/dist/esm/chunk-SPRW6KUR.js.map +0 -1
  362. package/dist/esm/chunk-TUEEIIR3.js.map +0 -1
  363. package/dist/esm/chunk-U7REZSMO.js +0 -1
  364. package/dist/esm/chunk-UEUZ7G5P.js +0 -168
  365. package/dist/esm/chunk-UEUZ7G5P.js.map +0 -1
  366. package/dist/esm/chunk-WO2QJ6UM.js +0 -28
  367. package/dist/esm/chunk-WO2QJ6UM.js.map +0 -1
  368. package/dist/esm/chunk-WUNZG3WP.js.map +0 -1
  369. package/dist/esm/chunk-WZQVH4XY.js.map +0 -1
  370. package/dist/esm/chunk-Y7BKUWRJ.js +0 -105
  371. package/dist/esm/chunk-Y7BKUWRJ.js.map +0 -1
  372. package/dist/esm/chunk-YJTWW6QK.js +0 -41
  373. package/dist/esm/chunk-YJTWW6QK.js.map +0 -1
  374. package/dist/esm/modules/auth/base.auth.js +0 -7
  375. package/dist/esm/services/intents/fulfill-stream.service.d.ts +0 -50
  376. package/dist/esm/services/intents/fulfill-stream.service.js +0 -12
  377. package/dist/esm/services/query-stream.service.d.ts +0 -54
  378. package/dist/esm/services/query-stream.service.js +0 -16
  379. /package/dist/esm/{chunk-U7REZSMO.js.map → config/agent.js.map} +0 -0
  380. /package/dist/esm/{modules/auth/base.auth.js.map → config/modules.js.map} +0 -0
  381. /package/dist/esm/{services/intents/fulfill-stream.service.js.map → config/options.js.map} +0 -0
  382. /package/dist/esm/{services/query-stream.service.js.map → container/controllers.js.map} +0 -0
@@ -0,0 +1,47 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/services/utils/aggregate.common.ts
2
+ var AGGREGATE_DECISION_SYSTEM_PROMPT = `You are an assistant that determines whether multiple task responses need to be aggregated into a unified response.
3
+
4
+ Analyze the original query and the responses from each task.
5
+
6
+ **Return JSON only:**
7
+ {
8
+ "needsAggregation": boolean,
9
+ "reason": string // Write the reason in the same language as the original query
10
+ }
11
+
12
+ **Set needsAggregation to FALSE when:**
13
+ - The last response already synthesizes/summarizes all previous results
14
+ - The last task explicitly asks for a "report", "summary", "\uACB0\uACFC\uBB3C", "\uB808\uD3EC\uD2B8", "\uC815\uB9AC" based on previous tasks
15
+ - The last response comprehensively addresses the original query by incorporating previous results
16
+
17
+ **Set needsAggregation to TRUE when:**
18
+ - Each response is independent and doesn't reference other results
19
+ - The original query asks for multiple distinct things that weren't combined
20
+ - Important information from earlier responses is missing in the final response
21
+
22
+ Examples:
23
+
24
+ Query: "A\uD558\uACE0, B\uD558\uACE0, \uADF8\uAC78 \uAE30\uBC18\uC73C\uB85C \uB808\uD3EC\uD2B8 \uB9CC\uB4E4\uC5B4\uC918"
25
+ \u2192 needsAggregation: false (last task already creates a combined report)
26
+
27
+ Query: "A\uD558\uACE0, B\uB3C4 \uD574\uC918"
28
+ \u2192 needsAggregation: true (independent tasks, need combination)
29
+
30
+ Query: "\uB0A0\uC528 \uC54C\uB824\uC8FC\uACE0, \uC77C\uC815\uB3C4 \uD655\uC778\uD574\uC918"
31
+ \u2192 needsAggregation: true (independent queries, results should be combined)`;
32
+ var AGGREGATE_GENERATION_SYSTEM_PROMPT = `You are an assistant that combines multiple task responses into a single, coherent response.
33
+
34
+ Guidelines:
35
+ - Preserve all important information from each response
36
+ - Create a natural, flowing response that addresses the original query
37
+ - Don't use section headers like "[Task 1]" - integrate smoothly
38
+ - If responses have related information, synthesize them logically
39
+ - Keep the tone consistent with the original responses
40
+ - Be concise - don't add unnecessary filler
41
+ - Respond in the same language as the original query`;
42
+
43
+
44
+
45
+
46
+ exports.AGGREGATE_DECISION_SYSTEM_PROMPT = AGGREGATE_DECISION_SYSTEM_PROMPT; exports.AGGREGATE_GENERATION_SYSTEM_PROMPT = AGGREGATE_GENERATION_SYSTEM_PROMPT;
47
+ //# sourceMappingURL=chunk-EQWAVDJY.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-EQWAVDJY.cjs","../../src/services/utils/aggregate.common.ts"],"names":[],"mappings":"AAAA;ACGO,IAAM,iCAAA,EAAmC,CAAA;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,+EAAA,CAAA;AAkCzC,IAAM,mCAAA,EAAqC,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oDAAA,CAAA;ADIlD;AACA;AACE;AACA;AACF,6JAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-EQWAVDJY.cjs","sourcesContent":[null,"/**\n * System prompt for deciding whether to aggregate/combine multiple responses.\n */\nexport const AGGREGATE_DECISION_SYSTEM_PROMPT = `You are an assistant that determines whether multiple task responses need to be aggregated into a unified response.\n\nAnalyze the original query and the responses from each task.\n\n**Return JSON only:**\n{\n \"needsAggregation\": boolean,\n \"reason\": string // Write the reason in the same language as the original query\n}\n\n**Set needsAggregation to FALSE when:**\n- The last response already synthesizes/summarizes all previous results\n- The last task explicitly asks for a \"report\", \"summary\", \"결과물\", \"레포트\", \"정리\" based on previous tasks\n- The last response comprehensively addresses the original query by incorporating previous results\n\n**Set needsAggregation to TRUE when:**\n- Each response is independent and doesn't reference other results\n- The original query asks for multiple distinct things that weren't combined\n- Important information from earlier responses is missing in the final response\n\nExamples:\n\nQuery: \"A하고, B하고, 그걸 기반으로 레포트 만들어줘\"\n→ needsAggregation: false (last task already creates a combined report)\n\nQuery: \"A하고, B도 해줘\"\n→ needsAggregation: true (independent tasks, need combination)\n\nQuery: \"날씨 알려주고, 일정도 확인해줘\"\n→ needsAggregation: true (independent queries, results should be combined)`;\n\n/**\n * System prompt for generating a unified response from multiple results.\n */\nexport const AGGREGATE_GENERATION_SYSTEM_PROMPT = `You are an assistant that combines multiple task responses into a single, coherent response.\n\nGuidelines:\n- Preserve all important information from each response\n- Create a natural, flowing response that addresses the original query\n- Don't use section headers like \"[Task 1]\" - integrate smoothly\n- If responses have related information, synthesize them logically\n- Keep the tone consistent with the original responses\n- Be concise - don't add unnecessary filler\n- Respond in the same language as the original query`;\n"]}
@@ -1,12 +1,12 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunk4Z4HSVCQcjs = require('./chunk-4Z4HSVCQ.cjs');
3
+ var _chunkLTBTLUJDcjs = require('./chunk-LTBTLUJD.cjs');
4
4
 
5
5
  // src/routes/api/agent.routes.ts
6
6
  var _express = require('express');
7
- var createAgentApiRouter = (agent) => {
7
+ var createAgentApiRouter = () => {
8
8
  const router = _express.Router.call(void 0, );
9
- const agentApiController = new (0, _chunk4Z4HSVCQcjs.AgentApiController)(agent);
9
+ const agentApiController = _chunkLTBTLUJDcjs.container.getAgentApiController();
10
10
  router.get("/a2a", agentApiController.handleGetA2AConnectors);
11
11
  return router;
12
12
  };
@@ -14,4 +14,4 @@ var createAgentApiRouter = (agent) => {
14
14
 
15
15
 
16
16
  exports.createAgentApiRouter = createAgentApiRouter;
17
- //# sourceMappingURL=chunk-5FZ7QLJD.cjs.map
17
+ //# sourceMappingURL=chunk-EUNCRF3F.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-EUNCRF3F.cjs","../../src/routes/api/agent.routes.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACJA,kCAAuB;AAGhB,IAAM,qBAAA,EAAuB,CAAA,EAAA,GAAc;AACjD,EAAA,MAAM,OAAA,EAAS,6BAAA,CAAO;AACtB,EAAA,MAAM,mBAAA,EAAqB,2BAAA,CAAU,qBAAA,CAAsB,CAAA;AAG3D,EAAA,MAAA,CAAO,GAAA,CAAI,MAAA,EAAQ,kBAAA,CAAmB,sBAAsB,CAAA;AAE5D,EAAA,OAAO,MAAA;AACR,CAAA;ADCA;AACA;AACE;AACF,oDAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-EUNCRF3F.cjs","sourcesContent":[null,"import { Router } from \"express\";\nimport { container } from \"@/container\";\n\nexport const createAgentApiRouter = (): Router => {\n\tconst router = Router();\n\tconst agentApiController = container.getAgentApiController();\n\n\t// APIs (prefix: /api/agent)\n\trouter.get(\"/a2a\", agentApiController.handleGetA2AConnectors);\n\n\treturn router;\n};\n"]}
@@ -0,0 +1,45 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/services/thread.service.ts
2
+ var ThreadService = class {
3
+
4
+ constructor(memoryModule) {
5
+ this.memoryModule = memoryModule;
6
+ }
7
+ async getThread(userId, threadId) {
8
+ const threadMemory = this.memoryModule.getThreadMemory();
9
+ if (!threadMemory) {
10
+ return;
11
+ }
12
+ return await threadMemory.getThread(userId, threadId);
13
+ }
14
+ async createThread(type, userId, threadId, title) {
15
+ const threadMemory = this.memoryModule.getThreadMemory();
16
+ if (!threadMemory) {
17
+ return {
18
+ type,
19
+ userId,
20
+ threadId,
21
+ title,
22
+ messages: []
23
+ };
24
+ }
25
+ const metadata = await threadMemory.createThread(
26
+ type,
27
+ userId,
28
+ threadId,
29
+ title
30
+ );
31
+ return { ...metadata, messages: [] };
32
+ }
33
+ async addMessagesToThread(userId, threadId, messages) {
34
+ const threadMemory = this.memoryModule.getThreadMemory();
35
+ if (!threadMemory) {
36
+ return;
37
+ }
38
+ await threadMemory.addMessagesToThread(userId, threadId, messages);
39
+ }
40
+ };
41
+
42
+
43
+
44
+ exports.ThreadService = ThreadService;
45
+ //# sourceMappingURL=chunk-FLPLVYXQ.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-FLPLVYXQ.cjs","../../src/services/thread.service.ts"],"names":[],"mappings":"AAAA;ACQO,IAAM,cAAA,EAAN,MAAoB;AAAA,EAClB;AAAA,EAER,WAAA,CAAY,YAAA,EAA4B;AACvC,IAAA,IAAA,CAAK,aAAA,EAAe,YAAA;AAAA,EACrB;AAAA,EAEA,MAAa,SAAA,CACZ,MAAA,EACA,QAAA,EACoC;AACpC,IAAA,MAAM,aAAA,EAAe,IAAA,CAAK,YAAA,CAAa,eAAA,CAAgB,CAAA;AACvD,IAAA,GAAA,CAAI,CAAC,YAAA,EAAc;AAClB,MAAA,MAAA;AAAA,IACD;AAEA,IAAA,OAAO,MAAM,YAAA,CAAa,SAAA,CAAU,MAAA,EAAQ,QAAQ,CAAA;AAAA,EACrD;AAAA,EAEA,MAAa,YAAA,CACZ,IAAA,EACA,MAAA,EACA,QAAA,EACA,KAAA,EACwB;AACxB,IAAA,MAAM,aAAA,EAAe,IAAA,CAAK,YAAA,CAAa,eAAA,CAAgB,CAAA;AACvD,IAAA,GAAA,CAAI,CAAC,YAAA,EAAc;AAClB,MAAA,OAAO;AAAA,QACN,IAAA;AAAA,QACA,MAAA;AAAA,QACA,QAAA;AAAA,QACA,KAAA;AAAA,QACA,QAAA,EAAU,CAAC;AAAA,MACZ,CAAA;AAAA,IACD;AAEA,IAAA,MAAM,SAAA,EAA2B,MAAM,YAAA,CAAa,YAAA;AAAA,MACnD,IAAA;AAAA,MACA,MAAA;AAAA,MACA,QAAA;AAAA,MACA;AAAA,IACD,CAAA;AACA,IAAA,OAAO,EAAE,GAAG,QAAA,EAAU,QAAA,EAAU,CAAC,EAAE,CAAA;AAAA,EACpC;AAAA,EAEA,MAAa,mBAAA,CACZ,MAAA,EACA,QAAA,EACA,QAAA,EACgB;AAChB,IAAA,MAAM,aAAA,EAAe,IAAA,CAAK,YAAA,CAAa,eAAA,CAAgB,CAAA;AACvD,IAAA,GAAA,CAAI,CAAC,YAAA,EAAc;AAClB,MAAA,MAAA;AAAA,IACD;AAEA,IAAA,MAAM,YAAA,CAAa,mBAAA,CAAoB,MAAA,EAAQ,QAAA,EAAU,QAAQ,CAAA;AAAA,EAClE;AACD,CAAA;ADzBA;AACA;AACE;AACF,sCAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-FLPLVYXQ.cjs","sourcesContent":[null,"import type { MemoryModule } from \"@/modules\";\nimport type {\n\tMessageObject,\n\tThreadMetadata,\n\tThreadObject,\n\tThreadType,\n} from \"@/types/memory\";\n\nexport class ThreadService {\n\tprivate memoryModule: MemoryModule;\n\n\tconstructor(memoryModule: MemoryModule) {\n\t\tthis.memoryModule = memoryModule;\n\t}\n\n\tpublic async getThread(\n\t\tuserId: string,\n\t\tthreadId: string,\n\t): Promise<ThreadObject | undefined> {\n\t\tconst threadMemory = this.memoryModule.getThreadMemory();\n\t\tif (!threadMemory) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn await threadMemory.getThread(userId, threadId);\n\t}\n\n\tpublic async createThread(\n\t\ttype: ThreadType,\n\t\tuserId: string,\n\t\tthreadId: string,\n\t\ttitle: string,\n\t): Promise<ThreadObject> {\n\t\tconst threadMemory = this.memoryModule.getThreadMemory();\n\t\tif (!threadMemory) {\n\t\t\treturn {\n\t\t\t\ttype,\n\t\t\t\tuserId,\n\t\t\t\tthreadId,\n\t\t\t\ttitle,\n\t\t\t\tmessages: [],\n\t\t\t};\n\t\t}\n\n\t\tconst metadata: ThreadMetadata = await threadMemory.createThread(\n\t\t\ttype,\n\t\t\tuserId,\n\t\t\tthreadId,\n\t\t\ttitle,\n\t\t);\n\t\treturn { ...metadata, messages: [] };\n\t}\n\n\tpublic async addMessagesToThread(\n\t\tuserId: string,\n\t\tthreadId: string,\n\t\tmessages: Array<MessageObject>,\n\t): Promise<void> {\n\t\tconst threadMemory = this.memoryModule.getThreadMemory();\n\t\tif (!threadMemory) {\n\t\t\treturn;\n\t\t}\n\n\t\tawait threadMemory.addMessagesToThread(userId, threadId, messages);\n\t}\n}\n"]}
@@ -0,0 +1,17 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/config/agent.ts
2
+ var _agent = null;
3
+ function setAgent(agent) {
4
+ _agent = agent;
5
+ }
6
+ function getAgent() {
7
+ if (!_agent) {
8
+ throw new Error("Agent not initialized. AINAgent must be created first.");
9
+ }
10
+ return _agent;
11
+ }
12
+
13
+
14
+
15
+
16
+ exports.setAgent = setAgent; exports.getAgent = getAgent;
17
+ //# sourceMappingURL=chunk-GA6NTHXB.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-GA6NTHXB.cjs","../../src/config/agent.ts"],"names":[],"mappings":"AAAA;ACEA,IAAI,OAAA,EAA0B,IAAA;AAEvB,SAAS,QAAA,CAAS,KAAA,EAAuB;AAC/C,EAAA,OAAA,EAAS,KAAA;AACV;AAEO,SAAS,QAAA,CAAA,EAAqB;AACpC,EAAA,GAAA,CAAI,CAAC,MAAA,EAAQ;AACZ,IAAA,MAAM,IAAI,KAAA,CAAM,wDAAwD,CAAA;AAAA,EACzE;AACA,EAAA,OAAO,MAAA;AACR;ADFA;AACA;AACE;AACA;AACF,yDAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-GA6NTHXB.cjs","sourcesContent":[null,"import type { AINAgent } from \"@/index\";\n\nlet _agent: AINAgent | null = null;\n\nexport function setAgent(agent: AINAgent): void {\n\t_agent = agent;\n}\n\nexport function getAgent(): AINAgent {\n\tif (!_agent) {\n\t\tthrow new Error(\"Agent not initialized. AINAgent must be created first.\");\n\t}\n\treturn _agent;\n}\n"]}
@@ -1,40 +1,45 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class;
2
-
3
- var _chunkZ6TQ7TFOcjs = require('./chunk-Z6TQ7TFO.cjs');
4
-
5
- // src/controllers/query.controller.ts
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class;// src/controllers/query.controller.ts
6
2
  var _crypto = require('crypto');
7
- var _httpstatuscodes = require('http-status-codes');
8
3
  var QueryController = (_class = class {
9
4
 
10
-
11
- constructor(queryService, queryStreamService) {;_class.prototype.__init.call(this);_class.prototype.__init2.call(this);
5
+ constructor(queryService) {;_class.prototype.__init.call(this);_class.prototype.__init2.call(this);
12
6
  this.queryService = queryService;
13
- this.queryStreamService = queryStreamService;
14
7
  }
15
8
  __init() {this.handleQueryRequest = async (req, res, next) => {
16
- const { type, message, threadId } = req.body;
9
+ const {
10
+ type,
11
+ threadId,
12
+ message: query,
13
+ displayMessage: displayQuery
14
+ } = req.body;
17
15
  const userId = res.locals.userId;
18
16
  try {
19
- const result = await this.queryService.handleQuery(
17
+ const stream = this.queryService.handleQuery(
20
18
  { type, userId, threadId },
21
- message
19
+ { query, displayQuery }
22
20
  );
23
- res.status(200).json(result);
21
+ let content = "";
22
+ let responseThreadId = threadId;
23
+ for await (const event of stream) {
24
+ if (event.event === "thread_id") {
25
+ responseThreadId = event.data.threadId;
26
+ } else if (event.event === "text_chunk" && event.data.delta) {
27
+ content += event.data.delta;
28
+ }
29
+ }
30
+ res.status(200).json({ content, threadId: responseThreadId });
24
31
  } catch (error) {
25
32
  next(error);
26
33
  }
27
34
  }}
28
- __init2() {this.handleQueryStreamRequest = async (req, res, next) => {
29
- const { type, threadId, message } = req.body;
35
+ __init2() {this.handleQueryStreamRequest = async (req, res, _next) => {
36
+ const {
37
+ type,
38
+ threadId,
39
+ message: query,
40
+ displayMessage: displayQuery
41
+ } = req.body;
30
42
  const userId = res.locals.userId;
31
- if (!this.queryStreamService) {
32
- const error = new (0, _chunkZ6TQ7TFOcjs.AinHttpError)(
33
- _httpstatuscodes.StatusCodes.NOT_IMPLEMENTED,
34
- "Stream query not supported"
35
- );
36
- return next(error);
37
- }
38
43
  res.writeHead(200, {
39
44
  "Content-Type": "text/event-stream",
40
45
  "Cache-Control": "no-cache",
@@ -48,16 +53,16 @@ var QueryController = (_class = class {
48
53
  res.write(":keepalive\n\n");
49
54
  }, 1e4);
50
55
  let currentThreadId = threadId;
51
- const stream = this.queryStreamService.handleQueryStream(
56
+ const stream = this.queryService.handleQuery(
52
57
  { type, userId, threadId },
53
- message
58
+ { query, displayQuery }
54
59
  );
55
60
  try {
56
61
  for await (const event of stream) {
57
62
  if (event.event === "thread_id") {
58
63
  currentThreadId = event.data.threadId;
59
64
  } else if (event.event === "thinking_process") {
60
- this.queryStreamService.addToThreadMessages(userId, currentThreadId, [
65
+ this.queryService.addToThreadMessages(userId, currentThreadId, [
61
66
  {
62
67
  messageId: _crypto.randomUUID.call(void 0, ),
63
68
  role: "MODEL" /* MODEL */,
@@ -93,4 +98,4 @@ data: ${errMsg}
93
98
 
94
99
 
95
100
  exports.QueryController = QueryController;
96
- //# sourceMappingURL=chunk-NNYPZA6W.cjs.map
101
+ //# sourceMappingURL=chunk-HDF5WQFQ.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-HDF5WQFQ.cjs","../../src/controllers/query.controller.ts"],"names":[],"mappings":"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","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-HDF5WQFQ.cjs","sourcesContent":[null,"import { randomUUID } from \"node:crypto\";\nimport type { NextFunction, Request, Response } from \"express\";\nimport type { QueryService } from \"@/services\";\nimport { MessageRole } from \"@/types/memory\";\n\nexport class QueryController {\n\tprivate queryService: QueryService;\n\n\tconstructor(queryService: QueryService) {\n\t\tthis.queryService = queryService;\n\t}\n\n\tpublic handleQueryRequest = async (\n\t\treq: Request,\n\t\tres: Response,\n\t\tnext: NextFunction,\n\t) => {\n\t\tconst {\n\t\t\ttype,\n\t\t\tthreadId,\n\t\t\tmessage: query,\n\t\t\tdisplayMessage: displayQuery,\n\t\t} = req.body;\n\t\tconst userId = res.locals.userId;\n\n\t\ttry {\n\t\t\tconst stream = this.queryService.handleQuery(\n\t\t\t\t{ type, userId, threadId },\n\t\t\t\t{ query, displayQuery },\n\t\t\t);\n\n\t\t\tlet content = \"\";\n\t\t\tlet responseThreadId = threadId;\n\n\t\t\tfor await (const event of stream) {\n\t\t\t\tif (event.event === \"thread_id\") {\n\t\t\t\t\tresponseThreadId = event.data.threadId;\n\t\t\t\t} else if (event.event === \"text_chunk\" && event.data.delta) {\n\t\t\t\t\tcontent += event.data.delta;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tres.status(200).json({ content, threadId: responseThreadId });\n\t\t} catch (error) {\n\t\t\tnext(error);\n\t\t}\n\t};\n\n\tpublic handleQueryStreamRequest = async (\n\t\treq: Request,\n\t\tres: Response,\n\t\t_next: NextFunction,\n\t) => {\n\t\tconst {\n\t\t\ttype,\n\t\t\tthreadId,\n\t\t\tmessage: query,\n\t\t\tdisplayMessage: displayQuery,\n\t\t} = req.body;\n\t\tconst userId = res.locals.userId;\n\n\t\tres.writeHead(200, {\n\t\t\t\"Content-Type\": \"text/event-stream\",\n\t\t\t\"Cache-Control\": \"no-cache\",\n\t\t\tConnection: \"keep-alive\",\n\t\t\t\"X-Accel-Buffering\": \"no\", // nginx 버퍼링 비활성화\n\t\t});\n\t\tres.flushHeaders();\n\t\tres.write(\":ok\\n\\n\");\n\n\t\tconst keepaliveInterval = setInterval(() => {\n\t\t\tres.write(\":keepalive\\n\\n\");\n\t\t}, 10000); // 10초마다 keepalive 전송\n\n\t\tlet currentThreadId = threadId;\n\t\tconst stream = this.queryService.handleQuery(\n\t\t\t{ type, userId, threadId },\n\t\t\t{ query, displayQuery },\n\t\t);\n\n\t\ttry {\n\t\t\tfor await (const event of stream) {\n\t\t\t\tif (event.event === \"thread_id\") {\n\t\t\t\t\tcurrentThreadId = event.data.threadId;\n\t\t\t\t} else if (event.event === \"thinking_process\") {\n\t\t\t\t\t// a2a 호출에 대해서는 데이터베이스에 추가하지 않기 위해 여기서 thread message에 기록\n\t\t\t\t\tthis.queryService.addToThreadMessages(userId, currentThreadId, [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tmessageId: randomUUID(),\n\t\t\t\t\t\t\trole: MessageRole.MODEL,\n\t\t\t\t\t\t\ttimestamp: Date.now(),\n\t\t\t\t\t\t\tcontent: { type: \"text\", parts: [event.data.title] },\n\t\t\t\t\t\t\tmetadata: {\n\t\t\t\t\t\t\t\tisThinking: true,\n\t\t\t\t\t\t\t\tthinkData: event.data,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t]);\n\t\t\t\t}\n\n\t\t\t\tres.write(\n\t\t\t\t\t`event: ${event.event}\\ndata: ${JSON.stringify(event.data)}\\n\\n`,\n\t\t\t\t);\n\t\t\t}\n\t\t} catch (error: unknown) {\n\t\t\tconst errMsg =\n\t\t\t\t(error as Error)?.message || \"Failed to handle query stream\";\n\t\t\tres.write(`event: error\\ndata: ${errMsg}\\n\\n`);\n\t\t} finally {\n\t\t\tclearInterval(keepaliveInterval);\n\t\t\tres.end();\n\t\t}\n\t};\n}\n"]}
@@ -1,22 +1,26 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkVKZGZZY4cjs = require('./chunk-VKZGZZY4.cjs');
3
+ var _chunkLTBTLUJDcjs = require('./chunk-LTBTLUJD.cjs');
4
4
 
5
5
 
6
- var _chunkZ6TQ7TFOcjs = require('./chunk-Z6TQ7TFO.cjs');
6
+ var _chunkOERUQFT7cjs = require('./chunk-OERUQFT7.cjs');
7
+
8
+
9
+ var _chunk4VIZ52C2cjs = require('./chunk-4VIZ52C2.cjs');
7
10
 
8
11
  // src/routes/api/intent.routes.ts
9
12
 
10
13
 
11
14
  var _express = require('express');
12
15
  var _httpstatuscodes = require('http-status-codes');
13
- var createIntentApiRouter = (memoryModule) => {
16
+ var createIntentApiRouter = () => {
14
17
  const router = _express.Router.call(void 0, );
15
- const intentApiController = new (0, _chunkVKZGZZY4cjs.IntentApiController)(memoryModule);
18
+ const intentApiController = _chunkLTBTLUJDcjs.container.getIntentApiController();
16
19
  const checkThreadMemory = (_req, _res, next) => {
20
+ const memoryModule = _chunk4VIZ52C2cjs.getMemoryModule.call(void 0, );
17
21
  const threadMemory = memoryModule.getThreadMemory();
18
22
  if (!threadMemory) {
19
- const error = new (0, _chunkZ6TQ7TFOcjs.AinHttpError)(
23
+ const error = new (0, _chunkOERUQFT7cjs.AinHttpError)(
20
24
  _httpstatuscodes.StatusCodes.SERVICE_UNAVAILABLE,
21
25
  "Memory module is not initialized"
22
26
  );
@@ -26,8 +30,8 @@ var createIntentApiRouter = (memoryModule) => {
26
30
  };
27
31
  router.get("/", checkThreadMemory, intentApiController.handleGetAllIntents);
28
32
  router.post("/save", checkThreadMemory, intentApiController.handleSaveIntent);
29
- router.delete(
30
- "/:id",
33
+ router.post(
34
+ "/delete/:id",
31
35
  checkThreadMemory,
32
36
  intentApiController.handleDeleteIntent
33
37
  );
@@ -37,4 +41,4 @@ var createIntentApiRouter = (memoryModule) => {
37
41
 
38
42
 
39
43
  exports.createIntentApiRouter = createIntentApiRouter;
40
- //# sourceMappingURL=chunk-YCTPMLZO.cjs.map
44
+ //# sourceMappingURL=chunk-HVNTK4O7.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-HVNTK4O7.cjs","../../src/routes/api/intent.routes.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACVA;AAIC;AAAA,kCACM;AACP,oDAA4B;AAKrB,IAAM,sBAAA,EAAwB,CAAA,EAAA,GAAc;AAClD,EAAA,MAAM,OAAA,EAAS,6BAAA,CAAO;AACtB,EAAA,MAAM,oBAAA,EAAsB,2BAAA,CAAU,sBAAA,CAAuB,CAAA;AAE7D,EAAA,MAAM,kBAAA,EAAoB,CACzB,IAAA,EACA,IAAA,EACA,IAAA,EAAA,GACI;AACJ,IAAA,MAAM,aAAA,EAAe,+CAAA,CAAgB;AACrC,IAAA,MAAM,aAAA,EAAe,YAAA,CAAa,eAAA,CAAgB,CAAA;AAClD,IAAA,GAAA,CAAI,CAAC,YAAA,EAAc;AAClB,MAAA,MAAM,MAAA,EAAQ,IAAI,mCAAA;AAAA,QACjB,4BAAA,CAAY,mBAAA;AAAA,QACZ;AAAA,MACD,CAAA;AACA,MAAA,MAAM,KAAA;AAAA,IACP;AACA,IAAA,IAAA,CAAK,CAAA;AAAA,EACN,CAAA;AAGA,EAAA,MAAA,CAAO,GAAA,CAAI,GAAA,EAAK,iBAAA,EAAmB,mBAAA,CAAoB,mBAAmB,CAAA;AAC1E,EAAA,MAAA,CAAO,IAAA,CAAK,OAAA,EAAS,iBAAA,EAAmB,mBAAA,CAAoB,gBAAgB,CAAA;AAC5E,EAAA,MAAA,CAAO,IAAA;AAAA,IACN,aAAA;AAAA,IACA,iBAAA;AAAA,IACA,mBAAA,CAAoB;AAAA,EACrB,CAAA;AAEA,EAAA,OAAO,MAAA;AACR,CAAA;ADHA;AACA;AACE;AACF,sDAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-HVNTK4O7.cjs","sourcesContent":[null,"import {\n\ttype NextFunction,\n\ttype Request,\n\ttype Response,\n\tRouter,\n} from \"express\";\nimport { StatusCodes } from \"http-status-codes\";\nimport { getMemoryModule } from \"@/config/modules\";\nimport { container } from \"@/container\";\nimport { AinHttpError } from \"@/types/agent\";\n\nexport const createIntentApiRouter = (): Router => {\n\tconst router = Router();\n\tconst intentApiController = container.getIntentApiController();\n\n\tconst checkThreadMemory = (\n\t\t_req: Request,\n\t\t_res: Response,\n\t\tnext: NextFunction,\n\t) => {\n\t\tconst memoryModule = getMemoryModule();\n\t\tconst threadMemory = memoryModule.getThreadMemory();\n\t\tif (!threadMemory) {\n\t\t\tconst error = new AinHttpError(\n\t\t\t\tStatusCodes.SERVICE_UNAVAILABLE,\n\t\t\t\t\"Memory module is not initialized\",\n\t\t\t);\n\t\t\tthrow error;\n\t\t}\n\t\tnext();\n\t};\n\n\t// APIs (prefix: /api/intent)\n\trouter.get(\"/\", checkThreadMemory, intentApiController.handleGetAllIntents);\n\trouter.post(\"/save\", checkThreadMemory, intentApiController.handleSaveIntent);\n\trouter.post(\n\t\t\"/delete/:id\",\n\t\tcheckThreadMemory,\n\t\tintentApiController.handleDeleteIntent,\n\t);\n\n\treturn router;\n};\n"]}
@@ -0,0 +1,62 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunkLTBTLUJDcjs = require('./chunk-LTBTLUJD.cjs');
4
+
5
+
6
+ var _chunkOERUQFT7cjs = require('./chunk-OERUQFT7.cjs');
7
+
8
+
9
+ var _chunk4VIZ52C2cjs = require('./chunk-4VIZ52C2.cjs');
10
+
11
+ // src/routes/api/workflow.routes.ts
12
+
13
+
14
+ var _express = require('express');
15
+ var _httpstatuscodes = require('http-status-codes');
16
+ var createWorkflowApiRouter = () => {
17
+ const router = _express.Router.call(void 0, );
18
+ const workflowApiController = _chunkLTBTLUJDcjs.container.getWorkflowApiController();
19
+ const checkWorkflowMemory = (_req, _res, next) => {
20
+ const memoryModule = _chunk4VIZ52C2cjs.getMemoryModule.call(void 0, );
21
+ const workflowMemory = memoryModule.getWorkflowMemory();
22
+ if (!workflowMemory) {
23
+ const error = new (0, _chunkOERUQFT7cjs.AinHttpError)(
24
+ _httpstatuscodes.StatusCodes.SERVICE_UNAVAILABLE,
25
+ "Workflow memory is not initialized"
26
+ );
27
+ throw error;
28
+ }
29
+ next();
30
+ };
31
+ router.get(
32
+ "/",
33
+ checkWorkflowMemory,
34
+ workflowApiController.handleGetAllWorkflows
35
+ );
36
+ router.get(
37
+ "/:id",
38
+ checkWorkflowMemory,
39
+ workflowApiController.handleGetWorkflow
40
+ );
41
+ router.post(
42
+ "/",
43
+ checkWorkflowMemory,
44
+ workflowApiController.handleCreateWorkflow
45
+ );
46
+ router.post(
47
+ "/update/:id",
48
+ checkWorkflowMemory,
49
+ workflowApiController.handleUpdateWorkflow
50
+ );
51
+ router.post(
52
+ "/delete/:id",
53
+ checkWorkflowMemory,
54
+ workflowApiController.handleDeleteWorkflow
55
+ );
56
+ return router;
57
+ };
58
+
59
+
60
+
61
+ exports.createWorkflowApiRouter = createWorkflowApiRouter;
62
+ //# sourceMappingURL=chunk-I72VEOEC.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-I72VEOEC.cjs","../../src/routes/api/workflow.routes.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACVA;AAIC;AAAA,kCACM;AACP,oDAA4B;AAKrB,IAAM,wBAAA,EAA0B,CAAA,EAAA,GAAc;AACpD,EAAA,MAAM,OAAA,EAAS,6BAAA,CAAO;AACtB,EAAA,MAAM,sBAAA,EAAwB,2BAAA,CAAU,wBAAA,CAAyB,CAAA;AAEjE,EAAA,MAAM,oBAAA,EAAsB,CAC3B,IAAA,EACA,IAAA,EACA,IAAA,EAAA,GACI;AACJ,IAAA,MAAM,aAAA,EAAe,+CAAA,CAAgB;AACrC,IAAA,MAAM,eAAA,EAAiB,YAAA,CAAa,iBAAA,CAAkB,CAAA;AACtD,IAAA,GAAA,CAAI,CAAC,cAAA,EAAgB;AACpB,MAAA,MAAM,MAAA,EAAQ,IAAI,mCAAA;AAAA,QACjB,4BAAA,CAAY,mBAAA;AAAA,QACZ;AAAA,MACD,CAAA;AACA,MAAA,MAAM,KAAA;AAAA,IACP;AACA,IAAA,IAAA,CAAK,CAAA;AAAA,EACN,CAAA;AAGA,EAAA,MAAA,CAAO,GAAA;AAAA,IACN,GAAA;AAAA,IACA,mBAAA;AAAA,IACA,qBAAA,CAAsB;AAAA,EACvB,CAAA;AACA,EAAA,MAAA,CAAO,GAAA;AAAA,IACN,MAAA;AAAA,IACA,mBAAA;AAAA,IACA,qBAAA,CAAsB;AAAA,EACvB,CAAA;AACA,EAAA,MAAA,CAAO,IAAA;AAAA,IACN,GAAA;AAAA,IACA,mBAAA;AAAA,IACA,qBAAA,CAAsB;AAAA,EACvB,CAAA;AACA,EAAA,MAAA,CAAO,IAAA;AAAA,IACN,aAAA;AAAA,IACA,mBAAA;AAAA,IACA,qBAAA,CAAsB;AAAA,EACvB,CAAA;AACA,EAAA,MAAA,CAAO,IAAA;AAAA,IACN,aAAA;AAAA,IACA,mBAAA;AAAA,IACA,qBAAA,CAAsB;AAAA,EACvB,CAAA;AAEA,EAAA,OAAO,MAAA;AACR,CAAA;ADHA;AACA;AACE;AACF,0DAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-I72VEOEC.cjs","sourcesContent":[null,"import {\n\ttype NextFunction,\n\ttype Request,\n\ttype Response,\n\tRouter,\n} from \"express\";\nimport { StatusCodes } from \"http-status-codes\";\nimport { getMemoryModule } from \"@/config/modules\";\nimport { container } from \"@/container\";\nimport { AinHttpError } from \"@/types/agent\";\n\nexport const createWorkflowApiRouter = (): Router => {\n\tconst router = Router();\n\tconst workflowApiController = container.getWorkflowApiController();\n\n\tconst checkWorkflowMemory = (\n\t\t_req: Request,\n\t\t_res: Response,\n\t\tnext: NextFunction,\n\t) => {\n\t\tconst memoryModule = getMemoryModule();\n\t\tconst workflowMemory = memoryModule.getWorkflowMemory();\n\t\tif (!workflowMemory) {\n\t\t\tconst error = new AinHttpError(\n\t\t\t\tStatusCodes.SERVICE_UNAVAILABLE,\n\t\t\t\t\"Workflow memory is not initialized\",\n\t\t\t);\n\t\t\tthrow error;\n\t\t}\n\t\tnext();\n\t};\n\n\t// APIs (prefix: /api/workflow)\n\trouter.get(\n\t\t\"/\",\n\t\tcheckWorkflowMemory,\n\t\tworkflowApiController.handleGetAllWorkflows,\n\t);\n\trouter.get(\n\t\t\"/:id\",\n\t\tcheckWorkflowMemory,\n\t\tworkflowApiController.handleGetWorkflow,\n\t);\n\trouter.post(\n\t\t\"/\",\n\t\tcheckWorkflowMemory,\n\t\tworkflowApiController.handleCreateWorkflow,\n\t);\n\trouter.post(\n\t\t\"/update/:id\",\n\t\tcheckWorkflowMemory,\n\t\tworkflowApiController.handleUpdateWorkflow,\n\t);\n\trouter.post(\n\t\t\"/delete/:id\",\n\t\tcheckWorkflowMemory,\n\t\tworkflowApiController.handleDeleteWorkflow,\n\t);\n\n\treturn router;\n};\n"]}
@@ -3,27 +3,38 @@
3
3
  var _chunk7HBOMBZGcjs = require('./chunk-7HBOMBZG.cjs');
4
4
 
5
5
 
6
- var _chunkO5X5QT63cjs = require('./chunk-O5X5QT63.cjs');
6
+ var _chunkVM74R2KPcjs = require('./chunk-VM74R2KP.cjs');
7
7
 
8
8
 
9
9
  var _chunkCLJ3DWTAcjs = require('./chunk-CLJ3DWTA.cjs');
10
10
 
11
- // src/services/intents/fulfill-stream.service.ts
11
+
12
+ var _chunkO5X5QT63cjs = require('./chunk-O5X5QT63.cjs');
13
+
14
+ // src/services/intents/fulfill.service.ts
12
15
  var _crypto = require('crypto');
13
- var IntentFulfillStreamService = class {
16
+ function isMultiIntentDisabled() {
17
+ const value = process.env.DISABLE_MULTI_INTENTS;
18
+ return value === "true" || value === "1";
19
+ }
20
+ var IntentFulfillService = class {
21
+
14
22
 
15
23
 
16
24
 
17
25
 
18
- constructor(modelModule, a2aModule, mcpModule, memoryModule) {
26
+
27
+ constructor(modelModule, memoryModule, a2aModule, mcpModule, onIntentFallback) {
19
28
  this.modelModule = modelModule;
29
+ this.memoryModule = memoryModule;
20
30
  this.a2aModule = a2aModule;
21
31
  this.mcpModule = mcpModule;
22
- this.memoryModule = memoryModule;
32
+ this.onIntentFallback = onIntentFallback;
33
+ this.aggregateService = new (0, _chunkVM74R2KPcjs.AggregateService)(modelModule);
23
34
  }
24
35
  async addToThreadMessages(thread, params) {
25
36
  try {
26
- const threadMemory = _optionalChain([this, 'access', _ => _.memoryModule, 'optionalAccess', _2 => _2.getThreadMemory, 'call', _3 => _3()]);
37
+ const threadMemory = this.memoryModule.getThreadMemory();
27
38
  const { userId, threadId } = thread;
28
39
  const newMessage = {
29
40
  messageId: _crypto.randomUUID.call(void 0, ),
@@ -33,7 +44,7 @@ var IntentFulfillStreamService = class {
33
44
  metadata: params.metadata
34
45
  };
35
46
  thread.messages.push(newMessage);
36
- await _optionalChain([threadMemory, 'optionalAccess', _4 => _4.addMessagesToThread, 'call', _5 => _5(userId, threadId, [newMessage])]);
47
+ await _optionalChain([threadMemory, 'optionalAccess', _ => _.addMessagesToThread, 'call', _2 => _2(userId, threadId, [newMessage])]);
37
48
  } catch (error) {
38
49
  _chunkCLJ3DWTAcjs.loggers.intentStream.error("Error adding message to thread", error);
39
50
  }
@@ -55,7 +66,7 @@ var IntentFulfillStreamService = class {
55
66
  * @returns AsyncGenerator yielding StreamEvent objects
56
67
  */
57
68
  async *intentFulfilling(query, thread, intent) {
58
- const agentMemory = _optionalChain([this, 'access', _6 => _6.memoryModule, 'optionalAccess', _7 => _7.getAgentMemory, 'call', _8 => _8()]);
69
+ const agentMemory = this.memoryModule.getAgentMemory();
59
70
  const fulfillPrompt = await _chunk7HBOMBZGcjs.createFulfillPrompt.call(void 0, agentMemory, intent);
60
71
  const modelInstance = this.modelModule.getModel();
61
72
  const modelOptions = this.modelModule.getModelOptions();
@@ -82,7 +93,7 @@ var IntentFulfillStreamService = class {
82
93
  const assembledToolCalls = [];
83
94
  for await (const chunk of responseStream) {
84
95
  const delta = chunk.delta;
85
- if (_optionalChain([delta, 'optionalAccess', _9 => _9.tool_calls])) {
96
+ if (_optionalChain([delta, 'optionalAccess', _3 => _3.tool_calls])) {
86
97
  for (const { index, id, function: func } of delta.tool_calls) {
87
98
  assembledToolCalls[index] ??= {
88
99
  id: "",
@@ -90,11 +101,11 @@ var IntentFulfillStreamService = class {
90
101
  function: { name: "", arguments: "" }
91
102
  };
92
103
  if (id) assembledToolCalls[index].id = id;
93
- if (_optionalChain([func, 'optionalAccess', _10 => _10.name])) assembledToolCalls[index].function.name = func.name;
94
- if (_optionalChain([func, 'optionalAccess', _11 => _11.arguments]))
104
+ if (_optionalChain([func, 'optionalAccess', _4 => _4.name])) assembledToolCalls[index].function.name = func.name;
105
+ if (_optionalChain([func, 'optionalAccess', _5 => _5.arguments]))
95
106
  assembledToolCalls[index].function.arguments += func.arguments;
96
107
  }
97
- } else if (_optionalChain([chunk, 'access', _12 => _12.delta, 'optionalAccess', _13 => _13.content])) {
108
+ } else if (_optionalChain([chunk, 'access', _6 => _6.delta, 'optionalAccess', _7 => _7.content])) {
98
109
  yield {
99
110
  event: "text_chunk",
100
111
  data: { delta: chunk.delta.content }
@@ -166,17 +177,42 @@ var IntentFulfillStreamService = class {
166
177
  _chunkCLJ3DWTAcjs.loggers.intent.debug("Intent fulfillment completed", {
167
178
  threadId: thread.threadId,
168
179
  toolCallsExecuted: processList.length,
169
- intentName: _optionalChain([intent, 'optionalAccess', _14 => _14.name])
180
+ intentName: _optionalChain([intent, 'optionalAccess', _8 => _8.name])
170
181
  });
171
182
  }
172
183
  /**
173
- * Detects the intent from context.
184
+ * Returns the appropriate stream for a triggered intent.
185
+ * Uses fallback handler if no intent matched and fallback is configured.
186
+ */
187
+ getIntentStream(triggeredIntent, thread) {
188
+ const { subquery = "", intent } = triggeredIntent;
189
+ if (!intent && this.onIntentFallback) {
190
+ _chunkCLJ3DWTAcjs.loggers.intent.info("No intent matched, calling fallback handler");
191
+ const fallbackStream = this.onIntentFallback({
192
+ triggeredIntent,
193
+ thread
194
+ });
195
+ if (fallbackStream !== void 0) {
196
+ return fallbackStream;
197
+ }
198
+ }
199
+ return this.intentFulfilling(subquery, thread, intent);
200
+ }
201
+ /**
202
+ * Processes all triggered intents and generates a unified response.
203
+ *
204
+ * Workflow:
205
+ * 1. Process each intent sequentially, collecting results
206
+ * 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
174
209
  *
175
- * @param intents - The user's input query
210
+ * @param intents - Array of triggered intents to process
176
211
  * @param thread - The thread history
177
- * @returns The detected intent
212
+ * @param originalQuery - The user's original query (for rewrite context)
213
+ * @returns AsyncGenerator yielding StreamEvent objects
178
214
  */
179
- async *intentFulfillStream(intents, thread) {
215
+ async *intentFulfill(intents, thread, originalQuery) {
180
216
  const streamStartTime = Date.now();
181
217
  _chunkCLJ3DWTAcjs.loggers.intentStream.info("Stream session started", {
182
218
  threadId: thread.threadId,
@@ -184,34 +220,82 @@ var IntentFulfillStreamService = class {
184
220
  startTime: new Date(streamStartTime).toISOString()
185
221
  });
186
222
  let finalResponseText = "";
187
- for (let i = 0; i < intents.length; i++) {
188
- const { subquery, intent, actionPlan } = intents[i];
189
- _chunkCLJ3DWTAcjs.loggers.intent.info(`Process query: ${subquery}, ${_optionalChain([intent, 'optionalAccess', _15 => _15.name])}`);
223
+ if (isMultiIntentDisabled()) {
224
+ const triggeredIntent = intents[0];
225
+ if (!triggeredIntent) {
226
+ return;
227
+ }
228
+ const { subquery = "", intent, actionPlan } = triggeredIntent;
229
+ _chunkCLJ3DWTAcjs.loggers.intent.info(`Process query: ${subquery}, ${_optionalChain([intent, 'optionalAccess', _9 => _9.name])}`);
190
230
  _chunkCLJ3DWTAcjs.loggers.intent.info(`Action plan: ${actionPlan}`);
191
- finalResponseText !== "" && thread.messages.push({
192
- messageId: _crypto.randomUUID.call(void 0, ),
193
- role: "MODEL" /* MODEL */,
194
- timestamp: Date.now(),
195
- content: { type: "text", parts: [finalResponseText] },
196
- metadata: { isThinking: true }
197
- });
198
- const thinkData = {
199
- title: `[${_chunkO5X5QT63cjs.getManifest.call(void 0, ).name}] ${subquery}`,
200
- description: actionPlan || ""
201
- };
202
231
  yield {
203
232
  event: "thinking_process",
204
- data: thinkData
233
+ data: {
234
+ title: `[${_chunkO5X5QT63cjs.getManifest.call(void 0, ).name}] ${subquery}`,
235
+ description: actionPlan || ""
236
+ }
205
237
  };
206
- const stream = this.intentFulfilling(subquery, thread, intent);
207
- finalResponseText = "";
238
+ const stream = this.getIntentStream(triggeredIntent, thread);
239
+ if (!stream) {
240
+ return;
241
+ }
208
242
  for await (const event of stream) {
209
243
  if (event.event === "text_chunk" && event.data.delta) {
210
244
  finalResponseText += event.data.delta;
211
245
  }
212
- if (event.event === "text_chunk" && i !== intents.length - 1) {
246
+ yield event;
247
+ }
248
+ } else {
249
+ const fulfillmentResults = [];
250
+ for (let i = 0; i < intents.length; i++) {
251
+ const triggeredIntent = intents[i];
252
+ const { subquery = "", intent, actionPlan } = triggeredIntent;
253
+ _chunkCLJ3DWTAcjs.loggers.intent.info(`Process query: ${subquery}, ${_optionalChain([intent, 'optionalAccess', _10 => _10.name])}`);
254
+ _chunkCLJ3DWTAcjs.loggers.intent.info(`Action plan: ${actionPlan}`);
255
+ if (fulfillmentResults.length > 0) {
256
+ const lastResult = fulfillmentResults[fulfillmentResults.length - 1];
257
+ thread.messages.push({
258
+ messageId: _crypto.randomUUID.call(void 0, ),
259
+ role: "MODEL" /* MODEL */,
260
+ timestamp: Date.now(),
261
+ content: { type: "text", parts: [lastResult.response] },
262
+ metadata: { isThinking: true }
263
+ });
264
+ }
265
+ yield {
266
+ event: "thinking_process",
267
+ data: {
268
+ title: `[${_chunkO5X5QT63cjs.getManifest.call(void 0, ).name}] ${subquery}`,
269
+ description: actionPlan || ""
270
+ }
271
+ };
272
+ const stream = this.getIntentStream(triggeredIntent, thread);
273
+ if (!stream) {
213
274
  continue;
214
275
  }
276
+ let responseText = "";
277
+ for await (const event of stream) {
278
+ if (event.event === "text_chunk" && event.data.delta) {
279
+ responseText += event.data.delta;
280
+ } else if (event.event === "thinking_process") {
281
+ yield event;
282
+ }
283
+ }
284
+ fulfillmentResults.push({
285
+ subquery,
286
+ intent,
287
+ actionPlan,
288
+ response: responseText
289
+ });
290
+ }
291
+ const aggregateStream = this.aggregateService.aggregateIfNeeded(
292
+ originalQuery,
293
+ fulfillmentResults
294
+ );
295
+ for await (const event of aggregateStream) {
296
+ if (event.event === "text_chunk" && event.data.delta) {
297
+ finalResponseText += event.data.delta;
298
+ }
215
299
  yield event;
216
300
  }
217
301
  }
@@ -231,5 +315,5 @@ var IntentFulfillStreamService = class {
231
315
 
232
316
 
233
317
 
234
- exports.IntentFulfillStreamService = IntentFulfillStreamService;
235
- //# sourceMappingURL=chunk-OZPPTVUA.cjs.map
318
+ exports.IntentFulfillService = IntentFulfillService;
319
+ //# sourceMappingURL=chunk-IP6P2TQM.cjs.map