@ainetwork/adk 0.0.2 → 0.1.1

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 (550) hide show
  1. package/README.md +9 -39
  2. package/dist/cjs/chunk-5VIAH4HE.cjs +34 -0
  3. package/dist/cjs/chunk-5VIAH4HE.cjs.map +1 -0
  4. package/dist/cjs/chunk-6YJFC7BY.cjs +22 -0
  5. package/dist/cjs/chunk-6YJFC7BY.cjs.map +1 -0
  6. package/dist/cjs/chunk-7BZO57TG.cjs +111 -0
  7. package/dist/cjs/chunk-7BZO57TG.cjs.map +1 -0
  8. package/dist/cjs/chunk-AHMW3HCU.cjs +168 -0
  9. package/dist/cjs/chunk-AHMW3HCU.cjs.map +1 -0
  10. package/dist/cjs/chunk-CR53JLN7.cjs +37 -0
  11. package/dist/cjs/chunk-CR53JLN7.cjs.map +1 -0
  12. package/dist/cjs/chunk-D525HP3R.cjs +17 -0
  13. package/dist/cjs/chunk-D525HP3R.cjs.map +1 -0
  14. package/dist/cjs/chunk-DOFTYGJR.cjs +21 -0
  15. package/dist/cjs/chunk-DOFTYGJR.cjs.map +1 -0
  16. package/dist/cjs/chunk-DX2JH3FJ.cjs +13 -0
  17. package/dist/cjs/chunk-DX2JH3FJ.cjs.map +1 -0
  18. package/dist/cjs/chunk-DYRSSHDI.cjs +22 -0
  19. package/dist/cjs/chunk-DYRSSHDI.cjs.map +1 -0
  20. package/dist/cjs/chunk-E433ONEN.cjs +26 -0
  21. package/dist/cjs/chunk-E433ONEN.cjs.map +1 -0
  22. package/dist/cjs/chunk-EL3TFOO4.cjs +8 -0
  23. package/dist/cjs/chunk-EL3TFOO4.cjs.map +1 -0
  24. package/dist/cjs/chunk-F7I4G6JG.cjs +26 -0
  25. package/dist/cjs/chunk-F7I4G6JG.cjs.map +1 -0
  26. package/dist/cjs/chunk-ILGIEJCX.cjs +111 -0
  27. package/dist/cjs/chunk-ILGIEJCX.cjs.map +1 -0
  28. package/dist/cjs/chunk-JTAXZJQ2.cjs +40 -0
  29. package/dist/cjs/chunk-JTAXZJQ2.cjs.map +1 -0
  30. package/dist/cjs/chunk-KOQCHAYO.cjs +8 -0
  31. package/dist/cjs/chunk-KOQCHAYO.cjs.map +1 -0
  32. package/dist/cjs/chunk-LISZOU2X.cjs +20 -0
  33. package/dist/cjs/chunk-LISZOU2X.cjs.map +1 -0
  34. package/dist/cjs/chunk-LPXYZH22.cjs +11 -0
  35. package/dist/cjs/chunk-LPXYZH22.cjs.map +1 -0
  36. package/dist/cjs/chunk-MPIGSL72.cjs +42 -0
  37. package/dist/cjs/chunk-MPIGSL72.cjs.map +1 -0
  38. package/dist/cjs/chunk-MWX4THZT.cjs +100 -0
  39. package/dist/cjs/chunk-MWX4THZT.cjs.map +1 -0
  40. package/dist/cjs/chunk-N7NGEMKL.cjs +17 -0
  41. package/dist/cjs/chunk-N7NGEMKL.cjs.map +1 -0
  42. package/dist/cjs/chunk-QWASSVCU.cjs +52 -0
  43. package/dist/cjs/chunk-QWASSVCU.cjs.map +1 -0
  44. package/dist/cjs/chunk-SSSDO7PA.cjs +1 -0
  45. package/dist/cjs/chunk-SSSDO7PA.cjs.map +1 -0
  46. package/dist/cjs/chunk-V5RSN2DY.cjs +20 -0
  47. package/dist/cjs/chunk-V5RSN2DY.cjs.map +1 -0
  48. package/dist/cjs/chunk-VNM6OHT3.cjs +27 -0
  49. package/dist/cjs/chunk-VNM6OHT3.cjs.map +1 -0
  50. package/dist/cjs/chunk-WTT6FJEA.cjs +8 -0
  51. package/dist/cjs/chunk-WTT6FJEA.cjs.map +1 -0
  52. package/dist/cjs/chunk-YRNIZTPF.cjs +34 -0
  53. package/dist/cjs/chunk-YRNIZTPF.cjs.map +1 -0
  54. package/dist/cjs/chunk-ZMYG5HDT.cjs +171 -0
  55. package/dist/cjs/chunk-ZMYG5HDT.cjs.map +1 -0
  56. package/dist/cjs/controllers/a2a.controller.cjs +8 -0
  57. package/dist/cjs/controllers/a2a.controller.cjs.map +1 -0
  58. package/dist/cjs/controllers/api/model.api.controller.cjs +7 -0
  59. package/dist/cjs/controllers/api/model.api.controller.cjs.map +1 -0
  60. package/dist/cjs/controllers/api/session.api.controller.cjs +8 -0
  61. package/dist/cjs/controllers/api/session.api.controller.cjs.map +1 -0
  62. package/dist/cjs/controllers/index.cjs +21 -0
  63. package/dist/cjs/controllers/index.cjs.map +1 -0
  64. package/dist/cjs/controllers/query.controller.cjs +7 -0
  65. package/dist/cjs/controllers/query.controller.cjs.map +1 -0
  66. package/dist/cjs/index.cjs +728 -0
  67. package/dist/cjs/index.cjs.map +1 -0
  68. package/dist/cjs/middlewares/auth.middleware.cjs +8 -0
  69. package/dist/cjs/middlewares/auth.middleware.cjs.map +1 -0
  70. package/dist/cjs/middlewares/error.middleware.cjs +8 -0
  71. package/dist/cjs/middlewares/error.middleware.cjs.map +1 -0
  72. package/dist/cjs/modules/a2a/a2a.module.cjs +10 -0
  73. package/dist/cjs/modules/a2a/a2a.module.cjs.map +1 -0
  74. package/dist/cjs/modules/a2a/a2a.tool.cjs +8 -0
  75. package/dist/cjs/modules/a2a/a2a.tool.cjs.map +1 -0
  76. package/dist/cjs/modules/auth/base.auth.cjs +7 -0
  77. package/dist/cjs/modules/auth/base.auth.cjs.map +1 -0
  78. package/dist/cjs/modules/index.cjs +36 -0
  79. package/dist/cjs/modules/index.cjs.map +1 -0
  80. package/dist/cjs/modules/mcp/mcp.module.cjs +10 -0
  81. package/dist/cjs/modules/mcp/mcp.module.cjs.map +1 -0
  82. package/dist/cjs/modules/mcp/mcp.tool.cjs +8 -0
  83. package/dist/cjs/modules/mcp/mcp.tool.cjs.map +1 -0
  84. package/dist/cjs/modules/memory/base.memory.cjs +7 -0
  85. package/dist/cjs/modules/memory/base.memory.cjs.map +1 -0
  86. package/dist/cjs/modules/memory/memory.module.cjs +8 -0
  87. package/dist/cjs/modules/memory/memory.module.cjs.map +1 -0
  88. package/dist/cjs/modules/models/base.model.cjs +7 -0
  89. package/dist/cjs/modules/models/base.model.cjs.map +1 -0
  90. package/dist/cjs/modules/models/model.module.cjs +7 -0
  91. package/dist/cjs/modules/models/model.module.cjs.map +1 -0
  92. package/dist/cjs/routes/a2a.routes.cjs +13 -0
  93. package/dist/cjs/routes/a2a.routes.cjs.map +1 -0
  94. package/dist/cjs/routes/api/models.routes.cjs +8 -0
  95. package/dist/cjs/routes/api/models.routes.cjs.map +1 -0
  96. package/dist/cjs/routes/api/sessions.routes.cjs +9 -0
  97. package/dist/cjs/routes/api/sessions.routes.cjs.map +1 -0
  98. package/dist/cjs/routes/api.routes.cjs +12 -0
  99. package/dist/cjs/routes/api.routes.cjs.map +1 -0
  100. package/dist/cjs/routes/index.cjs +34 -0
  101. package/dist/cjs/routes/index.cjs.map +1 -0
  102. package/dist/cjs/routes/query.routes.cjs +12 -0
  103. package/dist/cjs/routes/query.routes.cjs.map +1 -0
  104. package/dist/cjs/services/a2a.service.cjs +8 -0
  105. package/dist/cjs/services/a2a.service.cjs.map +1 -0
  106. package/dist/cjs/services/index.cjs +14 -0
  107. package/dist/cjs/services/index.cjs.map +1 -0
  108. package/dist/cjs/services/query.service.cjs +10 -0
  109. package/dist/cjs/services/query.service.cjs.map +1 -0
  110. package/dist/cjs/types/agent.cjs +7 -0
  111. package/dist/cjs/types/agent.cjs.map +1 -0
  112. package/dist/cjs/types/mcp.cjs +1 -0
  113. package/dist/cjs/types/mcp.cjs.map +1 -0
  114. package/dist/cjs/types/memory.cjs +9 -0
  115. package/dist/cjs/types/memory.cjs.map +1 -0
  116. package/dist/cjs/types/tool.cjs +7 -0
  117. package/dist/cjs/types/tool.cjs.map +1 -0
  118. package/dist/cjs/utils/logger.cjs +11 -0
  119. package/dist/cjs/utils/logger.cjs.map +1 -0
  120. package/dist/esm/chunk-2Z7GJVJJ.js +17 -0
  121. package/dist/esm/chunk-2Z7GJVJJ.js.map +1 -0
  122. package/dist/esm/chunk-3LLHEUY2.js +26 -0
  123. package/dist/esm/chunk-3LLHEUY2.js.map +1 -0
  124. package/dist/esm/chunk-635VQ4CH.js +42 -0
  125. package/dist/esm/chunk-635VQ4CH.js.map +1 -0
  126. package/dist/esm/chunk-64GEXWSE.js +40 -0
  127. package/dist/esm/chunk-64GEXWSE.js.map +1 -0
  128. package/dist/esm/chunk-AQ5YZERE.js +111 -0
  129. package/dist/esm/chunk-AQ5YZERE.js.map +1 -0
  130. package/dist/esm/chunk-BTZVK3EA.js +100 -0
  131. package/dist/esm/chunk-BTZVK3EA.js.map +1 -0
  132. package/dist/esm/chunk-CH4XHVJY.js +37 -0
  133. package/dist/esm/chunk-CH4XHVJY.js.map +1 -0
  134. package/dist/esm/chunk-CQ6GXYN2.js +27 -0
  135. package/dist/esm/chunk-CQ6GXYN2.js.map +1 -0
  136. package/dist/esm/chunk-DGH3GB5I.js +26 -0
  137. package/dist/esm/chunk-DGH3GB5I.js.map +1 -0
  138. package/dist/esm/chunk-EODMRV4H.js +111 -0
  139. package/dist/esm/chunk-EODMRV4H.js.map +1 -0
  140. package/dist/esm/chunk-FI2UQLVC.js +11 -0
  141. package/dist/esm/chunk-FI2UQLVC.js.map +1 -0
  142. package/dist/esm/chunk-FL3JRQM4.js +13 -0
  143. package/dist/esm/chunk-FL3JRQM4.js.map +1 -0
  144. package/dist/esm/chunk-GZFRRFOE.js +8 -0
  145. package/dist/esm/chunk-GZFRRFOE.js.map +1 -0
  146. package/dist/esm/chunk-ILFWNK3W.js +22 -0
  147. package/dist/esm/chunk-ILFWNK3W.js.map +1 -0
  148. package/dist/esm/chunk-KJ4MVCYE.js +8 -0
  149. package/dist/esm/chunk-KJ4MVCYE.js.map +1 -0
  150. package/dist/esm/chunk-KUMCCCED.js +8 -0
  151. package/dist/esm/chunk-KUMCCCED.js.map +1 -0
  152. package/dist/esm/chunk-M4HGSCXF.js +17 -0
  153. package/dist/esm/chunk-M4HGSCXF.js.map +1 -0
  154. package/dist/esm/chunk-PHKK5NHK.js +52 -0
  155. package/dist/esm/chunk-PHKK5NHK.js.map +1 -0
  156. package/dist/esm/chunk-SQWZXP4P.js +168 -0
  157. package/dist/esm/chunk-SQWZXP4P.js.map +1 -0
  158. package/dist/esm/chunk-TMHRCGTE.js +20 -0
  159. package/dist/esm/chunk-TMHRCGTE.js.map +1 -0
  160. package/dist/esm/chunk-UA44VKFE.js +20 -0
  161. package/dist/esm/chunk-UA44VKFE.js.map +1 -0
  162. package/dist/esm/chunk-UZQZXNND.js +22 -0
  163. package/dist/esm/chunk-UZQZXNND.js.map +1 -0
  164. package/dist/esm/chunk-WZBXLGQK.js +171 -0
  165. package/dist/esm/chunk-WZBXLGQK.js.map +1 -0
  166. package/dist/esm/chunk-X47DAWPH.js +34 -0
  167. package/dist/esm/chunk-X47DAWPH.js.map +1 -0
  168. package/dist/esm/chunk-XOMQNCCR.js +21 -0
  169. package/dist/esm/chunk-XOMQNCCR.js.map +1 -0
  170. package/dist/esm/chunk-XPJK5O3I.js +34 -0
  171. package/dist/esm/chunk-XPJK5O3I.js.map +1 -0
  172. package/dist/esm/chunk-XYCWK2ZM.js +1 -0
  173. package/dist/esm/chunk-XYCWK2ZM.js.map +1 -0
  174. package/dist/esm/controllers/a2a.controller.d.ts +25 -6
  175. package/dist/esm/controllers/a2a.controller.js +7 -93
  176. package/dist/esm/controllers/a2a.controller.js.map +1 -1
  177. package/dist/esm/controllers/api/model.api.controller.d.ts +12 -4
  178. package/dist/esm/controllers/api/model.api.controller.js +6 -14
  179. package/dist/esm/controllers/api/model.api.controller.js.map +1 -1
  180. package/dist/esm/controllers/api/session.api.controller.d.ts +8 -4
  181. package/dist/esm/controllers/api/session.api.controller.js +7 -22
  182. package/dist/esm/controllers/api/session.api.controller.js.map +1 -1
  183. package/dist/esm/controllers/index.d.ts +25 -5
  184. package/dist/esm/controllers/index.js +20 -4
  185. package/dist/esm/controllers/index.js.map +1 -1
  186. package/dist/esm/controllers/query.controller.d.ts +23 -4
  187. package/dist/esm/controllers/query.controller.js +6 -15
  188. package/dist/esm/controllers/query.controller.js.map +1 -1
  189. package/dist/{cjs/app.d.ts → esm/index.d.ts} +23 -10
  190. package/dist/esm/index.js +728 -0
  191. package/dist/esm/index.js.map +1 -0
  192. package/dist/esm/middlewares/auth.middleware.d.ts +10 -0
  193. package/dist/esm/middlewares/auth.middleware.js +8 -0
  194. package/dist/esm/middlewares/auth.middleware.js.map +1 -0
  195. package/dist/esm/middlewares/error.middleware.d.ts +7 -4
  196. package/dist/esm/middlewares/error.middleware.js +6 -11
  197. package/dist/esm/middlewares/error.middleware.js.map +1 -1
  198. package/dist/esm/modules/a2a/a2a.module.d.ts +9 -4
  199. package/dist/esm/modules/a2a/a2a.module.js +9 -190
  200. package/dist/esm/modules/a2a/a2a.module.js.map +1 -1
  201. package/dist/esm/modules/a2a/a2a.tool.d.ts +8 -5
  202. package/dist/esm/modules/a2a/a2a.tool.js +7 -16
  203. package/dist/esm/modules/a2a/a2a.tool.js.map +1 -1
  204. package/dist/esm/modules/auth/base.auth.d.ts +7 -0
  205. package/dist/esm/modules/auth/base.auth.js +7 -0
  206. package/dist/esm/modules/auth/base.auth.js.map +1 -0
  207. package/dist/esm/modules/index.d.ts +17 -6
  208. package/dist/esm/modules/index.js +35 -5
  209. package/dist/esm/modules/index.js.map +1 -1
  210. package/dist/esm/modules/mcp/mcp.module.d.ts +11 -4
  211. package/dist/esm/modules/mcp/mcp.module.js +9 -113
  212. package/dist/esm/modules/mcp/mcp.module.js.map +1 -1
  213. package/dist/esm/modules/mcp/mcp.tool.d.ts +8 -4
  214. package/dist/esm/modules/mcp/mcp.tool.js +7 -17
  215. package/dist/esm/modules/mcp/mcp.tool.js.map +1 -1
  216. package/dist/esm/modules/memory/base.memory.d.ts +5 -3
  217. package/dist/esm/modules/memory/base.memory.js +6 -9
  218. package/dist/esm/modules/memory/base.memory.js.map +1 -1
  219. package/dist/esm/modules/memory/memory.module.d.ts +6 -4
  220. package/dist/esm/modules/memory/memory.module.js +7 -43
  221. package/dist/esm/modules/memory/memory.module.js.map +1 -1
  222. package/dist/esm/modules/models/base.model.d.ts +9 -4
  223. package/dist/esm/modules/models/base.model.js +6 -12
  224. package/dist/esm/modules/models/base.model.js.map +1 -1
  225. package/dist/esm/modules/models/model.module.d.ts +10 -3
  226. package/dist/esm/modules/models/model.module.js +6 -62
  227. package/dist/esm/modules/models/model.module.js.map +1 -1
  228. package/dist/esm/routes/a2a.routes.d.ts +24 -4
  229. package/dist/esm/routes/a2a.routes.js +11 -23
  230. package/dist/esm/routes/a2a.routes.js.map +1 -1
  231. package/dist/esm/routes/api/models.routes.d.ts +12 -4
  232. package/dist/esm/routes/api/models.routes.js +6 -8
  233. package/dist/esm/routes/api/models.routes.js.map +1 -1
  234. package/dist/esm/routes/api/sessions.routes.d.ts +8 -4
  235. package/dist/esm/routes/api/sessions.routes.js +7 -8
  236. package/dist/esm/routes/api/sessions.routes.js.map +1 -1
  237. package/dist/esm/routes/api.routes.d.ts +24 -4
  238. package/dist/esm/routes/api.routes.js +10 -10
  239. package/dist/esm/routes/api.routes.js.map +1 -1
  240. package/dist/esm/routes/index.d.ts +25 -5
  241. package/dist/esm/routes/index.js +33 -4
  242. package/dist/esm/routes/index.js.map +1 -1
  243. package/dist/esm/routes/query.routes.d.ts +24 -4
  244. package/dist/esm/routes/query.routes.js +10 -9
  245. package/dist/esm/routes/query.routes.js.map +1 -1
  246. package/dist/esm/services/a2a.service.d.ts +23 -4
  247. package/dist/esm/services/a2a.service.js +7 -88
  248. package/dist/esm/services/a2a.service.js.map +1 -1
  249. package/dist/esm/services/index.d.ts +20 -3
  250. package/dist/esm/services/index.js +13 -2
  251. package/dist/esm/services/index.js.map +1 -1
  252. package/dist/esm/services/query.service.d.ts +21 -4
  253. package/dist/esm/services/query.service.js +9 -157
  254. package/dist/esm/services/query.service.js.map +1 -1
  255. package/dist/esm/types/{index.d.ts → agent.d.ts} +7 -5
  256. package/dist/esm/types/agent.js +7 -0
  257. package/dist/esm/types/agent.js.map +1 -0
  258. package/dist/esm/types/mcp.d.ts +5 -3
  259. package/dist/esm/types/mcp.js +0 -1
  260. package/dist/esm/types/mcp.js.map +1 -1
  261. package/dist/esm/types/memory.d.ts +7 -6
  262. package/dist/esm/types/memory.js +8 -19
  263. package/dist/esm/types/memory.js.map +1 -1
  264. package/dist/esm/types/tool.d.ts +12 -10
  265. package/dist/esm/types/tool.js +6 -10
  266. package/dist/esm/types/tool.js.map +1 -1
  267. package/dist/esm/utils/logger.d.ts +7 -5
  268. package/dist/esm/utils/logger.js +9 -30
  269. package/dist/esm/utils/logger.js.map +1 -1
  270. package/package.json +32 -13
  271. package/dist/cjs/app.d.ts.map +0 -1
  272. package/dist/cjs/app.js +0 -170
  273. package/dist/cjs/app.js.map +0 -1
  274. package/dist/cjs/controllers/a2a.controller.d.ts +0 -15
  275. package/dist/cjs/controllers/a2a.controller.d.ts.map +0 -1
  276. package/dist/cjs/controllers/a2a.controller.js +0 -98
  277. package/dist/cjs/controllers/a2a.controller.js.map +0 -1
  278. package/dist/cjs/controllers/api/model.api.controller.d.ts +0 -8
  279. package/dist/cjs/controllers/api/model.api.controller.d.ts.map +0 -1
  280. package/dist/cjs/controllers/api/model.api.controller.js +0 -19
  281. package/dist/cjs/controllers/api/model.api.controller.js.map +0 -1
  282. package/dist/cjs/controllers/api/session.api.controller.d.ts +0 -8
  283. package/dist/cjs/controllers/api/session.api.controller.d.ts.map +0 -1
  284. package/dist/cjs/controllers/api/session.api.controller.js +0 -27
  285. package/dist/cjs/controllers/api/session.api.controller.js.map +0 -1
  286. package/dist/cjs/controllers/index.d.ts +0 -5
  287. package/dist/cjs/controllers/index.d.ts.map +0 -1
  288. package/dist/cjs/controllers/index.js +0 -12
  289. package/dist/cjs/controllers/index.js.map +0 -1
  290. package/dist/cjs/controllers/query.controller.d.ts +0 -8
  291. package/dist/cjs/controllers/query.controller.d.ts.map +0 -1
  292. package/dist/cjs/controllers/query.controller.js +0 -20
  293. package/dist/cjs/controllers/query.controller.js.map +0 -1
  294. package/dist/cjs/middlewares/auth/base.d.ts +0 -5
  295. package/dist/cjs/middlewares/auth/base.d.ts.map +0 -1
  296. package/dist/cjs/middlewares/auth/base.js +0 -13
  297. package/dist/cjs/middlewares/auth/base.js.map +0 -1
  298. package/dist/cjs/middlewares/base.auth.middleware.d.ts +0 -5
  299. package/dist/cjs/middlewares/base.auth.middleware.d.ts.map +0 -1
  300. package/dist/cjs/middlewares/base.auth.middleware.js +0 -13
  301. package/dist/cjs/middlewares/base.auth.middleware.js.map +0 -1
  302. package/dist/cjs/middlewares/error.middleware.d.ts +0 -4
  303. package/dist/cjs/middlewares/error.middleware.d.ts.map +0 -1
  304. package/dist/cjs/middlewares/error.middleware.js +0 -17
  305. package/dist/cjs/middlewares/error.middleware.js.map +0 -1
  306. package/dist/cjs/modules/a2a/a2a.module.d.ts +0 -71
  307. package/dist/cjs/modules/a2a/a2a.module.d.ts.map +0 -1
  308. package/dist/cjs/modules/a2a/a2a.module.js +0 -195
  309. package/dist/cjs/modules/a2a/a2a.module.js.map +0 -1
  310. package/dist/cjs/modules/a2a/a2a.tool.d.ts +0 -14
  311. package/dist/cjs/modules/a2a/a2a.tool.d.ts.map +0 -1
  312. package/dist/cjs/modules/a2a/a2a.tool.js +0 -21
  313. package/dist/cjs/modules/a2a/a2a.tool.js.map +0 -1
  314. package/dist/cjs/modules/fol/fol.module.d.ts +0 -31
  315. package/dist/cjs/modules/fol/fol.module.d.ts.map +0 -1
  316. package/dist/cjs/modules/fol/fol.module.js +0 -184
  317. package/dist/cjs/modules/fol/fol.module.js.map +0 -1
  318. package/dist/cjs/modules/fol/store/base.d.ts +0 -9
  319. package/dist/cjs/modules/fol/store/base.d.ts.map +0 -1
  320. package/dist/cjs/modules/fol/store/base.js +0 -7
  321. package/dist/cjs/modules/fol/store/base.js.map +0 -1
  322. package/dist/cjs/modules/fol/store/index.d.ts +0 -3
  323. package/dist/cjs/modules/fol/store/index.d.ts.map +0 -1
  324. package/dist/cjs/modules/fol/store/index.js +0 -8
  325. package/dist/cjs/modules/fol/store/index.js.map +0 -1
  326. package/dist/cjs/modules/fol/store/local.d.ts +0 -25
  327. package/dist/cjs/modules/fol/store/local.d.ts.map +0 -1
  328. package/dist/cjs/modules/fol/store/local.js +0 -221
  329. package/dist/cjs/modules/fol/store/local.js.map +0 -1
  330. package/dist/cjs/modules/index.d.ts +0 -6
  331. package/dist/cjs/modules/index.d.ts.map +0 -1
  332. package/dist/cjs/modules/index.js +0 -14
  333. package/dist/cjs/modules/index.js.map +0 -1
  334. package/dist/cjs/modules/mcp/mcp.module.d.ts +0 -65
  335. package/dist/cjs/modules/mcp/mcp.module.d.ts.map +0 -1
  336. package/dist/cjs/modules/mcp/mcp.module.js +0 -118
  337. package/dist/cjs/modules/mcp/mcp.module.js.map +0 -1
  338. package/dist/cjs/modules/mcp/mcp.tool.d.ts +0 -13
  339. package/dist/cjs/modules/mcp/mcp.tool.d.ts.map +0 -1
  340. package/dist/cjs/modules/mcp/mcp.tool.js +0 -22
  341. package/dist/cjs/modules/mcp/mcp.tool.js.map +0 -1
  342. package/dist/cjs/modules/memory/base/index.d.ts +0 -33
  343. package/dist/cjs/modules/memory/base/index.d.ts.map +0 -1
  344. package/dist/cjs/modules/memory/base/index.js +0 -14
  345. package/dist/cjs/modules/memory/base/index.js.map +0 -1
  346. package/dist/cjs/modules/memory/base.memory.d.ts +0 -33
  347. package/dist/cjs/modules/memory/base.memory.d.ts.map +0 -1
  348. package/dist/cjs/modules/memory/base.memory.js +0 -14
  349. package/dist/cjs/modules/memory/base.memory.js.map +0 -1
  350. package/dist/cjs/modules/memory/memory.module.d.ts +0 -35
  351. package/dist/cjs/modules/memory/memory.module.d.ts.map +0 -1
  352. package/dist/cjs/modules/memory/memory.module.js +0 -48
  353. package/dist/cjs/modules/memory/memory.module.js.map +0 -1
  354. package/dist/cjs/modules/memory/providers/inmemory.d.ts +0 -14
  355. package/dist/cjs/modules/memory/providers/inmemory.d.ts.map +0 -1
  356. package/dist/cjs/modules/memory/providers/inmemory.js +0 -27
  357. package/dist/cjs/modules/memory/providers/inmemory.js.map +0 -1
  358. package/dist/cjs/modules/memory/providers/mongodb/index.d.ts +0 -12
  359. package/dist/cjs/modules/memory/providers/mongodb/index.d.ts.map +0 -1
  360. package/dist/cjs/modules/memory/providers/mongodb/index.js +0 -91
  361. package/dist/cjs/modules/memory/providers/mongodb/index.js.map +0 -1
  362. package/dist/cjs/modules/memory/providers/mongodb/models/chats.model.d.ts +0 -26
  363. package/dist/cjs/modules/memory/providers/mongodb/models/chats.model.d.ts.map +0 -1
  364. package/dist/cjs/modules/memory/providers/mongodb/models/chats.model.js +0 -79
  365. package/dist/cjs/modules/memory/providers/mongodb/models/chats.model.js.map +0 -1
  366. package/dist/cjs/modules/memory/providers/mongodb/models/intentTriggeringInfos.model.d.ts +0 -27
  367. package/dist/cjs/modules/memory/providers/mongodb/models/intentTriggeringInfos.model.d.ts.map +0 -1
  368. package/dist/cjs/modules/memory/providers/mongodb/models/intentTriggeringInfos.model.js +0 -59
  369. package/dist/cjs/modules/memory/providers/mongodb/models/intentTriggeringInfos.model.js.map +0 -1
  370. package/dist/cjs/modules/models/base/index.d.ts +0 -57
  371. package/dist/cjs/modules/models/base/index.d.ts.map +0 -1
  372. package/dist/cjs/modules/models/base/index.js +0 -17
  373. package/dist/cjs/modules/models/base/index.js.map +0 -1
  374. package/dist/cjs/modules/models/base.model.d.ts +0 -57
  375. package/dist/cjs/modules/models/base.model.d.ts.map +0 -1
  376. package/dist/cjs/modules/models/base.model.js +0 -17
  377. package/dist/cjs/modules/models/base.model.js.map +0 -1
  378. package/dist/cjs/modules/models/model.module.d.ts +0 -33
  379. package/dist/cjs/modules/models/model.module.d.ts.map +0 -1
  380. package/dist/cjs/modules/models/model.module.js +0 -67
  381. package/dist/cjs/modules/models/model.module.js.map +0 -1
  382. package/dist/cjs/modules/models/providers/gemini.d.ts +0 -20
  383. package/dist/cjs/modules/models/providers/gemini.d.ts.map +0 -1
  384. package/dist/cjs/modules/models/providers/gemini.js +0 -111
  385. package/dist/cjs/modules/models/providers/gemini.js.map +0 -1
  386. package/dist/cjs/modules/models/providers/openai.d.ts +0 -20
  387. package/dist/cjs/modules/models/providers/openai.d.ts.map +0 -1
  388. package/dist/cjs/modules/models/providers/openai.js +0 -117
  389. package/dist/cjs/modules/models/providers/openai.js.map +0 -1
  390. package/dist/cjs/package.json +0 -1
  391. package/dist/cjs/routes/a2a.routes.d.ts +0 -12
  392. package/dist/cjs/routes/a2a.routes.d.ts.map +0 -1
  393. package/dist/cjs/routes/a2a.routes.js +0 -29
  394. package/dist/cjs/routes/a2a.routes.js.map +0 -1
  395. package/dist/cjs/routes/api/models.routes.d.ts +0 -4
  396. package/dist/cjs/routes/api/models.routes.d.ts.map +0 -1
  397. package/dist/cjs/routes/api/models.routes.js +0 -14
  398. package/dist/cjs/routes/api/models.routes.js.map +0 -1
  399. package/dist/cjs/routes/api/sessions.routes.d.ts +0 -4
  400. package/dist/cjs/routes/api/sessions.routes.d.ts.map +0 -1
  401. package/dist/cjs/routes/api/sessions.routes.js +0 -14
  402. package/dist/cjs/routes/api/sessions.routes.js.map +0 -1
  403. package/dist/cjs/routes/api.routes.d.ts +0 -4
  404. package/dist/cjs/routes/api.routes.d.ts.map +0 -1
  405. package/dist/cjs/routes/api.routes.js +0 -16
  406. package/dist/cjs/routes/api.routes.js.map +0 -1
  407. package/dist/cjs/routes/index.d.ts +0 -5
  408. package/dist/cjs/routes/index.d.ts.map +0 -1
  409. package/dist/cjs/routes/index.js +0 -10
  410. package/dist/cjs/routes/index.js.map +0 -1
  411. package/dist/cjs/routes/query.routes.d.ts +0 -4
  412. package/dist/cjs/routes/query.routes.d.ts.map +0 -1
  413. package/dist/cjs/routes/query.routes.js +0 -15
  414. package/dist/cjs/routes/query.routes.js.map +0 -1
  415. package/dist/cjs/services/a2a.service.d.ts +0 -15
  416. package/dist/cjs/services/a2a.service.d.ts.map +0 -1
  417. package/dist/cjs/services/a2a.service.js +0 -93
  418. package/dist/cjs/services/a2a.service.js.map +0 -1
  419. package/dist/cjs/services/index.d.ts +0 -3
  420. package/dist/cjs/services/index.d.ts.map +0 -1
  421. package/dist/cjs/services/index.js +0 -8
  422. package/dist/cjs/services/index.js.map +0 -1
  423. package/dist/cjs/services/query.service.d.ts +0 -57
  424. package/dist/cjs/services/query.service.d.ts.map +0 -1
  425. package/dist/cjs/services/query.service.js +0 -162
  426. package/dist/cjs/services/query.service.js.map +0 -1
  427. package/dist/cjs/types/fol.d.ts +0 -38
  428. package/dist/cjs/types/fol.d.ts.map +0 -1
  429. package/dist/cjs/types/fol.js +0 -3
  430. package/dist/cjs/types/fol.js.map +0 -1
  431. package/dist/cjs/types/index.d.ts +0 -49
  432. package/dist/cjs/types/index.d.ts.map +0 -1
  433. package/dist/cjs/types/index.js +0 -11
  434. package/dist/cjs/types/index.js.map +0 -1
  435. package/dist/cjs/types/mcp.d.ts +0 -5
  436. package/dist/cjs/types/mcp.d.ts.map +0 -1
  437. package/dist/cjs/types/mcp.js +0 -3
  438. package/dist/cjs/types/mcp.js.map +0 -1
  439. package/dist/cjs/types/memory.d.ts +0 -79
  440. package/dist/cjs/types/memory.d.ts.map +0 -1
  441. package/dist/cjs/types/memory.js +0 -23
  442. package/dist/cjs/types/memory.js.map +0 -1
  443. package/dist/cjs/types/tool.d.ts +0 -88
  444. package/dist/cjs/types/tool.d.ts.map +0 -1
  445. package/dist/cjs/types/tool.js +0 -14
  446. package/dist/cjs/types/tool.js.map +0 -1
  447. package/dist/cjs/utils/logger.d.ts +0 -13
  448. package/dist/cjs/utils/logger.d.ts.map +0 -1
  449. package/dist/cjs/utils/logger.js +0 -39
  450. package/dist/cjs/utils/logger.js.map +0 -1
  451. package/dist/esm/app.d.ts +0 -102
  452. package/dist/esm/app.d.ts.map +0 -1
  453. package/dist/esm/app.js +0 -163
  454. package/dist/esm/app.js.map +0 -1
  455. package/dist/esm/controllers/a2a.controller.d.ts.map +0 -1
  456. package/dist/esm/controllers/api/model.api.controller.d.ts.map +0 -1
  457. package/dist/esm/controllers/api/session.api.controller.d.ts.map +0 -1
  458. package/dist/esm/controllers/index.d.ts.map +0 -1
  459. package/dist/esm/controllers/query.controller.d.ts.map +0 -1
  460. package/dist/esm/middlewares/auth/base.d.ts +0 -5
  461. package/dist/esm/middlewares/auth/base.d.ts.map +0 -1
  462. package/dist/esm/middlewares/auth/base.js +0 -9
  463. package/dist/esm/middlewares/auth/base.js.map +0 -1
  464. package/dist/esm/middlewares/base.auth.middleward.d.ts +0 -5
  465. package/dist/esm/middlewares/base.auth.middleward.d.ts.map +0 -1
  466. package/dist/esm/middlewares/base.auth.middleward.js +0 -9
  467. package/dist/esm/middlewares/base.auth.middleward.js.map +0 -1
  468. package/dist/esm/middlewares/base.auth.middleware.d.ts +0 -5
  469. package/dist/esm/middlewares/base.auth.middleware.d.ts.map +0 -1
  470. package/dist/esm/middlewares/base.auth.middleware.js +0 -9
  471. package/dist/esm/middlewares/base.auth.middleware.js.map +0 -1
  472. package/dist/esm/middlewares/error.middleware.d.ts.map +0 -1
  473. package/dist/esm/modules/a2a/a2a.module.d.ts.map +0 -1
  474. package/dist/esm/modules/a2a/a2a.tool.d.ts.map +0 -1
  475. package/dist/esm/modules/fol/fol.module.d.ts +0 -31
  476. package/dist/esm/modules/fol/fol.module.d.ts.map +0 -1
  477. package/dist/esm/modules/fol/fol.module.js +0 -180
  478. package/dist/esm/modules/fol/fol.module.js.map +0 -1
  479. package/dist/esm/modules/fol/store/base.d.ts +0 -9
  480. package/dist/esm/modules/fol/store/base.d.ts.map +0 -1
  481. package/dist/esm/modules/fol/store/base.js +0 -3
  482. package/dist/esm/modules/fol/store/base.js.map +0 -1
  483. package/dist/esm/modules/fol/store/index.d.ts +0 -3
  484. package/dist/esm/modules/fol/store/index.d.ts.map +0 -1
  485. package/dist/esm/modules/fol/store/index.js +0 -3
  486. package/dist/esm/modules/fol/store/index.js.map +0 -1
  487. package/dist/esm/modules/fol/store/local.d.ts +0 -25
  488. package/dist/esm/modules/fol/store/local.d.ts.map +0 -1
  489. package/dist/esm/modules/fol/store/local.js +0 -214
  490. package/dist/esm/modules/fol/store/local.js.map +0 -1
  491. package/dist/esm/modules/index.d.ts.map +0 -1
  492. package/dist/esm/modules/mcp/mcp.module.d.ts.map +0 -1
  493. package/dist/esm/modules/mcp/mcp.tool.d.ts.map +0 -1
  494. package/dist/esm/modules/memory/base/index.d.ts +0 -33
  495. package/dist/esm/modules/memory/base/index.d.ts.map +0 -1
  496. package/dist/esm/modules/memory/base/index.js +0 -10
  497. package/dist/esm/modules/memory/base/index.js.map +0 -1
  498. package/dist/esm/modules/memory/base.memory.d.ts.map +0 -1
  499. package/dist/esm/modules/memory/memory.module.d.ts.map +0 -1
  500. package/dist/esm/modules/memory/providers/inmemory.d.ts +0 -14
  501. package/dist/esm/modules/memory/providers/inmemory.d.ts.map +0 -1
  502. package/dist/esm/modules/memory/providers/inmemory.js +0 -23
  503. package/dist/esm/modules/memory/providers/inmemory.js.map +0 -1
  504. package/dist/esm/modules/memory/providers/mongodb/index.d.ts +0 -12
  505. package/dist/esm/modules/memory/providers/mongodb/index.d.ts.map +0 -1
  506. package/dist/esm/modules/memory/providers/mongodb/index.js +0 -84
  507. package/dist/esm/modules/memory/providers/mongodb/index.js.map +0 -1
  508. package/dist/esm/modules/memory/providers/mongodb/models/chats.model.d.ts +0 -26
  509. package/dist/esm/modules/memory/providers/mongodb/models/chats.model.d.ts.map +0 -1
  510. package/dist/esm/modules/memory/providers/mongodb/models/chats.model.js +0 -43
  511. package/dist/esm/modules/memory/providers/mongodb/models/chats.model.js.map +0 -1
  512. package/dist/esm/modules/memory/providers/mongodb/models/intentTriggeringInfos.model.d.ts +0 -27
  513. package/dist/esm/modules/memory/providers/mongodb/models/intentTriggeringInfos.model.d.ts.map +0 -1
  514. package/dist/esm/modules/memory/providers/mongodb/models/intentTriggeringInfos.model.js +0 -23
  515. package/dist/esm/modules/memory/providers/mongodb/models/intentTriggeringInfos.model.js.map +0 -1
  516. package/dist/esm/modules/models/base/index.d.ts +0 -57
  517. package/dist/esm/modules/models/base/index.d.ts.map +0 -1
  518. package/dist/esm/modules/models/base/index.js +0 -13
  519. package/dist/esm/modules/models/base/index.js.map +0 -1
  520. package/dist/esm/modules/models/base.model.d.ts.map +0 -1
  521. package/dist/esm/modules/models/model.module.d.ts.map +0 -1
  522. package/dist/esm/modules/models/providers/gemini.d.ts +0 -20
  523. package/dist/esm/modules/models/providers/gemini.d.ts.map +0 -1
  524. package/dist/esm/modules/models/providers/gemini.js +0 -107
  525. package/dist/esm/modules/models/providers/gemini.js.map +0 -1
  526. package/dist/esm/modules/models/providers/openai.d.ts +0 -20
  527. package/dist/esm/modules/models/providers/openai.d.ts.map +0 -1
  528. package/dist/esm/modules/models/providers/openai.js +0 -113
  529. package/dist/esm/modules/models/providers/openai.js.map +0 -1
  530. package/dist/esm/package.json +0 -1
  531. package/dist/esm/routes/a2a.routes.d.ts.map +0 -1
  532. package/dist/esm/routes/api/models.routes.d.ts.map +0 -1
  533. package/dist/esm/routes/api/sessions.routes.d.ts.map +0 -1
  534. package/dist/esm/routes/api.routes.d.ts.map +0 -1
  535. package/dist/esm/routes/index.d.ts.map +0 -1
  536. package/dist/esm/routes/query.routes.d.ts.map +0 -1
  537. package/dist/esm/services/a2a.service.d.ts.map +0 -1
  538. package/dist/esm/services/index.d.ts.map +0 -1
  539. package/dist/esm/services/query.service.d.ts.map +0 -1
  540. package/dist/esm/types/fol.d.ts +0 -38
  541. package/dist/esm/types/fol.d.ts.map +0 -1
  542. package/dist/esm/types/fol.js +0 -2
  543. package/dist/esm/types/fol.js.map +0 -1
  544. package/dist/esm/types/index.d.ts.map +0 -1
  545. package/dist/esm/types/index.js +0 -7
  546. package/dist/esm/types/index.js.map +0 -1
  547. package/dist/esm/types/mcp.d.ts.map +0 -1
  548. package/dist/esm/types/memory.d.ts.map +0 -1
  549. package/dist/esm/types/tool.d.ts.map +0 -1
  550. package/dist/esm/utils/logger.d.ts.map +0 -1
package/README.md CHANGED
@@ -80,7 +80,10 @@ await mcpModule.addMCPConfig({
80
80
  });
81
81
 
82
82
  // Pass to agent constructor
83
- const agent = new AINAgent(manifest, { modelModule, mcpModule, memoryModule });
83
+ const agent = new AINAgent(
84
+ manifest,
85
+ { modelModule, mcpModule, memoryModule }
86
+ );
84
87
  ```
85
88
 
86
89
  ### Adding A2A Support
@@ -155,30 +158,18 @@ Each module can be independently configured and passed to the agent constructor.
155
158
  ```bash
156
159
  # Build commands
157
160
  yarn build # Build both ESM and CJS distributions
158
- yarn build:esm # Build ESM format only
159
- yarn build:cjs # Build CJS format only
160
161
 
161
162
  # Development
162
163
  yarn dev # Run TypeScript directly with tsx
163
164
 
164
165
  # Code quality
165
- yarn lint # Run linting with Biome
166
- yarn format # Format code with Biome
167
- yarn check # Check code with Biome
166
+ yarn biome # Check code with Biome
168
167
  yarn check:write # Check and auto-fix with Biome
169
168
 
170
169
  # Testing
171
170
  yarn test # Run Jest tests
172
171
  ```
173
172
 
174
- ### Examples
175
-
176
- ```bash
177
- # Run example applications
178
- npx tsx examples/simpleAgent.ts
179
- npx tsx examples/a2aClientAgent.ts
180
- ```
181
-
182
173
  ## Logging System
183
174
 
184
175
  The library uses Winston for structured logging with service-specific loggers:
@@ -236,27 +227,6 @@ The project supports dual build output:
236
227
  - **ESM** (`dist/esm/`): ES Module format with `{"type": "module"}`
237
228
  - **CJS** (`dist/cjs/`): CommonJS format with `{"type": "commonjs"}`
238
229
 
239
- Import paths use `@/` alias for `src/` directory.
240
-
241
- ## Models Support
242
-
243
- ### Built-in Models
244
- - **OpenAI/Azure OpenAI**: Full support for GPT models
245
- - **Google Gemini**: Support for Gemini models
246
-
247
- ### Custom Models
248
- Extend the `BaseModel` class to add support for other AI models:
249
-
250
- ```typescript
251
- import { BaseModel } from '@ainetwork/adk/modules/models/base';
252
-
253
- class MyCustomModel extends BaseModel {
254
- async generateResponse(messages: any[], tools?: any[]): Promise<any> {
255
- // Implement your model logic
256
- }
257
- }
258
- ```
259
-
260
230
  ## Error Handling
261
231
 
262
232
  The library includes comprehensive error handling:
@@ -276,16 +246,16 @@ All errors are logged with appropriate context for debugging.
276
246
  The library supports optional authentication middleware:
277
247
 
278
248
  ```typescript
279
- import { BaseAuth } from '@ainetwork/adk/middlewares/auth/base';
249
+ import { BaseAuth } from '@ainetwork/adk/modules';
280
250
 
281
251
  class MyAuth extends BaseAuth {
282
- async authenticate(req: Request): Promise<boolean> {
252
+ async authenticate(req: Request, res: Response): Promise<boolean> {
283
253
  // Implement your auth logic
284
254
  return true;
285
255
  }
286
256
  }
287
257
 
288
- const agent = new AINAgent(manifest, modules, false, new MyAuth());
258
+ const agent = new AINAgent(manifest, modules, new MyAuth());
289
259
  ```
290
260
 
291
261
  ## Contributing
@@ -293,7 +263,7 @@ const agent = new AINAgent(manifest, modules, false, new MyAuth());
293
263
  1. Follow the established code conventions
294
264
  2. Use TypeScript strict mode
295
265
  3. Add appropriate service-specific logging
296
- 4. Run `yarn check:write` and `yarn test` before submitting
266
+ 4. Run `yarn biome:write` and `yarn test` before submitting
297
267
  5. Maintain the modular architecture
298
268
 
299
269
  ## License
@@ -0,0 +1,34 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/modules/memory/memory.module.ts
2
+ var MemoryModule = class {
3
+ /** The memory storage implementation */
4
+
5
+ /**
6
+ * Creates a new MemoryModule with the specified storage implementation.
7
+ *
8
+ * @param memory - The memory storage implementation to use
9
+ */
10
+ constructor(memory) {
11
+ this.memoryMap = /* @__PURE__ */ new Map();
12
+ this.memoryMap.set("_DEFAULT" /* _DEFAULT */, memory);
13
+ }
14
+ /**
15
+ * Returns the current memory storage implementation.
16
+ *
17
+ * @returns The active memory storage instance
18
+ */
19
+ getMemory(type) {
20
+ if (!type) {
21
+ return this.memoryMap.get("_DEFAULT" /* _DEFAULT */);
22
+ }
23
+ const memory = this.memoryMap.get(type);
24
+ if (!memory) {
25
+ return this.memoryMap.get("_DEFAULT" /* _DEFAULT */);
26
+ }
27
+ return memory;
28
+ }
29
+ };
30
+
31
+
32
+
33
+ exports.MemoryModule = MemoryModule;
34
+ //# sourceMappingURL=chunk-5VIAH4HE.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-5VIAH4HE.cjs","../../src/modules/memory/memory.module.ts"],"names":[],"mappings":"AAAA;ACkBO,IAAM,aAAA,EAAN,MAAmB;AAAA;AAAA,EAEjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOR,WAAA,CAAY,MAAA,EAAoB;AAC/B,IAAA,IAAA,CAAK,UAAA,kBAAY,IAAI,GAAA,CAAI,CAAA;AACzB,IAAA,IAAA,CAAK,SAAA,CAAU,GAAA,CAAA,yBAAA,EAAyB,MAAM,CAAA;AAAA,EAC/C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOO,SAAA,CAAU,IAAA,EAA2C;AAC3D,IAAA,GAAA,CAAI,CAAC,IAAA,EAAM;AACV,MAAA,OAAO,IAAA,CAAK,SAAA,CAAU,GAAA,CAAA,yBAAuB,CAAA;AAAA,IAC9C;AAEA,IAAA,MAAM,OAAA,EAAS,IAAA,CAAK,SAAA,CAAU,GAAA,CAAI,IAAI,CAAA;AACtC,IAAA,GAAA,CAAI,CAAC,MAAA,EAAQ;AACZ,MAAA,OAAO,IAAA,CAAK,SAAA,CAAU,GAAA,CAAA,yBAAuB,CAAA;AAAA,IAC9C;AACA,IAAA,OAAO,MAAA;AAAA,EACR;AACD,CAAA;ADnBA;AACA;AACE;AACF,oCAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-5VIAH4HE.cjs","sourcesContent":[null,"import { MemoryType } from \"@/types/memory.js\";\nimport type { BaseMemory } from \"./base.memory.js\";\n/**\n * Module wrapper for memory storage implementations.\n *\n * Provides a consistent interface for accessing memory storage\n * functionality throughout the application. Currently supports\n * a single memory implementation but designed for future extensibility.\n *\n * @example\n * ```typescript\n * const inMemoryStorage = new InMemoryStorage();\n * const memoryModule = new MemoryModule(inMemoryStorage);\n *\n * const memory = memoryModule.getMemory();\n * await memory.updateSessionHistory(\"session-123\", chatMessage);\n * ```\n */\nexport class MemoryModule {\n\t/** The memory storage implementation */\n\tprivate memoryMap: Map<MemoryType, BaseMemory>;\n\n\t/**\n\t * Creates a new MemoryModule with the specified storage implementation.\n\t *\n\t * @param memory - The memory storage implementation to use\n\t */\n\tconstructor(memory: BaseMemory) {\n\t\tthis.memoryMap = new Map();\n\t\tthis.memoryMap.set(MemoryType._DEFAULT, memory);\n\t}\n\n\t/**\n\t * Returns the current memory storage implementation.\n\t *\n\t * @returns The active memory storage instance\n\t */\n\tpublic getMemory(type?: MemoryType): BaseMemory | undefined {\n\t\tif (!type) {\n\t\t\treturn this.memoryMap.get(MemoryType._DEFAULT);\n\t\t}\n\n\t\tconst memory = this.memoryMap.get(type);\n\t\tif (!memory) {\n\t\t\treturn this.memoryMap.get(MemoryType._DEFAULT);\n\t\t}\n\t\treturn memory;\n\t}\n}\n"]}
@@ -0,0 +1,22 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunkN7NGEMKLcjs = require('./chunk-N7NGEMKL.cjs');
4
+
5
+
6
+ var _chunkD525HP3Rcjs = require('./chunk-D525HP3R.cjs');
7
+
8
+ // src/routes/api.routes.ts
9
+ var _express = require('express');
10
+ var createApiRouter = (agent) => {
11
+ const router = _express.Router.call(void 0, );
12
+ router.use("/api/models", _chunkN7NGEMKLcjs.createModelApiRouter.call(void 0, agent.modelModule));
13
+ if (agent.memoryModule) {
14
+ router.use("/api/sessions", _chunkD525HP3Rcjs.createSessionApiRouter.call(void 0, agent.memoryModule));
15
+ }
16
+ return router;
17
+ };
18
+
19
+
20
+
21
+ exports.createApiRouter = createApiRouter;
22
+ //# sourceMappingURL=chunk-6YJFC7BY.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-6YJFC7BY.cjs","../../src/routes/api.routes.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACPA,kCAAuB;AAMhB,IAAM,gBAAA,EAAkB,CAAC,KAAA,EAAA,GAA4B;AAC3D,EAAA,MAAM,OAAA,EAAS,6BAAA,CAAO;AAEtB,EAAA,MAAA,CAAO,GAAA,CAAI,aAAA,EAAe,oDAAA,KAAqB,CAAM,WAAW,CAAC,CAAA;AACjE,EAAA,GAAA,CAAI,KAAA,CAAM,YAAA,EAAc;AACvB,IAAA,MAAA,CAAO,GAAA,CAAI,eAAA,EAAiB,sDAAA,KAAuB,CAAM,YAAY,CAAC,CAAA;AAAA,EACvE;AAEA,EAAA,OAAO,MAAA;AACR,CAAA;ADEA;AACA;AACE;AACF,0CAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-6YJFC7BY.cjs","sourcesContent":[null,"import { Router } from \"express\";\nimport type { AINAgent } from \"@/index.js\";\n\nimport { createModelApiRouter } from \"./api/models.routes.js\";\nimport { createSessionApiRouter } from \"./api/sessions.routes.js\";\n\nexport const createApiRouter = (agent: AINAgent): Router => {\n\tconst router = Router();\n\n\trouter.use(\"/api/models\", createModelApiRouter(agent.modelModule));\n\tif (agent.memoryModule) {\n\t\trouter.use(\"/api/sessions\", createSessionApiRouter(agent.memoryModule));\n\t}\n\n\treturn router;\n};\n"]}
@@ -0,0 +1,111 @@
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 _chunkJTAXZJQ2cjs = require('./chunk-JTAXZJQ2.cjs');
4
+
5
+ // src/services/a2a.service.ts
6
+ var _crypto = require('crypto');
7
+ var A2AService = (_class = class {
8
+
9
+ __init() {this.canceledTasks = /* @__PURE__ */ new Set()}
10
+ constructor(queryService) {;_class.prototype.__init.call(this);_class.prototype.__init2.call(this);_class.prototype.__init3.call(this);
11
+ this.queryService = queryService;
12
+ }
13
+ __init2() {this.cancelTask = async (taskId, _eventBus) => {
14
+ this.canceledTasks.add(taskId);
15
+ }}
16
+ __init3() {this.createTaskStatusUpdateEvent = (taskId, contextId, state, message) => {
17
+ return {
18
+ kind: "status-update",
19
+ taskId,
20
+ contextId,
21
+ status: {
22
+ state,
23
+ message: message ? {
24
+ kind: "message",
25
+ role: "agent",
26
+ messageId: _crypto.randomUUID.call(void 0, ),
27
+ parts: [{ kind: "text", text: message }],
28
+ taskId,
29
+ contextId
30
+ } : void 0,
31
+ timestamp: (/* @__PURE__ */ new Date()).toISOString()
32
+ },
33
+ final: state !== "working"
34
+ };
35
+ }}
36
+ async execute(requestContext, eventBus) {
37
+ const userMessage = requestContext.userMessage;
38
+ const { sessionId } = userMessage.metadata;
39
+ const existingTask = requestContext.task;
40
+ const taskId = _optionalChain([existingTask, 'optionalAccess', _ => _.id]) || _crypto.randomUUID.call(void 0, );
41
+ const contextId = userMessage.contextId || _optionalChain([existingTask, 'optionalAccess', _2 => _2.contextId]) || _crypto.randomUUID.call(void 0, );
42
+ if (!existingTask) {
43
+ const initialTask = {
44
+ kind: "task",
45
+ id: taskId,
46
+ contextId,
47
+ status: {
48
+ state: "submitted",
49
+ timestamp: (/* @__PURE__ */ new Date()).toISOString()
50
+ },
51
+ history: [userMessage],
52
+ metadata: userMessage.metadata,
53
+ artifacts: []
54
+ };
55
+ eventBus.publish(initialTask);
56
+ }
57
+ const workingStatusUpdate = this.createTaskStatusUpdateEvent(
58
+ taskId,
59
+ contextId,
60
+ "working"
61
+ );
62
+ eventBus.publish(workingStatusUpdate);
63
+ const message = userMessage.parts.filter((part) => part.kind === "text").map((part) => part.text).join("\n");
64
+ if (message.length === 0) {
65
+ _chunkJTAXZJQ2cjs.loggers.server.warn(`Empty message received for task ${taskId}.`);
66
+ const failureUpdate = this.createTaskStatusUpdateEvent(
67
+ taskId,
68
+ contextId,
69
+ "failed",
70
+ "No message found to process."
71
+ );
72
+ eventBus.publish(failureUpdate);
73
+ return;
74
+ }
75
+ try {
76
+ const response = await this.queryService.handleQuery(message, sessionId);
77
+ if (this.canceledTasks.has(taskId)) {
78
+ _chunkJTAXZJQ2cjs.loggers.server.info(`Task ${taskId} was canceled.`);
79
+ const canceledUpdate = this.createTaskStatusUpdateEvent(
80
+ taskId,
81
+ contextId,
82
+ "canceled"
83
+ );
84
+ eventBus.publish(canceledUpdate);
85
+ return;
86
+ }
87
+ const finalUpdate = this.createTaskStatusUpdateEvent(
88
+ taskId,
89
+ contextId,
90
+ "completed",
91
+ response.content
92
+ );
93
+ eventBus.publish(finalUpdate);
94
+ _chunkJTAXZJQ2cjs.loggers.server.info(`Task ${taskId} completed successfully.`);
95
+ } catch (error) {
96
+ _chunkJTAXZJQ2cjs.loggers.server.error(`Error processing task ${taskId}:`, error);
97
+ const errorUpdate = this.createTaskStatusUpdateEvent(
98
+ taskId,
99
+ contextId,
100
+ "failed",
101
+ `Agent error: ${error.message}`
102
+ );
103
+ eventBus.publish(errorUpdate);
104
+ }
105
+ }
106
+ }, _class);
107
+
108
+
109
+
110
+ exports.A2AService = A2AService;
111
+ //# sourceMappingURL=chunk-7BZO57TG.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-7BZO57TG.cjs","../../src/services/a2a.service.ts"],"names":[],"mappings":"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","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-7BZO57TG.cjs","sourcesContent":[null,"import { randomUUID } from \"node:crypto\";\nimport type { Task, TaskStatusUpdateEvent } from \"@a2a-js/sdk\";\nimport type {\n\tAgentExecutor,\n\tExecutionEventBus,\n\tRequestContext,\n} from \"@a2a-js/sdk/server\";\nimport { loggers } from \"@/utils/logger.js\";\nimport type { QueryService } from \"./query.service.js\";\n\n/**\n * Implements the AgentExecutor interface from the a2a-js-sdk.\n * This service is responsible for the core business logic of executing an A2A task.\n */\nexport class A2AService implements AgentExecutor {\n\tprivate queryService: QueryService;\n\tprivate canceledTasks: Set<string> = new Set<string>();\n\n\tconstructor(queryService: QueryService) {\n\t\tthis.queryService = queryService;\n\t}\n\n\tpublic cancelTask = async (\n\t\ttaskId: string,\n\t\t_eventBus: ExecutionEventBus,\n\t): Promise<void> => {\n\t\tthis.canceledTasks.add(taskId);\n\t};\n\n\tprivate createTaskStatusUpdateEvent = (\n\t\ttaskId: string,\n\t\tcontextId: string,\n\t\tstate: \"working\" | \"failed\" | \"canceled\" | \"completed\",\n\t\tmessage?: string,\n\t): TaskStatusUpdateEvent => {\n\t\treturn {\n\t\t\tkind: \"status-update\",\n\t\t\ttaskId: taskId,\n\t\t\tcontextId: contextId,\n\t\t\tstatus: {\n\t\t\t\tstate: state,\n\t\t\t\tmessage: message\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tkind: \"message\",\n\t\t\t\t\t\t\trole: \"agent\",\n\t\t\t\t\t\t\tmessageId: randomUUID(),\n\t\t\t\t\t\t\tparts: [{ kind: \"text\", text: message }],\n\t\t\t\t\t\t\ttaskId: taskId,\n\t\t\t\t\t\t\tcontextId: contextId,\n\t\t\t\t\t\t}\n\t\t\t\t\t: undefined,\n\t\t\t\ttimestamp: new Date().toISOString(),\n\t\t\t},\n\t\t\tfinal: state !== \"working\",\n\t\t};\n\t};\n\n\tasync execute(\n\t\trequestContext: RequestContext,\n\t\teventBus: ExecutionEventBus,\n\t): Promise<void> {\n\t\tconst userMessage = requestContext.userMessage;\n\t\tconst { sessionId } = userMessage.metadata as { sessionId: string };\n\t\tconst existingTask = requestContext.task;\n\n\t\tconst taskId = existingTask?.id || randomUUID();\n\t\tconst contextId =\n\t\t\tuserMessage.contextId || existingTask?.contextId || randomUUID();\n\n\t\tif (!existingTask) {\n\t\t\tconst initialTask: Task = {\n\t\t\t\tkind: \"task\",\n\t\t\t\tid: taskId,\n\t\t\t\tcontextId: contextId,\n\t\t\t\tstatus: {\n\t\t\t\t\tstate: \"submitted\",\n\t\t\t\t\ttimestamp: new Date().toISOString(),\n\t\t\t\t},\n\t\t\t\thistory: [userMessage],\n\t\t\t\tmetadata: userMessage.metadata,\n\t\t\t\tartifacts: [],\n\t\t\t};\n\t\t\teventBus.publish(initialTask);\n\t\t}\n\n\t\tconst workingStatusUpdate = this.createTaskStatusUpdateEvent(\n\t\t\ttaskId,\n\t\t\tcontextId,\n\t\t\t\"working\",\n\t\t);\n\t\teventBus.publish(workingStatusUpdate);\n\n\t\tconst message: string = userMessage.parts\n\t\t\t.filter((part) => part.kind === \"text\")\n\t\t\t.map((part) => part.text)\n\t\t\t.join(\"\\n\");\n\t\tif (message.length === 0) {\n\t\t\tloggers.server.warn(`Empty message received for task ${taskId}.`);\n\t\t\tconst failureUpdate = this.createTaskStatusUpdateEvent(\n\t\t\t\ttaskId,\n\t\t\t\tcontextId,\n\t\t\t\t\"failed\",\n\t\t\t\t\"No message found to process.\",\n\t\t\t);\n\t\t\teventBus.publish(failureUpdate);\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tconst response = await this.queryService.handleQuery(message, sessionId);\n\n\t\t\tif (this.canceledTasks.has(taskId)) {\n\t\t\t\tloggers.server.info(`Task ${taskId} was canceled.`);\n\t\t\t\tconst canceledUpdate = this.createTaskStatusUpdateEvent(\n\t\t\t\t\ttaskId,\n\t\t\t\t\tcontextId,\n\t\t\t\t\t\"canceled\",\n\t\t\t\t);\n\t\t\t\teventBus.publish(canceledUpdate);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst finalUpdate = this.createTaskStatusUpdateEvent(\n\t\t\t\ttaskId,\n\t\t\t\tcontextId,\n\t\t\t\t\"completed\",\n\t\t\t\tresponse.content,\n\t\t\t);\n\t\t\teventBus.publish(finalUpdate);\n\t\t\tloggers.server.info(`Task ${taskId} completed successfully.`);\n\t\t} catch (error: any) {\n\t\t\tloggers.server.error(`Error processing task ${taskId}:`, error);\n\t\t\tconst errorUpdate = this.createTaskStatusUpdateEvent(\n\t\t\t\ttaskId,\n\t\t\t\tcontextId,\n\t\t\t\t\"failed\",\n\t\t\t\t`Agent error: ${error.message}`,\n\t\t\t);\n\t\t\teventBus.publish(errorUpdate);\n\t\t}\n\t}\n}\n"]}
@@ -0,0 +1,168 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class;
2
+
3
+ var _chunkF7I4G6JGcjs = require('./chunk-F7I4G6JG.cjs');
4
+
5
+
6
+ var _chunkJTAXZJQ2cjs = require('./chunk-JTAXZJQ2.cjs');
7
+
8
+ // src/modules/a2a/a2a.module.ts
9
+ var _crypto = require('crypto');
10
+ var _client = require('@a2a-js/sdk/client');
11
+ var A2AModule = (_class = class {constructor() { _class.prototype.__init.call(this);_class.prototype.__init2.call(this);_class.prototype.__init3.call(this); }
12
+ /** Map of A2A server URLs to their corresponding tool instances */
13
+ __init() {this.a2aPeerServers = /* @__PURE__ */ new Map()}
14
+ /** Map of session IDs to their A2A session state */
15
+ __init2() {this.a2aSessions = /* @__PURE__ */ new Map()}
16
+ /**
17
+ * Registers a new A2A peer server URL for connection.
18
+ *
19
+ * @param url - The URL of the A2A-compatible agent to connect to
20
+ */
21
+ async addA2APeerServer(url) {
22
+ this.a2aPeerServers.set(url, null);
23
+ }
24
+ /**
25
+ * Retrieves tools from all registered A2A peer servers.
26
+ *
27
+ * Attempts to connect to each registered server, fetch their agent cards,
28
+ * and create tool instances. Disables tools for unreachable servers.
29
+ *
30
+ * @returns Promise resolving to array of available A2A tools
31
+ */
32
+ async getTools() {
33
+ const tools = [];
34
+ for (const url of [...this.a2aPeerServers.keys()]) {
35
+ const tool = this.a2aPeerServers.get(url);
36
+ if (!tool || !tool.enabled) {
37
+ try {
38
+ const client = new (0, _client.A2AClient)(url);
39
+ const card = await client.getAgentCard();
40
+ const toolName = card.name.replaceAll(" ", "-");
41
+ const a2aTool = new (0, _chunkF7I4G6JGcjs.A2ATool)(toolName, client, card);
42
+ tools.push(a2aTool);
43
+ } catch (_error) {
44
+ if (tool) {
45
+ tool.disable();
46
+ }
47
+ }
48
+ } else {
49
+ tools.push(tool);
50
+ }
51
+ }
52
+ return tools;
53
+ }
54
+ /**
55
+ * Gets or creates an A2A session for the given session ID.
56
+ *
57
+ * @param sessionId - The session identifier
58
+ * @returns A2ASession object with task and context IDs
59
+ */
60
+ __init3() {this.getA2ASessionWithId = (sessionId) => {
61
+ const a2aSession = _nullishCoalesce(this.a2aSessions.get(sessionId), () => ( {
62
+ taskId: void 0,
63
+ contextId: void 0
64
+ }));
65
+ if (!this.a2aSessions.has(sessionId)) {
66
+ this.a2aSessions.set(sessionId, a2aSession);
67
+ }
68
+ return a2aSession;
69
+ }}
70
+ /**
71
+ * Constructs a message payload for A2A communication.
72
+ *
73
+ * Includes session context (task ID and context ID) if available
74
+ * for maintaining conversation continuity.
75
+ *
76
+ * @param query - The message content to send
77
+ * @param sessionId - The session identifier
78
+ * @returns Formatted Message object for A2A protocol
79
+ */
80
+ getMessagePayload(query, sessionId) {
81
+ const messagePayload = {
82
+ messageId: _crypto.randomUUID.call(void 0, ),
83
+ kind: "message",
84
+ role: "user",
85
+ // FIXME: it could be 'agent'
86
+ metadata: {
87
+ sessionId
88
+ },
89
+ parts: [
90
+ {
91
+ kind: "text",
92
+ text: query
93
+ }
94
+ ]
95
+ };
96
+ const a2aSession = this.getA2ASessionWithId(sessionId);
97
+ if (a2aSession.taskId) {
98
+ messagePayload.taskId = a2aSession.taskId;
99
+ }
100
+ if (a2aSession.contextId) {
101
+ messagePayload.contextId = a2aSession.contextId;
102
+ }
103
+ return messagePayload;
104
+ }
105
+ /**
106
+ * Executes an A2A tool by sending a message to the remote agent.
107
+ *
108
+ * Handles streaming responses, maintains session state, and extracts
109
+ * text content from various event types in the response stream.
110
+ *
111
+ * @param tool - The A2ATool instance to use
112
+ * @param messagePayload - The message to send to the agent
113
+ * @param sessionId - The session identifier for context tracking
114
+ * @returns Promise resolving to array of text responses from the agent
115
+ */
116
+ async useTool(tool, messagePayload, sessionId) {
117
+ const finalText = [];
118
+ const client = tool.client;
119
+ const params = {
120
+ message: messagePayload
121
+ };
122
+ const a2aSession = this.getA2ASessionWithId(sessionId);
123
+ try {
124
+ const stream = client.sendMessageStream(params);
125
+ for await (const event of stream) {
126
+ if (event.kind === "status-update") {
127
+ const typedEvent = event;
128
+ if (typedEvent.final && typedEvent.status.state !== "input-required") {
129
+ a2aSession.taskId = void 0;
130
+ }
131
+ const texts = _optionalChain([typedEvent, 'access', _ => _.status, 'access', _2 => _2.message, 'optionalAccess', _3 => _3.parts, 'access', _4 => _4.filter, 'call', _5 => _5((part) => part.kind === "text"), 'access', _6 => _6.map, 'call', _7 => _7((part) => part.text), 'access', _8 => _8.join, 'call', _9 => _9("\n")]);
132
+ if (texts) {
133
+ finalText.push(texts);
134
+ }
135
+ } else if (event.kind === "message") {
136
+ const msg = event;
137
+ if (msg.taskId && msg.taskId !== a2aSession.taskId) {
138
+ a2aSession.taskId = msg.taskId;
139
+ }
140
+ if (msg.contextId && msg.contextId !== a2aSession.contextId) {
141
+ a2aSession.contextId = msg.contextId;
142
+ }
143
+ } else if (event.kind === "task") {
144
+ const task = event;
145
+ if (task.id !== a2aSession.taskId) {
146
+ a2aSession.taskId = task.id;
147
+ }
148
+ if (task.contextId && task.contextId !== a2aSession.contextId) {
149
+ a2aSession.contextId = task.contextId;
150
+ }
151
+ } else {
152
+ _chunkJTAXZJQ2cjs.loggers.a2a.warn("Received unknown event structure from stream:", {
153
+ event
154
+ });
155
+ }
156
+ }
157
+ } catch (error) {
158
+ _chunkJTAXZJQ2cjs.loggers.a2a.error("Error communicating with agent:", { error });
159
+ tool.disable();
160
+ }
161
+ return finalText;
162
+ }
163
+ }, _class);
164
+
165
+
166
+
167
+ exports.A2AModule = A2AModule;
168
+ //# sourceMappingURL=chunk-AHMW3HCU.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-AHMW3HCU.cjs","../../src/modules/a2a/a2a.module.ts"],"names":[],"mappings":"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","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-AHMW3HCU.cjs","sourcesContent":[null,"import { randomUUID } from \"node:crypto\";\nimport type {\n\tAgentCard,\n\tMessage,\n\tMessageSendParams,\n\tTask,\n\tTaskStatusUpdateEvent,\n\tTextPart,\n} from \"@a2a-js/sdk\";\nimport { A2AClient } from \"@a2a-js/sdk/client\";\nimport { loggers } from \"@/utils/logger.js\";\nimport { A2ATool } from \"./a2a.tool.js\";\n\n/**\n * Represents an active A2A communication session.\n */\ninterface A2ASession {\n\t/** Current task ID for multi-turn conversations */\n\ttaskId: string | undefined;\n\t/** Context ID for maintaining conversation state */\n\tcontextId: string | undefined;\n}\n\n/**\n * Module for managing Agent-to-Agent (A2A) protocol connections.\n *\n * This module handles connections to other A2A-compatible agents, manages\n * conversation sessions, and provides an interface for inter-agent communication.\n * Supports multi-turn conversations with task and context tracking.\n *\n * @example\n * ```typescript\n * const a2aModule = new A2AModule();\n * await a2aModule.addA2APeerServer(\"https://api.example.com/agent\");\n *\n * const tools = await a2aModule.getTools();\n * const message = a2aModule.getMessagePayload(\"Hello\", \"session-123\");\n * const response = await a2aModule.useTool(tools[0], message, \"session-123\");\n * ```\n */\nexport class A2AModule {\n\t/** Map of A2A server URLs to their corresponding tool instances */\n\tprivate a2aPeerServers: Map<string, A2ATool | null> = new Map();\n\t/** Map of session IDs to their A2A session state */\n\tprivate a2aSessions: Map<string, A2ASession> = new Map();\n\n\t/**\n\t * Registers a new A2A peer server URL for connection.\n\t *\n\t * @param url - The URL of the A2A-compatible agent to connect to\n\t */\n\tpublic async addA2APeerServer(url: string): Promise<void> {\n\t\tthis.a2aPeerServers.set(url, null);\n\t}\n\n\t/**\n\t * Retrieves tools from all registered A2A peer servers.\n\t *\n\t * Attempts to connect to each registered server, fetch their agent cards,\n\t * and create tool instances. Disables tools for unreachable servers.\n\t *\n\t * @returns Promise resolving to array of available A2A tools\n\t */\n\tpublic async getTools(): Promise<A2ATool[]> {\n\t\tconst tools: A2ATool[] = [];\n\t\tfor (const url of [...this.a2aPeerServers.keys()]) {\n\t\t\tconst tool = this.a2aPeerServers.get(url);\n\t\t\tif (!tool || !tool.enabled) {\n\t\t\t\ttry {\n\t\t\t\t\tconst client = new A2AClient(url);\n\t\t\t\t\tconst card: AgentCard = await client.getAgentCard();\n\t\t\t\t\tconst toolName = card.name.replaceAll(\" \", \"-\");\n\t\t\t\t\tconst a2aTool = new A2ATool(toolName, client, card);\n\n\t\t\t\t\ttools.push(a2aTool);\n\t\t\t\t} catch (_error: any) {\n\t\t\t\t\t// Agent not responded\n\t\t\t\t\tif (tool) {\n\t\t\t\t\t\ttool.disable();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\ttools.push(tool);\n\t\t\t}\n\t\t}\n\t\treturn tools;\n\t}\n\n\t/**\n\t * Gets or creates an A2A session for the given session ID.\n\t *\n\t * @param sessionId - The session identifier\n\t * @returns A2ASession object with task and context IDs\n\t */\n\tprivate getA2ASessionWithId = (sessionId: string): A2ASession => {\n\t\tconst a2aSession = this.a2aSessions.get(sessionId) ?? {\n\t\t\ttaskId: undefined,\n\t\t\tcontextId: undefined,\n\t\t};\n\t\tif (!this.a2aSessions.has(sessionId)) {\n\t\t\tthis.a2aSessions.set(sessionId, a2aSession);\n\t\t}\n\n\t\treturn a2aSession;\n\t};\n\n\t/**\n\t * Constructs a message payload for A2A communication.\n\t *\n\t * Includes session context (task ID and context ID) if available\n\t * for maintaining conversation continuity.\n\t *\n\t * @param query - The message content to send\n\t * @param sessionId - The session identifier\n\t * @returns Formatted Message object for A2A protocol\n\t */\n\tpublic getMessagePayload(query: string, sessionId: string): Message {\n\t\tconst messagePayload: Message = {\n\t\t\tmessageId: randomUUID(),\n\t\t\tkind: \"message\",\n\t\t\trole: \"user\", // FIXME: it could be 'agent'\n\t\t\tmetadata: {\n\t\t\t\tsessionId,\n\t\t\t},\n\t\t\tparts: [\n\t\t\t\t{\n\t\t\t\t\tkind: \"text\",\n\t\t\t\t\ttext: query,\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\n\t\tconst a2aSession = this.getA2ASessionWithId(sessionId);\n\t\tif (a2aSession.taskId) {\n\t\t\tmessagePayload.taskId = a2aSession.taskId;\n\t\t}\n\t\tif (a2aSession.contextId) {\n\t\t\tmessagePayload.contextId = a2aSession.contextId;\n\t\t}\n\n\t\treturn messagePayload;\n\t}\n\n\t/**\n\t * Executes an A2A tool by sending a message to the remote agent.\n\t *\n\t * Handles streaming responses, maintains session state, and extracts\n\t * text content from various event types in the response stream.\n\t *\n\t * @param tool - The A2ATool instance to use\n\t * @param messagePayload - The message to send to the agent\n\t * @param sessionId - The session identifier for context tracking\n\t * @returns Promise resolving to array of text responses from the agent\n\t */\n\tpublic async useTool(\n\t\ttool: A2ATool,\n\t\tmessagePayload: Message,\n\t\tsessionId: string,\n\t): Promise<string[]> {\n\t\tconst finalText: string[] = [];\n\t\tconst client = tool.client;\n\t\tconst params: MessageSendParams = {\n\t\t\tmessage: messagePayload,\n\t\t};\n\t\tconst a2aSession = this.getA2ASessionWithId(sessionId);\n\n\t\ttry {\n\t\t\tconst stream = client.sendMessageStream(params);\n\t\t\tfor await (const event of stream) {\n\t\t\t\tif (event.kind === \"status-update\") {\n\t\t\t\t\tconst typedEvent = event as TaskStatusUpdateEvent;\n\t\t\t\t\tif (\n\t\t\t\t\t\ttypedEvent.final &&\n\t\t\t\t\t\ttypedEvent.status.state !== \"input-required\"\n\t\t\t\t\t) {\n\t\t\t\t\t\ta2aSession.taskId = undefined;\n\t\t\t\t\t}\n\t\t\t\t\t// TODO: handle 'file', 'data' parts\n\t\t\t\t\tconst texts = typedEvent.status.message?.parts\n\t\t\t\t\t\t.filter((part) => part.kind === \"text\")\n\t\t\t\t\t\t.map((part: TextPart) => part.text)\n\t\t\t\t\t\t.join(\"\\n\");\n\t\t\t\t\tif (texts) {\n\t\t\t\t\t\tfinalText.push(texts);\n\t\t\t\t\t}\n\t\t\t\t} else if (event.kind === \"message\") {\n\t\t\t\t\t// FIXME: handling text in 'message'?\n\t\t\t\t\tconst msg = event as Message;\n\t\t\t\t\tif (msg.taskId && msg.taskId !== a2aSession.taskId) {\n\t\t\t\t\t\ta2aSession.taskId = msg.taskId;\n\t\t\t\t\t}\n\t\t\t\t\tif (msg.contextId && msg.contextId !== a2aSession.contextId) {\n\t\t\t\t\t\ta2aSession.contextId = msg.contextId;\n\t\t\t\t\t}\n\t\t\t\t} else if (event.kind === \"task\") {\n\t\t\t\t\t// FIXME: handling text in 'task'?\n\t\t\t\t\tconst task = event as Task;\n\t\t\t\t\tif (task.id !== a2aSession.taskId) {\n\t\t\t\t\t\ta2aSession.taskId = task.id;\n\t\t\t\t\t}\n\t\t\t\t\tif (task.contextId && task.contextId !== a2aSession.contextId) {\n\t\t\t\t\t\ta2aSession.contextId = task.contextId;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tloggers.a2a.warn(\"Received unknown event structure from stream:\", {\n\t\t\t\t\t\tevent,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error: unknown) {\n\t\t\tloggers.a2a.error(\"Error communicating with agent:\", { error });\n\t\t\ttool.disable();\n\t\t\t// TODO: add failed & disabled text for next inference?\n\t\t}\n\n\t\treturn finalText;\n\t}\n}\n"]}
@@ -0,0 +1,37 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunk7BZO57TGcjs = require('./chunk-7BZO57TG.cjs');
4
+
5
+
6
+ var _chunkZMYG5HDTcjs = require('./chunk-ZMYG5HDT.cjs');
7
+
8
+
9
+ var _chunkILGIEJCXcjs = require('./chunk-ILGIEJCX.cjs');
10
+
11
+ // src/routes/a2a.routes.ts
12
+ var _server = require('@a2a-js/sdk/server');
13
+ var _express = require('express');
14
+ var createA2ARouter = (agent) => {
15
+ const router = _express.Router.call(void 0, );
16
+ const taskStore = new (0, _server.InMemoryTaskStore)();
17
+ const queryService = new (0, _chunkZMYG5HDTcjs.QueryService)(
18
+ agent.modelModule,
19
+ agent.a2aModule,
20
+ agent.mcpModule,
21
+ agent.memoryModule,
22
+ agent.manifest.prompts
23
+ );
24
+ const a2aService = new (0, _chunk7BZO57TGcjs.A2AService)(queryService);
25
+ const a2aController = new (0, _chunkILGIEJCXcjs.A2AController)(
26
+ a2aService,
27
+ taskStore,
28
+ agent.generateAgentCard
29
+ );
30
+ router.post("/a2a", a2aController.handleA2ARequest);
31
+ return router;
32
+ };
33
+
34
+
35
+
36
+ exports.createA2ARouter = createA2ARouter;
37
+ //# sourceMappingURL=chunk-CR53JLN7.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-CR53JLN7.cjs","../../src/routes/a2a.routes.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACVA,4CAAkC;AAClC,kCAAuB;AAchB,IAAM,gBAAA,EAAkB,CAAC,KAAA,EAAA,GAA4B;AAC3D,EAAA,MAAM,OAAA,EAAS,6BAAA,CAAO;AAGtB,EAAA,MAAM,UAAA,EAAY,IAAI,8BAAA,CAAkB,CAAA;AACxC,EAAA,MAAM,aAAA,EAAe,IAAI,mCAAA;AAAA,IACxB,KAAA,CAAM,WAAA;AAAA,IACN,KAAA,CAAM,SAAA;AAAA,IACN,KAAA,CAAM,SAAA;AAAA,IACN,KAAA,CAAM,YAAA;AAAA,IACN,KAAA,CAAM,QAAA,CAAS;AAAA,EAChB,CAAA;AACA,EAAA,MAAM,WAAA,EAAa,IAAI,iCAAA,CAAW,YAAY,CAAA;AAC9C,EAAA,MAAM,cAAA,EAAgB,IAAI,oCAAA;AAAA,IACzB,UAAA;AAAA,IACA,SAAA;AAAA,IACA,KAAA,CAAM;AAAA,EACP,CAAA;AAGA,EAAA,MAAA,CAAO,IAAA,CAAK,MAAA,EAAQ,aAAA,CAAc,gBAAgB,CAAA;AAElD,EAAA,OAAO,MAAA;AACR,CAAA;ADNA;AACA;AACE;AACF,0CAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-CR53JLN7.cjs","sourcesContent":[null,"import { InMemoryTaskStore } from \"@a2a-js/sdk/server\";\nimport { Router } from \"express\";\nimport type { AINAgent } from \"@/index.js\";\nimport { QueryService } from \"@/services/query.service.js\";\nimport { A2AController } from \"../controllers/a2a.controller.js\";\nimport { A2AService } from \"../services/a2a.service.js\";\n\n/**\n * Creates and configures the A2A router.\n * This function is a \"composition root\" for the A2A feature,\n * creating and injecting all necessary dependencies.\n * @param intentAnalyzer The core intent analyzer.\n * @param agentCard The agent's card.\n * @returns An Express Router instance.\n */\nexport const createA2ARouter = (agent: AINAgent): Router => {\n\tconst router = Router();\n\n\t// 1. Create dependencies for the A2A feature\n\tconst taskStore = new InMemoryTaskStore();\n\tconst queryService = new QueryService(\n\t\tagent.modelModule,\n\t\tagent.a2aModule,\n\t\tagent.mcpModule,\n\t\tagent.memoryModule,\n\t\tagent.manifest.prompts,\n\t);\n\tconst a2aService = new A2AService(queryService);\n\tconst a2aController = new A2AController(\n\t\ta2aService,\n\t\ttaskStore,\n\t\tagent.generateAgentCard,\n\t);\n\n\t// 2. Define the route\n\trouter.post(\"/a2a\", a2aController.handleA2ARequest);\n\n\treturn router;\n};\n"]}
@@ -0,0 +1,17 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunkYRNIZTPFcjs = require('./chunk-YRNIZTPF.cjs');
4
+
5
+ // src/routes/api/sessions.routes.ts
6
+ var _express = require('express');
7
+ var createSessionApiRouter = (memoryModule) => {
8
+ const router = _express.Router.call(void 0, );
9
+ const sessionApiController = new (0, _chunkYRNIZTPFcjs.SessionApiController)(memoryModule);
10
+ router.get("/:id", sessionApiController.handleSessionHistory);
11
+ return router;
12
+ };
13
+
14
+
15
+
16
+ exports.createSessionApiRouter = createSessionApiRouter;
17
+ //# sourceMappingURL=chunk-D525HP3R.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-D525HP3R.cjs","../../src/routes/api/sessions.routes.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACJA,kCAAuB;AAIhB,IAAM,uBAAA,EAAyB,CAAC,YAAA,EAAA,GAAuC;AAC7E,EAAA,MAAM,OAAA,EAAS,6BAAA,CAAO;AACtB,EAAA,MAAM,qBAAA,EAAuB,IAAI,2CAAA,CAAqB,YAAY,CAAA;AAGlE,EAAA,MAAA,CAAO,GAAA,CAAI,MAAA,EAAQ,oBAAA,CAAqB,oBAAoB,CAAA;AAE5D,EAAA,OAAO,MAAA;AACR,CAAA;ADAA;AACA;AACE;AACF,wDAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-D525HP3R.cjs","sourcesContent":[null,"import { Router } from \"express\";\nimport { SessionApiController } from \"@/controllers/api/session.api.controller.js\";\nimport type { MemoryModule } from \"@/modules/index.js\";\n\nexport const createSessionApiRouter = (memoryModule: MemoryModule): Router => {\n\tconst router = Router();\n\tconst sessionApiController = new SessionApiController(memoryModule);\n\n\t// APIs (prefix: /api/sessions)\n\trouter.get(\"/:id\", sessionApiController.handleSessionHistory);\n\n\treturn router;\n};\n"]}
@@ -0,0 +1,21 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); var _class;// src/controllers/query.controller.ts
2
+ var QueryController = (_class = class {
3
+
4
+ constructor(queryService) {;_class.prototype.__init.call(this);
5
+ this.queryService = queryService;
6
+ }
7
+ __init() {this.handleQueryRequest = async (req, res, next) => {
8
+ try {
9
+ const { message, sessionId } = req.body;
10
+ const result = await this.queryService.handleQuery(message, sessionId);
11
+ res.status(200).json(result);
12
+ } catch (error) {
13
+ next(error);
14
+ }
15
+ }}
16
+ }, _class);
17
+
18
+
19
+
20
+ exports.QueryController = QueryController;
21
+ //# sourceMappingURL=chunk-DOFTYGJR.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-DOFTYGJR.cjs","../../src/controllers/query.controller.ts"],"names":[],"mappings":"AAAA;ACGO,IAAM,gBAAA,YAAN,MAAsB;AAAA,EACpB;AAAA,EAER,WAAA,CAAY,YAAA,EAA4B;AACvC,IAAA,IAAA,CAAK,aAAA,EAAe,YAAA;AAAA,EACrB;AAAA,iBAEO,mBAAA,EAAqB,MAAA,CAC3B,GAAA,EACA,GAAA,EACA,IAAA,EAAA,GACI;AACJ,IAAA,IAAI;AACH,MAAA,MAAM,EAAE,OAAA,EAAS,UAAU,EAAA,EAAI,GAAA,CAAI,IAAA;AAEnC,MAAA,MAAM,OAAA,EAAS,MAAM,IAAA,CAAK,YAAA,CAAa,WAAA,CAAY,OAAA,EAAS,SAAS,CAAA;AAErE,MAAA,GAAA,CAAI,MAAA,CAAO,GAAG,CAAA,CAAE,IAAA,CAAK,MAAM,CAAA;AAAA,IAC5B,EAAA,MAAA,CAAS,KAAA,EAAO;AACf,MAAA,IAAA,CAAK,KAAK,CAAA;AAAA,IACX;AAAA,EACD,EAAA;AACD,UAAA;ADTA;AACA;AACE;AACF,0CAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-DOFTYGJR.cjs","sourcesContent":[null,"import type { NextFunction, Request, Response } from \"express\";\nimport type { QueryService } from \"@/services\";\n\nexport class QueryController {\n\tprivate 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\ttry {\n\t\t\tconst { message, sessionId } = req.body;\n\n\t\t\tconst result = await this.queryService.handleQuery(message, sessionId);\n\n\t\t\tres.status(200).json(result);\n\t\t} catch (error) {\n\t\t\tnext(error);\n\t\t}\n\t};\n}\n"]}
@@ -0,0 +1,13 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/types/agent.ts
2
+ var AinHttpError = class extends Error {
3
+
4
+ constructor(status, message) {
5
+ super(message);
6
+ this.status = status;
7
+ }
8
+ };
9
+
10
+
11
+
12
+ exports.AinHttpError = AinHttpError;
13
+ //# sourceMappingURL=chunk-DX2JH3FJ.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-DX2JH3FJ.cjs","../../src/types/agent.ts"],"names":[],"mappings":"AAAA;AC+CO,IAAM,aAAA,EAAN,MAAA,QAA2B,MAAM;AAAA,EAChC;AAAA,EAEP,WAAA,CAAY,MAAA,EAAqB,OAAA,EAAiB;AACjD,IAAA,KAAA,CAAM,OAAO,CAAA;AACb,IAAA,IAAA,CAAK,OAAA,EAAS,MAAA;AAAA,EACf;AACD,CAAA;AD9CA;AACA;AACE;AACF,oCAAC","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-DX2JH3FJ.cjs","sourcesContent":[null,"import type { StatusCodes } from \"http-status-codes\";\n\n/**\n * Custom prompts configuration for the agent.\n *\n * Allows customization of agent behavior through system and agent-level prompts.\n */\nexport type AinAgentPrompts = {\n\t/** Agent-level prompt that defines the agent's personality and behavior */\n\tagent?: string;\n\t/** System-level prompt that provides context and instructions */\n\tsystem?: string;\n};\n\n/**\n * Agent manifest containing essential metadata and configuration.\n *\n * The manifest defines the agent's identity, version, and optional configuration\n * such as the public URL for A2A protocol support and custom prompts.\n *\n * @example\n * ```typescript\n * const manifest: AinAgentManifest = {\n * name: \"CustomerSupportAgent\",\n * description: \"AI agent for handling customer support queries\",\n * version: \"1.0.0\",\n * url: \"https://api.example.com/agent\",\n * prompts: {\n * system: \"You are a helpful customer support assistant.\",\n * agent: \"Always be polite and provide detailed solutions.\"\n * }\n * };\n * ```\n */\nexport type AinAgentManifest = {\n\t/** Unique name identifier for the agent */\n\tname: string;\n\t/** Human-readable description of the agent's purpose and capabilities */\n\tdescription: string;\n\t/** Semantic version of the agent (e.g., \"1.0.0\") */\n\tversion: string;\n\t/** Optional public URL for A2A protocol discovery and communication */\n\turl?: string;\n\t/** Optional custom prompts to configure agent behavior */\n\tprompts?: AinAgentPrompts;\n};\n\nexport class AinHttpError extends Error {\n\tpublic status?: StatusCodes;\n\n\tconstructor(status: StatusCodes, message: string) {\n\t\tsuper(message);\n\t\tthis.status = status;\n\t}\n}\n"]}
@@ -0,0 +1,22 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunkJTAXZJQ2cjs = require('./chunk-JTAXZJQ2.cjs');
4
+
5
+ // src/middlewares/error.middleware.ts
6
+ var errorMiddleware = (error, req, res, next) => {
7
+ try {
8
+ const status = error.status || 500;
9
+ const message = error.message || "Something went wrong";
10
+ _chunkJTAXZJQ2cjs.logger.error(
11
+ `[${req.method}] ${req.path} >> StatusCode:: ${status}, Message:: ${message}`
12
+ );
13
+ res.status(status).json({ message });
14
+ } catch (error2) {
15
+ next(error2);
16
+ }
17
+ };
18
+
19
+
20
+
21
+ exports.errorMiddleware = errorMiddleware;
22
+ //# sourceMappingURL=chunk-DYRSSHDI.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-DYRSSHDI.cjs","../../src/middlewares/error.middleware.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACAO,IAAM,gBAAA,EAAkB,CAC9B,KAAA,EACA,GAAA,EACA,GAAA,EACA,IAAA,EAAA,GACU;AACV,EAAA,IAAI;AACH,IAAA,MAAM,OAAA,EAAiB,KAAA,CAAM,OAAA,GAAU,GAAA;AACvC,IAAA,MAAM,QAAA,EAAkB,KAAA,CAAM,QAAA,GAAW,sBAAA;AAEzC,IAAA,wBAAA,CAAO,KAAA;AAAA,MACN,CAAA,CAAA,EAAI,GAAA,CAAI,MAAM,CAAA,EAAA,EAAK,GAAA,CAAI,IAAI,CAAA,iBAAA,EAAoB,MAAM,CAAA,YAAA,EAAe,OAAO,CAAA;AAAA,IAAA;AAE5E,IAAA;AAAmC,EAAA;AAEnC,IAAA;AAAU,EAAA;AAEZ;ADJA;AACA;AACA;AACA","file":"/Users/shyun/comcom/ain-agent/ain-adk/dist/cjs/chunk-DYRSSHDI.cjs","sourcesContent":[null,"import type { NextFunction, Request, Response } from \"express\";\nimport type { AinHttpError } from \"@/types/agent\";\nimport { logger } from \"@/utils/logger\";\n\nexport const errorMiddleware = (\n\terror: AinHttpError,\n\treq: Request,\n\tres: Response,\n\tnext: NextFunction,\n): void => {\n\ttry {\n\t\tconst status: number = error.status || 500;\n\t\tconst message: string = error.message || \"Something went wrong\";\n\n\t\tlogger.error(\n\t\t\t`[${req.method}] ${req.path} >> StatusCode:: ${status}, Message:: ${message}`,\n\t\t);\n\t\tres.status(status).json({ message });\n\t} catch (error) {\n\t\tnext(error);\n\t}\n};\n"]}