openloops 0.1.9 → 0.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-XRJFNASX.mjs +14 -0
- package/dist/common/clients/index.d.ts +3 -0
- package/dist/common/clients/index.js +26 -0
- package/dist/common/clients/index.mjs +3 -0
- package/dist/common/clients/llm-client.d.ts +30 -0
- package/dist/common/clients/llm-client.js +159 -0
- package/dist/common/clients/llm-client.mjs +126 -0
- package/dist/common/clients/sentry-client.d.ts +10 -0
- package/dist/common/clients/sentry-client.js +87 -0
- package/dist/common/clients/sentry-client.mjs +53 -0
- package/dist/common/clients/serper-client.d.ts +66 -0
- package/dist/common/clients/serper-client.js +74 -0
- package/dist/common/clients/serper-client.mjs +41 -0
- package/dist/common/core/base.app.d.ts +12 -0
- package/dist/common/core/base.app.js +57 -0
- package/dist/common/core/base.app.mjs +34 -0
- package/dist/common/core/base.entity.d.ts +55 -0
- package/dist/common/core/base.entity.js +208 -0
- package/dist/common/core/base.entity.mjs +179 -0
- package/dist/common/core/base.use-case.d.ts +15 -0
- package/dist/common/core/base.use-case.js +30 -0
- package/dist/common/core/base.use-case.mjs +7 -0
- package/dist/common/core/index.d.ts +1 -0
- package/dist/common/core/index.js +1 -0
- package/dist/common/core/index.mjs +0 -0
- package/dist/common/core/utils/delete-empty-fields.d.ts +1 -0
- package/dist/common/core/utils/delete-empty-fields.js +66 -0
- package/dist/common/core/utils/delete-empty-fields.mjs +43 -0
- package/dist/common/core/utils/flatten-object.d.ts +1 -0
- package/dist/common/core/utils/flatten-object.js +45 -0
- package/dist/common/core/utils/flatten-object.mjs +22 -0
- package/dist/common/core/utils/index.d.ts +3 -0
- package/dist/common/core/utils/index.js +26 -0
- package/dist/common/core/utils/index.mjs +3 -0
- package/dist/common/core/utils/is-plain-object.d.ts +1 -0
- package/dist/common/core/utils/is-plain-object.js +32 -0
- package/dist/common/core/utils/is-plain-object.mjs +9 -0
- package/dist/common/decorators/admin-only/admin-only.d.ts +2 -0
- package/dist/common/decorators/admin-only/admin-only.js +52 -0
- package/dist/common/decorators/admin-only/admin-only.mjs +28 -0
- package/dist/common/decorators/admin-only/index.d.ts +1 -0
- package/dist/common/decorators/admin-only/index.js +22 -0
- package/dist/common/decorators/admin-only/index.mjs +1 -0
- package/dist/common/decorators/index.d.ts +3 -0
- package/dist/common/decorators/index.js +26 -0
- package/dist/common/decorators/index.mjs +3 -0
- package/dist/common/decorators/mask-in-logs/index.d.ts +1 -0
- package/dist/common/decorators/mask-in-logs/index.js +22 -0
- package/dist/common/decorators/mask-in-logs/index.mjs +1 -0
- package/dist/common/decorators/mask-in-logs/mask-in-logs.d.ts +2 -0
- package/dist/common/decorators/mask-in-logs/mask-in-logs.js +53 -0
- package/dist/common/decorators/mask-in-logs/mask-in-logs.mjs +29 -0
- package/dist/common/decorators/owner-only/index.d.ts +1 -0
- package/dist/common/decorators/owner-only/index.js +22 -0
- package/dist/common/decorators/owner-only/index.mjs +1 -0
- package/dist/common/decorators/owner-only/owner-only.d.ts +2 -0
- package/dist/common/decorators/owner-only/owner-only.js +52 -0
- package/dist/common/decorators/owner-only/owner-only.mjs +28 -0
- package/dist/common/error/http-error.d.ts +11 -0
- package/dist/common/error/http-error.js +37 -0
- package/dist/common/error/http-error.mjs +14 -0
- package/dist/common/error/index.d.ts +2 -0
- package/dist/common/error/index.js +24 -0
- package/dist/common/error/index.mjs +2 -0
- package/dist/common/error/reportError.d.ts +2 -0
- package/dist/common/error/reportError.js +51 -0
- package/dist/common/error/reportError.mjs +28 -0
- package/dist/common/helpers/extract-json-from-text.d.ts +1 -0
- package/dist/common/helpers/extract-json-from-text.js +63 -0
- package/dist/common/helpers/extract-json-from-text.mjs +40 -0
- package/dist/common/helpers/index.d.ts +2 -0
- package/dist/common/helpers/index.js +24 -0
- package/dist/common/helpers/index.mjs +2 -0
- package/dist/common/helpers/sanitize-string.d.ts +1 -0
- package/dist/common/helpers/sanitize-string.js +45 -0
- package/dist/common/helpers/sanitize-string.mjs +12 -0
- package/dist/common/logger/index.d.ts +1 -0
- package/dist/common/logger/index.js +22 -0
- package/dist/common/logger/index.mjs +1 -0
- package/dist/common/logger/pino.d.ts +12 -0
- package/dist/common/logger/pino.js +70 -0
- package/dist/common/logger/pino.mjs +36 -0
- package/dist/common/repositories/index.d.ts +2 -0
- package/dist/common/repositories/index.js +24 -0
- package/dist/common/repositories/index.mjs +2 -0
- package/dist/common/repositories/mongo-db.client.d.ts +11 -0
- package/dist/common/repositories/mongo-db.client.js +79 -0
- package/dist/common/repositories/mongo-db.client.mjs +57 -0
- package/dist/common/repositories/mongo-db.repository.d.ts +87 -0
- package/dist/common/repositories/mongo-db.repository.js +219 -0
- package/dist/common/repositories/mongo-db.repository.mjs +196 -0
- package/dist/common/utils/secret-manager.d.ts +15 -0
- package/dist/common/utils/secret-manager.js +105 -0
- package/dist/common/utils/secret-manager.mjs +71 -0
- package/dist/index.d.ts +1 -10
- package/dist/index.js +22 -7
- package/dist/index.mjs +1 -1
- package/dist/services/agent/core/agent-loop.d.ts +38 -0
- package/dist/services/agent/core/agent-loop.js +29 -0
- package/dist/services/agent/core/agent-loop.mjs +6 -0
- package/dist/services/agent/core/agent-state.d.ts +42 -0
- package/dist/services/agent/core/agent-state.js +102 -0
- package/dist/services/agent/core/agent-state.mjs +78 -0
- package/dist/services/agent/core/agent.d.ts +70 -0
- package/dist/services/agent/core/agent.js +351 -0
- package/dist/services/agent/core/agent.mjs +327 -0
- package/dist/services/agent/core/index.d.ts +3 -122
- package/dist/services/agent/core/index.js +26 -7
- package/dist/services/agent/core/index.mjs +3 -1
- package/dist/services/agent/loops/index.d.ts +2 -116
- package/dist/services/agent/loops/index.js +24 -10
- package/dist/services/agent/loops/index.mjs +2 -4
- package/dist/services/agent/loops/plan-execute/index.d.ts +1 -0
- package/dist/services/agent/loops/plan-execute/index.js +22 -0
- package/dist/services/agent/loops/plan-execute/index.mjs +1 -0
- package/dist/services/agent/loops/plan-execute/plan-execute-loop.d.ts +27 -0
- package/dist/services/agent/loops/plan-execute/plan-execute-loop.js +242 -0
- package/dist/services/agent/loops/plan-execute/plan-execute-loop.mjs +226 -0
- package/dist/services/agent/loops/shared/index.d.ts +1 -0
- package/dist/services/agent/loops/shared/index.js +22 -0
- package/dist/services/agent/loops/shared/index.mjs +1 -0
- package/dist/services/agent/loops/shared/skills/action-planner.d.ts +35 -0
- package/dist/services/agent/loops/shared/skills/action-planner.js +68 -0
- package/dist/services/agent/loops/shared/skills/action-planner.mjs +45 -0
- package/dist/services/agent/loops/shared/skills/confirmation-gate.d.ts +9 -0
- package/dist/services/agent/loops/shared/skills/confirmation-gate.js +53 -0
- package/dist/services/agent/loops/shared/skills/confirmation-gate.mjs +30 -0
- package/dist/services/agent/loops/shared/skills/fast-responder.d.ts +9 -0
- package/dist/services/agent/loops/shared/skills/fast-responder.js +70 -0
- package/dist/services/agent/loops/shared/skills/fast-responder.mjs +47 -0
- package/dist/services/agent/loops/shared/skills/final-responder.d.ts +7 -0
- package/dist/services/agent/loops/shared/skills/final-responder.js +57 -0
- package/dist/services/agent/loops/shared/skills/final-responder.mjs +34 -0
- package/dist/services/agent/loops/shared/skills/index.d.ts +6 -0
- package/dist/services/agent/loops/shared/skills/index.js +32 -0
- package/dist/services/agent/loops/shared/skills/index.mjs +6 -0
- package/dist/services/agent/loops/shared/skills/state-observer.d.ts +10 -0
- package/dist/services/agent/loops/shared/skills/state-observer.js +57 -0
- package/dist/services/agent/loops/shared/skills/state-observer.mjs +34 -0
- package/dist/services/agent/loops/shared/skills/strategy-engine.d.ts +15 -0
- package/dist/services/agent/loops/shared/skills/strategy-engine.js +60 -0
- package/dist/services/agent/loops/shared/skills/strategy-engine.mjs +37 -0
- package/dist/services/agent/modules/chats/entities/agent-action.entity.d.ts +58 -0
- package/dist/services/agent/modules/chats/entities/agent-action.entity.js +151 -0
- package/dist/services/agent/modules/chats/entities/agent-action.entity.mjs +128 -0
- package/dist/services/agent/modules/chats/entities/agent-task.entity.d.ts +59 -0
- package/dist/services/agent/modules/chats/entities/agent-task.entity.js +231 -0
- package/dist/services/agent/modules/chats/entities/agent-task.entity.mjs +207 -0
- package/dist/services/agent/modules/chats/entities/chat-context.entity.d.ts +39 -0
- package/dist/services/agent/modules/chats/entities/chat-context.entity.js +70 -0
- package/dist/services/agent/modules/chats/entities/chat-context.entity.mjs +47 -0
- package/dist/services/agent/modules/chats/entities/chat-message.entity.d.ts +16 -0
- package/dist/services/agent/modules/chats/entities/chat-message.entity.js +58 -0
- package/dist/services/agent/modules/chats/entities/chat-message.entity.mjs +35 -0
- package/dist/services/agent/modules/chats/entities/chat-settings.entity.d.ts +17 -0
- package/dist/services/agent/modules/chats/entities/chat-settings.entity.js +63 -0
- package/dist/services/agent/modules/chats/entities/chat-settings.entity.mjs +40 -0
- package/dist/services/agent/modules/chats/entities/chat.entity.d.ts +50 -0
- package/dist/services/agent/modules/chats/entities/chat.entity.js +163 -0
- package/dist/services/agent/modules/chats/entities/chat.entity.mjs +140 -0
- package/dist/services/agent/modules/chats/entities/index.d.ts +1 -0
- package/dist/services/agent/modules/chats/entities/index.js +22 -0
- package/dist/services/agent/modules/chats/entities/index.mjs +1 -0
- package/dist/services/agent/modules/chats/lambdas/create-chat/create-chat.use-case.d.ts +14 -0
- package/dist/services/agent/modules/chats/lambdas/create-chat/create-chat.use-case.js +56 -0
- package/dist/services/agent/modules/chats/lambdas/create-chat/create-chat.use-case.mjs +27 -0
- package/dist/services/agent/modules/chats/lambdas/create-chat/index.d.ts +1 -0
- package/dist/services/agent/modules/chats/lambdas/create-chat/index.js +22 -0
- package/dist/services/agent/modules/chats/lambdas/create-chat/index.mjs +1 -0
- package/dist/services/agent/modules/chats/lambdas/delete-chat/delete-chat.use-case.d.ts +15 -0
- package/dist/services/agent/modules/chats/lambdas/delete-chat/delete-chat.use-case.js +61 -0
- package/dist/services/agent/modules/chats/lambdas/delete-chat/delete-chat.use-case.mjs +32 -0
- package/dist/services/agent/modules/chats/lambdas/delete-chat/index.d.ts +1 -0
- package/dist/services/agent/modules/chats/lambdas/delete-chat/index.js +22 -0
- package/dist/services/agent/modules/chats/lambdas/delete-chat/index.mjs +1 -0
- package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/get-chat-by-id.use-case.d.ts +14 -0
- package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/get-chat-by-id.use-case.js +52 -0
- package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/get-chat-by-id.use-case.mjs +23 -0
- package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/index.d.ts +1 -0
- package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/index.js +22 -0
- package/dist/services/agent/modules/chats/lambdas/get-chat-by-id/index.mjs +1 -0
- package/dist/services/agent/modules/chats/lambdas/interrupt-execution/index.d.ts +1 -0
- package/dist/services/agent/modules/chats/lambdas/interrupt-execution/index.js +22 -0
- package/dist/services/agent/modules/chats/lambdas/interrupt-execution/index.mjs +1 -0
- package/dist/services/agent/modules/chats/lambdas/interrupt-execution/interrupt-execution.use-case.d.ts +14 -0
- package/dist/services/agent/modules/chats/lambdas/interrupt-execution/interrupt-execution.use-case.js +64 -0
- package/dist/services/agent/modules/chats/lambdas/interrupt-execution/interrupt-execution.use-case.mjs +35 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/index.d.ts +1 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/index.js +22 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/index.mjs +1 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/list-chats-by-props.use-case.d.ts +16 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/list-chats-by-props.use-case.js +52 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-props/list-chats-by-props.use-case.mjs +23 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/index.d.ts +1 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/index.js +22 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/index.mjs +1 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/list-chats-by-user.use-case.d.ts +16 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/list-chats-by-user.use-case.js +59 -0
- package/dist/services/agent/modules/chats/lambdas/list-chats-by-user/list-chats-by-user.use-case.mjs +30 -0
- package/dist/services/agent/modules/chats/lambdas/update-chat/index.d.ts +1 -0
- package/dist/services/agent/modules/chats/lambdas/update-chat/index.js +22 -0
- package/dist/services/agent/modules/chats/lambdas/update-chat/index.mjs +1 -0
- package/dist/services/agent/modules/chats/lambdas/update-chat/update-chat.use-case.d.ts +15 -0
- package/dist/services/agent/modules/chats/lambdas/update-chat/update-chat.use-case.js +64 -0
- package/dist/services/agent/modules/chats/lambdas/update-chat/update-chat.use-case.mjs +35 -0
- package/dist/services/agent/modules/chats/repositories/chat.repository.d.ts +10 -0
- package/dist/services/agent/modules/chats/repositories/chat.repository.js +67 -0
- package/dist/services/agent/modules/chats/repositories/chat.repository.mjs +38 -0
- package/dist/services/agent/modules/chats/repositories/index.d.ts +1 -0
- package/dist/services/agent/modules/chats/repositories/index.js +22 -0
- package/dist/services/agent/modules/chats/repositories/index.mjs +1 -0
- package/dist/services/agent/modules/llmcalls/entities/index.d.ts +1 -0
- package/dist/services/agent/modules/llmcalls/entities/index.js +22 -0
- package/dist/services/agent/modules/llmcalls/entities/index.mjs +1 -0
- package/dist/services/agent/modules/llmcalls/entities/llmcall.entity.d.ts +23 -0
- package/dist/services/agent/modules/llmcalls/entities/llmcall.entity.js +71 -0
- package/dist/services/agent/modules/llmcalls/entities/llmcall.entity.mjs +48 -0
- package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/create-llmcall.use-case.d.ts +14 -0
- package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/create-llmcall.use-case.js +56 -0
- package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/create-llmcall.use-case.mjs +27 -0
- package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/index.d.ts +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/index.js +22 -0
- package/dist/services/agent/modules/llmcalls/lambdas/create-llmcall/index.mjs +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/delete-llmcall.use-case.d.ts +15 -0
- package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/delete-llmcall.use-case.js +61 -0
- package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/delete-llmcall.use-case.mjs +32 -0
- package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/index.d.ts +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/index.js +22 -0
- package/dist/services/agent/modules/llmcalls/lambdas/delete-llmcall/index.mjs +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/get-llm-usage.use-case.d.ts +21 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/get-llm-usage.use-case.js +123 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/get-llm-usage.use-case.mjs +94 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/index.d.ts +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/index.js +22 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llm-usage/index.mjs +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/get-llmcall-by-id.use-case.d.ts +14 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/get-llmcall-by-id.use-case.js +52 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/get-llmcall-by-id.use-case.mjs +23 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/index.d.ts +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/index.js +22 -0
- package/dist/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/index.mjs +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/index.d.ts +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/index.js +22 -0
- package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/index.mjs +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/list-llmcalls-by-props.use-case.d.ts +16 -0
- package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/list-llmcalls-by-props.use-case.js +52 -0
- package/dist/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/list-llmcalls-by-props.use-case.mjs +23 -0
- package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/index.d.ts +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/index.js +22 -0
- package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/index.mjs +1 -0
- package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/update-llmcall.use-case.d.ts +15 -0
- package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/update-llmcall.use-case.js +62 -0
- package/dist/services/agent/modules/llmcalls/lambdas/update-llmcall/update-llmcall.use-case.mjs +33 -0
- package/dist/services/agent/modules/llmcalls/repositories/index.d.ts +1 -0
- package/dist/services/agent/modules/llmcalls/repositories/index.js +22 -0
- package/dist/services/agent/modules/llmcalls/repositories/index.mjs +1 -0
- package/dist/services/agent/modules/llmcalls/repositories/llmcall.repository.d.ts +10 -0
- package/dist/services/agent/modules/llmcalls/repositories/llmcall.repository.js +67 -0
- package/dist/services/agent/modules/llmcalls/repositories/llmcall.repository.mjs +38 -0
- package/dist/services/agent/modules/mcp-servers/entities/index.d.ts +1 -0
- package/dist/services/agent/modules/mcp-servers/entities/index.js +22 -0
- package/dist/services/agent/modules/mcp-servers/entities/index.mjs +1 -0
- package/dist/services/agent/modules/mcp-servers/entities/mcpserver.entity.d.ts +23 -0
- package/dist/services/agent/modules/mcp-servers/entities/mcpserver.entity.js +79 -0
- package/dist/services/agent/modules/mcp-servers/entities/mcpserver.entity.mjs +56 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/create-mcpserver.use-case.d.ts +14 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/create-mcpserver.use-case.js +56 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/create-mcpserver.use-case.mjs +27 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/index.d.ts +1 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/index.js +22 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/create-mcpserver/index.mjs +1 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/delete-mcpserver.use-case.d.ts +15 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/delete-mcpserver.use-case.js +61 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/delete-mcpserver.use-case.mjs +32 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/index.d.ts +1 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/index.js +22 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/index.mjs +1 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/get-mcpserver-by-id.use-case.d.ts +14 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/get-mcpserver-by-id.use-case.js +52 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/get-mcpserver-by-id.use-case.mjs +23 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/index.d.ts +1 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/index.js +22 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/index.mjs +1 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/index.d.ts +1 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/index.js +22 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/index.mjs +1 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/list-mcpservers-by-user.use-case.d.ts +16 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/list-mcpservers-by-user.use-case.js +59 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/list-mcpservers-by-user.use-case.mjs +30 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/index.d.ts +1 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/index.js +22 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/index.mjs +1 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/update-mcpserver.use-case.d.ts +15 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/update-mcpserver.use-case.js +61 -0
- package/dist/services/agent/modules/mcp-servers/lambdas/update-mcpserver/update-mcpserver.use-case.mjs +32 -0
- package/dist/services/agent/modules/mcp-servers/repositories/index.d.ts +1 -0
- package/dist/services/agent/modules/mcp-servers/repositories/index.js +22 -0
- package/dist/services/agent/modules/mcp-servers/repositories/index.mjs +1 -0
- package/dist/services/agent/modules/mcp-servers/repositories/mcpserver.repository.d.ts +10 -0
- package/dist/services/agent/modules/mcp-servers/repositories/mcpserver.repository.js +67 -0
- package/dist/services/agent/modules/mcp-servers/repositories/mcpserver.repository.mjs +38 -0
- package/dist/services/agent/skills/index.d.ts +2 -14
- package/dist/services/agent/skills/index.js +24 -7
- package/dist/services/agent/skills/index.mjs +2 -1
- package/dist/services/agent/skills/shared/index.d.ts +1 -0
- package/dist/services/agent/skills/shared/index.js +22 -0
- package/dist/services/agent/skills/shared/index.mjs +1 -0
- package/dist/services/agent/skills/shared/shared-rules.d.ts +4 -0
- package/dist/services/agent/skills/shared/shared-rules.js +37 -0
- package/dist/services/agent/skills/shared/shared-rules.mjs +11 -0
- package/dist/services/agent/skills/skill-runner.d.ts +31 -0
- package/dist/services/agent/skills/skill-runner.js +121 -0
- package/dist/services/agent/skills/skill-runner.mjs +92 -0
- package/dist/services/agent/skills/skill.d.ts +33 -0
- package/dist/services/agent/skills/skill.js +128 -0
- package/dist/services/agent/skills/skill.mjs +105 -0
- package/dist/services/agent/tools/core/call-ai/call-ai.skill.d.ts +6 -0
- package/dist/services/agent/tools/core/call-ai/call-ai.skill.js +54 -0
- package/dist/services/agent/tools/core/call-ai/call-ai.skill.mjs +31 -0
- package/dist/services/agent/tools/core/call-ai/call-ai.tool.d.ts +2 -0
- package/dist/services/agent/tools/core/call-ai/call-ai.tool.js +68 -0
- package/dist/services/agent/tools/core/call-ai/call-ai.tool.mjs +45 -0
- package/dist/services/agent/tools/core/call-ai/index.d.ts +1 -0
- package/dist/services/agent/tools/core/call-ai/index.js +22 -0
- package/dist/services/agent/tools/core/call-ai/index.mjs +1 -0
- package/dist/services/agent/tools/core/index.d.ts +2 -0
- package/dist/services/agent/tools/core/index.js +24 -0
- package/dist/services/agent/tools/core/index.mjs +2 -0
- package/dist/services/agent/tools/core/web-search/index.d.ts +1 -0
- package/dist/services/agent/tools/core/web-search/index.js +22 -0
- package/dist/services/agent/tools/core/web-search/index.mjs +1 -0
- package/dist/services/agent/tools/core/web-search/web-search.tool.d.ts +2 -0
- package/dist/services/agent/tools/core/web-search/web-search.tool.js +51 -0
- package/dist/services/agent/tools/core/web-search/web-search.tool.mjs +30 -0
- package/dist/services/agent/tools/index.d.ts +2 -12
- package/dist/services/agent/tools/index.js +24 -7
- package/dist/services/agent/tools/index.mjs +2 -1
- package/dist/{tool-DMR_ZdjP.d.ts → services/agent/tools/tool.d.ts} +7 -9
- package/dist/services/agent/tools/tool.js +57 -0
- package/dist/services/agent/tools/tool.mjs +34 -0
- package/dist/services/agent/utils/rank-tools-by-keywords.d.ts +12 -0
- package/dist/services/agent/utils/rank-tools-by-keywords.js +65 -0
- package/dist/services/agent/utils/rank-tools-by-keywords.mjs +42 -0
- package/dist/services/app/core/app.d.ts +14 -0
- package/dist/services/app/core/app.js +60 -0
- package/dist/services/app/core/app.mjs +47 -0
- package/dist/{current-session-DC-SF7rl.d.mts → services/app/core/current-session.d.ts} +4 -5
- package/dist/services/app/core/current-session.js +124 -0
- package/dist/services/app/core/current-session.mjs +104 -0
- package/dist/services/app/core/current-user.d.ts +16 -0
- package/dist/services/app/core/current-user.js +84 -0
- package/dist/services/app/core/current-user.mjs +61 -0
- package/dist/services/app/core/index.d.ts +3 -60
- package/dist/services/app/core/index.js +26 -7
- package/dist/services/app/core/index.mjs +3 -1
- package/dist/services/app/modules/authentication/lambdas/login/index.d.ts +1 -0
- package/dist/services/app/modules/authentication/lambdas/login/index.js +22 -0
- package/dist/services/app/modules/authentication/lambdas/login/index.mjs +1 -0
- package/dist/services/app/modules/authentication/lambdas/login/login.use-case.d.ts +21 -0
- package/dist/services/app/modules/authentication/lambdas/login/login.use-case.js +89 -0
- package/dist/services/app/modules/authentication/lambdas/login/login.use-case.mjs +50 -0
- package/dist/services/app/modules/users/entities/index.d.ts +1 -0
- package/dist/services/app/modules/users/entities/index.js +22 -0
- package/dist/services/app/modules/users/entities/index.mjs +1 -0
- package/dist/services/app/modules/users/entities/user-acquisition.d.ts +12 -0
- package/dist/services/app/modules/users/entities/user-acquisition.js +55 -0
- package/dist/services/app/modules/users/entities/user-acquisition.mjs +26 -0
- package/dist/services/app/modules/users/entities/user-country.d.ts +11 -0
- package/dist/services/app/modules/users/entities/user-country.js +44 -0
- package/dist/services/app/modules/users/entities/user-country.mjs +21 -0
- package/dist/services/app/modules/users/entities/user-currency.d.ts +13 -0
- package/dist/services/app/modules/users/entities/user-currency.js +44 -0
- package/dist/services/app/modules/users/entities/user-currency.mjs +21 -0
- package/dist/services/app/modules/users/entities/user-email.value-object.d.ts +6 -0
- package/dist/services/app/modules/users/entities/user-email.value-object.js +43 -0
- package/dist/services/app/modules/users/entities/user-email.value-object.mjs +20 -0
- package/dist/services/app/modules/users/entities/user-language.d.ts +11 -0
- package/dist/services/app/modules/users/entities/user-language.js +44 -0
- package/dist/services/app/modules/users/entities/user-language.mjs +21 -0
- package/dist/services/app/modules/users/entities/user-marketing.d.ts +9 -0
- package/dist/services/app/modules/users/entities/user-marketing.js +53 -0
- package/dist/services/app/modules/users/entities/user-marketing.mjs +24 -0
- package/dist/services/app/modules/users/entities/user-notification-preferences.d.ts +11 -0
- package/dist/services/app/modules/users/entities/user-notification-preferences.js +41 -0
- package/dist/services/app/modules/users/entities/user-notification-preferences.mjs +18 -0
- package/dist/services/app/modules/users/entities/user-password.value-object.d.ts +8 -0
- package/dist/services/app/modules/users/entities/user-password.value-object.js +69 -0
- package/dist/services/app/modules/users/entities/user-password.value-object.mjs +36 -0
- package/dist/services/app/modules/users/entities/user-permissions.d.ts +21 -0
- package/dist/services/app/modules/users/entities/user-permissions.js +59 -0
- package/dist/services/app/modules/users/entities/user-permissions.mjs +36 -0
- package/dist/services/app/modules/users/entities/user-preferences.d.ts +25 -0
- package/dist/services/app/modules/users/entities/user-preferences.js +69 -0
- package/dist/services/app/modules/users/entities/user-preferences.mjs +46 -0
- package/dist/services/app/modules/users/entities/user-report-preferences.d.ts +16 -0
- package/dist/services/app/modules/users/entities/user-report-preferences.js +56 -0
- package/dist/services/app/modules/users/entities/user-report-preferences.mjs +33 -0
- package/dist/services/app/modules/users/entities/user-report-schedule.d.ts +11 -0
- package/dist/services/app/modules/users/entities/user-report-schedule.js +41 -0
- package/dist/services/app/modules/users/entities/user-report-schedule.mjs +18 -0
- package/dist/services/app/modules/users/entities/user-timezone.d.ts +11 -0
- package/dist/services/app/modules/users/entities/user-timezone.js +44 -0
- package/dist/services/app/modules/users/entities/user-timezone.mjs +21 -0
- package/dist/services/app/modules/users/entities/user.entity.d.ts +41 -0
- package/dist/services/app/modules/users/entities/user.entity.js +133 -0
- package/dist/services/app/modules/users/entities/user.entity.mjs +103 -0
- package/dist/services/app/modules/users/lambdas/create-user/create-user.use-case.d.ts +14 -0
- package/dist/services/app/modules/users/lambdas/create-user/create-user.use-case.js +58 -0
- package/dist/services/app/modules/users/lambdas/create-user/create-user.use-case.mjs +29 -0
- package/dist/services/app/modules/users/lambdas/create-user/index.d.ts +1 -0
- package/dist/services/app/modules/users/lambdas/create-user/index.js +22 -0
- package/dist/services/app/modules/users/lambdas/create-user/index.mjs +1 -0
- package/dist/services/app/modules/users/lambdas/delete-user/delete-user.use-case.d.ts +16 -0
- package/dist/services/app/modules/users/lambdas/delete-user/delete-user.use-case.js +61 -0
- package/dist/services/app/modules/users/lambdas/delete-user/delete-user.use-case.mjs +32 -0
- package/dist/services/app/modules/users/lambdas/delete-user/index.d.ts +1 -0
- package/dist/services/app/modules/users/lambdas/delete-user/index.js +22 -0
- package/dist/services/app/modules/users/lambdas/delete-user/index.mjs +1 -0
- package/dist/services/app/modules/users/lambdas/get-user-by-id/get-user-by-id.use-case.d.ts +14 -0
- package/dist/services/app/modules/users/lambdas/get-user-by-id/get-user-by-id.use-case.js +52 -0
- package/dist/services/app/modules/users/lambdas/get-user-by-id/get-user-by-id.use-case.mjs +23 -0
- package/dist/services/app/modules/users/lambdas/get-user-by-id/index.d.ts +1 -0
- package/dist/services/app/modules/users/lambdas/get-user-by-id/index.js +22 -0
- package/dist/services/app/modules/users/lambdas/get-user-by-id/index.mjs +1 -0
- package/dist/services/app/modules/users/lambdas/list-users-by-props/index.d.ts +1 -0
- package/dist/services/app/modules/users/lambdas/list-users-by-props/index.js +22 -0
- package/dist/services/app/modules/users/lambdas/list-users-by-props/index.mjs +1 -0
- package/dist/services/app/modules/users/lambdas/list-users-by-props/list-users-by-props.use-case.d.ts +16 -0
- package/dist/services/app/modules/users/lambdas/list-users-by-props/list-users-by-props.use-case.js +52 -0
- package/dist/services/app/modules/users/lambdas/list-users-by-props/list-users-by-props.use-case.mjs +23 -0
- package/dist/services/app/modules/users/lambdas/update-user/index.d.ts +1 -0
- package/dist/services/app/modules/users/lambdas/update-user/index.js +22 -0
- package/dist/services/app/modules/users/lambdas/update-user/index.mjs +1 -0
- package/dist/services/app/modules/users/lambdas/update-user/update-user.use-case.d.ts +15 -0
- package/dist/services/app/modules/users/lambdas/update-user/update-user.use-case.js +62 -0
- package/dist/services/app/modules/users/lambdas/update-user/update-user.use-case.mjs +33 -0
- package/dist/services/app/modules/users/repositories/index.d.ts +1 -0
- package/dist/services/app/modules/users/repositories/index.js +22 -0
- package/dist/services/app/modules/users/repositories/index.mjs +1 -0
- package/dist/services/app/modules/users/repositories/user.repository.d.ts +12 -0
- package/dist/services/app/modules/users/repositories/user.repository.js +83 -0
- package/dist/services/app/modules/users/repositories/user.repository.mjs +54 -0
- package/package.json +1 -1
- package/dist/agent-loop-C41Y1CGp.d.mts +0 -60
- package/dist/agent-loop-ZH4GRi4A.d.ts +0 -60
- package/dist/base.use-case-8K6_Ods0.d.mts +0 -14
- package/dist/base.use-case-ChEb3nh6.d.ts +0 -14
- package/dist/chunk-6PCVBY5G.mjs +0 -1
- package/dist/chunk-7WJ3XXSP.mjs +0 -7
- package/dist/chunk-CCRMOWMO.mjs +0 -1
- package/dist/chunk-ISOEJA2L.mjs +0 -1
- package/dist/chunk-XXB52O7H.mjs +0 -1
- package/dist/current-session-DC-SF7rl.d.ts +0 -130
- package/dist/current-user-4BppBUBP.d.mts +0 -264
- package/dist/current-user-4BppBUBP.d.ts +0 -264
- package/dist/index.d.mts +0 -10
- package/dist/services/agent/core/index.d.mts +0 -122
- package/dist/services/agent/loops/index.d.mts +0 -116
- package/dist/services/agent/skills/index.d.mts +0 -14
- package/dist/services/agent/tools/index.d.mts +0 -12
- package/dist/services/app/core/index.d.mts +0 -60
- package/dist/skill-CtYQbG6-.d.ts +0 -308
- package/dist/skill-DXNkK5FG.d.mts +0 -308
- 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 '@services/app/core';
|
|
3
|
+
import { McpServer, McpServerProps } from '@services/agent/modules/mcp-servers/entities';
|
|
4
|
+
import { Params as UsageParams, Output as UsageOutput } from '@services/agent/modules/llmcalls/lambdas/get-llm-usage';
|
|
5
|
+
import { QueryOptions } from '@common/repositories';
|
|
6
|
+
import { Chat, ChatProps } from '@services/agent/modules/chats/entities/chat.entity';
|
|
7
|
+
import { Tool } from '@services/agent/tools/tool';
|
|
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");
|
|
28
|
+
var import_create_chat = require("@services/agent/modules/chats/lambdas/create-chat/");
|
|
29
|
+
var import_update_chat = require("@services/agent/modules/chats/lambdas/update-chat/");
|
|
30
|
+
var import_list_chats_by_user = require("@services/agent/modules/chats/lambdas/list-chats-by-user");
|
|
31
|
+
var import_list_mcpservers_by_user = require("@services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user");
|
|
32
|
+
var import_entities = require("@services/agent/modules/mcp-servers/entities");
|
|
33
|
+
var import_create_mcpserver = require("@services/agent/modules/mcp-servers/lambdas/create-mcpserver");
|
|
34
|
+
var import_repositories = require("@services/agent/modules/chats/repositories");
|
|
35
|
+
var import_get_llm_usage = require("@services/agent/modules/llmcalls/lambdas/get-llm-usage");
|
|
36
|
+
var import_chat = require("@services/agent/modules/chats/entities/chat.entity");
|
|
37
|
+
var import_tool = require("@services/agent/tools/tool");
|
|
38
|
+
var import_core2 = require("@services/agent/tools/core");
|
|
39
|
+
var import_rank_tools_by_keywords = require("@services/agent/utils/rank-tools-by-keywords");
|
|
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
|
+
});
|