@dexto/core 1.5.7 → 1.6.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 +19 -8
- package/dist/agent/DextoAgent.cjs +383 -153
- package/dist/agent/DextoAgent.d.ts +112 -60
- package/dist/agent/DextoAgent.d.ts.map +1 -1
- package/dist/agent/DextoAgent.js +380 -150
- package/dist/{context/compaction/provider.cjs → agent/agent-options.cjs} +2 -2
- package/dist/agent/agent-options.d.ts +53 -0
- package/dist/agent/agent-options.d.ts.map +1 -0
- package/dist/agent/agentCard.cjs +1 -1
- package/dist/agent/errors.cjs +2 -2
- package/dist/agent/errors.d.ts.map +1 -1
- package/dist/agent/index.cjs +1 -6
- package/dist/agent/index.d.ts +3 -2
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/index.js +1 -7
- package/dist/{storage/blob/provider.cjs → agent/runtime-config.cjs} +2 -2
- package/dist/agent/runtime-config.d.ts +53 -0
- package/dist/agent/runtime-config.d.ts.map +1 -0
- package/dist/agent/schemas.cjs +2 -99
- package/dist/agent/schemas.d.ts +10 -9160
- package/dist/agent/schemas.d.ts.map +1 -1
- package/dist/agent/schemas.js +1 -104
- package/dist/agent/state-manager.d.ts +5 -5
- package/dist/agent/state-manager.d.ts.map +1 -1
- package/dist/approval/error-codes.cjs +1 -1
- package/dist/approval/error-codes.d.ts +1 -1
- package/dist/approval/error-codes.d.ts.map +1 -1
- package/dist/approval/error-codes.js +1 -1
- package/dist/approval/errors.cjs +5 -5
- package/dist/approval/errors.d.ts +2 -2
- package/dist/approval/errors.d.ts.map +1 -1
- package/dist/approval/errors.js +5 -5
- package/dist/approval/index.cjs +8 -8
- package/dist/approval/index.d.ts +2 -2
- package/dist/approval/index.d.ts.map +1 -1
- package/dist/approval/index.js +8 -8
- package/dist/approval/manager.cjs +77 -57
- package/dist/approval/manager.d.ts +41 -43
- package/dist/approval/manager.d.ts.map +1 -1
- package/dist/approval/manager.js +75 -55
- package/dist/approval/schemas.cjs +26 -25
- package/dist/approval/schemas.d.ts +35 -15
- package/dist/approval/schemas.d.ts.map +1 -1
- package/dist/approval/schemas.js +22 -21
- package/dist/approval/types.cjs +1 -1
- package/dist/approval/types.d.ts +14 -14
- package/dist/approval/types.d.ts.map +1 -1
- package/dist/approval/types.js +1 -1
- package/dist/context/compaction/index.cjs +2 -23
- package/dist/context/compaction/index.d.ts +1 -7
- package/dist/context/compaction/index.d.ts.map +1 -1
- package/dist/context/compaction/index.js +1 -16
- package/dist/context/compaction/strategies/noop.cjs +19 -1
- package/dist/context/compaction/strategies/noop.d.ts +13 -3
- package/dist/context/compaction/strategies/noop.d.ts.map +1 -1
- package/dist/context/compaction/strategies/noop.js +19 -1
- package/dist/context/compaction/strategies/{reactive-overflow.cjs → reactive-overflow-compaction.cjs} +67 -64
- package/dist/context/compaction/strategies/{reactive-overflow.d.ts → reactive-overflow-compaction.d.ts} +19 -36
- package/dist/context/compaction/strategies/reactive-overflow-compaction.d.ts.map +1 -0
- package/dist/context/compaction/strategies/{reactive-overflow.js → reactive-overflow-compaction.js} +63 -60
- package/dist/context/compaction/types.d.ts +40 -8
- package/dist/context/compaction/types.d.ts.map +1 -1
- package/dist/context/manager.cjs +5 -3
- package/dist/context/manager.d.ts +4 -3
- package/dist/context/manager.d.ts.map +1 -1
- package/dist/context/manager.js +5 -3
- package/dist/context/types.d.ts +2 -0
- package/dist/context/types.d.ts.map +1 -1
- package/dist/context/utils.cjs +70 -43
- package/dist/context/utils.d.ts +14 -14
- package/dist/context/utils.d.ts.map +1 -1
- package/dist/context/utils.js +69 -42
- package/dist/errors/result-bridge.d.ts +2 -2
- package/dist/errors/result-bridge.d.ts.map +1 -1
- package/dist/errors/types.cjs +1 -1
- package/dist/errors/types.d.ts +3 -3
- package/dist/errors/types.d.ts.map +1 -1
- package/dist/errors/types.js +1 -1
- package/dist/events/index.cjs +15 -2
- package/dist/events/index.d.ts +78 -7
- package/dist/events/index.d.ts.map +1 -1
- package/dist/events/index.js +15 -2
- package/dist/{plugins → hooks}/builtins/content-policy.cjs +7 -6
- package/dist/hooks/builtins/content-policy.d.ts +24 -0
- package/dist/hooks/builtins/content-policy.d.ts.map +1 -0
- package/dist/{plugins → hooks}/builtins/content-policy.js +6 -5
- package/dist/{plugins → hooks}/builtins/response-sanitizer.cjs +3 -3
- package/dist/hooks/builtins/response-sanitizer.d.ts +22 -0
- package/dist/hooks/builtins/response-sanitizer.d.ts.map +1 -0
- package/dist/{plugins → hooks}/builtins/response-sanitizer.js +2 -2
- package/dist/hooks/error-codes.cjs +43 -0
- package/dist/hooks/error-codes.d.ts +34 -0
- package/dist/hooks/error-codes.d.ts.map +1 -0
- package/dist/hooks/error-codes.js +20 -0
- package/dist/{storage/cache/providers/memory.cjs → hooks/index.cjs} +15 -18
- package/dist/hooks/index.d.ts +14 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +11 -0
- package/dist/hooks/manager.cjs +354 -0
- package/dist/hooks/manager.d.ts +103 -0
- package/dist/hooks/manager.d.ts.map +1 -0
- package/dist/hooks/manager.js +331 -0
- package/dist/{plugins → hooks}/types.d.ts +36 -34
- package/dist/hooks/types.d.ts.map +1 -0
- package/dist/index.browser.cjs +13 -12
- package/dist/index.browser.d.ts +6 -6
- package/dist/index.browser.d.ts.map +1 -1
- package/dist/index.browser.js +8 -7
- package/dist/index.cjs +5 -7
- package/dist/index.d.ts +2 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -3
- package/dist/llm/curation-config.cjs +82 -0
- package/dist/llm/curation-config.d.ts +13 -0
- package/dist/llm/curation-config.d.ts.map +1 -0
- package/dist/llm/curation-config.js +59 -0
- package/dist/llm/curation.cjs +57 -0
- package/dist/llm/curation.d.ts +16 -0
- package/dist/llm/curation.d.ts.map +1 -0
- package/dist/llm/curation.js +34 -0
- package/dist/llm/errors.cjs +2 -2
- package/dist/llm/errors.d.ts +8 -8
- package/dist/llm/errors.js +1 -1
- package/dist/llm/executor/provider-options.cjs +1 -1
- package/dist/llm/executor/provider-options.js +1 -1
- package/dist/llm/executor/stream-processor.cjs +131 -11
- package/dist/llm/executor/stream-processor.d.ts +7 -5
- package/dist/llm/executor/stream-processor.d.ts.map +1 -1
- package/dist/llm/executor/stream-processor.js +131 -11
- package/dist/llm/executor/turn-executor.cjs +57 -56
- package/dist/llm/executor/turn-executor.d.ts +7 -8
- package/dist/llm/executor/turn-executor.d.ts.map +1 -1
- package/dist/llm/executor/turn-executor.js +57 -56
- package/dist/llm/formatters/vercel.cjs +2 -2
- package/dist/llm/formatters/vercel.d.ts +2 -2
- package/dist/llm/formatters/vercel.d.ts.map +1 -1
- package/dist/llm/index.cjs +14 -3
- package/dist/llm/index.d.ts +3 -1
- package/dist/llm/index.d.ts.map +1 -1
- package/dist/llm/index.js +13 -2
- package/dist/llm/providers/local/schemas.d.ts +10 -10
- package/dist/llm/registry/auto-update.cjs +263 -0
- package/dist/llm/registry/auto-update.d.ts +27 -0
- package/dist/llm/registry/auto-update.d.ts.map +1 -0
- package/dist/llm/registry/auto-update.js +227 -0
- package/dist/llm/registry/index.cjs +806 -0
- package/dist/llm/{registry.d.ts → registry/index.d.ts} +21 -43
- package/dist/llm/registry/index.d.ts.map +1 -0
- package/dist/llm/registry/index.js +756 -0
- package/dist/llm/registry/models.generated.cjs +4861 -0
- package/dist/llm/registry/models.generated.d.ts +431 -0
- package/dist/llm/registry/models.generated.d.ts.map +1 -0
- package/dist/llm/registry/models.generated.js +4838 -0
- package/dist/{storage/database/providers/index.cjs → llm/registry/models.manual.cjs} +22 -12
- package/dist/llm/registry/models.manual.d.ts +22 -0
- package/dist/llm/registry/models.manual.d.ts.map +1 -0
- package/dist/llm/registry/models.manual.js +21 -0
- package/dist/llm/registry/sync.cjs +354 -0
- package/dist/llm/registry/sync.d.ts +41 -0
- package/dist/llm/registry/sync.d.ts.map +1 -0
- package/dist/llm/registry/sync.js +328 -0
- package/dist/llm/resolver.cjs +29 -20
- package/dist/llm/resolver.d.ts +4 -4
- package/dist/llm/resolver.d.ts.map +1 -1
- package/dist/llm/resolver.js +28 -20
- package/dist/llm/schemas.cjs +69 -94
- package/dist/llm/schemas.d.ts +19 -158
- package/dist/llm/schemas.d.ts.map +1 -1
- package/dist/llm/schemas.js +67 -91
- package/dist/llm/services/factory.cjs +6 -7
- package/dist/llm/services/factory.d.ts +3 -4
- package/dist/llm/services/factory.d.ts.map +1 -1
- package/dist/llm/services/factory.js +6 -7
- package/dist/llm/services/vercel.cjs +11 -15
- package/dist/llm/services/vercel.d.ts +7 -7
- package/dist/llm/services/vercel.d.ts.map +1 -1
- package/dist/llm/services/vercel.js +11 -15
- package/dist/llm/types.cjs +1 -1
- package/dist/llm/types.d.ts +1 -1
- package/dist/llm/types.d.ts.map +1 -1
- package/dist/llm/types.js +1 -1
- package/dist/llm/validation.cjs +2 -2
- package/dist/llm/validation.d.ts +2 -2
- package/dist/llm/validation.d.ts.map +1 -1
- package/dist/llm/validation.js +1 -1
- package/dist/logger/browser.cjs +4 -4
- package/dist/logger/browser.d.ts +4 -4
- package/dist/logger/browser.d.ts.map +1 -1
- package/dist/logger/browser.js +3 -3
- package/dist/{context/compaction/providers/noop-provider.cjs → logger/default-logger-factory.cjs} +16 -22
- package/dist/logger/default-logger-factory.d.ts +301 -0
- package/dist/logger/default-logger-factory.d.ts.map +1 -0
- package/dist/logger/default-logger-factory.js +18 -0
- package/dist/logger/factory.d.ts +2 -2
- package/dist/logger/factory.d.ts.map +1 -1
- package/dist/logger/index.cjs +7 -2
- package/dist/logger/index.d.ts +5 -3
- package/dist/logger/index.d.ts.map +1 -1
- package/dist/logger/index.js +8 -2
- package/dist/logger/logger.cjs +4 -4
- package/dist/logger/logger.d.ts +4 -4
- package/dist/logger/logger.d.ts.map +1 -1
- package/dist/logger/logger.js +3 -3
- package/dist/logger/v2/dexto-logger.d.ts +3 -3
- package/dist/logger/v2/dexto-logger.d.ts.map +1 -1
- package/dist/logger/v2/schemas.d.ts +12 -12
- package/dist/logger/v2/test-utils.d.ts +5 -5
- package/dist/logger/v2/test-utils.d.ts.map +1 -1
- package/dist/logger/v2/transport-factory.d.ts +3 -3
- package/dist/logger/v2/transport-factory.d.ts.map +1 -1
- package/dist/logger/v2/transports/console-transport.d.ts +2 -2
- package/dist/logger/v2/transports/console-transport.d.ts.map +1 -1
- package/dist/logger/v2/transports/file-transport.d.ts +2 -2
- package/dist/logger/v2/transports/file-transport.d.ts.map +1 -1
- package/dist/logger/v2/transports/silent-transport.d.ts +2 -2
- package/dist/logger/v2/transports/silent-transport.d.ts.map +1 -1
- package/dist/logger/v2/types.cjs +1 -1
- package/dist/logger/v2/types.d.ts +8 -8
- package/dist/logger/v2/types.d.ts.map +1 -1
- package/dist/logger/v2/types.js +1 -1
- package/dist/mcp/errors.cjs +2 -2
- package/dist/mcp/errors.d.ts.map +1 -1
- package/dist/mcp/manager.cjs +16 -11
- package/dist/mcp/manager.d.ts +16 -13
- package/dist/mcp/manager.d.ts.map +1 -1
- package/dist/mcp/manager.js +17 -12
- package/dist/mcp/mcp-client.cjs +25 -20
- package/dist/mcp/mcp-client.d.ts +5 -5
- package/dist/mcp/mcp-client.d.ts.map +1 -1
- package/dist/mcp/mcp-client.js +20 -15
- package/dist/mcp/resolver.cjs +1 -1
- package/dist/mcp/schemas.cjs +5 -5
- package/dist/mcp/schemas.d.ts +4 -4
- package/dist/mcp/schemas.js +2 -2
- package/dist/mcp/types.d.ts +7 -7
- package/dist/mcp/types.d.ts.map +1 -1
- package/dist/memory/manager.d.ts +2 -2
- package/dist/memory/manager.d.ts.map +1 -1
- package/dist/memory/schemas.d.ts +2 -2
- package/dist/prompts/errors.cjs +3 -3
- package/dist/prompts/errors.d.ts.map +1 -1
- package/dist/prompts/prompt-manager.d.ts +3 -3
- package/dist/prompts/prompt-manager.d.ts.map +1 -1
- package/dist/prompts/providers/config-prompt-provider.cjs +15 -29
- package/dist/prompts/providers/config-prompt-provider.d.ts +3 -3
- package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -1
- package/dist/prompts/providers/config-prompt-provider.js +15 -29
- package/dist/prompts/providers/custom-prompt-provider.d.ts +2 -2
- package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
- package/dist/prompts/providers/mcp-prompt-provider.d.ts +2 -2
- package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
- package/dist/prompts/schemas.d.ts +4 -4
- package/dist/resources/{internal-provider.cjs → agent-resources-provider.cjs} +16 -16
- package/dist/resources/{internal-provider.d.ts → agent-resources-provider.d.ts} +6 -6
- package/dist/resources/agent-resources-provider.d.ts.map +1 -0
- package/dist/resources/{internal-provider.js → agent-resources-provider.js} +13 -13
- package/dist/resources/errors.cjs +2 -2
- package/dist/resources/errors.d.ts.map +1 -1
- package/dist/resources/handlers/blob-handler.d.ts +2 -2
- package/dist/resources/handlers/blob-handler.d.ts.map +1 -1
- package/dist/resources/handlers/factory.d.ts +3 -3
- package/dist/resources/handlers/factory.d.ts.map +1 -1
- package/dist/resources/handlers/filesystem-handler.cjs +25 -0
- package/dist/resources/handlers/filesystem-handler.d.ts +3 -2
- package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
- package/dist/resources/handlers/filesystem-handler.js +25 -0
- package/dist/resources/index.cjs +7 -9
- package/dist/resources/index.d.ts +3 -3
- package/dist/resources/index.d.ts.map +1 -1
- package/dist/resources/index.js +5 -10
- package/dist/resources/manager.cjs +77 -74
- package/dist/resources/manager.d.ts +16 -7
- package/dist/resources/manager.d.ts.map +1 -1
- package/dist/resources/manager.js +77 -74
- package/dist/resources/schemas.cjs +6 -26
- package/dist/resources/schemas.d.ts +8 -100
- package/dist/resources/schemas.d.ts.map +1 -1
- package/dist/resources/schemas.js +4 -23
- package/dist/search/search-service.d.ts +2 -2
- package/dist/search/search-service.d.ts.map +1 -1
- package/dist/session/chat-session.cjs +16 -26
- package/dist/session/chat-session.d.ts +7 -5
- package/dist/session/chat-session.d.ts.map +1 -1
- package/dist/session/chat-session.js +17 -27
- package/dist/session/errors.cjs +2 -2
- package/dist/session/errors.d.ts.map +1 -1
- package/dist/session/history/database.cjs +1 -1
- package/dist/session/history/database.d.ts +4 -4
- package/dist/session/history/database.d.ts.map +1 -1
- package/dist/session/history/factory.d.ts +3 -3
- package/dist/session/history/factory.d.ts.map +1 -1
- package/dist/session/history/memory.d.ts +4 -4
- package/dist/session/history/memory.d.ts.map +1 -1
- package/dist/session/history/types.d.ts +2 -2
- package/dist/session/history/types.d.ts.map +1 -1
- package/dist/session/index.cjs +3 -0
- package/dist/session/index.d.ts +2 -0
- package/dist/session/index.d.ts.map +1 -1
- package/dist/session/index.js +2 -0
- package/dist/session/message-queue.cjs +29 -5
- package/dist/session/message-queue.d.ts +5 -3
- package/dist/session/message-queue.d.ts.map +1 -1
- package/dist/session/message-queue.js +29 -5
- package/dist/session/session-manager.cjs +107 -12
- package/dist/session/session-manager.d.ts +49 -8
- package/dist/session/session-manager.d.ts.map +1 -1
- package/dist/session/session-manager.js +97 -12
- package/dist/session/title-generator.cjs +2 -2
- package/dist/session/title-generator.d.ts +2 -2
- package/dist/session/title-generator.d.ts.map +1 -1
- package/dist/session/types.d.ts +1 -0
- package/dist/session/types.d.ts.map +1 -1
- package/dist/storage/blob/index.cjs +0 -40
- package/dist/storage/blob/index.d.ts +2 -44
- package/dist/storage/blob/index.d.ts.map +1 -1
- package/dist/storage/blob/index.js +0 -30
- package/dist/storage/cache/index.cjs +0 -37
- package/dist/storage/cache/index.d.ts +0 -42
- package/dist/storage/cache/index.d.ts.map +1 -1
- package/dist/storage/cache/index.js +0 -28
- package/dist/storage/database/index.cjs +0 -42
- package/dist/storage/database/index.d.ts +0 -43
- package/dist/storage/database/index.d.ts.map +1 -1
- package/dist/storage/database/index.js +0 -37
- package/dist/storage/error-codes.cjs +1 -6
- package/dist/storage/error-codes.d.ts +2 -7
- package/dist/storage/error-codes.d.ts.map +1 -1
- package/dist/storage/error-codes.js +1 -6
- package/dist/storage/errors.cjs +18 -82
- package/dist/storage/errors.d.ts +4 -24
- package/dist/storage/errors.d.ts.map +1 -1
- package/dist/storage/errors.js +16 -80
- package/dist/storage/index.cjs +8 -69
- package/dist/storage/index.d.ts +11 -66
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +6 -50
- package/dist/storage/storage-manager.cjs +9 -25
- package/dist/storage/storage-manager.d.ts +11 -15
- package/dist/storage/storage-manager.d.ts.map +1 -1
- package/dist/storage/storage-manager.js +8 -23
- package/dist/storage/types.d.ts +0 -1
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/systemPrompt/contributors.d.ts +4 -4
- package/dist/systemPrompt/contributors.d.ts.map +1 -1
- package/dist/systemPrompt/errors.cjs +2 -2
- package/dist/systemPrompt/errors.d.ts.map +1 -1
- package/dist/systemPrompt/manager.cjs +1 -5
- package/dist/systemPrompt/manager.d.ts +2 -3
- package/dist/systemPrompt/manager.d.ts.map +1 -1
- package/dist/systemPrompt/manager.js +1 -5
- package/dist/telemetry/index.cjs +3 -0
- package/dist/telemetry/index.d.ts +2 -0
- package/dist/telemetry/index.d.ts.map +1 -1
- package/dist/telemetry/index.js +2 -0
- package/dist/telemetry/utils.d.ts +4 -4
- package/dist/telemetry/utils.d.ts.map +1 -1
- package/dist/test-utils/in-memory-storage.cjs +288 -0
- package/dist/test-utils/in-memory-storage.js +252 -0
- package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +3 -3
- package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +1 -1
- package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts +2 -2
- package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts.map +1 -1
- package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +4 -4
- package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +1 -1
- package/dist/tools/confirmation/allowed-tools-provider/types.d.ts +2 -2
- package/dist/tools/confirmation/allowed-tools-provider/types.d.ts.map +1 -1
- package/dist/tools/{internal-tools/constants.cjs → define-tool.cjs} +8 -13
- package/dist/tools/define-tool.d.ts +11 -0
- package/dist/tools/define-tool.d.ts.map +1 -0
- package/dist/tools/define-tool.js +7 -0
- package/dist/tools/error-codes.cjs +2 -2
- package/dist/tools/error-codes.d.ts +2 -2
- package/dist/tools/error-codes.d.ts.map +1 -1
- package/dist/tools/error-codes.js +2 -2
- package/dist/tools/errors.cjs +11 -23
- package/dist/tools/errors.d.ts +4 -10
- package/dist/tools/errors.d.ts.map +1 -1
- package/dist/tools/errors.js +9 -21
- package/dist/tools/index.cjs +3 -8
- package/dist/tools/index.d.ts +2 -4
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +2 -7
- package/dist/{storage/blob/providers/index.cjs → tools/pattern-utils.cjs} +11 -9
- package/dist/tools/pattern-utils.d.ts +20 -0
- package/dist/tools/pattern-utils.d.ts.map +1 -0
- package/dist/tools/pattern-utils.js +10 -0
- package/dist/tools/schemas.cjs +14 -40
- package/dist/tools/schemas.d.ts +6 -50
- package/dist/tools/schemas.d.ts.map +1 -1
- package/dist/tools/schemas.js +11 -32
- package/dist/tools/tool-call-metadata.cjs +75 -0
- package/dist/tools/tool-call-metadata.d.ts +16 -0
- package/dist/tools/tool-call-metadata.d.ts.map +1 -0
- package/dist/tools/tool-call-metadata.js +51 -0
- package/dist/tools/tool-manager.cjs +578 -302
- package/dist/tools/tool-manager.d.ts +105 -81
- package/dist/tools/tool-manager.d.ts.map +1 -1
- package/dist/tools/tool-manager.js +578 -306
- package/dist/tools/types.d.ts +112 -13
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/utils/api-key-resolver.cjs +1 -1
- package/dist/utils/api-key-resolver.js +1 -1
- package/dist/utils/env.cjs +49 -0
- package/dist/utils/env.d.ts +4 -0
- package/dist/utils/env.d.ts.map +1 -0
- package/dist/utils/env.js +24 -0
- package/dist/utils/error-conversion.d.ts +2 -2
- package/dist/utils/error-conversion.d.ts.map +1 -1
- package/dist/utils/index.cjs +3 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/path.d.ts +2 -2
- package/dist/utils/path.d.ts.map +1 -1
- package/dist/utils/result.cjs +1 -1
- package/dist/utils/result.d.ts.map +1 -1
- package/dist/utils/schema.cjs +9 -5
- package/dist/utils/schema.d.ts +4 -2
- package/dist/utils/schema.d.ts.map +1 -1
- package/dist/utils/schema.js +9 -5
- package/dist/utils/service-initializer.cjs +58 -51
- package/dist/utils/service-initializer.d.ts +31 -9
- package/dist/utils/service-initializer.d.ts.map +1 -1
- package/dist/utils/service-initializer.js +58 -51
- package/dist/{storage/cache/providers/index.cjs → workspace/error-codes.cjs} +8 -9
- package/dist/workspace/error-codes.d.ts +5 -0
- package/dist/workspace/error-codes.d.ts.map +1 -0
- package/dist/workspace/error-codes.js +7 -0
- package/dist/{storage/blob/factory.cjs → workspace/errors.cjs} +20 -14
- package/dist/workspace/errors.d.ts +5 -0
- package/dist/workspace/errors.d.ts.map +1 -0
- package/dist/workspace/errors.js +21 -0
- package/dist/{image → workspace}/index.cjs +12 -10
- package/dist/workspace/index.d.ts +5 -0
- package/dist/workspace/index.d.ts.map +1 -0
- package/dist/workspace/index.js +9 -0
- package/dist/workspace/manager.cjs +113 -0
- package/dist/workspace/manager.d.ts +18 -0
- package/dist/workspace/manager.d.ts.map +1 -0
- package/dist/workspace/manager.js +90 -0
- package/dist/workspace/types.d.ts +14 -0
- package/dist/workspace/types.d.ts.map +1 -0
- package/package.json +7 -3
- package/dist/context/compaction/factory.cjs +0 -57
- package/dist/context/compaction/factory.d.ts +0 -17
- package/dist/context/compaction/factory.d.ts.map +0 -1
- package/dist/context/compaction/factory.js +0 -34
- package/dist/context/compaction/provider.d.ts +0 -48
- package/dist/context/compaction/provider.d.ts.map +0 -1
- package/dist/context/compaction/providers/noop-provider.d.ts +0 -24
- package/dist/context/compaction/providers/noop-provider.d.ts.map +0 -1
- package/dist/context/compaction/providers/noop-provider.js +0 -24
- package/dist/context/compaction/providers/reactive-overflow-provider.cjs +0 -76
- package/dist/context/compaction/providers/reactive-overflow-provider.d.ts +0 -51
- package/dist/context/compaction/providers/reactive-overflow-provider.d.ts.map +0 -1
- package/dist/context/compaction/providers/reactive-overflow-provider.js +0 -52
- package/dist/context/compaction/registry.cjs +0 -39
- package/dist/context/compaction/registry.d.ts +0 -19
- package/dist/context/compaction/registry.d.ts.map +0 -1
- package/dist/context/compaction/registry.js +0 -16
- package/dist/context/compaction/schemas.cjs +0 -58
- package/dist/context/compaction/schemas.d.ts +0 -69
- package/dist/context/compaction/schemas.d.ts.map +0 -1
- package/dist/context/compaction/schemas.js +0 -34
- package/dist/context/compaction/strategies/reactive-overflow.d.ts.map +0 -1
- package/dist/image/define-image.cjs +0 -146
- package/dist/image/define-image.d.ts +0 -71
- package/dist/image/define-image.d.ts.map +0 -1
- package/dist/image/define-image.js +0 -121
- package/dist/image/index.d.ts +0 -53
- package/dist/image/index.d.ts.map +0 -1
- package/dist/image/index.js +0 -7
- package/dist/image/types.d.ts +0 -246
- package/dist/image/types.d.ts.map +0 -1
- package/dist/llm/registry.cjs +0 -2075
- package/dist/llm/registry.d.ts.map +0 -1
- package/dist/llm/registry.js +0 -2025
- package/dist/llm/services/test-utils.integration.cjs +0 -237
- package/dist/llm/services/test-utils.integration.d.ts +0 -48
- package/dist/llm/services/test-utils.integration.d.ts.map +0 -1
- package/dist/llm/services/test-utils.integration.js +0 -214
- package/dist/plugins/builtins/content-policy.d.ts +0 -26
- package/dist/plugins/builtins/content-policy.d.ts.map +0 -1
- package/dist/plugins/builtins/response-sanitizer.d.ts +0 -25
- package/dist/plugins/builtins/response-sanitizer.d.ts.map +0 -1
- package/dist/plugins/error-codes.cjs +0 -43
- package/dist/plugins/error-codes.d.ts +0 -34
- package/dist/plugins/error-codes.d.ts.map +0 -1
- package/dist/plugins/error-codes.js +0 -20
- package/dist/plugins/index.cjs +0 -61
- package/dist/plugins/index.d.ts +0 -21
- package/dist/plugins/index.d.ts.map +0 -1
- package/dist/plugins/index.js +0 -30
- package/dist/plugins/loader.cjs +0 -171
- package/dist/plugins/loader.d.ts +0 -30
- package/dist/plugins/loader.d.ts.map +0 -1
- package/dist/plugins/loader.js +0 -145
- package/dist/plugins/manager.cjs +0 -473
- package/dist/plugins/manager.d.ts +0 -106
- package/dist/plugins/manager.d.ts.map +0 -1
- package/dist/plugins/manager.js +0 -450
- package/dist/plugins/registrations/builtins.cjs +0 -51
- package/dist/plugins/registrations/builtins.d.ts +0 -17
- package/dist/plugins/registrations/builtins.d.ts.map +0 -1
- package/dist/plugins/registrations/builtins.js +0 -28
- package/dist/plugins/registry.cjs +0 -63
- package/dist/plugins/registry.d.ts +0 -101
- package/dist/plugins/registry.d.ts.map +0 -1
- package/dist/plugins/registry.js +0 -39
- package/dist/plugins/schemas.cjs +0 -73
- package/dist/plugins/schemas.d.ts +0 -195
- package/dist/plugins/schemas.d.ts.map +0 -1
- package/dist/plugins/schemas.js +0 -47
- package/dist/plugins/types.d.ts.map +0 -1
- package/dist/providers/base-registry.cjs +0 -147
- package/dist/providers/base-registry.d.ts +0 -147
- package/dist/providers/base-registry.d.ts.map +0 -1
- package/dist/providers/base-registry.js +0 -123
- package/dist/providers/discovery.cjs +0 -109
- package/dist/providers/discovery.d.ts +0 -96
- package/dist/providers/discovery.d.ts.map +0 -1
- package/dist/providers/discovery.js +0 -84
- package/dist/providers/index.cjs +0 -24
- package/dist/providers/index.d.ts +0 -32
- package/dist/providers/index.d.ts.map +0 -1
- package/dist/providers/index.js +0 -2
- package/dist/resources/internal-provider.d.ts.map +0 -1
- package/dist/storage/blob/factory.d.ts +0 -37
- package/dist/storage/blob/factory.d.ts.map +0 -1
- package/dist/storage/blob/factory.js +0 -15
- package/dist/storage/blob/local-blob-store.cjs +0 -496
- package/dist/storage/blob/local-blob-store.d.ts +0 -58
- package/dist/storage/blob/local-blob-store.d.ts.map +0 -1
- package/dist/storage/blob/local-blob-store.js +0 -463
- package/dist/storage/blob/memory-blob-store.cjs +0 -326
- package/dist/storage/blob/memory-blob-store.d.ts +0 -66
- package/dist/storage/blob/memory-blob-store.d.ts.map +0 -1
- package/dist/storage/blob/memory-blob-store.js +0 -303
- package/dist/storage/blob/provider.d.ts +0 -50
- package/dist/storage/blob/provider.d.ts.map +0 -1
- package/dist/storage/blob/providers/index.d.ts +0 -8
- package/dist/storage/blob/providers/index.d.ts.map +0 -1
- package/dist/storage/blob/providers/index.js +0 -7
- package/dist/storage/blob/providers/local.cjs +0 -39
- package/dist/storage/blob/providers/local.d.ts +0 -17
- package/dist/storage/blob/providers/local.d.ts.map +0 -1
- package/dist/storage/blob/providers/local.js +0 -16
- package/dist/storage/blob/providers/memory.cjs +0 -39
- package/dist/storage/blob/providers/memory.d.ts +0 -17
- package/dist/storage/blob/providers/memory.d.ts.map +0 -1
- package/dist/storage/blob/providers/memory.js +0 -16
- package/dist/storage/blob/registry.cjs +0 -50
- package/dist/storage/blob/registry.d.ts +0 -42
- package/dist/storage/blob/registry.d.ts.map +0 -1
- package/dist/storage/blob/registry.js +0 -26
- package/dist/storage/blob/schemas.cjs +0 -52
- package/dist/storage/blob/schemas.d.ts +0 -85
- package/dist/storage/blob/schemas.d.ts.map +0 -1
- package/dist/storage/blob/schemas.js +0 -26
- package/dist/storage/cache/factory.cjs +0 -38
- package/dist/storage/cache/factory.d.ts +0 -37
- package/dist/storage/cache/factory.d.ts.map +0 -1
- package/dist/storage/cache/factory.js +0 -15
- package/dist/storage/cache/memory-cache-store.cjs +0 -107
- package/dist/storage/cache/memory-cache-store.d.ts +0 -26
- package/dist/storage/cache/memory-cache-store.d.ts.map +0 -1
- package/dist/storage/cache/memory-cache-store.js +0 -84
- package/dist/storage/cache/provider.cjs +0 -16
- package/dist/storage/cache/provider.d.ts +0 -56
- package/dist/storage/cache/provider.d.ts.map +0 -1
- package/dist/storage/cache/provider.js +0 -0
- package/dist/storage/cache/providers/index.d.ts +0 -8
- package/dist/storage/cache/providers/index.d.ts.map +0 -1
- package/dist/storage/cache/providers/index.js +0 -7
- package/dist/storage/cache/providers/memory.d.ts +0 -17
- package/dist/storage/cache/providers/memory.d.ts.map +0 -1
- package/dist/storage/cache/providers/memory.js +0 -17
- package/dist/storage/cache/providers/redis.cjs +0 -66
- package/dist/storage/cache/providers/redis.d.ts +0 -20
- package/dist/storage/cache/providers/redis.d.ts.map +0 -1
- package/dist/storage/cache/providers/redis.js +0 -33
- package/dist/storage/cache/redis-store.cjs +0 -173
- package/dist/storage/cache/redis-store.d.ts +0 -32
- package/dist/storage/cache/redis-store.d.ts.map +0 -1
- package/dist/storage/cache/redis-store.js +0 -150
- package/dist/storage/cache/registry.cjs +0 -50
- package/dist/storage/cache/registry.d.ts +0 -42
- package/dist/storage/cache/registry.d.ts.map +0 -1
- package/dist/storage/cache/registry.js +0 -26
- package/dist/storage/cache/schemas.cjs +0 -81
- package/dist/storage/cache/schemas.d.ts +0 -150
- package/dist/storage/cache/schemas.d.ts.map +0 -1
- package/dist/storage/cache/schemas.js +0 -55
- package/dist/storage/database/factory.cjs +0 -38
- package/dist/storage/database/factory.d.ts +0 -39
- package/dist/storage/database/factory.d.ts.map +0 -1
- package/dist/storage/database/factory.js +0 -15
- package/dist/storage/database/memory-database-store.cjs +0 -122
- package/dist/storage/database/memory-database-store.d.ts +0 -29
- package/dist/storage/database/memory-database-store.d.ts.map +0 -1
- package/dist/storage/database/memory-database-store.js +0 -99
- package/dist/storage/database/postgres-store.cjs +0 -342
- package/dist/storage/database/postgres-store.d.ts +0 -55
- package/dist/storage/database/postgres-store.d.ts.map +0 -1
- package/dist/storage/database/postgres-store.js +0 -319
- package/dist/storage/database/provider.cjs +0 -16
- package/dist/storage/database/provider.d.ts +0 -56
- package/dist/storage/database/provider.d.ts.map +0 -1
- package/dist/storage/database/provider.js +0 -0
- package/dist/storage/database/providers/index.d.ts +0 -9
- package/dist/storage/database/providers/index.d.ts.map +0 -1
- package/dist/storage/database/providers/index.js +0 -9
- package/dist/storage/database/providers/memory.cjs +0 -40
- package/dist/storage/database/providers/memory.d.ts +0 -16
- package/dist/storage/database/providers/memory.d.ts.map +0 -1
- package/dist/storage/database/providers/memory.js +0 -17
- package/dist/storage/database/providers/postgres.cjs +0 -62
- package/dist/storage/database/providers/postgres.d.ts +0 -19
- package/dist/storage/database/providers/postgres.d.ts.map +0 -1
- package/dist/storage/database/providers/postgres.js +0 -29
- package/dist/storage/database/providers/sqlite.cjs +0 -66
- package/dist/storage/database/providers/sqlite.d.ts +0 -20
- package/dist/storage/database/providers/sqlite.d.ts.map +0 -1
- package/dist/storage/database/providers/sqlite.js +0 -33
- package/dist/storage/database/registry.cjs +0 -50
- package/dist/storage/database/registry.d.ts +0 -42
- package/dist/storage/database/registry.d.ts.map +0 -1
- package/dist/storage/database/registry.js +0 -26
- package/dist/storage/database/schemas.cjs +0 -97
- package/dist/storage/database/schemas.d.ts +0 -226
- package/dist/storage/database/schemas.d.ts.map +0 -1
- package/dist/storage/database/schemas.js +0 -70
- package/dist/storage/database/sqlite-store.cjs +0 -270
- package/dist/storage/database/sqlite-store.d.ts +0 -33
- package/dist/storage/database/sqlite-store.d.ts.map +0 -1
- package/dist/storage/database/sqlite-store.js +0 -237
- package/dist/storage/schemas.cjs +0 -57
- package/dist/storage/schemas.d.ts +0 -347
- package/dist/storage/schemas.d.ts.map +0 -1
- package/dist/storage/schemas.js +0 -37
- package/dist/tools/bash-pattern-utils.cjs +0 -91
- package/dist/tools/bash-pattern-utils.d.ts +0 -58
- package/dist/tools/bash-pattern-utils.d.ts.map +0 -1
- package/dist/tools/bash-pattern-utils.js +0 -64
- package/dist/tools/custom-tool-registry.cjs +0 -64
- package/dist/tools/custom-tool-registry.d.ts +0 -126
- package/dist/tools/custom-tool-registry.d.ts.map +0 -1
- package/dist/tools/custom-tool-registry.js +0 -40
- package/dist/tools/custom-tool-schema-registry.cjs +0 -164
- package/dist/tools/custom-tool-schema-registry.d.ts +0 -86
- package/dist/tools/custom-tool-schema-registry.d.ts.map +0 -1
- package/dist/tools/custom-tool-schema-registry.js +0 -140
- package/dist/tools/internal-tools/constants.d.ts +0 -12
- package/dist/tools/internal-tools/constants.d.ts.map +0 -1
- package/dist/tools/internal-tools/constants.js +0 -12
- package/dist/tools/internal-tools/implementations/ask-user-tool.cjs +0 -57
- package/dist/tools/internal-tools/implementations/ask-user-tool.d.ts +0 -18
- package/dist/tools/internal-tools/implementations/ask-user-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/ask-user-tool.js +0 -34
- package/dist/tools/internal-tools/implementations/delegate-to-url-tool.cjs +0 -192
- package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts +0 -33
- package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/delegate-to-url-tool.js +0 -169
- package/dist/tools/internal-tools/implementations/get-resource-tool.cjs +0 -113
- package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts +0 -30
- package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/get-resource-tool.js +0 -90
- package/dist/tools/internal-tools/implementations/invoke-skill-tool.cjs +0 -140
- package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts +0 -24
- package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/invoke-skill-tool.js +0 -117
- package/dist/tools/internal-tools/implementations/list-resources-tool.cjs +0 -91
- package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts +0 -24
- package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/list-resources-tool.js +0 -68
- package/dist/tools/internal-tools/implementations/search-history-tool.cjs +0 -61
- package/dist/tools/internal-tools/implementations/search-history-tool.d.ts +0 -7
- package/dist/tools/internal-tools/implementations/search-history-tool.d.ts.map +0 -1
- package/dist/tools/internal-tools/implementations/search-history-tool.js +0 -38
- package/dist/tools/internal-tools/index.cjs +0 -26
- package/dist/tools/internal-tools/index.d.ts +0 -4
- package/dist/tools/internal-tools/index.d.ts.map +0 -1
- package/dist/tools/internal-tools/index.js +0 -3
- package/dist/tools/internal-tools/provider.cjs +0 -324
- package/dist/tools/internal-tools/provider.d.ts +0 -114
- package/dist/tools/internal-tools/provider.d.ts.map +0 -1
- package/dist/tools/internal-tools/provider.js +0 -301
- package/dist/tools/internal-tools/registry.cjs +0 -71
- package/dist/tools/internal-tools/registry.d.ts +0 -91
- package/dist/tools/internal-tools/registry.d.ts.map +0 -1
- package/dist/tools/internal-tools/registry.js +0 -47
- /package/dist/{context/compaction/provider.js → agent/agent-options.js} +0 -0
- /package/dist/{image/types.js → agent/runtime-config.js} +0 -0
- /package/dist/{image → hooks}/types.cjs +0 -0
- /package/dist/{plugins → hooks}/types.js +0 -0
- /package/dist/{plugins → workspace}/types.cjs +0 -0
- /package/dist/{storage/blob/provider.js → workspace/types.js} +0 -0
package/dist/context/utils.cjs
CHANGED
|
@@ -50,8 +50,8 @@ __export(utils_exports, {
|
|
|
50
50
|
module.exports = __toCommonJS(utils_exports);
|
|
51
51
|
var import_types = require("./types.js");
|
|
52
52
|
var import_display_types = require("../tools/display-types.js");
|
|
53
|
-
var import_registry = require("../llm/registry.
|
|
54
|
-
var import_safe_stringify = require("../utils/safe-stringify.
|
|
53
|
+
var import_registry = require("../llm/registry/index.js");
|
|
54
|
+
var import_safe_stringify = require("../utils/safe-stringify.js");
|
|
55
55
|
var import_media_helpers = require("./media-helpers.js");
|
|
56
56
|
const MIN_BASE64_HEURISTIC_LENGTH = 512;
|
|
57
57
|
const MAX_TOOL_TEXT_CHARS = 8e3;
|
|
@@ -581,49 +581,63 @@ function filterMessagesByLLMCapabilities(messages, config, logger) {
|
|
|
581
581
|
}
|
|
582
582
|
let imagesInMessage = 0;
|
|
583
583
|
let filesInMessage = 0;
|
|
584
|
-
const filteredContent = message.content.
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
if (part.type === "image") {
|
|
589
|
-
const mimeType = part.mimeType ?? "image/jpeg";
|
|
590
|
-
const validation = (0, import_registry.validateModelFileSupport)(
|
|
591
|
-
config.provider,
|
|
592
|
-
config.model,
|
|
593
|
-
mimeType
|
|
594
|
-
);
|
|
595
|
-
if (validation.isSupported) {
|
|
596
|
-
return true;
|
|
597
|
-
}
|
|
598
|
-
if (validation.error?.includes("does not support")) {
|
|
599
|
-
imagesInMessage++;
|
|
600
|
-
return false;
|
|
584
|
+
const filteredContent = message.content.flatMap(
|
|
585
|
+
(part) => {
|
|
586
|
+
if (part.type === "text") {
|
|
587
|
+
return [part];
|
|
601
588
|
}
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
589
|
+
if (part.type === "image") {
|
|
590
|
+
const mimeType = part.mimeType ?? "image/jpeg";
|
|
591
|
+
const validation = (0, import_registry.validateModelFileSupport)(
|
|
592
|
+
config.provider,
|
|
593
|
+
config.model,
|
|
594
|
+
mimeType
|
|
595
|
+
);
|
|
596
|
+
if (validation.isSupported) {
|
|
597
|
+
return [part];
|
|
598
|
+
}
|
|
599
|
+
if (validation.error?.includes("does not support")) {
|
|
600
|
+
imagesInMessage++;
|
|
601
|
+
return [
|
|
602
|
+
{
|
|
603
|
+
type: "text",
|
|
604
|
+
text: `ERROR: Cannot read image (this model does not support image input). Inform the user.`
|
|
605
|
+
}
|
|
606
|
+
];
|
|
607
|
+
}
|
|
608
|
+
logger.warn(
|
|
609
|
+
`Could not validate image support for ${config.model}: ${validation.error}`
|
|
610
|
+
);
|
|
611
|
+
return [part];
|
|
615
612
|
}
|
|
616
|
-
if (
|
|
617
|
-
|
|
618
|
-
|
|
613
|
+
if (part.type === "file" && part.mimeType) {
|
|
614
|
+
const validation = (0, import_registry.validateModelFileSupport)(
|
|
615
|
+
config.provider,
|
|
616
|
+
config.model,
|
|
617
|
+
part.mimeType
|
|
618
|
+
);
|
|
619
|
+
if (validation.isSupported) {
|
|
620
|
+
return [part];
|
|
621
|
+
}
|
|
622
|
+
if (validation.error?.includes("does not support")) {
|
|
623
|
+
filesInMessage++;
|
|
624
|
+
const name = part.filename ? `"${part.filename}"` : "this file";
|
|
625
|
+
const kind = validation.fileType ?? "this file type";
|
|
626
|
+
return [
|
|
627
|
+
{
|
|
628
|
+
type: "text",
|
|
629
|
+
text: `ERROR: Cannot read ${name} (this model does not support ${kind} input). Inform the user.`
|
|
630
|
+
}
|
|
631
|
+
];
|
|
632
|
+
}
|
|
633
|
+
logger.warn(
|
|
634
|
+
`Could not validate file support for ${config.model}: ${validation.error}`
|
|
635
|
+
);
|
|
636
|
+
return [part];
|
|
619
637
|
}
|
|
620
|
-
|
|
621
|
-
`Could not validate file support for ${config.model}: ${validation.error}`
|
|
622
|
-
);
|
|
623
|
-
return true;
|
|
638
|
+
return [part];
|
|
624
639
|
}
|
|
625
|
-
|
|
626
|
-
});
|
|
640
|
+
);
|
|
627
641
|
totalImagesFiltered += imagesInMessage;
|
|
628
642
|
totalFilesFiltered += filesInMessage;
|
|
629
643
|
if (filteredContent.length === 0) {
|
|
@@ -823,6 +837,17 @@ async function persistToolMedia(normalized, options, logger) {
|
|
|
823
837
|
source: "tool"
|
|
824
838
|
});
|
|
825
839
|
const resourceUri = blobRef.uri;
|
|
840
|
+
let publicUrl;
|
|
841
|
+
try {
|
|
842
|
+
const urlResult = await blobStore.retrieve(resourceUri, "url");
|
|
843
|
+
if (urlResult.format === "url") {
|
|
844
|
+
publicUrl = urlResult.data;
|
|
845
|
+
}
|
|
846
|
+
} catch (error) {
|
|
847
|
+
logger.warn(
|
|
848
|
+
`Failed to resolve blob URL for ${resourceUri}: ${error instanceof Error ? error.message : String(error)}`
|
|
849
|
+
);
|
|
850
|
+
}
|
|
826
851
|
if (hint.kind === "image") {
|
|
827
852
|
parts[hint.index] = createBlobImagePart(resourceUri, blobRef.metadata.mimeType);
|
|
828
853
|
} else {
|
|
@@ -836,7 +861,8 @@ async function persistToolMedia(normalized, options, logger) {
|
|
|
836
861
|
mimeType: blobRef.metadata.mimeType,
|
|
837
862
|
...blobRef.metadata.originalName && {
|
|
838
863
|
filename: blobRef.metadata.originalName
|
|
839
|
-
}
|
|
864
|
+
},
|
|
865
|
+
...publicUrl ? { url: publicUrl } : {}
|
|
840
866
|
});
|
|
841
867
|
} catch (error) {
|
|
842
868
|
logger.warn(
|
|
@@ -848,7 +874,8 @@ async function persistToolMedia(normalized, options, logger) {
|
|
|
848
874
|
if (storedBlobs.length > 0) {
|
|
849
875
|
const annotations = storedBlobs.map((blob) => {
|
|
850
876
|
const label = blob.filename || blob.kind;
|
|
851
|
-
|
|
877
|
+
const urlSuffix = blob.url ? `, url: ${blob.url}` : "";
|
|
878
|
+
return `[Stored resource_ref:${blob.uri} (${label}, ${blob.mimeType}${urlSuffix})]`;
|
|
852
879
|
}).join("\n");
|
|
853
880
|
parts.push({ type: "text", text: annotations });
|
|
854
881
|
logger.debug(`Added blob reference annotations for ${storedBlobs.length} resource(s)`);
|
package/dist/context/utils.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { InternalMessage, TextPart, ImagePart, FilePart, UIResourcePart, ContentPart, SanitizedToolResult } from './types.js';
|
|
2
|
-
import type {
|
|
2
|
+
import type { Logger } from '../logger/v2/types.js';
|
|
3
3
|
import { LLMContext } from '../llm/types.js';
|
|
4
4
|
import { getFileMediaKind, getResourceKind } from './media-helpers.js';
|
|
5
5
|
type ToolBlobNamingOptions = {
|
|
@@ -118,7 +118,7 @@ export declare function estimateContextTokens(systemPrompt: string, preparedHist
|
|
|
118
118
|
*/
|
|
119
119
|
export declare function getImageData(imagePart: {
|
|
120
120
|
image: string | Uint8Array | Buffer | ArrayBuffer | URL;
|
|
121
|
-
}, logger:
|
|
121
|
+
}, logger: Logger): string;
|
|
122
122
|
/**
|
|
123
123
|
* Extracts file data (base64 or URL) from a FilePart or raw buffer.
|
|
124
124
|
* @param filePart The file part containing file data
|
|
@@ -127,7 +127,7 @@ export declare function getImageData(imagePart: {
|
|
|
127
127
|
*/
|
|
128
128
|
export declare function getFileData(filePart: {
|
|
129
129
|
data: string | Uint8Array | Buffer | ArrayBuffer | URL;
|
|
130
|
-
}, logger:
|
|
130
|
+
}, logger: Logger): string;
|
|
131
131
|
/**
|
|
132
132
|
* Extracts image data with blob resolution support.
|
|
133
133
|
* If the image is a blob reference, resolves it from the resource manager.
|
|
@@ -138,7 +138,7 @@ export declare function getFileData(filePart: {
|
|
|
138
138
|
*/
|
|
139
139
|
export declare function getImageDataWithBlobSupport(imagePart: {
|
|
140
140
|
image: string | Uint8Array | Buffer | ArrayBuffer | URL;
|
|
141
|
-
}, resourceManager: import('../resources/index.js').ResourceManager, logger:
|
|
141
|
+
}, resourceManager: import('../resources/index.js').ResourceManager, logger: Logger): Promise<string>;
|
|
142
142
|
/**
|
|
143
143
|
* Extracts file data with blob resolution support.
|
|
144
144
|
* If the data is a blob reference, resolves it from the resource manager.
|
|
@@ -148,7 +148,7 @@ export declare function getImageDataWithBlobSupport(imagePart: {
|
|
|
148
148
|
*/
|
|
149
149
|
export declare function getFileDataWithBlobSupport(filePart: {
|
|
150
150
|
data: string | Uint8Array | Buffer | ArrayBuffer | URL;
|
|
151
|
-
}, resourceManager: import('../resources/index.js').ResourceManager, logger:
|
|
151
|
+
}, resourceManager: import('../resources/index.js').ResourceManager, logger: Logger): Promise<string>;
|
|
152
152
|
/**
|
|
153
153
|
* Resolves blob references in message content to actual data.
|
|
154
154
|
* Expands @blob:id references to their actual base64 content for LLM consumption.
|
|
@@ -161,9 +161,9 @@ export declare function getFileDataWithBlobSupport(filePart: {
|
|
|
161
161
|
* If omitted, all blobs are expanded (legacy behavior).
|
|
162
162
|
* @returns Promise<Resolved content with blob references expanded or replaced with placeholders>
|
|
163
163
|
*/
|
|
164
|
-
export declare function expandBlobReferences(content: null, resourceManager: import('../resources/index.js').ResourceManager, logger:
|
|
165
|
-
export declare function expandBlobReferences(content: ContentPart[], resourceManager: import('../resources/index.js').ResourceManager, logger:
|
|
166
|
-
export declare function expandBlobReferences(content: ContentPart[] | null, resourceManager: import('../resources/index.js').ResourceManager, logger:
|
|
164
|
+
export declare function expandBlobReferences(content: null, resourceManager: import('../resources/index.js').ResourceManager, logger: Logger, allowedMediaTypes?: string[]): Promise<ContentPart[]>;
|
|
165
|
+
export declare function expandBlobReferences(content: ContentPart[], resourceManager: import('../resources/index.js').ResourceManager, logger: Logger, allowedMediaTypes?: string[]): Promise<ContentPart[]>;
|
|
166
|
+
export declare function expandBlobReferences(content: ContentPart[] | null, resourceManager: import('../resources/index.js').ResourceManager, logger: Logger, allowedMediaTypes?: string[]): Promise<ContentPart[]>;
|
|
167
167
|
/**
|
|
168
168
|
* Filters message content based on LLM capabilities.
|
|
169
169
|
* Removes unsupported file attachments while preserving supported content.
|
|
@@ -172,7 +172,7 @@ export declare function expandBlobReferences(content: ContentPart[] | null, reso
|
|
|
172
172
|
* @param config The LLM configuration (provider and optional model)
|
|
173
173
|
* @returns Filtered messages with unsupported content removed
|
|
174
174
|
*/
|
|
175
|
-
export declare function filterMessagesByLLMCapabilities(messages: InternalMessage[], config: LLMContext, logger:
|
|
175
|
+
export declare function filterMessagesByLLMCapabilities(messages: InternalMessage[], config: LLMContext, logger: Logger): InternalMessage[];
|
|
176
176
|
/**
|
|
177
177
|
* Detect if a string is likely a Base64 blob (not a typical sentence/text).
|
|
178
178
|
* Uses a length threshold and character set heuristic.
|
|
@@ -213,9 +213,9 @@ export declare function matchesAnyMimePattern(mimeType: string | undefined, patt
|
|
|
213
213
|
* @param fileTypes Array of supported file types from LLM registry (e.g., ['image', 'pdf', 'audio'])
|
|
214
214
|
* @returns Array of MIME type patterns (e.g., ['image/*', 'application/pdf', 'audio/*'])
|
|
215
215
|
*/
|
|
216
|
-
export declare function fileTypesToMimePatterns(fileTypes: string[], logger:
|
|
217
|
-
export declare function normalizeToolResult(result: unknown, logger:
|
|
218
|
-
export declare function persistToolMedia(normalized: NormalizedToolResult, options: PersistToolMediaOptions, logger:
|
|
216
|
+
export declare function fileTypesToMimePatterns(fileTypes: string[], logger: Logger): string[];
|
|
217
|
+
export declare function normalizeToolResult(result: unknown, logger: Logger): Promise<NormalizedToolResult>;
|
|
218
|
+
export declare function persistToolMedia(normalized: NormalizedToolResult, options: PersistToolMediaOptions, logger: Logger): Promise<PersistToolMediaResult>;
|
|
219
219
|
/**
|
|
220
220
|
* Convert an arbitrary tool result into safe InternalMessage content with optional blob storage.
|
|
221
221
|
* - Automatically stores large media in blob store and returns resource references
|
|
@@ -223,13 +223,13 @@ export declare function persistToolMedia(normalized: NormalizedToolResult, optio
|
|
|
223
223
|
* - Removes huge binary blobs inside objects
|
|
224
224
|
* - Truncates extremely long raw text
|
|
225
225
|
*/
|
|
226
|
-
export declare function sanitizeToolResultToContentWithBlobs(result: unknown, logger:
|
|
226
|
+
export declare function sanitizeToolResultToContentWithBlobs(result: unknown, logger: Logger, blobStore?: import('../storage/blob/types.js').BlobStore, namingOptions?: ToolBlobNamingOptions): Promise<InternalMessage['content']>;
|
|
227
227
|
export declare function sanitizeToolResult(result: unknown, options: {
|
|
228
228
|
blobStore?: import('../storage/blob/types.js').BlobStore;
|
|
229
229
|
toolName: string;
|
|
230
230
|
toolCallId: string;
|
|
231
231
|
success: boolean;
|
|
232
|
-
}, logger:
|
|
232
|
+
}, logger: Logger): Promise<SanitizedToolResult>;
|
|
233
233
|
/**
|
|
234
234
|
* Produce a short textual summary for tool content, to be used with providers
|
|
235
235
|
* that only accept text for tool messages (e.g., OpenAI/Anthropic tool role).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/context/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,eAAe,EACf,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,cAAc,EACd,WAAW,EACX,mBAAmB,EAEtB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/context/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/context/utils.js
CHANGED
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
isToolMessage
|
|
4
4
|
} from "./types.js";
|
|
5
5
|
import { isValidDisplayData } from "../tools/display-types.js";
|
|
6
|
-
import { validateModelFileSupport } from "../llm/registry.js";
|
|
6
|
+
import { validateModelFileSupport } from "../llm/registry/index.js";
|
|
7
7
|
import { safeStringify } from "../utils/safe-stringify.js";
|
|
8
8
|
import { getFileMediaKind, getResourceKind } from "./media-helpers.js";
|
|
9
9
|
const MIN_BASE64_HEURISTIC_LENGTH = 512;
|
|
@@ -534,49 +534,63 @@ function filterMessagesByLLMCapabilities(messages, config, logger) {
|
|
|
534
534
|
}
|
|
535
535
|
let imagesInMessage = 0;
|
|
536
536
|
let filesInMessage = 0;
|
|
537
|
-
const filteredContent = message.content.
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
if (part.type === "image") {
|
|
542
|
-
const mimeType = part.mimeType ?? "image/jpeg";
|
|
543
|
-
const validation = validateModelFileSupport(
|
|
544
|
-
config.provider,
|
|
545
|
-
config.model,
|
|
546
|
-
mimeType
|
|
547
|
-
);
|
|
548
|
-
if (validation.isSupported) {
|
|
549
|
-
return true;
|
|
550
|
-
}
|
|
551
|
-
if (validation.error?.includes("does not support")) {
|
|
552
|
-
imagesInMessage++;
|
|
553
|
-
return false;
|
|
537
|
+
const filteredContent = message.content.flatMap(
|
|
538
|
+
(part) => {
|
|
539
|
+
if (part.type === "text") {
|
|
540
|
+
return [part];
|
|
554
541
|
}
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
542
|
+
if (part.type === "image") {
|
|
543
|
+
const mimeType = part.mimeType ?? "image/jpeg";
|
|
544
|
+
const validation = validateModelFileSupport(
|
|
545
|
+
config.provider,
|
|
546
|
+
config.model,
|
|
547
|
+
mimeType
|
|
548
|
+
);
|
|
549
|
+
if (validation.isSupported) {
|
|
550
|
+
return [part];
|
|
551
|
+
}
|
|
552
|
+
if (validation.error?.includes("does not support")) {
|
|
553
|
+
imagesInMessage++;
|
|
554
|
+
return [
|
|
555
|
+
{
|
|
556
|
+
type: "text",
|
|
557
|
+
text: `ERROR: Cannot read image (this model does not support image input). Inform the user.`
|
|
558
|
+
}
|
|
559
|
+
];
|
|
560
|
+
}
|
|
561
|
+
logger.warn(
|
|
562
|
+
`Could not validate image support for ${config.model}: ${validation.error}`
|
|
563
|
+
);
|
|
564
|
+
return [part];
|
|
568
565
|
}
|
|
569
|
-
if (
|
|
570
|
-
|
|
571
|
-
|
|
566
|
+
if (part.type === "file" && part.mimeType) {
|
|
567
|
+
const validation = validateModelFileSupport(
|
|
568
|
+
config.provider,
|
|
569
|
+
config.model,
|
|
570
|
+
part.mimeType
|
|
571
|
+
);
|
|
572
|
+
if (validation.isSupported) {
|
|
573
|
+
return [part];
|
|
574
|
+
}
|
|
575
|
+
if (validation.error?.includes("does not support")) {
|
|
576
|
+
filesInMessage++;
|
|
577
|
+
const name = part.filename ? `"${part.filename}"` : "this file";
|
|
578
|
+
const kind = validation.fileType ?? "this file type";
|
|
579
|
+
return [
|
|
580
|
+
{
|
|
581
|
+
type: "text",
|
|
582
|
+
text: `ERROR: Cannot read ${name} (this model does not support ${kind} input). Inform the user.`
|
|
583
|
+
}
|
|
584
|
+
];
|
|
585
|
+
}
|
|
586
|
+
logger.warn(
|
|
587
|
+
`Could not validate file support for ${config.model}: ${validation.error}`
|
|
588
|
+
);
|
|
589
|
+
return [part];
|
|
572
590
|
}
|
|
573
|
-
|
|
574
|
-
`Could not validate file support for ${config.model}: ${validation.error}`
|
|
575
|
-
);
|
|
576
|
-
return true;
|
|
591
|
+
return [part];
|
|
577
592
|
}
|
|
578
|
-
|
|
579
|
-
});
|
|
593
|
+
);
|
|
580
594
|
totalImagesFiltered += imagesInMessage;
|
|
581
595
|
totalFilesFiltered += filesInMessage;
|
|
582
596
|
if (filteredContent.length === 0) {
|
|
@@ -776,6 +790,17 @@ async function persistToolMedia(normalized, options, logger) {
|
|
|
776
790
|
source: "tool"
|
|
777
791
|
});
|
|
778
792
|
const resourceUri = blobRef.uri;
|
|
793
|
+
let publicUrl;
|
|
794
|
+
try {
|
|
795
|
+
const urlResult = await blobStore.retrieve(resourceUri, "url");
|
|
796
|
+
if (urlResult.format === "url") {
|
|
797
|
+
publicUrl = urlResult.data;
|
|
798
|
+
}
|
|
799
|
+
} catch (error) {
|
|
800
|
+
logger.warn(
|
|
801
|
+
`Failed to resolve blob URL for ${resourceUri}: ${error instanceof Error ? error.message : String(error)}`
|
|
802
|
+
);
|
|
803
|
+
}
|
|
779
804
|
if (hint.kind === "image") {
|
|
780
805
|
parts[hint.index] = createBlobImagePart(resourceUri, blobRef.metadata.mimeType);
|
|
781
806
|
} else {
|
|
@@ -789,7 +814,8 @@ async function persistToolMedia(normalized, options, logger) {
|
|
|
789
814
|
mimeType: blobRef.metadata.mimeType,
|
|
790
815
|
...blobRef.metadata.originalName && {
|
|
791
816
|
filename: blobRef.metadata.originalName
|
|
792
|
-
}
|
|
817
|
+
},
|
|
818
|
+
...publicUrl ? { url: publicUrl } : {}
|
|
793
819
|
});
|
|
794
820
|
} catch (error) {
|
|
795
821
|
logger.warn(
|
|
@@ -801,7 +827,8 @@ async function persistToolMedia(normalized, options, logger) {
|
|
|
801
827
|
if (storedBlobs.length > 0) {
|
|
802
828
|
const annotations = storedBlobs.map((blob) => {
|
|
803
829
|
const label = blob.filename || blob.kind;
|
|
804
|
-
|
|
830
|
+
const urlSuffix = blob.url ? `, url: ${blob.url}` : "";
|
|
831
|
+
return `[Stored resource_ref:${blob.uri} (${label}, ${blob.mimeType}${urlSuffix})]`;
|
|
805
832
|
}).join("\n");
|
|
806
833
|
parts.push({ type: "text", text: annotations });
|
|
807
834
|
logger.debug(`Added blob reference annotations for ${storedBlobs.length} resource(s)`);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Result } from '../utils/result.js';
|
|
2
|
-
import type {
|
|
2
|
+
import type { Logger } from '../logger/v2/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* Bridge function to convert Result pattern to validation exceptions
|
|
5
5
|
* Used at public API boundaries for validation flows
|
|
@@ -22,5 +22,5 @@ import type { IDextoLogger } from '../logger/v2/types.js';
|
|
|
22
22
|
* const validatedConfig = ensureOk(configResult, logger);
|
|
23
23
|
* ```
|
|
24
24
|
*/
|
|
25
|
-
export declare function ensureOk<T, C>(result: Result<T, C>, logger:
|
|
25
|
+
export declare function ensureOk<T, C>(result: Result<T, C>, logger: Logger): T;
|
|
26
26
|
//# sourceMappingURL=result-bridge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result-bridge.d.ts","sourceRoot":"","sources":["../../src/errors/result-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"result-bridge.d.ts","sourceRoot":"","sources":["../../src/errors/result-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,CAStE"}
|
package/dist/errors/types.cjs
CHANGED
|
@@ -36,7 +36,7 @@ var ErrorScope = /* @__PURE__ */ ((ErrorScope2) => {
|
|
|
36
36
|
ErrorScope2["RESOURCE"] = "resource";
|
|
37
37
|
ErrorScope2["PROMPT"] = "prompt";
|
|
38
38
|
ErrorScope2["MEMORY"] = "memory";
|
|
39
|
-
ErrorScope2["
|
|
39
|
+
ErrorScope2["HOOK"] = "hook";
|
|
40
40
|
ErrorScope2["TELEMETRY"] = "telemetry";
|
|
41
41
|
return ErrorScope2;
|
|
42
42
|
})(ErrorScope || {});
|
package/dist/errors/types.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ import type { ResourceErrorCode } from '../resources/error-codes.js';
|
|
|
10
10
|
import type { PromptErrorCode } from '../prompts/error-codes.js';
|
|
11
11
|
import type { ApprovalErrorCode } from '../approval/error-codes.js';
|
|
12
12
|
import type { MemoryErrorCode } from '../memory/error-codes.js';
|
|
13
|
-
import type {
|
|
13
|
+
import type { HookErrorCode } from '../hooks/error-codes.js';
|
|
14
14
|
import type { TelemetryErrorCode } from '../telemetry/error-codes.js';
|
|
15
15
|
/**
|
|
16
16
|
* Error scopes representing functional domains in the system
|
|
@@ -30,7 +30,7 @@ export declare enum ErrorScope {
|
|
|
30
30
|
RESOURCE = "resource",// Resource management (MCP/internal) discovery and access
|
|
31
31
|
PROMPT = "prompt",// Prompt management, resolution, and providers
|
|
32
32
|
MEMORY = "memory",// Memory management and storage
|
|
33
|
-
|
|
33
|
+
HOOK = "hook",// Hook loading, validation, and execution
|
|
34
34
|
TELEMETRY = "telemetry"
|
|
35
35
|
}
|
|
36
36
|
/**
|
|
@@ -54,7 +54,7 @@ export declare enum ErrorType {
|
|
|
54
54
|
* Provides type safety for error handling
|
|
55
55
|
* Note: ConfigErrorCode has been moved to @dexto/agent-management
|
|
56
56
|
*/
|
|
57
|
-
export type DextoErrorCode = LLMErrorCode | AgentErrorCode | ContextErrorCode | SessionErrorCode | MCPErrorCode | ToolErrorCode | StorageErrorCode | SystemPromptErrorCode | ResourceErrorCode | PromptErrorCode | ApprovalErrorCode | MemoryErrorCode |
|
|
57
|
+
export type DextoErrorCode = LLMErrorCode | AgentErrorCode | ContextErrorCode | SessionErrorCode | MCPErrorCode | ToolErrorCode | StorageErrorCode | SystemPromptErrorCode | ResourceErrorCode | PromptErrorCode | ApprovalErrorCode | MemoryErrorCode | HookErrorCode | TelemetryErrorCode;
|
|
58
58
|
/** Severity of an issue */
|
|
59
59
|
export type Severity = 'error' | 'warning';
|
|
60
60
|
/** Generic issue type for validation results */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/errors/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/errors/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAG9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEtE;;;GAGG;AACH,oBAAY,UAAU;IAClB,GAAG,QAAQ,CAAE,iEAAiE;IAC9E,KAAK,UAAU,CAAE,iCAAiC;IAClD,MAAM,WAAW,CAAE,qDAAqD;IACxE,OAAO,YAAY,CAAE,2DAA2D;IAChF,OAAO,YAAY,CAAE,2CAA2C;IAChE,GAAG,QAAQ,CAAE,sCAAsC;IACnD,KAAK,UAAU,CAAE,mCAAmC;IACpD,OAAO,YAAY,CAAE,6BAA6B;IAClD,MAAM,WAAW,CAAE,2DAA2D;IAC9E,aAAa,kBAAkB,CAAE,iDAAiD;IAClF,QAAQ,aAAa,CAAE,0DAA0D;IACjF,MAAM,WAAW,CAAE,+CAA+C;IAClE,MAAM,WAAW,CAAE,gCAAgC;IACnD,IAAI,SAAS,CAAE,0CAA0C;IACzD,SAAS,cAAc;CAC1B;AAED;;;GAGG;AACH,oBAAY,SAAS;IACjB,IAAI,SAAS,CAAE,sDAAsD;IACrE,gBAAgB,qBAAqB,CAAE,4CAA4C;IACnF,SAAS,cAAc,CAAE,wCAAwC;IACjE,SAAS,cAAc,CAAE,qDAAqD;IAC9E,OAAO,YAAY,CAAE,4BAA4B;IACjD,QAAQ,aAAa,CAAE,gDAAgD;IACvE,UAAU,eAAe,CAAE,0BAA0B;IACrD,MAAM,WAAW,CAAE,mDAAmD;IACtE,WAAW,gBAAgB,CAAE,+CAA+C;IAC5E,OAAO,YAAY;CACtB;AAED;;;;GAIG;AACH,MAAM,MAAM,cAAc,GACpB,YAAY,GACZ,cAAc,GACd,gBAAgB,GAChB,gBAAgB,GAChB,YAAY,GACZ,aAAa,GACb,gBAAgB,GAChB,qBAAqB,GACrB,iBAAiB,GACjB,eAAe,GACf,iBAAiB,GACjB,eAAe,GACf,aAAa,GACb,kBAAkB,CAAC;AAEzB,2BAA2B;AAC3B,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AAE3C,gDAAgD;AAChD,MAAM,WAAW,KAAK,CAAC,CAAC,GAAG,OAAO;IAC9B,IAAI,EAAE,cAAc,GAAG,MAAM,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,UAAU,GAAG,MAAM,CAAC;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,CAAC,CAAC;CACf"}
|
package/dist/errors/types.js
CHANGED
|
@@ -13,7 +13,7 @@ var ErrorScope = /* @__PURE__ */ ((ErrorScope2) => {
|
|
|
13
13
|
ErrorScope2["RESOURCE"] = "resource";
|
|
14
14
|
ErrorScope2["PROMPT"] = "prompt";
|
|
15
15
|
ErrorScope2["MEMORY"] = "memory";
|
|
16
|
-
ErrorScope2["
|
|
16
|
+
ErrorScope2["HOOK"] = "hook";
|
|
17
17
|
ErrorScope2["TELEMETRY"] = "telemetry";
|
|
18
18
|
return ErrorScope2;
|
|
19
19
|
})(ErrorScope || {});
|
package/dist/events/index.cjs
CHANGED
|
@@ -40,6 +40,7 @@ const AGENT_EVENT_NAMES = [
|
|
|
40
40
|
"session:title-updated",
|
|
41
41
|
"session:override-set",
|
|
42
42
|
"session:override-cleared",
|
|
43
|
+
"workspace:changed",
|
|
43
44
|
"mcp:server-connected",
|
|
44
45
|
"mcp:server-added",
|
|
45
46
|
"mcp:server-removed",
|
|
@@ -56,13 +57,17 @@ const AGENT_EVENT_NAMES = [
|
|
|
56
57
|
"resource:cache-invalidated",
|
|
57
58
|
"approval:request",
|
|
58
59
|
"approval:response",
|
|
59
|
-
"run:invoke"
|
|
60
|
+
"run:invoke",
|
|
61
|
+
"agent:stopped",
|
|
62
|
+
"tool:background",
|
|
63
|
+
"tool:background-completed"
|
|
60
64
|
];
|
|
61
65
|
const SESSION_EVENT_NAMES = [
|
|
62
66
|
"llm:thinking",
|
|
63
67
|
"llm:chunk",
|
|
64
68
|
"llm:response",
|
|
65
69
|
"llm:tool-call",
|
|
70
|
+
"llm:tool-call-partial",
|
|
66
71
|
"llm:tool-result",
|
|
67
72
|
"llm:error",
|
|
68
73
|
"llm:switched",
|
|
@@ -83,6 +88,7 @@ const STREAMING_EVENTS = [
|
|
|
83
88
|
"llm:chunk",
|
|
84
89
|
"llm:response",
|
|
85
90
|
"llm:tool-call",
|
|
91
|
+
"llm:tool-call-partial",
|
|
86
92
|
"llm:tool-result",
|
|
87
93
|
"llm:error",
|
|
88
94
|
"llm:unsupported-input",
|
|
@@ -246,6 +252,13 @@ class BaseTypedEventEmitter {
|
|
|
246
252
|
this._emitter.off(event, listener);
|
|
247
253
|
return this;
|
|
248
254
|
}
|
|
255
|
+
/**
|
|
256
|
+
* Configure max listeners for this event bus to avoid noisy warnings when many subscribers exist.
|
|
257
|
+
*/
|
|
258
|
+
setMaxListeners(count) {
|
|
259
|
+
this._emitter.setMaxListeners(count);
|
|
260
|
+
return this;
|
|
261
|
+
}
|
|
249
262
|
}
|
|
250
263
|
class AgentEventBus extends BaseTypedEventEmitter {
|
|
251
264
|
}
|
|
@@ -253,7 +266,7 @@ class SessionEventBus extends BaseTypedEventEmitter {
|
|
|
253
266
|
}
|
|
254
267
|
class TypedEventEmitter extends BaseTypedEventEmitter {
|
|
255
268
|
}
|
|
256
|
-
const eventBus = new TypedEventEmitter();
|
|
269
|
+
const eventBus = new TypedEventEmitter().setMaxListeners(200);
|
|
257
270
|
// Annotate the CommonJS export names for ESM import in node:
|
|
258
271
|
0 && (module.exports = {
|
|
259
272
|
AGENT_EVENT_NAMES,
|