openloops 0.1.0
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/LICENSE +201 -0
- package/README.md +0 -0
- package/dist/src/common/clients/index.d.ts +3 -0
- package/dist/src/common/clients/index.js +20 -0
- package/dist/src/common/clients/index.js.map +1 -0
- package/dist/src/common/clients/llm-client.d.ts +30 -0
- package/dist/src/common/clients/llm-client.js +118 -0
- package/dist/src/common/clients/llm-client.js.map +1 -0
- package/dist/src/common/clients/sentry-client.d.ts +10 -0
- package/dist/src/common/clients/sentry-client.js +91 -0
- package/dist/src/common/clients/sentry-client.js.map +1 -0
- package/dist/src/common/clients/serper-client.d.ts +66 -0
- package/dist/src/common/clients/serper-client.js +46 -0
- package/dist/src/common/clients/serper-client.js.map +1 -0
- package/dist/src/common/core/base.app.d.ts +12 -0
- package/dist/src/common/core/base.app.js +35 -0
- package/dist/src/common/core/base.app.js.map +1 -0
- package/dist/src/common/core/base.entity.d.ts +55 -0
- package/dist/src/common/core/base.entity.js +210 -0
- package/dist/src/common/core/base.entity.js.map +1 -0
- package/dist/src/common/core/base.use-case.d.ts +15 -0
- package/dist/src/common/core/base.use-case.js +8 -0
- package/dist/src/common/core/base.use-case.js.map +1 -0
- package/dist/src/common/core/index.d.ts +1 -0
- package/dist/src/common/core/index.js +3 -0
- package/dist/src/common/core/index.js.map +1 -0
- package/dist/src/common/core/utils/delete-empty-fields.d.ts +1 -0
- package/dist/src/common/core/utils/delete-empty-fields.js +46 -0
- package/dist/src/common/core/utils/delete-empty-fields.js.map +1 -0
- package/dist/src/common/core/utils/flatten-object.d.ts +1 -0
- package/dist/src/common/core/utils/flatten-object.js +23 -0
- package/dist/src/common/core/utils/flatten-object.js.map +1 -0
- package/dist/src/common/core/utils/index.d.ts +3 -0
- package/dist/src/common/core/utils/index.js +20 -0
- package/dist/src/common/core/utils/index.js.map +1 -0
- package/dist/src/common/core/utils/is-plain-object.d.ts +1 -0
- package/dist/src/common/core/utils/is-plain-object.js +10 -0
- package/dist/src/common/core/utils/is-plain-object.js.map +1 -0
- package/dist/src/common/decorators/admin-only/admin-only.d.ts +2 -0
- package/dist/src/common/decorators/admin-only/admin-only.js +30 -0
- package/dist/src/common/decorators/admin-only/admin-only.js.map +1 -0
- package/dist/src/common/decorators/admin-only/index.d.ts +1 -0
- package/dist/src/common/decorators/admin-only/index.js +18 -0
- package/dist/src/common/decorators/admin-only/index.js.map +1 -0
- package/dist/src/common/decorators/index.d.ts +3 -0
- package/dist/src/common/decorators/index.js +20 -0
- package/dist/src/common/decorators/index.js.map +1 -0
- package/dist/src/common/decorators/mask-in-logs/index.d.ts +1 -0
- package/dist/src/common/decorators/mask-in-logs/index.js +18 -0
- package/dist/src/common/decorators/mask-in-logs/index.js.map +1 -0
- package/dist/src/common/decorators/mask-in-logs/mask-in-logs.d.ts +2 -0
- package/dist/src/common/decorators/mask-in-logs/mask-in-logs.js +32 -0
- package/dist/src/common/decorators/mask-in-logs/mask-in-logs.js.map +1 -0
- package/dist/src/common/decorators/owner-only/index.d.ts +1 -0
- package/dist/src/common/decorators/owner-only/index.js +18 -0
- package/dist/src/common/decorators/owner-only/index.js.map +1 -0
- package/dist/src/common/decorators/owner-only/owner-only.d.ts +2 -0
- package/dist/src/common/decorators/owner-only/owner-only.js +30 -0
- package/dist/src/common/decorators/owner-only/owner-only.js.map +1 -0
- package/dist/src/common/error/http-error.d.ts +11 -0
- package/dist/src/common/error/http-error.js +15 -0
- package/dist/src/common/error/http-error.js.map +1 -0
- package/dist/src/common/error/index.d.ts +2 -0
- package/dist/src/common/error/index.js +19 -0
- package/dist/src/common/error/index.js.map +1 -0
- package/dist/src/common/error/reportError.d.ts +2 -0
- package/dist/src/common/error/reportError.js +30 -0
- package/dist/src/common/error/reportError.js.map +1 -0
- package/dist/src/common/helpers/countries-db.d.ts +2718 -0
- package/dist/src/common/helpers/countries-db.js +2722 -0
- package/dist/src/common/helpers/countries-db.js.map +1 -0
- package/dist/src/common/helpers/currencies-db.d.ts +470 -0
- package/dist/src/common/helpers/currencies-db.js +474 -0
- package/dist/src/common/helpers/currencies-db.js.map +1 -0
- package/dist/src/common/helpers/extract-json-from-text.d.ts +1 -0
- package/dist/src/common/helpers/extract-json-from-text.js +45 -0
- package/dist/src/common/helpers/extract-json-from-text.js.map +1 -0
- package/dist/src/common/helpers/get-country-data-from-country-code.d.ts +16 -0
- package/dist/src/common/helpers/get-country-data-from-country-code.js +14 -0
- package/dist/src/common/helpers/get-country-data-from-country-code.js.map +1 -0
- package/dist/src/common/helpers/get-country-from-timezone.d.ts +1 -0
- package/dist/src/common/helpers/get-country-from-timezone.js +14 -0
- package/dist/src/common/helpers/get-country-from-timezone.js.map +1 -0
- package/dist/src/common/helpers/get-country-name-from-country-code.d.ts +1 -0
- package/dist/src/common/helpers/get-country-name-from-country-code.js +17 -0
- package/dist/src/common/helpers/get-country-name-from-country-code.js.map +1 -0
- package/dist/src/common/helpers/get-currency-data.d.ts +13 -0
- package/dist/src/common/helpers/get-currency-data.js +48 -0
- package/dist/src/common/helpers/get-currency-data.js.map +1 -0
- package/dist/src/common/helpers/get-language-from-language-code.d.ts +5 -0
- package/dist/src/common/helpers/get-language-from-language-code.js +23 -0
- package/dist/src/common/helpers/get-language-from-language-code.js.map +1 -0
- package/dist/src/common/helpers/get-timezone-offset.d.ts +1 -0
- package/dist/src/common/helpers/get-timezone-offset.js +12 -0
- package/dist/src/common/helpers/get-timezone-offset.js.map +1 -0
- package/dist/src/common/helpers/index.d.ts +8 -0
- package/dist/src/common/helpers/index.js +25 -0
- package/dist/src/common/helpers/index.js.map +1 -0
- package/dist/src/common/helpers/sanitize-string.d.ts +1 -0
- package/dist/src/common/helpers/sanitize-string.js +16 -0
- package/dist/src/common/helpers/sanitize-string.js.map +1 -0
- package/dist/src/common/logger/index.d.ts +1 -0
- package/dist/src/common/logger/index.js +18 -0
- package/dist/src/common/logger/index.js.map +1 -0
- package/dist/src/common/logger/pino.d.ts +12 -0
- package/dist/src/common/logger/pino.js +39 -0
- package/dist/src/common/logger/pino.js.map +1 -0
- package/dist/src/common/repositories/index.d.ts +2 -0
- package/dist/src/common/repositories/index.js +19 -0
- package/dist/src/common/repositories/index.js.map +1 -0
- package/dist/src/common/repositories/mongo-db.client.d.ts +11 -0
- package/dist/src/common/repositories/mongo-db.client.js +59 -0
- package/dist/src/common/repositories/mongo-db.client.js.map +1 -0
- package/dist/src/common/repositories/mongo-db.repository.d.ts +87 -0
- package/dist/src/common/repositories/mongo-db.repository.js +210 -0
- package/dist/src/common/repositories/mongo-db.repository.js.map +1 -0
- package/dist/src/common/utils/secret-manager.d.ts +15 -0
- package/dist/src/common/utils/secret-manager.js +77 -0
- package/dist/src/common/utils/secret-manager.js.map +1 -0
- package/dist/src/index.d.ts +3 -0
- package/dist/src/index.js +10 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/services/agent/core/agent-loop.d.ts +38 -0
- package/dist/src/services/agent/core/agent-loop.js +7 -0
- package/dist/src/services/agent/core/agent-loop.js.map +1 -0
- package/dist/src/services/agent/core/agent-state.d.ts +42 -0
- package/dist/src/services/agent/core/agent-state.js +72 -0
- package/dist/src/services/agent/core/agent-state.js.map +1 -0
- package/dist/src/services/agent/core/agent.d.ts +70 -0
- package/dist/src/services/agent/core/agent.js +351 -0
- package/dist/src/services/agent/core/agent.js.map +1 -0
- package/dist/src/services/agent/core/index.d.ts +3 -0
- package/dist/src/services/agent/core/index.js +20 -0
- package/dist/src/services/agent/core/index.js.map +1 -0
- package/dist/src/services/agent/loops/index.d.ts +1 -0
- package/dist/src/services/agent/loops/index.js +18 -0
- package/dist/src/services/agent/loops/index.js.map +1 -0
- package/dist/src/services/agent/loops/plan-execute/index.d.ts +1 -0
- package/dist/src/services/agent/loops/plan-execute/index.js +18 -0
- package/dist/src/services/agent/loops/plan-execute/index.js.map +1 -0
- package/dist/src/services/agent/loops/plan-execute/plan-execute-loop.d.ts +27 -0
- package/dist/src/services/agent/loops/plan-execute/plan-execute-loop.js +228 -0
- package/dist/src/services/agent/loops/plan-execute/plan-execute-loop.js.map +1 -0
- package/dist/src/services/agent/loops/shared/skills/action-planner.d.ts +35 -0
- package/dist/src/services/agent/loops/shared/skills/action-planner.js +44 -0
- package/dist/src/services/agent/loops/shared/skills/action-planner.js.map +1 -0
- package/dist/src/services/agent/loops/shared/skills/confirmation-gate.d.ts +9 -0
- package/dist/src/services/agent/loops/shared/skills/confirmation-gate.js +30 -0
- package/dist/src/services/agent/loops/shared/skills/confirmation-gate.js.map +1 -0
- package/dist/src/services/agent/loops/shared/skills/fast-responder.d.ts +9 -0
- package/dist/src/services/agent/loops/shared/skills/fast-responder.js +46 -0
- package/dist/src/services/agent/loops/shared/skills/fast-responder.js.map +1 -0
- package/dist/src/services/agent/loops/shared/skills/final-responder.d.ts +7 -0
- package/dist/src/services/agent/loops/shared/skills/final-responder.js +34 -0
- package/dist/src/services/agent/loops/shared/skills/final-responder.js.map +1 -0
- package/dist/src/services/agent/loops/shared/skills/index.d.ts +6 -0
- package/dist/src/services/agent/loops/shared/skills/index.js +23 -0
- package/dist/src/services/agent/loops/shared/skills/index.js.map +1 -0
- package/dist/src/services/agent/loops/shared/skills/state-observer.d.ts +10 -0
- package/dist/src/services/agent/loops/shared/skills/state-observer.js +34 -0
- package/dist/src/services/agent/loops/shared/skills/state-observer.js.map +1 -0
- package/dist/src/services/agent/loops/shared/skills/strategy-engine.d.ts +15 -0
- package/dist/src/services/agent/loops/shared/skills/strategy-engine.js +37 -0
- package/dist/src/services/agent/loops/shared/skills/strategy-engine.js.map +1 -0
- package/dist/src/services/agent/modules/chats/entities/agent-action.entity.d.ts +58 -0
- package/dist/src/services/agent/modules/chats/entities/agent-action.entity.js +117 -0
- package/dist/src/services/agent/modules/chats/entities/agent-action.entity.js.map +1 -0
- package/dist/src/services/agent/modules/chats/entities/agent-task.entity.d.ts +59 -0
- package/dist/src/services/agent/modules/chats/entities/agent-task.entity.js +200 -0
- package/dist/src/services/agent/modules/chats/entities/agent-task.entity.js.map +1 -0
- package/dist/src/services/agent/modules/chats/entities/chat-context.entity.d.ts +39 -0
- package/dist/src/services/agent/modules/chats/entities/chat-context.entity.js +46 -0
- package/dist/src/services/agent/modules/chats/entities/chat-context.entity.js.map +1 -0
- package/dist/src/services/agent/modules/chats/entities/chat-message.entity.d.ts +16 -0
- package/dist/src/services/agent/modules/chats/entities/chat-message.entity.js +34 -0
- package/dist/src/services/agent/modules/chats/entities/chat-message.entity.js.map +1 -0
- package/dist/src/services/agent/modules/chats/entities/chat-settings.entity.d.ts +17 -0
- package/dist/src/services/agent/modules/chats/entities/chat-settings.entity.js +36 -0
- package/dist/src/services/agent/modules/chats/entities/chat-settings.entity.js.map +1 -0
- package/dist/src/services/agent/modules/chats/entities/chat.entity.d.ts +50 -0
- package/dist/src/services/agent/modules/chats/entities/chat.entity.js +135 -0
- package/dist/src/services/agent/modules/chats/entities/chat.entity.js.map +1 -0
- package/dist/src/services/agent/modules/chats/entities/index.d.ts +1 -0
- package/dist/src/services/agent/modules/chats/entities/index.js +18 -0
- package/dist/src/services/agent/modules/chats/entities/index.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/create-chat/create-chat.use-case.d.ts +14 -0
- package/dist/src/services/agent/modules/chats/lambdas/create-chat/create-chat.use-case.js +37 -0
- package/dist/src/services/agent/modules/chats/lambdas/create-chat/create-chat.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/create-chat/index.d.ts +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/create-chat/index.js +18 -0
- package/dist/src/services/agent/modules/chats/lambdas/create-chat/index.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/delete-chat/delete-chat.use-case.d.ts +15 -0
- package/dist/src/services/agent/modules/chats/lambdas/delete-chat/delete-chat.use-case.js +44 -0
- package/dist/src/services/agent/modules/chats/lambdas/delete-chat/delete-chat.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/delete-chat/index.d.ts +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/delete-chat/index.js +18 -0
- package/dist/src/services/agent/modules/chats/lambdas/delete-chat/index.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/get-chat-by-id/get-chat-by-id.use-case.d.ts +14 -0
- package/dist/src/services/agent/modules/chats/lambdas/get-chat-by-id/get-chat-by-id.use-case.js +33 -0
- package/dist/src/services/agent/modules/chats/lambdas/get-chat-by-id/get-chat-by-id.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/get-chat-by-id/index.d.ts +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/get-chat-by-id/index.js +18 -0
- package/dist/src/services/agent/modules/chats/lambdas/get-chat-by-id/index.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/interrupt-execution/index.d.ts +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/interrupt-execution/index.js +18 -0
- package/dist/src/services/agent/modules/chats/lambdas/interrupt-execution/index.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/interrupt-execution/interrupt-execution.use-case.d.ts +14 -0
- package/dist/src/services/agent/modules/chats/lambdas/interrupt-execution/interrupt-execution.use-case.js +45 -0
- package/dist/src/services/agent/modules/chats/lambdas/interrupt-execution/interrupt-execution.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-props/index.d.ts +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-props/index.js +18 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-props/index.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-props/list-chats-by-props.use-case.d.ts +16 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-props/list-chats-by-props.use-case.js +33 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-props/list-chats-by-props.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-user/index.d.ts +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-user/index.js +18 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-user/index.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-user/list-chats-by-user.use-case.d.ts +16 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-user/list-chats-by-user.use-case.js +40 -0
- package/dist/src/services/agent/modules/chats/lambdas/list-chats-by-user/list-chats-by-user.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/update-chat/index.d.ts +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/update-chat/index.js +18 -0
- package/dist/src/services/agent/modules/chats/lambdas/update-chat/index.js.map +1 -0
- package/dist/src/services/agent/modules/chats/lambdas/update-chat/update-chat.use-case.d.ts +15 -0
- package/dist/src/services/agent/modules/chats/lambdas/update-chat/update-chat.use-case.js +45 -0
- package/dist/src/services/agent/modules/chats/lambdas/update-chat/update-chat.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/chats/repositories/chat.repository.d.ts +10 -0
- package/dist/src/services/agent/modules/chats/repositories/chat.repository.js +43 -0
- package/dist/src/services/agent/modules/chats/repositories/chat.repository.js.map +1 -0
- package/dist/src/services/agent/modules/chats/repositories/index.d.ts +1 -0
- package/dist/src/services/agent/modules/chats/repositories/index.js +18 -0
- package/dist/src/services/agent/modules/chats/repositories/index.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/entities/index.d.ts +1 -0
- package/dist/src/services/agent/modules/llmcalls/entities/index.js +18 -0
- package/dist/src/services/agent/modules/llmcalls/entities/index.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/entities/llmcall.entity.d.ts +23 -0
- package/dist/src/services/agent/modules/llmcalls/entities/llmcall.entity.js +42 -0
- package/dist/src/services/agent/modules/llmcalls/entities/llmcall.entity.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/create-llmcall/create-llmcall.use-case.d.ts +14 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/create-llmcall/create-llmcall.use-case.js +37 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/create-llmcall/create-llmcall.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/create-llmcall/index.d.ts +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/create-llmcall/index.js +18 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/create-llmcall/index.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/delete-llmcall/delete-llmcall.use-case.d.ts +15 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/delete-llmcall/delete-llmcall.use-case.js +44 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/delete-llmcall/delete-llmcall.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/delete-llmcall/index.d.ts +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/delete-llmcall/index.js +18 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/delete-llmcall/index.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llm-usage/get-llm-usage.use-case.d.ts +21 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llm-usage/get-llm-usage.use-case.js +104 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llm-usage/get-llm-usage.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llm-usage/index.d.ts +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llm-usage/index.js +18 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llm-usage/index.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/get-llmcall-by-id.use-case.d.ts +14 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/get-llmcall-by-id.use-case.js +33 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/get-llmcall-by-id.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/index.d.ts +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/index.js +18 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/get-llmcall-by-id/index.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/index.d.ts +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/index.js +18 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/index.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/list-llmcalls-by-props.use-case.d.ts +16 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/list-llmcalls-by-props.use-case.js +33 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/list-llmcalls-by-props/list-llmcalls-by-props.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/update-llmcall/index.d.ts +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/update-llmcall/index.js +18 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/update-llmcall/index.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/update-llmcall/update-llmcall.use-case.d.ts +15 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/update-llmcall/update-llmcall.use-case.js +43 -0
- package/dist/src/services/agent/modules/llmcalls/lambdas/update-llmcall/update-llmcall.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/repositories/index.d.ts +1 -0
- package/dist/src/services/agent/modules/llmcalls/repositories/index.js +18 -0
- package/dist/src/services/agent/modules/llmcalls/repositories/index.js.map +1 -0
- package/dist/src/services/agent/modules/llmcalls/repositories/llmcall.repository.d.ts +10 -0
- package/dist/src/services/agent/modules/llmcalls/repositories/llmcall.repository.js +43 -0
- package/dist/src/services/agent/modules/llmcalls/repositories/llmcall.repository.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/entities/index.d.ts +1 -0
- package/dist/src/services/agent/modules/mcp-servers/entities/index.js +18 -0
- package/dist/src/services/agent/modules/mcp-servers/entities/index.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/entities/mcpserver.entity.d.ts +23 -0
- package/dist/src/services/agent/modules/mcp-servers/entities/mcpserver.entity.js +53 -0
- package/dist/src/services/agent/modules/mcp-servers/entities/mcpserver.entity.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/create-mcpserver/create-mcpserver.use-case.d.ts +14 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/create-mcpserver/create-mcpserver.use-case.js +37 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/create-mcpserver/create-mcpserver.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/create-mcpserver/index.d.ts +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/create-mcpserver/index.js +18 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/create-mcpserver/index.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/delete-mcpserver.use-case.d.ts +15 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/delete-mcpserver.use-case.js +44 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/delete-mcpserver.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/index.d.ts +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/index.js +18 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/delete-mcpserver/index.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/get-mcpserver-by-id.use-case.d.ts +14 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/get-mcpserver-by-id.use-case.js +33 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/get-mcpserver-by-id.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/index.d.ts +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/index.js +18 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/get-mcpserver-by-id/index.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/index.d.ts +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/index.js +18 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/index.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/list-mcpservers-by-user.use-case.d.ts +16 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/list-mcpservers-by-user.use-case.js +40 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/list-mcpservers-by-user/list-mcpservers-by-user.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/update-mcpserver/index.d.ts +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/update-mcpserver/index.js +18 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/update-mcpserver/index.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/update-mcpserver/update-mcpserver.use-case.d.ts +15 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/update-mcpserver/update-mcpserver.use-case.js +42 -0
- package/dist/src/services/agent/modules/mcp-servers/lambdas/update-mcpserver/update-mcpserver.use-case.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/repositories/index.d.ts +1 -0
- package/dist/src/services/agent/modules/mcp-servers/repositories/index.js +18 -0
- package/dist/src/services/agent/modules/mcp-servers/repositories/index.js.map +1 -0
- package/dist/src/services/agent/modules/mcp-servers/repositories/mcpserver.repository.d.ts +10 -0
- package/dist/src/services/agent/modules/mcp-servers/repositories/mcpserver.repository.js +43 -0
- package/dist/src/services/agent/modules/mcp-servers/repositories/mcpserver.repository.js.map +1 -0
- package/dist/src/services/agent/skills/shared/shared-rules.d.ts +4 -0
- package/dist/src/services/agent/skills/shared/shared-rules.js +8 -0
- package/dist/src/services/agent/skills/shared/shared-rules.js.map +1 -0
- package/dist/src/services/agent/skills/skill-runner.d.ts +31 -0
- package/dist/src/services/agent/skills/skill-runner.js +105 -0
- package/dist/src/services/agent/skills/skill-runner.js.map +1 -0
- package/dist/src/services/agent/skills/skill.d.ts +33 -0
- package/dist/src/services/agent/skills/skill.js +110 -0
- package/dist/src/services/agent/skills/skill.js.map +1 -0
- package/dist/src/services/agent/tools/core/call-ai/call-ai.skill.d.ts +6 -0
- package/dist/src/services/agent/tools/core/call-ai/call-ai.skill.js +31 -0
- package/dist/src/services/agent/tools/core/call-ai/call-ai.skill.js.map +1 -0
- package/dist/src/services/agent/tools/core/call-ai/call-ai.tool.d.ts +2 -0
- package/dist/src/services/agent/tools/core/call-ai/call-ai.tool.js +47 -0
- package/dist/src/services/agent/tools/core/call-ai/call-ai.tool.js.map +1 -0
- package/dist/src/services/agent/tools/core/call-ai/index.d.ts +1 -0
- package/dist/src/services/agent/tools/core/call-ai/index.js +18 -0
- package/dist/src/services/agent/tools/core/call-ai/index.js.map +1 -0
- package/dist/src/services/agent/tools/core/index.d.ts +2 -0
- package/dist/src/services/agent/tools/core/index.js +19 -0
- package/dist/src/services/agent/tools/core/index.js.map +1 -0
- package/dist/src/services/agent/tools/core/web-search/index.d.ts +1 -0
- package/dist/src/services/agent/tools/core/web-search/index.js +18 -0
- package/dist/src/services/agent/tools/core/web-search/index.js.map +1 -0
- package/dist/src/services/agent/tools/core/web-search/web-search.tool.d.ts +2 -0
- package/dist/src/services/agent/tools/core/web-search/web-search.tool.js +29 -0
- package/dist/src/services/agent/tools/core/web-search/web-search.tool.js.map +1 -0
- package/dist/src/services/agent/tools/tool.d.ts +40 -0
- package/dist/src/services/agent/tools/tool.js +35 -0
- package/dist/src/services/agent/tools/tool.js.map +1 -0
- package/dist/src/services/agent/utils/rank-tools-by-keywords.d.ts +12 -0
- package/dist/src/services/agent/utils/rank-tools-by-keywords.js +43 -0
- package/dist/src/services/agent/utils/rank-tools-by-keywords.js.map +1 -0
- package/dist/src/services/app/core/app.d.ts +14 -0
- package/dist/src/services/app/core/app.js +38 -0
- package/dist/src/services/app/core/app.js.map +1 -0
- package/dist/src/services/app/core/current-session.d.ts +129 -0
- package/dist/src/services/app/core/current-session.js +95 -0
- package/dist/src/services/app/core/current-session.js.map +1 -0
- package/dist/src/services/app/core/current-user.d.ts +16 -0
- package/dist/src/services/app/core/current-user.js +61 -0
- package/dist/src/services/app/core/current-user.js.map +1 -0
- package/dist/src/services/app/core/index.d.ts +3 -0
- package/dist/src/services/app/core/index.js +20 -0
- package/dist/src/services/app/core/index.js.map +1 -0
- package/dist/src/services/app/modules/authentication/lambdas/login/index.d.ts +1 -0
- package/dist/src/services/app/modules/authentication/lambdas/login/index.js +18 -0
- package/dist/src/services/app/modules/authentication/lambdas/login/index.js.map +1 -0
- package/dist/src/services/app/modules/authentication/lambdas/login/login.use-case.d.ts +21 -0
- package/dist/src/services/app/modules/authentication/lambdas/login/login.use-case.js +64 -0
- package/dist/src/services/app/modules/authentication/lambdas/login/login.use-case.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/index.d.ts +1 -0
- package/dist/src/services/app/modules/users/entities/index.js +18 -0
- package/dist/src/services/app/modules/users/entities/index.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-acquisition.d.ts +12 -0
- package/dist/src/services/app/modules/users/entities/user-acquisition.js +34 -0
- package/dist/src/services/app/modules/users/entities/user-acquisition.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-country.d.ts +11 -0
- package/dist/src/services/app/modules/users/entities/user-country.js +22 -0
- package/dist/src/services/app/modules/users/entities/user-country.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-currency.d.ts +13 -0
- package/dist/src/services/app/modules/users/entities/user-currency.js +22 -0
- package/dist/src/services/app/modules/users/entities/user-currency.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-email.value-object.d.ts +6 -0
- package/dist/src/services/app/modules/users/entities/user-email.value-object.js +22 -0
- package/dist/src/services/app/modules/users/entities/user-email.value-object.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-language.d.ts +11 -0
- package/dist/src/services/app/modules/users/entities/user-language.js +22 -0
- package/dist/src/services/app/modules/users/entities/user-language.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-marketing.d.ts +9 -0
- package/dist/src/services/app/modules/users/entities/user-marketing.js +32 -0
- package/dist/src/services/app/modules/users/entities/user-marketing.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-notification-preferences.d.ts +11 -0
- package/dist/src/services/app/modules/users/entities/user-notification-preferences.js +19 -0
- package/dist/src/services/app/modules/users/entities/user-notification-preferences.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-password.value-object.d.ts +8 -0
- package/dist/src/services/app/modules/users/entities/user-password.value-object.js +28 -0
- package/dist/src/services/app/modules/users/entities/user-password.value-object.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-permissions.d.ts +21 -0
- package/dist/src/services/app/modules/users/entities/user-permissions.js +37 -0
- package/dist/src/services/app/modules/users/entities/user-permissions.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-preferences.d.ts +25 -0
- package/dist/src/services/app/modules/users/entities/user-preferences.js +40 -0
- package/dist/src/services/app/modules/users/entities/user-preferences.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-report-preferences.d.ts +16 -0
- package/dist/src/services/app/modules/users/entities/user-report-preferences.js +29 -0
- package/dist/src/services/app/modules/users/entities/user-report-preferences.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-report-schedule.d.ts +11 -0
- package/dist/src/services/app/modules/users/entities/user-report-schedule.js +19 -0
- package/dist/src/services/app/modules/users/entities/user-report-schedule.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user-timezone.d.ts +11 -0
- package/dist/src/services/app/modules/users/entities/user-timezone.js +22 -0
- package/dist/src/services/app/modules/users/entities/user-timezone.js.map +1 -0
- package/dist/src/services/app/modules/users/entities/user.entity.d.ts +41 -0
- package/dist/src/services/app/modules/users/entities/user.entity.js +100 -0
- package/dist/src/services/app/modules/users/entities/user.entity.js.map +1 -0
- package/dist/src/services/app/modules/users/lambdas/create-user/create-user.use-case.d.ts +14 -0
- package/dist/src/services/app/modules/users/lambdas/create-user/create-user.use-case.js +41 -0
- package/dist/src/services/app/modules/users/lambdas/create-user/create-user.use-case.js.map +1 -0
- package/dist/src/services/app/modules/users/lambdas/create-user/index.d.ts +1 -0
- package/dist/src/services/app/modules/users/lambdas/create-user/index.js +18 -0
- package/dist/src/services/app/modules/users/lambdas/create-user/index.js.map +1 -0
- package/dist/src/services/app/modules/users/lambdas/delete-user/delete-user.use-case.d.ts +16 -0
- package/dist/src/services/app/modules/users/lambdas/delete-user/delete-user.use-case.js +44 -0
- package/dist/src/services/app/modules/users/lambdas/delete-user/delete-user.use-case.js.map +1 -0
- package/dist/src/services/app/modules/users/lambdas/delete-user/index.d.ts +1 -0
- package/dist/src/services/app/modules/users/lambdas/delete-user/index.js +18 -0
- package/dist/src/services/app/modules/users/lambdas/delete-user/index.js.map +1 -0
- package/dist/src/services/app/modules/users/lambdas/get-user-by-id/get-user-by-id.use-case.d.ts +14 -0
- package/dist/src/services/app/modules/users/lambdas/get-user-by-id/get-user-by-id.use-case.js +33 -0
- package/dist/src/services/app/modules/users/lambdas/get-user-by-id/get-user-by-id.use-case.js.map +1 -0
- package/dist/src/services/app/modules/users/lambdas/get-user-by-id/index.d.ts +1 -0
- package/dist/src/services/app/modules/users/lambdas/get-user-by-id/index.js +18 -0
- package/dist/src/services/app/modules/users/lambdas/get-user-by-id/index.js.map +1 -0
- package/dist/src/services/app/modules/users/lambdas/list-users-by-props/index.d.ts +1 -0
- package/dist/src/services/app/modules/users/lambdas/list-users-by-props/index.js +18 -0
- package/dist/src/services/app/modules/users/lambdas/list-users-by-props/index.js.map +1 -0
- package/dist/src/services/app/modules/users/lambdas/list-users-by-props/list-users-by-props.use-case.d.ts +16 -0
- package/dist/src/services/app/modules/users/lambdas/list-users-by-props/list-users-by-props.use-case.js +33 -0
- package/dist/src/services/app/modules/users/lambdas/list-users-by-props/list-users-by-props.use-case.js.map +1 -0
- package/dist/src/services/app/modules/users/lambdas/update-user/index.d.ts +1 -0
- package/dist/src/services/app/modules/users/lambdas/update-user/index.js +18 -0
- package/dist/src/services/app/modules/users/lambdas/update-user/index.js.map +1 -0
- package/dist/src/services/app/modules/users/lambdas/update-user/update-user.use-case.d.ts +15 -0
- package/dist/src/services/app/modules/users/lambdas/update-user/update-user.use-case.js +43 -0
- package/dist/src/services/app/modules/users/lambdas/update-user/update-user.use-case.js.map +1 -0
- package/dist/src/services/app/modules/users/repositories/index.d.ts +1 -0
- package/dist/src/services/app/modules/users/repositories/index.js +18 -0
- package/dist/src/services/app/modules/users/repositories/index.js.map +1 -0
- package/dist/src/services/app/modules/users/repositories/user.repository.d.ts +12 -0
- package/dist/src/services/app/modules/users/repositories/user.repository.js +60 -0
- package/dist/src/services/app/modules/users/repositories/user.repository.js.map +1 -0
- package/package.json +71 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.strategyEngine = void 0;
|
|
4
|
+
const skill_1 = require("../../../skills/skill");
|
|
5
|
+
exports.strategyEngine = new skill_1.Skill({
|
|
6
|
+
name: 'strategy_engine',
|
|
7
|
+
version: '1.3.0',
|
|
8
|
+
description: 'Analyzes user goals, chat history, and past tasks to formulate high-level strategies, required capabilities, weighted tool discovery keywords, execution hypotheses, and Task continuity detection.',
|
|
9
|
+
temperature: 0.2,
|
|
10
|
+
systemInstructions: {
|
|
11
|
+
instruction_set: {
|
|
12
|
+
goal: "Analyze the user's intent, conversation context, and last completed task to establish a high-level execution goal, a logical hypothesis, required system capabilities, weighted keywords to match available tools, and determine whether the message continues a previous task.",
|
|
13
|
+
role: "Strategic reasoning, capability mapping, tool discovery, and task continuity engine",
|
|
14
|
+
logic_rules: [
|
|
15
|
+
"TASK_CONTINUATION_DETECTION: Set 'is_continuation' to true ONLY if 'last_completed_task' is provided in context AND the user's current message directly references, follows up on, or modifies that specific previous task. Set to false if the user introduces a completely new goal or independent topic.",
|
|
16
|
+
"GOAL_REFINEMENT: Refine and summarize the ultimate goal of the user into 'goal' strictly in English, resolving references from chat history if present.",
|
|
17
|
+
"HYPOTHESIS_FORMULATION: Formulate a clear, step-by-step strategic hypothesis in 'hypothesis' in English explaining how the goal can be achieved logically.",
|
|
18
|
+
"CAPABILITY_MAPPING: Identify and list all functional system capabilities or domain requirements needed in 'required_capabilities' in English (e.g., ['calendar_access', 'data_parsing', 'web_search']).",
|
|
19
|
+
"TOOL_KEYWORD_EXTRACTION: Extract 4 to 8 single-word terms (no multi-word patterns or underscores) in English targeting functional backend tools. Always prioritize domain nouns (e.g., 'expense', 'transaction', 'finance', 'budget', 'search', 'weather'). Include target third-party platforms or services if explicitly mentioned or strongly implied (e.g., 'slack', 'jira', 'github', 'google') with lower weight. DO NOT extract specific dynamic entities or transactional values (e.g., 'McDonalds', '10 USD'). Assign a float 'weight' from 0.1 to 1.0 (0.9-1.0 for core domain nouns and primary action verbs; 0.5-0.7 for secondary/broader domain concepts; 0.3-0.5 for third-party platforms/services; 0.1-0.3 for generic operations).",
|
|
20
|
+
"LANGUAGE_DETECTION: Detect the primary language of the user input and output its ISO 639-1 code in 'detected_language' (e.g., 'es', 'en', 'pt').",
|
|
21
|
+
"REASONING_LOG: Provide a concise, step-by-step logical justification of the proposed strategy in 'reasoning' strictly in English.",
|
|
22
|
+
"STRICT_ENGLISH_OUTPUT: ALL output fields ('goal', 'hypothesis', 'required_capabilities', 'tool_keywords' keywords, and 'reasoning') MUST strictly be written in English, regardless of the user input language.",
|
|
23
|
+
"STRICT_OUTPUT: Return ONLY the JSON object matching response_schema."
|
|
24
|
+
],
|
|
25
|
+
response_schema: {
|
|
26
|
+
goal: "string",
|
|
27
|
+
hypothesis: "string",
|
|
28
|
+
required_capabilities: "array of strings",
|
|
29
|
+
tool_keywords: "array of objects with fields 'keyword' (string) and 'weight' (number between 0.1 and 1.0)",
|
|
30
|
+
detected_language: "string",
|
|
31
|
+
reasoning: "string",
|
|
32
|
+
is_continuation: "boolean"
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=strategy-engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strategy-engine.js","sourceRoot":"","sources":["../../../../../../../src/services/agent/loops/shared/skills/strategy-engine.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAYhC,QAAA,cAAc,GAAG,IAAI,aAAK,CAAiB;IACpD,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,OAAO;IAChB,WAAW,EAAE,qMAAqM;IAClN,WAAW,EAAE,GAAG;IAChB,kBAAkB,EAAE;QAChB,eAAe,EAAE;YACb,IAAI,EAAE,iRAAiR;YACvR,IAAI,EAAE,qFAAqF;YAC3F,WAAW,EAAE;gBACT,6SAA6S;gBAC7S,yJAAyJ;gBACzJ,4JAA4J;gBAC5J,yMAAyM;gBACzM,stBAAstB;gBACttB,kJAAkJ;gBAClJ,mIAAmI;gBACnI,iNAAiN;gBACjN,sEAAsE;aACzE;YACD,eAAe,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,QAAQ;gBACpB,qBAAqB,EAAE,kBAAkB;gBACzC,aAAa,EAAE,2FAA2F;gBAC1G,iBAAiB,EAAE,QAAQ;gBAC3B,SAAS,EAAE,QAAQ;gBACnB,eAAe,EAAE,SAAS;aAC7B;SACJ;KACJ;CACJ,CAAC,CAAA"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { BaseEntity, BaseEntityProps } from '../../../../../common/core/base.entity.js';
|
|
2
|
+
import { Tool, BaseParams } from '../../../tools/tool.js';
|
|
3
|
+
export type ActionStatus = 'pending' | 'running' | 'completed' | 'failed';
|
|
4
|
+
export interface ActionErrorProps {
|
|
5
|
+
message: string;
|
|
6
|
+
[key: string]: any;
|
|
7
|
+
}
|
|
8
|
+
export interface AgentActionProps extends BaseEntityProps {
|
|
9
|
+
name?: string;
|
|
10
|
+
stepId?: string;
|
|
11
|
+
args?: Record<string, any>;
|
|
12
|
+
dependsOn?: string[];
|
|
13
|
+
status?: ActionStatus;
|
|
14
|
+
output?: any;
|
|
15
|
+
error?: ActionErrorProps;
|
|
16
|
+
reasoning?: string;
|
|
17
|
+
retries?: number;
|
|
18
|
+
author?: string;
|
|
19
|
+
startedAt?: Date;
|
|
20
|
+
completedAt?: Date;
|
|
21
|
+
}
|
|
22
|
+
export declare class AgentAction extends BaseEntity {
|
|
23
|
+
private readonly props;
|
|
24
|
+
name?: string | undefined;
|
|
25
|
+
stepId?: string | undefined;
|
|
26
|
+
args?: Record<string, any> | undefined;
|
|
27
|
+
dependsOn?: string[] | undefined;
|
|
28
|
+
status?: ActionStatus | undefined;
|
|
29
|
+
output?: any | undefined;
|
|
30
|
+
error?: ActionErrorProps | undefined;
|
|
31
|
+
reasoning?: string | undefined;
|
|
32
|
+
retries?: number | undefined;
|
|
33
|
+
author?: string | undefined;
|
|
34
|
+
startedAt?: Date | undefined;
|
|
35
|
+
completedAt?: Date | undefined;
|
|
36
|
+
static factory(action: AgentActionProps): AgentAction;
|
|
37
|
+
static fromJSON(props: AgentActionProps): AgentAction;
|
|
38
|
+
constructor(props: AgentActionProps, name?: string | undefined, stepId?: string | undefined, args?: Record<string, any> | undefined, dependsOn?: string[] | undefined, status?: ActionStatus | undefined, output?: any | undefined, error?: ActionErrorProps | undefined, reasoning?: string | undefined, retries?: number | undefined, author?: string | undefined, startedAt?: Date | undefined, completedAt?: Date | undefined);
|
|
39
|
+
toJSON(): AgentActionProps;
|
|
40
|
+
get id(): string;
|
|
41
|
+
get isReady(): boolean;
|
|
42
|
+
get isTerminal(): boolean;
|
|
43
|
+
dependenciesSatisfiedBy(completedRefs: Set<string>): boolean;
|
|
44
|
+
markRunning(): void;
|
|
45
|
+
markCompleted(output: any): void;
|
|
46
|
+
markFailed(error: ActionErrorProps): void;
|
|
47
|
+
incrementRetries(): number;
|
|
48
|
+
resetForRetry(): void;
|
|
49
|
+
runTool(tool: Tool | undefined, args: Record<string, any>, baseParams: BaseParams): Promise<this>;
|
|
50
|
+
}
|
|
51
|
+
export interface ActionDescriptor {
|
|
52
|
+
name: string;
|
|
53
|
+
stepId?: string;
|
|
54
|
+
args?: Record<string, any>;
|
|
55
|
+
dependsOn?: string[];
|
|
56
|
+
reasoning?: string;
|
|
57
|
+
author?: string;
|
|
58
|
+
}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AgentAction = void 0;
|
|
4
|
+
const mongodb_1 = require("mongodb");
|
|
5
|
+
const base_entity_1 = require("../../../../../common/core/base.entity.js");
|
|
6
|
+
class AgentAction extends base_entity_1.BaseEntity {
|
|
7
|
+
props;
|
|
8
|
+
name;
|
|
9
|
+
stepId;
|
|
10
|
+
args;
|
|
11
|
+
dependsOn;
|
|
12
|
+
status;
|
|
13
|
+
output;
|
|
14
|
+
error;
|
|
15
|
+
reasoning;
|
|
16
|
+
retries;
|
|
17
|
+
author;
|
|
18
|
+
startedAt;
|
|
19
|
+
completedAt;
|
|
20
|
+
static factory(action) {
|
|
21
|
+
const actionId = action._id && mongodb_1.ObjectId.isValid(action._id)
|
|
22
|
+
? new mongodb_1.ObjectId(action._id)
|
|
23
|
+
: new mongodb_1.ObjectId();
|
|
24
|
+
return AgentAction.fromJSON({ ...action, _id: actionId, status: action.status ?? 'pending' });
|
|
25
|
+
}
|
|
26
|
+
static fromJSON(props) {
|
|
27
|
+
return new AgentAction(props, props.name, props.stepId, props.args, props.dependsOn, props.status, props.output, props.error, props.reasoning, props.retries, props.author, props.startedAt, props.completedAt);
|
|
28
|
+
}
|
|
29
|
+
constructor(props, name, stepId, args, dependsOn, status, output, error, reasoning, retries, author, startedAt, completedAt) {
|
|
30
|
+
super(props);
|
|
31
|
+
this.props = props;
|
|
32
|
+
this.name = name;
|
|
33
|
+
this.stepId = stepId;
|
|
34
|
+
this.args = args;
|
|
35
|
+
this.dependsOn = dependsOn;
|
|
36
|
+
this.status = status;
|
|
37
|
+
this.output = output;
|
|
38
|
+
this.error = error;
|
|
39
|
+
this.reasoning = reasoning;
|
|
40
|
+
this.retries = retries;
|
|
41
|
+
this.author = author;
|
|
42
|
+
this.startedAt = startedAt;
|
|
43
|
+
this.completedAt = completedAt;
|
|
44
|
+
}
|
|
45
|
+
toJSON() {
|
|
46
|
+
return {
|
|
47
|
+
...super.toJSON(),
|
|
48
|
+
name: this.name,
|
|
49
|
+
stepId: this.stepId,
|
|
50
|
+
args: this.args,
|
|
51
|
+
dependsOn: this.dependsOn,
|
|
52
|
+
status: this.status,
|
|
53
|
+
output: this.output,
|
|
54
|
+
error: this.error,
|
|
55
|
+
reasoning: this.reasoning,
|
|
56
|
+
retries: this.retries,
|
|
57
|
+
author: this.author,
|
|
58
|
+
startedAt: this.startedAt,
|
|
59
|
+
completedAt: this.completedAt,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
get id() {
|
|
63
|
+
return this._id.toString();
|
|
64
|
+
}
|
|
65
|
+
get isReady() {
|
|
66
|
+
return this.status === 'pending';
|
|
67
|
+
}
|
|
68
|
+
get isTerminal() {
|
|
69
|
+
return this.status === 'completed' || this.status === 'failed';
|
|
70
|
+
}
|
|
71
|
+
dependenciesSatisfiedBy(completedRefs) {
|
|
72
|
+
if (!this.dependsOn?.length)
|
|
73
|
+
return true;
|
|
74
|
+
return this.dependsOn.every(ref => completedRefs.has(ref));
|
|
75
|
+
}
|
|
76
|
+
markRunning() {
|
|
77
|
+
this.status = 'running';
|
|
78
|
+
this.startedAt = new Date();
|
|
79
|
+
}
|
|
80
|
+
markCompleted(output) {
|
|
81
|
+
this.status = 'completed';
|
|
82
|
+
this.output = output;
|
|
83
|
+
this.completedAt = new Date();
|
|
84
|
+
}
|
|
85
|
+
markFailed(error) {
|
|
86
|
+
this.status = 'failed';
|
|
87
|
+
this.error = error;
|
|
88
|
+
this.completedAt = new Date();
|
|
89
|
+
}
|
|
90
|
+
incrementRetries() {
|
|
91
|
+
this.retries = (this.retries ?? 0) + 1;
|
|
92
|
+
return this.retries;
|
|
93
|
+
}
|
|
94
|
+
resetForRetry() {
|
|
95
|
+
this.status = 'pending';
|
|
96
|
+
this.error = undefined;
|
|
97
|
+
this.startedAt = undefined;
|
|
98
|
+
this.completedAt = undefined;
|
|
99
|
+
}
|
|
100
|
+
async runTool(tool, args, baseParams) {
|
|
101
|
+
if (!tool) {
|
|
102
|
+
this.markFailed({ message: `Tool "${this.name}" not found` });
|
|
103
|
+
return this;
|
|
104
|
+
}
|
|
105
|
+
this.markRunning();
|
|
106
|
+
try {
|
|
107
|
+
const result = await tool.run({ ...args, ...baseParams });
|
|
108
|
+
this.markCompleted(result?.data);
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
this.markFailed({ message: error?.message ?? String(error) });
|
|
112
|
+
}
|
|
113
|
+
return this;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
exports.AgentAction = AgentAction;
|
|
117
|
+
//# sourceMappingURL=agent-action.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-action.entity.js","sourceRoot":"","sources":["../../../../../../../src/services/agent/modules/chats/entities/agent-action.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { BaseEntity, BaseEntityProps } from '../../../../../common/core/base.entity.js';
|
|
2
|
+
import { AgentAction, AgentActionProps, ActionDescriptor } from './agent-action.entity';
|
|
3
|
+
import { ChatContext } from './chat-context.entity';
|
|
4
|
+
import { Tool, BaseParams } from '../../../tools/tool.js';
|
|
5
|
+
export declare enum TaskStatus {
|
|
6
|
+
PENDING = "pending",
|
|
7
|
+
IN_PROGRESS = "in_progress",
|
|
8
|
+
AWAITING_USER = "awaiting_user",
|
|
9
|
+
COMPLETED = "completed",
|
|
10
|
+
PAUSED = "paused",
|
|
11
|
+
ABANDONED = "abandoned",
|
|
12
|
+
CANCELLED = "cancelled",
|
|
13
|
+
FAILED = "failed"
|
|
14
|
+
}
|
|
15
|
+
export interface AgentTaskProps extends BaseEntityProps {
|
|
16
|
+
status?: TaskStatus;
|
|
17
|
+
goal?: string;
|
|
18
|
+
nextNode?: string;
|
|
19
|
+
threadId?: string;
|
|
20
|
+
previousTaskId?: string;
|
|
21
|
+
summary?: string;
|
|
22
|
+
loopName?: string;
|
|
23
|
+
actions?: AgentActionProps[];
|
|
24
|
+
}
|
|
25
|
+
export declare class AgentTask extends BaseEntity {
|
|
26
|
+
private readonly props;
|
|
27
|
+
status?: TaskStatus | undefined;
|
|
28
|
+
goal?: string | undefined;
|
|
29
|
+
nextNode?: string | undefined;
|
|
30
|
+
threadId?: string | undefined;
|
|
31
|
+
previousTaskId?: string | undefined;
|
|
32
|
+
summary?: string | undefined;
|
|
33
|
+
loopName?: string | undefined;
|
|
34
|
+
actions: AgentAction[];
|
|
35
|
+
static factory(task: AgentTaskProps): AgentTask;
|
|
36
|
+
static fromJSON(props: AgentTaskProps): AgentTask;
|
|
37
|
+
constructor(props: AgentTaskProps, status?: TaskStatus | undefined, goal?: string | undefined, nextNode?: string | undefined, threadId?: string | undefined, previousTaskId?: string | undefined, summary?: string | undefined, loopName?: string | undefined, actions?: AgentAction[]);
|
|
38
|
+
toJSON(): AgentTaskProps;
|
|
39
|
+
get id(): string;
|
|
40
|
+
addAction(descriptor: ActionDescriptor): AgentAction;
|
|
41
|
+
getAction(ref: string): AgentAction | undefined;
|
|
42
|
+
findLastByName(name: string): AgentAction | undefined;
|
|
43
|
+
get readyActions(): AgentAction[];
|
|
44
|
+
get failedActions(): AgentAction[];
|
|
45
|
+
get lastExecutedAction(): AgentAction | undefined;
|
|
46
|
+
setNextNode(node?: string): void;
|
|
47
|
+
complete(summary?: string): void;
|
|
48
|
+
fail(): void;
|
|
49
|
+
cancel(): void;
|
|
50
|
+
pause(): void;
|
|
51
|
+
reopen(): void;
|
|
52
|
+
resolveArgs(action: AgentAction, context: ChatContext): any;
|
|
53
|
+
private resolveValue;
|
|
54
|
+
private findActionByRef;
|
|
55
|
+
private readContextValue;
|
|
56
|
+
runTool(descriptor: ActionDescriptor, tool: Tool | undefined, context: ChatContext, baseParams: BaseParams): Promise<AgentAction>;
|
|
57
|
+
runReadyAction(actionRef: string, tool: Tool | undefined, context: ChatContext, baseParams: BaseParams): Promise<AgentAction>;
|
|
58
|
+
private executeToolAction;
|
|
59
|
+
}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AgentTask = exports.TaskStatus = void 0;
|
|
4
|
+
const mongodb_1 = require("mongodb");
|
|
5
|
+
const base_entity_1 = require("../../../../../common/core/base.entity.js");
|
|
6
|
+
const agent_action_entity_1 = require("./agent-action.entity");
|
|
7
|
+
var TaskStatus;
|
|
8
|
+
(function (TaskStatus) {
|
|
9
|
+
TaskStatus["PENDING"] = "pending";
|
|
10
|
+
TaskStatus["IN_PROGRESS"] = "in_progress";
|
|
11
|
+
TaskStatus["AWAITING_USER"] = "awaiting_user";
|
|
12
|
+
TaskStatus["COMPLETED"] = "completed";
|
|
13
|
+
TaskStatus["PAUSED"] = "paused";
|
|
14
|
+
TaskStatus["ABANDONED"] = "abandoned";
|
|
15
|
+
TaskStatus["CANCELLED"] = "cancelled";
|
|
16
|
+
TaskStatus["FAILED"] = "failed";
|
|
17
|
+
})(TaskStatus || (exports.TaskStatus = TaskStatus = {}));
|
|
18
|
+
const STEP_REF = /^\{\{step_([\w-]+)\.output\}\}$/;
|
|
19
|
+
const STEP_REF_GLOBAL = /\{\{step_([\w-]+)\.output\}\}/g;
|
|
20
|
+
const CONTEXT_REF = /^\{\{context\.([\w.-]+)\}\}$/;
|
|
21
|
+
const CONTEXT_REF_GLOBAL = /\{\{context\.([\w.-]+)\}\}/g;
|
|
22
|
+
function stringifyValue(value) {
|
|
23
|
+
return typeof value === 'object' ? JSON.stringify(value) : String(value);
|
|
24
|
+
}
|
|
25
|
+
class AgentTask extends base_entity_1.BaseEntity {
|
|
26
|
+
props;
|
|
27
|
+
status;
|
|
28
|
+
goal;
|
|
29
|
+
nextNode;
|
|
30
|
+
threadId;
|
|
31
|
+
previousTaskId;
|
|
32
|
+
summary;
|
|
33
|
+
loopName;
|
|
34
|
+
actions;
|
|
35
|
+
static factory(task) {
|
|
36
|
+
const taskId = task._id && mongodb_1.ObjectId.isValid(task._id)
|
|
37
|
+
? new mongodb_1.ObjectId(task._id)
|
|
38
|
+
: new mongodb_1.ObjectId();
|
|
39
|
+
return AgentTask.fromJSON({
|
|
40
|
+
...task,
|
|
41
|
+
_id: taskId,
|
|
42
|
+
status: task.status ?? TaskStatus.IN_PROGRESS,
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
static fromJSON(props) {
|
|
46
|
+
return new AgentTask(props, props.status, props.goal, props.nextNode, props.threadId, props.previousTaskId, props.summary, props.loopName, props.actions?.map(a => agent_action_entity_1.AgentAction.factory(a)) ?? []);
|
|
47
|
+
}
|
|
48
|
+
constructor(props, status, goal, nextNode, threadId, previousTaskId, summary, loopName, actions = []) {
|
|
49
|
+
super(props);
|
|
50
|
+
this.props = props;
|
|
51
|
+
this.status = status;
|
|
52
|
+
this.goal = goal;
|
|
53
|
+
this.nextNode = nextNode;
|
|
54
|
+
this.threadId = threadId;
|
|
55
|
+
this.previousTaskId = previousTaskId;
|
|
56
|
+
this.summary = summary;
|
|
57
|
+
this.loopName = loopName;
|
|
58
|
+
this.actions = actions;
|
|
59
|
+
}
|
|
60
|
+
toJSON() {
|
|
61
|
+
return {
|
|
62
|
+
...super.toJSON(),
|
|
63
|
+
status: this.status,
|
|
64
|
+
goal: this.goal,
|
|
65
|
+
nextNode: this.nextNode,
|
|
66
|
+
threadId: this.threadId,
|
|
67
|
+
previousTaskId: this.previousTaskId,
|
|
68
|
+
summary: this.summary,
|
|
69
|
+
loopName: this.loopName,
|
|
70
|
+
actions: this.actions.map(a => a.toJSON()),
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
get id() {
|
|
74
|
+
return this._id.toString();
|
|
75
|
+
}
|
|
76
|
+
addAction(descriptor) {
|
|
77
|
+
const action = agent_action_entity_1.AgentAction.factory({
|
|
78
|
+
name: descriptor.name,
|
|
79
|
+
stepId: descriptor.stepId,
|
|
80
|
+
args: descriptor.args,
|
|
81
|
+
dependsOn: descriptor.dependsOn,
|
|
82
|
+
reasoning: descriptor.reasoning,
|
|
83
|
+
author: descriptor.author,
|
|
84
|
+
});
|
|
85
|
+
this.actions.push(action);
|
|
86
|
+
return action;
|
|
87
|
+
}
|
|
88
|
+
getAction(ref) {
|
|
89
|
+
return this.actions.find(a => a.id === ref || a.stepId === ref);
|
|
90
|
+
}
|
|
91
|
+
findLastByName(name) {
|
|
92
|
+
return this.actions.slice().reverse().find(a => a.name === name);
|
|
93
|
+
}
|
|
94
|
+
get readyActions() {
|
|
95
|
+
const completedRefs = new Set(this.actions
|
|
96
|
+
.filter(a => a.status === 'completed')
|
|
97
|
+
.flatMap(a => [a.id, a.stepId].filter(Boolean)));
|
|
98
|
+
return this.actions.filter(a => a.isReady && a.dependenciesSatisfiedBy(completedRefs));
|
|
99
|
+
}
|
|
100
|
+
get failedActions() {
|
|
101
|
+
return this.actions.filter(a => a.status === 'failed');
|
|
102
|
+
}
|
|
103
|
+
get lastExecutedAction() {
|
|
104
|
+
return this.actions.slice().reverse().find(a => a.isTerminal);
|
|
105
|
+
}
|
|
106
|
+
setNextNode(node) {
|
|
107
|
+
this.nextNode = node;
|
|
108
|
+
}
|
|
109
|
+
complete(summary) {
|
|
110
|
+
this.status = TaskStatus.COMPLETED;
|
|
111
|
+
if (summary)
|
|
112
|
+
this.summary = summary;
|
|
113
|
+
this.nextNode = undefined;
|
|
114
|
+
}
|
|
115
|
+
fail() {
|
|
116
|
+
this.status = TaskStatus.FAILED;
|
|
117
|
+
this.nextNode = undefined;
|
|
118
|
+
}
|
|
119
|
+
cancel() {
|
|
120
|
+
this.status = TaskStatus.CANCELLED;
|
|
121
|
+
this.nextNode = undefined;
|
|
122
|
+
}
|
|
123
|
+
pause() {
|
|
124
|
+
if (this.status === TaskStatus.IN_PROGRESS || this.status === TaskStatus.AWAITING_USER) {
|
|
125
|
+
this.status = TaskStatus.PAUSED;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
reopen() {
|
|
129
|
+
this.status = TaskStatus.IN_PROGRESS;
|
|
130
|
+
this.nextNode = undefined;
|
|
131
|
+
}
|
|
132
|
+
resolveArgs(action, context) {
|
|
133
|
+
return this.resolveValue(action.args, context);
|
|
134
|
+
}
|
|
135
|
+
resolveValue(value, context) {
|
|
136
|
+
if (typeof value === 'string') {
|
|
137
|
+
const stepMatch = value.match(STEP_REF);
|
|
138
|
+
if (stepMatch) {
|
|
139
|
+
const target = this.findActionByRef(stepMatch[1]);
|
|
140
|
+
return target?.output !== undefined ? target.output : value;
|
|
141
|
+
}
|
|
142
|
+
const contextMatch = value.match(CONTEXT_REF);
|
|
143
|
+
if (contextMatch) {
|
|
144
|
+
const resolved = this.readContextValue(contextMatch[1], context);
|
|
145
|
+
return resolved !== undefined ? resolved : value;
|
|
146
|
+
}
|
|
147
|
+
return value
|
|
148
|
+
.replace(STEP_REF_GLOBAL, (_, ref) => {
|
|
149
|
+
const target = this.findActionByRef(ref);
|
|
150
|
+
return target?.output !== undefined ? stringifyValue(target.output) : '';
|
|
151
|
+
})
|
|
152
|
+
.replace(CONTEXT_REF_GLOBAL, (_, name) => {
|
|
153
|
+
const resolved = this.readContextValue(name, context);
|
|
154
|
+
return resolved !== undefined ? stringifyValue(resolved) : '';
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
if (Array.isArray(value)) {
|
|
158
|
+
return value.map(item => this.resolveValue(item, context));
|
|
159
|
+
}
|
|
160
|
+
if (value !== null && typeof value === 'object') {
|
|
161
|
+
const resolved = {};
|
|
162
|
+
for (const key of Object.keys(value)) {
|
|
163
|
+
resolved[key] = this.resolveValue(value[key], context);
|
|
164
|
+
}
|
|
165
|
+
return resolved;
|
|
166
|
+
}
|
|
167
|
+
return value;
|
|
168
|
+
}
|
|
169
|
+
findActionByRef(ref) {
|
|
170
|
+
return this.actions.find(a => a.stepId === ref || a.id === ref);
|
|
171
|
+
}
|
|
172
|
+
readContextValue(name, context) {
|
|
173
|
+
const matches = context.selectContext({ taskId: this.id, name });
|
|
174
|
+
return matches?.[0]?.content;
|
|
175
|
+
}
|
|
176
|
+
async runTool(descriptor, tool, context, baseParams) {
|
|
177
|
+
const action = this.addAction(descriptor);
|
|
178
|
+
return this.executeToolAction(action, tool, context, baseParams);
|
|
179
|
+
}
|
|
180
|
+
async runReadyAction(actionRef, tool, context, baseParams) {
|
|
181
|
+
const action = this.getAction(actionRef);
|
|
182
|
+
if (!action)
|
|
183
|
+
throw new Error(`[AgentTask] Action "${actionRef}" not found`);
|
|
184
|
+
return this.executeToolAction(action, tool, context, baseParams);
|
|
185
|
+
}
|
|
186
|
+
async executeToolAction(action, tool, context, baseParams) {
|
|
187
|
+
const resolvedArgs = this.resolveArgs(action, context);
|
|
188
|
+
const executed = await action.runTool(tool, resolvedArgs, baseParams);
|
|
189
|
+
if (executed.status === 'completed' && executed.name) {
|
|
190
|
+
context.addContext({
|
|
191
|
+
taskId: this.id,
|
|
192
|
+
meta: { name: executed.name, type: 'tool_output', shortDescription: `Output of ${executed.name}` },
|
|
193
|
+
content: executed.output,
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
return executed;
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
exports.AgentTask = AgentTask;
|
|
200
|
+
//# sourceMappingURL=agent-task.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-task.entity.js","sourceRoot":"","sources":["../../../../../../../src/services/agent/modules/chats/entities/agent-task.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
type ContextRecordType = 'message' | 'file' | 'entity' | 'tool_output' | 'artifact' | 'summary';
|
|
2
|
+
export interface ContextRecord {
|
|
3
|
+
taskId: string;
|
|
4
|
+
meta: {
|
|
5
|
+
name: string;
|
|
6
|
+
type: ContextRecordType;
|
|
7
|
+
shortDescription: string;
|
|
8
|
+
};
|
|
9
|
+
content: any;
|
|
10
|
+
}
|
|
11
|
+
export interface ChatContextProps {
|
|
12
|
+
items?: ContextRecord[];
|
|
13
|
+
}
|
|
14
|
+
export declare class ChatContext {
|
|
15
|
+
private readonly props;
|
|
16
|
+
items?: ContextRecord[] | undefined;
|
|
17
|
+
private readonly MEMORY_CONTEXT_MAX_CHARS;
|
|
18
|
+
static fromJSON(props: ChatContextProps): ChatContext;
|
|
19
|
+
constructor(props: ChatContextProps, items?: ContextRecord[] | undefined);
|
|
20
|
+
get length(): number;
|
|
21
|
+
get allMeta(): {
|
|
22
|
+
name: string;
|
|
23
|
+
type: ContextRecordType;
|
|
24
|
+
shortDescription: string;
|
|
25
|
+
}[] | undefined;
|
|
26
|
+
toJSON(): ChatContextProps;
|
|
27
|
+
addContext(contextRecord: any): void;
|
|
28
|
+
selectContext(filters: {
|
|
29
|
+
taskId: string;
|
|
30
|
+
name: string;
|
|
31
|
+
}): ContextRecord[] | undefined;
|
|
32
|
+
lastContext(filters: {
|
|
33
|
+
taskId: string;
|
|
34
|
+
name: string;
|
|
35
|
+
}): ContextRecord | undefined;
|
|
36
|
+
compress(): void;
|
|
37
|
+
pruneContext(): void;
|
|
38
|
+
}
|
|
39
|
+
export {};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ChatContext = void 0;
|
|
4
|
+
class ChatContext {
|
|
5
|
+
props;
|
|
6
|
+
items;
|
|
7
|
+
MEMORY_CONTEXT_MAX_CHARS = 10_000;
|
|
8
|
+
static fromJSON(props) {
|
|
9
|
+
return new ChatContext(props, props.items);
|
|
10
|
+
}
|
|
11
|
+
constructor(props, items) {
|
|
12
|
+
this.props = props;
|
|
13
|
+
this.items = items;
|
|
14
|
+
}
|
|
15
|
+
get length() {
|
|
16
|
+
return this.items ? JSON.stringify(this.items).length : 0;
|
|
17
|
+
}
|
|
18
|
+
get allMeta() {
|
|
19
|
+
return this.items?.map(item => item.meta);
|
|
20
|
+
}
|
|
21
|
+
toJSON() {
|
|
22
|
+
return {
|
|
23
|
+
items: this.items,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
addContext(contextRecord) {
|
|
27
|
+
this.items ??= [];
|
|
28
|
+
this.items.push(contextRecord);
|
|
29
|
+
}
|
|
30
|
+
selectContext(filters) {
|
|
31
|
+
return this.items?.filter(item => {
|
|
32
|
+
return (filters.taskId === undefined || item.taskId === filters.taskId) &&
|
|
33
|
+
(filters.name === undefined || item.meta.name === filters.name);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
lastContext(filters) {
|
|
37
|
+
const matches = this.selectContext(filters);
|
|
38
|
+
return matches?.[matches.length - 1];
|
|
39
|
+
}
|
|
40
|
+
compress() {
|
|
41
|
+
}
|
|
42
|
+
pruneContext() {
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.ChatContext = ChatContext;
|
|
46
|
+
//# sourceMappingURL=chat-context.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-context.entity.js","sourceRoot":"","sources":["../../../../../../../src/services/agent/modules/chats/entities/chat-context.entity.ts"],"names":[],"mappings":";;;AAgBA,MAAa,WAAW;IAWL;IACV;IAXS,wBAAwB,GAAG,MAAM,CAAA;IAElD,MAAM,CAAC,QAAQ,CAAE,KAAuB;QACvC,OAAO,IAAI,WAAW,CACrB,KAAK,EACL,KAAK,CAAC,KAAK,CACX,CAAA;IACF,CAAC;IAED,YACkB,KAAuB,EACjC,KAAuB;QADb,UAAK,GAAL,KAAK,CAAkB;QACjC,UAAK,GAAL,KAAK,CAAkB;IAC5B,CAAC;IAEJ,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1D,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM;QACL,OAAO;YACN,KAAK,EAAE,IAAI,CAAC,KAAK;SACjB,CAAA;IACF,CAAC;IAED,UAAU,CAAE,aAAa;QACxB,IAAI,CAAC,KAAK,KAAK,EAAE,CAAA;QACjB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IAC/B,CAAC;IAED,aAAa,CAAE,OAAyC;QACvD,OAAO,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;YAChC,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC;gBACvE,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;QAChE,CAAC,CAAC,CAAA;IACH,CAAC;IAED,WAAW,CAAE,OAAyC;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QAC3C,OAAO,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACrC,CAAC;IAED,QAAQ;IAER,CAAC;IAED,YAAY;IAEZ,CAAC;CACD;AArDD,kCAqDC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseEntity, BaseEntityProps } from '../../../../../common/core/base.entity.js';
|
|
2
|
+
type Roles = 'user' | 'assistant';
|
|
3
|
+
export interface ChatMessageProps extends BaseEntityProps {
|
|
4
|
+
role?: Roles;
|
|
5
|
+
content?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class ChatMessage extends BaseEntity {
|
|
8
|
+
private readonly props;
|
|
9
|
+
role?: Roles | undefined;
|
|
10
|
+
content?: string | undefined;
|
|
11
|
+
static factory(message: ChatMessageProps): ChatMessage;
|
|
12
|
+
static fromJSON(props: ChatMessageProps): ChatMessage;
|
|
13
|
+
constructor(props: ChatMessageProps, role?: Roles | undefined, content?: string | undefined);
|
|
14
|
+
toJSON(): ChatMessageProps;
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ChatMessage = void 0;
|
|
4
|
+
const mongodb_1 = require("mongodb");
|
|
5
|
+
const base_entity_1 = require("../../../../../common/core/base.entity.js");
|
|
6
|
+
class ChatMessage extends base_entity_1.BaseEntity {
|
|
7
|
+
props;
|
|
8
|
+
role;
|
|
9
|
+
content;
|
|
10
|
+
static factory(message) {
|
|
11
|
+
const messageId = message._id && mongodb_1.ObjectId.isValid(message._id)
|
|
12
|
+
? new mongodb_1.ObjectId(message._id)
|
|
13
|
+
: new mongodb_1.ObjectId();
|
|
14
|
+
return ChatMessage.fromJSON({ ...message, _id: messageId });
|
|
15
|
+
}
|
|
16
|
+
static fromJSON(props) {
|
|
17
|
+
return new ChatMessage(props, props.role, props.content);
|
|
18
|
+
}
|
|
19
|
+
constructor(props, role, content) {
|
|
20
|
+
super(props);
|
|
21
|
+
this.props = props;
|
|
22
|
+
this.role = role;
|
|
23
|
+
this.content = content;
|
|
24
|
+
}
|
|
25
|
+
toJSON() {
|
|
26
|
+
return {
|
|
27
|
+
...super.toJSON(),
|
|
28
|
+
role: this.role,
|
|
29
|
+
content: this.content,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.ChatMessage = ChatMessage;
|
|
34
|
+
//# sourceMappingURL=chat-message.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-message.entity.js","sourceRoot":"","sources":["../../../../../../../src/services/agent/modules/chats/entities/chat-message.entity.ts"],"names":[],"mappings":";;;AAAA,qCAAkC;AAClC,0DAAsE;AAStE,MAAa,WAAY,SAAQ,wBAAU;IAkBxB;IACV;IACA;IAnBR,MAAM,CAAC,OAAO,CAAE,OAAyB;QACxC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,IAAI,kBAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;YAC7D,CAAC,CAAC,IAAI,kBAAQ,CAAC,OAAO,CAAC,GAAG,CAAC;YAC3B,CAAC,CAAC,IAAI,kBAAQ,EAAE,CAAA;QAEjB,OAAO,WAAW,CAAC,QAAQ,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAA;IAC5D,CAAC;IAED,MAAM,CAAC,QAAQ,CAAE,KAAuB;QACvC,OAAO,IAAI,WAAW,CACrB,KAAK,EACL,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,OAAO,CACb,CAAA;IACF,CAAC;IAED,YACkB,KAAuB,EACjC,IAAY,EACZ,OAAgB;QAEvB,KAAK,CAAC,KAAK,CAAC,CAAA;QAJK,UAAK,GAAL,KAAK,CAAkB;QACjC,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAAS;IAGxB,CAAC;IAED,MAAM;QACL,OAAO;YACN,GAAG,KAAK,CAAC,MAAM,EAAE;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;SACrB,CAAA;IACF,CAAC;CACD;AAhCD,kCAgCC"}
|