@dexto/core 1.5.8 → 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 +293 -154
- package/dist/agent/DextoAgent.d.ts +83 -56
- package/dist/agent/DextoAgent.d.ts.map +1 -1
- package/dist/agent/DextoAgent.js +290 -151
- 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 -104
- package/dist/agent/schemas.d.ts +10 -9199
- package/dist/agent/schemas.d.ts.map +1 -1
- package/dist/agent/schemas.js +1 -109
- 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 +4 -2
- package/dist/context/manager.d.ts +4 -3
- package/dist/context/manager.d.ts.map +1 -1
- package/dist/context/manager.js +4 -2
- package/dist/context/types.d.ts +2 -0
- package/dist/context/types.d.ts.map +1 -1
- package/dist/context/utils.cjs +2 -2
- package/dist/context/utils.d.ts +14 -14
- package/dist/context/utils.d.ts.map +1 -1
- 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 +11 -1
- package/dist/events/index.d.ts +43 -7
- package/dist/events/index.d.ts.map +1 -1
- package/dist/events/index.js +11 -1
- 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 +5 -5
- 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/errors.cjs +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 +49 -54
- 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 +49 -54
- 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/providers/local/schemas.d.ts +10 -10
- package/dist/llm/registry/auto-update.d.ts +2 -2
- package/dist/llm/registry/auto-update.d.ts.map +1 -1
- package/dist/llm/registry/index.d.ts +3 -3
- package/dist/llm/registry/index.d.ts.map +1 -1
- package/dist/llm/resolver.cjs +2 -2
- package/dist/llm/resolver.d.ts +4 -4
- package/dist/llm/resolver.d.ts.map +1 -1
- package/dist/llm/schemas.cjs +67 -104
- package/dist/llm/schemas.d.ts +6 -145
- package/dist/llm/schemas.d.ts.map +1 -1
- package/dist/llm/schemas.js +64 -101
- package/dist/llm/services/factory.cjs +2 -3
- 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 +2 -3
- package/dist/llm/services/vercel.cjs +7 -14
- package/dist/llm/services/vercel.d.ts +6 -7
- package/dist/llm/services/vercel.d.ts.map +1 -1
- package/dist/llm/services/vercel.js +7 -14
- package/dist/llm/validation.cjs +1 -1
- package/dist/llm/validation.d.ts +2 -2
- package/dist/llm/validation.d.ts.map +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.d.ts +2 -2
- package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
- 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 +15 -25
- 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 +16 -26
- 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.d.ts +2 -2
- package/dist/session/message-queue.d.ts.map +1 -1
- package/dist/session/session-manager.cjs +67 -9
- package/dist/session/session-manager.d.ts +46 -7
- package/dist/session/session-manager.d.ts.map +1 -1
- package/dist/session/session-manager.js +67 -9
- 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/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 +3 -3
- package/dist/tools/tool-call-metadata.d.ts +1 -1
- package/dist/tools/tool-call-metadata.d.ts.map +1 -1
- package/dist/tools/tool-call-metadata.js +3 -3
- package/dist/tools/tool-manager.cjs +376 -327
- package/dist/tools/tool-manager.d.ts +63 -80
- package/dist/tools/tool-manager.d.ts.map +1 -1
- package/dist/tools/tool-manager.js +376 -331
- package/dist/tools/types.d.ts +112 -13
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/utils/error-conversion.d.ts +2 -2
- package/dist/utils/error-conversion.d.ts.map +1 -1
- 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 +51 -56
- package/dist/utils/service-initializer.d.ts +17 -14
- package/dist/utils/service-initializer.d.ts.map +1 -1
- package/dist/utils/service-initializer.js +51 -56
- 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 +2 -2
- 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/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.cjs +0 -34
- 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 -116
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-initializer.d.ts","sourceRoot":"","sources":["../../src/utils/service-initializer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"service-initializer.d.ts","sourceRoot":"","sources":["../../src/utils/service-initializer.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAClG,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEzE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IACxB,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,aAAa,EAAE,aAAa,CAAC;IAC7B,YAAY,EAAE,iBAAiB,CAAC;IAChC,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,aAAa,EAAE,aAAa,CAAC;IAC7B,cAAc,EAAE,cAAc,CAAC;IAC/B,eAAe,EAAE,eAAe,CAAC;IACjC,eAAe,EAAE,eAAe,CAAC;IACjC,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACpC,UAAU,EAAE,UAAU,CAAC;IACvB,eAAe,EAAE,eAAe,CAAC;IACjC,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,YAAY,EAAE,QAAQ,GAAG,cAAc,GAAG,WAAW,CAAC;IACtD,aAAa,EAAE,aAAa,CAAC;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,yBAAyB,KAAK,WAAW,CAAC;AAErF,MAAM,MAAM,yBAAyB,GAAG;IACpC,oBAAoB,CAAC,EAAE,OAAO,+BAA+B,EAAE,oBAAoB,CAAC;IACpF,sBAAsB,CAAC,EAAE,OAAO,iBAAiB,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACjF,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC;CAC9B,CAAC;AAGF;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACrC,MAAM,EAAE,oBAAoB,EAC5B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,aAAa,EAC5B,SAAS,CAAC,EAAE,yBAAyB,EACrC,kBAAkB,CAAC,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,GAC3D,OAAO,CAAC,aAAa,CAAC,CAgNxB"}
|
|
@@ -5,15 +5,14 @@ import { SystemPromptManager } from "../systemPrompt/manager.js";
|
|
|
5
5
|
import { AgentStateManager } from "../agent/state-manager.js";
|
|
6
6
|
import { SessionManager } from "../session/index.js";
|
|
7
7
|
import { SearchService } from "../search/index.js";
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
8
|
+
import { AgentError } from "../agent/errors.js";
|
|
9
|
+
import { WorkspaceManager } from "../workspace/index.js";
|
|
10
10
|
import { createAllowedToolsProvider } from "../tools/confirmation/allowed-tools-provider/factory.js";
|
|
11
11
|
import { ResourceManager } from "../resources/manager.js";
|
|
12
12
|
import { ApprovalManager } from "../approval/manager.js";
|
|
13
13
|
import { MemoryManager } from "../memory/index.js";
|
|
14
|
-
import {
|
|
15
|
-
|
|
16
|
-
async function createAgentServices(config, configPath, logger, agentEventBus, overrides) {
|
|
14
|
+
import { HookManager } from "../hooks/manager.js";
|
|
15
|
+
async function createAgentServices(config, logger, agentEventBus, overrides, compactionStrategy) {
|
|
17
16
|
if (config.telemetry?.enabled) {
|
|
18
17
|
const { Telemetry } = await import("../telemetry/telemetry.js");
|
|
19
18
|
await Telemetry.init(config.telemetry);
|
|
@@ -21,18 +20,29 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
|
|
|
21
20
|
}
|
|
22
21
|
logger.debug("Using pre-created agent event bus");
|
|
23
22
|
logger.debug("Initializing storage manager");
|
|
24
|
-
const storageManager =
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
});
|
|
23
|
+
const storageManager = overrides?.storageManager ?? (() => {
|
|
24
|
+
throw AgentError.initializationFailed(
|
|
25
|
+
"StorageManager must be provided via overrides.storageManager during the DI refactor"
|
|
26
|
+
);
|
|
27
|
+
})();
|
|
28
|
+
if (!storageManager.isConnected()) {
|
|
29
|
+
await storageManager.initialize();
|
|
30
|
+
await storageManager.connect();
|
|
31
|
+
}
|
|
32
|
+
logger.debug("Storage manager initialized", await storageManager.getInfo());
|
|
33
|
+
const workspaceManager = new WorkspaceManager(
|
|
34
|
+
storageManager.getDatabase(),
|
|
35
|
+
agentEventBus,
|
|
36
|
+
logger
|
|
37
|
+
);
|
|
38
|
+
logger.debug("Workspace manager initialized");
|
|
29
39
|
logger.debug("Initializing approval manager");
|
|
30
40
|
const approvalManager = new ApprovalManager(
|
|
31
41
|
{
|
|
32
|
-
|
|
33
|
-
mode: config.
|
|
34
|
-
...config.
|
|
35
|
-
timeout: config.
|
|
42
|
+
permissions: {
|
|
43
|
+
mode: config.permissions.mode,
|
|
44
|
+
...config.permissions.timeout !== void 0 && {
|
|
45
|
+
timeout: config.permissions.timeout
|
|
36
46
|
}
|
|
37
47
|
},
|
|
38
48
|
elicitation: {
|
|
@@ -45,7 +55,7 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
|
|
|
45
55
|
logger
|
|
46
56
|
);
|
|
47
57
|
logger.debug("Approval system initialized");
|
|
48
|
-
const mcpManager = new MCPManager(logger);
|
|
58
|
+
const mcpManager = new MCPManager(logger, agentEventBus);
|
|
49
59
|
if (overrides?.mcpAuthProviderFactory) {
|
|
50
60
|
mcpManager.setAuthProviderFactory(overrides.mcpAuthProviderFactory);
|
|
51
61
|
}
|
|
@@ -55,81 +65,62 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
|
|
|
55
65
|
const searchService = new SearchService(storageManager.getDatabase(), logger);
|
|
56
66
|
const memoryManager = new MemoryManager(storageManager.getDatabase(), logger);
|
|
57
67
|
logger.debug("Memory manager initialized");
|
|
58
|
-
const
|
|
59
|
-
const
|
|
68
|
+
const hooks = overrides?.hooks ?? [];
|
|
69
|
+
const hookManager = new HookManager(
|
|
60
70
|
{
|
|
61
71
|
agentEventBus,
|
|
62
|
-
storageManager
|
|
63
|
-
configDir
|
|
72
|
+
storageManager
|
|
64
73
|
},
|
|
74
|
+
hooks,
|
|
65
75
|
logger
|
|
66
76
|
);
|
|
67
|
-
|
|
68
|
-
logger.
|
|
69
|
-
await pluginManager.initialize(config.plugins.custom, config.plugins.registry);
|
|
70
|
-
logger.info("Plugin manager initialized");
|
|
77
|
+
await hookManager.initialize();
|
|
78
|
+
logger.info("Hook manager initialized");
|
|
71
79
|
const resourceManager = new ResourceManager(
|
|
72
80
|
mcpManager,
|
|
73
81
|
{
|
|
74
|
-
|
|
82
|
+
resourcesConfig: config.resources,
|
|
75
83
|
blobStore: storageManager.getBlobStore()
|
|
76
84
|
},
|
|
85
|
+
agentEventBus,
|
|
77
86
|
logger
|
|
78
87
|
);
|
|
79
88
|
await resourceManager.initialize();
|
|
80
89
|
const allowedToolsProvider = createAllowedToolsProvider(
|
|
81
90
|
{
|
|
82
|
-
type: config.
|
|
91
|
+
type: config.permissions.allowedToolsStorage,
|
|
83
92
|
storageManager
|
|
84
93
|
},
|
|
85
94
|
logger
|
|
86
95
|
);
|
|
87
|
-
const internalToolsServices = {
|
|
88
|
-
searchService,
|
|
89
|
-
resourceManager
|
|
90
|
-
};
|
|
91
96
|
const toolManager = overrides?.toolManager ?? overrides?.toolManagerFactory?.({
|
|
92
97
|
mcpManager,
|
|
93
98
|
approvalManager,
|
|
94
99
|
allowedToolsProvider,
|
|
95
|
-
approvalMode: config.
|
|
100
|
+
approvalMode: config.permissions.mode,
|
|
96
101
|
agentEventBus,
|
|
97
|
-
toolPolicies: config.
|
|
98
|
-
|
|
99
|
-
customToolsConfig: config.customTools,
|
|
100
|
-
internalToolsServices,
|
|
102
|
+
toolPolicies: config.permissions.toolPolicies,
|
|
103
|
+
tools: [],
|
|
101
104
|
logger
|
|
102
105
|
}) ?? new ToolManager(
|
|
103
106
|
mcpManager,
|
|
104
107
|
approvalManager,
|
|
105
108
|
allowedToolsProvider,
|
|
106
|
-
config.
|
|
109
|
+
config.permissions.mode,
|
|
107
110
|
agentEventBus,
|
|
108
|
-
config.
|
|
109
|
-
|
|
110
|
-
internalToolsServices,
|
|
111
|
-
internalToolsConfig: config.internalTools,
|
|
112
|
-
customToolsConfig: config.customTools
|
|
113
|
-
},
|
|
111
|
+
config.permissions.toolPolicies,
|
|
112
|
+
[],
|
|
114
113
|
logger
|
|
115
114
|
);
|
|
115
|
+
toolManager.setWorkspaceManager(workspaceManager);
|
|
116
116
|
const mcpServerCount = Object.keys(config.mcpServers).length;
|
|
117
117
|
if (mcpServerCount === 0) {
|
|
118
118
|
logger.info("Agent initialized without MCP servers - only built-in capabilities available");
|
|
119
119
|
} else {
|
|
120
120
|
logger.debug(`MCPManager initialized with ${mcpServerCount} MCP server(s)`);
|
|
121
121
|
}
|
|
122
|
-
if (config.internalTools.length === 0) {
|
|
123
|
-
logger.info("No internal tools enabled by configuration");
|
|
124
|
-
} else {
|
|
125
|
-
logger.info(`Internal tools enabled: ${config.internalTools.join(", ")}`);
|
|
126
|
-
}
|
|
127
|
-
logger.debug(
|
|
128
|
-
`[ServiceInitializer] Creating SystemPromptManager with configPath: ${configPath} \u2192 configDir: ${configDir}`
|
|
129
|
-
);
|
|
130
122
|
const systemPromptManager = new SystemPromptManager(
|
|
131
123
|
config.systemPrompt,
|
|
132
|
-
configDir,
|
|
133
124
|
memoryManager,
|
|
134
125
|
config.memories,
|
|
135
126
|
logger
|
|
@@ -146,10 +137,13 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
|
|
|
146
137
|
// Add storage manager to session services
|
|
147
138
|
resourceManager,
|
|
148
139
|
// Add resource manager for blob storage
|
|
149
|
-
|
|
150
|
-
// Add
|
|
151
|
-
mcpManager
|
|
140
|
+
hookManager,
|
|
141
|
+
// Add hook manager for hook execution
|
|
142
|
+
mcpManager,
|
|
152
143
|
// Add MCP manager for ChatSession
|
|
144
|
+
compactionStrategy: compactionStrategy ?? null,
|
|
145
|
+
workspaceManager
|
|
146
|
+
// Workspace context propagation
|
|
153
147
|
},
|
|
154
148
|
{
|
|
155
149
|
maxSessions: config.sessions?.maxSessions,
|
|
@@ -162,8 +156,8 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
|
|
|
162
156
|
);
|
|
163
157
|
await sessionManager.init();
|
|
164
158
|
logger.debug("Session manager initialized with storage support");
|
|
165
|
-
toolManager.
|
|
166
|
-
logger.debug("
|
|
159
|
+
toolManager.setHookSupport(hookManager, sessionManager, stateManager);
|
|
160
|
+
logger.debug("Hook support connected to ToolManager");
|
|
167
161
|
return {
|
|
168
162
|
mcpManager,
|
|
169
163
|
toolManager,
|
|
@@ -171,12 +165,13 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
|
|
|
171
165
|
agentEventBus,
|
|
172
166
|
stateManager,
|
|
173
167
|
sessionManager,
|
|
168
|
+
workspaceManager,
|
|
174
169
|
searchService,
|
|
175
170
|
storageManager,
|
|
176
171
|
resourceManager,
|
|
177
172
|
approvalManager,
|
|
178
173
|
memoryManager,
|
|
179
|
-
|
|
174
|
+
hookManager
|
|
180
175
|
};
|
|
181
176
|
}
|
|
182
177
|
export {
|
|
@@ -16,16 +16,15 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
21
|
-
|
|
22
|
-
redisCacheProvider: () => import_redis.redisCacheProvider
|
|
19
|
+
var error_codes_exports = {};
|
|
20
|
+
__export(error_codes_exports, {
|
|
21
|
+
WorkspaceErrorCodes: () => WorkspaceErrorCodes
|
|
23
22
|
});
|
|
24
|
-
module.exports = __toCommonJS(
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
module.exports = __toCommonJS(error_codes_exports);
|
|
24
|
+
const WorkspaceErrorCodes = {
|
|
25
|
+
PATH_REQUIRED: "workspace/path_required"
|
|
26
|
+
};
|
|
27
27
|
// Annotate the CommonJS export names for ESM import in node:
|
|
28
28
|
0 && (module.exports = {
|
|
29
|
-
|
|
30
|
-
redisCacheProvider
|
|
29
|
+
WorkspaceErrorCodes
|
|
31
30
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../src/workspace/error-codes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB;;CAEtB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAC"}
|
|
@@ -16,23 +16,29 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
21
|
-
|
|
19
|
+
var errors_exports = {};
|
|
20
|
+
__export(errors_exports, {
|
|
21
|
+
WorkspaceError: () => WorkspaceError
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
23
|
+
module.exports = __toCommonJS(errors_exports);
|
|
24
|
+
var import_DextoValidationError = require("../errors/DextoValidationError.js");
|
|
25
|
+
var import_types = require("../errors/types.js");
|
|
26
|
+
var import_error_codes = require("./error-codes.js");
|
|
27
|
+
class WorkspaceError {
|
|
28
|
+
static pathRequired() {
|
|
29
|
+
return new import_DextoValidationError.DextoValidationError([
|
|
30
|
+
{
|
|
31
|
+
code: import_error_codes.WorkspaceErrorCodes.PATH_REQUIRED,
|
|
32
|
+
message: "Workspace path is required",
|
|
33
|
+
scope: "workspace",
|
|
34
|
+
type: import_types.ErrorType.USER,
|
|
35
|
+
severity: "error",
|
|
36
|
+
path: ["path"]
|
|
37
|
+
}
|
|
38
|
+
]);
|
|
30
39
|
}
|
|
31
|
-
const providerName = provider.metadata?.displayName || validatedConfig.type;
|
|
32
|
-
logger.info(`Using ${providerName} blob store`);
|
|
33
|
-
return provider.create(validatedConfig, logger);
|
|
34
40
|
}
|
|
35
41
|
// Annotate the CommonJS export names for ESM import in node:
|
|
36
42
|
0 && (module.exports = {
|
|
37
|
-
|
|
43
|
+
WorkspaceError
|
|
38
44
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/workspace/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAIzE,qBAAa,cAAc;IACvB,MAAM,CAAC,YAAY,IAAI,oBAAoB;CAY9C"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import "../chunk-PTJYTZNU.js";
|
|
2
|
+
import { DextoValidationError } from "../errors/DextoValidationError.js";
|
|
3
|
+
import { ErrorType } from "../errors/types.js";
|
|
4
|
+
import { WorkspaceErrorCodes } from "./error-codes.js";
|
|
5
|
+
class WorkspaceError {
|
|
6
|
+
static pathRequired() {
|
|
7
|
+
return new DextoValidationError([
|
|
8
|
+
{
|
|
9
|
+
code: WorkspaceErrorCodes.PATH_REQUIRED,
|
|
10
|
+
message: "Workspace path is required",
|
|
11
|
+
scope: "workspace",
|
|
12
|
+
type: ErrorType.USER,
|
|
13
|
+
severity: "error",
|
|
14
|
+
path: ["path"]
|
|
15
|
+
}
|
|
16
|
+
]);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export {
|
|
20
|
+
WorkspaceError
|
|
21
|
+
};
|
|
@@ -16,17 +16,19 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
var workspace_exports = {};
|
|
20
|
+
__export(workspace_exports, {
|
|
21
|
+
WorkspaceError: () => import_errors.WorkspaceError,
|
|
22
|
+
WorkspaceErrorCodes: () => import_error_codes.WorkspaceErrorCodes,
|
|
23
|
+
WorkspaceManager: () => import_manager.WorkspaceManager
|
|
24
24
|
});
|
|
25
|
-
module.exports = __toCommonJS(
|
|
26
|
-
var
|
|
25
|
+
module.exports = __toCommonJS(workspace_exports);
|
|
26
|
+
var import_manager = require("./manager.js");
|
|
27
|
+
var import_errors = require("./errors.js");
|
|
28
|
+
var import_error_codes = require("./error-codes.js");
|
|
27
29
|
// Annotate the CommonJS export names for ESM import in node:
|
|
28
30
|
0 && (module.exports = {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
31
|
+
WorkspaceError,
|
|
32
|
+
WorkspaceErrorCodes,
|
|
33
|
+
WorkspaceManager
|
|
32
34
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workspace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var manager_exports = {};
|
|
20
|
+
__export(manager_exports, {
|
|
21
|
+
WorkspaceManager: () => WorkspaceManager
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(manager_exports);
|
|
24
|
+
var import_crypto = require("crypto");
|
|
25
|
+
var import_types = require("../logger/v2/types.js");
|
|
26
|
+
var import_errors = require("./errors.js");
|
|
27
|
+
const WORKSPACE_KEY_PREFIX = "workspace:item:";
|
|
28
|
+
const WORKSPACE_CURRENT_KEY = "workspace:current";
|
|
29
|
+
class WorkspaceManager {
|
|
30
|
+
constructor(database, agentEventBus, logger) {
|
|
31
|
+
this.database = database;
|
|
32
|
+
this.agentEventBus = agentEventBus;
|
|
33
|
+
this.logger = logger.createChild(import_types.DextoLogComponent.AGENT);
|
|
34
|
+
this.logger.debug("WorkspaceManager initialized");
|
|
35
|
+
}
|
|
36
|
+
logger;
|
|
37
|
+
currentWorkspace;
|
|
38
|
+
async setWorkspace(input) {
|
|
39
|
+
const path = (input.path || "").trim();
|
|
40
|
+
if (!path) {
|
|
41
|
+
throw import_errors.WorkspaceError.pathRequired();
|
|
42
|
+
}
|
|
43
|
+
const now = Date.now();
|
|
44
|
+
const existing = await this.findByPath(path);
|
|
45
|
+
const resolvedName = input.name ?? existing?.name;
|
|
46
|
+
const workspace = existing ? {
|
|
47
|
+
...existing,
|
|
48
|
+
...resolvedName !== void 0 ? { name: resolvedName } : {},
|
|
49
|
+
lastActiveAt: now
|
|
50
|
+
} : {
|
|
51
|
+
id: (0, import_crypto.randomUUID)(),
|
|
52
|
+
path,
|
|
53
|
+
...resolvedName !== void 0 ? { name: resolvedName } : {},
|
|
54
|
+
createdAt: now,
|
|
55
|
+
lastActiveAt: now
|
|
56
|
+
};
|
|
57
|
+
await this.database.set(this.toKey(workspace.id), workspace);
|
|
58
|
+
await this.database.set(WORKSPACE_CURRENT_KEY, workspace.id);
|
|
59
|
+
this.currentWorkspace = workspace;
|
|
60
|
+
this.agentEventBus.emit("workspace:changed", { workspace });
|
|
61
|
+
this.logger.info(`Workspace set: ${workspace.id}`);
|
|
62
|
+
return workspace;
|
|
63
|
+
}
|
|
64
|
+
async clearWorkspace() {
|
|
65
|
+
await this.database.delete(WORKSPACE_CURRENT_KEY);
|
|
66
|
+
this.currentWorkspace = void 0;
|
|
67
|
+
this.agentEventBus.emit("workspace:changed", { workspace: null });
|
|
68
|
+
this.logger.info("Workspace cleared");
|
|
69
|
+
}
|
|
70
|
+
async getWorkspace() {
|
|
71
|
+
if (this.currentWorkspace) {
|
|
72
|
+
return this.currentWorkspace;
|
|
73
|
+
}
|
|
74
|
+
const currentId = await this.database.get(WORKSPACE_CURRENT_KEY);
|
|
75
|
+
if (!currentId) {
|
|
76
|
+
return void 0;
|
|
77
|
+
}
|
|
78
|
+
const workspace = await this.database.get(this.toKey(currentId));
|
|
79
|
+
if (!workspace) {
|
|
80
|
+
return void 0;
|
|
81
|
+
}
|
|
82
|
+
this.currentWorkspace = workspace;
|
|
83
|
+
return workspace;
|
|
84
|
+
}
|
|
85
|
+
async listWorkspaces() {
|
|
86
|
+
const keys = await this.database.list(WORKSPACE_KEY_PREFIX);
|
|
87
|
+
const workspaces = [];
|
|
88
|
+
for (const key of keys) {
|
|
89
|
+
const workspace = await this.database.get(key);
|
|
90
|
+
if (workspace) {
|
|
91
|
+
workspaces.push(workspace);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return workspaces.sort((a, b) => (b.lastActiveAt ?? 0) - (a.lastActiveAt ?? 0));
|
|
95
|
+
}
|
|
96
|
+
async findByPath(path) {
|
|
97
|
+
const keys = await this.database.list(WORKSPACE_KEY_PREFIX);
|
|
98
|
+
for (const key of keys) {
|
|
99
|
+
const workspace = await this.database.get(key);
|
|
100
|
+
if (workspace?.path === path) {
|
|
101
|
+
return workspace;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
return void 0;
|
|
105
|
+
}
|
|
106
|
+
toKey(id) {
|
|
107
|
+
return `${WORKSPACE_KEY_PREFIX}${id}`;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
111
|
+
0 && (module.exports = {
|
|
112
|
+
WorkspaceManager
|
|
113
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Database } from '../storage/database/types.js';
|
|
2
|
+
import type { AgentEventBus } from '../events/index.js';
|
|
3
|
+
import type { Logger } from '../logger/v2/types.js';
|
|
4
|
+
import type { SetWorkspaceInput, WorkspaceContext } from './types.js';
|
|
5
|
+
export declare class WorkspaceManager {
|
|
6
|
+
private database;
|
|
7
|
+
private agentEventBus;
|
|
8
|
+
private logger;
|
|
9
|
+
private currentWorkspace;
|
|
10
|
+
constructor(database: Database, agentEventBus: AgentEventBus, logger: Logger);
|
|
11
|
+
setWorkspace(input: SetWorkspaceInput): Promise<WorkspaceContext>;
|
|
12
|
+
clearWorkspace(): Promise<void>;
|
|
13
|
+
getWorkspace(): Promise<WorkspaceContext | undefined>;
|
|
14
|
+
listWorkspaces(): Promise<WorkspaceContext[]>;
|
|
15
|
+
private findByPath;
|
|
16
|
+
private toKey;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/workspace/manager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAMtE,qBAAa,gBAAgB;IAKrB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,aAAa;IALzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAA+B;gBAG3C,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,aAAa,EACpC,MAAM,EAAE,MAAM;IAMZ,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAmCjE,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAO/B,YAAY,IAAI,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAmBrD,cAAc,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAcrC,UAAU;IAWxB,OAAO,CAAC,KAAK;CAGhB"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import "../chunk-PTJYTZNU.js";
|
|
2
|
+
import { randomUUID } from "crypto";
|
|
3
|
+
import { DextoLogComponent } from "../logger/v2/types.js";
|
|
4
|
+
import { WorkspaceError } from "./errors.js";
|
|
5
|
+
const WORKSPACE_KEY_PREFIX = "workspace:item:";
|
|
6
|
+
const WORKSPACE_CURRENT_KEY = "workspace:current";
|
|
7
|
+
class WorkspaceManager {
|
|
8
|
+
constructor(database, agentEventBus, logger) {
|
|
9
|
+
this.database = database;
|
|
10
|
+
this.agentEventBus = agentEventBus;
|
|
11
|
+
this.logger = logger.createChild(DextoLogComponent.AGENT);
|
|
12
|
+
this.logger.debug("WorkspaceManager initialized");
|
|
13
|
+
}
|
|
14
|
+
logger;
|
|
15
|
+
currentWorkspace;
|
|
16
|
+
async setWorkspace(input) {
|
|
17
|
+
const path = (input.path || "").trim();
|
|
18
|
+
if (!path) {
|
|
19
|
+
throw WorkspaceError.pathRequired();
|
|
20
|
+
}
|
|
21
|
+
const now = Date.now();
|
|
22
|
+
const existing = await this.findByPath(path);
|
|
23
|
+
const resolvedName = input.name ?? existing?.name;
|
|
24
|
+
const workspace = existing ? {
|
|
25
|
+
...existing,
|
|
26
|
+
...resolvedName !== void 0 ? { name: resolvedName } : {},
|
|
27
|
+
lastActiveAt: now
|
|
28
|
+
} : {
|
|
29
|
+
id: randomUUID(),
|
|
30
|
+
path,
|
|
31
|
+
...resolvedName !== void 0 ? { name: resolvedName } : {},
|
|
32
|
+
createdAt: now,
|
|
33
|
+
lastActiveAt: now
|
|
34
|
+
};
|
|
35
|
+
await this.database.set(this.toKey(workspace.id), workspace);
|
|
36
|
+
await this.database.set(WORKSPACE_CURRENT_KEY, workspace.id);
|
|
37
|
+
this.currentWorkspace = workspace;
|
|
38
|
+
this.agentEventBus.emit("workspace:changed", { workspace });
|
|
39
|
+
this.logger.info(`Workspace set: ${workspace.id}`);
|
|
40
|
+
return workspace;
|
|
41
|
+
}
|
|
42
|
+
async clearWorkspace() {
|
|
43
|
+
await this.database.delete(WORKSPACE_CURRENT_KEY);
|
|
44
|
+
this.currentWorkspace = void 0;
|
|
45
|
+
this.agentEventBus.emit("workspace:changed", { workspace: null });
|
|
46
|
+
this.logger.info("Workspace cleared");
|
|
47
|
+
}
|
|
48
|
+
async getWorkspace() {
|
|
49
|
+
if (this.currentWorkspace) {
|
|
50
|
+
return this.currentWorkspace;
|
|
51
|
+
}
|
|
52
|
+
const currentId = await this.database.get(WORKSPACE_CURRENT_KEY);
|
|
53
|
+
if (!currentId) {
|
|
54
|
+
return void 0;
|
|
55
|
+
}
|
|
56
|
+
const workspace = await this.database.get(this.toKey(currentId));
|
|
57
|
+
if (!workspace) {
|
|
58
|
+
return void 0;
|
|
59
|
+
}
|
|
60
|
+
this.currentWorkspace = workspace;
|
|
61
|
+
return workspace;
|
|
62
|
+
}
|
|
63
|
+
async listWorkspaces() {
|
|
64
|
+
const keys = await this.database.list(WORKSPACE_KEY_PREFIX);
|
|
65
|
+
const workspaces = [];
|
|
66
|
+
for (const key of keys) {
|
|
67
|
+
const workspace = await this.database.get(key);
|
|
68
|
+
if (workspace) {
|
|
69
|
+
workspaces.push(workspace);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return workspaces.sort((a, b) => (b.lastActiveAt ?? 0) - (a.lastActiveAt ?? 0));
|
|
73
|
+
}
|
|
74
|
+
async findByPath(path) {
|
|
75
|
+
const keys = await this.database.list(WORKSPACE_KEY_PREFIX);
|
|
76
|
+
for (const key of keys) {
|
|
77
|
+
const workspace = await this.database.get(key);
|
|
78
|
+
if (workspace?.path === path) {
|
|
79
|
+
return workspace;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return void 0;
|
|
83
|
+
}
|
|
84
|
+
toKey(id) {
|
|
85
|
+
return `${WORKSPACE_KEY_PREFIX}${id}`;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
export {
|
|
89
|
+
WorkspaceManager
|
|
90
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface WorkspaceContext {
|
|
2
|
+
id: string;
|
|
3
|
+
/** Absolute or canonicalized workspace root path */
|
|
4
|
+
path: string;
|
|
5
|
+
/** Optional display name */
|
|
6
|
+
name?: string;
|
|
7
|
+
createdAt: number;
|
|
8
|
+
lastActiveAt: number;
|
|
9
|
+
}
|
|
10
|
+
export interface SetWorkspaceInput {
|
|
11
|
+
path: string;
|
|
12
|
+
name?: string;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/workspace/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dexto/core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
},
|
|
124
124
|
"sideEffects": false,
|
|
125
125
|
"scripts": {
|
|
126
|
-
"build": "cross-env NODE_OPTIONS='--max-old-space-size=4096' tsup && cross-env NODE_OPTIONS='--max-old-space-size=4096' tsc -
|
|
126
|
+
"build": "cross-env NODE_OPTIONS='--max-old-space-size=4096' tsup && cross-env NODE_OPTIONS='--max-old-space-size=4096' tsc -b tsconfig.json --force --emitDeclarationOnly",
|
|
127
127
|
"dev": "tsup --watch",
|
|
128
128
|
"typecheck": "tsc -p tsconfig.typecheck.json --noEmit",
|
|
129
129
|
"lint": "eslint . --ext .ts"
|