@dexto/core 1.3.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +53 -9
- package/dist/agent/DextoAgent.cjs +570 -210
- package/dist/agent/DextoAgent.d.ts +175 -35
- package/dist/agent/DextoAgent.d.ts.map +1 -1
- package/dist/agent/DextoAgent.js +568 -208
- package/dist/agent/agentCard.js +1 -1
- package/dist/agent/error-codes.cjs +1 -0
- package/dist/agent/error-codes.d.ts +2 -1
- package/dist/agent/error-codes.d.ts.map +1 -1
- package/dist/agent/error-codes.js +2 -1
- package/dist/agent/errors.cjs +13 -0
- package/dist/agent/errors.d.ts +4 -0
- package/dist/agent/errors.d.ts.map +1 -1
- package/dist/agent/errors.js +14 -1
- package/dist/agent/index.cjs +4 -1
- package/dist/agent/index.d.ts +2 -2
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/index.js +6 -2
- package/dist/agent/schemas.cjs +90 -68
- package/dist/agent/schemas.d.ts +5998 -146
- package/dist/agent/schemas.d.ts.map +1 -1
- package/dist/agent/schemas.js +90 -65
- package/dist/agent/state-manager.cjs +5 -5
- package/dist/agent/state-manager.d.ts +4 -4
- package/dist/agent/state-manager.js +6 -6
- package/dist/agent/types.d.ts +24 -10
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/approval/error-codes.js +1 -1
- package/dist/approval/errors.js +1 -1
- package/dist/approval/factory.js +1 -1
- package/dist/approval/index.js +1 -1
- package/dist/approval/manager.cjs +234 -4
- package/dist/approval/manager.d.ts +131 -4
- package/dist/approval/manager.d.ts.map +1 -1
- package/dist/approval/manager.js +225 -5
- package/dist/approval/schemas.cjs +57 -7
- package/dist/approval/schemas.d.ts +344 -33
- package/dist/approval/schemas.d.ts.map +1 -1
- package/dist/approval/schemas.js +54 -8
- package/dist/approval/types.cjs +1 -0
- package/dist/approval/types.d.ts +32 -1
- package/dist/approval/types.d.ts.map +1 -1
- package/dist/approval/types.js +2 -1
- package/dist/{chunk-C6A6W6XS.js → chunk-PTJYTZNU.js} +44 -1
- package/dist/context/compaction/factory.cjs +57 -0
- package/dist/context/compaction/factory.d.ts +17 -0
- package/dist/context/compaction/factory.d.ts.map +1 -0
- package/dist/context/compaction/factory.js +34 -0
- package/dist/context/compaction/index.cjs +49 -0
- package/dist/context/compaction/index.d.ts +11 -0
- package/dist/context/compaction/index.d.ts.map +1 -0
- package/dist/context/compaction/index.js +19 -0
- package/dist/context/compaction/overflow.cjs +43 -0
- package/dist/context/compaction/overflow.d.ts +33 -0
- package/dist/context/compaction/overflow.d.ts.map +1 -0
- package/dist/context/compaction/overflow.js +19 -0
- package/dist/context/compaction/provider.cjs +16 -0
- package/dist/context/compaction/provider.d.ts +48 -0
- package/dist/context/compaction/provider.d.ts.map +1 -0
- package/dist/context/compaction/providers/noop-provider.cjs +48 -0
- package/dist/context/compaction/providers/noop-provider.d.ts +24 -0
- package/dist/context/compaction/providers/noop-provider.d.ts.map +1 -0
- package/dist/context/compaction/providers/noop-provider.js +24 -0
- package/dist/context/compaction/providers/reactive-overflow-provider.cjs +61 -0
- package/dist/context/compaction/providers/reactive-overflow-provider.d.ts +36 -0
- package/dist/context/compaction/providers/reactive-overflow-provider.d.ts.map +1 -0
- package/dist/context/compaction/providers/reactive-overflow-provider.js +37 -0
- package/dist/{llm/tokenizer/factory.cjs → context/compaction/registry.cjs} +15 -20
- package/dist/context/compaction/registry.d.ts +19 -0
- package/dist/context/compaction/registry.d.ts.map +1 -0
- package/dist/context/compaction/registry.js +16 -0
- package/dist/context/compaction/schemas.cjs +38 -0
- package/dist/context/compaction/schemas.d.ts +24 -0
- package/dist/context/compaction/schemas.d.ts.map +1 -0
- package/dist/context/compaction/schemas.js +14 -0
- package/dist/{llm/tokenizer/types.cjs → context/compaction/strategies/noop.cjs} +12 -9
- package/dist/context/compaction/strategies/noop.d.ts +18 -0
- package/dist/context/compaction/strategies/noop.d.ts.map +1 -0
- package/dist/context/compaction/strategies/noop.js +13 -0
- package/dist/context/compaction/strategies/reactive-overflow.cjs +201 -0
- package/dist/context/compaction/strategies/reactive-overflow.d.ts +81 -0
- package/dist/context/compaction/strategies/reactive-overflow.d.ts.map +1 -0
- package/dist/context/compaction/strategies/reactive-overflow.js +178 -0
- package/dist/context/compaction/types.d.ts +20 -0
- package/dist/context/compaction/types.d.ts.map +1 -0
- package/dist/context/error-codes.cjs +7 -0
- package/dist/context/error-codes.d.ts +8 -1
- package/dist/context/error-codes.d.ts.map +1 -1
- package/dist/context/error-codes.js +8 -1
- package/dist/context/errors.cjs +68 -0
- package/dist/context/errors.d.ts +21 -0
- package/dist/context/errors.d.ts.map +1 -1
- package/dist/context/errors.js +69 -1
- package/dist/context/index.cjs +3 -1
- package/dist/context/index.d.ts +1 -0
- package/dist/context/index.d.ts.map +1 -1
- package/dist/context/index.js +2 -1
- package/dist/context/manager.cjs +280 -323
- package/dist/context/manager.d.ts +65 -111
- package/dist/context/manager.d.ts.map +1 -1
- package/dist/context/manager.js +280 -328
- package/dist/context/media-helpers.js +1 -1
- package/dist/context/types.cjs +49 -0
- package/dist/context/types.d.ts +187 -72
- package/dist/context/types.d.ts.map +1 -1
- package/dist/context/types.js +35 -0
- package/dist/context/utils.cjs +293 -290
- package/dist/context/utils.d.ts +32 -18
- package/dist/context/utils.d.ts.map +1 -1
- package/dist/context/utils.js +293 -290
- package/dist/errors/DextoBaseError.js +1 -1
- package/dist/errors/DextoRuntimeError.js +1 -1
- package/dist/errors/DextoValidationError.js +1 -1
- package/dist/errors/index.js +1 -1
- package/dist/errors/result-bridge.cjs +2 -3
- package/dist/errors/result-bridge.d.ts.map +1 -1
- package/dist/errors/result-bridge.js +3 -4
- package/dist/errors/types.js +1 -1
- package/dist/events/index.cjs +18 -1
- package/dist/events/index.d.ts +149 -12
- package/dist/events/index.d.ts.map +1 -1
- package/dist/events/index.js +19 -2
- package/dist/filesystem/error-codes.js +1 -1
- package/dist/filesystem/errors.js +1 -1
- package/dist/filesystem/filesystem-service.cjs +39 -0
- package/dist/filesystem/filesystem-service.d.ts +32 -0
- package/dist/filesystem/filesystem-service.d.ts.map +1 -1
- package/dist/filesystem/filesystem-service.js +40 -1
- package/dist/filesystem/index.d.ts +1 -1
- package/dist/filesystem/index.d.ts.map +1 -1
- package/dist/filesystem/index.js +1 -1
- package/dist/filesystem/path-validator.cjs +69 -1
- package/dist/filesystem/path-validator.d.ts +43 -2
- package/dist/filesystem/path-validator.d.ts.map +1 -1
- package/dist/filesystem/path-validator.js +70 -2
- package/dist/image/define-image.cjs +146 -0
- package/dist/image/define-image.d.ts +71 -0
- package/dist/image/define-image.d.ts.map +1 -0
- package/dist/image/define-image.js +121 -0
- package/dist/{llm/tokenizer/default.cjs → image/index.cjs} +10 -19
- package/dist/image/index.d.ts +53 -0
- package/dist/image/index.d.ts.map +1 -0
- package/dist/image/index.js +7 -0
- package/dist/image/types.d.ts +231 -0
- package/dist/image/types.d.ts.map +1 -0
- package/dist/image/types.js +0 -0
- package/dist/index.browser.cjs +23 -8
- package/dist/index.browser.d.ts +4 -3
- package/dist/index.browser.d.ts.map +1 -1
- package/dist/index.browser.js +20 -3
- package/dist/index.cjs +5 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/llm/error-codes.cjs +1 -1
- package/dist/llm/error-codes.d.ts +1 -1
- package/dist/llm/error-codes.d.ts.map +1 -1
- package/dist/llm/error-codes.js +2 -2
- package/dist/llm/errors.cjs +34 -10
- package/dist/llm/errors.d.ts +23 -11
- package/dist/llm/errors.d.ts.map +1 -1
- package/dist/llm/errors.js +36 -12
- package/dist/llm/executor/stream-processor.cjs +375 -0
- package/dist/llm/executor/stream-processor.d.ts +55 -0
- package/dist/llm/executor/stream-processor.d.ts.map +1 -0
- package/dist/llm/executor/stream-processor.js +352 -0
- package/dist/llm/executor/tool-output-truncator.cjs +75 -0
- package/dist/llm/executor/tool-output-truncator.d.ts +27 -0
- package/dist/llm/executor/tool-output-truncator.d.ts.map +1 -0
- package/dist/llm/executor/tool-output-truncator.js +48 -0
- package/dist/llm/executor/turn-executor.cjs +780 -0
- package/dist/llm/executor/turn-executor.d.ts +167 -0
- package/dist/llm/executor/turn-executor.d.ts.map +1 -0
- package/dist/llm/executor/turn-executor.js +711 -0
- package/dist/llm/executor/types.cjs +16 -0
- package/dist/llm/executor/types.d.ts +27 -0
- package/dist/llm/executor/types.d.ts.map +1 -0
- package/dist/llm/executor/types.js +0 -0
- package/dist/llm/formatters/vercel.cjs +26 -188
- package/dist/llm/formatters/vercel.d.ts +2 -14
- package/dist/llm/formatters/vercel.d.ts.map +1 -1
- package/dist/llm/formatters/vercel.js +25 -187
- package/dist/llm/index.cjs +18 -1
- package/dist/llm/index.d.ts +2 -0
- package/dist/llm/index.d.ts.map +1 -1
- package/dist/llm/index.js +14 -0
- package/dist/llm/providers/local/ai-sdk-adapter.cjs +308 -0
- package/dist/llm/providers/local/ai-sdk-adapter.d.ts +29 -0
- package/dist/llm/providers/local/ai-sdk-adapter.d.ts.map +1 -0
- package/dist/llm/providers/local/ai-sdk-adapter.js +278 -0
- package/dist/llm/providers/local/downloader.cjs +291 -0
- package/dist/llm/providers/local/downloader.d.ts +82 -0
- package/dist/llm/providers/local/downloader.d.ts.map +1 -0
- package/dist/llm/providers/local/downloader.js +251 -0
- package/dist/llm/providers/local/error-codes.cjs +57 -0
- package/dist/llm/providers/local/error-codes.d.ts +66 -0
- package/dist/llm/providers/local/error-codes.d.ts.map +1 -0
- package/dist/llm/providers/local/error-codes.js +34 -0
- package/dist/llm/providers/local/errors.cjs +240 -0
- package/dist/llm/providers/local/errors.d.ts +31 -0
- package/dist/llm/providers/local/errors.d.ts.map +1 -0
- package/dist/llm/providers/local/errors.js +217 -0
- package/dist/llm/providers/local/gpu-detector.cjs +214 -0
- package/dist/llm/providers/local/gpu-detector.d.ts +28 -0
- package/dist/llm/providers/local/gpu-detector.d.ts.map +1 -0
- package/dist/llm/providers/local/gpu-detector.js +178 -0
- package/dist/llm/providers/local/index.cjs +147 -0
- package/dist/llm/providers/local/index.d.ts +21 -0
- package/dist/llm/providers/local/index.d.ts.map +1 -0
- package/dist/llm/providers/local/index.js +126 -0
- package/dist/llm/providers/local/node-llama-provider.cjs +216 -0
- package/dist/llm/providers/local/node-llama-provider.d.ts +90 -0
- package/dist/llm/providers/local/node-llama-provider.d.ts.map +1 -0
- package/dist/llm/providers/local/node-llama-provider.js +176 -0
- package/dist/llm/providers/local/ollama-provider.cjs +230 -0
- package/dist/llm/providers/local/ollama-provider.d.ts +70 -0
- package/dist/llm/providers/local/ollama-provider.d.ts.map +1 -0
- package/dist/llm/providers/local/ollama-provider.js +198 -0
- package/dist/llm/providers/local/registry.cjs +343 -0
- package/dist/llm/providers/local/registry.d.ts +51 -0
- package/dist/llm/providers/local/registry.d.ts.map +1 -0
- package/dist/llm/providers/local/registry.js +312 -0
- package/dist/llm/providers/local/schemas.cjs +169 -0
- package/dist/llm/providers/local/schemas.d.ts +395 -0
- package/dist/llm/providers/local/schemas.d.ts.map +1 -0
- package/dist/llm/providers/local/schemas.js +133 -0
- package/dist/llm/providers/local/types.cjs +16 -0
- package/dist/llm/providers/local/types.d.ts +219 -0
- package/dist/llm/providers/local/types.d.ts.map +1 -0
- package/dist/llm/providers/local/types.js +0 -0
- package/dist/llm/providers/openrouter-model-registry.cjs +350 -0
- package/dist/llm/providers/openrouter-model-registry.d.ts +120 -0
- package/dist/llm/providers/openrouter-model-registry.d.ts.map +1 -0
- package/dist/llm/providers/openrouter-model-registry.js +309 -0
- package/dist/llm/registry.cjs +569 -52
- package/dist/llm/registry.d.ts +79 -39
- package/dist/llm/registry.d.ts.map +1 -1
- package/dist/llm/registry.js +564 -49
- package/dist/llm/resolver.cjs +62 -34
- package/dist/llm/resolver.d.ts +3 -3
- package/dist/llm/resolver.d.ts.map +1 -1
- package/dist/llm/resolver.js +69 -38
- package/dist/llm/schemas.cjs +92 -97
- package/dist/llm/schemas.d.ts +162 -39
- package/dist/llm/schemas.d.ts.map +1 -1
- package/dist/llm/schemas.js +93 -100
- package/dist/llm/services/factory.cjs +88 -103
- package/dist/llm/services/factory.d.ts +17 -4
- package/dist/llm/services/factory.d.ts.map +1 -1
- package/dist/llm/services/factory.js +87 -93
- package/dist/llm/services/test-utils.integration.cjs +28 -10
- package/dist/llm/services/test-utils.integration.d.ts +7 -1
- package/dist/llm/services/test-utils.integration.d.ts.map +1 -1
- package/dist/llm/services/test-utils.integration.js +33 -12
- package/dist/llm/services/types.d.ts +1 -28
- package/dist/llm/services/types.d.ts.map +1 -1
- package/dist/llm/services/vercel.cjs +58 -469
- package/dist/llm/services/vercel.d.ts +39 -21
- package/dist/llm/services/vercel.d.ts.map +1 -1
- package/dist/llm/services/vercel.js +60 -476
- package/dist/llm/types.cjs +11 -4
- package/dist/llm/types.d.ts +9 -9
- package/dist/llm/types.d.ts.map +1 -1
- package/dist/llm/types.js +12 -4
- package/dist/llm/validation.js +1 -1
- package/dist/logger/browser.js +1 -1
- package/dist/logger/factory.js +1 -1
- package/dist/logger/index.js +1 -1
- package/dist/logger/logger.js +1 -1
- package/dist/logger/v2/dexto-logger.cjs +34 -6
- package/dist/logger/v2/dexto-logger.d.ts +20 -2
- package/dist/logger/v2/dexto-logger.d.ts.map +1 -1
- package/dist/logger/v2/dexto-logger.js +35 -7
- package/dist/logger/v2/error-codes.js +1 -1
- package/dist/logger/v2/errors.js +1 -1
- package/dist/logger/v2/schemas.js +1 -1
- package/dist/logger/v2/test-utils.cjs +70 -0
- package/dist/logger/v2/test-utils.d.ts +17 -0
- package/dist/logger/v2/test-utils.d.ts.map +1 -0
- package/dist/logger/v2/test-utils.js +46 -0
- package/dist/logger/v2/transport-factory.js +1 -1
- package/dist/logger/v2/transports/console-transport.js +1 -1
- package/dist/logger/v2/transports/file-transport.cjs +6 -0
- package/dist/logger/v2/transports/file-transport.d.ts +4 -0
- package/dist/logger/v2/transports/file-transport.d.ts.map +1 -1
- package/dist/logger/v2/transports/file-transport.js +7 -1
- package/dist/logger/v2/types.cjs +1 -0
- package/dist/logger/v2/types.d.ts +18 -2
- package/dist/logger/v2/types.d.ts.map +1 -1
- package/dist/logger/v2/types.js +2 -1
- package/dist/mcp/error-codes.cjs +1 -0
- package/dist/mcp/error-codes.d.ts +1 -0
- package/dist/mcp/error-codes.d.ts.map +1 -1
- package/dist/mcp/error-codes.js +2 -1
- package/dist/mcp/errors.cjs +13 -0
- package/dist/mcp/errors.d.ts +7 -0
- package/dist/mcp/errors.d.ts.map +1 -1
- package/dist/mcp/errors.js +14 -1
- package/dist/mcp/manager.cjs +12 -0
- package/dist/mcp/manager.d.ts +17 -0
- package/dist/mcp/manager.d.ts.map +1 -1
- package/dist/mcp/manager.js +13 -1
- package/dist/mcp/mcp-client.cjs +0 -3
- package/dist/mcp/mcp-client.d.ts.map +1 -1
- package/dist/mcp/mcp-client.js +1 -4
- package/dist/mcp/resolver.js +1 -1
- package/dist/mcp/schemas.cjs +6 -0
- package/dist/mcp/schemas.d.ts +52 -0
- package/dist/mcp/schemas.d.ts.map +1 -1
- package/dist/mcp/schemas.js +6 -1
- package/dist/memory/error-codes.js +1 -1
- package/dist/memory/errors.js +1 -1
- package/dist/memory/index.js +1 -1
- package/dist/memory/manager.js +1 -1
- package/dist/memory/schemas.d.ts +3 -3
- package/dist/memory/schemas.js +1 -1
- package/dist/plugins/builtins/content-policy.js +1 -1
- package/dist/plugins/builtins/response-sanitizer.js +1 -1
- package/dist/plugins/error-codes.cjs +3 -0
- package/dist/plugins/error-codes.d.ts +7 -1
- package/dist/plugins/error-codes.d.ts.map +1 -1
- package/dist/plugins/error-codes.js +4 -1
- package/dist/plugins/index.cjs +7 -0
- package/dist/plugins/index.d.ts +4 -2
- package/dist/plugins/index.d.ts.map +1 -1
- package/dist/plugins/index.js +7 -2
- package/dist/plugins/loader.js +1 -1
- package/dist/plugins/manager.cjs +92 -7
- package/dist/plugins/manager.d.ts +10 -3
- package/dist/plugins/manager.d.ts.map +1 -1
- package/dist/plugins/manager.js +93 -8
- package/dist/plugins/registrations/builtins.js +1 -1
- package/dist/plugins/registry.cjs +63 -0
- package/dist/plugins/registry.d.ts +101 -0
- package/dist/plugins/registry.d.ts.map +1 -0
- package/dist/plugins/registry.js +39 -0
- package/dist/plugins/schemas.cjs +17 -5
- package/dist/plugins/schemas.d.ts +65 -8
- package/dist/plugins/schemas.d.ts.map +1 -1
- package/dist/plugins/schemas.js +16 -5
- package/dist/plugins/types.d.ts +0 -1
- package/dist/plugins/types.d.ts.map +1 -1
- package/dist/process/command-validator.js +1 -1
- package/dist/process/error-codes.js +1 -1
- package/dist/process/errors.js +1 -1
- package/dist/process/index.js +1 -1
- package/dist/process/process-service.cjs +78 -26
- package/dist/process/process-service.d.ts +6 -1
- package/dist/process/process-service.d.ts.map +1 -1
- package/dist/process/process-service.js +79 -27
- package/dist/process/types.d.ts +2 -2
- package/dist/process/types.d.ts.map +1 -1
- package/dist/prompts/error-codes.cjs +1 -0
- package/dist/prompts/error-codes.d.ts +2 -1
- package/dist/prompts/error-codes.d.ts.map +1 -1
- package/dist/prompts/error-codes.js +2 -1
- package/dist/prompts/errors.cjs +15 -0
- package/dist/prompts/errors.d.ts +4 -0
- package/dist/prompts/errors.d.ts.map +1 -1
- package/dist/prompts/errors.js +16 -1
- package/dist/prompts/index.js +1 -1
- package/dist/prompts/name-validation.js +1 -1
- package/dist/prompts/prompt-manager.cjs +13 -2
- package/dist/prompts/prompt-manager.d.ts +7 -0
- package/dist/prompts/prompt-manager.d.ts.map +1 -1
- package/dist/prompts/prompt-manager.js +14 -3
- package/dist/prompts/providers/config-prompt-provider.cjs +12 -3
- package/dist/prompts/providers/config-prompt-provider.d.ts +2 -1
- package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -1
- package/dist/prompts/providers/config-prompt-provider.js +13 -4
- package/dist/prompts/providers/custom-prompt-provider.js +1 -1
- package/dist/prompts/providers/mcp-prompt-provider.js +1 -1
- package/dist/prompts/schemas.d.ts +12 -0
- package/dist/prompts/schemas.d.ts.map +1 -1
- package/dist/prompts/schemas.js +1 -1
- package/dist/prompts/types.d.ts +2 -0
- package/dist/prompts/types.d.ts.map +1 -1
- package/dist/prompts/utils.js +1 -1
- package/dist/providers/base-registry.cjs +147 -0
- package/dist/providers/base-registry.d.ts +147 -0
- package/dist/providers/base-registry.d.ts.map +1 -0
- package/dist/providers/base-registry.js +123 -0
- package/dist/providers/discovery.cjs +95 -0
- package/dist/providers/discovery.d.ts +94 -0
- package/dist/providers/discovery.d.ts.map +1 -0
- package/dist/providers/discovery.js +70 -0
- package/dist/providers/index.cjs +24 -0
- package/dist/providers/index.d.ts +32 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +2 -0
- package/dist/resources/error-codes.js +1 -1
- package/dist/resources/errors.js +1 -1
- package/dist/resources/handlers/blob-handler.js +1 -1
- package/dist/resources/handlers/factory.js +1 -1
- package/dist/resources/handlers/filesystem-handler.js +1 -1
- package/dist/resources/index.js +1 -1
- package/dist/resources/internal-provider.js +1 -1
- package/dist/resources/manager.js +1 -1
- package/dist/resources/reference-parser.cjs +3 -3
- package/dist/resources/reference-parser.d.ts.map +1 -1
- package/dist/resources/reference-parser.js +4 -4
- package/dist/resources/schemas.js +1 -1
- package/dist/search/index.js +1 -1
- package/dist/search/search-service.js +1 -1
- package/dist/session/chat-session.cjs +169 -54
- package/dist/session/chat-session.d.ts +69 -29
- package/dist/session/chat-session.d.ts.map +1 -1
- package/dist/session/chat-session.js +171 -56
- package/dist/session/error-codes.js +1 -1
- package/dist/session/errors.js +1 -1
- package/dist/session/history/database.cjs +134 -21
- package/dist/session/history/database.d.ts +37 -8
- package/dist/session/history/database.d.ts.map +1 -1
- package/dist/session/history/database.js +135 -22
- package/dist/session/history/factory.js +1 -1
- package/dist/session/history/memory.cjs +18 -0
- package/dist/session/history/memory.d.ts +8 -0
- package/dist/session/history/memory.d.ts.map +1 -1
- package/dist/session/history/memory.js +19 -1
- package/dist/session/history/types.d.ts +13 -1
- package/dist/session/history/types.d.ts.map +1 -1
- package/dist/session/index.cjs +3 -0
- package/dist/session/index.d.ts +3 -0
- package/dist/session/index.d.ts.map +1 -1
- package/dist/session/index.js +3 -1
- package/dist/session/message-queue.cjs +201 -0
- package/dist/session/message-queue.d.ts +114 -0
- package/dist/session/message-queue.d.ts.map +1 -0
- package/dist/session/message-queue.js +178 -0
- package/dist/session/schemas.js +1 -1
- package/dist/session/session-manager.cjs +57 -7
- package/dist/session/session-manager.d.ts +18 -0
- package/dist/session/session-manager.d.ts.map +1 -1
- package/dist/session/session-manager.js +58 -8
- package/dist/session/title-generator.cjs +4 -8
- package/dist/session/title-generator.d.ts +1 -2
- package/dist/session/title-generator.d.ts.map +1 -1
- package/dist/session/title-generator.js +5 -9
- package/dist/session/types.cjs +16 -0
- package/dist/session/types.d.ts +14 -0
- package/dist/session/types.d.ts.map +1 -0
- package/dist/session/types.js +0 -0
- package/dist/storage/blob/factory.cjs +8 -11
- package/dist/storage/blob/factory.d.ts +32 -6
- package/dist/storage/blob/factory.d.ts.map +1 -1
- package/dist/storage/blob/factory.js +9 -12
- package/dist/storage/blob/index.cjs +56 -0
- package/dist/storage/blob/index.d.ts +45 -0
- package/dist/storage/blob/index.d.ts.map +1 -0
- package/dist/storage/blob/index.js +30 -0
- package/dist/storage/blob/local-blob-store.js +1 -1
- package/dist/storage/blob/memory-blob-store.js +1 -1
- package/dist/storage/blob/provider.cjs +16 -0
- package/dist/storage/blob/provider.d.ts +50 -0
- package/dist/storage/blob/provider.d.ts.map +1 -0
- package/dist/storage/blob/provider.js +0 -0
- package/dist/storage/blob/providers/index.cjs +31 -0
- package/dist/storage/blob/providers/index.d.ts +8 -0
- package/dist/storage/blob/providers/index.d.ts.map +1 -0
- package/dist/storage/blob/providers/index.js +7 -0
- package/dist/storage/blob/providers/local.cjs +39 -0
- package/dist/storage/blob/providers/local.d.ts +17 -0
- package/dist/storage/blob/providers/local.d.ts.map +1 -0
- package/dist/storage/blob/providers/local.js +16 -0
- package/dist/storage/blob/providers/memory.cjs +39 -0
- package/dist/storage/blob/providers/memory.d.ts +17 -0
- package/dist/storage/blob/providers/memory.d.ts.map +1 -0
- package/dist/storage/blob/providers/memory.js +16 -0
- package/dist/storage/blob/registry.cjs +50 -0
- package/dist/storage/blob/registry.d.ts +42 -0
- package/dist/storage/blob/registry.d.ts.map +1 -0
- package/dist/storage/blob/registry.js +26 -0
- package/dist/storage/blob/schemas.cjs +9 -12
- package/dist/storage/blob/schemas.d.ts +39 -34
- package/dist/storage/blob/schemas.d.ts.map +1 -1
- package/dist/storage/blob/schemas.js +7 -12
- package/dist/storage/cache/factory.cjs +8 -36
- package/dist/storage/cache/factory.d.ts +32 -7
- package/dist/storage/cache/factory.d.ts.map +1 -1
- package/dist/storage/cache/factory.js +9 -27
- package/dist/storage/cache/index.cjs +53 -0
- package/dist/storage/cache/index.d.ts +44 -0
- package/dist/storage/cache/index.d.ts.map +1 -0
- package/dist/storage/cache/index.js +28 -0
- package/dist/storage/cache/memory-cache-store.js +1 -1
- package/dist/storage/cache/provider.cjs +16 -0
- package/dist/storage/cache/provider.d.ts +56 -0
- package/dist/storage/cache/provider.d.ts.map +1 -0
- package/dist/storage/cache/provider.js +0 -0
- package/dist/storage/cache/providers/index.cjs +31 -0
- package/dist/storage/cache/providers/index.d.ts +8 -0
- package/dist/storage/cache/providers/index.d.ts.map +1 -0
- package/dist/storage/cache/providers/index.js +7 -0
- package/dist/storage/cache/providers/memory.cjs +40 -0
- package/dist/storage/cache/providers/memory.d.ts +17 -0
- package/dist/storage/cache/providers/memory.d.ts.map +1 -0
- package/dist/storage/cache/providers/memory.js +17 -0
- package/dist/storage/cache/providers/redis.cjs +66 -0
- package/dist/storage/cache/providers/redis.d.ts +20 -0
- package/dist/storage/cache/providers/redis.d.ts.map +1 -0
- package/dist/storage/cache/providers/redis.js +33 -0
- package/dist/storage/cache/redis-store.js +1 -1
- package/dist/{llm/tokenizer/google.cjs → storage/cache/registry.cjs} +23 -25
- package/dist/storage/cache/registry.d.ts +42 -0
- package/dist/storage/cache/registry.d.ts.map +1 -0
- package/dist/storage/cache/registry.js +26 -0
- package/dist/storage/cache/schemas.cjs +6 -2
- package/dist/storage/cache/schemas.d.ts +2 -3
- package/dist/storage/cache/schemas.d.ts.map +1 -1
- package/dist/storage/cache/schemas.js +4 -2
- package/dist/storage/database/factory.cjs +8 -47
- package/dist/storage/database/factory.d.ts +34 -8
- package/dist/storage/database/factory.d.ts.map +1 -1
- package/dist/storage/database/factory.js +9 -38
- package/dist/storage/database/index.cjs +58 -0
- package/dist/storage/database/index.d.ts +45 -0
- package/dist/storage/database/index.d.ts.map +1 -0
- package/dist/storage/database/index.js +37 -0
- package/dist/storage/database/memory-database-store.js +1 -1
- package/dist/storage/database/postgres-store.cjs +12 -0
- package/dist/storage/database/postgres-store.d.ts.map +1 -1
- package/dist/storage/database/postgres-store.js +13 -1
- package/dist/storage/database/provider.cjs +16 -0
- package/dist/storage/database/provider.d.ts +56 -0
- package/dist/storage/database/provider.d.ts.map +1 -0
- package/dist/storage/database/provider.js +0 -0
- package/dist/storage/database/providers/index.cjs +34 -0
- package/dist/storage/database/providers/index.d.ts +9 -0
- package/dist/storage/database/providers/index.d.ts.map +1 -0
- package/dist/storage/database/providers/index.js +9 -0
- package/dist/storage/database/providers/memory.cjs +40 -0
- package/dist/storage/database/providers/memory.d.ts +16 -0
- package/dist/storage/database/providers/memory.d.ts.map +1 -0
- package/dist/storage/database/providers/memory.js +17 -0
- package/dist/storage/database/providers/postgres.cjs +62 -0
- package/dist/storage/database/providers/postgres.d.ts +19 -0
- package/dist/storage/database/providers/postgres.d.ts.map +1 -0
- package/dist/storage/database/providers/postgres.js +29 -0
- package/dist/storage/database/providers/sqlite.cjs +66 -0
- package/dist/storage/database/providers/sqlite.d.ts +20 -0
- package/dist/storage/database/providers/sqlite.d.ts.map +1 -0
- package/dist/storage/database/providers/sqlite.js +33 -0
- package/dist/storage/database/registry.cjs +50 -0
- package/dist/storage/database/registry.d.ts +42 -0
- package/dist/storage/database/registry.d.ts.map +1 -0
- package/dist/storage/database/registry.js +26 -0
- package/dist/storage/database/schemas.cjs +8 -2
- package/dist/storage/database/schemas.d.ts +3 -4
- package/dist/storage/database/schemas.d.ts.map +1 -1
- package/dist/storage/database/schemas.js +5 -2
- package/dist/storage/database/sqlite-store.js +1 -1
- package/dist/storage/error-codes.cjs +6 -0
- package/dist/storage/error-codes.d.ts +7 -1
- package/dist/storage/error-codes.d.ts.map +1 -1
- package/dist/storage/error-codes.js +7 -1
- package/dist/storage/errors.cjs +80 -0
- package/dist/storage/errors.d.ts +24 -0
- package/dist/storage/errors.d.ts.map +1 -1
- package/dist/storage/errors.js +81 -1
- package/dist/storage/index.cjs +47 -4
- package/dist/storage/index.d.ts +34 -8
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +33 -4
- package/dist/storage/schemas.cjs +4 -0
- package/dist/storage/schemas.d.ts +17 -50
- package/dist/storage/schemas.d.ts.map +1 -1
- package/dist/storage/schemas.js +6 -2
- package/dist/storage/storage-manager.cjs +6 -6
- package/dist/storage/storage-manager.d.ts.map +1 -1
- package/dist/storage/storage-manager.js +4 -4
- package/dist/systemPrompt/contributors.js +1 -1
- package/dist/systemPrompt/error-codes.js +1 -1
- package/dist/systemPrompt/errors.js +1 -1
- package/dist/systemPrompt/in-built-prompts.cjs +7 -6
- package/dist/systemPrompt/in-built-prompts.d.ts +2 -2
- package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -1
- package/dist/systemPrompt/in-built-prompts.js +7 -6
- package/dist/systemPrompt/index.js +1 -1
- package/dist/systemPrompt/manager.js +1 -1
- package/dist/systemPrompt/registry.cjs +2 -2
- package/dist/systemPrompt/registry.d.ts +1 -1
- package/dist/systemPrompt/registry.d.ts.map +1 -1
- package/dist/systemPrompt/registry.js +3 -3
- package/dist/systemPrompt/schemas.cjs +2 -2
- package/dist/systemPrompt/schemas.d.ts +18 -18
- package/dist/systemPrompt/schemas.js +3 -3
- package/dist/telemetry/decorators.js +1 -1
- package/dist/telemetry/error-codes.js +1 -1
- package/dist/telemetry/errors.js +1 -1
- package/dist/telemetry/exporters.js +1 -1
- package/dist/telemetry/index.js +1 -1
- package/dist/telemetry/schemas.js +1 -1
- package/dist/telemetry/telemetry.js +1 -1
- package/dist/telemetry/utils.js +1 -1
- package/dist/tools/bash-pattern-utils.cjs +91 -0
- package/dist/tools/bash-pattern-utils.d.ts +58 -0
- package/dist/tools/bash-pattern-utils.d.ts.map +1 -0
- package/dist/tools/bash-pattern-utils.js +64 -0
- package/dist/tools/confirmation/allowed-tools-provider/factory.js +1 -1
- package/dist/tools/confirmation/allowed-tools-provider/in-memory.js +1 -1
- package/dist/tools/confirmation/allowed-tools-provider/storage.js +1 -1
- package/dist/tools/custom-tool-registry.cjs +64 -0
- package/dist/tools/custom-tool-registry.d.ts +120 -0
- package/dist/tools/custom-tool-registry.d.ts.map +1 -0
- package/dist/tools/custom-tool-registry.js +40 -0
- package/dist/tools/custom-tool-schema-registry.cjs +164 -0
- package/dist/tools/custom-tool-schema-registry.d.ts +86 -0
- package/dist/tools/custom-tool-schema-registry.d.ts.map +1 -0
- package/dist/tools/custom-tool-schema-registry.js +140 -0
- package/dist/tools/display-types.cjs +60 -0
- package/dist/tools/display-types.d.ts +133 -0
- package/dist/tools/display-types.d.ts.map +1 -0
- package/dist/tools/display-types.js +32 -0
- package/dist/tools/error-codes.cjs +5 -0
- package/dist/tools/error-codes.d.ts +6 -1
- package/dist/tools/error-codes.d.ts.map +1 -1
- package/dist/tools/error-codes.js +6 -1
- package/dist/tools/errors.cjs +71 -0
- package/dist/tools/errors.d.ts +33 -0
- package/dist/tools/errors.d.ts.map +1 -1
- package/dist/tools/errors.js +72 -1
- package/dist/tools/index.cjs +15 -1
- package/dist/tools/index.d.ts +5 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +13 -2
- package/dist/tools/internal-tools/constants.cjs +3 -9
- 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 +4 -10
- package/dist/tools/internal-tools/implementations/ask-user-tool.cjs +1 -1
- package/dist/tools/internal-tools/implementations/ask-user-tool.js +2 -2
- package/dist/tools/internal-tools/implementations/delegate-to-url-tool.js +1 -1
- package/dist/tools/internal-tools/implementations/get-resource-tool.cjs +113 -0
- package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts +30 -0
- package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts.map +1 -0
- package/dist/tools/internal-tools/implementations/get-resource-tool.js +90 -0
- package/dist/tools/internal-tools/implementations/list-resources-tool.cjs +91 -0
- package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts +24 -0
- package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts.map +1 -0
- package/dist/tools/internal-tools/implementations/list-resources-tool.js +68 -0
- package/dist/tools/internal-tools/implementations/search-history-tool.js +1 -1
- package/dist/tools/internal-tools/provider.cjs +175 -31
- package/dist/tools/internal-tools/provider.d.ts +62 -14
- package/dist/tools/internal-tools/provider.d.ts.map +1 -1
- package/dist/tools/internal-tools/provider.js +176 -32
- package/dist/tools/internal-tools/registry.cjs +19 -43
- package/dist/tools/internal-tools/registry.d.ts +32 -11
- package/dist/tools/internal-tools/registry.d.ts.map +1 -1
- package/dist/tools/internal-tools/registry.js +20 -44
- package/dist/tools/schemas.cjs +36 -6
- package/dist/tools/schemas.d.ts +74 -5
- package/dist/tools/schemas.d.ts.map +1 -1
- package/dist/tools/schemas.js +30 -6
- package/dist/tools/tool-manager.cjs +279 -30
- package/dist/tools/tool-manager.d.ts +45 -4
- package/dist/tools/tool-manager.d.ts.map +1 -1
- package/dist/tools/tool-manager.js +284 -31
- package/dist/tools/types.d.ts +63 -0
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/utils/api-key-resolver.cjs +19 -1
- package/dist/utils/api-key-resolver.d.ts.map +1 -1
- package/dist/utils/api-key-resolver.js +20 -2
- package/dist/utils/async-context.js +1 -1
- package/dist/utils/debug.js +1 -1
- package/dist/{llm/tokenizer/anthropic.cjs → utils/defer.cjs} +19 -20
- package/dist/utils/defer.d.ts +63 -0
- package/dist/utils/defer.d.ts.map +1 -0
- package/dist/utils/defer.js +19 -0
- package/dist/utils/error-conversion.js +1 -1
- package/dist/utils/execution-context.js +1 -1
- package/dist/utils/fs-walk.js +1 -1
- package/dist/utils/index.cjs +3 -3
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/path.js +1 -1
- package/dist/utils/redactor.cjs +18 -3
- package/dist/utils/redactor.d.ts +0 -7
- package/dist/utils/redactor.d.ts.map +1 -1
- package/dist/utils/redactor.js +19 -4
- package/dist/utils/result.js +1 -1
- package/dist/utils/safe-stringify.js +1 -1
- package/dist/utils/schema-metadata.js +1 -1
- package/dist/utils/schema.js +1 -1
- package/dist/utils/service-initializer.cjs +15 -37
- package/dist/utils/service-initializer.d.ts.map +1 -1
- package/dist/utils/service-initializer.js +16 -38
- package/dist/utils/user-info.js +1 -1
- package/dist/utils/zod-schema-converter.js +1 -1
- package/package.json +10 -8
- package/dist/context/compression/middle-removal.cjs +0 -95
- package/dist/context/compression/middle-removal.d.ts +0 -47
- package/dist/context/compression/middle-removal.d.ts.map +0 -1
- package/dist/context/compression/middle-removal.js +0 -72
- package/dist/context/compression/oldest-removal.cjs +0 -83
- package/dist/context/compression/oldest-removal.d.ts +0 -42
- package/dist/context/compression/oldest-removal.d.ts.map +0 -1
- package/dist/context/compression/oldest-removal.js +0 -60
- package/dist/context/compression/types.d.ts +0 -18
- package/dist/context/compression/types.d.ts.map +0 -1
- package/dist/llm/formatters/anthropic.cjs +0 -257
- package/dist/llm/formatters/anthropic.d.ts +0 -46
- package/dist/llm/formatters/anthropic.d.ts.map +0 -1
- package/dist/llm/formatters/anthropic.js +0 -239
- package/dist/llm/formatters/factory.cjs +0 -50
- package/dist/llm/formatters/factory.d.ts +0 -10
- package/dist/llm/formatters/factory.d.ts.map +0 -1
- package/dist/llm/formatters/factory.js +0 -27
- package/dist/llm/formatters/openai.cjs +0 -203
- package/dist/llm/formatters/openai.d.ts +0 -39
- package/dist/llm/formatters/openai.d.ts.map +0 -1
- package/dist/llm/formatters/openai.js +0 -184
- package/dist/llm/formatters/types.d.ts +0 -41
- package/dist/llm/formatters/types.d.ts.map +0 -1
- package/dist/llm/services/anthropic.cjs +0 -511
- package/dist/llm/services/anthropic.d.ts +0 -48
- package/dist/llm/services/anthropic.d.ts.map +0 -1
- package/dist/llm/services/anthropic.js +0 -447
- package/dist/llm/services/openai.cjs +0 -611
- package/dist/llm/services/openai.d.ts +0 -48
- package/dist/llm/services/openai.d.ts.map +0 -1
- package/dist/llm/services/openai.js +0 -547
- package/dist/llm/tokenizer/anthropic.d.ts +0 -19
- package/dist/llm/tokenizer/anthropic.d.ts.map +0 -1
- package/dist/llm/tokenizer/anthropic.js +0 -20
- package/dist/llm/tokenizer/default.d.ts +0 -14
- package/dist/llm/tokenizer/default.d.ts.map +0 -1
- package/dist/llm/tokenizer/default.js +0 -18
- package/dist/llm/tokenizer/factory.d.ts +0 -12
- package/dist/llm/tokenizer/factory.d.ts.map +0 -1
- package/dist/llm/tokenizer/factory.js +0 -21
- package/dist/llm/tokenizer/google.d.ts +0 -29
- package/dist/llm/tokenizer/google.d.ts.map +0 -1
- package/dist/llm/tokenizer/google.js +0 -29
- package/dist/llm/tokenizer/openai.cjs +0 -115
- package/dist/llm/tokenizer/openai.d.ts +0 -41
- package/dist/llm/tokenizer/openai.d.ts.map +0 -1
- package/dist/llm/tokenizer/openai.js +0 -91
- package/dist/llm/tokenizer/types.d.ts +0 -18
- package/dist/llm/tokenizer/types.d.ts.map +0 -1
- package/dist/llm/tokenizer/types.js +0 -10
- package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +0 -106
- package/dist/tools/internal-tools/implementations/bash-exec-tool.d.ts +0 -13
- package/dist/tools/internal-tools/implementations/bash-exec-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/bash-exec-tool.js +0 -73
- package/dist/tools/internal-tools/implementations/bash-output-tool.cjs +0 -49
- package/dist/tools/internal-tools/implementations/bash-output-tool.d.ts +0 -12
- package/dist/tools/internal-tools/implementations/bash-output-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/bash-output-tool.js +0 -26
- package/dist/tools/internal-tools/implementations/edit-file-tool.cjs +0 -62
- package/dist/tools/internal-tools/implementations/edit-file-tool.d.ts +0 -12
- package/dist/tools/internal-tools/implementations/edit-file-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/edit-file-tool.js +0 -39
- package/dist/tools/internal-tools/implementations/glob-files-tool.cjs +0 -57
- package/dist/tools/internal-tools/implementations/glob-files-tool.d.ts +0 -12
- package/dist/tools/internal-tools/implementations/glob-files-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/glob-files-tool.js +0 -34
- package/dist/tools/internal-tools/implementations/grep-content-tool.cjs +0 -71
- package/dist/tools/internal-tools/implementations/grep-content-tool.d.ts +0 -12
- package/dist/tools/internal-tools/implementations/grep-content-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/grep-content-tool.js +0 -48
- package/dist/tools/internal-tools/implementations/kill-process-tool.cjs +0 -47
- package/dist/tools/internal-tools/implementations/kill-process-tool.d.ts +0 -12
- package/dist/tools/internal-tools/implementations/kill-process-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/kill-process-tool.js +0 -24
- package/dist/tools/internal-tools/implementations/read-file-tool.cjs +0 -55
- package/dist/tools/internal-tools/implementations/read-file-tool.d.ts +0 -12
- package/dist/tools/internal-tools/implementations/read-file-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/read-file-tool.js +0 -32
- package/dist/tools/internal-tools/implementations/write-file-tool.cjs +0 -56
- package/dist/tools/internal-tools/implementations/write-file-tool.d.ts +0 -12
- package/dist/tools/internal-tools/implementations/write-file-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/write-file-tool.js +0 -33
- package/dist/utils/env-file.cjs +0 -118
- package/dist/utils/env-file.d.ts +0 -5
- package/dist/utils/env-file.d.ts.map +0 -1
- package/dist/utils/env-file.js +0 -85
- /package/dist/context/{compression/types.js → compaction/provider.js} +0 -0
- /package/dist/context/{compression → compaction}/types.cjs +0 -0
- /package/dist/{llm/formatters → context/compaction}/types.js +0 -0
- /package/dist/{llm/formatters → image}/types.cjs +0 -0
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var base_registry_exports = {};
|
|
20
|
+
__export(base_registry_exports, {
|
|
21
|
+
BaseRegistry: () => BaseRegistry,
|
|
22
|
+
defaultErrorFactory: () => defaultErrorFactory
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(base_registry_exports);
|
|
25
|
+
var import_zod = require("zod");
|
|
26
|
+
const defaultErrorFactory = {
|
|
27
|
+
alreadyRegistered: (type) => new Error(`Provider '${type}' is already registered`),
|
|
28
|
+
notFound: (type, availableTypes) => new Error(
|
|
29
|
+
`Provider '${type}' not found. Available: ${availableTypes.join(", ") || "none"}`
|
|
30
|
+
)
|
|
31
|
+
};
|
|
32
|
+
class BaseRegistry {
|
|
33
|
+
providers = /* @__PURE__ */ new Map();
|
|
34
|
+
errorFactory;
|
|
35
|
+
/**
|
|
36
|
+
* Create a new registry instance.
|
|
37
|
+
*
|
|
38
|
+
* @param errorFactory - Optional custom error factory for registry errors.
|
|
39
|
+
* If not provided, uses default Error instances.
|
|
40
|
+
*/
|
|
41
|
+
constructor(errorFactory = defaultErrorFactory) {
|
|
42
|
+
this.errorFactory = errorFactory;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Register a provider.
|
|
46
|
+
*
|
|
47
|
+
* @param provider - The provider to register
|
|
48
|
+
* @throws Error if a provider with the same type is already registered
|
|
49
|
+
*/
|
|
50
|
+
register(provider) {
|
|
51
|
+
if (this.providers.has(provider.type)) {
|
|
52
|
+
throw this.errorFactory.alreadyRegistered(provider.type);
|
|
53
|
+
}
|
|
54
|
+
this.providers.set(provider.type, provider);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Unregister a provider.
|
|
58
|
+
*
|
|
59
|
+
* @param type - The provider type to unregister
|
|
60
|
+
* @returns true if the provider was unregistered, false if it wasn't registered
|
|
61
|
+
*/
|
|
62
|
+
unregister(type) {
|
|
63
|
+
return this.providers.delete(type);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Get a registered provider by type.
|
|
67
|
+
*
|
|
68
|
+
* @param type - The provider type identifier
|
|
69
|
+
* @returns The provider if found, undefined otherwise
|
|
70
|
+
*/
|
|
71
|
+
get(type) {
|
|
72
|
+
return this.providers.get(type);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Check if a provider is registered.
|
|
76
|
+
*
|
|
77
|
+
* @param type - The provider type identifier
|
|
78
|
+
* @returns true if registered, false otherwise
|
|
79
|
+
*/
|
|
80
|
+
has(type) {
|
|
81
|
+
return this.providers.has(type);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Get all registered provider types.
|
|
85
|
+
*
|
|
86
|
+
* @returns Array of provider type identifiers
|
|
87
|
+
*/
|
|
88
|
+
getTypes() {
|
|
89
|
+
return Array.from(this.providers.keys());
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Get all registered providers.
|
|
93
|
+
*
|
|
94
|
+
* @returns Array of providers
|
|
95
|
+
*/
|
|
96
|
+
getAll() {
|
|
97
|
+
return Array.from(this.providers.values());
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Get the number of registered providers.
|
|
101
|
+
*
|
|
102
|
+
* @returns Count of registered providers
|
|
103
|
+
*/
|
|
104
|
+
get size() {
|
|
105
|
+
return this.providers.size;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Clear all registered providers.
|
|
109
|
+
* Primarily useful for testing.
|
|
110
|
+
*/
|
|
111
|
+
clear() {
|
|
112
|
+
this.providers.clear();
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Validate a configuration against a provider's schema.
|
|
116
|
+
*
|
|
117
|
+
* This method is only available for registries with providers that have
|
|
118
|
+
* a configSchema property. It:
|
|
119
|
+
* 1. Extracts the 'type' field to identify the provider
|
|
120
|
+
* 2. Looks up the provider in the registry
|
|
121
|
+
* 3. Validates the full config against the provider's schema
|
|
122
|
+
* 4. Returns the validated configuration
|
|
123
|
+
*
|
|
124
|
+
* @param config - Raw configuration object with a 'type' field
|
|
125
|
+
* @returns Validated configuration object
|
|
126
|
+
* @throws Error if type is missing, provider not found, or validation fails
|
|
127
|
+
*/
|
|
128
|
+
validateConfig(config) {
|
|
129
|
+
const typeSchema = import_zod.z.object({ type: import_zod.z.string() }).passthrough();
|
|
130
|
+
const parsed = typeSchema.parse(config);
|
|
131
|
+
const provider = this.providers.get(parsed.type);
|
|
132
|
+
if (!provider) {
|
|
133
|
+
throw this.errorFactory.notFound(parsed.type, this.getTypes());
|
|
134
|
+
}
|
|
135
|
+
if (!("configSchema" in provider) || !provider.configSchema) {
|
|
136
|
+
throw new Error(
|
|
137
|
+
`Provider '${parsed.type}' does not support config validation (no configSchema)`
|
|
138
|
+
);
|
|
139
|
+
}
|
|
140
|
+
return provider.configSchema.parse(config);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
144
|
+
0 && (module.exports = {
|
|
145
|
+
BaseRegistry,
|
|
146
|
+
defaultErrorFactory
|
|
147
|
+
});
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* Base provider interface - all providers must have a type identifier.
|
|
4
|
+
*/
|
|
5
|
+
export interface BaseProvider {
|
|
6
|
+
/** Unique type identifier for this provider */
|
|
7
|
+
type: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Provider with config schema - for providers that support validateConfig.
|
|
11
|
+
*/
|
|
12
|
+
export interface ConfigurableProvider extends BaseProvider {
|
|
13
|
+
/** Zod schema for validating provider configuration */
|
|
14
|
+
configSchema: z.ZodType<any, any, any>;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Error factory interface for customizing registry errors.
|
|
18
|
+
* Each registry can provide its own error implementations.
|
|
19
|
+
*/
|
|
20
|
+
export interface RegistryErrorFactory {
|
|
21
|
+
/** Called when attempting to register a provider that already exists */
|
|
22
|
+
alreadyRegistered(type: string): Error;
|
|
23
|
+
/** Called when looking up a provider that doesn't exist (for validateConfig) */
|
|
24
|
+
notFound(type: string, availableTypes: string[]): Error;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Default error factory that throws plain Error instances.
|
|
28
|
+
* Used when no custom error factory is provided.
|
|
29
|
+
*/
|
|
30
|
+
export declare const defaultErrorFactory: RegistryErrorFactory;
|
|
31
|
+
/**
|
|
32
|
+
* Generic base registry for provider patterns.
|
|
33
|
+
*
|
|
34
|
+
* This class provides common registry functionality used across Dexto's
|
|
35
|
+
* provider system (blob storage, compression, custom tools, etc.).
|
|
36
|
+
*
|
|
37
|
+
* Features:
|
|
38
|
+
* - Type-safe provider registration and retrieval
|
|
39
|
+
* - Duplicate registration prevention
|
|
40
|
+
* - Customizable error handling via error factory
|
|
41
|
+
* - Optional config validation for providers with schemas
|
|
42
|
+
*
|
|
43
|
+
* @template TProvider - The provider type (must extend BaseProvider)
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```typescript
|
|
47
|
+
* // Define your provider interface
|
|
48
|
+
* interface MyProvider extends BaseProvider {
|
|
49
|
+
* type: string;
|
|
50
|
+
* configSchema: z.ZodType<any>;
|
|
51
|
+
* create(config: any): MyInstance;
|
|
52
|
+
* }
|
|
53
|
+
*
|
|
54
|
+
* // Create a registry
|
|
55
|
+
* class MyRegistry extends BaseRegistry<MyProvider> {
|
|
56
|
+
* constructor() {
|
|
57
|
+
* super({
|
|
58
|
+
* alreadyRegistered: (type) => new MyError(`Provider ${type} exists`),
|
|
59
|
+
* notFound: (type, available) => new MyError(`Unknown: ${type}`),
|
|
60
|
+
* });
|
|
61
|
+
* }
|
|
62
|
+
* }
|
|
63
|
+
*
|
|
64
|
+
* // Use the registry
|
|
65
|
+
* const registry = new MyRegistry();
|
|
66
|
+
* registry.register(myProvider);
|
|
67
|
+
* const provider = registry.get('my-type');
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
export declare class BaseRegistry<TProvider extends BaseProvider> {
|
|
71
|
+
protected providers: Map<string, TProvider>;
|
|
72
|
+
protected errorFactory: RegistryErrorFactory;
|
|
73
|
+
/**
|
|
74
|
+
* Create a new registry instance.
|
|
75
|
+
*
|
|
76
|
+
* @param errorFactory - Optional custom error factory for registry errors.
|
|
77
|
+
* If not provided, uses default Error instances.
|
|
78
|
+
*/
|
|
79
|
+
constructor(errorFactory?: RegistryErrorFactory);
|
|
80
|
+
/**
|
|
81
|
+
* Register a provider.
|
|
82
|
+
*
|
|
83
|
+
* @param provider - The provider to register
|
|
84
|
+
* @throws Error if a provider with the same type is already registered
|
|
85
|
+
*/
|
|
86
|
+
register(provider: TProvider): void;
|
|
87
|
+
/**
|
|
88
|
+
* Unregister a provider.
|
|
89
|
+
*
|
|
90
|
+
* @param type - The provider type to unregister
|
|
91
|
+
* @returns true if the provider was unregistered, false if it wasn't registered
|
|
92
|
+
*/
|
|
93
|
+
unregister(type: string): boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Get a registered provider by type.
|
|
96
|
+
*
|
|
97
|
+
* @param type - The provider type identifier
|
|
98
|
+
* @returns The provider if found, undefined otherwise
|
|
99
|
+
*/
|
|
100
|
+
get(type: string): TProvider | undefined;
|
|
101
|
+
/**
|
|
102
|
+
* Check if a provider is registered.
|
|
103
|
+
*
|
|
104
|
+
* @param type - The provider type identifier
|
|
105
|
+
* @returns true if registered, false otherwise
|
|
106
|
+
*/
|
|
107
|
+
has(type: string): boolean;
|
|
108
|
+
/**
|
|
109
|
+
* Get all registered provider types.
|
|
110
|
+
*
|
|
111
|
+
* @returns Array of provider type identifiers
|
|
112
|
+
*/
|
|
113
|
+
getTypes(): string[];
|
|
114
|
+
/**
|
|
115
|
+
* Get all registered providers.
|
|
116
|
+
*
|
|
117
|
+
* @returns Array of providers
|
|
118
|
+
*/
|
|
119
|
+
getAll(): TProvider[];
|
|
120
|
+
/**
|
|
121
|
+
* Get the number of registered providers.
|
|
122
|
+
*
|
|
123
|
+
* @returns Count of registered providers
|
|
124
|
+
*/
|
|
125
|
+
get size(): number;
|
|
126
|
+
/**
|
|
127
|
+
* Clear all registered providers.
|
|
128
|
+
* Primarily useful for testing.
|
|
129
|
+
*/
|
|
130
|
+
clear(): void;
|
|
131
|
+
/**
|
|
132
|
+
* Validate a configuration against a provider's schema.
|
|
133
|
+
*
|
|
134
|
+
* This method is only available for registries with providers that have
|
|
135
|
+
* a configSchema property. It:
|
|
136
|
+
* 1. Extracts the 'type' field to identify the provider
|
|
137
|
+
* 2. Looks up the provider in the registry
|
|
138
|
+
* 3. Validates the full config against the provider's schema
|
|
139
|
+
* 4. Returns the validated configuration
|
|
140
|
+
*
|
|
141
|
+
* @param config - Raw configuration object with a 'type' field
|
|
142
|
+
* @returns Validated configuration object
|
|
143
|
+
* @throws Error if type is missing, provider not found, or validation fails
|
|
144
|
+
*/
|
|
145
|
+
validateConfig(config: unknown): any;
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=base-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-registry.d.ts","sourceRoot":"","sources":["../../src/providers/base-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACtD,uDAAuD;IACvD,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;CAC1C;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACjC,wEAAwE;IACxE,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC;IACvC,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;CAC3D;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,oBAMjC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,qBAAa,YAAY,CAAC,SAAS,SAAS,YAAY;IACpD,SAAS,CAAC,SAAS,yBAAgC;IACnD,SAAS,CAAC,YAAY,EAAE,oBAAoB,CAAC;IAE7C;;;;;OAKG;gBACS,YAAY,GAAE,oBAA0C;IAIpE;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI;IAOnC;;;;;OAKG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIjC;;;;;OAKG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAIxC;;;;;OAKG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B;;;;OAIG;IACH,QAAQ,IAAI,MAAM,EAAE;IAIpB;;;;OAIG;IACH,MAAM,IAAI,SAAS,EAAE;IAIrB;;;;OAIG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;OAGG;IACH,KAAK,IAAI,IAAI;IAIb;;;;;;;;;;;;;OAaG;IACH,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,GAAG;CAqBvC"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import "../chunk-PTJYTZNU.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
const defaultErrorFactory = {
|
|
4
|
+
alreadyRegistered: (type) => new Error(`Provider '${type}' is already registered`),
|
|
5
|
+
notFound: (type, availableTypes) => new Error(
|
|
6
|
+
`Provider '${type}' not found. Available: ${availableTypes.join(", ") || "none"}`
|
|
7
|
+
)
|
|
8
|
+
};
|
|
9
|
+
class BaseRegistry {
|
|
10
|
+
providers = /* @__PURE__ */ new Map();
|
|
11
|
+
errorFactory;
|
|
12
|
+
/**
|
|
13
|
+
* Create a new registry instance.
|
|
14
|
+
*
|
|
15
|
+
* @param errorFactory - Optional custom error factory for registry errors.
|
|
16
|
+
* If not provided, uses default Error instances.
|
|
17
|
+
*/
|
|
18
|
+
constructor(errorFactory = defaultErrorFactory) {
|
|
19
|
+
this.errorFactory = errorFactory;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Register a provider.
|
|
23
|
+
*
|
|
24
|
+
* @param provider - The provider to register
|
|
25
|
+
* @throws Error if a provider with the same type is already registered
|
|
26
|
+
*/
|
|
27
|
+
register(provider) {
|
|
28
|
+
if (this.providers.has(provider.type)) {
|
|
29
|
+
throw this.errorFactory.alreadyRegistered(provider.type);
|
|
30
|
+
}
|
|
31
|
+
this.providers.set(provider.type, provider);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Unregister a provider.
|
|
35
|
+
*
|
|
36
|
+
* @param type - The provider type to unregister
|
|
37
|
+
* @returns true if the provider was unregistered, false if it wasn't registered
|
|
38
|
+
*/
|
|
39
|
+
unregister(type) {
|
|
40
|
+
return this.providers.delete(type);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Get a registered provider by type.
|
|
44
|
+
*
|
|
45
|
+
* @param type - The provider type identifier
|
|
46
|
+
* @returns The provider if found, undefined otherwise
|
|
47
|
+
*/
|
|
48
|
+
get(type) {
|
|
49
|
+
return this.providers.get(type);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Check if a provider is registered.
|
|
53
|
+
*
|
|
54
|
+
* @param type - The provider type identifier
|
|
55
|
+
* @returns true if registered, false otherwise
|
|
56
|
+
*/
|
|
57
|
+
has(type) {
|
|
58
|
+
return this.providers.has(type);
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Get all registered provider types.
|
|
62
|
+
*
|
|
63
|
+
* @returns Array of provider type identifiers
|
|
64
|
+
*/
|
|
65
|
+
getTypes() {
|
|
66
|
+
return Array.from(this.providers.keys());
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Get all registered providers.
|
|
70
|
+
*
|
|
71
|
+
* @returns Array of providers
|
|
72
|
+
*/
|
|
73
|
+
getAll() {
|
|
74
|
+
return Array.from(this.providers.values());
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Get the number of registered providers.
|
|
78
|
+
*
|
|
79
|
+
* @returns Count of registered providers
|
|
80
|
+
*/
|
|
81
|
+
get size() {
|
|
82
|
+
return this.providers.size;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Clear all registered providers.
|
|
86
|
+
* Primarily useful for testing.
|
|
87
|
+
*/
|
|
88
|
+
clear() {
|
|
89
|
+
this.providers.clear();
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Validate a configuration against a provider's schema.
|
|
93
|
+
*
|
|
94
|
+
* This method is only available for registries with providers that have
|
|
95
|
+
* a configSchema property. It:
|
|
96
|
+
* 1. Extracts the 'type' field to identify the provider
|
|
97
|
+
* 2. Looks up the provider in the registry
|
|
98
|
+
* 3. Validates the full config against the provider's schema
|
|
99
|
+
* 4. Returns the validated configuration
|
|
100
|
+
*
|
|
101
|
+
* @param config - Raw configuration object with a 'type' field
|
|
102
|
+
* @returns Validated configuration object
|
|
103
|
+
* @throws Error if type is missing, provider not found, or validation fails
|
|
104
|
+
*/
|
|
105
|
+
validateConfig(config) {
|
|
106
|
+
const typeSchema = z.object({ type: z.string() }).passthrough();
|
|
107
|
+
const parsed = typeSchema.parse(config);
|
|
108
|
+
const provider = this.providers.get(parsed.type);
|
|
109
|
+
if (!provider) {
|
|
110
|
+
throw this.errorFactory.notFound(parsed.type, this.getTypes());
|
|
111
|
+
}
|
|
112
|
+
if (!("configSchema" in provider) || !provider.configSchema) {
|
|
113
|
+
throw new Error(
|
|
114
|
+
`Provider '${parsed.type}' does not support config validation (no configSchema)`
|
|
115
|
+
);
|
|
116
|
+
}
|
|
117
|
+
return provider.configSchema.parse(config);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
export {
|
|
121
|
+
BaseRegistry,
|
|
122
|
+
defaultErrorFactory
|
|
123
|
+
};
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var discovery_exports = {};
|
|
20
|
+
__export(discovery_exports, {
|
|
21
|
+
getProvidersByCategory: () => getProvidersByCategory,
|
|
22
|
+
hasProvider: () => hasProvider,
|
|
23
|
+
listAllProviders: () => listAllProviders
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(discovery_exports);
|
|
26
|
+
var import_blob = require("../storage/blob/index.js");
|
|
27
|
+
var import_compaction = require("../context/compaction/index.js");
|
|
28
|
+
var import_custom_tool_registry = require("../tools/custom-tool-registry.js");
|
|
29
|
+
var import_constants = require("../tools/internal-tools/constants.js");
|
|
30
|
+
var import_registry = require("../tools/internal-tools/registry.js");
|
|
31
|
+
function listAllProviders() {
|
|
32
|
+
const blobProviders = import_blob.blobStoreRegistry.getProviders().map((provider) => {
|
|
33
|
+
const info = {
|
|
34
|
+
type: provider.type,
|
|
35
|
+
category: "blob"
|
|
36
|
+
};
|
|
37
|
+
if (provider.metadata) {
|
|
38
|
+
info.metadata = provider.metadata;
|
|
39
|
+
}
|
|
40
|
+
return info;
|
|
41
|
+
});
|
|
42
|
+
const compactionProviders = import_compaction.compactionRegistry.getAll().map((provider) => {
|
|
43
|
+
const info = {
|
|
44
|
+
type: provider.type,
|
|
45
|
+
category: "compaction"
|
|
46
|
+
};
|
|
47
|
+
if (provider.metadata) {
|
|
48
|
+
info.metadata = provider.metadata;
|
|
49
|
+
}
|
|
50
|
+
return info;
|
|
51
|
+
});
|
|
52
|
+
const customToolProviders = import_custom_tool_registry.customToolRegistry.getTypes().map((type) => {
|
|
53
|
+
const provider = import_custom_tool_registry.customToolRegistry.get(type);
|
|
54
|
+
const info = {
|
|
55
|
+
type,
|
|
56
|
+
category: "customTools"
|
|
57
|
+
};
|
|
58
|
+
if (provider?.metadata) {
|
|
59
|
+
info.metadata = provider.metadata;
|
|
60
|
+
}
|
|
61
|
+
return info;
|
|
62
|
+
});
|
|
63
|
+
const internalTools = import_constants.INTERNAL_TOOL_NAMES.map((name) => ({
|
|
64
|
+
name,
|
|
65
|
+
description: import_registry.INTERNAL_TOOL_REGISTRY[name].description
|
|
66
|
+
}));
|
|
67
|
+
return {
|
|
68
|
+
blob: blobProviders,
|
|
69
|
+
compaction: compactionProviders,
|
|
70
|
+
customTools: customToolProviders,
|
|
71
|
+
internalTools
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
function getProvidersByCategory(category) {
|
|
75
|
+
const allProviders = listAllProviders();
|
|
76
|
+
return allProviders[category];
|
|
77
|
+
}
|
|
78
|
+
function hasProvider(category, type) {
|
|
79
|
+
switch (category) {
|
|
80
|
+
case "blob":
|
|
81
|
+
return import_blob.blobStoreRegistry.has(type);
|
|
82
|
+
case "compaction":
|
|
83
|
+
return import_compaction.compactionRegistry.has(type);
|
|
84
|
+
case "customTools":
|
|
85
|
+
return import_custom_tool_registry.customToolRegistry.has(type);
|
|
86
|
+
default:
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
91
|
+
0 && (module.exports = {
|
|
92
|
+
getProvidersByCategory,
|
|
93
|
+
hasProvider,
|
|
94
|
+
listAllProviders
|
|
95
|
+
});
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Information about a registered provider.
|
|
3
|
+
*/
|
|
4
|
+
export interface DiscoveredProvider {
|
|
5
|
+
/** Provider type identifier (e.g., 'local', 's3', 'reactive-overflow') */
|
|
6
|
+
type: string;
|
|
7
|
+
/** Provider category */
|
|
8
|
+
category: 'blob' | 'compaction' | 'customTools';
|
|
9
|
+
/** Optional metadata about the provider */
|
|
10
|
+
metadata?: {
|
|
11
|
+
displayName?: string;
|
|
12
|
+
description?: string;
|
|
13
|
+
[key: string]: any;
|
|
14
|
+
} | undefined;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Information about an internal tool for discovery.
|
|
18
|
+
*/
|
|
19
|
+
export interface InternalToolDiscovery {
|
|
20
|
+
/** Tool name identifier (e.g., 'search_history', 'ask_user') */
|
|
21
|
+
name: string;
|
|
22
|
+
/** Human-readable description of what the tool does */
|
|
23
|
+
description: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Discovery result with providers grouped by category.
|
|
27
|
+
*/
|
|
28
|
+
export interface ProviderDiscovery {
|
|
29
|
+
/** Blob storage providers */
|
|
30
|
+
blob: DiscoveredProvider[];
|
|
31
|
+
/** Compaction strategy providers */
|
|
32
|
+
compaction: DiscoveredProvider[];
|
|
33
|
+
/** Custom tool providers */
|
|
34
|
+
customTools: DiscoveredProvider[];
|
|
35
|
+
/** Internal tools available for configuration */
|
|
36
|
+
internalTools: InternalToolDiscovery[];
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Provider category type.
|
|
40
|
+
*/
|
|
41
|
+
export type ProviderCategory = 'blob' | 'compaction' | 'customTools';
|
|
42
|
+
/**
|
|
43
|
+
* List all registered providers across all registries.
|
|
44
|
+
*
|
|
45
|
+
* This function is useful for debugging and building UIs that need to display
|
|
46
|
+
* available providers. It queries all provider registries and returns a
|
|
47
|
+
* comprehensive view of what's currently registered.
|
|
48
|
+
*
|
|
49
|
+
* @returns Object with providers grouped by category
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```typescript
|
|
53
|
+
* const providers = listAllProviders();
|
|
54
|
+
* console.log('Available blob providers:', providers.blob);
|
|
55
|
+
* console.log('Available compaction providers:', providers.compaction);
|
|
56
|
+
* console.log('Available custom tool providers:', providers.customTools);
|
|
57
|
+
* ```
|
|
58
|
+
*/
|
|
59
|
+
export declare function listAllProviders(): ProviderDiscovery;
|
|
60
|
+
/**
|
|
61
|
+
* Get all providers for a specific category.
|
|
62
|
+
*
|
|
63
|
+
* @param category - The provider category to query
|
|
64
|
+
* @returns Array of provider information for the specified category
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```typescript
|
|
68
|
+
* const blobProviders = getProvidersByCategory('blob');
|
|
69
|
+
* blobProviders.forEach(p => {
|
|
70
|
+
* console.log(`${p.type}: ${p.metadata?.displayName}`);
|
|
71
|
+
* });
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
export declare function getProvidersByCategory(category: ProviderCategory): DiscoveredProvider[];
|
|
75
|
+
/**
|
|
76
|
+
* Check if a specific provider exists in a category.
|
|
77
|
+
*
|
|
78
|
+
* @param category - The provider category to check
|
|
79
|
+
* @param type - The provider type identifier
|
|
80
|
+
* @returns True if the provider is registered, false otherwise
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```typescript
|
|
84
|
+
* if (hasProvider('blob', 's3')) {
|
|
85
|
+
* console.log('S3 blob storage is available');
|
|
86
|
+
* }
|
|
87
|
+
*
|
|
88
|
+
* if (hasProvider('compaction', 'reactive-overflow')) {
|
|
89
|
+
* console.log('Reactive overflow compaction is available');
|
|
90
|
+
* }
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
export declare function hasProvider(category: ProviderCategory, type: string): boolean;
|
|
94
|
+
//# sourceMappingURL=discovery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/providers/discovery.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,0EAA0E;IAC1E,IAAI,EAAE,MAAM,CAAC;IAEb,wBAAwB;IACxB,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,CAAC;IAEhD,2CAA2C;IAC3C,QAAQ,CAAC,EACH;QACI,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACtB,GACD,SAAS,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IAEb,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,6BAA6B;IAC7B,IAAI,EAAE,kBAAkB,EAAE,CAAC;IAE3B,oCAAoC;IACpC,UAAU,EAAE,kBAAkB,EAAE,CAAC;IAEjC,4BAA4B;IAC5B,WAAW,EAAE,kBAAkB,EAAE,CAAC;IAElC,iDAAiD;IACjD,aAAa,EAAE,qBAAqB,EAAE,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,YAAY,GAAG,aAAa,CAAC;AAErE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,IAAI,iBAAiB,CAkDpD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,kBAAkB,EAAE,CAGvF;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAW7E"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import "../chunk-PTJYTZNU.js";
|
|
2
|
+
import { blobStoreRegistry } from "../storage/blob/index.js";
|
|
3
|
+
import { compactionRegistry } from "../context/compaction/index.js";
|
|
4
|
+
import { customToolRegistry } from "../tools/custom-tool-registry.js";
|
|
5
|
+
import { INTERNAL_TOOL_NAMES } from "../tools/internal-tools/constants.js";
|
|
6
|
+
import { INTERNAL_TOOL_REGISTRY } from "../tools/internal-tools/registry.js";
|
|
7
|
+
function listAllProviders() {
|
|
8
|
+
const blobProviders = blobStoreRegistry.getProviders().map((provider) => {
|
|
9
|
+
const info = {
|
|
10
|
+
type: provider.type,
|
|
11
|
+
category: "blob"
|
|
12
|
+
};
|
|
13
|
+
if (provider.metadata) {
|
|
14
|
+
info.metadata = provider.metadata;
|
|
15
|
+
}
|
|
16
|
+
return info;
|
|
17
|
+
});
|
|
18
|
+
const compactionProviders = compactionRegistry.getAll().map((provider) => {
|
|
19
|
+
const info = {
|
|
20
|
+
type: provider.type,
|
|
21
|
+
category: "compaction"
|
|
22
|
+
};
|
|
23
|
+
if (provider.metadata) {
|
|
24
|
+
info.metadata = provider.metadata;
|
|
25
|
+
}
|
|
26
|
+
return info;
|
|
27
|
+
});
|
|
28
|
+
const customToolProviders = customToolRegistry.getTypes().map((type) => {
|
|
29
|
+
const provider = customToolRegistry.get(type);
|
|
30
|
+
const info = {
|
|
31
|
+
type,
|
|
32
|
+
category: "customTools"
|
|
33
|
+
};
|
|
34
|
+
if (provider?.metadata) {
|
|
35
|
+
info.metadata = provider.metadata;
|
|
36
|
+
}
|
|
37
|
+
return info;
|
|
38
|
+
});
|
|
39
|
+
const internalTools = INTERNAL_TOOL_NAMES.map((name) => ({
|
|
40
|
+
name,
|
|
41
|
+
description: INTERNAL_TOOL_REGISTRY[name].description
|
|
42
|
+
}));
|
|
43
|
+
return {
|
|
44
|
+
blob: blobProviders,
|
|
45
|
+
compaction: compactionProviders,
|
|
46
|
+
customTools: customToolProviders,
|
|
47
|
+
internalTools
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
function getProvidersByCategory(category) {
|
|
51
|
+
const allProviders = listAllProviders();
|
|
52
|
+
return allProviders[category];
|
|
53
|
+
}
|
|
54
|
+
function hasProvider(category, type) {
|
|
55
|
+
switch (category) {
|
|
56
|
+
case "blob":
|
|
57
|
+
return blobStoreRegistry.has(type);
|
|
58
|
+
case "compaction":
|
|
59
|
+
return compactionRegistry.has(type);
|
|
60
|
+
case "customTools":
|
|
61
|
+
return customToolRegistry.has(type);
|
|
62
|
+
default:
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
export {
|
|
67
|
+
getProvidersByCategory,
|
|
68
|
+
hasProvider,
|
|
69
|
+
listAllProviders
|
|
70
|
+
};
|