@dexto/core 1.4.0 → 1.5.1
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 +36 -0
- package/dist/agent/DextoAgent.cjs +22 -3
- package/dist/agent/DextoAgent.d.ts +19 -2
- package/dist/agent/DextoAgent.d.ts.map +1 -1
- package/dist/agent/DextoAgent.js +23 -4
- package/dist/agent/index.cjs +4 -1
- package/dist/agent/index.d.ts +1 -1
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/index.js +5 -1
- package/dist/agent/schemas.cjs +90 -71
- package/dist/agent/schemas.d.ts +5959 -96
- package/dist/agent/schemas.d.ts.map +1 -1
- package/dist/agent/schemas.js +87 -66
- package/dist/approval/manager.cjs +165 -1
- package/dist/approval/manager.d.ts +91 -2
- package/dist/approval/manager.d.ts.map +1 -1
- package/dist/approval/manager.js +155 -1
- package/dist/approval/schemas.cjs +39 -3
- package/dist/approval/schemas.d.ts +238 -1
- package/dist/approval/schemas.d.ts.map +1 -1
- package/dist/approval/schemas.js +35 -3
- package/dist/approval/types.cjs +1 -0
- package/dist/approval/types.d.ts +26 -1
- package/dist/approval/types.d.ts.map +1 -1
- package/dist/approval/types.js +1 -0
- 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/{compression → compaction}/overflow.cjs +3 -3
- package/dist/context/{compression → compaction}/overflow.d.ts +4 -4
- package/dist/context/compaction/overflow.d.ts.map +1 -0
- package/dist/context/{compression → compaction}/overflow.js +2 -2
- 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/context/compaction/registry.cjs +39 -0
- 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/context/compaction/strategies/noop.cjs +36 -0
- 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/{compression → compaction/strategies}/reactive-overflow.cjs +3 -3
- package/dist/context/{compression → compaction/strategies}/reactive-overflow.d.ts +6 -6
- package/dist/context/compaction/strategies/reactive-overflow.d.ts.map +1 -0
- package/dist/context/{compression → compaction/strategies}/reactive-overflow.js +4 -4
- package/dist/context/{compression → compaction}/types.d.ts +4 -4
- package/dist/context/compaction/types.d.ts.map +1 -0
- package/dist/context/compaction/types.js +0 -0
- package/dist/context/error-codes.cjs +4 -0
- package/dist/context/error-codes.d.ts +4 -0
- package/dist/context/error-codes.d.ts.map +1 -1
- package/dist/context/error-codes.js +4 -0
- package/dist/context/errors.cjs +40 -0
- package/dist/context/errors.d.ts +14 -0
- package/dist/context/errors.d.ts.map +1 -1
- package/dist/context/errors.js +40 -0
- 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 +1 -0
- package/dist/context/types.d.ts +6 -0
- package/dist/context/types.d.ts.map +1 -1
- package/dist/context/utils.cjs +27 -7
- package/dist/context/utils.d.ts.map +1 -1
- package/dist/context/utils.js +27 -7
- package/dist/errors/result-bridge.cjs +2 -3
- package/dist/errors/result-bridge.d.ts.map +1 -1
- package/dist/errors/result-bridge.js +2 -3
- package/dist/events/index.cjs +6 -3
- package/dist/events/index.d.ts +35 -19
- package/dist/events/index.d.ts.map +1 -1
- package/dist/events/index.js +5 -3
- 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 +39 -0
- package/dist/filesystem/index.d.ts +1 -1
- package/dist/filesystem/index.d.ts.map +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 +69 -1
- 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/image/index.cjs +32 -0
- 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.cjs +16 -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.cjs +5 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/llm/error-codes.cjs +1 -0
- package/dist/llm/error-codes.d.ts +1 -0
- package/dist/llm/error-codes.d.ts.map +1 -1
- package/dist/llm/error-codes.js +1 -0
- package/dist/llm/errors.cjs +24 -0
- package/dist/llm/errors.d.ts +19 -6
- package/dist/llm/errors.d.ts.map +1 -1
- package/dist/llm/errors.js +24 -0
- package/dist/llm/executor/provider-options.cjs +87 -0
- package/dist/llm/executor/provider-options.d.ts +49 -0
- package/dist/llm/executor/provider-options.d.ts.map +1 -0
- package/dist/llm/executor/provider-options.js +63 -0
- package/dist/llm/executor/stream-processor.cjs +22 -11
- package/dist/llm/executor/stream-processor.d.ts.map +1 -1
- package/dist/llm/executor/stream-processor.js +22 -11
- package/dist/llm/executor/turn-executor.cjs +60 -23
- package/dist/llm/executor/turn-executor.d.ts +7 -5
- package/dist/llm/executor/turn-executor.d.ts.map +1 -1
- package/dist/llm/executor/turn-executor.js +60 -23
- package/dist/llm/formatters/vercel.cjs +15 -3
- package/dist/llm/formatters/vercel.d.ts.map +1 -1
- package/dist/llm/formatters/vercel.js +15 -3
- 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 +604 -9
- package/dist/llm/registry.d.ts +35 -0
- package/dist/llm/registry.d.ts.map +1 -1
- package/dist/llm/registry.js +600 -9
- package/dist/llm/resolver.cjs +63 -5
- package/dist/llm/resolver.d.ts +3 -3
- package/dist/llm/resolver.d.ts.map +1 -1
- package/dist/llm/resolver.js +69 -6
- package/dist/llm/schemas.cjs +107 -81
- package/dist/llm/schemas.d.ts +181 -22
- package/dist/llm/schemas.d.ts.map +1 -1
- package/dist/llm/schemas.js +107 -81
- package/dist/llm/services/factory.cjs +87 -13
- package/dist/llm/services/factory.d.ts +4 -1
- package/dist/llm/services/factory.d.ts.map +1 -1
- package/dist/llm/services/factory.js +85 -12
- package/dist/llm/services/test-utils.integration.cjs +22 -2
- 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 +26 -3
- package/dist/llm/services/vercel.cjs +8 -3
- package/dist/llm/services/vercel.d.ts +3 -2
- package/dist/llm/services/vercel.d.ts.map +1 -1
- package/dist/llm/services/vercel.js +8 -3
- package/dist/llm/types.cjs +11 -1
- package/dist/llm/types.d.ts +1 -1
- package/dist/llm/types.d.ts.map +1 -1
- package/dist/llm/types.js +11 -1
- package/dist/logger/logger.cjs +7 -3
- package/dist/logger/logger.d.ts.map +1 -1
- package/dist/logger/logger.js +7 -3
- package/dist/mcp/manager.cjs +8 -0
- package/dist/mcp/manager.d.ts +17 -0
- package/dist/mcp/manager.d.ts.map +1 -1
- package/dist/mcp/manager.js +8 -0
- package/dist/mcp/mcp-client.cjs +0 -3
- package/dist/mcp/mcp-client.d.ts.map +1 -1
- package/dist/mcp/mcp-client.js +0 -3
- package/dist/memory/schemas.d.ts +3 -3
- 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 +3 -0
- 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 +6 -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 +92 -7
- 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 +62 -5
- package/dist/plugins/schemas.d.ts.map +1 -1
- package/dist/plugins/schemas.js +15 -4
- 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 +109 -0
- package/dist/providers/discovery.d.ts +96 -0
- package/dist/providers/discovery.d.ts.map +1 -0
- package/dist/providers/discovery.js +84 -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/reference-parser.cjs +3 -3
- package/dist/resources/reference-parser.d.ts.map +1 -1
- package/dist/resources/reference-parser.js +3 -3
- package/dist/session/chat-session.cjs +20 -3
- package/dist/session/chat-session.d.ts.map +1 -1
- package/dist/session/chat-session.js +21 -4
- package/dist/session/history/database.cjs +49 -15
- package/dist/session/history/database.d.ts.map +1 -1
- package/dist/session/history/database.js +49 -15
- package/dist/session/session-manager.cjs +2 -1
- package/dist/session/session-manager.d.ts.map +1 -1
- package/dist/session/session-manager.js +2 -1
- 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 +8 -11
- 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/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 +6 -11
- 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 +8 -26
- 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/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/registry.cjs +50 -0
- 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 +3 -1
- 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 +8 -37
- 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/postgres-store.cjs +174 -78
- package/dist/storage/database/postgres-store.d.ts +19 -0
- package/dist/storage/database/postgres-store.d.ts.map +1 -1
- package/dist/storage/database/postgres-store.js +174 -78
- 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 +12 -3
- package/dist/storage/database/schemas.d.ts +11 -4
- package/dist/storage/database/schemas.d.ts.map +1 -1
- package/dist/storage/database/schemas.js +8 -2
- 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 +6 -0
- 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 +80 -0
- 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 +32 -3
- package/dist/storage/schemas.cjs +4 -0
- package/dist/storage/schemas.d.ts +24 -50
- package/dist/storage/schemas.d.ts.map +1 -1
- package/dist/storage/schemas.js +5 -1
- package/dist/storage/storage-manager.cjs +6 -6
- package/dist/storage/storage-manager.d.ts.map +1 -1
- package/dist/storage/storage-manager.js +3 -3
- 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 +6 -5
- 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 +2 -2
- package/dist/systemPrompt/schemas.cjs +2 -2
- package/dist/systemPrompt/schemas.d.ts +13 -13
- package/dist/systemPrompt/schemas.js +2 -2
- package/dist/tools/custom-tool-registry.cjs +64 -0
- package/dist/tools/custom-tool-registry.d.ts +126 -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/error-codes.cjs +3 -0
- package/dist/tools/error-codes.d.ts +4 -1
- package/dist/tools/error-codes.d.ts.map +1 -1
- package/dist/tools/error-codes.js +3 -0
- package/dist/tools/errors.cjs +41 -0
- package/dist/tools/errors.d.ts +17 -0
- package/dist/tools/errors.d.ts.map +1 -1
- package/dist/tools/errors.js +41 -0
- package/dist/tools/index.cjs +13 -1
- package/dist/tools/index.d.ts +4 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +11 -1
- 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 +3 -9
- 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/provider.cjs +153 -23
- package/dist/tools/internal-tools/provider.d.ts +55 -10
- package/dist/tools/internal-tools/provider.d.ts.map +1 -1
- package/dist/tools/internal-tools/provider.js +153 -23
- package/dist/tools/internal-tools/registry.cjs +18 -43
- package/dist/tools/internal-tools/registry.d.ts +4 -4
- package/dist/tools/internal-tools/registry.d.ts.map +1 -1
- package/dist/tools/internal-tools/registry.js +18 -43
- package/dist/tools/schemas.cjs +20 -0
- package/dist/tools/schemas.d.ts +43 -1
- package/dist/tools/schemas.d.ts.map +1 -1
- package/dist/tools/schemas.js +16 -0
- package/dist/tools/tool-manager.cjs +140 -13
- package/dist/tools/tool-manager.d.ts +22 -3
- package/dist/tools/tool-manager.d.ts.map +1 -1
- package/dist/tools/tool-manager.js +140 -13
- package/dist/tools/types.d.ts +43 -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 +19 -1
- package/dist/utils/index.cjs +0 -2
- package/dist/utils/index.d.ts +0 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +0 -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 +18 -3
- package/dist/utils/service-initializer.cjs +9 -35
- package/dist/utils/service-initializer.d.ts.map +1 -1
- package/dist/utils/service-initializer.js +9 -35
- package/package.json +5 -2
- package/dist/context/compression/overflow.d.ts.map +0 -1
- package/dist/context/compression/reactive-overflow.d.ts.map +0 -1
- package/dist/context/compression/types.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +0 -130
- 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 -97
- 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 -127
- 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 -104
- package/dist/tools/internal-tools/implementations/glob-files-tool.cjs +0 -70
- 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 -47
- package/dist/tools/internal-tools/implementations/grep-content-tool.cjs +0 -86
- 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 -63
- 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 -63
- 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 -40
- package/dist/tools/internal-tools/implementations/write-file-tool.cjs +0 -124
- 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 -103
- 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
|
@@ -2,31 +2,59 @@ import "../../chunk-PTJYTZNU.js";
|
|
|
2
2
|
import { ToolError } from "../errors.js";
|
|
3
3
|
import { convertZodSchemaToJsonSchema } from "../../utils/schema.js";
|
|
4
4
|
import { getInternalToolInfo } from "./registry.js";
|
|
5
|
+
import { customToolRegistry } from "../custom-tool-registry.js";
|
|
6
|
+
import { DextoRuntimeError } from "../../errors/DextoRuntimeError.js";
|
|
7
|
+
import { ToolErrorCode } from "../error-codes.js";
|
|
5
8
|
class InternalToolsProvider {
|
|
6
9
|
services;
|
|
7
|
-
|
|
8
|
-
//
|
|
10
|
+
internalTools = /* @__PURE__ */ new Map();
|
|
11
|
+
// Built-in internal tools
|
|
12
|
+
customTools = /* @__PURE__ */ new Map();
|
|
13
|
+
// Custom tool provider tools
|
|
9
14
|
config;
|
|
15
|
+
customToolConfigs;
|
|
10
16
|
logger;
|
|
11
|
-
|
|
17
|
+
agent;
|
|
18
|
+
// Set after construction to avoid circular dependency
|
|
19
|
+
constructor(services, config = [], customToolConfigs = [], logger) {
|
|
12
20
|
this.services = services;
|
|
13
21
|
this.config = config;
|
|
22
|
+
this.customToolConfigs = customToolConfigs;
|
|
14
23
|
this.logger = logger;
|
|
15
|
-
this.logger.debug("InternalToolsProvider initialized with config:", {
|
|
24
|
+
this.logger.debug("InternalToolsProvider initialized with config:", {
|
|
25
|
+
config,
|
|
26
|
+
customToolConfigs
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Set agent reference after construction (avoids circular dependency)
|
|
31
|
+
* Must be called before initialize() if custom tools need agent access
|
|
32
|
+
*/
|
|
33
|
+
setAgent(agent) {
|
|
34
|
+
this.agent = agent;
|
|
16
35
|
}
|
|
17
36
|
/**
|
|
18
37
|
* Initialize the internal tools provider by registering all available internal tools
|
|
38
|
+
* and custom tools from the registry
|
|
19
39
|
*/
|
|
20
40
|
async initialize() {
|
|
21
41
|
this.logger.info("Initializing InternalToolsProvider...");
|
|
22
42
|
try {
|
|
23
|
-
if (this.config.length
|
|
43
|
+
if (this.config.length > 0) {
|
|
44
|
+
this.registerInternalTools();
|
|
45
|
+
} else {
|
|
24
46
|
this.logger.info("No internal tools enabled by configuration");
|
|
25
|
-
return;
|
|
26
47
|
}
|
|
27
|
-
this.
|
|
28
|
-
|
|
29
|
-
|
|
48
|
+
if (this.customToolConfigs.length > 0) {
|
|
49
|
+
this.registerCustomTools();
|
|
50
|
+
} else {
|
|
51
|
+
this.logger.debug("No custom tool providers configured");
|
|
52
|
+
}
|
|
53
|
+
const internalCount = this.internalTools.size;
|
|
54
|
+
const customCount = this.customTools.size;
|
|
55
|
+
this.logger.info(
|
|
56
|
+
`InternalToolsProvider initialized with ${internalCount + customCount} tools (${internalCount} internal, ${customCount} custom)`
|
|
57
|
+
);
|
|
30
58
|
} catch (error) {
|
|
31
59
|
this.logger.error(
|
|
32
60
|
`Failed to initialize InternalToolsProvider: ${error instanceof Error ? error.message : String(error)}`
|
|
@@ -64,7 +92,7 @@ class InternalToolsProvider {
|
|
|
64
92
|
}
|
|
65
93
|
try {
|
|
66
94
|
const tool = toolInfo.factory(this.services);
|
|
67
|
-
this.
|
|
95
|
+
this.internalTools.set(toolName, tool);
|
|
68
96
|
this.logger.debug(`Registered ${toolName} internal tool`);
|
|
69
97
|
} catch (error) {
|
|
70
98
|
this.logger.error(
|
|
@@ -74,27 +102,92 @@ class InternalToolsProvider {
|
|
|
74
102
|
}
|
|
75
103
|
}
|
|
76
104
|
/**
|
|
77
|
-
*
|
|
105
|
+
* Register custom tools from the custom tool registry.
|
|
106
|
+
* Tools are stored by their original ID - prefixing is handled by ToolManager.
|
|
107
|
+
*/
|
|
108
|
+
registerCustomTools() {
|
|
109
|
+
if (!this.agent) {
|
|
110
|
+
throw ToolError.configInvalid(
|
|
111
|
+
"Agent reference not set. Call setAgent() before initialize() when using custom tools."
|
|
112
|
+
);
|
|
113
|
+
}
|
|
114
|
+
const context = {
|
|
115
|
+
logger: this.logger,
|
|
116
|
+
agent: this.agent,
|
|
117
|
+
services: {
|
|
118
|
+
...this.services,
|
|
119
|
+
// Include storageManager from agent services for custom tools that need persistence
|
|
120
|
+
storageManager: this.agent.services?.storageManager
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
for (const toolConfig of this.customToolConfigs) {
|
|
124
|
+
try {
|
|
125
|
+
const validatedConfig = customToolRegistry.validateConfig(toolConfig);
|
|
126
|
+
const provider = customToolRegistry.get(validatedConfig.type);
|
|
127
|
+
if (!provider) {
|
|
128
|
+
const availableTypes = customToolRegistry.getTypes();
|
|
129
|
+
throw ToolError.unknownCustomToolProvider(validatedConfig.type, availableTypes);
|
|
130
|
+
}
|
|
131
|
+
const tools = provider.create(validatedConfig, context);
|
|
132
|
+
for (const tool of tools) {
|
|
133
|
+
if (this.customTools.has(tool.id)) {
|
|
134
|
+
this.logger.warn(
|
|
135
|
+
`Custom tool '${tool.id}' conflicts with existing custom tool. Skipping.`
|
|
136
|
+
);
|
|
137
|
+
continue;
|
|
138
|
+
}
|
|
139
|
+
this.customTools.set(tool.id, tool);
|
|
140
|
+
this.logger.debug(
|
|
141
|
+
`Registered custom tool: ${tool.id} from provider '${provider.metadata?.displayName || validatedConfig.type}'`
|
|
142
|
+
);
|
|
143
|
+
}
|
|
144
|
+
} catch (error) {
|
|
145
|
+
if (error instanceof DextoRuntimeError && error.code === ToolErrorCode.CUSTOM_TOOL_PROVIDER_UNKNOWN) {
|
|
146
|
+
throw error;
|
|
147
|
+
}
|
|
148
|
+
this.logger.error(
|
|
149
|
+
`Failed to register custom tool provider: ${error instanceof Error ? error.message : String(error)}`
|
|
150
|
+
);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Check if a tool exists (checks both internal and custom tools)
|
|
78
156
|
*/
|
|
79
157
|
hasTool(toolName) {
|
|
80
|
-
return this.
|
|
158
|
+
return this.internalTools.has(toolName) || this.customTools.has(toolName);
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Check if an internal tool exists
|
|
162
|
+
*/
|
|
163
|
+
hasInternalTool(toolName) {
|
|
164
|
+
return this.internalTools.has(toolName);
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Check if a custom tool exists
|
|
168
|
+
*/
|
|
169
|
+
hasCustomTool(toolName) {
|
|
170
|
+
return this.customTools.has(toolName);
|
|
81
171
|
}
|
|
82
172
|
/**
|
|
83
173
|
* Get an internal tool by name
|
|
84
174
|
* Returns undefined if tool doesn't exist
|
|
85
175
|
*/
|
|
86
176
|
getTool(toolName) {
|
|
87
|
-
return this.
|
|
177
|
+
return this.internalTools.get(toolName) || this.customTools.get(toolName);
|
|
88
178
|
}
|
|
89
179
|
/**
|
|
90
180
|
* Execute an internal tool - confirmation is handled by ToolManager
|
|
91
181
|
*/
|
|
92
182
|
async executeTool(toolName, args, sessionId, abortSignal) {
|
|
93
|
-
const tool = this.
|
|
183
|
+
const tool = this.internalTools.get(toolName) || this.customTools.get(toolName);
|
|
94
184
|
if (!tool) {
|
|
95
|
-
this.logger.error(`\u274C No
|
|
185
|
+
this.logger.error(`\u274C No tool found: ${toolName}`);
|
|
96
186
|
this.logger.debug(
|
|
97
|
-
`Available internal tools: ${Array.from(this.
|
|
187
|
+
`Available internal tools: ${Array.from(this.internalTools.keys()).join(", ")}`
|
|
188
|
+
);
|
|
189
|
+
this.logger.debug(
|
|
190
|
+
`Available custom tools: ${Array.from(this.customTools.keys()).join(", ")}`
|
|
98
191
|
);
|
|
99
192
|
throw ToolError.notFound(toolName);
|
|
100
193
|
}
|
|
@@ -123,31 +216,68 @@ class InternalToolsProvider {
|
|
|
123
216
|
}
|
|
124
217
|
}
|
|
125
218
|
/**
|
|
126
|
-
* Get
|
|
219
|
+
* Get internal tools in ToolSet format (excludes custom tools)
|
|
220
|
+
*/
|
|
221
|
+
getInternalTools() {
|
|
222
|
+
const toolSet = {};
|
|
223
|
+
for (const [name, tool] of this.internalTools) {
|
|
224
|
+
toolSet[name] = {
|
|
225
|
+
name: tool.id,
|
|
226
|
+
description: tool.description,
|
|
227
|
+
parameters: convertZodSchemaToJsonSchema(tool.inputSchema, this.logger)
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
return toolSet;
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Get custom tools in ToolSet format (excludes internal tools)
|
|
127
234
|
*/
|
|
128
|
-
|
|
235
|
+
getCustomTools() {
|
|
129
236
|
const toolSet = {};
|
|
130
|
-
for (const [name, tool] of this.
|
|
237
|
+
for (const [name, tool] of this.customTools) {
|
|
131
238
|
toolSet[name] = {
|
|
132
239
|
name: tool.id,
|
|
133
240
|
description: tool.description,
|
|
134
241
|
parameters: convertZodSchemaToJsonSchema(tool.inputSchema, this.logger)
|
|
135
|
-
// ← Convert on-demand
|
|
136
242
|
};
|
|
137
243
|
}
|
|
138
244
|
return toolSet;
|
|
139
245
|
}
|
|
140
246
|
/**
|
|
141
|
-
* Get tool names
|
|
247
|
+
* Get internal tool names
|
|
248
|
+
*/
|
|
249
|
+
getInternalToolNames() {
|
|
250
|
+
return Array.from(this.internalTools.keys());
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Get custom tool names
|
|
254
|
+
*/
|
|
255
|
+
getCustomToolNames() {
|
|
256
|
+
return Array.from(this.customTools.keys());
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Get all tool names (internal + custom)
|
|
142
260
|
*/
|
|
143
261
|
getToolNames() {
|
|
144
|
-
return
|
|
262
|
+
return [...this.internalTools.keys(), ...this.customTools.keys()];
|
|
145
263
|
}
|
|
146
264
|
/**
|
|
147
265
|
* Get tool count
|
|
148
266
|
*/
|
|
149
267
|
getToolCount() {
|
|
150
|
-
return this.
|
|
268
|
+
return this.internalTools.size + this.customTools.size;
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* Get internal tool count
|
|
272
|
+
*/
|
|
273
|
+
getInternalToolCount() {
|
|
274
|
+
return this.internalTools.size;
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Get custom tool count
|
|
278
|
+
*/
|
|
279
|
+
getCustomToolCount() {
|
|
280
|
+
return this.customTools.size;
|
|
151
281
|
}
|
|
152
282
|
}
|
|
153
283
|
export {
|
|
@@ -24,60 +24,35 @@ __export(registry_exports, {
|
|
|
24
24
|
module.exports = __toCommonJS(registry_exports);
|
|
25
25
|
var import_search_history_tool = require("./implementations/search-history-tool.js");
|
|
26
26
|
var import_ask_user_tool = require("./implementations/ask-user-tool.js");
|
|
27
|
-
var import_read_file_tool = require("./implementations/read-file-tool.js");
|
|
28
|
-
var import_glob_files_tool = require("./implementations/glob-files-tool.js");
|
|
29
|
-
var import_grep_content_tool = require("./implementations/grep-content-tool.js");
|
|
30
|
-
var import_write_file_tool = require("./implementations/write-file-tool.js");
|
|
31
|
-
var import_edit_file_tool = require("./implementations/edit-file-tool.js");
|
|
32
|
-
var import_bash_exec_tool = require("./implementations/bash-exec-tool.js");
|
|
33
|
-
var import_bash_output_tool = require("./implementations/bash-output-tool.js");
|
|
34
|
-
var import_kill_process_tool = require("./implementations/kill-process-tool.js");
|
|
35
27
|
var import_delegate_to_url_tool = require("./implementations/delegate-to-url-tool.js");
|
|
28
|
+
var import_list_resources_tool = require("./implementations/list-resources-tool.js");
|
|
29
|
+
var import_get_resource_tool = require("./implementations/get-resource-tool.js");
|
|
36
30
|
const INTERNAL_TOOL_REGISTRY = {
|
|
37
31
|
search_history: {
|
|
38
32
|
factory: (services) => (0, import_search_history_tool.createSearchHistoryTool)(services.searchService),
|
|
39
|
-
requiredServices: ["searchService"]
|
|
33
|
+
requiredServices: ["searchService"],
|
|
34
|
+
description: "Search through conversation history across sessions"
|
|
40
35
|
},
|
|
41
36
|
ask_user: {
|
|
42
37
|
factory: (services) => (0, import_ask_user_tool.createAskUserTool)(services.approvalManager),
|
|
43
38
|
requiredServices: ["approvalManager"],
|
|
44
|
-
requiredFeatures: ["elicitation"]
|
|
45
|
-
|
|
46
|
-
read_file: {
|
|
47
|
-
factory: (services) => (0, import_read_file_tool.createReadFileTool)(services.fileSystemService),
|
|
48
|
-
requiredServices: ["fileSystemService"]
|
|
49
|
-
},
|
|
50
|
-
glob_files: {
|
|
51
|
-
factory: (services) => (0, import_glob_files_tool.createGlobFilesTool)(services.fileSystemService),
|
|
52
|
-
requiredServices: ["fileSystemService"]
|
|
53
|
-
},
|
|
54
|
-
grep_content: {
|
|
55
|
-
factory: (services) => (0, import_grep_content_tool.createGrepContentTool)(services.fileSystemService),
|
|
56
|
-
requiredServices: ["fileSystemService"]
|
|
57
|
-
},
|
|
58
|
-
write_file: {
|
|
59
|
-
factory: (services) => (0, import_write_file_tool.createWriteFileTool)(services.fileSystemService),
|
|
60
|
-
requiredServices: ["fileSystemService"]
|
|
61
|
-
},
|
|
62
|
-
edit_file: {
|
|
63
|
-
factory: (services) => (0, import_edit_file_tool.createEditFileTool)(services.fileSystemService),
|
|
64
|
-
requiredServices: ["fileSystemService"]
|
|
65
|
-
},
|
|
66
|
-
bash_exec: {
|
|
67
|
-
factory: (services) => (0, import_bash_exec_tool.createBashExecTool)(services.processService),
|
|
68
|
-
requiredServices: ["processService"]
|
|
69
|
-
},
|
|
70
|
-
bash_output: {
|
|
71
|
-
factory: (services) => (0, import_bash_output_tool.createBashOutputTool)(services.processService),
|
|
72
|
-
requiredServices: ["processService"]
|
|
73
|
-
},
|
|
74
|
-
kill_process: {
|
|
75
|
-
factory: (services) => (0, import_kill_process_tool.createKillProcessTool)(services.processService),
|
|
76
|
-
requiredServices: ["processService"]
|
|
39
|
+
requiredFeatures: ["elicitation"],
|
|
40
|
+
description: "Collect structured input from the user through a form interface"
|
|
77
41
|
},
|
|
78
42
|
delegate_to_url: {
|
|
79
43
|
factory: (_services) => (0, import_delegate_to_url_tool.createDelegateToUrlTool)(),
|
|
80
|
-
requiredServices: []
|
|
44
|
+
requiredServices: [],
|
|
45
|
+
description: "Delegate tasks to another A2A-compliant agent via URL"
|
|
46
|
+
},
|
|
47
|
+
list_resources: {
|
|
48
|
+
factory: (services) => (0, import_list_resources_tool.createListResourcesTool)(services.resourceManager),
|
|
49
|
+
requiredServices: ["resourceManager"],
|
|
50
|
+
description: "List available resources (images, files, etc.)"
|
|
51
|
+
},
|
|
52
|
+
get_resource: {
|
|
53
|
+
factory: (services) => (0, import_get_resource_tool.createGetResourceTool)(services.resourceManager),
|
|
54
|
+
requiredServices: ["resourceManager"],
|
|
55
|
+
description: "Access a stored resource to get URLs or metadata"
|
|
81
56
|
}
|
|
82
57
|
};
|
|
83
58
|
function getInternalToolInfo(toolName) {
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { InternalTool } from '../types.js';
|
|
2
2
|
import { SearchService } from '../../search/index.js';
|
|
3
3
|
import { ApprovalManager } from '../../approval/manager.js';
|
|
4
|
-
import {
|
|
5
|
-
import { ProcessService } from '../../process/index.js';
|
|
4
|
+
import { ResourceManager } from '../../resources/manager.js';
|
|
6
5
|
import type { KnownInternalTool } from './constants.js';
|
|
7
6
|
/**
|
|
8
7
|
* Agent features that tools can depend on.
|
|
@@ -30,8 +29,7 @@ export type AgentFeature = 'elicitation';
|
|
|
30
29
|
export interface InternalToolsServices {
|
|
31
30
|
searchService?: SearchService;
|
|
32
31
|
approvalManager?: ApprovalManager;
|
|
33
|
-
|
|
34
|
-
processService?: ProcessService;
|
|
32
|
+
resourceManager?: ResourceManager;
|
|
35
33
|
}
|
|
36
34
|
/**
|
|
37
35
|
* Internal tool factory function type
|
|
@@ -44,6 +42,8 @@ export interface InternalToolRegistryEntry {
|
|
|
44
42
|
factory: InternalToolFactory;
|
|
45
43
|
requiredServices: readonly (keyof InternalToolsServices)[];
|
|
46
44
|
requiredFeatures?: readonly AgentFeature[];
|
|
45
|
+
/** Short description for discovery/UI purposes */
|
|
46
|
+
description: string;
|
|
47
47
|
}
|
|
48
48
|
/**
|
|
49
49
|
* Internal tool registry - Must match names array exactly (TypeScript enforces this)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/tools/internal-tools/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/tools/internal-tools/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAM7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,YAAY,GAAG,aAAa,CAAC;AAEzC;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAClC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,eAAe,CAAC,EAAE,eAAe,CAAC;CACrC;AAED;;GAEG;AACH,KAAK,mBAAmB,GAAG,CAAC,QAAQ,EAAE,qBAAqB,KAAK,YAAY,CAAC;AAE7E;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,OAAO,EAAE,mBAAmB,CAAC;IAC7B,gBAAgB,EAAE,SAAS,CAAC,MAAM,qBAAqB,CAAC,EAAE,CAAC;IAC3D,gBAAgB,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,iBAAiB,EAAE,yBAAyB,CA8BvF,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,yBAAyB,CAE1F"}
|
|
@@ -1,60 +1,35 @@
|
|
|
1
1
|
import "../../chunk-PTJYTZNU.js";
|
|
2
2
|
import { createSearchHistoryTool } from "./implementations/search-history-tool.js";
|
|
3
3
|
import { createAskUserTool } from "./implementations/ask-user-tool.js";
|
|
4
|
-
import { createReadFileTool } from "./implementations/read-file-tool.js";
|
|
5
|
-
import { createGlobFilesTool } from "./implementations/glob-files-tool.js";
|
|
6
|
-
import { createGrepContentTool } from "./implementations/grep-content-tool.js";
|
|
7
|
-
import { createWriteFileTool } from "./implementations/write-file-tool.js";
|
|
8
|
-
import { createEditFileTool } from "./implementations/edit-file-tool.js";
|
|
9
|
-
import { createBashExecTool } from "./implementations/bash-exec-tool.js";
|
|
10
|
-
import { createBashOutputTool } from "./implementations/bash-output-tool.js";
|
|
11
|
-
import { createKillProcessTool } from "./implementations/kill-process-tool.js";
|
|
12
4
|
import { createDelegateToUrlTool } from "./implementations/delegate-to-url-tool.js";
|
|
5
|
+
import { createListResourcesTool } from "./implementations/list-resources-tool.js";
|
|
6
|
+
import { createGetResourceTool } from "./implementations/get-resource-tool.js";
|
|
13
7
|
const INTERNAL_TOOL_REGISTRY = {
|
|
14
8
|
search_history: {
|
|
15
9
|
factory: (services) => createSearchHistoryTool(services.searchService),
|
|
16
|
-
requiredServices: ["searchService"]
|
|
10
|
+
requiredServices: ["searchService"],
|
|
11
|
+
description: "Search through conversation history across sessions"
|
|
17
12
|
},
|
|
18
13
|
ask_user: {
|
|
19
14
|
factory: (services) => createAskUserTool(services.approvalManager),
|
|
20
15
|
requiredServices: ["approvalManager"],
|
|
21
|
-
requiredFeatures: ["elicitation"]
|
|
22
|
-
|
|
23
|
-
read_file: {
|
|
24
|
-
factory: (services) => createReadFileTool(services.fileSystemService),
|
|
25
|
-
requiredServices: ["fileSystemService"]
|
|
26
|
-
},
|
|
27
|
-
glob_files: {
|
|
28
|
-
factory: (services) => createGlobFilesTool(services.fileSystemService),
|
|
29
|
-
requiredServices: ["fileSystemService"]
|
|
30
|
-
},
|
|
31
|
-
grep_content: {
|
|
32
|
-
factory: (services) => createGrepContentTool(services.fileSystemService),
|
|
33
|
-
requiredServices: ["fileSystemService"]
|
|
34
|
-
},
|
|
35
|
-
write_file: {
|
|
36
|
-
factory: (services) => createWriteFileTool(services.fileSystemService),
|
|
37
|
-
requiredServices: ["fileSystemService"]
|
|
38
|
-
},
|
|
39
|
-
edit_file: {
|
|
40
|
-
factory: (services) => createEditFileTool(services.fileSystemService),
|
|
41
|
-
requiredServices: ["fileSystemService"]
|
|
42
|
-
},
|
|
43
|
-
bash_exec: {
|
|
44
|
-
factory: (services) => createBashExecTool(services.processService),
|
|
45
|
-
requiredServices: ["processService"]
|
|
46
|
-
},
|
|
47
|
-
bash_output: {
|
|
48
|
-
factory: (services) => createBashOutputTool(services.processService),
|
|
49
|
-
requiredServices: ["processService"]
|
|
50
|
-
},
|
|
51
|
-
kill_process: {
|
|
52
|
-
factory: (services) => createKillProcessTool(services.processService),
|
|
53
|
-
requiredServices: ["processService"]
|
|
16
|
+
requiredFeatures: ["elicitation"],
|
|
17
|
+
description: "Collect structured input from the user through a form interface"
|
|
54
18
|
},
|
|
55
19
|
delegate_to_url: {
|
|
56
20
|
factory: (_services) => createDelegateToUrlTool(),
|
|
57
|
-
requiredServices: []
|
|
21
|
+
requiredServices: [],
|
|
22
|
+
description: "Delegate tasks to another A2A-compliant agent via URL"
|
|
23
|
+
},
|
|
24
|
+
list_resources: {
|
|
25
|
+
factory: (services) => createListResourcesTool(services.resourceManager),
|
|
26
|
+
requiredServices: ["resourceManager"],
|
|
27
|
+
description: "List available resources (images, files, etc.)"
|
|
28
|
+
},
|
|
29
|
+
get_resource: {
|
|
30
|
+
factory: (services) => createGetResourceTool(services.resourceManager),
|
|
31
|
+
requiredServices: ["resourceManager"],
|
|
32
|
+
description: "Access a stored resource to get URLs or metadata"
|
|
58
33
|
}
|
|
59
34
|
};
|
|
60
35
|
function getInternalToolInfo(toolName) {
|
package/dist/tools/schemas.cjs
CHANGED
|
@@ -19,6 +19,10 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
19
19
|
var schemas_exports = {};
|
|
20
20
|
__export(schemas_exports, {
|
|
21
21
|
ALLOWED_TOOLS_STORAGE_TYPES: () => ALLOWED_TOOLS_STORAGE_TYPES,
|
|
22
|
+
CustomToolConfigSchema: () => CustomToolConfigSchema,
|
|
23
|
+
CustomToolConfigSchemaForOpenAPI: () => CustomToolConfigSchemaForOpenAPI,
|
|
24
|
+
CustomToolsSchema: () => CustomToolsSchema,
|
|
25
|
+
CustomToolsSchemaForOpenAPI: () => CustomToolsSchemaForOpenAPI,
|
|
22
26
|
DEFAULT_ALLOWED_TOOLS_STORAGE: () => DEFAULT_ALLOWED_TOOLS_STORAGE,
|
|
23
27
|
DEFAULT_TOOL_CONFIRMATION_MODE: () => DEFAULT_TOOL_CONFIRMATION_MODE,
|
|
24
28
|
ElicitationConfigSchema: () => ElicitationConfigSchema,
|
|
@@ -32,6 +36,7 @@ __export(schemas_exports, {
|
|
|
32
36
|
module.exports = __toCommonJS(schemas_exports);
|
|
33
37
|
var import_zod = require("zod");
|
|
34
38
|
var import_constants = require("./internal-tools/constants.js");
|
|
39
|
+
var import_custom_tool_schema_registry = require("./custom-tool-schema-registry.js");
|
|
35
40
|
const TOOL_CONFIRMATION_MODES = ["manual", "auto-approve", "auto-deny"];
|
|
36
41
|
const ALLOWED_TOOLS_STORAGE_TYPES = ["memory", "storage"];
|
|
37
42
|
const DEFAULT_TOOL_CONFIRMATION_MODE = "auto-approve";
|
|
@@ -39,6 +44,17 @@ const DEFAULT_ALLOWED_TOOLS_STORAGE = "storage";
|
|
|
39
44
|
const InternalToolsSchema = import_zod.z.array(import_zod.z.enum(import_constants.INTERNAL_TOOL_NAMES).describe("Available internal tool names")).default([]).describe(
|
|
40
45
|
`Array of internal tool names to enable. Empty array = disabled. Available tools: ${import_constants.INTERNAL_TOOL_NAMES.join(", ")}`
|
|
41
46
|
);
|
|
47
|
+
function getCustomToolConfigSchema() {
|
|
48
|
+
return import_custom_tool_schema_registry.customToolSchemaRegistry.createUnionSchema();
|
|
49
|
+
}
|
|
50
|
+
const CustomToolConfigSchema = import_zod.z.lazy(() => getCustomToolConfigSchema());
|
|
51
|
+
const CustomToolConfigSchemaForOpenAPI = import_zod.z.object({
|
|
52
|
+
type: import_zod.z.string().describe("Tool provider type identifier")
|
|
53
|
+
}).passthrough().describe("Custom tool provider configuration (generic representation for OpenAPI docs)");
|
|
54
|
+
const CustomToolsSchema = import_zod.z.array(CustomToolConfigSchema).default([]).describe(
|
|
55
|
+
"Array of custom tool provider configurations. Providers are validated against registered schemas."
|
|
56
|
+
);
|
|
57
|
+
const CustomToolsSchemaForOpenAPI = import_zod.z.array(CustomToolConfigSchemaForOpenAPI).default([]).describe("Array of custom tool provider configurations");
|
|
42
58
|
const ToolPoliciesSchema = import_zod.z.object({
|
|
43
59
|
alwaysAllow: import_zod.z.array(import_zod.z.string()).default([]).describe(
|
|
44
60
|
'Tools that never require approval (low-risk). Use full qualified names (e.g., "internal--ask_user", "mcp--filesystem--read_file")'
|
|
@@ -80,6 +96,10 @@ const ToolsConfigSchema = import_zod.z.record(ToolLimitsSchema).describe("Per-to
|
|
|
80
96
|
// Annotate the CommonJS export names for ESM import in node:
|
|
81
97
|
0 && (module.exports = {
|
|
82
98
|
ALLOWED_TOOLS_STORAGE_TYPES,
|
|
99
|
+
CustomToolConfigSchema,
|
|
100
|
+
CustomToolConfigSchemaForOpenAPI,
|
|
101
|
+
CustomToolsSchema,
|
|
102
|
+
CustomToolsSchemaForOpenAPI,
|
|
83
103
|
DEFAULT_ALLOWED_TOOLS_STORAGE,
|
|
84
104
|
DEFAULT_TOOL_CONFIRMATION_MODE,
|
|
85
105
|
ElicitationConfigSchema,
|
package/dist/tools/schemas.d.ts
CHANGED
|
@@ -5,8 +5,50 @@ export declare const ALLOWED_TOOLS_STORAGE_TYPES: readonly ["memory", "storage"]
|
|
|
5
5
|
export type AllowedToolsStorageType = (typeof ALLOWED_TOOLS_STORAGE_TYPES)[number];
|
|
6
6
|
export declare const DEFAULT_TOOL_CONFIRMATION_MODE: ToolConfirmationMode;
|
|
7
7
|
export declare const DEFAULT_ALLOWED_TOOLS_STORAGE: AllowedToolsStorageType;
|
|
8
|
-
export declare const InternalToolsSchema: z.ZodDefault<z.ZodArray<z.ZodEnum<["search_history", "ask_user", "
|
|
8
|
+
export declare const InternalToolsSchema: z.ZodDefault<z.ZodArray<z.ZodEnum<["search_history", "ask_user", "delegate_to_url", "list_resources", "get_resource"]>, "many">>;
|
|
9
9
|
export type InternalToolsConfig = z.output<typeof InternalToolsSchema>;
|
|
10
|
+
/**
|
|
11
|
+
* Custom tool configuration schema.
|
|
12
|
+
*
|
|
13
|
+
* This schema is built dynamically from registered providers:
|
|
14
|
+
* - If providers are registered → discriminated union with full validation
|
|
15
|
+
* - If no providers registered → passthrough schema (backward compatible)
|
|
16
|
+
*
|
|
17
|
+
* Provider-specific fields are validated based on their registered schemas.
|
|
18
|
+
*/
|
|
19
|
+
export declare const CustomToolConfigSchema: z.ZodLazy<z.ZodType<any, z.ZodTypeDef, any>>;
|
|
20
|
+
export type CustomToolConfig = z.output<typeof CustomToolConfigSchema>;
|
|
21
|
+
/**
|
|
22
|
+
* OpenAPI-safe version of CustomToolConfigSchema.
|
|
23
|
+
* Uses a generic object schema instead of lazy loading for OpenAPI compatibility.
|
|
24
|
+
*/
|
|
25
|
+
export declare const CustomToolConfigSchemaForOpenAPI: z.ZodObject<{
|
|
26
|
+
type: z.ZodString;
|
|
27
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
28
|
+
type: z.ZodString;
|
|
29
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
30
|
+
type: z.ZodString;
|
|
31
|
+
}, z.ZodTypeAny, "passthrough">>;
|
|
32
|
+
/**
|
|
33
|
+
* Array of custom tool provider configurations.
|
|
34
|
+
*
|
|
35
|
+
* Custom tools must be registered via customToolRegistry before loading agent config
|
|
36
|
+
* for early validation to work. If providers are not registered, validation will
|
|
37
|
+
* fall back to runtime validation by the provider.
|
|
38
|
+
*/
|
|
39
|
+
export declare const CustomToolsSchema: z.ZodDefault<z.ZodArray<z.ZodLazy<z.ZodType<any, z.ZodTypeDef, any>>, "many">>;
|
|
40
|
+
export type CustomToolsConfig = z.output<typeof CustomToolsSchema>;
|
|
41
|
+
/**
|
|
42
|
+
* OpenAPI-safe version of CustomToolsSchema.
|
|
43
|
+
* Uses generic object schema for OpenAPI compatibility.
|
|
44
|
+
*/
|
|
45
|
+
export declare const CustomToolsSchemaForOpenAPI: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
46
|
+
type: z.ZodString;
|
|
47
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
48
|
+
type: z.ZodString;
|
|
49
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
50
|
+
type: z.ZodString;
|
|
51
|
+
}, z.ZodTypeAny, "passthrough">>, "many">>;
|
|
10
52
|
export declare const ToolPoliciesSchema: z.ZodDefault<z.ZodObject<{
|
|
11
53
|
alwaysAllow: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
12
54
|
alwaysDeny: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/tools/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/tools/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,uBAAuB,kDAAmD,CAAC;AACxF,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,eAAO,MAAM,2BAA2B,gCAAiC,CAAC;AAC1E,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnF,eAAO,MAAM,8BAA8B,EAAE,oBAAqC,CAAC;AACnF,eAAO,MAAM,6BAA6B,EAAE,uBAAmC,CAAC;AAIhF,eAAO,MAAM,mBAAmB,kIAK3B,CAAC;AAEN,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAkBvE;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,8CAA4C,CAAC;AAEhF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEvE;;;GAGG;AACH,eAAO,MAAM,gCAAgC;;;;;;gCAKgD,CAAC;AAE9F;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,gFAKzB,CAAC;AAEN,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,2BAA2B;;;;;;0CAGqB,CAAC;AAG9D,eAAO,MAAM,kBAAkB;;;;;;;;;GAiB2B,CAAC;AAE3D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE/D,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BoB,CAAC;AAE9D,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAG5F,eAAO,MAAM,uBAAuB;;;;;;;;;EAoB/B,CAAC;AAEN,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAGlF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;EAShB,CAAC;AAEd,eAAO,MAAM,iBAAiB;;;;;;;;;;;;GAEgB,CAAC;AAE/C,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
|
package/dist/tools/schemas.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import "../chunk-PTJYTZNU.js";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
import { INTERNAL_TOOL_NAMES } from "./internal-tools/constants.js";
|
|
4
|
+
import { customToolSchemaRegistry } from "./custom-tool-schema-registry.js";
|
|
4
5
|
const TOOL_CONFIRMATION_MODES = ["manual", "auto-approve", "auto-deny"];
|
|
5
6
|
const ALLOWED_TOOLS_STORAGE_TYPES = ["memory", "storage"];
|
|
6
7
|
const DEFAULT_TOOL_CONFIRMATION_MODE = "auto-approve";
|
|
@@ -8,6 +9,17 @@ const DEFAULT_ALLOWED_TOOLS_STORAGE = "storage";
|
|
|
8
9
|
const InternalToolsSchema = z.array(z.enum(INTERNAL_TOOL_NAMES).describe("Available internal tool names")).default([]).describe(
|
|
9
10
|
`Array of internal tool names to enable. Empty array = disabled. Available tools: ${INTERNAL_TOOL_NAMES.join(", ")}`
|
|
10
11
|
);
|
|
12
|
+
function getCustomToolConfigSchema() {
|
|
13
|
+
return customToolSchemaRegistry.createUnionSchema();
|
|
14
|
+
}
|
|
15
|
+
const CustomToolConfigSchema = z.lazy(() => getCustomToolConfigSchema());
|
|
16
|
+
const CustomToolConfigSchemaForOpenAPI = z.object({
|
|
17
|
+
type: z.string().describe("Tool provider type identifier")
|
|
18
|
+
}).passthrough().describe("Custom tool provider configuration (generic representation for OpenAPI docs)");
|
|
19
|
+
const CustomToolsSchema = z.array(CustomToolConfigSchema).default([]).describe(
|
|
20
|
+
"Array of custom tool provider configurations. Providers are validated against registered schemas."
|
|
21
|
+
);
|
|
22
|
+
const CustomToolsSchemaForOpenAPI = z.array(CustomToolConfigSchemaForOpenAPI).default([]).describe("Array of custom tool provider configurations");
|
|
11
23
|
const ToolPoliciesSchema = z.object({
|
|
12
24
|
alwaysAllow: z.array(z.string()).default([]).describe(
|
|
13
25
|
'Tools that never require approval (low-risk). Use full qualified names (e.g., "internal--ask_user", "mcp--filesystem--read_file")'
|
|
@@ -48,6 +60,10 @@ const ToolLimitsSchema = z.object({
|
|
|
48
60
|
const ToolsConfigSchema = z.record(ToolLimitsSchema).describe("Per-tool configuration limits");
|
|
49
61
|
export {
|
|
50
62
|
ALLOWED_TOOLS_STORAGE_TYPES,
|
|
63
|
+
CustomToolConfigSchema,
|
|
64
|
+
CustomToolConfigSchemaForOpenAPI,
|
|
65
|
+
CustomToolsSchema,
|
|
66
|
+
CustomToolsSchemaForOpenAPI,
|
|
51
67
|
DEFAULT_ALLOWED_TOOLS_STORAGE,
|
|
52
68
|
DEFAULT_TOOL_CONFIRMATION_MODE,
|
|
53
69
|
ElicitationConfigSchema,
|