@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
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "../../chunk-C6A6W6XS.js";
|
|
2
2
|
import { promises as fs } from "fs";
|
|
3
3
|
import path from "path";
|
|
4
|
-
import {
|
|
4
|
+
import { DextoLogComponent } from "../../logger/v2/types.js";
|
|
5
5
|
import { ResourceError } from "../errors.js";
|
|
6
6
|
class FileSystemResourceHandler {
|
|
7
7
|
config;
|
|
@@ -10,8 +10,10 @@ class FileSystemResourceHandler {
|
|
|
10
10
|
fileCount = 0;
|
|
11
11
|
canonicalRoots = [];
|
|
12
12
|
blobStoragePath;
|
|
13
|
-
|
|
13
|
+
logger;
|
|
14
|
+
constructor(config, logger, blobStoragePath) {
|
|
14
15
|
this.config = config;
|
|
16
|
+
this.logger = logger.createChild(DextoLogComponent.RESOURCE);
|
|
15
17
|
this.blobStoragePath = blobStoragePath;
|
|
16
18
|
}
|
|
17
19
|
getType() {
|
|
@@ -24,7 +26,7 @@ class FileSystemResourceHandler {
|
|
|
24
26
|
const canonicalRoot = await fs.realpath(path.resolve(configPath));
|
|
25
27
|
this.canonicalRoots.push(canonicalRoot);
|
|
26
28
|
} catch (error) {
|
|
27
|
-
logger.warn(
|
|
29
|
+
this.logger.warn(
|
|
28
30
|
`Failed to canonicalize root path '${configPath}': ${error instanceof Error ? error.message : String(error)}`
|
|
29
31
|
);
|
|
30
32
|
}
|
|
@@ -169,19 +171,19 @@ class FileSystemResourceHandler {
|
|
|
169
171
|
const { maxFiles, paths } = this.config;
|
|
170
172
|
for (const configPath of paths) {
|
|
171
173
|
if (this.fileCount >= maxFiles) {
|
|
172
|
-
logger.warn(`Reached maximum file limit (${maxFiles}), stopping scan`);
|
|
174
|
+
this.logger.warn(`Reached maximum file limit (${maxFiles}), stopping scan`);
|
|
173
175
|
break;
|
|
174
176
|
}
|
|
175
177
|
try {
|
|
176
178
|
const root = await fs.realpath(path.resolve(configPath));
|
|
177
179
|
await this.scanPath(root, 0, root);
|
|
178
180
|
} catch (error) {
|
|
179
|
-
logger.warn(
|
|
181
|
+
this.logger.warn(
|
|
180
182
|
`Failed to scan path '${configPath}': ${error instanceof Error ? error.message : String(error)}`
|
|
181
183
|
);
|
|
182
184
|
}
|
|
183
185
|
}
|
|
184
|
-
logger.debug(
|
|
186
|
+
this.logger.debug(
|
|
185
187
|
`FileSystem resources cached: ${this.resourcesCache.size} resources (${this.fileCount} files scanned)`
|
|
186
188
|
);
|
|
187
189
|
}
|
|
@@ -200,7 +202,7 @@ class FileSystemResourceHandler {
|
|
|
200
202
|
const { maxDepth, maxFiles, includeHidden, includeExtensions } = this.config;
|
|
201
203
|
if (this.fileCount >= maxFiles) return;
|
|
202
204
|
if (currentDepth > maxDepth) {
|
|
203
|
-
logger.silly(`Skipping path due to depth limit (${maxDepth}): ${canonical}`);
|
|
205
|
+
this.logger.silly(`Skipping path due to depth limit (${maxDepth}): ${canonical}`);
|
|
204
206
|
return;
|
|
205
207
|
}
|
|
206
208
|
if (this.visitedPaths.has(canonical)) return;
|
|
@@ -233,7 +235,7 @@ class FileSystemResourceHandler {
|
|
|
233
235
|
}
|
|
234
236
|
}
|
|
235
237
|
} catch (error) {
|
|
236
|
-
logger.debug(
|
|
238
|
+
this.logger.debug(
|
|
237
239
|
`Skipping inaccessible path: ${canonical} - ${error instanceof Error ? error.message : String(error)}`
|
|
238
240
|
);
|
|
239
241
|
}
|
|
@@ -21,7 +21,7 @@ __export(internal_provider_exports, {
|
|
|
21
21
|
InternalResourcesProvider: () => InternalResourcesProvider
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(internal_provider_exports);
|
|
24
|
-
var
|
|
24
|
+
var import_types3 = require("../logger/v2/types.js");
|
|
25
25
|
var import_factory = require("./handlers/factory.js");
|
|
26
26
|
var import_schemas = require("./schemas.js");
|
|
27
27
|
var import_errors = require("./errors.js");
|
|
@@ -29,30 +29,38 @@ class InternalResourcesProvider {
|
|
|
29
29
|
config;
|
|
30
30
|
handlers = /* @__PURE__ */ new Map();
|
|
31
31
|
services;
|
|
32
|
-
|
|
32
|
+
logger;
|
|
33
|
+
constructor(config, services, logger) {
|
|
33
34
|
this.config = config;
|
|
34
35
|
this.services = services;
|
|
35
|
-
|
|
36
|
+
this.logger = logger.createChild(import_types3.DextoLogComponent.RESOURCE);
|
|
37
|
+
this.logger.debug(
|
|
36
38
|
`InternalResourcesProvider initialized with config: ${JSON.stringify(config)}`
|
|
37
39
|
);
|
|
38
40
|
}
|
|
39
41
|
async initialize() {
|
|
40
42
|
if (!this.config.enabled || this.config.resources.length === 0) {
|
|
41
|
-
|
|
43
|
+
this.logger.debug("Internal resources disabled or no resources configured");
|
|
42
44
|
return;
|
|
43
45
|
}
|
|
44
46
|
for (const resourceConfig of this.config.resources) {
|
|
45
47
|
try {
|
|
46
48
|
const parsedConfig = import_schemas.InternalResourceConfigSchema.parse(resourceConfig);
|
|
47
|
-
const handler = (0, import_factory.createInternalResourceHandler)(
|
|
49
|
+
const handler = (0, import_factory.createInternalResourceHandler)(
|
|
50
|
+
parsedConfig,
|
|
51
|
+
this.services,
|
|
52
|
+
this.logger
|
|
53
|
+
);
|
|
48
54
|
await handler.initialize(this.services);
|
|
49
55
|
this.handlers.set(resourceConfig.type, handler);
|
|
50
|
-
|
|
56
|
+
this.logger.debug(`Initialized ${resourceConfig.type} resource handler`);
|
|
51
57
|
} catch (error) {
|
|
52
|
-
|
|
58
|
+
this.logger.error(`Failed to initialize ${resourceConfig.type} resource handler`, {
|
|
59
|
+
error: error instanceof Error ? error.message : String(error)
|
|
60
|
+
});
|
|
53
61
|
}
|
|
54
62
|
}
|
|
55
|
-
|
|
63
|
+
this.logger.debug(
|
|
56
64
|
`InternalResourcesProvider initialized with ${this.handlers.size} resource handlers`
|
|
57
65
|
);
|
|
58
66
|
}
|
|
@@ -66,9 +74,9 @@ class InternalResourcesProvider {
|
|
|
66
74
|
const resources = await handler.listResources();
|
|
67
75
|
allResources.push(...resources);
|
|
68
76
|
} catch (error) {
|
|
69
|
-
|
|
77
|
+
this.logger.error(
|
|
70
78
|
`Failed to list resources from ${type} handler: ${error instanceof Error ? error.message : String(error)}`,
|
|
71
|
-
error
|
|
79
|
+
{ error: error instanceof Error ? error.message : String(error) }
|
|
72
80
|
);
|
|
73
81
|
}
|
|
74
82
|
}
|
|
@@ -86,9 +94,9 @@ class InternalResourcesProvider {
|
|
|
86
94
|
try {
|
|
87
95
|
return await handler.readResource(uri);
|
|
88
96
|
} catch (error) {
|
|
89
|
-
|
|
97
|
+
this.logger.error(
|
|
90
98
|
`Failed to read resource ${uri} from ${type} handler: ${error instanceof Error ? error.message : String(error)}`,
|
|
91
|
-
error
|
|
99
|
+
{ error: error instanceof Error ? error.message : String(error) }
|
|
92
100
|
);
|
|
93
101
|
throw error;
|
|
94
102
|
}
|
|
@@ -101,11 +109,11 @@ class InternalResourcesProvider {
|
|
|
101
109
|
if (handler.refresh) {
|
|
102
110
|
try {
|
|
103
111
|
await handler.refresh();
|
|
104
|
-
|
|
112
|
+
this.logger.debug(`Refreshed ${type} resource handler`);
|
|
105
113
|
} catch (error) {
|
|
106
|
-
|
|
114
|
+
this.logger.error(
|
|
107
115
|
`Failed to refresh ${type} resource handler: ${error instanceof Error ? error.message : String(error)}`,
|
|
108
|
-
error
|
|
116
|
+
{ error: error instanceof Error ? error.message : String(error) }
|
|
109
117
|
);
|
|
110
118
|
}
|
|
111
119
|
}
|
|
@@ -114,15 +122,15 @@ class InternalResourcesProvider {
|
|
|
114
122
|
async addResourceConfig(config) {
|
|
115
123
|
try {
|
|
116
124
|
const parsedConfig = import_schemas.InternalResourceConfigSchema.parse(config);
|
|
117
|
-
const handler = (0, import_factory.createInternalResourceHandler)(parsedConfig, this.services);
|
|
125
|
+
const handler = (0, import_factory.createInternalResourceHandler)(parsedConfig, this.services, this.logger);
|
|
118
126
|
await handler.initialize(this.services);
|
|
119
127
|
this.handlers.set(config.type, handler);
|
|
120
128
|
this.config.resources.push(parsedConfig);
|
|
121
|
-
|
|
129
|
+
this.logger.info(`Added new ${config.type} resource handler`);
|
|
122
130
|
} catch (error) {
|
|
123
|
-
|
|
131
|
+
this.logger.error(
|
|
124
132
|
`Failed to add ${config.type} resource handler: ${error instanceof Error ? error.message : String(error)}`,
|
|
125
|
-
error
|
|
133
|
+
{ error: error instanceof Error ? error.message : String(error) }
|
|
126
134
|
);
|
|
127
135
|
throw error;
|
|
128
136
|
}
|
|
@@ -131,7 +139,7 @@ class InternalResourcesProvider {
|
|
|
131
139
|
if (this.handlers.has(type)) {
|
|
132
140
|
this.handlers.delete(type);
|
|
133
141
|
this.config.resources = this.config.resources.filter((r) => r.type !== type);
|
|
134
|
-
|
|
142
|
+
this.logger.info(`Removed ${type} resource handler`);
|
|
135
143
|
}
|
|
136
144
|
}
|
|
137
145
|
}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { ResourceProvider, ResourceMetadata, ResourceSource } from './types.js';
|
|
2
2
|
import { ReadResourceResult } from '@modelcontextprotocol/sdk/types.js';
|
|
3
|
+
import type { IDextoLogger } from '../logger/v2/types.js';
|
|
3
4
|
import type { InternalResourceServices } from './handlers/types.js';
|
|
4
5
|
import type { ValidatedInternalResourcesConfig, ValidatedInternalResourceConfig } from './schemas.js';
|
|
5
6
|
export declare class InternalResourcesProvider implements ResourceProvider {
|
|
6
7
|
private config;
|
|
7
8
|
private handlers;
|
|
8
9
|
private services;
|
|
9
|
-
|
|
10
|
+
private logger;
|
|
11
|
+
constructor(config: ValidatedInternalResourcesConfig, services: InternalResourceServices, logger: IDextoLogger);
|
|
10
12
|
initialize(): Promise<void>;
|
|
11
13
|
getSource(): ResourceSource;
|
|
12
14
|
listResources(): Promise<ResourceMetadata[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal-provider.d.ts","sourceRoot":"","sources":["../../src/resources/internal-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"internal-provider.d.ts","sourceRoot":"","sources":["../../src/resources/internal-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAG1D,OAAO,KAAK,EAA2B,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC7F,OAAO,KAAK,EACR,gCAAgC,EAChC,+BAA+B,EAClC,MAAM,cAAc,CAAC;AAItB,qBAAa,yBAA0B,YAAW,gBAAgB;IAC9D,OAAO,CAAC,MAAM,CAAmC;IACjD,OAAO,CAAC,QAAQ,CAAmD;IACnE,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,MAAM,CAAe;gBAGzB,MAAM,EAAE,gCAAgC,EACxC,QAAQ,EAAE,wBAAwB,EAClC,MAAM,EAAE,YAAY;IAUlB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA6BjC,SAAS,IAAI,cAAc;IAIrB,aAAa,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAgB5C,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAO1C,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAiBtD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBxB,iBAAiB,CAAC,MAAM,EAAE,+BAA+B,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBzE,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAO3D"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import "../chunk-C6A6W6XS.js";
|
|
2
|
-
import {
|
|
2
|
+
import { DextoLogComponent } from "../logger/v2/types.js";
|
|
3
3
|
import { createInternalResourceHandler } from "./handlers/factory.js";
|
|
4
4
|
import { InternalResourceConfigSchema } from "./schemas.js";
|
|
5
5
|
import { ResourceError } from "./errors.js";
|
|
@@ -7,30 +7,38 @@ class InternalResourcesProvider {
|
|
|
7
7
|
config;
|
|
8
8
|
handlers = /* @__PURE__ */ new Map();
|
|
9
9
|
services;
|
|
10
|
-
|
|
10
|
+
logger;
|
|
11
|
+
constructor(config, services, logger) {
|
|
11
12
|
this.config = config;
|
|
12
13
|
this.services = services;
|
|
13
|
-
logger.
|
|
14
|
+
this.logger = logger.createChild(DextoLogComponent.RESOURCE);
|
|
15
|
+
this.logger.debug(
|
|
14
16
|
`InternalResourcesProvider initialized with config: ${JSON.stringify(config)}`
|
|
15
17
|
);
|
|
16
18
|
}
|
|
17
19
|
async initialize() {
|
|
18
20
|
if (!this.config.enabled || this.config.resources.length === 0) {
|
|
19
|
-
logger.debug("Internal resources disabled or no resources configured");
|
|
21
|
+
this.logger.debug("Internal resources disabled or no resources configured");
|
|
20
22
|
return;
|
|
21
23
|
}
|
|
22
24
|
for (const resourceConfig of this.config.resources) {
|
|
23
25
|
try {
|
|
24
26
|
const parsedConfig = InternalResourceConfigSchema.parse(resourceConfig);
|
|
25
|
-
const handler = createInternalResourceHandler(
|
|
27
|
+
const handler = createInternalResourceHandler(
|
|
28
|
+
parsedConfig,
|
|
29
|
+
this.services,
|
|
30
|
+
this.logger
|
|
31
|
+
);
|
|
26
32
|
await handler.initialize(this.services);
|
|
27
33
|
this.handlers.set(resourceConfig.type, handler);
|
|
28
|
-
logger.debug(`Initialized ${resourceConfig.type} resource handler`);
|
|
34
|
+
this.logger.debug(`Initialized ${resourceConfig.type} resource handler`);
|
|
29
35
|
} catch (error) {
|
|
30
|
-
logger.error(`Failed to initialize ${resourceConfig.type} resource handler`,
|
|
36
|
+
this.logger.error(`Failed to initialize ${resourceConfig.type} resource handler`, {
|
|
37
|
+
error: error instanceof Error ? error.message : String(error)
|
|
38
|
+
});
|
|
31
39
|
}
|
|
32
40
|
}
|
|
33
|
-
logger.debug(
|
|
41
|
+
this.logger.debug(
|
|
34
42
|
`InternalResourcesProvider initialized with ${this.handlers.size} resource handlers`
|
|
35
43
|
);
|
|
36
44
|
}
|
|
@@ -44,9 +52,9 @@ class InternalResourcesProvider {
|
|
|
44
52
|
const resources = await handler.listResources();
|
|
45
53
|
allResources.push(...resources);
|
|
46
54
|
} catch (error) {
|
|
47
|
-
logger.error(
|
|
55
|
+
this.logger.error(
|
|
48
56
|
`Failed to list resources from ${type} handler: ${error instanceof Error ? error.message : String(error)}`,
|
|
49
|
-
error
|
|
57
|
+
{ error: error instanceof Error ? error.message : String(error) }
|
|
50
58
|
);
|
|
51
59
|
}
|
|
52
60
|
}
|
|
@@ -64,9 +72,9 @@ class InternalResourcesProvider {
|
|
|
64
72
|
try {
|
|
65
73
|
return await handler.readResource(uri);
|
|
66
74
|
} catch (error) {
|
|
67
|
-
logger.error(
|
|
75
|
+
this.logger.error(
|
|
68
76
|
`Failed to read resource ${uri} from ${type} handler: ${error instanceof Error ? error.message : String(error)}`,
|
|
69
|
-
error
|
|
77
|
+
{ error: error instanceof Error ? error.message : String(error) }
|
|
70
78
|
);
|
|
71
79
|
throw error;
|
|
72
80
|
}
|
|
@@ -79,11 +87,11 @@ class InternalResourcesProvider {
|
|
|
79
87
|
if (handler.refresh) {
|
|
80
88
|
try {
|
|
81
89
|
await handler.refresh();
|
|
82
|
-
logger.debug(`Refreshed ${type} resource handler`);
|
|
90
|
+
this.logger.debug(`Refreshed ${type} resource handler`);
|
|
83
91
|
} catch (error) {
|
|
84
|
-
logger.error(
|
|
92
|
+
this.logger.error(
|
|
85
93
|
`Failed to refresh ${type} resource handler: ${error instanceof Error ? error.message : String(error)}`,
|
|
86
|
-
error
|
|
94
|
+
{ error: error instanceof Error ? error.message : String(error) }
|
|
87
95
|
);
|
|
88
96
|
}
|
|
89
97
|
}
|
|
@@ -92,15 +100,15 @@ class InternalResourcesProvider {
|
|
|
92
100
|
async addResourceConfig(config) {
|
|
93
101
|
try {
|
|
94
102
|
const parsedConfig = InternalResourceConfigSchema.parse(config);
|
|
95
|
-
const handler = createInternalResourceHandler(parsedConfig, this.services);
|
|
103
|
+
const handler = createInternalResourceHandler(parsedConfig, this.services, this.logger);
|
|
96
104
|
await handler.initialize(this.services);
|
|
97
105
|
this.handlers.set(config.type, handler);
|
|
98
106
|
this.config.resources.push(parsedConfig);
|
|
99
|
-
logger.info(`Added new ${config.type} resource handler`);
|
|
107
|
+
this.logger.info(`Added new ${config.type} resource handler`);
|
|
100
108
|
} catch (error) {
|
|
101
|
-
logger.error(
|
|
109
|
+
this.logger.error(
|
|
102
110
|
`Failed to add ${config.type} resource handler: ${error instanceof Error ? error.message : String(error)}`,
|
|
103
|
-
error
|
|
111
|
+
{ error: error instanceof Error ? error.message : String(error) }
|
|
104
112
|
);
|
|
105
113
|
throw error;
|
|
106
114
|
}
|
|
@@ -109,7 +117,7 @@ class InternalResourcesProvider {
|
|
|
109
117
|
if (this.handlers.has(type)) {
|
|
110
118
|
this.handlers.delete(type);
|
|
111
119
|
this.config.resources = this.config.resources.filter((r) => r.type !== type);
|
|
112
|
-
logger.info(`Removed ${type} resource handler`);
|
|
120
|
+
this.logger.info(`Removed ${type} resource handler`);
|
|
113
121
|
}
|
|
114
122
|
}
|
|
115
123
|
}
|
|
@@ -22,36 +22,43 @@ __export(manager_exports, {
|
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(manager_exports);
|
|
24
24
|
var import_internal_provider = require("./internal-provider.js");
|
|
25
|
-
var
|
|
25
|
+
var import_types = require("../logger/v2/types.js");
|
|
26
26
|
var import_errors = require("./errors.js");
|
|
27
27
|
var import_events = require("../events/index.js");
|
|
28
28
|
class ResourceManager {
|
|
29
29
|
mcpManager;
|
|
30
30
|
internalResourcesProvider;
|
|
31
31
|
blobStore;
|
|
32
|
-
|
|
32
|
+
logger;
|
|
33
|
+
constructor(mcpManager, options, logger) {
|
|
33
34
|
this.mcpManager = mcpManager;
|
|
34
35
|
this.blobStore = options.blobStore;
|
|
36
|
+
this.logger = logger.createChild(import_types.DextoLogComponent.RESOURCE);
|
|
35
37
|
const services = {
|
|
36
38
|
blobStore: this.blobStore
|
|
37
39
|
};
|
|
38
40
|
const config = options.internalResourcesConfig;
|
|
39
41
|
if (config.enabled || config.resources.length > 0) {
|
|
40
|
-
this.internalResourcesProvider = new import_internal_provider.InternalResourcesProvider(
|
|
42
|
+
this.internalResourcesProvider = new import_internal_provider.InternalResourcesProvider(
|
|
43
|
+
config,
|
|
44
|
+
services,
|
|
45
|
+
this.logger
|
|
46
|
+
);
|
|
41
47
|
} else {
|
|
42
48
|
this.internalResourcesProvider = new import_internal_provider.InternalResourcesProvider(
|
|
43
49
|
{ enabled: true, resources: [] },
|
|
44
|
-
services
|
|
50
|
+
services,
|
|
51
|
+
this.logger
|
|
45
52
|
);
|
|
46
53
|
}
|
|
47
54
|
this.setupNotificationListeners();
|
|
48
|
-
|
|
55
|
+
this.logger.debug("ResourceManager initialized");
|
|
49
56
|
}
|
|
50
57
|
async initialize() {
|
|
51
58
|
if (this.internalResourcesProvider) {
|
|
52
59
|
await this.internalResourcesProvider.initialize();
|
|
53
60
|
}
|
|
54
|
-
|
|
61
|
+
this.logger.debug("ResourceManager initialization complete");
|
|
55
62
|
}
|
|
56
63
|
getBlobStore() {
|
|
57
64
|
return this.blobStore;
|
|
@@ -88,12 +95,12 @@ class ResourceManager {
|
|
|
88
95
|
resources[key] = metadata;
|
|
89
96
|
}
|
|
90
97
|
if (mcpResources.length > 0) {
|
|
91
|
-
|
|
98
|
+
this.logger.debug(
|
|
92
99
|
`\u{1F5C3}\uFE0F Resource discovery (MCP): ${mcpResources.length} resources across ${new Set(mcpResources.map((r) => r.serverName)).size} server(s)`
|
|
93
100
|
);
|
|
94
101
|
}
|
|
95
102
|
} catch (error) {
|
|
96
|
-
|
|
103
|
+
this.logger.error(
|
|
97
104
|
`Failed to enumerate MCP resources: ${error instanceof Error ? error.message : String(error)}`
|
|
98
105
|
);
|
|
99
106
|
}
|
|
@@ -104,12 +111,12 @@ class ResourceManager {
|
|
|
104
111
|
resources[resource.uri] = resource;
|
|
105
112
|
}
|
|
106
113
|
if (internalResources.length > 0) {
|
|
107
|
-
|
|
114
|
+
this.logger.debug(
|
|
108
115
|
`\u{1F5C3}\uFE0F Resource discovery (internal): ${internalResources.length} resources`
|
|
109
116
|
);
|
|
110
117
|
}
|
|
111
118
|
} catch (error) {
|
|
112
|
-
|
|
119
|
+
this.logger.error(
|
|
113
120
|
`Failed to enumerate internal resources: ${error instanceof Error ? error.message : String(error)}`
|
|
114
121
|
);
|
|
115
122
|
}
|
|
@@ -124,7 +131,7 @@ class ResourceManager {
|
|
|
124
131
|
try {
|
|
125
132
|
return await this.blobStore.exists(uri);
|
|
126
133
|
} catch (error) {
|
|
127
|
-
|
|
134
|
+
this.logger.warn(
|
|
128
135
|
`BlobService exists check failed for ${uri}: ${error instanceof Error ? error.message : String(error)}`
|
|
129
136
|
);
|
|
130
137
|
return false;
|
|
@@ -136,11 +143,11 @@ class ResourceManager {
|
|
|
136
143
|
return await this.internalResourcesProvider.hasResource(uri);
|
|
137
144
|
}
|
|
138
145
|
async read(uri) {
|
|
139
|
-
|
|
146
|
+
this.logger.debug(`\u{1F4D6} Reading resource: ${uri}`);
|
|
140
147
|
try {
|
|
141
148
|
if (uri.startsWith("mcp:")) {
|
|
142
149
|
const result2 = await this.mcpManager.readResource(uri);
|
|
143
|
-
|
|
150
|
+
this.logger.debug(`\u2705 Successfully read MCP resource: ${uri}`);
|
|
144
151
|
return result2;
|
|
145
152
|
}
|
|
146
153
|
if (uri.startsWith("blob:")) {
|
|
@@ -165,10 +172,10 @@ class ResourceManager {
|
|
|
165
172
|
throw import_errors.ResourceError.providerNotInitialized("Internal", uri);
|
|
166
173
|
}
|
|
167
174
|
const result = await this.internalResourcesProvider.readResource(uri);
|
|
168
|
-
|
|
175
|
+
this.logger.debug(`\u2705 Successfully read internal resource: ${uri}`);
|
|
169
176
|
return result;
|
|
170
177
|
} catch (error) {
|
|
171
|
-
|
|
178
|
+
this.logger.error(
|
|
172
179
|
`\u274C Failed to read resource '${uri}': ${error instanceof Error ? error.message : String(error)}`
|
|
173
180
|
);
|
|
174
181
|
throw error;
|
|
@@ -178,7 +185,7 @@ class ResourceManager {
|
|
|
178
185
|
if (this.internalResourcesProvider) {
|
|
179
186
|
await this.internalResourcesProvider.refresh();
|
|
180
187
|
}
|
|
181
|
-
|
|
188
|
+
this.logger.info("ResourceManager refreshed");
|
|
182
189
|
}
|
|
183
190
|
getInternalResourcesProvider() {
|
|
184
191
|
return this.internalResourcesProvider;
|
|
@@ -187,28 +194,30 @@ class ResourceManager {
|
|
|
187
194
|
* Set up listeners for MCP resource notifications to enable real-time updates
|
|
188
195
|
*/
|
|
189
196
|
setupNotificationListeners() {
|
|
190
|
-
import_events.eventBus.on("
|
|
191
|
-
|
|
197
|
+
import_events.eventBus.on("mcp:resource-updated", async (payload) => {
|
|
198
|
+
this.logger.debug(
|
|
192
199
|
`\u{1F504} Resource updated notification: ${payload.resourceUri} from server '${payload.serverName}'`
|
|
193
200
|
);
|
|
194
|
-
import_events.eventBus.emit("
|
|
201
|
+
import_events.eventBus.emit("resource:cache-invalidated", {
|
|
195
202
|
resourceUri: payload.resourceUri,
|
|
196
203
|
serverName: payload.serverName,
|
|
197
204
|
action: "updated"
|
|
198
205
|
});
|
|
199
206
|
});
|
|
200
|
-
import_events.eventBus.on("
|
|
207
|
+
import_events.eventBus.on("mcp:server-connected", async (payload) => {
|
|
201
208
|
if (payload.success) {
|
|
202
|
-
|
|
203
|
-
|
|
209
|
+
this.logger.debug(
|
|
210
|
+
`\u{1F504} Server connected, resources may have changed: ${payload.name}`
|
|
211
|
+
);
|
|
212
|
+
import_events.eventBus.emit("resource:cache-invalidated", {
|
|
204
213
|
serverName: payload.name,
|
|
205
214
|
action: "server_connected"
|
|
206
215
|
});
|
|
207
216
|
}
|
|
208
217
|
});
|
|
209
|
-
import_events.eventBus.on("
|
|
210
|
-
|
|
211
|
-
import_events.eventBus.emit("
|
|
218
|
+
import_events.eventBus.on("mcp:server-removed", async (payload) => {
|
|
219
|
+
this.logger.debug(`\u{1F504} Server removed, resources invalidated: ${payload.serverName}`);
|
|
220
|
+
import_events.eventBus.emit("resource:cache-invalidated", {
|
|
212
221
|
serverName: payload.serverName,
|
|
213
222
|
action: "server_removed"
|
|
214
223
|
});
|
|
@@ -3,6 +3,7 @@ import type { ResourceSet } from './types.js';
|
|
|
3
3
|
import { InternalResourcesProvider } from './internal-provider.js';
|
|
4
4
|
import type { ReadResourceResult } from '@modelcontextprotocol/sdk/types.js';
|
|
5
5
|
import type { ValidatedInternalResourcesConfig } from './schemas.js';
|
|
6
|
+
import type { IDextoLogger } from '../logger/v2/types.js';
|
|
6
7
|
import type { BlobStore } from '../storage/blob/types.js';
|
|
7
8
|
export interface ResourceManagerOptions {
|
|
8
9
|
internalResourcesConfig: ValidatedInternalResourcesConfig;
|
|
@@ -12,7 +13,8 @@ export declare class ResourceManager {
|
|
|
12
13
|
private readonly mcpManager;
|
|
13
14
|
private internalResourcesProvider?;
|
|
14
15
|
private readonly blobStore;
|
|
15
|
-
|
|
16
|
+
private logger;
|
|
17
|
+
constructor(mcpManager: MCPManager, options: ResourceManagerOptions, logger: IDextoLogger);
|
|
16
18
|
initialize(): Promise<void>;
|
|
17
19
|
getBlobStore(): BlobStore;
|
|
18
20
|
private deriveName;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/resources/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,YAAY,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/resources/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,YAAY,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,cAAc,CAAC;AAErE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAI1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAE1D,MAAM,WAAW,sBAAsB;IACnC,uBAAuB,EAAE,gCAAgC,CAAC;IAC1D,SAAS,EAAE,SAAS,CAAC;CACxB;AAED,qBAAa,eAAe;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,yBAAyB,CAAC,CAA4B;IAC9D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,MAAM,CAAe;gBAEjB,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,EAAE,YAAY;IA+BnF,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAOjC,YAAY,IAAI,SAAS;IAIzB,OAAO,CAAC,UAAU;IAMZ,IAAI,IAAI,OAAO,CAAC,WAAW,CAAC;IA6D5B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAqBlC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA4C9C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAO9B,4BAA4B,IAAI,yBAAyB,GAAG,SAAS;IAIrE;;OAEG;IACH,OAAO,CAAC,0BAA0B;CAoCrC"}
|