@dexto/core 1.2.4 → 1.2.6
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/README.md +60 -0
- package/dist/agent/DextoAgent.cjs +579 -345
- package/dist/agent/DextoAgent.d.ts +131 -83
- package/dist/agent/DextoAgent.d.ts.map +1 -1
- package/dist/agent/DextoAgent.js +573 -336
- package/dist/agent/agentCard.cjs +4 -2
- package/dist/agent/agentCard.d.ts +0 -1
- package/dist/agent/agentCard.d.ts.map +1 -1
- package/dist/agent/agentCard.js +4 -2
- package/dist/agent/index.cjs +3 -7
- package/dist/agent/index.d.ts +3 -3
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/index.js +7 -6
- package/dist/agent/schemas.cjs +179 -75
- package/dist/agent/schemas.d.ts +2678 -586
- package/dist/agent/schemas.d.ts.map +1 -1
- package/dist/agent/schemas.js +172 -65
- package/dist/agent/state-manager.cjs +28 -23
- package/dist/agent/state-manager.d.ts +4 -1
- package/dist/agent/state-manager.d.ts.map +1 -1
- package/dist/agent/state-manager.js +28 -23
- package/dist/{preferences/constants.cjs → agent/types.cjs} +2 -14
- package/dist/agent/types.d.ts +54 -0
- package/dist/agent/types.d.ts.map +1 -0
- package/dist/agent/types.js +0 -0
- package/dist/approval/errors.cjs +89 -8
- package/dist/approval/errors.d.ts +5 -3
- package/dist/approval/errors.d.ts.map +1 -1
- package/dist/approval/errors.js +89 -8
- package/dist/approval/{providers/factory.d.ts → factory.d.ts} +2 -2
- package/dist/approval/factory.d.ts.map +1 -0
- package/dist/approval/{providers/factory.js → factory.js} +1 -1
- package/dist/approval/index.cjs +4 -6
- package/dist/approval/index.d.ts +3 -5
- package/dist/approval/index.d.ts.map +1 -1
- package/dist/approval/index.js +4 -5
- package/dist/approval/manager.cjs +140 -37
- package/dist/approval/manager.d.ts +56 -17
- package/dist/approval/manager.d.ts.map +1 -1
- package/dist/approval/manager.js +141 -38
- package/dist/approval/schemas.cjs +9 -1
- package/dist/approval/schemas.d.ts +120 -35
- package/dist/approval/schemas.d.ts.map +1 -1
- package/dist/approval/schemas.js +9 -2
- package/dist/approval/types.cjs +14 -2
- package/dist/approval/types.d.ts +64 -12
- package/dist/approval/types.d.ts.map +1 -1
- package/dist/approval/types.js +12 -1
- package/dist/context/compression/middle-removal.cjs +11 -11
- package/dist/context/compression/middle-removal.d.ts +3 -1
- package/dist/context/compression/middle-removal.d.ts.map +1 -1
- package/dist/context/compression/middle-removal.js +11 -11
- package/dist/context/compression/oldest-removal.cjs +18 -5
- package/dist/context/compression/oldest-removal.d.ts +3 -1
- package/dist/context/compression/oldest-removal.d.ts.map +1 -1
- package/dist/context/compression/oldest-removal.js +18 -5
- package/dist/context/manager.cjs +94 -67
- package/dist/context/manager.d.ts +13 -10
- package/dist/context/manager.d.ts.map +1 -1
- package/dist/context/manager.js +94 -67
- package/dist/context/utils.cjs +79 -65
- package/dist/context/utils.d.ts +15 -12
- package/dist/context/utils.d.ts.map +1 -1
- package/dist/context/utils.js +45 -31
- package/dist/errors/DextoRuntimeError.d.ts +5 -5
- package/dist/errors/DextoRuntimeError.d.ts.map +1 -1
- package/dist/errors/result-bridge.cjs +2 -3
- package/dist/errors/result-bridge.d.ts +5 -3
- package/dist/errors/result-bridge.d.ts.map +1 -1
- package/dist/errors/result-bridge.js +1 -2
- package/dist/errors/types.cjs +1 -2
- package/dist/errors/types.d.ts +5 -8
- package/dist/errors/types.d.ts.map +1 -1
- package/dist/errors/types.js +1 -2
- package/dist/events/index.cjs +125 -55
- package/dist/events/index.d.ts +204 -97
- package/dist/events/index.d.ts.map +1 -1
- package/dist/events/index.js +123 -55
- package/dist/filesystem/filesystem-service.cjs +40 -30
- package/dist/filesystem/filesystem-service.d.ts +9 -1
- package/dist/filesystem/filesystem-service.d.ts.map +1 -1
- package/dist/filesystem/filesystem-service.js +40 -30
- package/dist/filesystem/path-validator.cjs +4 -3
- package/dist/filesystem/path-validator.d.ts +3 -1
- package/dist/filesystem/path-validator.d.ts.map +1 -1
- package/dist/filesystem/path-validator.js +4 -3
- package/dist/filesystem/types.d.ts +3 -3
- package/dist/filesystem/types.d.ts.map +1 -1
- package/dist/index.browser.cjs +7 -0
- package/dist/index.browser.d.ts +2 -0
- package/dist/index.browser.d.ts.map +1 -1
- package/dist/index.browser.js +4 -0
- package/dist/index.cjs +0 -7
- package/dist/index.d.ts +12 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -4
- package/dist/llm/formatters/anthropic.cjs +32 -21
- package/dist/llm/formatters/anthropic.d.ts +3 -0
- package/dist/llm/formatters/anthropic.d.ts.map +1 -1
- package/dist/llm/formatters/anthropic.js +32 -21
- package/dist/llm/formatters/factory.cjs +6 -7
- package/dist/llm/formatters/factory.d.ts +2 -1
- package/dist/llm/formatters/factory.d.ts.map +1 -1
- package/dist/llm/formatters/factory.js +4 -5
- package/dist/llm/formatters/openai.cjs +38 -9
- package/dist/llm/formatters/openai.d.ts +3 -0
- package/dist/llm/formatters/openai.d.ts.map +1 -1
- package/dist/llm/formatters/openai.js +38 -9
- package/dist/llm/formatters/vercel.cjs +49 -8
- package/dist/llm/formatters/vercel.d.ts +3 -0
- package/dist/llm/formatters/vercel.d.ts.map +1 -1
- package/dist/llm/formatters/vercel.js +49 -8
- package/dist/llm/registry.cjs +153 -17
- package/dist/llm/registry.d.ts +5 -2
- package/dist/llm/registry.d.ts.map +1 -1
- package/dist/llm/registry.js +143 -7
- package/dist/llm/resolver.cjs +4 -4
- package/dist/llm/resolver.d.ts +3 -2
- package/dist/llm/resolver.d.ts.map +1 -1
- package/dist/llm/resolver.js +4 -4
- package/dist/llm/schemas.cjs +6 -3
- package/dist/llm/schemas.d.ts +51 -17
- package/dist/llm/schemas.d.ts.map +1 -1
- package/dist/llm/schemas.js +5 -3
- package/dist/llm/services/anthropic.cjs +216 -183
- package/dist/llm/services/anthropic.d.ts +3 -1
- package/dist/llm/services/anthropic.d.ts.map +1 -1
- package/dist/llm/services/anthropic.js +217 -184
- package/dist/llm/services/factory.cjs +15 -9
- package/dist/llm/services/factory.d.ts +2 -1
- package/dist/llm/services/factory.d.ts.map +1 -1
- package/dist/llm/services/factory.js +15 -9
- package/dist/llm/services/openai.cjs +262 -225
- package/dist/llm/services/openai.d.ts +3 -1
- package/dist/llm/services/openai.d.ts.map +1 -1
- package/dist/llm/services/openai.js +263 -226
- package/dist/llm/services/test-utils.integration.cjs +58 -12
- package/dist/llm/services/test-utils.integration.d.ts.map +1 -1
- package/dist/llm/services/test-utils.integration.js +58 -12
- package/dist/llm/services/types.d.ts +9 -0
- package/dist/llm/services/types.d.ts.map +1 -1
- package/dist/llm/services/vercel.cjs +163 -111
- package/dist/llm/services/vercel.d.ts +3 -1
- package/dist/llm/services/vercel.d.ts.map +1 -1
- package/dist/llm/services/vercel.js +157 -105
- package/dist/llm/tokenizer/factory.cjs +2 -2
- package/dist/llm/tokenizer/factory.d.ts +3 -1
- package/dist/llm/tokenizer/factory.d.ts.map +1 -1
- package/dist/llm/tokenizer/factory.js +2 -2
- package/dist/llm/tokenizer/openai.cjs +16 -9
- package/dist/llm/tokenizer/openai.d.ts +4 -1
- package/dist/llm/tokenizer/openai.d.ts.map +1 -1
- package/dist/llm/tokenizer/openai.js +16 -9
- package/dist/llm/validation.cjs +8 -9
- package/dist/llm/validation.d.ts +3 -1
- package/dist/llm/validation.d.ts.map +1 -1
- package/dist/llm/validation.js +5 -6
- package/dist/logger/factory.cjs +54 -0
- package/dist/logger/factory.d.ts +36 -0
- package/dist/logger/factory.d.ts.map +1 -0
- package/dist/logger/factory.js +31 -0
- package/dist/logger/index.cjs +42 -3
- package/dist/logger/index.d.ts +17 -1
- package/dist/logger/index.d.ts.map +1 -1
- package/dist/logger/index.js +26 -1
- package/dist/logger/logger.cjs +30 -17
- package/dist/logger/logger.d.ts.map +1 -1
- package/dist/logger/logger.js +30 -17
- package/dist/logger/v2/dexto-logger.cjs +141 -0
- package/dist/logger/v2/dexto-logger.d.ts +54 -0
- package/dist/logger/v2/dexto-logger.d.ts.map +1 -0
- package/dist/logger/v2/dexto-logger.js +118 -0
- package/dist/{preferences → logger/v2}/error-codes.cjs +11 -10
- package/dist/logger/v2/error-codes.d.ts +13 -0
- package/dist/logger/v2/error-codes.d.ts.map +1 -0
- package/dist/logger/v2/error-codes.js +13 -0
- package/dist/logger/v2/errors.cjs +107 -0
- package/dist/logger/v2/errors.d.ts +32 -0
- package/dist/logger/v2/errors.d.ts.map +1 -0
- package/dist/logger/v2/errors.js +84 -0
- package/dist/logger/v2/schemas.cjs +57 -0
- package/dist/logger/v2/schemas.d.ts +147 -0
- package/dist/logger/v2/schemas.d.ts.map +1 -0
- package/dist/logger/v2/schemas.js +33 -0
- package/dist/logger/v2/transport-factory.cjs +53 -0
- package/dist/logger/v2/transport-factory.d.ts +21 -0
- package/dist/logger/v2/transport-factory.d.ts.map +1 -0
- package/dist/logger/v2/transport-factory.js +29 -0
- package/dist/logger/v2/transports/console-transport.cjs +79 -0
- package/dist/logger/v2/transports/console-transport.d.ts +23 -0
- package/dist/logger/v2/transports/console-transport.d.ts.map +1 -0
- package/dist/logger/v2/transports/console-transport.js +46 -0
- package/dist/logger/v2/transports/file-transport.cjs +161 -0
- package/dist/logger/v2/transports/file-transport.d.ts +46 -0
- package/dist/logger/v2/transports/file-transport.d.ts.map +1 -0
- package/dist/logger/v2/transports/file-transport.js +128 -0
- package/dist/logger/v2/types.cjs +49 -0
- package/dist/logger/v2/types.d.ts +123 -0
- package/dist/logger/v2/types.d.ts.map +1 -0
- package/dist/logger/v2/types.js +26 -0
- package/dist/mcp/manager.cjs +88 -78
- package/dist/mcp/manager.d.ts +3 -1
- package/dist/mcp/manager.d.ts.map +1 -1
- package/dist/mcp/manager.js +88 -78
- package/dist/mcp/mcp-client.cjs +109 -79
- package/dist/mcp/mcp-client.d.ts +3 -0
- package/dist/mcp/mcp-client.d.ts.map +1 -1
- package/dist/mcp/mcp-client.js +102 -72
- package/dist/memory/index.cjs +2 -0
- package/dist/memory/index.d.ts +1 -1
- package/dist/memory/index.d.ts.map +1 -1
- package/dist/memory/index.js +3 -1
- package/dist/memory/manager.cjs +9 -7
- package/dist/memory/manager.d.ts +3 -1
- package/dist/memory/manager.d.ts.map +1 -1
- package/dist/memory/manager.js +9 -7
- package/dist/memory/schemas.cjs +10 -0
- package/dist/memory/schemas.d.ts +37 -8
- package/dist/memory/schemas.d.ts.map +1 -1
- package/dist/memory/schemas.js +9 -0
- package/dist/plugins/manager.cjs +21 -19
- package/dist/plugins/manager.d.ts +3 -1
- package/dist/plugins/manager.d.ts.map +1 -1
- package/dist/plugins/manager.js +21 -19
- package/dist/plugins/schemas.d.ts +9 -9
- package/dist/plugins/types.d.ts +2 -2
- package/dist/plugins/types.d.ts.map +1 -1
- package/dist/process/command-validator.cjs +30 -20
- package/dist/process/command-validator.d.ts +4 -1
- package/dist/process/command-validator.d.ts.map +1 -1
- package/dist/process/command-validator.js +30 -20
- package/dist/process/process-service.cjs +23 -21
- package/dist/process/process-service.d.ts +3 -1
- package/dist/process/process-service.d.ts.map +1 -1
- package/dist/process/process-service.js +23 -21
- package/dist/prompts/index.cjs +6 -8
- package/dist/prompts/index.d.ts +2 -4
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +4 -6
- package/dist/prompts/prompt-manager.cjs +25 -20
- package/dist/prompts/prompt-manager.d.ts +3 -1
- package/dist/prompts/prompt-manager.d.ts.map +1 -1
- package/dist/prompts/prompt-manager.js +25 -20
- package/dist/prompts/providers/config-prompt-provider.cjs +331 -0
- package/dist/prompts/providers/config-prompt-provider.d.ts +34 -0
- package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -0
- package/dist/prompts/providers/config-prompt-provider.js +308 -0
- package/dist/prompts/providers/custom-prompt-provider.cjs +11 -7
- package/dist/prompts/providers/custom-prompt-provider.d.ts +3 -1
- package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
- package/dist/prompts/providers/custom-prompt-provider.js +11 -7
- package/dist/prompts/providers/mcp-prompt-provider.cjs +7 -6
- package/dist/prompts/providers/mcp-prompt-provider.d.ts +3 -1
- package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
- package/dist/prompts/providers/mcp-prompt-provider.js +7 -6
- package/dist/prompts/schemas.cjs +42 -23
- package/dist/prompts/schemas.d.ts +123 -14
- package/dist/prompts/schemas.d.ts.map +1 -1
- package/dist/prompts/schemas.js +39 -22
- package/dist/prompts/types.d.ts +1 -1
- package/dist/prompts/types.d.ts.map +1 -1
- package/dist/resources/handlers/blob-handler.cjs +15 -11
- package/dist/resources/handlers/blob-handler.d.ts +3 -1
- package/dist/resources/handlers/blob-handler.d.ts.map +1 -1
- package/dist/resources/handlers/blob-handler.js +15 -11
- package/dist/resources/handlers/factory.cjs +3 -3
- package/dist/resources/handlers/factory.d.ts +2 -1
- package/dist/resources/handlers/factory.d.ts.map +1 -1
- package/dist/resources/handlers/factory.js +3 -3
- package/dist/resources/handlers/filesystem-handler.cjs +10 -8
- package/dist/resources/handlers/filesystem-handler.d.ts +3 -1
- package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
- package/dist/resources/handlers/filesystem-handler.js +10 -8
- package/dist/resources/internal-provider.cjs +28 -20
- package/dist/resources/internal-provider.d.ts +3 -1
- package/dist/resources/internal-provider.d.ts.map +1 -1
- package/dist/resources/internal-provider.js +28 -20
- package/dist/resources/manager.cjs +34 -25
- package/dist/resources/manager.d.ts +3 -1
- package/dist/resources/manager.d.ts.map +1 -1
- package/dist/resources/manager.js +34 -25
- package/dist/resources/schemas.d.ts +6 -6
- package/dist/search/search-service.cjs +8 -6
- package/dist/search/search-service.d.ts +3 -1
- package/dist/search/search-service.d.ts.map +1 -1
- package/dist/search/search-service.js +8 -6
- package/dist/session/chat-session.cjs +40 -27
- package/dist/session/chat-session.d.ts +10 -7
- package/dist/session/chat-session.d.ts.map +1 -1
- package/dist/session/chat-session.js +40 -27
- package/dist/session/history/database.cjs +18 -11
- package/dist/session/history/database.d.ts +3 -1
- package/dist/session/history/database.d.ts.map +1 -1
- package/dist/session/history/database.js +18 -11
- package/dist/session/history/factory.cjs +2 -2
- package/dist/session/history/factory.d.ts +5 -1
- package/dist/session/history/factory.d.ts.map +1 -1
- package/dist/session/history/factory.js +2 -2
- package/dist/session/session-manager.cjs +37 -53
- package/dist/session/session-manager.d.ts +3 -17
- package/dist/session/session-manager.d.ts.map +1 -1
- package/dist/session/session-manager.js +37 -53
- package/dist/session/title-generator.cjs +3 -2
- package/dist/session/title-generator.d.ts +2 -1
- package/dist/session/title-generator.d.ts.map +1 -1
- package/dist/session/title-generator.js +3 -2
- package/dist/storage/blob/factory.cjs +9 -18
- package/dist/storage/blob/factory.d.ts +5 -4
- package/dist/storage/blob/factory.d.ts.map +1 -1
- package/dist/storage/blob/factory.js +8 -17
- package/dist/storage/blob/local-blob-store.cjs +25 -32
- package/dist/storage/blob/local-blob-store.d.ts +3 -2
- package/dist/storage/blob/local-blob-store.d.ts.map +1 -1
- package/dist/storage/blob/local-blob-store.js +25 -32
- package/dist/storage/blob/memory-blob-store.cjs +326 -0
- package/dist/storage/blob/memory-blob-store.d.ts +66 -0
- package/dist/storage/blob/memory-blob-store.d.ts.map +1 -0
- package/dist/storage/blob/memory-blob-store.js +303 -0
- package/dist/storage/blob/schemas.cjs +3 -1
- package/dist/storage/blob/schemas.d.ts +6 -6
- package/dist/storage/blob/schemas.d.ts.map +1 -1
- package/dist/storage/blob/schemas.js +3 -1
- package/dist/storage/cache/factory.cjs +7 -8
- package/dist/storage/cache/factory.d.ts +4 -1
- package/dist/storage/cache/factory.d.ts.map +1 -1
- package/dist/storage/cache/factory.js +4 -5
- package/dist/storage/cache/redis-store.cjs +4 -1
- package/dist/storage/cache/redis-store.d.ts +3 -1
- package/dist/storage/cache/redis-store.d.ts.map +1 -1
- package/dist/storage/cache/redis-store.js +4 -1
- package/dist/storage/database/factory.cjs +13 -16
- package/dist/storage/database/factory.d.ts +5 -3
- package/dist/storage/database/factory.d.ts.map +1 -1
- package/dist/storage/database/factory.js +9 -12
- package/dist/storage/database/postgres-store.cjs +4 -1
- package/dist/storage/database/postgres-store.d.ts +3 -1
- package/dist/storage/database/postgres-store.d.ts.map +1 -1
- package/dist/storage/database/postgres-store.js +4 -1
- package/dist/storage/database/schemas.cjs +3 -4
- package/dist/storage/database/schemas.d.ts +8 -16
- package/dist/storage/database/schemas.d.ts.map +1 -1
- package/dist/storage/database/schemas.js +3 -4
- package/dist/storage/database/sqlite-store.cjs +17 -45
- package/dist/storage/database/sqlite-store.d.ts +3 -3
- package/dist/storage/database/sqlite-store.d.ts.map +1 -1
- package/dist/storage/database/sqlite-store.js +17 -45
- package/dist/storage/schemas.cjs +3 -1
- package/dist/storage/schemas.d.ts +16 -23
- package/dist/storage/schemas.d.ts.map +1 -1
- package/dist/storage/schemas.js +3 -1
- package/dist/storage/storage-manager.cjs +15 -15
- package/dist/storage/storage-manager.d.ts +6 -6
- package/dist/storage/storage-manager.d.ts.map +1 -1
- package/dist/storage/storage-manager.js +15 -15
- package/dist/systemPrompt/contributors.cjs +15 -15
- package/dist/systemPrompt/contributors.d.ts +5 -3
- package/dist/systemPrompt/contributors.d.ts.map +1 -1
- package/dist/systemPrompt/contributors.js +15 -15
- package/dist/systemPrompt/in-built-prompts.cjs +0 -5
- package/dist/systemPrompt/in-built-prompts.d.ts +1 -2
- package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -1
- package/dist/systemPrompt/in-built-prompts.js +0 -4
- package/dist/systemPrompt/manager.cjs +31 -23
- package/dist/systemPrompt/manager.d.ts +5 -3
- package/dist/systemPrompt/manager.d.ts.map +1 -1
- package/dist/systemPrompt/manager.js +31 -23
- package/dist/systemPrompt/registry.cjs +1 -2
- package/dist/systemPrompt/registry.d.ts +1 -1
- package/dist/systemPrompt/registry.d.ts.map +1 -1
- package/dist/systemPrompt/registry.js +1 -2
- package/dist/systemPrompt/schemas.cjs +24 -18
- package/dist/systemPrompt/schemas.d.ts +46 -222
- package/dist/systemPrompt/schemas.d.ts.map +1 -1
- package/dist/systemPrompt/schemas.js +14 -18
- package/dist/telemetry/decorators.cjs +54 -15
- package/dist/telemetry/decorators.d.ts.map +1 -1
- package/dist/telemetry/decorators.js +54 -15
- package/dist/telemetry/utils.cjs +21 -14
- package/dist/telemetry/utils.d.ts +7 -3
- package/dist/telemetry/utils.d.ts.map +1 -1
- package/dist/telemetry/utils.js +21 -14
- package/dist/tools/confirmation/allowed-tools-provider/factory.cjs +2 -2
- package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +2 -1
- package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +1 -1
- package/dist/tools/confirmation/allowed-tools-provider/factory.js +2 -2
- package/dist/tools/confirmation/allowed-tools-provider/storage.cjs +7 -6
- package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +3 -1
- package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +1 -1
- package/dist/tools/confirmation/allowed-tools-provider/storage.js +7 -6
- package/dist/tools/errors.cjs +2 -1
- package/dist/tools/errors.d.ts.map +1 -1
- package/dist/tools/errors.js +2 -1
- package/dist/tools/internal-tools/constants.cjs +2 -1
- package/dist/tools/internal-tools/constants.d.ts +1 -1
- package/dist/tools/internal-tools/constants.d.ts.map +1 -1
- package/dist/tools/internal-tools/constants.js +2 -1
- package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +1 -1
- package/dist/tools/internal-tools/implementations/bash-exec-tool.js +1 -1
- package/dist/tools/internal-tools/implementations/delegate-to-url-tool.cjs +192 -0
- package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts +33 -0
- package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts.map +1 -0
- package/dist/tools/internal-tools/implementations/delegate-to-url-tool.js +169 -0
- package/dist/tools/internal-tools/provider.cjs +21 -17
- package/dist/tools/internal-tools/provider.d.ts +3 -1
- package/dist/tools/internal-tools/provider.d.ts.map +1 -1
- package/dist/tools/internal-tools/provider.js +21 -17
- package/dist/tools/internal-tools/registry.cjs +5 -0
- package/dist/tools/internal-tools/registry.d.ts.map +1 -1
- package/dist/tools/internal-tools/registry.js +5 -0
- package/dist/tools/schemas.cjs +16 -4
- package/dist/tools/schemas.d.ts +21 -9
- package/dist/tools/schemas.d.ts.map +1 -1
- package/dist/tools/schemas.js +15 -4
- package/dist/tools/tool-manager.cjs +64 -47
- package/dist/tools/tool-manager.d.ts +4 -2
- package/dist/tools/tool-manager.d.ts.map +1 -1
- package/dist/tools/tool-manager.js +61 -44
- package/dist/tools/types.d.ts +0 -4
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/utils/env-file.cjs +118 -0
- package/dist/utils/env-file.d.ts +5 -0
- package/dist/utils/env-file.d.ts.map +1 -0
- package/dist/utils/env-file.js +85 -0
- package/dist/utils/error-conversion.cjs +23 -1
- package/dist/utils/error-conversion.d.ts +2 -1
- package/dist/utils/error-conversion.d.ts.map +1 -1
- package/dist/utils/error-conversion.js +23 -1
- package/dist/utils/execution-context.d.ts.map +1 -1
- package/dist/utils/fs-walk.d.ts.map +1 -1
- package/dist/utils/index.cjs +7 -9
- package/dist/utils/index.d.ts +3 -4
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +3 -4
- package/dist/utils/path.cjs +22 -57
- package/dist/utils/path.d.ts +8 -7
- package/dist/utils/path.d.ts.map +1 -1
- package/dist/utils/path.js +21 -54
- package/dist/utils/result.cjs +37 -14
- package/dist/utils/result.d.ts.map +1 -1
- package/dist/utils/result.js +37 -14
- package/dist/utils/schema.cjs +2 -3
- package/dist/utils/schema.d.ts +2 -1
- package/dist/utils/schema.d.ts.map +1 -1
- package/dist/utils/schema.js +1 -2
- package/dist/utils/service-initializer.cjs +88 -61
- package/dist/utils/service-initializer.d.ts +4 -2
- package/dist/utils/service-initializer.d.ts.map +1 -1
- package/dist/utils/service-initializer.js +70 -43
- package/package.json +7 -3
- package/dist/Dexto.cjs +0 -251
- package/dist/Dexto.d.ts +0 -191
- package/dist/Dexto.d.ts.map +0 -1
- package/dist/Dexto.js +0 -228
- package/dist/agent/registry/error-codes.cjs +0 -44
- package/dist/agent/registry/error-codes.d.ts +0 -21
- package/dist/agent/registry/error-codes.d.ts.map +0 -1
- package/dist/agent/registry/error-codes.js +0 -21
- package/dist/agent/registry/errors.cjs +0 -188
- package/dist/agent/registry/errors.d.ts +0 -63
- package/dist/agent/registry/errors.d.ts.map +0 -1
- package/dist/agent/registry/errors.js +0 -165
- package/dist/agent/registry/registry.cjs +0 -479
- package/dist/agent/registry/registry.d.ts +0 -130
- package/dist/agent/registry/registry.d.ts.map +0 -1
- package/dist/agent/registry/registry.js +0 -453
- package/dist/agent/registry/types.cjs +0 -74
- package/dist/agent/registry/types.d.ts +0 -142
- package/dist/agent/registry/types.d.ts.map +0 -1
- package/dist/agent/registry/types.js +0 -48
- package/dist/agent/registry/user-registry.cjs +0 -140
- package/dist/agent/registry/user-registry.d.ts +0 -34
- package/dist/agent/registry/user-registry.d.ts.map +0 -1
- package/dist/agent/registry/user-registry.js +0 -105
- package/dist/approval/providers/event-based-approval-provider.cjs +0 -156
- package/dist/approval/providers/event-based-approval-provider.d.ts +0 -39
- package/dist/approval/providers/event-based-approval-provider.d.ts.map +0 -1
- package/dist/approval/providers/event-based-approval-provider.js +0 -133
- package/dist/approval/providers/factory.d.ts.map +0 -1
- package/dist/approval/providers/noop-approval-provider.cjs +0 -54
- package/dist/approval/providers/noop-approval-provider.d.ts +0 -18
- package/dist/approval/providers/noop-approval-provider.d.ts.map +0 -1
- package/dist/approval/providers/noop-approval-provider.js +0 -31
- package/dist/config/agent-resolver.cjs +0 -153
- package/dist/config/agent-resolver.d.ts +0 -14
- package/dist/config/agent-resolver.d.ts.map +0 -1
- package/dist/config/agent-resolver.js +0 -123
- package/dist/config/error-codes.cjs +0 -39
- package/dist/config/error-codes.d.ts +0 -16
- package/dist/config/error-codes.d.ts.map +0 -1
- package/dist/config/error-codes.js +0 -16
- package/dist/config/errors.cjs +0 -126
- package/dist/config/errors.d.ts +0 -34
- package/dist/config/errors.d.ts.map +0 -1
- package/dist/config/errors.js +0 -103
- package/dist/config/index.cjs +0 -26
- package/dist/config/index.d.ts +0 -4
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js +0 -3
- package/dist/config/loader.cjs +0 -119
- package/dist/config/loader.d.ts +0 -16
- package/dist/config/loader.d.ts.map +0 -1
- package/dist/config/loader.js +0 -86
- package/dist/config/writer.cjs +0 -182
- package/dist/config/writer.d.ts +0 -35
- package/dist/config/writer.d.ts.map +0 -1
- package/dist/config/writer.js +0 -147
- package/dist/preferences/constants.d.ts +0 -2
- package/dist/preferences/constants.d.ts.map +0 -1
- package/dist/preferences/constants.js +0 -5
- package/dist/preferences/error-codes.d.ts +0 -8
- package/dist/preferences/error-codes.d.ts.map +0 -1
- package/dist/preferences/error-codes.js +0 -12
- package/dist/preferences/errors.cjs +0 -75
- package/dist/preferences/errors.d.ts +0 -18
- package/dist/preferences/errors.d.ts.map +0 -1
- package/dist/preferences/errors.js +0 -51
- package/dist/preferences/index.cjs +0 -55
- package/dist/preferences/index.d.ts +0 -6
- package/dist/preferences/index.d.ts.map +0 -1
- package/dist/preferences/index.js +0 -32
- package/dist/preferences/loader.cjs +0 -138
- package/dist/preferences/loader.d.ts +0 -51
- package/dist/preferences/loader.d.ts.map +0 -1
- package/dist/preferences/loader.js +0 -110
- package/dist/preferences/schemas.cjs +0 -75
- package/dist/preferences/schemas.d.ts +0 -110
- package/dist/preferences/schemas.d.ts.map +0 -1
- package/dist/preferences/schemas.js +0 -49
- package/dist/prompts/providers/file-prompt-provider.cjs +0 -399
- package/dist/prompts/providers/file-prompt-provider.d.ts +0 -47
- package/dist/prompts/providers/file-prompt-provider.d.ts.map +0 -1
- package/dist/prompts/providers/file-prompt-provider.js +0 -376
- package/dist/prompts/providers/starter-prompt-provider.cjs +0 -170
- package/dist/prompts/providers/starter-prompt-provider.d.ts +0 -45
- package/dist/prompts/providers/starter-prompt-provider.d.ts.map +0 -1
- package/dist/prompts/providers/starter-prompt-provider.js +0 -147
- package/dist/utils/api-key-store.cjs +0 -56
- package/dist/utils/api-key-store.d.ts +0 -24
- package/dist/utils/api-key-store.d.ts.map +0 -1
- package/dist/utils/api-key-store.js +0 -31
- package/dist/utils/env.cjs +0 -154
- package/dist/utils/env.d.ts +0 -28
- package/dist/utils/env.d.ts.map +0 -1
- package/dist/utils/env.js +0 -119
- package/dist/utils/port-utils.cjs +0 -37
- package/dist/utils/port-utils.d.ts +0 -10
- package/dist/utils/port-utils.d.ts.map +0 -1
- package/dist/utils/port-utils.js +0 -14
- package/dist/utils/port-utils.spec.cjs +0 -26
- package/dist/utils/port-utils.spec.js +0 -25
- /package/dist/approval/{providers/factory.cjs → factory.cjs} +0 -0
package/dist/mcp/mcp-client.js
CHANGED
|
@@ -5,15 +5,17 @@ import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js";
|
|
|
5
5
|
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
|
|
6
6
|
import { EventEmitter } from "events";
|
|
7
7
|
import { z } from "zod";
|
|
8
|
-
import {
|
|
8
|
+
import { DextoLogComponent } from "../logger/v2/types.js";
|
|
9
9
|
import { ApprovalStatus } from "../approval/types.js";
|
|
10
|
-
import { resolveBundledScript } from "../utils/path.js";
|
|
11
10
|
import { MCPError } from "./errors.js";
|
|
12
11
|
import {
|
|
13
12
|
ResourceUpdatedNotificationSchema,
|
|
14
13
|
PromptListChangedNotificationSchema,
|
|
15
14
|
ToolListChangedNotificationSchema
|
|
16
15
|
} from "@modelcontextprotocol/sdk/types.js";
|
|
16
|
+
import { trace, context, SpanStatusCode, SpanKind } from "@opentelemetry/api";
|
|
17
|
+
import { hasActiveTelemetry, addBaggageAttributesToSpan } from "../telemetry/utils.js";
|
|
18
|
+
import { safeStringify } from "../utils/safe-stringify.js";
|
|
17
19
|
class MCPClient extends EventEmitter {
|
|
18
20
|
client = null;
|
|
19
21
|
transport = null;
|
|
@@ -29,6 +31,11 @@ class MCPClient extends EventEmitter {
|
|
|
29
31
|
// Default timeout value
|
|
30
32
|
approvalManager = null;
|
|
31
33
|
// Will be set by MCPManager
|
|
34
|
+
logger;
|
|
35
|
+
constructor(logger) {
|
|
36
|
+
super();
|
|
37
|
+
this.logger = logger.createChild(DextoLogComponent.MCP);
|
|
38
|
+
}
|
|
32
39
|
async connect(config, serverName) {
|
|
33
40
|
this.timeout = config.timeout ?? 3e4;
|
|
34
41
|
if (config.type === "stdio") {
|
|
@@ -62,30 +69,17 @@ class MCPClient extends EventEmitter {
|
|
|
62
69
|
this.resolvedArgs = [...this.originalArgs];
|
|
63
70
|
this.serverEnv = env || null;
|
|
64
71
|
this.serverAlias = serverAlias || null;
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
const scriptRelativePath = this.resolvedArgs[0];
|
|
68
|
-
this.resolvedArgs[0] = resolveBundledScript(scriptRelativePath);
|
|
69
|
-
logger.debug(
|
|
70
|
-
`Resolved bundled script path: ${scriptRelativePath} -> ${this.resolvedArgs[0]}`
|
|
71
|
-
);
|
|
72
|
-
} catch (e) {
|
|
73
|
-
logger.warn(
|
|
74
|
-
`Failed to resolve path for bundled script ${this.resolvedArgs[0]}: ${JSON.stringify(e, null, 2)}`
|
|
75
|
-
);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
logger.info("=======================================");
|
|
79
|
-
logger.info(`MCP SERVER: ${command} ${this.resolvedArgs.join(" ")}`, null, "magenta");
|
|
72
|
+
this.logger.info("=======================================");
|
|
73
|
+
this.logger.info(`MCP SERVER: ${command} ${this.resolvedArgs.join(" ")}`);
|
|
80
74
|
if (env) {
|
|
81
|
-
logger.info("Environment:");
|
|
75
|
+
this.logger.info("Environment:");
|
|
82
76
|
Object.entries(env).forEach(([key, _]) => {
|
|
83
|
-
logger.info(` ${key}= [value hidden]`);
|
|
77
|
+
this.logger.info(` ${key}= [value hidden]`);
|
|
84
78
|
});
|
|
85
79
|
}
|
|
86
|
-
logger.info("=======================================\n");
|
|
80
|
+
this.logger.info("=======================================\n");
|
|
87
81
|
const serverName = this.serverAlias ? `"${this.serverAlias}" (${command} ${this.resolvedArgs.join(" ")})` : `${command} ${this.resolvedArgs.join(" ")}`;
|
|
88
|
-
logger.info(`Connecting to MCP server: ${serverName}`);
|
|
82
|
+
this.logger.info(`Connecting to MCP server: ${serverName}`);
|
|
89
83
|
const expandedEnv = {
|
|
90
84
|
...process.env,
|
|
91
85
|
...env || {}
|
|
@@ -109,24 +103,24 @@ class MCPClient extends EventEmitter {
|
|
|
109
103
|
}
|
|
110
104
|
);
|
|
111
105
|
try {
|
|
112
|
-
logger.info("Establishing connection...");
|
|
106
|
+
this.logger.info("Establishing connection...");
|
|
113
107
|
await this.client.connect(this.transport);
|
|
114
108
|
this.serverSpawned = true;
|
|
115
|
-
logger.info(`\u2705 Stdio SERVER ${serverName} SPAWNED`);
|
|
116
|
-
logger.info("Connection established!\n\n");
|
|
109
|
+
this.logger.info(`\u2705 Stdio SERVER ${serverName} SPAWNED`);
|
|
110
|
+
this.logger.info("Connection established!\n\n");
|
|
117
111
|
this.isConnected = true;
|
|
118
112
|
this.setupNotificationHandlers();
|
|
119
113
|
this.setupElicitationHandler();
|
|
120
114
|
return this.client;
|
|
121
115
|
} catch (error) {
|
|
122
|
-
logger.error(
|
|
116
|
+
this.logger.error(
|
|
123
117
|
`Failed to connect to MCP server ${serverName}: ${JSON.stringify(error.message, null, 2)}`
|
|
124
118
|
);
|
|
125
119
|
throw error;
|
|
126
120
|
}
|
|
127
121
|
}
|
|
128
122
|
async connectViaSSE(url, headers = {}, serverName) {
|
|
129
|
-
logger.debug(`Connecting to SSE MCP server at url: ${url}`);
|
|
123
|
+
this.logger.debug(`Connecting to SSE MCP server at url: ${url}`);
|
|
130
124
|
this.transport = new SSEClientTransport(new URL(url), {
|
|
131
125
|
// For regular HTTP requests
|
|
132
126
|
requestInit: {
|
|
@@ -134,7 +128,7 @@ class MCPClient extends EventEmitter {
|
|
|
134
128
|
}
|
|
135
129
|
// Need to implement eventSourceInit for SSE events.
|
|
136
130
|
});
|
|
137
|
-
logger.debug("[connectViaSSE] SSE transport initialized");
|
|
131
|
+
this.logger.debug("[connectViaSSE] SSE transport initialized");
|
|
138
132
|
this.client = new Client(
|
|
139
133
|
{
|
|
140
134
|
name: "Dexto-sse-mcp-client",
|
|
@@ -149,17 +143,17 @@ class MCPClient extends EventEmitter {
|
|
|
149
143
|
}
|
|
150
144
|
);
|
|
151
145
|
try {
|
|
152
|
-
logger.info("Establishing connection...");
|
|
146
|
+
this.logger.info("Establishing connection...");
|
|
153
147
|
await this.client.connect(this.transport);
|
|
154
148
|
this.serverSpawned = true;
|
|
155
|
-
logger.info(`\u2705 ${serverName} SSE SERVER SPAWNED`);
|
|
156
|
-
logger.info("Connection established!\n\n");
|
|
149
|
+
this.logger.info(`\u2705 ${serverName} SSE SERVER SPAWNED`);
|
|
150
|
+
this.logger.info("Connection established!\n\n");
|
|
157
151
|
this.isConnected = true;
|
|
158
152
|
this.setupNotificationHandlers();
|
|
159
153
|
this.setupElicitationHandler();
|
|
160
154
|
return this.client;
|
|
161
155
|
} catch (error) {
|
|
162
|
-
logger.error(
|
|
156
|
+
this.logger.error(
|
|
163
157
|
`Failed to connect to SSE MCP server ${url}: ${JSON.stringify(error.message, null, 2)}`
|
|
164
158
|
);
|
|
165
159
|
throw error;
|
|
@@ -169,9 +163,13 @@ class MCPClient extends EventEmitter {
|
|
|
169
163
|
* Connect to an MCP server via Streamable HTTP transport
|
|
170
164
|
*/
|
|
171
165
|
async connectViaHttp(url, headers = {}, serverAlias) {
|
|
172
|
-
logger.info(`Connecting to HTTP MCP server at ${url}`);
|
|
166
|
+
this.logger.info(`Connecting to HTTP MCP server at ${url}`);
|
|
167
|
+
const defaultHeaders = {
|
|
168
|
+
Accept: "application/json, text/event-stream"
|
|
169
|
+
};
|
|
170
|
+
const mergedHeaders = { ...defaultHeaders, ...headers };
|
|
173
171
|
this.transport = new StreamableHTTPClientTransport(new URL(url), {
|
|
174
|
-
requestInit: { headers:
|
|
172
|
+
requestInit: { headers: mergedHeaders }
|
|
175
173
|
});
|
|
176
174
|
this.client = new Client(
|
|
177
175
|
{ name: "Dexto-http-mcp-client", version: "1.0.0" },
|
|
@@ -184,15 +182,15 @@ class MCPClient extends EventEmitter {
|
|
|
184
182
|
}
|
|
185
183
|
);
|
|
186
184
|
try {
|
|
187
|
-
logger.info("Establishing HTTP connection...");
|
|
185
|
+
this.logger.info("Establishing HTTP connection...");
|
|
188
186
|
await this.client.connect(this.transport);
|
|
189
187
|
this.isConnected = true;
|
|
190
|
-
logger.info(`\u2705 HTTP SERVER ${serverAlias ?? url} CONNECTED`);
|
|
188
|
+
this.logger.info(`\u2705 HTTP SERVER ${serverAlias ?? url} CONNECTED`);
|
|
191
189
|
this.setupNotificationHandlers();
|
|
192
190
|
this.setupElicitationHandler();
|
|
193
191
|
return this.client;
|
|
194
192
|
} catch (error) {
|
|
195
|
-
logger.error(
|
|
193
|
+
this.logger.error(
|
|
196
194
|
`Failed to connect to HTTP MCP server ${url}: ${JSON.stringify(error.message, null, 2)}`
|
|
197
195
|
);
|
|
198
196
|
throw error;
|
|
@@ -207,9 +205,9 @@ class MCPClient extends EventEmitter {
|
|
|
207
205
|
await this.transport.close();
|
|
208
206
|
this.isConnected = false;
|
|
209
207
|
this.serverSpawned = false;
|
|
210
|
-
logger.info("Disconnected from MCP server");
|
|
208
|
+
this.logger.info("Disconnected from MCP server");
|
|
211
209
|
} catch (error) {
|
|
212
|
-
logger.error(
|
|
210
|
+
this.logger.error(
|
|
213
211
|
`Error disconnecting from MCP server: ${JSON.stringify(error.message, null, 2)}`
|
|
214
212
|
);
|
|
215
213
|
}
|
|
@@ -223,8 +221,21 @@ class MCPClient extends EventEmitter {
|
|
|
223
221
|
*/
|
|
224
222
|
async callTool(name, args) {
|
|
225
223
|
this.ensureConnected();
|
|
224
|
+
const shouldTrace = hasActiveTelemetry();
|
|
225
|
+
const tracer = shouldTrace ? trace.getTracer("dexto") : null;
|
|
226
|
+
const span = tracer?.startSpan(`mcp.tool.${name}`, {
|
|
227
|
+
kind: SpanKind.CLIENT
|
|
228
|
+
});
|
|
226
229
|
try {
|
|
227
|
-
|
|
230
|
+
if (span) {
|
|
231
|
+
const ctx = trace.setSpan(context.active(), span);
|
|
232
|
+
addBaggageAttributesToSpan(span, ctx, this.logger);
|
|
233
|
+
span.setAttribute("tool.name", name);
|
|
234
|
+
span.setAttribute("tool.server", this.serverAlias || "unknown");
|
|
235
|
+
span.setAttribute("tool.timeout", this.timeout);
|
|
236
|
+
span.setAttribute("tool.arguments", safeStringify(args, 4096));
|
|
237
|
+
}
|
|
238
|
+
this.logger.debug(`Calling tool '${name}' with args: ${JSON.stringify(args, null, 2)}`);
|
|
228
239
|
let toolArgs = args;
|
|
229
240
|
if (typeof args === "string") {
|
|
230
241
|
try {
|
|
@@ -233,7 +244,7 @@ class MCPClient extends EventEmitter {
|
|
|
233
244
|
toolArgs = { input: args };
|
|
234
245
|
}
|
|
235
246
|
}
|
|
236
|
-
logger.debug(`Using timeout: ${this.timeout}`);
|
|
247
|
+
this.logger.debug(`Using timeout: ${this.timeout}`);
|
|
237
248
|
const result = await this.client.callTool(
|
|
238
249
|
{ name, arguments: toolArgs },
|
|
239
250
|
void 0,
|
|
@@ -251,14 +262,27 @@ class MCPClient extends EventEmitter {
|
|
|
251
262
|
},
|
|
252
263
|
2
|
|
253
264
|
);
|
|
254
|
-
logger.debug(`Tool '${name}' result: ${logResult}`);
|
|
265
|
+
this.logger.debug(`Tool '${name}' result: ${logResult}`);
|
|
266
|
+
if (span) {
|
|
267
|
+
span.setAttribute("tool.result", safeStringify(result, 4096));
|
|
268
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
269
|
+
}
|
|
255
270
|
if (result === null || result === void 0) {
|
|
256
271
|
return "Tool executed successfully with no result data.";
|
|
257
272
|
}
|
|
258
273
|
return result;
|
|
259
274
|
} catch (error) {
|
|
260
|
-
logger.error(`Tool call '${name}' failed: ${JSON.stringify(error, null, 2)}`);
|
|
275
|
+
this.logger.error(`Tool call '${name}' failed: ${JSON.stringify(error, null, 2)}`);
|
|
276
|
+
if (span) {
|
|
277
|
+
span.recordException(error);
|
|
278
|
+
span.setStatus({
|
|
279
|
+
code: SpanStatusCode.ERROR,
|
|
280
|
+
message: error instanceof Error ? error.message : String(error)
|
|
281
|
+
});
|
|
282
|
+
}
|
|
261
283
|
return `Error executing tool '${name}': ${error instanceof Error ? error.message : String(error)}`;
|
|
284
|
+
} finally {
|
|
285
|
+
span?.end();
|
|
262
286
|
}
|
|
263
287
|
}
|
|
264
288
|
/**
|
|
@@ -270,11 +294,11 @@ class MCPClient extends EventEmitter {
|
|
|
270
294
|
const tools = {};
|
|
271
295
|
try {
|
|
272
296
|
const listToolResult = await this.client.listTools({});
|
|
273
|
-
logger.silly(`listTools result: ${JSON.stringify(listToolResult, null, 2)}`);
|
|
297
|
+
this.logger.silly(`listTools result: ${JSON.stringify(listToolResult, null, 2)}`);
|
|
274
298
|
if (listToolResult && listToolResult.tools) {
|
|
275
299
|
listToolResult.tools.forEach((tool) => {
|
|
276
300
|
if (!tool.description) {
|
|
277
|
-
logger.warn(`Tool '${tool.name}' is missing a description`);
|
|
301
|
+
this.logger.warn(`Tool '${tool.name}' is missing a description`);
|
|
278
302
|
}
|
|
279
303
|
if (!tool.inputSchema) {
|
|
280
304
|
throw MCPError.invalidToolSchema(tool.name, "missing input schema");
|
|
@@ -290,7 +314,7 @@ class MCPClient extends EventEmitter {
|
|
|
290
314
|
);
|
|
291
315
|
}
|
|
292
316
|
} catch (error) {
|
|
293
|
-
logger.warn(
|
|
317
|
+
this.logger.warn(
|
|
294
318
|
`Failed to get tools from MCP server, proceeding with zero tools: ${JSON.stringify(error, null, 2)}`
|
|
295
319
|
);
|
|
296
320
|
return tools;
|
|
@@ -305,10 +329,10 @@ class MCPClient extends EventEmitter {
|
|
|
305
329
|
this.ensureConnected();
|
|
306
330
|
try {
|
|
307
331
|
const response = await this.client.listPrompts();
|
|
308
|
-
logger.debug(`listPrompts response: ${JSON.stringify(response, null, 2)}`);
|
|
332
|
+
this.logger.debug(`listPrompts response: ${JSON.stringify(response, null, 2)}`);
|
|
309
333
|
return response.prompts;
|
|
310
334
|
} catch (error) {
|
|
311
|
-
logger.debug(
|
|
335
|
+
this.logger.debug(
|
|
312
336
|
`Failed to list prompts from MCP server (optional feature), skipping: ${JSON.stringify(error, null, 2)}`
|
|
313
337
|
);
|
|
314
338
|
return [];
|
|
@@ -324,15 +348,17 @@ class MCPClient extends EventEmitter {
|
|
|
324
348
|
async getPrompt(name, args) {
|
|
325
349
|
this.ensureConnected();
|
|
326
350
|
try {
|
|
327
|
-
logger.debug(
|
|
351
|
+
this.logger.debug(
|
|
352
|
+
`Getting prompt '${name}' with args: ${JSON.stringify(args, null, 2)}`
|
|
353
|
+
);
|
|
328
354
|
const response = await this.client.getPrompt(
|
|
329
355
|
{ name, arguments: args },
|
|
330
356
|
{ timeout: this.timeout }
|
|
331
357
|
);
|
|
332
|
-
logger.debug(`getPrompt '${name}' response: ${JSON.stringify(response, null, 2)}`);
|
|
358
|
+
this.logger.debug(`getPrompt '${name}' response: ${JSON.stringify(response, null, 2)}`);
|
|
333
359
|
return response;
|
|
334
360
|
} catch (error) {
|
|
335
|
-
logger.debug(
|
|
361
|
+
this.logger.debug(
|
|
336
362
|
`Failed to get prompt '${name}' from MCP server: ${JSON.stringify(error, null, 2)}`
|
|
337
363
|
);
|
|
338
364
|
throw MCPError.protocolError(
|
|
@@ -349,7 +375,7 @@ class MCPClient extends EventEmitter {
|
|
|
349
375
|
this.ensureConnected();
|
|
350
376
|
try {
|
|
351
377
|
const response = await this.client.listResources();
|
|
352
|
-
logger.debug(`listResources response: ${JSON.stringify(response, null, 2)}`);
|
|
378
|
+
this.logger.debug(`listResources response: ${JSON.stringify(response, null, 2)}`);
|
|
353
379
|
return response.resources.map(
|
|
354
380
|
(r) => ({
|
|
355
381
|
uri: r.uri,
|
|
@@ -359,7 +385,7 @@ class MCPClient extends EventEmitter {
|
|
|
359
385
|
})
|
|
360
386
|
);
|
|
361
387
|
} catch (error) {
|
|
362
|
-
logger.debug(
|
|
388
|
+
this.logger.debug(
|
|
363
389
|
`Failed to list resources from MCP server (optional feature), skipping: ${JSON.stringify(error, null, 2)}`
|
|
364
390
|
);
|
|
365
391
|
return [];
|
|
@@ -373,12 +399,14 @@ class MCPClient extends EventEmitter {
|
|
|
373
399
|
async readResource(uri) {
|
|
374
400
|
this.ensureConnected();
|
|
375
401
|
try {
|
|
376
|
-
logger.debug(`Reading resource '${uri}'`);
|
|
402
|
+
this.logger.debug(`Reading resource '${uri}'`);
|
|
377
403
|
const response = await this.client.readResource({ uri }, { timeout: this.timeout });
|
|
378
|
-
logger.debug(
|
|
404
|
+
this.logger.debug(
|
|
405
|
+
`readResource '${uri}' response: ${JSON.stringify(response, null, 2)}`
|
|
406
|
+
);
|
|
379
407
|
return response;
|
|
380
408
|
} catch (error) {
|
|
381
|
-
logger.debug(
|
|
409
|
+
this.logger.debug(
|
|
382
410
|
`Failed to read resource '${uri}' from MCP server: ${JSON.stringify(error, null, 2)}`
|
|
383
411
|
);
|
|
384
412
|
throw MCPError.protocolError(
|
|
@@ -442,43 +470,43 @@ class MCPClient extends EventEmitter {
|
|
|
442
470
|
}
|
|
443
471
|
);
|
|
444
472
|
} catch (error) {
|
|
445
|
-
logger.warn(`Could not set resources/updated notification handler: ${error}`);
|
|
473
|
+
this.logger.warn(`Could not set resources/updated notification handler: ${error}`);
|
|
446
474
|
}
|
|
447
475
|
try {
|
|
448
476
|
this.client.setNotificationHandler(PromptListChangedNotificationSchema, () => {
|
|
449
477
|
this.handlePromptsListChanged();
|
|
450
478
|
});
|
|
451
479
|
} catch (error) {
|
|
452
|
-
logger.warn(`Could not set prompts/list_changed notification handler: ${error}`);
|
|
480
|
+
this.logger.warn(`Could not set prompts/list_changed notification handler: ${error}`);
|
|
453
481
|
}
|
|
454
482
|
try {
|
|
455
483
|
this.client.setNotificationHandler(ToolListChangedNotificationSchema, () => {
|
|
456
484
|
this.handleToolsListChanged();
|
|
457
485
|
});
|
|
458
486
|
} catch (error) {
|
|
459
|
-
logger.warn(`Could not set tools/list_changed notification handler: ${error}`);
|
|
487
|
+
this.logger.warn(`Could not set tools/list_changed notification handler: ${error}`);
|
|
460
488
|
}
|
|
461
|
-
logger.debug("MCP notification handlers registered (resources, prompts, tools)");
|
|
489
|
+
this.logger.debug("MCP notification handlers registered (resources, prompts, tools)");
|
|
462
490
|
}
|
|
463
491
|
/**
|
|
464
492
|
* Handle resource updated notification
|
|
465
493
|
*/
|
|
466
494
|
handleResourceUpdated(params) {
|
|
467
|
-
logger.debug(`Resource updated: ${params.uri}`);
|
|
495
|
+
this.logger.debug(`Resource updated: ${params.uri}`);
|
|
468
496
|
this.emit("resourceUpdated", params);
|
|
469
497
|
}
|
|
470
498
|
/**
|
|
471
499
|
* Handle prompts list changed notification
|
|
472
500
|
*/
|
|
473
501
|
handlePromptsListChanged() {
|
|
474
|
-
logger.debug("Prompts list changed");
|
|
502
|
+
this.logger.debug("Prompts list changed");
|
|
475
503
|
this.emit("promptsListChanged");
|
|
476
504
|
}
|
|
477
505
|
/**
|
|
478
506
|
* Handle tools list changed notification
|
|
479
507
|
*/
|
|
480
508
|
handleToolsListChanged() {
|
|
481
|
-
logger.debug("Tools list changed");
|
|
509
|
+
this.logger.debug("Tools list changed");
|
|
482
510
|
this.emit("toolsListChanged");
|
|
483
511
|
}
|
|
484
512
|
/**
|
|
@@ -495,11 +523,11 @@ class MCPClient extends EventEmitter {
|
|
|
495
523
|
*/
|
|
496
524
|
setupElicitationHandler() {
|
|
497
525
|
if (!this.client) {
|
|
498
|
-
logger.warn("Cannot setup elicitation handler: client not initialized");
|
|
526
|
+
this.logger.warn("Cannot setup elicitation handler: client not initialized");
|
|
499
527
|
return;
|
|
500
528
|
}
|
|
501
529
|
if (!this.approvalManager) {
|
|
502
|
-
logger.warn("Cannot setup elicitation handler: approval manager not set");
|
|
530
|
+
this.logger.warn("Cannot setup elicitation handler: approval manager not set");
|
|
503
531
|
return;
|
|
504
532
|
}
|
|
505
533
|
const ElicitationCreateRequestSchema = z.object({
|
|
@@ -511,16 +539,16 @@ class MCPClient extends EventEmitter {
|
|
|
511
539
|
}).passthrough();
|
|
512
540
|
this.client.setRequestHandler(ElicitationCreateRequestSchema, async (request) => {
|
|
513
541
|
const params = request.params;
|
|
514
|
-
logger.info(
|
|
542
|
+
this.logger.info(
|
|
515
543
|
`Elicitation request from MCP server '${this.serverAlias}': ${params.message}`
|
|
516
544
|
);
|
|
517
545
|
try {
|
|
518
546
|
if (!this.approvalManager) {
|
|
519
|
-
logger.error("Approval manager not available for elicitation request");
|
|
547
|
+
this.logger.error("Approval manager not available for elicitation request");
|
|
520
548
|
return { action: "decline" };
|
|
521
549
|
}
|
|
522
550
|
if (typeof params.requestedSchema !== "object" || params.requestedSchema === null || Array.isArray(params.requestedSchema)) {
|
|
523
|
-
logger.error(
|
|
551
|
+
this.logger.error(
|
|
524
552
|
`Invalid elicitation schema from '${this.serverAlias}': expected object, got ${typeof params.requestedSchema}`
|
|
525
553
|
);
|
|
526
554
|
return { action: "decline" };
|
|
@@ -532,30 +560,32 @@ class MCPClient extends EventEmitter {
|
|
|
532
560
|
});
|
|
533
561
|
if (response.status === ApprovalStatus.APPROVED && response.data) {
|
|
534
562
|
const formData = response.data && typeof response.data === "object" && "formData" in response.data ? response.data.formData : {};
|
|
535
|
-
logger.info(
|
|
563
|
+
this.logger.info(
|
|
564
|
+
`Elicitation approved for '${this.serverAlias}', returning data`
|
|
565
|
+
);
|
|
536
566
|
return {
|
|
537
567
|
action: "accept",
|
|
538
568
|
content: formData
|
|
539
569
|
};
|
|
540
570
|
} else if (response.status === ApprovalStatus.DENIED) {
|
|
541
|
-
logger.info(`Elicitation declined for '${this.serverAlias}'`);
|
|
571
|
+
this.logger.info(`Elicitation declined for '${this.serverAlias}'`);
|
|
542
572
|
return {
|
|
543
573
|
action: "decline"
|
|
544
574
|
};
|
|
545
575
|
} else {
|
|
546
|
-
logger.info(`Elicitation cancelled for '${this.serverAlias}'`);
|
|
576
|
+
this.logger.info(`Elicitation cancelled for '${this.serverAlias}'`);
|
|
547
577
|
return {
|
|
548
578
|
action: "cancel"
|
|
549
579
|
};
|
|
550
580
|
}
|
|
551
581
|
} catch (error) {
|
|
552
|
-
logger.error(`Elicitation error for '${this.serverAlias}': ${error}`);
|
|
582
|
+
this.logger.error(`Elicitation error for '${this.serverAlias}': ${error}`);
|
|
553
583
|
return {
|
|
554
584
|
action: "decline"
|
|
555
585
|
};
|
|
556
586
|
}
|
|
557
587
|
});
|
|
558
|
-
logger.debug(`Elicitation handler registered for MCP server '${this.serverAlias}'`);
|
|
588
|
+
this.logger.debug(`Elicitation handler registered for MCP server '${this.serverAlias}'`);
|
|
559
589
|
}
|
|
560
590
|
}
|
|
561
591
|
export {
|
package/dist/memory/index.cjs
CHANGED
|
@@ -20,6 +20,7 @@ var memory_exports = {};
|
|
|
20
20
|
__export(memory_exports, {
|
|
21
21
|
CreateMemoryInputSchema: () => import_schemas.CreateMemoryInputSchema,
|
|
22
22
|
ListMemoriesOptionsSchema: () => import_schemas.ListMemoriesOptionsSchema,
|
|
23
|
+
MemoriesConfigSchema: () => import_schemas.MemoriesConfigSchema,
|
|
23
24
|
MemoryError: () => import_errors.MemoryError,
|
|
24
25
|
MemoryErrorCode: () => import_error_codes.MemoryErrorCode,
|
|
25
26
|
MemoryManager: () => import_manager.MemoryManager,
|
|
@@ -35,6 +36,7 @@ var import_error_codes = require("./error-codes.js");
|
|
|
35
36
|
0 && (module.exports = {
|
|
36
37
|
CreateMemoryInputSchema,
|
|
37
38
|
ListMemoriesOptionsSchema,
|
|
39
|
+
MemoriesConfigSchema,
|
|
38
40
|
MemoryError,
|
|
39
41
|
MemoryErrorCode,
|
|
40
42
|
MemoryManager,
|
package/dist/memory/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { MemoryManager } from './manager.js';
|
|
2
2
|
export type { Memory, CreateMemoryInput, UpdateMemoryInput, ListMemoriesOptions, MemorySource, } from './types.js';
|
|
3
|
-
export { MemorySchema, CreateMemoryInputSchema, UpdateMemoryInputSchema, ListMemoriesOptionsSchema, type ValidatedMemory, type ValidatedCreateMemoryInput, type ValidatedUpdateMemoryInput, type ValidatedListMemoriesOptions, } from './schemas.js';
|
|
3
|
+
export { MemorySchema, CreateMemoryInputSchema, UpdateMemoryInputSchema, ListMemoriesOptionsSchema, MemoriesConfigSchema, type ValidatedMemory, type ValidatedCreateMemoryInput, type ValidatedUpdateMemoryInput, type ValidatedListMemoriesOptions, type MemoriesConfig, type ValidatedMemoriesConfig, } from './schemas.js';
|
|
4
4
|
export { MemoryError } from './errors.js';
|
|
5
5
|
export { MemoryErrorCode } from './error-codes.js';
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,YAAY,EACR,MAAM,EACN,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EACH,YAAY,EACZ,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,EACzB,KAAK,eAAe,EACpB,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,YAAY,EACR,MAAM,EACN,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EACH,YAAY,EACZ,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,cAAc,EACnB,KAAK,uBAAuB,GAC/B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/memory/index.js
CHANGED
|
@@ -4,13 +4,15 @@ import {
|
|
|
4
4
|
MemorySchema,
|
|
5
5
|
CreateMemoryInputSchema,
|
|
6
6
|
UpdateMemoryInputSchema,
|
|
7
|
-
ListMemoriesOptionsSchema
|
|
7
|
+
ListMemoriesOptionsSchema,
|
|
8
|
+
MemoriesConfigSchema
|
|
8
9
|
} from "./schemas.js";
|
|
9
10
|
import { MemoryError } from "./errors.js";
|
|
10
11
|
import { MemoryErrorCode } from "./error-codes.js";
|
|
11
12
|
export {
|
|
12
13
|
CreateMemoryInputSchema,
|
|
13
14
|
ListMemoriesOptionsSchema,
|
|
15
|
+
MemoriesConfigSchema,
|
|
14
16
|
MemoryError,
|
|
15
17
|
MemoryErrorCode,
|
|
16
18
|
MemoryManager,
|
package/dist/memory/manager.cjs
CHANGED
|
@@ -25,14 +25,16 @@ var import_schemas = require("./schemas.js");
|
|
|
25
25
|
var import_errors = require("./errors.js");
|
|
26
26
|
var import_error_codes = require("./error-codes.js");
|
|
27
27
|
var import_DextoRuntimeError = require("../errors/DextoRuntimeError.js");
|
|
28
|
-
var
|
|
28
|
+
var import_types = require("../logger/v2/types.js");
|
|
29
29
|
var import_nanoid = require("nanoid");
|
|
30
30
|
const MEMORY_KEY_PREFIX = "memory:item:";
|
|
31
31
|
class MemoryManager {
|
|
32
|
-
constructor(database) {
|
|
32
|
+
constructor(database, logger) {
|
|
33
33
|
this.database = database;
|
|
34
|
-
|
|
34
|
+
this.logger = logger.createChild(import_types.DextoLogComponent.MEMORY);
|
|
35
|
+
this.logger.debug("MemoryManager initialized");
|
|
35
36
|
}
|
|
37
|
+
logger;
|
|
36
38
|
/**
|
|
37
39
|
* Create a new memory
|
|
38
40
|
*/
|
|
@@ -51,7 +53,7 @@ class MemoryManager {
|
|
|
51
53
|
const validatedMemory = import_schemas.MemorySchema.parse(memory);
|
|
52
54
|
try {
|
|
53
55
|
await this.database.set(this.toKey(id), validatedMemory);
|
|
54
|
-
|
|
56
|
+
this.logger.info(`Created memory: ${id}`);
|
|
55
57
|
return validatedMemory;
|
|
56
58
|
} catch (error) {
|
|
57
59
|
throw import_errors.MemoryError.storageError(
|
|
@@ -107,7 +109,7 @@ class MemoryManager {
|
|
|
107
109
|
const validatedMemory = import_schemas.MemorySchema.parse(updated);
|
|
108
110
|
try {
|
|
109
111
|
await this.database.set(this.toKey(id), validatedMemory);
|
|
110
|
-
|
|
112
|
+
this.logger.info(`Updated memory: ${id}`);
|
|
111
113
|
return validatedMemory;
|
|
112
114
|
} catch (error) {
|
|
113
115
|
throw import_errors.MemoryError.storageError(
|
|
@@ -126,7 +128,7 @@ class MemoryManager {
|
|
|
126
128
|
await this.get(id);
|
|
127
129
|
try {
|
|
128
130
|
await this.database.delete(this.toKey(id));
|
|
129
|
-
|
|
131
|
+
this.logger.info(`Deleted memory: ${id}`);
|
|
130
132
|
} catch (error) {
|
|
131
133
|
throw import_errors.MemoryError.deleteError(
|
|
132
134
|
`Failed to delete memory: ${error instanceof Error ? error.message : String(error)}`,
|
|
@@ -149,7 +151,7 @@ class MemoryManager {
|
|
|
149
151
|
memories.push(memory);
|
|
150
152
|
}
|
|
151
153
|
} catch (error) {
|
|
152
|
-
|
|
154
|
+
this.logger.warn(
|
|
153
155
|
`Failed to retrieve memory from key ${key}: ${error instanceof Error ? error.message : String(error)}`
|
|
154
156
|
);
|
|
155
157
|
}
|
package/dist/memory/manager.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Database } from '../storage/database/types.js';
|
|
2
2
|
import type { Memory, CreateMemoryInput, UpdateMemoryInput, ListMemoriesOptions } from './types.js';
|
|
3
|
+
import type { IDextoLogger } from '../logger/v2/types.js';
|
|
3
4
|
/**
|
|
4
5
|
* MemoryManager handles CRUD operations for user memories
|
|
5
6
|
*
|
|
@@ -19,7 +20,8 @@ import type { Memory, CreateMemoryInput, UpdateMemoryInput, ListMemoriesOptions
|
|
|
19
20
|
*/
|
|
20
21
|
export declare class MemoryManager {
|
|
21
22
|
private database;
|
|
22
|
-
|
|
23
|
+
private logger;
|
|
24
|
+
constructor(database: Database, logger: IDextoLogger);
|
|
23
25
|
/**
|
|
24
26
|
* Create a new memory
|
|
25
27
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/memory/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/memory/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAUpG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAM1D;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,aAAa;IAIlB,OAAO,CAAC,QAAQ;IAHpB,OAAO,CAAC,MAAM,CAAe;gBAGjB,QAAQ,EAAE,QAAQ,EAC1B,MAAM,EAAE,YAAY;IAMxB;;OAEG;IACG,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IAiCvD;;OAEG;IACG,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAyBtC;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IA2CnE;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBvC;;OAEG;IACG,IAAI,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IA8DhE;;OAEG;IACG,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAevC;;OAEG;IACG,KAAK,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC;IAK/D;;OAEG;IACH,OAAO,CAAC,KAAK;CAGhB"}
|
package/dist/memory/manager.js
CHANGED
|
@@ -8,14 +8,16 @@ import {
|
|
|
8
8
|
import { MemoryError } from "./errors.js";
|
|
9
9
|
import { MemoryErrorCode } from "./error-codes.js";
|
|
10
10
|
import { DextoRuntimeError } from "../errors/DextoRuntimeError.js";
|
|
11
|
-
import {
|
|
11
|
+
import { DextoLogComponent } from "../logger/v2/types.js";
|
|
12
12
|
import { nanoid } from "nanoid";
|
|
13
13
|
const MEMORY_KEY_PREFIX = "memory:item:";
|
|
14
14
|
class MemoryManager {
|
|
15
|
-
constructor(database) {
|
|
15
|
+
constructor(database, logger) {
|
|
16
16
|
this.database = database;
|
|
17
|
-
logger.
|
|
17
|
+
this.logger = logger.createChild(DextoLogComponent.MEMORY);
|
|
18
|
+
this.logger.debug("MemoryManager initialized");
|
|
18
19
|
}
|
|
20
|
+
logger;
|
|
19
21
|
/**
|
|
20
22
|
* Create a new memory
|
|
21
23
|
*/
|
|
@@ -34,7 +36,7 @@ class MemoryManager {
|
|
|
34
36
|
const validatedMemory = MemorySchema.parse(memory);
|
|
35
37
|
try {
|
|
36
38
|
await this.database.set(this.toKey(id), validatedMemory);
|
|
37
|
-
logger.info(`Created memory: ${id}`);
|
|
39
|
+
this.logger.info(`Created memory: ${id}`);
|
|
38
40
|
return validatedMemory;
|
|
39
41
|
} catch (error) {
|
|
40
42
|
throw MemoryError.storageError(
|
|
@@ -90,7 +92,7 @@ class MemoryManager {
|
|
|
90
92
|
const validatedMemory = MemorySchema.parse(updated);
|
|
91
93
|
try {
|
|
92
94
|
await this.database.set(this.toKey(id), validatedMemory);
|
|
93
|
-
logger.info(`Updated memory: ${id}`);
|
|
95
|
+
this.logger.info(`Updated memory: ${id}`);
|
|
94
96
|
return validatedMemory;
|
|
95
97
|
} catch (error) {
|
|
96
98
|
throw MemoryError.storageError(
|
|
@@ -109,7 +111,7 @@ class MemoryManager {
|
|
|
109
111
|
await this.get(id);
|
|
110
112
|
try {
|
|
111
113
|
await this.database.delete(this.toKey(id));
|
|
112
|
-
logger.info(`Deleted memory: ${id}`);
|
|
114
|
+
this.logger.info(`Deleted memory: ${id}`);
|
|
113
115
|
} catch (error) {
|
|
114
116
|
throw MemoryError.deleteError(
|
|
115
117
|
`Failed to delete memory: ${error instanceof Error ? error.message : String(error)}`,
|
|
@@ -132,7 +134,7 @@ class MemoryManager {
|
|
|
132
134
|
memories.push(memory);
|
|
133
135
|
}
|
|
134
136
|
} catch (error) {
|
|
135
|
-
logger.warn(
|
|
137
|
+
this.logger.warn(
|
|
136
138
|
`Failed to retrieve memory from key ${key}: ${error instanceof Error ? error.message : String(error)}`
|
|
137
139
|
);
|
|
138
140
|
}
|
package/dist/memory/schemas.cjs
CHANGED
|
@@ -20,6 +20,7 @@ var schemas_exports = {};
|
|
|
20
20
|
__export(schemas_exports, {
|
|
21
21
|
CreateMemoryInputSchema: () => CreateMemoryInputSchema,
|
|
22
22
|
ListMemoriesOptionsSchema: () => ListMemoriesOptionsSchema,
|
|
23
|
+
MemoriesConfigSchema: () => MemoriesConfigSchema,
|
|
23
24
|
MemoryMetadataSchema: () => MemoryMetadataSchema,
|
|
24
25
|
MemorySchema: () => MemorySchema,
|
|
25
26
|
MemorySourceSchema: () => MemorySourceSchema,
|
|
@@ -71,10 +72,19 @@ const ListMemoriesOptionsSchema = import_zod.z.object({
|
|
|
71
72
|
limit: import_zod.z.number().int().positive().optional().describe("Limit number of results"),
|
|
72
73
|
offset: import_zod.z.number().int().nonnegative().optional().describe("Skip first N results")
|
|
73
74
|
}).strict().describe("Options for listing memories");
|
|
75
|
+
const MemoriesConfigSchema = import_zod.z.object({
|
|
76
|
+
enabled: import_zod.z.boolean().default(false).describe("Whether to include memories in system prompt (optional"),
|
|
77
|
+
priority: import_zod.z.number().int().nonnegative().default(40).describe("Priority in system prompt (lower = earlier)"),
|
|
78
|
+
includeTimestamps: import_zod.z.boolean().default(false).describe("Whether to include timestamps in memory display"),
|
|
79
|
+
includeTags: import_zod.z.boolean().default(true).describe("Whether to include tags in memory display"),
|
|
80
|
+
limit: import_zod.z.number().int().positive().optional().describe("Maximum number of memories to include"),
|
|
81
|
+
pinnedOnly: import_zod.z.boolean().default(false).describe("Only include pinned memories")
|
|
82
|
+
}).strict().describe("Memory configuration for system prompt inclusion");
|
|
74
83
|
// Annotate the CommonJS export names for ESM import in node:
|
|
75
84
|
0 && (module.exports = {
|
|
76
85
|
CreateMemoryInputSchema,
|
|
77
86
|
ListMemoriesOptionsSchema,
|
|
87
|
+
MemoriesConfigSchema,
|
|
78
88
|
MemoryMetadataSchema,
|
|
79
89
|
MemorySchema,
|
|
80
90
|
MemorySourceSchema,
|