openloops 0.1.9 → 0.1.11

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 (464) hide show
  1. package/dist/chunk-XRJFNASX.mjs +14 -0
  2. package/dist/common/clients/index.d.ts +3 -0
  3. package/dist/common/clients/index.js +26 -0
  4. package/dist/common/clients/index.mjs +3 -0
  5. package/dist/common/clients/llm-client.d.ts +30 -0
  6. package/dist/common/clients/llm-client.js +159 -0
  7. package/dist/common/clients/llm-client.mjs +126 -0
  8. package/dist/common/clients/sentry-client.d.ts +10 -0
  9. package/dist/common/clients/sentry-client.js +87 -0
  10. package/dist/common/clients/sentry-client.mjs +53 -0
  11. package/dist/common/clients/serper-client.d.ts +66 -0
  12. package/dist/common/clients/serper-client.js +74 -0
  13. package/dist/common/clients/serper-client.mjs +41 -0
  14. package/dist/common/core/base.app.d.ts +12 -0
  15. package/dist/common/core/base.app.js +57 -0
  16. package/dist/common/core/base.app.mjs +34 -0
  17. package/dist/common/core/base.entity.d.ts +55 -0
  18. package/dist/common/core/base.entity.js +208 -0
  19. package/dist/common/core/base.entity.mjs +179 -0
  20. package/dist/common/core/base.use-case.d.ts +15 -0
  21. package/dist/common/core/base.use-case.js +30 -0
  22. package/dist/common/core/base.use-case.mjs +7 -0
  23. package/dist/common/core/index.d.ts +1 -0
  24. package/dist/common/core/index.js +1 -0
  25. package/dist/common/core/index.mjs +0 -0
  26. package/dist/common/core/utils/delete-empty-fields.d.ts +1 -0
  27. package/dist/common/core/utils/delete-empty-fields.js +66 -0
  28. package/dist/common/core/utils/delete-empty-fields.mjs +43 -0
  29. package/dist/common/core/utils/flatten-object.d.ts +1 -0
  30. package/dist/common/core/utils/flatten-object.js +45 -0
  31. package/dist/common/core/utils/flatten-object.mjs +22 -0
  32. package/dist/common/core/utils/index.d.ts +3 -0
  33. package/dist/common/core/utils/index.js +26 -0
  34. package/dist/common/core/utils/index.mjs +3 -0
  35. package/dist/common/core/utils/is-plain-object.d.ts +1 -0
  36. package/dist/common/core/utils/is-plain-object.js +32 -0
  37. package/dist/common/core/utils/is-plain-object.mjs +9 -0
  38. package/dist/common/decorators/admin-only/admin-only.d.ts +2 -0
  39. package/dist/common/decorators/admin-only/admin-only.js +52 -0
  40. package/dist/common/decorators/admin-only/admin-only.mjs +28 -0
  41. package/dist/common/decorators/admin-only/index.d.ts +1 -0
  42. package/dist/common/decorators/admin-only/index.js +22 -0
  43. package/dist/common/decorators/admin-only/index.mjs +1 -0
  44. package/dist/common/decorators/index.d.ts +3 -0
  45. package/dist/common/decorators/index.js +26 -0
  46. package/dist/common/decorators/index.mjs +3 -0
  47. package/dist/common/decorators/mask-in-logs/index.d.ts +1 -0
  48. package/dist/common/decorators/mask-in-logs/index.js +22 -0
  49. package/dist/common/decorators/mask-in-logs/index.mjs +1 -0
  50. package/dist/common/decorators/mask-in-logs/mask-in-logs.d.ts +2 -0
  51. package/dist/common/decorators/mask-in-logs/mask-in-logs.js +53 -0
  52. package/dist/common/decorators/mask-in-logs/mask-in-logs.mjs +29 -0
  53. package/dist/common/decorators/owner-only/index.d.ts +1 -0
  54. package/dist/common/decorators/owner-only/index.js +22 -0
  55. package/dist/common/decorators/owner-only/index.mjs +1 -0
  56. package/dist/common/decorators/owner-only/owner-only.d.ts +2 -0
  57. package/dist/common/decorators/owner-only/owner-only.js +52 -0
  58. package/dist/common/decorators/owner-only/owner-only.mjs +28 -0
  59. package/dist/common/error/http-error.d.ts +11 -0
  60. package/dist/common/error/http-error.js +37 -0
  61. package/dist/common/error/http-error.mjs +14 -0
  62. package/dist/common/error/index.d.ts +2 -0
  63. package/dist/common/error/index.js +24 -0
  64. package/dist/common/error/index.mjs +2 -0
  65. package/dist/common/error/reportError.d.ts +2 -0
  66. package/dist/common/error/reportError.js +51 -0
  67. package/dist/common/error/reportError.mjs +28 -0
  68. package/dist/common/helpers/extract-json-from-text.d.ts +1 -0
  69. package/dist/common/helpers/extract-json-from-text.js +63 -0
  70. package/dist/common/helpers/extract-json-from-text.mjs +40 -0
  71. package/dist/common/helpers/index.d.ts +2 -0
  72. package/dist/common/helpers/index.js +24 -0
  73. package/dist/common/helpers/index.mjs +2 -0
  74. package/dist/common/helpers/sanitize-string.d.ts +1 -0
  75. package/dist/common/helpers/sanitize-string.js +45 -0
  76. package/dist/common/helpers/sanitize-string.mjs +12 -0
  77. package/dist/common/logger/index.d.ts +1 -0
  78. package/dist/common/logger/index.js +22 -0
  79. package/dist/common/logger/index.mjs +1 -0
  80. package/dist/common/logger/pino.d.ts +12 -0
  81. package/dist/common/logger/pino.js +70 -0
  82. package/dist/common/logger/pino.mjs +36 -0
  83. package/dist/common/repositories/index.d.ts +2 -0
  84. package/dist/common/repositories/index.js +24 -0
  85. package/dist/common/repositories/index.mjs +2 -0
  86. package/dist/common/repositories/mongo-db.client.d.ts +11 -0
  87. package/dist/common/repositories/mongo-db.client.js +79 -0
  88. package/dist/common/repositories/mongo-db.client.mjs +57 -0
  89. package/dist/common/repositories/mongo-db.repository.d.ts +87 -0
  90. package/dist/common/repositories/mongo-db.repository.js +219 -0
  91. package/dist/common/repositories/mongo-db.repository.mjs +196 -0
  92. package/dist/common/utils/secret-manager.d.ts +15 -0
  93. package/dist/common/utils/secret-manager.js +105 -0
  94. package/dist/common/utils/secret-manager.mjs +71 -0
  95. package/dist/index.d.ts +1 -10
  96. package/dist/index.js +22 -7
  97. package/dist/index.mjs +1 -1
  98. package/dist/services/agent/core/agent-loop.d.ts +38 -0
  99. package/dist/services/agent/core/agent-loop.js +29 -0
  100. package/dist/services/agent/core/agent-loop.mjs +6 -0
  101. package/dist/services/agent/core/agent-state.d.ts +42 -0
  102. package/dist/services/agent/core/agent-state.js +102 -0
  103. package/dist/services/agent/core/agent-state.mjs +78 -0
  104. package/dist/services/agent/core/agent.d.ts +70 -0
  105. package/dist/services/agent/core/agent.js +351 -0
  106. package/dist/services/agent/core/agent.mjs +327 -0
  107. package/dist/services/agent/core/index.d.ts +3 -122
  108. package/dist/services/agent/core/index.js +26 -7
  109. package/dist/services/agent/core/index.mjs +3 -1
  110. package/dist/services/agent/loops/index.d.ts +2 -116
  111. package/dist/services/agent/loops/index.js +24 -10
  112. package/dist/services/agent/loops/index.mjs +2 -4
  113. package/dist/services/agent/loops/plan-execute/index.d.ts +1 -0
  114. package/dist/services/agent/loops/plan-execute/index.js +22 -0
  115. package/dist/services/agent/loops/plan-execute/index.mjs +1 -0
  116. package/dist/services/agent/loops/plan-execute/plan-execute-loop.d.ts +27 -0
  117. package/dist/services/agent/loops/plan-execute/plan-execute-loop.js +242 -0
  118. package/dist/services/agent/loops/plan-execute/plan-execute-loop.mjs +226 -0
  119. package/dist/services/agent/loops/shared/index.d.ts +1 -0
  120. package/dist/services/agent/loops/shared/index.js +22 -0
  121. package/dist/services/agent/loops/shared/index.mjs +1 -0
  122. package/dist/services/agent/loops/shared/skills/action-planner.d.ts +35 -0
  123. package/dist/services/agent/loops/shared/skills/action-planner.js +68 -0
  124. package/dist/services/agent/loops/shared/skills/action-planner.mjs +45 -0
  125. package/dist/services/agent/loops/shared/skills/confirmation-gate.d.ts +9 -0
  126. package/dist/services/agent/loops/shared/skills/confirmation-gate.js +53 -0
  127. package/dist/services/agent/loops/shared/skills/confirmation-gate.mjs +30 -0
  128. package/dist/services/agent/loops/shared/skills/fast-responder.d.ts +9 -0
  129. package/dist/services/agent/loops/shared/skills/fast-responder.js +70 -0
  130. package/dist/services/agent/loops/shared/skills/fast-responder.mjs +47 -0
  131. package/dist/services/agent/loops/shared/skills/final-responder.d.ts +7 -0
  132. package/dist/services/agent/loops/shared/skills/final-responder.js +57 -0
  133. package/dist/services/agent/loops/shared/skills/final-responder.mjs +34 -0
  134. package/dist/services/agent/loops/shared/skills/index.d.ts +6 -0
  135. package/dist/services/agent/loops/shared/skills/index.js +32 -0
  136. package/dist/services/agent/loops/shared/skills/index.mjs +6 -0
  137. package/dist/services/agent/loops/shared/skills/state-observer.d.ts +10 -0
  138. package/dist/services/agent/loops/shared/skills/state-observer.js +57 -0
  139. package/dist/services/agent/loops/shared/skills/state-observer.mjs +34 -0
  140. package/dist/services/agent/loops/shared/skills/strategy-engine.d.ts +15 -0
  141. package/dist/services/agent/loops/shared/skills/strategy-engine.js +60 -0
  142. package/dist/services/agent/loops/shared/skills/strategy-engine.mjs +37 -0
  143. package/dist/services/agent/modules/chats/entities/agent-action.entity.d.ts +58 -0
  144. package/dist/services/agent/modules/chats/entities/agent-action.entity.js +151 -0
  145. package/dist/services/agent/modules/chats/entities/agent-action.entity.mjs +128 -0
  146. package/dist/services/agent/modules/chats/entities/agent-task.entity.d.ts +59 -0
  147. package/dist/services/agent/modules/chats/entities/agent-task.entity.js +231 -0
  148. package/dist/services/agent/modules/chats/entities/agent-task.entity.mjs +207 -0
  149. package/dist/services/agent/modules/chats/entities/chat-context.entity.d.ts +39 -0
  150. package/dist/services/agent/modules/chats/entities/chat-context.entity.js +70 -0
  151. package/dist/services/agent/modules/chats/entities/chat-context.entity.mjs +47 -0
  152. package/dist/services/agent/modules/chats/entities/chat-message.entity.d.ts +16 -0
  153. package/dist/services/agent/modules/chats/entities/chat-message.entity.js +58 -0
  154. package/dist/services/agent/modules/chats/entities/chat-message.entity.mjs +35 -0
  155. package/dist/services/agent/modules/chats/entities/chat-settings.entity.d.ts +17 -0
  156. package/dist/services/agent/modules/chats/entities/chat-settings.entity.js +63 -0
  157. package/dist/services/agent/modules/chats/entities/chat-settings.entity.mjs +40 -0
  158. package/dist/services/agent/modules/chats/entities/chat.entity.d.ts +50 -0
  159. package/dist/services/agent/modules/chats/entities/chat.entity.js +163 -0
  160. package/dist/services/agent/modules/chats/entities/chat.entity.mjs +140 -0
  161. package/dist/services/agent/modules/chats/entities/index.d.ts +1 -0
  162. package/dist/services/agent/modules/chats/entities/index.js +22 -0
  163. package/dist/services/agent/modules/chats/entities/index.mjs +1 -0
  164. package/dist/services/agent/modules/chats/lambdas/create-chat/create-chat.use-case.d.ts +14 -0
  165. package/dist/services/agent/modules/chats/lambdas/create-chat/create-chat.use-case.js +56 -0
  166. package/dist/services/agent/modules/chats/lambdas/create-chat/create-chat.use-case.mjs +27 -0
  167. package/dist/services/agent/modules/chats/lambdas/create-chat/index.d.ts +1 -0
  168. package/dist/services/agent/modules/chats/lambdas/create-chat/index.js +22 -0
  169. package/dist/services/agent/modules/chats/lambdas/create-chat/index.mjs +1 -0
  170. package/dist/services/agent/modules/chats/lambdas/delete-chat/delete-chat.use-case.d.ts +15 -0
  171. package/dist/services/agent/modules/chats/lambdas/delete-chat/delete-chat.use-case.js +61 -0
  172. package/dist/services/agent/modules/chats/lambdas/delete-chat/delete-chat.use-case.mjs +32 -0
  173. package/dist/services/agent/modules/chats/lambdas/delete-chat/index.d.ts +1 -0
  174. package/dist/services/agent/modules/chats/lambdas/delete-chat/index.js +22 -0
  175. package/dist/services/agent/modules/chats/lambdas/delete-chat/index.mjs +1 -0
  176. package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/get-chat-by-id.use-case.d.ts +14 -0
  177. package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/get-chat-by-id.use-case.js +52 -0
  178. package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/get-chat-by-id.use-case.mjs +23 -0
  179. package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/index.d.ts +1 -0
  180. package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/index.js +22 -0
  181. package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/index.mjs +1 -0
  182. package/dist/services/agent/modules/chats/lambdas/interrupt-execution/index.d.ts +1 -0
  183. package/dist/services/agent/modules/chats/lambdas/interrupt-execution/index.js +22 -0
  184. package/dist/services/agent/modules/chats/lambdas/interrupt-execution/index.mjs +1 -0
  185. package/dist/services/agent/modules/chats/lambdas/interrupt-execution/interrupt-execution.use-case.d.ts +14 -0
  186. package/dist/services/agent/modules/chats/lambdas/interrupt-execution/interrupt-execution.use-case.js +64 -0
  187. package/dist/services/agent/modules/chats/lambdas/interrupt-execution/interrupt-execution.use-case.mjs +35 -0
  188. package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/index.d.ts +1 -0
  189. package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/index.js +22 -0
  190. package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/index.mjs +1 -0
  191. package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/list-chats-by-props.use-case.d.ts +16 -0
  192. package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/list-chats-by-props.use-case.js +52 -0
  193. package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/list-chats-by-props.use-case.mjs +23 -0
  194. package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/index.d.ts +1 -0
  195. package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/index.js +22 -0
  196. package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/index.mjs +1 -0
  197. package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/list-chats-by-user.use-case.d.ts +16 -0
  198. package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/list-chats-by-user.use-case.js +59 -0
  199. package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/list-chats-by-user.use-case.mjs +30 -0
  200. package/dist/services/agent/modules/chats/lambdas/update-chat/index.d.ts +1 -0
  201. package/dist/services/agent/modules/chats/lambdas/update-chat/index.js +22 -0
  202. package/dist/services/agent/modules/chats/lambdas/update-chat/index.mjs +1 -0
  203. package/dist/services/agent/modules/chats/lambdas/update-chat/update-chat.use-case.d.ts +15 -0
  204. package/dist/services/agent/modules/chats/lambdas/update-chat/update-chat.use-case.js +64 -0
  205. package/dist/services/agent/modules/chats/lambdas/update-chat/update-chat.use-case.mjs +35 -0
  206. package/dist/services/agent/modules/chats/repositories/chat.repository.d.ts +10 -0
  207. package/dist/services/agent/modules/chats/repositories/chat.repository.js +67 -0
  208. package/dist/services/agent/modules/chats/repositories/chat.repository.mjs +38 -0
  209. package/dist/services/agent/modules/chats/repositories/index.d.ts +1 -0
  210. package/dist/services/agent/modules/chats/repositories/index.js +22 -0
  211. package/dist/services/agent/modules/chats/repositories/index.mjs +1 -0
  212. package/dist/services/agent/modules/llmcalls/entities/index.d.ts +1 -0
  213. package/dist/services/agent/modules/llmcalls/entities/index.js +22 -0
  214. package/dist/services/agent/modules/llmcalls/entities/index.mjs +1 -0
  215. package/dist/services/agent/modules/llmcalls/entities/llmcall.entity.d.ts +23 -0
  216. package/dist/services/agent/modules/llmcalls/entities/llmcall.entity.js +71 -0
  217. package/dist/services/agent/modules/llmcalls/entities/llmcall.entity.mjs +48 -0
  218. package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/create-llmcall.use-case.d.ts +14 -0
  219. package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/create-llmcall.use-case.js +56 -0
  220. package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/create-llmcall.use-case.mjs +27 -0
  221. package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/index.d.ts +1 -0
  222. package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/index.js +22 -0
  223. package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/index.mjs +1 -0
  224. package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/delete-llmcall.use-case.d.ts +15 -0
  225. package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/delete-llmcall.use-case.js +61 -0
  226. package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/delete-llmcall.use-case.mjs +32 -0
  227. package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/index.d.ts +1 -0
  228. package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/index.js +22 -0
  229. package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/index.mjs +1 -0
  230. package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/get-llm-usage.use-case.d.ts +21 -0
  231. package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/get-llm-usage.use-case.js +123 -0
  232. package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/get-llm-usage.use-case.mjs +94 -0
  233. package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/index.d.ts +1 -0
  234. package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/index.js +22 -0
  235. package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/index.mjs +1 -0
  236. package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/get-llmcall-by-id.use-case.d.ts +14 -0
  237. package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/get-llmcall-by-id.use-case.js +52 -0
  238. package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/get-llmcall-by-id.use-case.mjs +23 -0
  239. package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/index.d.ts +1 -0
  240. package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/index.js +22 -0
  241. package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/index.mjs +1 -0
  242. package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/index.d.ts +1 -0
  243. package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/index.js +22 -0
  244. package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/index.mjs +1 -0
  245. package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/list-llmcalls-by-props.use-case.d.ts +16 -0
  246. package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/list-llmcalls-by-props.use-case.js +52 -0
  247. package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/list-llmcalls-by-props.use-case.mjs +23 -0
  248. package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/index.d.ts +1 -0
  249. package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/index.js +22 -0
  250. package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/index.mjs +1 -0
  251. package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/update-llmcall.use-case.d.ts +15 -0
  252. package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/update-llmcall.use-case.js +62 -0
  253. package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/update-llmcall.use-case.mjs +33 -0
  254. package/dist/services/agent/modules/llmcalls/repositories/index.d.ts +1 -0
  255. package/dist/services/agent/modules/llmcalls/repositories/index.js +22 -0
  256. package/dist/services/agent/modules/llmcalls/repositories/index.mjs +1 -0
  257. package/dist/services/agent/modules/llmcalls/repositories/llmcall.repository.d.ts +10 -0
  258. package/dist/services/agent/modules/llmcalls/repositories/llmcall.repository.js +67 -0
  259. package/dist/services/agent/modules/llmcalls/repositories/llmcall.repository.mjs +38 -0
  260. package/dist/services/agent/modules/mcp-servers/entities/index.d.ts +1 -0
  261. package/dist/services/agent/modules/mcp-servers/entities/index.js +22 -0
  262. package/dist/services/agent/modules/mcp-servers/entities/index.mjs +1 -0
  263. package/dist/services/agent/modules/mcp-servers/entities/mcpserver.entity.d.ts +23 -0
  264. package/dist/services/agent/modules/mcp-servers/entities/mcpserver.entity.js +79 -0
  265. package/dist/services/agent/modules/mcp-servers/entities/mcpserver.entity.mjs +56 -0
  266. package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/create-mcpserver.use-case.d.ts +14 -0
  267. package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/create-mcpserver.use-case.js +56 -0
  268. package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/create-mcpserver.use-case.mjs +27 -0
  269. package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/index.d.ts +1 -0
  270. package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/index.js +22 -0
  271. package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/index.mjs +1 -0
  272. package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/delete-mcpserver.use-case.d.ts +15 -0
  273. package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/delete-mcpserver.use-case.js +61 -0
  274. package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/delete-mcpserver.use-case.mjs +32 -0
  275. package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/index.d.ts +1 -0
  276. package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/index.js +22 -0
  277. package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/index.mjs +1 -0
  278. package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/get-mcpserver-by-id.use-case.d.ts +14 -0
  279. package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/get-mcpserver-by-id.use-case.js +52 -0
  280. package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/get-mcpserver-by-id.use-case.mjs +23 -0
  281. package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/index.d.ts +1 -0
  282. package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/index.js +22 -0
  283. package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/index.mjs +1 -0
  284. package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/index.d.ts +1 -0
  285. package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/index.js +22 -0
  286. package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/index.mjs +1 -0
  287. package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/list-mcpservers-by-user.use-case.d.ts +16 -0
  288. package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/list-mcpservers-by-user.use-case.js +59 -0
  289. package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/list-mcpservers-by-user.use-case.mjs +30 -0
  290. package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/index.d.ts +1 -0
  291. package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/index.js +22 -0
  292. package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/index.mjs +1 -0
  293. package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/update-mcpserver.use-case.d.ts +15 -0
  294. package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/update-mcpserver.use-case.js +61 -0
  295. package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/update-mcpserver.use-case.mjs +32 -0
  296. package/dist/services/agent/modules/mcp-servers/repositories/index.d.ts +1 -0
  297. package/dist/services/agent/modules/mcp-servers/repositories/index.js +22 -0
  298. package/dist/services/agent/modules/mcp-servers/repositories/index.mjs +1 -0
  299. package/dist/services/agent/modules/mcp-servers/repositories/mcpserver.repository.d.ts +10 -0
  300. package/dist/services/agent/modules/mcp-servers/repositories/mcpserver.repository.js +67 -0
  301. package/dist/services/agent/modules/mcp-servers/repositories/mcpserver.repository.mjs +38 -0
  302. package/dist/services/agent/skills/index.d.ts +2 -14
  303. package/dist/services/agent/skills/index.js +24 -7
  304. package/dist/services/agent/skills/index.mjs +2 -1
  305. package/dist/services/agent/skills/shared/index.d.ts +1 -0
  306. package/dist/services/agent/skills/shared/index.js +22 -0
  307. package/dist/services/agent/skills/shared/index.mjs +1 -0
  308. package/dist/services/agent/skills/shared/shared-rules.d.ts +4 -0
  309. package/dist/services/agent/skills/shared/shared-rules.js +37 -0
  310. package/dist/services/agent/skills/shared/shared-rules.mjs +11 -0
  311. package/dist/services/agent/skills/skill-runner.d.ts +31 -0
  312. package/dist/services/agent/skills/skill-runner.js +121 -0
  313. package/dist/services/agent/skills/skill-runner.mjs +92 -0
  314. package/dist/services/agent/skills/skill.d.ts +33 -0
  315. package/dist/services/agent/skills/skill.js +128 -0
  316. package/dist/services/agent/skills/skill.mjs +105 -0
  317. package/dist/services/agent/tools/core/call-ai/call-ai.skill.d.ts +6 -0
  318. package/dist/services/agent/tools/core/call-ai/call-ai.skill.js +54 -0
  319. package/dist/services/agent/tools/core/call-ai/call-ai.skill.mjs +31 -0
  320. package/dist/services/agent/tools/core/call-ai/call-ai.tool.d.ts +2 -0
  321. package/dist/services/agent/tools/core/call-ai/call-ai.tool.js +68 -0
  322. package/dist/services/agent/tools/core/call-ai/call-ai.tool.mjs +45 -0
  323. package/dist/services/agent/tools/core/call-ai/index.d.ts +1 -0
  324. package/dist/services/agent/tools/core/call-ai/index.js +22 -0
  325. package/dist/services/agent/tools/core/call-ai/index.mjs +1 -0
  326. package/dist/services/agent/tools/core/index.d.ts +2 -0
  327. package/dist/services/agent/tools/core/index.js +24 -0
  328. package/dist/services/agent/tools/core/index.mjs +2 -0
  329. package/dist/services/agent/tools/core/web-search/index.d.ts +1 -0
  330. package/dist/services/agent/tools/core/web-search/index.js +22 -0
  331. package/dist/services/agent/tools/core/web-search/index.mjs +1 -0
  332. package/dist/services/agent/tools/core/web-search/web-search.tool.d.ts +2 -0
  333. package/dist/services/agent/tools/core/web-search/web-search.tool.js +51 -0
  334. package/dist/services/agent/tools/core/web-search/web-search.tool.mjs +30 -0
  335. package/dist/services/agent/tools/index.d.ts +2 -12
  336. package/dist/services/agent/tools/index.js +24 -7
  337. package/dist/services/agent/tools/index.mjs +2 -1
  338. package/dist/{tool-DMR_ZdjP.d.ts → services/agent/tools/tool.d.ts} +7 -9
  339. package/dist/services/agent/tools/tool.js +57 -0
  340. package/dist/services/agent/tools/tool.mjs +34 -0
  341. package/dist/services/agent/utils/rank-tools-by-keywords.d.ts +12 -0
  342. package/dist/services/agent/utils/rank-tools-by-keywords.js +65 -0
  343. package/dist/services/agent/utils/rank-tools-by-keywords.mjs +42 -0
  344. package/dist/services/app/core/app.d.ts +14 -0
  345. package/dist/services/app/core/app.js +60 -0
  346. package/dist/services/app/core/app.mjs +47 -0
  347. package/dist/{current-session-DC-SF7rl.d.mts → services/app/core/current-session.d.ts} +4 -5
  348. package/dist/services/app/core/current-session.js +124 -0
  349. package/dist/services/app/core/current-session.mjs +104 -0
  350. package/dist/services/app/core/current-user.d.ts +16 -0
  351. package/dist/services/app/core/current-user.js +84 -0
  352. package/dist/services/app/core/current-user.mjs +61 -0
  353. package/dist/services/app/core/index.d.ts +3 -60
  354. package/dist/services/app/core/index.js +26 -7
  355. package/dist/services/app/core/index.mjs +3 -1
  356. package/dist/services/app/modules/authentication/lambdas/login/index.d.ts +1 -0
  357. package/dist/services/app/modules/authentication/lambdas/login/index.js +22 -0
  358. package/dist/services/app/modules/authentication/lambdas/login/index.mjs +1 -0
  359. package/dist/services/app/modules/authentication/lambdas/login/login.use-case.d.ts +21 -0
  360. package/dist/services/app/modules/authentication/lambdas/login/login.use-case.js +89 -0
  361. package/dist/services/app/modules/authentication/lambdas/login/login.use-case.mjs +50 -0
  362. package/dist/services/app/modules/users/entities/index.d.ts +1 -0
  363. package/dist/services/app/modules/users/entities/index.js +22 -0
  364. package/dist/services/app/modules/users/entities/index.mjs +1 -0
  365. package/dist/services/app/modules/users/entities/user-acquisition.d.ts +12 -0
  366. package/dist/services/app/modules/users/entities/user-acquisition.js +55 -0
  367. package/dist/services/app/modules/users/entities/user-acquisition.mjs +26 -0
  368. package/dist/services/app/modules/users/entities/user-country.d.ts +11 -0
  369. package/dist/services/app/modules/users/entities/user-country.js +44 -0
  370. package/dist/services/app/modules/users/entities/user-country.mjs +21 -0
  371. package/dist/services/app/modules/users/entities/user-currency.d.ts +13 -0
  372. package/dist/services/app/modules/users/entities/user-currency.js +44 -0
  373. package/dist/services/app/modules/users/entities/user-currency.mjs +21 -0
  374. package/dist/services/app/modules/users/entities/user-email.value-object.d.ts +6 -0
  375. package/dist/services/app/modules/users/entities/user-email.value-object.js +43 -0
  376. package/dist/services/app/modules/users/entities/user-email.value-object.mjs +20 -0
  377. package/dist/services/app/modules/users/entities/user-language.d.ts +11 -0
  378. package/dist/services/app/modules/users/entities/user-language.js +44 -0
  379. package/dist/services/app/modules/users/entities/user-language.mjs +21 -0
  380. package/dist/services/app/modules/users/entities/user-marketing.d.ts +9 -0
  381. package/dist/services/app/modules/users/entities/user-marketing.js +53 -0
  382. package/dist/services/app/modules/users/entities/user-marketing.mjs +24 -0
  383. package/dist/services/app/modules/users/entities/user-notification-preferences.d.ts +11 -0
  384. package/dist/services/app/modules/users/entities/user-notification-preferences.js +41 -0
  385. package/dist/services/app/modules/users/entities/user-notification-preferences.mjs +18 -0
  386. package/dist/services/app/modules/users/entities/user-password.value-object.d.ts +8 -0
  387. package/dist/services/app/modules/users/entities/user-password.value-object.js +69 -0
  388. package/dist/services/app/modules/users/entities/user-password.value-object.mjs +36 -0
  389. package/dist/services/app/modules/users/entities/user-permissions.d.ts +21 -0
  390. package/dist/services/app/modules/users/entities/user-permissions.js +59 -0
  391. package/dist/services/app/modules/users/entities/user-permissions.mjs +36 -0
  392. package/dist/services/app/modules/users/entities/user-preferences.d.ts +25 -0
  393. package/dist/services/app/modules/users/entities/user-preferences.js +69 -0
  394. package/dist/services/app/modules/users/entities/user-preferences.mjs +46 -0
  395. package/dist/services/app/modules/users/entities/user-report-preferences.d.ts +16 -0
  396. package/dist/services/app/modules/users/entities/user-report-preferences.js +56 -0
  397. package/dist/services/app/modules/users/entities/user-report-preferences.mjs +33 -0
  398. package/dist/services/app/modules/users/entities/user-report-schedule.d.ts +11 -0
  399. package/dist/services/app/modules/users/entities/user-report-schedule.js +41 -0
  400. package/dist/services/app/modules/users/entities/user-report-schedule.mjs +18 -0
  401. package/dist/services/app/modules/users/entities/user-timezone.d.ts +11 -0
  402. package/dist/services/app/modules/users/entities/user-timezone.js +44 -0
  403. package/dist/services/app/modules/users/entities/user-timezone.mjs +21 -0
  404. package/dist/services/app/modules/users/entities/user.entity.d.ts +41 -0
  405. package/dist/services/app/modules/users/entities/user.entity.js +133 -0
  406. package/dist/services/app/modules/users/entities/user.entity.mjs +103 -0
  407. package/dist/services/app/modules/users/lambdas/create-user/create-user.use-case.d.ts +14 -0
  408. package/dist/services/app/modules/users/lambdas/create-user/create-user.use-case.js +58 -0
  409. package/dist/services/app/modules/users/lambdas/create-user/create-user.use-case.mjs +29 -0
  410. package/dist/services/app/modules/users/lambdas/create-user/index.d.ts +1 -0
  411. package/dist/services/app/modules/users/lambdas/create-user/index.js +22 -0
  412. package/dist/services/app/modules/users/lambdas/create-user/index.mjs +1 -0
  413. package/dist/services/app/modules/users/lambdas/delete-user/delete-user.use-case.d.ts +16 -0
  414. package/dist/services/app/modules/users/lambdas/delete-user/delete-user.use-case.js +61 -0
  415. package/dist/services/app/modules/users/lambdas/delete-user/delete-user.use-case.mjs +32 -0
  416. package/dist/services/app/modules/users/lambdas/delete-user/index.d.ts +1 -0
  417. package/dist/services/app/modules/users/lambdas/delete-user/index.js +22 -0
  418. package/dist/services/app/modules/users/lambdas/delete-user/index.mjs +1 -0
  419. package/dist/services/app/modules/users/lambdas/get-user-by-id/get-user-by-id.use-case.d.ts +14 -0
  420. package/dist/services/app/modules/users/lambdas/get-user-by-id/get-user-by-id.use-case.js +52 -0
  421. package/dist/services/app/modules/users/lambdas/get-user-by-id/get-user-by-id.use-case.mjs +23 -0
  422. package/dist/services/app/modules/users/lambdas/get-user-by-id/index.d.ts +1 -0
  423. package/dist/services/app/modules/users/lambdas/get-user-by-id/index.js +22 -0
  424. package/dist/services/app/modules/users/lambdas/get-user-by-id/index.mjs +1 -0
  425. package/dist/services/app/modules/users/lambdas/list-users-by-props/index.d.ts +1 -0
  426. package/dist/services/app/modules/users/lambdas/list-users-by-props/index.js +22 -0
  427. package/dist/services/app/modules/users/lambdas/list-users-by-props/index.mjs +1 -0
  428. package/dist/services/app/modules/users/lambdas/list-users-by-props/list-users-by-props.use-case.d.ts +16 -0
  429. package/dist/services/app/modules/users/lambdas/list-users-by-props/list-users-by-props.use-case.js +52 -0
  430. package/dist/services/app/modules/users/lambdas/list-users-by-props/list-users-by-props.use-case.mjs +23 -0
  431. package/dist/services/app/modules/users/lambdas/update-user/index.d.ts +1 -0
  432. package/dist/services/app/modules/users/lambdas/update-user/index.js +22 -0
  433. package/dist/services/app/modules/users/lambdas/update-user/index.mjs +1 -0
  434. package/dist/services/app/modules/users/lambdas/update-user/update-user.use-case.d.ts +15 -0
  435. package/dist/services/app/modules/users/lambdas/update-user/update-user.use-case.js +62 -0
  436. package/dist/services/app/modules/users/lambdas/update-user/update-user.use-case.mjs +33 -0
  437. package/dist/services/app/modules/users/repositories/index.d.ts +1 -0
  438. package/dist/services/app/modules/users/repositories/index.js +22 -0
  439. package/dist/services/app/modules/users/repositories/index.mjs +1 -0
  440. package/dist/services/app/modules/users/repositories/user.repository.d.ts +12 -0
  441. package/dist/services/app/modules/users/repositories/user.repository.js +83 -0
  442. package/dist/services/app/modules/users/repositories/user.repository.mjs +54 -0
  443. package/package.json +2 -2
  444. package/dist/agent-loop-C41Y1CGp.d.mts +0 -60
  445. package/dist/agent-loop-ZH4GRi4A.d.ts +0 -60
  446. package/dist/base.use-case-8K6_Ods0.d.mts +0 -14
  447. package/dist/base.use-case-ChEb3nh6.d.ts +0 -14
  448. package/dist/chunk-6PCVBY5G.mjs +0 -1
  449. package/dist/chunk-7WJ3XXSP.mjs +0 -7
  450. package/dist/chunk-CCRMOWMO.mjs +0 -1
  451. package/dist/chunk-ISOEJA2L.mjs +0 -1
  452. package/dist/chunk-XXB52O7H.mjs +0 -1
  453. package/dist/current-session-DC-SF7rl.d.ts +0 -130
  454. package/dist/current-user-4BppBUBP.d.mts +0 -264
  455. package/dist/current-user-4BppBUBP.d.ts +0 -264
  456. package/dist/index.d.mts +0 -10
  457. package/dist/services/agent/core/index.d.mts +0 -122
  458. package/dist/services/agent/loops/index.d.mts +0 -116
  459. package/dist/services/agent/skills/index.d.mts +0 -14
  460. package/dist/services/agent/tools/index.d.mts +0 -12
  461. package/dist/services/app/core/index.d.mts +0 -60
  462. package/dist/skill-CtYQbG6-.d.ts +0 -308
  463. package/dist/skill-DXNkK5FG.d.mts +0 -308
  464. package/dist/tool-BaG2a8Np.d.mts +0 -42
@@ -0,0 +1,78 @@
1
+ import "../../../chunk-XRJFNASX.mjs";
2
+ var AgentStatus = /* @__PURE__ */ ((AgentStatus2) => {
3
+ AgentStatus2["IDLE"] = "idle";
4
+ AgentStatus2["FAILED"] = "failed";
5
+ AgentStatus2["PROCESSING"] = "processing";
6
+ AgentStatus2["AWAITING_USER_INPUT"] = "awaiting_user_input";
7
+ AgentStatus2["AWAITING_USER_CONFIRMATION"] = "awaiting_user_confirmation";
8
+ return AgentStatus2;
9
+ })(AgentStatus || {});
10
+ class AgentState {
11
+ constructor(status, language, lastError, activeTaskId, stopRequested, currentActivity) {
12
+ this.status = status;
13
+ this.language = language;
14
+ this.lastError = lastError;
15
+ this.activeTaskId = activeTaskId;
16
+ this.stopRequested = stopRequested;
17
+ this.currentActivity = currentActivity;
18
+ }
19
+ status;
20
+ language;
21
+ lastError;
22
+ activeTaskId;
23
+ stopRequested;
24
+ currentActivity;
25
+ static fromJSON(props = {}) {
26
+ return new AgentState(
27
+ props.status,
28
+ props.language,
29
+ props.lastError,
30
+ props.activeTaskId,
31
+ props.stopRequested,
32
+ props.currentActivity
33
+ );
34
+ }
35
+ toJSON() {
36
+ return {
37
+ currentActivity: this.currentActivity,
38
+ language: this.language,
39
+ status: this.status,
40
+ activeTaskId: this.activeTaskId,
41
+ lastError: this.lastError,
42
+ stopRequested: this.stopRequested
43
+ };
44
+ }
45
+ setLanguage(language) {
46
+ if (language) this.language = language;
47
+ }
48
+ setCurrentActivity(currentActivity) {
49
+ this.currentActivity = currentActivity;
50
+ }
51
+ setStatus(status) {
52
+ this.status = status;
53
+ }
54
+ setActiveTaskId(taskId) {
55
+ this.activeTaskId = taskId;
56
+ }
57
+ setLastError(lastError) {
58
+ this.lastError = lastError;
59
+ }
60
+ setStopRequested(stopRequested = true) {
61
+ this.stopRequested = stopRequested;
62
+ }
63
+ interruptExecution() {
64
+ this.stopRequested = true;
65
+ }
66
+ cleanContext() {
67
+ this.currentActivity = "";
68
+ this.language = "en";
69
+ this.status = "idle" /* IDLE */;
70
+ this.activeTaskId = void 0;
71
+ this.lastError = void 0;
72
+ this.stopRequested = false;
73
+ }
74
+ }
75
+ export {
76
+ AgentState,
77
+ AgentStatus
78
+ };
@@ -0,0 +1,70 @@
1
+ import 'reflect-metadata';
2
+ import { CurrentUser, CurrentSession } from '../../app/core/index.js';
3
+ import { McpServer, McpServerProps } from '../modules/mcp-servers/entities/index.js';
4
+ import { Params as UsageParams, Output as UsageOutput } from '../modules/llmcalls/lambdas/get-llm-usage/index.js';
5
+ import { QueryOptions } from '../../../common/repositories/index.js';
6
+ import { Chat, ChatProps } from '../modules/chats/entities/chat.entity.js';
7
+ import { Tool } from '../tools/tool.js';
8
+ import { AgentLoop } from './agent-loop';
9
+ export declare const AGENT_ERROR_CODES: {
10
+ readonly NODE_NOT_FOUND: "AGENT_NODE_NOT_FOUND";
11
+ };
12
+ export interface AgentOptions {
13
+ loop: AgentLoop;
14
+ tools?: Tool[];
15
+ }
16
+ interface Input {
17
+ message: string;
18
+ chatId?: string;
19
+ messageId?: string;
20
+ isPrivateSession?: boolean;
21
+ }
22
+ type HookType = 'pre_execution' | 'post_execution';
23
+ export declare class Agent {
24
+ private readonly updateChatUseCase;
25
+ private readonly chatRepository;
26
+ private readonly logger;
27
+ private readonly _loop;
28
+ private _tools;
29
+ private _mcps;
30
+ private _preHooks;
31
+ private _postHooks;
32
+ private currentChat;
33
+ private currentUser?;
34
+ private currentSession?;
35
+ private currentMessage;
36
+ private answerId;
37
+ private stopLoop;
38
+ private stopRequested;
39
+ private pendingNextNode?;
40
+ static getChat(chatId: string): Promise<ChatProps | null>;
41
+ static interruptExecution(chatId: string, currentUser: CurrentUser): Promise<void>;
42
+ static createChatSession(currentUser: CurrentUser, loop?: AgentLoop): Promise<Chat>;
43
+ static listUserChats(options: QueryOptions, currentUser: CurrentUser): Promise<ChatProps[] | null>;
44
+ static getLLMUsage(filters: UsageParams['filters'], currentUser: CurrentUser): Promise<UsageOutput['data']>;
45
+ static listUserMcpServers(options: QueryOptions, currentUser: CurrentUser): Promise<McpServerProps[] | null>;
46
+ static createMcpServer(payload: McpServerProps, currentUser: CurrentUser): Promise<McpServerProps>;
47
+ constructor(agentOptions: AgentOptions);
48
+ get tools(): Tool[];
49
+ get mcps(): McpServer[];
50
+ get notifyOnCompletion(): boolean | undefined;
51
+ get lastAssistantAnswer(): string | undefined;
52
+ run(input: Input, currentUser: CurrentUser, currentSession?: CurrentSession): Promise<{
53
+ data: Chat;
54
+ } | undefined>;
55
+ stopAgent(): void;
56
+ addTool(tool: Tool): void;
57
+ addHook(type: HookType, fn: Function): void;
58
+ private preRunner;
59
+ private postRunner;
60
+ private loadMcpServers;
61
+ private disconnectMcpServers;
62
+ private saveChat;
63
+ private checkInterruptionRequest;
64
+ private runLoop;
65
+ private resetNextNode;
66
+ private resolveNodeName;
67
+ private searchTools;
68
+ private buildRunContext;
69
+ }
70
+ export {};
@@ -0,0 +1,351 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var agent_exports = {};
20
+ __export(agent_exports, {
21
+ AGENT_ERROR_CODES: () => AGENT_ERROR_CODES,
22
+ Agent: () => Agent
23
+ });
24
+ module.exports = __toCommonJS(agent_exports);
25
+ var import_reflect_metadata = require("reflect-metadata");
26
+ var import_tsyringe = require("tsyringe");
27
+ var import_logger = require("../../../common/logger/index.js");
28
+ var import_create_chat = require("../modules/chats/lambdas/create-chat/index.js");
29
+ var import_update_chat = require("../modules/chats/lambdas/update-chat/index.js");
30
+ var import_list_chats_by_user = require("../modules/chats/lambdas/list-chats-by-user/index.js");
31
+ var import_list_mcpservers_by_user = require("../modules/mcp-servers/lambdas/list-mcpservers-by-user/index.js");
32
+ var import_entities = require("../modules/mcp-servers/entities/index.js");
33
+ var import_create_mcpserver = require("../modules/mcp-servers/lambdas/create-mcpserver/index.js");
34
+ var import_repositories = require("../modules/chats/repositories/index.js");
35
+ var import_get_llm_usage = require("../modules/llmcalls/lambdas/get-llm-usage/index.js");
36
+ var import_chat = require("../modules/chats/entities/chat.entity.js");
37
+ var import_tool = require("../tools/tool.js");
38
+ var import_core2 = require("../tools/core/index.js");
39
+ var import_rank_tools_by_keywords = require("../utils/rank-tools-by-keywords.js");
40
+ var import_agent_state = require("./agent-state");
41
+ const AGENT_ERROR_CODES = {
42
+ NODE_NOT_FOUND: "AGENT_NODE_NOT_FOUND"
43
+ };
44
+ const MAX_ITERATIONS = 50;
45
+ class Agent {
46
+ updateChatUseCase = import_tsyringe.container.resolve(import_update_chat.UpdateChatUseCase);
47
+ chatRepository = import_tsyringe.container.resolve(import_repositories.ChatRepository);
48
+ logger = new import_logger.Logger();
49
+ _loop;
50
+ _tools;
51
+ _mcps = [];
52
+ _preHooks = [];
53
+ _postHooks = [];
54
+ currentChat;
55
+ currentUser;
56
+ currentSession;
57
+ currentMessage = "";
58
+ answerId = "";
59
+ stopLoop = false;
60
+ stopRequested = false;
61
+ pendingNextNode;
62
+ static async getChat(chatId) {
63
+ const chatRepository = import_tsyringe.container.resolve(import_repositories.ChatRepository);
64
+ return chatRepository.findById(chatId);
65
+ }
66
+ static async interruptExecution(chatId, currentUser) {
67
+ const updateChatUseCase = import_tsyringe.container.resolve(import_update_chat.UpdateChatUseCase);
68
+ const logger = new import_logger.Logger();
69
+ logger.debug("[AGENT] Interrupt execution triggered");
70
+ await updateChatUseCase.execute({
71
+ id: chatId,
72
+ payload: { state: { stopRequested: true } },
73
+ currentUser
74
+ });
75
+ }
76
+ static async createChatSession(currentUser, loop) {
77
+ if (!currentUser) throw new Error("[AGENT] CurrentUser is required to create a new chat");
78
+ const createChatUseCase = import_tsyringe.container.resolve(import_create_chat.CreateChatUseCase);
79
+ const newChat = import_chat.Chat.withDefaults(loop?.name);
80
+ const { data } = await createChatUseCase.execute({
81
+ payload: newChat.toJSON(),
82
+ currentUser
83
+ });
84
+ if (!data) throw new Error("[AGENT] There was an error creating the chat");
85
+ return import_chat.Chat.fromJSON(data);
86
+ }
87
+ static async listUserChats(options, currentUser) {
88
+ const listChatsByUserUseCase = import_tsyringe.container.resolve(import_list_chats_by_user.ListChatsByUserUseCase);
89
+ const { page, limit } = options || {};
90
+ const { data } = await listChatsByUserUseCase.execute({
91
+ options: { page, limit },
92
+ currentUser
93
+ });
94
+ return data;
95
+ }
96
+ static async getLLMUsage(filters, currentUser) {
97
+ const getLLMUsageUseCase = import_tsyringe.container.resolve(import_get_llm_usage.GetLLMUsageUseCase);
98
+ const { data } = await getLLMUsageUseCase.execute({ filters, currentUser });
99
+ return data;
100
+ }
101
+ static async listUserMcpServers(options, currentUser) {
102
+ const listMcpServersByUserUseCase = import_tsyringe.container.resolve(import_list_mcpservers_by_user.ListMcpServersByUserUseCase);
103
+ const { page, limit } = options || {};
104
+ const { data } = await listMcpServersByUserUseCase.execute({
105
+ options: { page, limit },
106
+ currentUser
107
+ });
108
+ return data;
109
+ }
110
+ static async createMcpServer(payload, currentUser) {
111
+ if (!currentUser) throw new Error("[AGENT] CurrentUser is required to create a new mcp server");
112
+ const createMcpServerUseCase = import_tsyringe.container.resolve(import_create_mcpserver.CreateMcpServerUseCase);
113
+ const { data } = await createMcpServerUseCase.execute({
114
+ payload,
115
+ currentUser
116
+ });
117
+ if (!data) throw new Error("[AGENT] There was an error creating the mcp server");
118
+ return data;
119
+ }
120
+ constructor(agentOptions) {
121
+ if (!agentOptions?.loop) throw new Error("[AGENT] An AgentLoop instance is required");
122
+ this._loop = agentOptions.loop;
123
+ this._tools = agentOptions.tools ?? [];
124
+ this.currentChat = import_chat.Chat.withDefaults(this._loop.name);
125
+ }
126
+ get tools() {
127
+ return this._tools;
128
+ }
129
+ get mcps() {
130
+ return this._mcps;
131
+ }
132
+ get notifyOnCompletion() {
133
+ return this.currentChat?.settings?.notifyOnCompletion;
134
+ }
135
+ get lastAssistantAnswer() {
136
+ return this.currentChat.lastAnswer;
137
+ }
138
+ async run(input, currentUser, currentSession) {
139
+ try {
140
+ const { chatId, message } = input || {};
141
+ this.logger.debug(input, "[AGENT] Agent started");
142
+ if (!message) throw new Error("[AGENT] Message is required");
143
+ if (!currentUser) throw new Error("[AGENT] CurrentUser is required");
144
+ this.stopLoop = false;
145
+ this.stopRequested = false;
146
+ this.pendingNextNode = void 0;
147
+ this.currentUser = currentUser;
148
+ this.currentSession = currentSession;
149
+ this.currentMessage = message;
150
+ this.answerId = new (require("mongodb")).ObjectId().toString();
151
+ await this.preRunner(chatId);
152
+ await this.runLoop();
153
+ await this.postRunner();
154
+ return { data: this.currentChat };
155
+ } catch (error) {
156
+ this.currentChat.state?.setStatus(import_agent_state.AgentStatus.FAILED);
157
+ this.currentChat.state?.setCurrentActivity("stopped");
158
+ await this.saveChat();
159
+ await this.disconnectMcpServers();
160
+ }
161
+ }
162
+ stopAgent() {
163
+ this.stopLoop = true;
164
+ }
165
+ addTool(tool) {
166
+ this._tools.push(tool);
167
+ }
168
+ addHook(type, fn) {
169
+ if (type === "pre_execution") this._preHooks.push(fn);
170
+ if (type === "post_execution") this._postHooks.push(fn);
171
+ }
172
+ async preRunner(chatId) {
173
+ let chatData;
174
+ if (chatId) {
175
+ chatData = await this.chatRepository?.findById(chatId);
176
+ }
177
+ if (!chatData) {
178
+ this.logger.debug("[AGENT] Not existing chat found");
179
+ if (!this.currentUser) throw new Error("[AGENT] CurrentUser params is required");
180
+ this.currentChat = await Agent.createChatSession(this.currentUser, this._loop);
181
+ } else {
182
+ this.logger.debug("[AGENT] Existing chat found");
183
+ this.currentChat = import_chat.Chat.fromJSON(chatData);
184
+ this.currentChat.state?.setStopRequested(false);
185
+ this.currentChat.switchLoop(this._loop.name);
186
+ }
187
+ this.currentChat.pushMessage({
188
+ role: "user",
189
+ content: this.currentMessage
190
+ });
191
+ this.currentChat.state?.setStatus(import_agent_state.AgentStatus.PROCESSING);
192
+ this.currentChat.state?.setCurrentActivity("Starting...");
193
+ await this.saveChat({ resetStop: true });
194
+ await this.loadMcpServers();
195
+ for (const hook of this._preHooks) {
196
+ await hook();
197
+ }
198
+ }
199
+ async postRunner() {
200
+ for (const hook of this._postHooks) {
201
+ await hook();
202
+ }
203
+ this.currentChat.state?.setCurrentActivity("stopped");
204
+ await this.saveChat();
205
+ await this.disconnectMcpServers();
206
+ }
207
+ async loadMcpServers() {
208
+ if (!this.currentUser) return;
209
+ const servers = await Agent.listUserMcpServers({}, this.currentUser);
210
+ for (const props of servers ?? []) {
211
+ const mcpServer = import_entities.McpServer.fromJSON(props);
212
+ try {
213
+ const mcpClient = await mcpServer.connect();
214
+ const { tools: mcpTools } = await mcpClient.listTools();
215
+ const tools = mcpTools.map((mcpTool) => import_tool.Tool.fromMcp(mcpTool, mcpClient, { namespace: mcpServer.name ?? "mcp" }));
216
+ this._tools.push(...tools);
217
+ this._mcps.push(mcpServer);
218
+ } catch (error) {
219
+ this.logger.error({ error, mcpServer: mcpServer.name }, "[AGENT] Failed to connect MCP server");
220
+ }
221
+ }
222
+ }
223
+ async disconnectMcpServers() {
224
+ for (const mcpServer of this._mcps) {
225
+ await mcpServer.disconnect().catch((error) => {
226
+ this.logger.error({ error, mcpServer: mcpServer.name }, "[AGENT] Failed to disconnect MCP server");
227
+ });
228
+ }
229
+ this._mcps = [];
230
+ }
231
+ async saveChat(props) {
232
+ if (this.currentChat?._id) {
233
+ this.logger.debug("[AGENT] Updating chat...");
234
+ if (!props?.resetStop) {
235
+ this.logger.debug("[Agent] Removing stopRequested");
236
+ delete this.currentChat.state?.stopRequested;
237
+ }
238
+ await this.updateChatUseCase?.execute({
239
+ id: this.currentChat?._id.toString(),
240
+ payload: this.currentChat.toJSON(),
241
+ currentUser: this.currentUser
242
+ }) ?? {};
243
+ }
244
+ }
245
+ async checkInterruptionRequest() {
246
+ const chatId = this.currentChat?._id?.toString();
247
+ const chatData = chatId && await this.chatRepository.findById(chatId, { state: 1 });
248
+ if (chatData && chatData.state?.stopRequested) this.stopRequested = true;
249
+ }
250
+ async runLoop() {
251
+ this.logger.info("[AGENT] Agent Loop started");
252
+ let iterations = 0;
253
+ while (!this.stopLoop && iterations < MAX_ITERATIONS) {
254
+ iterations++;
255
+ await this.checkInterruptionRequest();
256
+ if (this.stopRequested) {
257
+ this.stopLoop = true;
258
+ this.currentChat.state?.setStatus(import_agent_state.AgentStatus.IDLE);
259
+ this.resetNextNode();
260
+ this.currentChat.state?.setStopRequested(false);
261
+ break;
262
+ }
263
+ const activeTask = this.currentChat.activeTask;
264
+ const nodeName = activeTask?.nextNode ?? this.pendingNextNode ?? this.resolveNodeName(this._loop.initialNode);
265
+ const nodeFn = nodeName ? this._loop.nodes[nodeName] : void 0;
266
+ if (!nodeFn) {
267
+ this.logger.error({ nodeName, loop: this._loop.name }, "[AGENT] Node not found in current loop");
268
+ this.currentChat.state?.setStatus(import_agent_state.AgentStatus.FAILED);
269
+ this.currentChat.state?.setLastError({
270
+ code: AGENT_ERROR_CODES.NODE_NOT_FOUND,
271
+ message: `Node "${nodeName}" is not implemented by loop "${this._loop.name}"`,
272
+ isRetryable: false,
273
+ timestamp: /* @__PURE__ */ new Date()
274
+ });
275
+ this.currentChat.addTrace({ node: nodeName ?? "", reasoning: "Node not found" });
276
+ this.stopLoop = true;
277
+ break;
278
+ }
279
+ await nodeFn.call(this._loop, this.buildRunContext());
280
+ await this.saveChat();
281
+ if (!this.currentChat.state || this.currentChat.state?.status === import_agent_state.AgentStatus.IDLE || this.currentChat.state?.status === import_agent_state.AgentStatus.FAILED || this.currentChat.state?.status === import_agent_state.AgentStatus.AWAITING_USER_INPUT || this.currentChat.state?.status === import_agent_state.AgentStatus.AWAITING_USER_CONFIRMATION) {
282
+ this.stopLoop = true;
283
+ break;
284
+ }
285
+ }
286
+ this.logger.info("[AGENT] Agent Loop stopped");
287
+ }
288
+ resetNextNode() {
289
+ const resolved = this.resolveNodeName(this._loop.initialNode);
290
+ const active = this.currentChat.activeTask;
291
+ if (active) active.setNextNode(resolved);
292
+ else this.pendingNextNode = resolved;
293
+ }
294
+ resolveNodeName(node) {
295
+ if (typeof node !== "function") return node;
296
+ return Object.entries(this._loop.nodes).find(([, fn]) => fn === node)?.[0];
297
+ }
298
+ searchTools(keywords, opts) {
299
+ this.logger.debug({ opts }, "[AGENT] Searching tools");
300
+ const page = opts?.page ?? 1;
301
+ const limit = opts?.limit ?? 5;
302
+ const matchedTools = (0, import_rank_tools_by_keywords.rankToolsByKeywords)(keywords, this._tools);
303
+ if (matchedTools.length <= 5 && !matchedTools.some((t) => t.toolName === import_core2.webSearchTool.name)) {
304
+ matchedTools.push({ toolName: import_core2.webSearchTool.name, score: 0.1, matchedKeywords: [], tool: import_core2.webSearchTool });
305
+ }
306
+ if (matchedTools.length <= 5 && !matchedTools.some((t) => t.toolName === import_core2.callAiTool.name)) {
307
+ matchedTools.push({ toolName: import_core2.callAiTool.name, score: 0.1, matchedKeywords: [], tool: import_core2.callAiTool });
308
+ }
309
+ const startIndex = (page - 1) * limit;
310
+ return matchedTools.slice(startIndex, startIndex + limit);
311
+ }
312
+ buildRunContext() {
313
+ const sessionId = this.currentChat._id?.toString() ?? "";
314
+ return {
315
+ task: this.currentChat.activeTask,
316
+ chat: this.currentChat,
317
+ currentUser: this.currentUser,
318
+ currentSession: this.currentSession,
319
+ currentMessage: this.currentMessage,
320
+ answerId: this.answerId,
321
+ tools: this._tools,
322
+ searchTools: this.searchTools.bind(this),
323
+ baseParams: {
324
+ currentUser: this.currentUser,
325
+ sessionId,
326
+ answerId: this.answerId
327
+ },
328
+ skillParams: {
329
+ sessionId,
330
+ answerId: this.answerId,
331
+ userMessage: this.currentMessage,
332
+ currentUser: this.currentUser,
333
+ currentSession: this.currentSession,
334
+ chat: this.currentChat
335
+ },
336
+ reply: (content) => this.currentChat.pushMessage({ _id: this.answerId, role: "assistant", content }),
337
+ setNextNode: (node) => {
338
+ const resolved = this.resolveNodeName(node);
339
+ const active = this.currentChat.activeTask;
340
+ if (active) active.setNextNode(resolved);
341
+ else this.pendingNextNode = resolved;
342
+ },
343
+ logger: this.logger
344
+ };
345
+ }
346
+ }
347
+ // Annotate the CommonJS export names for ESM import in node:
348
+ 0 && (module.exports = {
349
+ AGENT_ERROR_CODES,
350
+ Agent
351
+ });