@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,133 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Display Types
|
|
3
|
+
*
|
|
4
|
+
* Discriminated union types for structured tool result rendering.
|
|
5
|
+
* These types enable both CLI and WebUI to render tool results with
|
|
6
|
+
* appropriate formatting (diffs, shell output, search results, etc.)
|
|
7
|
+
*
|
|
8
|
+
* Tools return `_display` field in their result, which is preserved
|
|
9
|
+
* by the sanitizer in `SanitizedToolResult.meta.display`.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Discriminated union of all tool display data types.
|
|
13
|
+
* Switch on `type` field for exhaustive handling.
|
|
14
|
+
*/
|
|
15
|
+
export type ToolDisplayData = DiffDisplayData | ShellDisplayData | SearchDisplayData | FileDisplayData | GenericDisplayData;
|
|
16
|
+
/**
|
|
17
|
+
* Display data for file edit operations (edit_file, write_file overwrites).
|
|
18
|
+
* Contains unified diff format for rendering changes.
|
|
19
|
+
*/
|
|
20
|
+
export interface DiffDisplayData {
|
|
21
|
+
type: 'diff';
|
|
22
|
+
/** Unified diff string (output of `diff` package's createPatch) */
|
|
23
|
+
unified: string;
|
|
24
|
+
/** Path to the file that was modified */
|
|
25
|
+
filename: string;
|
|
26
|
+
/** Number of lines added */
|
|
27
|
+
additions: number;
|
|
28
|
+
/** Number of lines removed */
|
|
29
|
+
deletions: number;
|
|
30
|
+
/** Original file content (optional, for approval preview) */
|
|
31
|
+
beforeContent?: string;
|
|
32
|
+
/** New file content (optional, for approval preview) */
|
|
33
|
+
afterContent?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Display data for shell command execution (bash_exec).
|
|
37
|
+
* Contains command metadata and output for structured rendering.
|
|
38
|
+
*/
|
|
39
|
+
export interface ShellDisplayData {
|
|
40
|
+
type: 'shell';
|
|
41
|
+
/** The command that was executed */
|
|
42
|
+
command: string;
|
|
43
|
+
/** Exit code from the command (0 = success) */
|
|
44
|
+
exitCode: number;
|
|
45
|
+
/** Execution duration in milliseconds */
|
|
46
|
+
duration: number;
|
|
47
|
+
/** Whether command is running in background */
|
|
48
|
+
isBackground?: boolean;
|
|
49
|
+
/** Standard output from the command */
|
|
50
|
+
stdout?: string;
|
|
51
|
+
/** Standard error from the command */
|
|
52
|
+
stderr?: string;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Display data for search operations (grep_content, glob_files).
|
|
56
|
+
* Contains structured match results for formatted rendering.
|
|
57
|
+
*/
|
|
58
|
+
export interface SearchDisplayData {
|
|
59
|
+
type: 'search';
|
|
60
|
+
/** The search pattern used */
|
|
61
|
+
pattern: string;
|
|
62
|
+
/** Array of match results */
|
|
63
|
+
matches: SearchMatch[];
|
|
64
|
+
/** Total number of matches found (may exceed displayed matches) */
|
|
65
|
+
totalMatches: number;
|
|
66
|
+
/** Whether results were truncated due to limits */
|
|
67
|
+
truncated: boolean;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Individual search match result.
|
|
71
|
+
*/
|
|
72
|
+
export interface SearchMatch {
|
|
73
|
+
/** File path where match was found */
|
|
74
|
+
file: string;
|
|
75
|
+
/** Line number of the match (0 for glob results) */
|
|
76
|
+
line: number;
|
|
77
|
+
/** Content of the matching line or filename */
|
|
78
|
+
content: string;
|
|
79
|
+
/** Optional surrounding context lines */
|
|
80
|
+
context?: string[];
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Display data for file operations (read_file, write_file create).
|
|
84
|
+
* Contains file metadata for simple status rendering.
|
|
85
|
+
*/
|
|
86
|
+
export interface FileDisplayData {
|
|
87
|
+
type: 'file';
|
|
88
|
+
/** Path to the file */
|
|
89
|
+
path: string;
|
|
90
|
+
/** Type of operation performed */
|
|
91
|
+
operation: 'read' | 'write' | 'create' | 'delete';
|
|
92
|
+
/** File size in bytes (optional) */
|
|
93
|
+
size?: number;
|
|
94
|
+
/** Number of lines read/written (optional) */
|
|
95
|
+
lineCount?: number;
|
|
96
|
+
/** Path to backup file if created (optional) */
|
|
97
|
+
backupPath?: string;
|
|
98
|
+
/** File content for create operations (used in approval preview) */
|
|
99
|
+
content?: string;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Fallback display data for unknown tools or MCP tools.
|
|
103
|
+
* Renderers should fall back to rendering content[] directly.
|
|
104
|
+
*/
|
|
105
|
+
export interface GenericDisplayData {
|
|
106
|
+
type: 'generic';
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Type guard for DiffDisplayData.
|
|
110
|
+
*/
|
|
111
|
+
export declare function isDiffDisplay(d: ToolDisplayData): d is DiffDisplayData;
|
|
112
|
+
/**
|
|
113
|
+
* Type guard for ShellDisplayData.
|
|
114
|
+
*/
|
|
115
|
+
export declare function isShellDisplay(d: ToolDisplayData): d is ShellDisplayData;
|
|
116
|
+
/**
|
|
117
|
+
* Type guard for SearchDisplayData.
|
|
118
|
+
*/
|
|
119
|
+
export declare function isSearchDisplay(d: ToolDisplayData): d is SearchDisplayData;
|
|
120
|
+
/**
|
|
121
|
+
* Type guard for FileDisplayData.
|
|
122
|
+
*/
|
|
123
|
+
export declare function isFileDisplay(d: ToolDisplayData): d is FileDisplayData;
|
|
124
|
+
/**
|
|
125
|
+
* Type guard for GenericDisplayData.
|
|
126
|
+
*/
|
|
127
|
+
export declare function isGenericDisplay(d: ToolDisplayData): d is GenericDisplayData;
|
|
128
|
+
/**
|
|
129
|
+
* Validates that an unknown value is a valid ToolDisplayData.
|
|
130
|
+
* Used by sanitizer to safely extract _display from tool results.
|
|
131
|
+
*/
|
|
132
|
+
export declare function isValidDisplayData(d: unknown): d is ToolDisplayData;
|
|
133
|
+
//# sourceMappingURL=display-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"display-types.d.ts","sourceRoot":"","sources":["../../src/tools/display-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH;;;GAGG;AACH,MAAM,MAAM,eAAe,GACrB,eAAe,GACf,gBAAgB,GAChB,iBAAiB,GACjB,eAAe,GACf,kBAAkB,CAAC;AAEzB;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,mEAAmE;IACnE,OAAO,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,OAAO,CAAC;IACd,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,QAAQ,CAAC;IACf,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,mEAAmE;IACnE,YAAY,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,SAAS,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAClD,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,SAAS,CAAC;CACnB;AAMD;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,eAAe,GAAG,CAAC,IAAI,eAAe,CAEtE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,eAAe,GAAG,CAAC,IAAI,gBAAgB,CAExE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,eAAe,GAAG,CAAC,IAAI,iBAAiB,CAE1E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,eAAe,GAAG,CAAC,IAAI,eAAe,CAEtE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,eAAe,GAAG,CAAC,IAAI,kBAAkB,CAE5E;AASD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,eAAe,CASnE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import "../chunk-PTJYTZNU.js";
|
|
2
|
+
function isDiffDisplay(d) {
|
|
3
|
+
return d.type === "diff";
|
|
4
|
+
}
|
|
5
|
+
function isShellDisplay(d) {
|
|
6
|
+
return d.type === "shell";
|
|
7
|
+
}
|
|
8
|
+
function isSearchDisplay(d) {
|
|
9
|
+
return d.type === "search";
|
|
10
|
+
}
|
|
11
|
+
function isFileDisplay(d) {
|
|
12
|
+
return d.type === "file";
|
|
13
|
+
}
|
|
14
|
+
function isGenericDisplay(d) {
|
|
15
|
+
return d.type === "generic";
|
|
16
|
+
}
|
|
17
|
+
const VALID_DISPLAY_TYPES = ["diff", "shell", "search", "file", "generic"];
|
|
18
|
+
function isValidDisplayData(d) {
|
|
19
|
+
if (d === null || typeof d !== "object") {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
const obj = d;
|
|
23
|
+
return typeof obj.type === "string" && VALID_DISPLAY_TYPES.includes(obj.type);
|
|
24
|
+
}
|
|
25
|
+
export {
|
|
26
|
+
isDiffDisplay,
|
|
27
|
+
isFileDisplay,
|
|
28
|
+
isGenericDisplay,
|
|
29
|
+
isSearchDisplay,
|
|
30
|
+
isShellDisplay,
|
|
31
|
+
isValidDisplayData
|
|
32
|
+
};
|
|
@@ -25,6 +25,8 @@ var ToolErrorCode = /* @__PURE__ */ ((ToolErrorCode2) => {
|
|
|
25
25
|
ToolErrorCode2["EXECUTION_DENIED"] = "tools_execution_denied";
|
|
26
26
|
ToolErrorCode2["EXECUTION_TIMEOUT"] = "tools_execution_timeout";
|
|
27
27
|
ToolErrorCode2["EXECUTION_FAILED"] = "tools_execution_failed";
|
|
28
|
+
ToolErrorCode2["DIRECTORY_ACCESS_DENIED"] = "tools_directory_access_denied";
|
|
29
|
+
ToolErrorCode2["VALIDATION_FAILED"] = "tools_validation_failed";
|
|
28
30
|
ToolErrorCode2["CONFIRMATION_HANDLER_MISSING"] = "tools_confirmation_handler_missing";
|
|
29
31
|
ToolErrorCode2["CONFIRMATION_TIMEOUT"] = "tools_confirmation_timeout";
|
|
30
32
|
ToolErrorCode2["CONFIRMATION_CANCELLED"] = "tools_confirmation_cancelled";
|
|
@@ -32,6 +34,9 @@ var ToolErrorCode = /* @__PURE__ */ ((ToolErrorCode2) => {
|
|
|
32
34
|
ToolErrorCode2["TOOL_INVALID_ARGS"] = "tools_invalid_args";
|
|
33
35
|
ToolErrorCode2["TOOL_UNAUTHORIZED"] = "tools_unauthorized";
|
|
34
36
|
ToolErrorCode2["CONFIG_INVALID"] = "tools_config_invalid";
|
|
37
|
+
ToolErrorCode2["FEATURE_DISABLED"] = "tools_feature_disabled";
|
|
38
|
+
ToolErrorCode2["CUSTOM_TOOL_PROVIDER_UNKNOWN"] = "tools_custom_provider_unknown";
|
|
39
|
+
ToolErrorCode2["CUSTOM_TOOL_PROVIDER_ALREADY_REGISTERED"] = "tools_custom_provider_already_registered";
|
|
35
40
|
return ToolErrorCode2;
|
|
36
41
|
})(ToolErrorCode || {});
|
|
37
42
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -6,12 +6,17 @@ export declare enum ToolErrorCode {
|
|
|
6
6
|
EXECUTION_DENIED = "tools_execution_denied",
|
|
7
7
|
EXECUTION_TIMEOUT = "tools_execution_timeout",
|
|
8
8
|
EXECUTION_FAILED = "tools_execution_failed",
|
|
9
|
+
DIRECTORY_ACCESS_DENIED = "tools_directory_access_denied",
|
|
10
|
+
VALIDATION_FAILED = "tools_validation_failed",
|
|
9
11
|
CONFIRMATION_HANDLER_MISSING = "tools_confirmation_handler_missing",
|
|
10
12
|
CONFIRMATION_TIMEOUT = "tools_confirmation_timeout",
|
|
11
13
|
CONFIRMATION_CANCELLED = "tools_confirmation_cancelled",
|
|
12
14
|
TOOL_NOT_FOUND = "tools_tool_not_found",
|
|
13
15
|
TOOL_INVALID_ARGS = "tools_invalid_args",
|
|
14
16
|
TOOL_UNAUTHORIZED = "tools_unauthorized",
|
|
15
|
-
CONFIG_INVALID = "tools_config_invalid"
|
|
17
|
+
CONFIG_INVALID = "tools_config_invalid",
|
|
18
|
+
FEATURE_DISABLED = "tools_feature_disabled",
|
|
19
|
+
CUSTOM_TOOL_PROVIDER_UNKNOWN = "tools_custom_provider_unknown",
|
|
20
|
+
CUSTOM_TOOL_PROVIDER_ALREADY_REGISTERED = "tools_custom_provider_already_registered"
|
|
16
21
|
}
|
|
17
22
|
//# sourceMappingURL=error-codes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../src/tools/error-codes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,oBAAY,aAAa;IAErB,gBAAgB,2BAA2B;IAC3C,iBAAiB,4BAA4B;IAC7C,gBAAgB,2BAA2B;
|
|
1
|
+
{"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../src/tools/error-codes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,oBAAY,aAAa;IAErB,gBAAgB,2BAA2B;IAC3C,iBAAiB,4BAA4B;IAC7C,gBAAgB,2BAA2B;IAC3C,uBAAuB,kCAAkC;IAGzD,iBAAiB,4BAA4B;IAG7C,4BAA4B,uCAAuC;IACnE,oBAAoB,+BAA+B;IACnD,sBAAsB,iCAAiC;IAGvD,cAAc,yBAAyB;IACvC,iBAAiB,uBAAuB;IACxC,iBAAiB,uBAAuB;IAGxC,cAAc,yBAAyB;IACvC,gBAAgB,2BAA2B;IAG3C,4BAA4B,kCAAkC;IAC9D,uCAAuC,6CAA6C;CACvF"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import "../chunk-
|
|
1
|
+
import "../chunk-PTJYTZNU.js";
|
|
2
2
|
var ToolErrorCode = /* @__PURE__ */ ((ToolErrorCode2) => {
|
|
3
3
|
ToolErrorCode2["EXECUTION_DENIED"] = "tools_execution_denied";
|
|
4
4
|
ToolErrorCode2["EXECUTION_TIMEOUT"] = "tools_execution_timeout";
|
|
5
5
|
ToolErrorCode2["EXECUTION_FAILED"] = "tools_execution_failed";
|
|
6
|
+
ToolErrorCode2["DIRECTORY_ACCESS_DENIED"] = "tools_directory_access_denied";
|
|
7
|
+
ToolErrorCode2["VALIDATION_FAILED"] = "tools_validation_failed";
|
|
6
8
|
ToolErrorCode2["CONFIRMATION_HANDLER_MISSING"] = "tools_confirmation_handler_missing";
|
|
7
9
|
ToolErrorCode2["CONFIRMATION_TIMEOUT"] = "tools_confirmation_timeout";
|
|
8
10
|
ToolErrorCode2["CONFIRMATION_CANCELLED"] = "tools_confirmation_cancelled";
|
|
@@ -10,6 +12,9 @@ var ToolErrorCode = /* @__PURE__ */ ((ToolErrorCode2) => {
|
|
|
10
12
|
ToolErrorCode2["TOOL_INVALID_ARGS"] = "tools_invalid_args";
|
|
11
13
|
ToolErrorCode2["TOOL_UNAUTHORIZED"] = "tools_unauthorized";
|
|
12
14
|
ToolErrorCode2["CONFIG_INVALID"] = "tools_config_invalid";
|
|
15
|
+
ToolErrorCode2["FEATURE_DISABLED"] = "tools_feature_disabled";
|
|
16
|
+
ToolErrorCode2["CUSTOM_TOOL_PROVIDER_UNKNOWN"] = "tools_custom_provider_unknown";
|
|
17
|
+
ToolErrorCode2["CUSTOM_TOOL_PROVIDER_ALREADY_REGISTERED"] = "tools_custom_provider_already_registered";
|
|
13
18
|
return ToolErrorCode2;
|
|
14
19
|
})(ToolErrorCode || {});
|
|
15
20
|
export {
|
package/dist/tools/errors.cjs
CHANGED
|
@@ -61,6 +61,21 @@ class ToolError {
|
|
|
61
61
|
{ toolName, sessionId }
|
|
62
62
|
);
|
|
63
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Directory access denied by user
|
|
66
|
+
* Used when a file tool tries to access a path outside allowed directories
|
|
67
|
+
* and the user denies the directory access approval
|
|
68
|
+
*/
|
|
69
|
+
static directoryAccessDenied(directory, sessionId) {
|
|
70
|
+
return new import_DextoRuntimeError.DextoRuntimeError(
|
|
71
|
+
import_error_codes.ToolErrorCode.DIRECTORY_ACCESS_DENIED,
|
|
72
|
+
import_types.ErrorScope.TOOLS,
|
|
73
|
+
import_types.ErrorType.FORBIDDEN,
|
|
74
|
+
`Access to directory '${directory}' was denied`,
|
|
75
|
+
{ directory, sessionId },
|
|
76
|
+
"Request access to the directory or work within the allowed working directory"
|
|
77
|
+
);
|
|
78
|
+
}
|
|
64
79
|
/**
|
|
65
80
|
* Tool execution timeout
|
|
66
81
|
*/
|
|
@@ -74,6 +89,20 @@ class ToolError {
|
|
|
74
89
|
{ toolName, timeoutMs, sessionId }
|
|
75
90
|
);
|
|
76
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* Tool validation failed (pre-execution check)
|
|
94
|
+
* Used when tool inputs are semantically invalid (e.g., file not found, string not in file)
|
|
95
|
+
* This should fail before approval, not after.
|
|
96
|
+
*/
|
|
97
|
+
static validationFailed(toolName, reason, context) {
|
|
98
|
+
return new import_DextoRuntimeError.DextoRuntimeError(
|
|
99
|
+
import_error_codes.ToolErrorCode.VALIDATION_FAILED,
|
|
100
|
+
import_types.ErrorScope.TOOLS,
|
|
101
|
+
import_types.ErrorType.USER,
|
|
102
|
+
`Tool '${toolName}' validation failed: ${reason}`,
|
|
103
|
+
{ toolName, reason, ...context }
|
|
104
|
+
);
|
|
105
|
+
}
|
|
77
106
|
/**
|
|
78
107
|
* Tool unauthorized access
|
|
79
108
|
*/
|
|
@@ -158,6 +187,48 @@ class ToolError {
|
|
|
158
187
|
{ toolName, reason }
|
|
159
188
|
);
|
|
160
189
|
}
|
|
190
|
+
/**
|
|
191
|
+
* Tool requires features which are currently disabled
|
|
192
|
+
*/
|
|
193
|
+
static featureDisabled(toolName, missingFeatures, message) {
|
|
194
|
+
return new import_DextoRuntimeError.DextoRuntimeError(
|
|
195
|
+
import_error_codes.ToolErrorCode.FEATURE_DISABLED,
|
|
196
|
+
import_types.ErrorScope.TOOLS,
|
|
197
|
+
import_types.ErrorType.USER,
|
|
198
|
+
message,
|
|
199
|
+
{ toolName, missingFeatures },
|
|
200
|
+
[
|
|
201
|
+
`Remove '${toolName}' from internalTools in your agent config`,
|
|
202
|
+
`Or enable required features: ${missingFeatures.map((f) => `${f}.enabled: true`).join(", ")}`
|
|
203
|
+
]
|
|
204
|
+
);
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Unknown custom tool provider type
|
|
208
|
+
*/
|
|
209
|
+
static unknownCustomToolProvider(type, availableTypes) {
|
|
210
|
+
return new import_DextoRuntimeError.DextoRuntimeError(
|
|
211
|
+
import_error_codes.ToolErrorCode.CUSTOM_TOOL_PROVIDER_UNKNOWN,
|
|
212
|
+
import_types.ErrorScope.TOOLS,
|
|
213
|
+
import_types.ErrorType.USER,
|
|
214
|
+
`Unknown custom tool provider: '${type}'`,
|
|
215
|
+
{ type, availableTypes },
|
|
216
|
+
`Available types: ${availableTypes.length > 0 ? availableTypes.join(", ") : "none"}`
|
|
217
|
+
);
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Custom tool provider already registered
|
|
221
|
+
*/
|
|
222
|
+
static customToolProviderAlreadyRegistered(type) {
|
|
223
|
+
return new import_DextoRuntimeError.DextoRuntimeError(
|
|
224
|
+
import_error_codes.ToolErrorCode.CUSTOM_TOOL_PROVIDER_ALREADY_REGISTERED,
|
|
225
|
+
import_types.ErrorScope.TOOLS,
|
|
226
|
+
import_types.ErrorType.USER,
|
|
227
|
+
`Custom tool provider '${type}' is already registered`,
|
|
228
|
+
{ type },
|
|
229
|
+
`Use unregister() first if you want to replace it`
|
|
230
|
+
);
|
|
231
|
+
}
|
|
161
232
|
}
|
|
162
233
|
// Annotate the CommonJS export names for ESM import in node:
|
|
163
234
|
0 && (module.exports = {
|
package/dist/tools/errors.d.ts
CHANGED
|
@@ -25,6 +25,15 @@ export declare class ToolError {
|
|
|
25
25
|
toolName: string;
|
|
26
26
|
sessionId: string | undefined;
|
|
27
27
|
}>;
|
|
28
|
+
/**
|
|
29
|
+
* Directory access denied by user
|
|
30
|
+
* Used when a file tool tries to access a path outside allowed directories
|
|
31
|
+
* and the user denies the directory access approval
|
|
32
|
+
*/
|
|
33
|
+
static directoryAccessDenied(directory: string, sessionId?: string): DextoRuntimeError<{
|
|
34
|
+
directory: string;
|
|
35
|
+
sessionId: string | undefined;
|
|
36
|
+
}>;
|
|
28
37
|
/**
|
|
29
38
|
* Tool execution timeout
|
|
30
39
|
*/
|
|
@@ -33,6 +42,15 @@ export declare class ToolError {
|
|
|
33
42
|
timeoutMs: number;
|
|
34
43
|
sessionId: string | undefined;
|
|
35
44
|
}>;
|
|
45
|
+
/**
|
|
46
|
+
* Tool validation failed (pre-execution check)
|
|
47
|
+
* Used when tool inputs are semantically invalid (e.g., file not found, string not in file)
|
|
48
|
+
* This should fail before approval, not after.
|
|
49
|
+
*/
|
|
50
|
+
static validationFailed(toolName: string, reason: string, context?: Record<string, unknown>): DextoRuntimeError<{
|
|
51
|
+
toolName: string;
|
|
52
|
+
reason: string;
|
|
53
|
+
}>;
|
|
36
54
|
/**
|
|
37
55
|
* Tool unauthorized access
|
|
38
56
|
*/
|
|
@@ -78,5 +96,20 @@ export declare class ToolError {
|
|
|
78
96
|
toolName: string;
|
|
79
97
|
reason: string;
|
|
80
98
|
}>;
|
|
99
|
+
/**
|
|
100
|
+
* Tool requires features which are currently disabled
|
|
101
|
+
*/
|
|
102
|
+
static featureDisabled(toolName: string, missingFeatures: string[], message: string): DextoRuntimeError<{
|
|
103
|
+
toolName: string;
|
|
104
|
+
missingFeatures: string[];
|
|
105
|
+
}>;
|
|
106
|
+
/**
|
|
107
|
+
* Unknown custom tool provider type
|
|
108
|
+
*/
|
|
109
|
+
static unknownCustomToolProvider(type: string, availableTypes: string[]): DextoRuntimeError;
|
|
110
|
+
/**
|
|
111
|
+
* Custom tool provider already registered
|
|
112
|
+
*/
|
|
113
|
+
static customToolProviderAlreadyRegistered(type: string): DextoRuntimeError;
|
|
81
114
|
}
|
|
82
115
|
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/tools/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAItE;;;GAGG;AACH,qBAAa,SAAS;IAClB;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM;;;IAUhC;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;;;;;IAU3E;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;;;;IAU3D;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;;;;;IAc/E;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;;;;IAUxD;;OAEG;IACH,MAAM,CAAC,0BAA0B,CAAC,QAAQ,EAAE,MAAM;;;IAUlD;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;;;;;IAUlF;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;;IAUnD;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAAC,QAAQ,EAAE,MAAM;;;IAUnD;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM;IAUpC;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/tools/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAItE;;;GAGG;AACH,qBAAa,SAAS;IAClB;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM;;;IAUhC;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;;;;;IAU3E;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;;;;IAU3D;;;;OAIG;IACH,MAAM,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;;;;IAWlE;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;;;;;IAc/E;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;IAU3F;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;;;;IAUxD;;OAEG;IACH,MAAM,CAAC,0BAA0B,CAAC,QAAQ,EAAE,MAAM;;;IAUlD;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;;;;;IAUlF;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;;IAUnD;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAAC,QAAQ,EAAE,MAAM;;;IAUnD;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM;IAUpC;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;;IAU7D;;OAEG;IACH,MAAM,CAAC,eAAe,CAClB,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,MAAM,EAAE,EACzB,OAAO,EAAE,MAAM,GAChB,iBAAiB,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAcrE;;OAEG;IACH,MAAM,CAAC,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,iBAAiB;IAW3F;;OAEG;IACH,MAAM,CAAC,mCAAmC,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB;CAU9E"}
|
package/dist/tools/errors.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../chunk-
|
|
1
|
+
import "../chunk-PTJYTZNU.js";
|
|
2
2
|
import { DextoRuntimeError } from "../errors/DextoRuntimeError.js";
|
|
3
3
|
import { ErrorScope, ErrorType } from "../errors/types.js";
|
|
4
4
|
import { ToolErrorCode } from "./error-codes.js";
|
|
@@ -39,6 +39,21 @@ class ToolError {
|
|
|
39
39
|
{ toolName, sessionId }
|
|
40
40
|
);
|
|
41
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* Directory access denied by user
|
|
44
|
+
* Used when a file tool tries to access a path outside allowed directories
|
|
45
|
+
* and the user denies the directory access approval
|
|
46
|
+
*/
|
|
47
|
+
static directoryAccessDenied(directory, sessionId) {
|
|
48
|
+
return new DextoRuntimeError(
|
|
49
|
+
ToolErrorCode.DIRECTORY_ACCESS_DENIED,
|
|
50
|
+
ErrorScope.TOOLS,
|
|
51
|
+
ErrorType.FORBIDDEN,
|
|
52
|
+
`Access to directory '${directory}' was denied`,
|
|
53
|
+
{ directory, sessionId },
|
|
54
|
+
"Request access to the directory or work within the allowed working directory"
|
|
55
|
+
);
|
|
56
|
+
}
|
|
42
57
|
/**
|
|
43
58
|
* Tool execution timeout
|
|
44
59
|
*/
|
|
@@ -52,6 +67,20 @@ class ToolError {
|
|
|
52
67
|
{ toolName, timeoutMs, sessionId }
|
|
53
68
|
);
|
|
54
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* Tool validation failed (pre-execution check)
|
|
72
|
+
* Used when tool inputs are semantically invalid (e.g., file not found, string not in file)
|
|
73
|
+
* This should fail before approval, not after.
|
|
74
|
+
*/
|
|
75
|
+
static validationFailed(toolName, reason, context) {
|
|
76
|
+
return new DextoRuntimeError(
|
|
77
|
+
ToolErrorCode.VALIDATION_FAILED,
|
|
78
|
+
ErrorScope.TOOLS,
|
|
79
|
+
ErrorType.USER,
|
|
80
|
+
`Tool '${toolName}' validation failed: ${reason}`,
|
|
81
|
+
{ toolName, reason, ...context }
|
|
82
|
+
);
|
|
83
|
+
}
|
|
55
84
|
/**
|
|
56
85
|
* Tool unauthorized access
|
|
57
86
|
*/
|
|
@@ -136,6 +165,48 @@ class ToolError {
|
|
|
136
165
|
{ toolName, reason }
|
|
137
166
|
);
|
|
138
167
|
}
|
|
168
|
+
/**
|
|
169
|
+
* Tool requires features which are currently disabled
|
|
170
|
+
*/
|
|
171
|
+
static featureDisabled(toolName, missingFeatures, message) {
|
|
172
|
+
return new DextoRuntimeError(
|
|
173
|
+
ToolErrorCode.FEATURE_DISABLED,
|
|
174
|
+
ErrorScope.TOOLS,
|
|
175
|
+
ErrorType.USER,
|
|
176
|
+
message,
|
|
177
|
+
{ toolName, missingFeatures },
|
|
178
|
+
[
|
|
179
|
+
`Remove '${toolName}' from internalTools in your agent config`,
|
|
180
|
+
`Or enable required features: ${missingFeatures.map((f) => `${f}.enabled: true`).join(", ")}`
|
|
181
|
+
]
|
|
182
|
+
);
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Unknown custom tool provider type
|
|
186
|
+
*/
|
|
187
|
+
static unknownCustomToolProvider(type, availableTypes) {
|
|
188
|
+
return new DextoRuntimeError(
|
|
189
|
+
ToolErrorCode.CUSTOM_TOOL_PROVIDER_UNKNOWN,
|
|
190
|
+
ErrorScope.TOOLS,
|
|
191
|
+
ErrorType.USER,
|
|
192
|
+
`Unknown custom tool provider: '${type}'`,
|
|
193
|
+
{ type, availableTypes },
|
|
194
|
+
`Available types: ${availableTypes.length > 0 ? availableTypes.join(", ") : "none"}`
|
|
195
|
+
);
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Custom tool provider already registered
|
|
199
|
+
*/
|
|
200
|
+
static customToolProviderAlreadyRegistered(type) {
|
|
201
|
+
return new DextoRuntimeError(
|
|
202
|
+
ToolErrorCode.CUSTOM_TOOL_PROVIDER_ALREADY_REGISTERED,
|
|
203
|
+
ErrorScope.TOOLS,
|
|
204
|
+
ErrorType.USER,
|
|
205
|
+
`Custom tool provider '${type}' is already registered`,
|
|
206
|
+
{ type },
|
|
207
|
+
`Use unregister() first if you want to replace it`
|
|
208
|
+
);
|
|
209
|
+
}
|
|
139
210
|
}
|
|
140
211
|
export {
|
|
141
212
|
ToolError
|
package/dist/tools/index.cjs
CHANGED
|
@@ -19,17 +19,31 @@ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "defau
|
|
|
19
19
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
20
|
var tools_exports = {};
|
|
21
21
|
__export(tools_exports, {
|
|
22
|
-
|
|
22
|
+
ToolError: () => import_errors.ToolError,
|
|
23
|
+
ToolErrorCode: () => import_error_codes.ToolErrorCode,
|
|
24
|
+
ToolManager: () => import_tool_manager.ToolManager,
|
|
25
|
+
customToolRegistry: () => import_custom_tool_registry.customToolRegistry,
|
|
26
|
+
customToolSchemaRegistry: () => import_custom_tool_schema_registry.customToolSchemaRegistry
|
|
23
27
|
});
|
|
24
28
|
module.exports = __toCommonJS(tools_exports);
|
|
25
29
|
__reExport(tools_exports, require("./types.js"), module.exports);
|
|
30
|
+
__reExport(tools_exports, require("./display-types.js"), module.exports);
|
|
26
31
|
__reExport(tools_exports, require("./internal-tools/index.js"), module.exports);
|
|
32
|
+
var import_custom_tool_registry = require("./custom-tool-registry.js");
|
|
33
|
+
var import_custom_tool_schema_registry = require("./custom-tool-schema-registry.js");
|
|
27
34
|
__reExport(tools_exports, require("./schemas.js"), module.exports);
|
|
35
|
+
var import_errors = require("./errors.js");
|
|
36
|
+
var import_error_codes = require("./error-codes.js");
|
|
28
37
|
var import_tool_manager = require("./tool-manager.js");
|
|
29
38
|
// Annotate the CommonJS export names for ESM import in node:
|
|
30
39
|
0 && (module.exports = {
|
|
40
|
+
ToolError,
|
|
41
|
+
ToolErrorCode,
|
|
31
42
|
ToolManager,
|
|
43
|
+
customToolRegistry,
|
|
44
|
+
customToolSchemaRegistry,
|
|
32
45
|
...require("./types.js"),
|
|
46
|
+
...require("./display-types.js"),
|
|
33
47
|
...require("./internal-tools/index.js"),
|
|
34
48
|
...require("./schemas.js")
|
|
35
49
|
});
|
package/dist/tools/index.d.ts
CHANGED
|
@@ -5,7 +5,12 @@
|
|
|
5
5
|
* MCP servers and internal tools.
|
|
6
6
|
*/
|
|
7
7
|
export * from './types.js';
|
|
8
|
+
export * from './display-types.js';
|
|
8
9
|
export * from './internal-tools/index.js';
|
|
10
|
+
export { customToolRegistry, type CustomToolProvider, type CustomToolRegistry, type ToolCreationContext, } from './custom-tool-registry.js';
|
|
11
|
+
export { customToolSchemaRegistry } from './custom-tool-schema-registry.js';
|
|
9
12
|
export * from './schemas.js';
|
|
13
|
+
export { ToolError } from './errors.js';
|
|
14
|
+
export { ToolErrorCode } from './error-codes.js';
|
|
10
15
|
export { ToolManager, type InternalToolsOptions } from './tool-manager.js';
|
|
11
16
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,YAAY,CAAC;AAG3B,cAAc,2BAA2B,CAAC;AAG1C,cAAc,cAAc,CAAC;AAG7B,OAAO,EAAE,WAAW,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,YAAY,CAAC;AAG3B,cAAc,oBAAoB,CAAC;AAGnC,cAAc,2BAA2B,CAAC;AAG1C,OAAO,EACH,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,GAC3B,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAG5E,cAAc,cAAc,CAAC;AAG7B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,OAAO,EAAE,WAAW,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/tools/index.js
CHANGED
|
@@ -1,8 +1,19 @@
|
|
|
1
|
-
import "../chunk-
|
|
1
|
+
import "../chunk-PTJYTZNU.js";
|
|
2
2
|
export * from "./types.js";
|
|
3
|
+
export * from "./display-types.js";
|
|
3
4
|
export * from "./internal-tools/index.js";
|
|
5
|
+
import {
|
|
6
|
+
customToolRegistry
|
|
7
|
+
} from "./custom-tool-registry.js";
|
|
8
|
+
import { customToolSchemaRegistry } from "./custom-tool-schema-registry.js";
|
|
4
9
|
export * from "./schemas.js";
|
|
10
|
+
import { ToolError } from "./errors.js";
|
|
11
|
+
import { ToolErrorCode } from "./error-codes.js";
|
|
5
12
|
import { ToolManager } from "./tool-manager.js";
|
|
6
13
|
export {
|
|
7
|
-
|
|
14
|
+
ToolError,
|
|
15
|
+
ToolErrorCode,
|
|
16
|
+
ToolManager,
|
|
17
|
+
customToolRegistry,
|
|
18
|
+
customToolSchemaRegistry
|
|
8
19
|
};
|
|
@@ -24,15 +24,9 @@ module.exports = __toCommonJS(constants_exports);
|
|
|
24
24
|
const INTERNAL_TOOL_NAMES = [
|
|
25
25
|
"search_history",
|
|
26
26
|
"ask_user",
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"write_file",
|
|
31
|
-
"edit_file",
|
|
32
|
-
"bash_exec",
|
|
33
|
-
"bash_output",
|
|
34
|
-
"kill_process",
|
|
35
|
-
"delegate_to_url"
|
|
27
|
+
"delegate_to_url",
|
|
28
|
+
"list_resources",
|
|
29
|
+
"get_resource"
|
|
36
30
|
];
|
|
37
31
|
// Annotate the CommonJS export names for ESM import in node:
|
|
38
32
|
0 && (module.exports = {
|
|
@@ -7,6 +7,6 @@
|
|
|
7
7
|
* Available internal tool names
|
|
8
8
|
* Must be kept in sync with INTERNAL_TOOL_REGISTRY in registry.ts
|
|
9
9
|
*/
|
|
10
|
-
export declare const INTERNAL_TOOL_NAMES: readonly ["search_history", "ask_user", "
|
|
10
|
+
export declare const INTERNAL_TOOL_NAMES: readonly ["search_history", "ask_user", "delegate_to_url", "list_resources", "get_resource"];
|
|
11
11
|
export type KnownInternalTool = (typeof INTERNAL_TOOL_NAMES)[number];
|
|
12
12
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/tools/internal-tools/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/tools/internal-tools/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;GAGG;AACH,eAAO,MAAM,mBAAmB,8FAMtB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC"}
|
|
@@ -1,16 +1,10 @@
|
|
|
1
|
-
import "../../chunk-
|
|
1
|
+
import "../../chunk-PTJYTZNU.js";
|
|
2
2
|
const INTERNAL_TOOL_NAMES = [
|
|
3
3
|
"search_history",
|
|
4
4
|
"ask_user",
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"write_file",
|
|
9
|
-
"edit_file",
|
|
10
|
-
"bash_exec",
|
|
11
|
-
"bash_output",
|
|
12
|
-
"kill_process",
|
|
13
|
-
"delegate_to_url"
|
|
5
|
+
"delegate_to_url",
|
|
6
|
+
"list_resources",
|
|
7
|
+
"get_resource"
|
|
14
8
|
];
|
|
15
9
|
export {
|
|
16
10
|
INTERNAL_TOOL_NAMES
|
|
@@ -29,7 +29,7 @@ const AskUserInputSchema = import_zod.z.object({
|
|
|
29
29
|
properties: import_zod.z.record(import_zod.z.unknown()),
|
|
30
30
|
required: import_zod.z.array(import_zod.z.string()).optional()
|
|
31
31
|
}).passthrough().describe(
|
|
32
|
-
'JSON Schema defining
|
|
32
|
+
'JSON Schema defining form fields. Use descriptive property names as labels (e.g., "favorite_team", "World Cup winner country") - NOT generic names like "q1". Use "enum" for dropdowns, "boolean" for yes/no, "number" for numeric inputs, "string" for text. Include "required" array for mandatory fields.'
|
|
33
33
|
)
|
|
34
34
|
}).strict();
|
|
35
35
|
function createAskUserTool(approvalManager) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../../../chunk-
|
|
1
|
+
import "../../../chunk-PTJYTZNU.js";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
const AskUserInputSchema = z.object({
|
|
4
4
|
question: z.string().describe("The question or prompt to display to the user"),
|
|
@@ -7,7 +7,7 @@ const AskUserInputSchema = z.object({
|
|
|
7
7
|
properties: z.record(z.unknown()),
|
|
8
8
|
required: z.array(z.string()).optional()
|
|
9
9
|
}).passthrough().describe(
|
|
10
|
-
'JSON Schema defining
|
|
10
|
+
'JSON Schema defining form fields. Use descriptive property names as labels (e.g., "favorite_team", "World Cup winner country") - NOT generic names like "q1". Use "enum" for dropdowns, "boolean" for yes/no, "number" for numeric inputs, "string" for text. Include "required" array for mandatory fields.'
|
|
11
11
|
)
|
|
12
12
|
}).strict();
|
|
13
13
|
function createAskUserTool(approvalManager) {
|