@machina.ai/cell-cli-core 1.13.0-rc5 → 1.16.0-rc2
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/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/package.json +1 -1
- package/dist/src/agents/codebase-investigator.test.d.ts +6 -0
- package/dist/src/agents/codebase-investigator.test.js +35 -0
- package/dist/src/agents/codebase-investigator.test.js.map +1 -0
- package/dist/src/agents/executor.d.ts +3 -0
- package/dist/src/agents/executor.js +21 -0
- package/dist/src/agents/executor.js.map +1 -1
- package/dist/src/agents/executor.test.js +358 -3
- package/dist/src/agents/executor.test.js.map +1 -1
- package/dist/src/code_assist/codeAssist.test.d.ts +6 -0
- package/dist/src/code_assist/codeAssist.test.js +99 -0
- package/dist/src/code_assist/codeAssist.test.js.map +1 -0
- package/dist/src/code_assist/experiments/client_metadata.js +2 -1
- package/dist/src/code_assist/experiments/client_metadata.js.map +1 -1
- package/dist/src/code_assist/experiments/client_metadata.test.d.ts +6 -0
- package/dist/src/code_assist/experiments/client_metadata.test.js +99 -0
- package/dist/src/code_assist/experiments/client_metadata.test.js.map +1 -0
- package/dist/src/code_assist/experiments/experiments.js +2 -2
- package/dist/src/code_assist/experiments/experiments.js.map +1 -1
- package/dist/src/code_assist/experiments/experiments.test.d.ts +6 -0
- package/dist/src/code_assist/experiments/experiments.test.js +92 -0
- package/dist/src/code_assist/experiments/experiments.test.js.map +1 -0
- package/dist/src/code_assist/experiments/flagNames.d.ts +13 -0
- package/dist/src/code_assist/experiments/flagNames.js +13 -0
- package/dist/src/code_assist/experiments/flagNames.js.map +1 -0
- package/dist/src/code_assist/experiments/types.d.ts +1 -1
- package/dist/src/code_assist/oauth-credential-storage.test.js +49 -0
- package/dist/src/code_assist/oauth-credential-storage.test.js.map +1 -1
- package/dist/src/code_assist/server.js +5 -8
- package/dist/src/code_assist/server.js.map +1 -1
- package/dist/src/code_assist/server.test.js +109 -28
- package/dist/src/code_assist/server.test.js.map +1 -1
- package/dist/src/config/config.d.ts +34 -2
- package/dist/src/config/config.js +147 -26
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +436 -19
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/defaultModelConfigs.d.ts +7 -0
- package/dist/src/config/defaultModelConfigs.js +158 -0
- package/dist/src/config/defaultModelConfigs.js.map +1 -0
- package/dist/src/config/models.d.ts +22 -1
- package/dist/src/config/models.js +49 -6
- package/dist/src/config/models.js.map +1 -1
- package/dist/src/config/models.test.js +71 -10
- package/dist/src/config/models.test.js.map +1 -1
- package/dist/src/confirmation-bus/message-bus.d.ts +1 -1
- package/dist/src/confirmation-bus/message-bus.js +2 -2
- package/dist/src/confirmation-bus/message-bus.js.map +1 -1
- package/dist/src/confirmation-bus/message-bus.test.js +30 -24
- package/dist/src/confirmation-bus/message-bus.test.js.map +1 -1
- package/dist/src/confirmation-bus/types.d.ts +1 -0
- package/dist/src/core/baseLlmClient.d.ts +4 -8
- package/dist/src/core/baseLlmClient.js +3 -8
- package/dist/src/core/baseLlmClient.js.map +1 -1
- package/dist/src/core/baseLlmClient.test.js +22 -27
- package/dist/src/core/baseLlmClient.test.js.map +1 -1
- package/dist/src/core/client.d.ts +6 -5
- package/dist/src/core/client.js +33 -33
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/client.test.js +40 -22
- package/dist/src/core/client.test.js.map +1 -1
- package/dist/src/core/coreToolScheduler.js +7 -1
- package/dist/src/core/coreToolScheduler.js.map +1 -1
- package/dist/src/core/coreToolScheduler.test.js +151 -357
- package/dist/src/core/coreToolScheduler.test.js.map +1 -1
- package/dist/src/core/geminiChat.d.ts +6 -4
- package/dist/src/core/geminiChat.js +106 -29
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/core/geminiChat.test.js +317 -16
- package/dist/src/core/geminiChat.test.js.map +1 -1
- package/dist/src/core/logger.d.ts +7 -2
- package/dist/src/core/logger.js +15 -9
- package/dist/src/core/logger.js.map +1 -1
- package/dist/src/core/logger.test.js +31 -16
- package/dist/src/core/logger.test.js.map +1 -1
- package/dist/src/core/loggingContentGenerator.test.d.ts +6 -0
- package/dist/src/core/loggingContentGenerator.test.js +180 -0
- package/dist/src/core/loggingContentGenerator.test.js.map +1 -0
- package/dist/src/core/nonInteractiveToolExecutor.test.js +1 -0
- package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
- package/dist/src/core/prompts.js +8 -11
- package/dist/src/core/prompts.js.map +1 -1
- package/dist/src/core/tokenLimits.test.d.ts +6 -0
- package/dist/src/core/tokenLimits.test.js +26 -0
- package/dist/src/core/tokenLimits.test.js.map +1 -0
- package/dist/src/fallback/handler.js +52 -7
- package/dist/src/fallback/handler.js.map +1 -1
- package/dist/src/fallback/handler.test.js +69 -16
- package/dist/src/fallback/handler.test.js.map +1 -1
- package/dist/src/fallback/types.d.ts +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/hooks/hookAggregator.d.ts +68 -0
- package/dist/src/hooks/hookAggregator.js +262 -0
- package/dist/src/hooks/hookAggregator.js.map +1 -0
- package/dist/src/hooks/hookAggregator.test.d.ts +6 -0
- package/dist/src/hooks/hookAggregator.test.js +387 -0
- package/dist/src/hooks/hookAggregator.test.js.map +1 -0
- package/dist/src/hooks/hookRunner.d.ts +42 -0
- package/dist/src/hooks/hookRunner.js +272 -0
- package/dist/src/hooks/hookRunner.js.map +1 -0
- package/dist/src/hooks/hookRunner.test.d.ts +6 -0
- package/dist/src/hooks/hookRunner.test.js +468 -0
- package/dist/src/hooks/hookRunner.test.js.map +1 -0
- package/dist/src/hooks/hookTranslator.d.ts +3 -3
- package/dist/src/hooks/types.js +1 -1
- package/dist/src/hooks/types.js.map +1 -1
- package/dist/src/hooks/types.test.js +280 -2
- package/dist/src/hooks/types.test.js.map +1 -1
- package/dist/src/ide/detect-ide.d.ts +4 -0
- package/dist/src/ide/detect-ide.js +6 -1
- package/dist/src/ide/detect-ide.js.map +1 -1
- package/dist/src/ide/detect-ide.test.js +5 -0
- package/dist/src/ide/detect-ide.test.js.map +1 -1
- package/dist/src/ide/ide-client.d.ts +3 -1
- package/dist/src/ide/ide-client.js +66 -59
- package/dist/src/ide/ide-client.js.map +1 -1
- package/dist/src/ide/ide-client.test.js +159 -0
- package/dist/src/ide/ide-client.test.js.map +1 -1
- package/dist/src/ide/ide-installer.js +71 -21
- package/dist/src/ide/ide-installer.js.map +1 -1
- package/dist/src/ide/ide-installer.test.js +42 -1
- package/dist/src/ide/ide-installer.test.js.map +1 -1
- package/dist/src/ide/process-utils.js +16 -0
- package/dist/src/ide/process-utils.js.map +1 -1
- package/dist/src/ide/process-utils.test.js +3 -3
- package/dist/src/ide/process-utils.test.js.map +1 -1
- package/dist/src/ide/types.d.ts +1 -1
- package/dist/src/ide/types.js +1 -1
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.js +2 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/google-auth-provider.js +1 -1
- package/dist/src/mcp/google-auth-provider.js.map +1 -1
- package/dist/src/mcp/oauth-provider.js +2 -2
- package/dist/src/mcp/oauth-provider.js.map +1 -1
- package/dist/src/mcp/oauth-provider.test.js +177 -0
- package/dist/src/mcp/oauth-provider.test.js.map +1 -1
- package/dist/src/mcp/sa-impersonation-provider.js +1 -1
- package/dist/src/mcp/sa-impersonation-provider.js.map +1 -1
- package/dist/src/policy/config.js +3 -1
- package/dist/src/policy/config.js.map +1 -1
- package/dist/src/policy/config.test.js +135 -1
- package/dist/src/policy/config.test.js.map +1 -1
- package/dist/src/policy/policies/discovered.toml +8 -0
- package/dist/src/policy/policies/write.toml +10 -0
- package/dist/src/policy/policy-engine.d.ts +12 -3
- package/dist/src/policy/policy-engine.js +71 -9
- package/dist/src/policy/policy-engine.js.map +1 -1
- package/dist/src/policy/policy-engine.test.js +460 -76
- package/dist/src/policy/policy-engine.test.js.map +1 -1
- package/dist/src/policy/toml-loader.d.ts +2 -1
- package/dist/src/policy/toml-loader.js +103 -6
- package/dist/src/policy/toml-loader.js.map +1 -1
- package/dist/src/policy/toml-loader.test.js +222 -368
- package/dist/src/policy/toml-loader.test.js.map +1 -1
- package/dist/src/policy/types.d.ts +65 -0
- package/dist/src/policy/types.js +4 -0
- package/dist/src/policy/types.js.map +1 -1
- package/dist/src/prompts/mcp-prompts.test.d.ts +6 -0
- package/dist/src/prompts/mcp-prompts.test.js +40 -0
- package/dist/src/prompts/mcp-prompts.test.js.map +1 -0
- package/dist/src/prompts/prompt-registry.test.d.ts +6 -0
- package/dist/src/prompts/prompt-registry.test.js +111 -0
- package/dist/src/prompts/prompt-registry.test.js.map +1 -0
- package/dist/src/routing/modelRouterService.js +15 -0
- package/dist/src/routing/modelRouterService.js.map +1 -1
- package/dist/src/routing/modelRouterService.test.js +62 -0
- package/dist/src/routing/modelRouterService.test.js.map +1 -1
- package/dist/src/routing/strategies/classifierStrategy.d.ts +1 -1
- package/dist/src/routing/strategies/classifierStrategy.js +6 -14
- package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
- package/dist/src/routing/strategies/classifierStrategy.test.js +13 -10
- package/dist/src/routing/strategies/classifierStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.js +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.test.js +4 -0
- package/dist/src/routing/strategies/fallbackStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/overrideStrategy.js +2 -2
- package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
- package/dist/src/routing/strategies/overrideStrategy.test.js +3 -0
- package/dist/src/routing/strategies/overrideStrategy.test.js.map +1 -1
- package/dist/src/safety/built-in.d.ts +21 -0
- package/dist/src/safety/built-in.js +106 -0
- package/dist/src/safety/built-in.js.map +1 -0
- package/dist/src/safety/built-in.test.d.ts +6 -0
- package/dist/src/safety/built-in.test.js +199 -0
- package/dist/src/safety/built-in.test.js.map +1 -0
- package/dist/src/safety/checker-runner.d.ts +48 -0
- package/dist/src/safety/checker-runner.js +208 -0
- package/dist/src/safety/checker-runner.js.map +1 -0
- package/dist/src/safety/checker-runner.test.d.ts +6 -0
- package/dist/src/safety/checker-runner.test.js +238 -0
- package/dist/src/safety/checker-runner.test.js.map +1 -0
- package/dist/src/safety/context-builder.d.ts +23 -0
- package/dist/src/safety/context-builder.js +47 -0
- package/dist/src/safety/context-builder.js.map +1 -0
- package/dist/src/safety/context-builder.test.d.ts +6 -0
- package/dist/src/safety/context-builder.test.js +49 -0
- package/dist/src/safety/context-builder.test.js.map +1 -0
- package/dist/src/safety/protocol.d.ts +88 -0
- package/dist/src/safety/protocol.js +15 -0
- package/dist/src/safety/protocol.js.map +1 -0
- package/dist/src/safety/registry.d.ts +26 -0
- package/dist/src/safety/registry.js +65 -0
- package/dist/src/safety/registry.js.map +1 -0
- package/dist/src/safety/registry.test.d.ts +6 -0
- package/dist/src/safety/registry.test.js +31 -0
- package/dist/src/safety/registry.test.js.map +1 -0
- package/dist/src/services/chatCompressionService.test.js +1 -0
- package/dist/src/services/chatCompressionService.test.js.map +1 -1
- package/dist/src/services/gitService.js +1 -1
- package/dist/src/services/gitService.js.map +1 -1
- package/dist/src/services/gitService.test.js +1 -1
- package/dist/src/services/gitService.test.js.map +1 -1
- package/dist/src/services/loopDetectionService.d.ts +3 -0
- package/dist/src/services/loopDetectionService.js +81 -42
- package/dist/src/services/loopDetectionService.js.map +1 -1
- package/dist/src/services/loopDetectionService.test.js +101 -1
- package/dist/src/services/loopDetectionService.test.js.map +1 -1
- package/dist/src/services/modelConfig.golden.test.d.ts +6 -0
- package/dist/src/services/modelConfig.golden.test.js +42 -0
- package/dist/src/services/modelConfig.golden.test.js.map +1 -0
- package/dist/src/services/modelConfig.integration.test.d.ts +6 -0
- package/dist/src/services/modelConfig.integration.test.js +213 -0
- package/dist/src/services/modelConfig.integration.test.js.map +1 -0
- package/dist/src/services/modelConfigService.d.ts +46 -0
- package/dist/src/services/modelConfigService.js +146 -0
- package/dist/src/services/modelConfigService.js.map +1 -0
- package/dist/src/services/modelConfigService.test.d.ts +6 -0
- package/dist/src/services/modelConfigService.test.js +509 -0
- package/dist/src/services/modelConfigService.test.js.map +1 -0
- package/dist/src/services/test-data/resolved-aliases.golden.json +169 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +11 -9
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +174 -150
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.d.ts +1 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +76 -20
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +6 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +18 -5
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
- package/dist/src/telemetry/index.d.ts +2 -2
- package/dist/src/telemetry/index.js +2 -2
- package/dist/src/telemetry/index.js.map +1 -1
- package/dist/src/telemetry/loggers.d.ts +7 -7
- package/dist/src/telemetry/loggers.js +23 -23
- package/dist/src/telemetry/loggers.js.map +1 -1
- package/dist/src/telemetry/loggers.test.circular.js +0 -1
- package/dist/src/telemetry/loggers.test.circular.js.map +1 -1
- package/dist/src/telemetry/loggers.test.js +72 -18
- package/dist/src/telemetry/loggers.test.js.map +1 -1
- package/dist/src/telemetry/metrics.d.ts +8 -4
- package/dist/src/telemetry/metrics.js +10 -4
- package/dist/src/telemetry/metrics.js.map +1 -1
- package/dist/src/telemetry/metrics.test.js +42 -0
- package/dist/src/telemetry/metrics.test.js.map +1 -1
- package/dist/src/telemetry/telemetryAttributes.js +1 -0
- package/dist/src/telemetry/telemetryAttributes.js.map +1 -1
- package/dist/src/telemetry/types.d.ts +17 -11
- package/dist/src/telemetry/types.js +53 -28
- package/dist/src/telemetry/types.js.map +1 -1
- package/dist/src/tools/base-tool-invocation.test.d.ts +6 -0
- package/dist/src/tools/base-tool-invocation.test.js +85 -0
- package/dist/src/tools/base-tool-invocation.test.js.map +1 -0
- package/dist/src/tools/edit.d.ts +1 -1
- package/dist/src/tools/edit.js +31 -33
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/edit.test.js +31 -20
- package/dist/src/tools/edit.test.js.map +1 -1
- package/dist/src/tools/glob.d.ts +1 -1
- package/dist/src/tools/glob.js +7 -7
- package/dist/src/tools/glob.js.map +1 -1
- package/dist/src/tools/glob.test.js +20 -17
- package/dist/src/tools/glob.test.js.map +1 -1
- package/dist/src/tools/grep.d.ts +1 -1
- package/dist/src/tools/grep.js +9 -9
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/grep.test.js +15 -12
- package/dist/src/tools/grep.test.js.map +1 -1
- package/dist/src/tools/ls.d.ts +1 -1
- package/dist/src/tools/ls.js +14 -15
- package/dist/src/tools/ls.js.map +1 -1
- package/dist/src/tools/ls.test.js +32 -33
- package/dist/src/tools/ls.test.js.map +1 -1
- package/dist/src/tools/mcp-client.js +24 -52
- package/dist/src/tools/mcp-client.js.map +1 -1
- package/dist/src/tools/mcp-client.test.js +18 -0
- package/dist/src/tools/mcp-client.test.js.map +1 -1
- package/dist/src/tools/mcp-tool.d.ts +1 -0
- package/dist/src/tools/mcp-tool.js +5 -2
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/memoryTool.js +1 -1
- package/dist/src/tools/memoryTool.js.map +1 -1
- package/dist/src/tools/memoryTool.test.js +1 -1
- package/dist/src/tools/memoryTool.test.js.map +1 -1
- package/dist/src/tools/modifiable-tool.d.ts +5 -1
- package/dist/src/tools/modifiable-tool.js +34 -13
- package/dist/src/tools/modifiable-tool.js.map +1 -1
- package/dist/src/tools/modifiable-tool.test.js +56 -22
- package/dist/src/tools/modifiable-tool.test.js.map +1 -1
- package/dist/src/tools/read-file.d.ts +2 -2
- package/dist/src/tools/read-file.js +20 -24
- package/dist/src/tools/read-file.js.map +1 -1
- package/dist/src/tools/read-file.test.js +63 -51
- package/dist/src/tools/read-file.test.js.map +1 -1
- package/dist/src/tools/read-many-files.d.ts +2 -9
- package/dist/src/tools/read-many-files.js +10 -21
- package/dist/src/tools/read-many-files.js.map +1 -1
- package/dist/src/tools/read-many-files.test.js +37 -35
- package/dist/src/tools/read-many-files.test.js.map +1 -1
- package/dist/src/tools/ripGrep.d.ts +25 -8
- package/dist/src/tools/ripGrep.js +148 -176
- package/dist/src/tools/ripGrep.js.map +1 -1
- package/dist/src/tools/ripGrep.test.js +383 -58
- package/dist/src/tools/ripGrep.test.js.map +1 -1
- package/dist/src/tools/shell.d.ts +1 -1
- package/dist/src/tools/shell.js +17 -15
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/shell.test.js +66 -36
- package/dist/src/tools/shell.test.js.map +1 -1
- package/dist/src/tools/smart-edit.d.ts +6 -1
- package/dist/src/tools/smart-edit.js +18 -17
- package/dist/src/tools/smart-edit.js.map +1 -1
- package/dist/src/tools/smart-edit.test.js +49 -24
- package/dist/src/tools/smart-edit.test.js.map +1 -1
- package/dist/src/tools/tool-registry.d.ts +29 -4
- package/dist/src/tools/tool-registry.js +108 -29
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tool-registry.test.js +134 -4
- package/dist/src/tools/tool-registry.test.js.map +1 -1
- package/dist/src/tools/tools.d.ts +2 -1
- package/dist/src/tools/tools.js +5 -2
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/web-fetch.js +2 -4
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/web-fetch.test.js +11 -4
- package/dist/src/tools/web-fetch.test.js.map +1 -1
- package/dist/src/tools/web-search.js +1 -2
- package/dist/src/tools/web-search.js.map +1 -1
- package/dist/src/tools/web-search.test.js +11 -5
- package/dist/src/tools/web-search.test.js.map +1 -1
- package/dist/src/tools/write-file.js +31 -31
- package/dist/src/tools/write-file.js.map +1 -1
- package/dist/src/tools/write-file.test.js +24 -5
- package/dist/src/tools/write-file.test.js.map +1 -1
- package/dist/src/tools/write-todos.d.ts +29 -0
- package/dist/src/tools/write-todos.js +34 -1
- package/dist/src/tools/write-todos.js.map +1 -1
- package/dist/src/utils/editCorrector.js +4 -15
- package/dist/src/utils/editCorrector.js.map +1 -1
- package/dist/src/utils/editCorrector.test.js +16 -0
- package/dist/src/utils/editCorrector.test.js.map +1 -1
- package/dist/src/utils/editor.d.ts +3 -1
- package/dist/src/utils/editor.js +18 -1
- package/dist/src/utils/editor.js.map +1 -1
- package/dist/src/utils/editor.test.js +11 -0
- package/dist/src/utils/editor.test.js.map +1 -1
- package/dist/src/utils/environmentContext.js +3 -1
- package/dist/src/utils/environmentContext.js.map +1 -1
- package/dist/src/utils/environmentContext.test.js +6 -0
- package/dist/src/utils/environmentContext.test.js.map +1 -1
- package/dist/src/utils/events.d.ts +14 -11
- package/dist/src/utils/events.js +1 -14
- package/dist/src/utils/events.js.map +1 -1
- package/dist/src/utils/extensionLoader.d.ts +8 -0
- package/dist/src/utils/extensionLoader.js +61 -15
- package/dist/src/utils/extensionLoader.js.map +1 -1
- package/dist/src/utils/extensionLoader.test.js +83 -19
- package/dist/src/utils/extensionLoader.test.js.map +1 -1
- package/dist/src/utils/fileUtils.test.js +75 -60
- package/dist/src/utils/fileUtils.test.js.map +1 -1
- package/dist/src/utils/flashFallback.test.js +2 -2
- package/dist/src/utils/flashFallback.test.js.map +1 -1
- package/dist/src/utils/googleQuotaErrors.d.ts +2 -1
- package/dist/src/utils/googleQuotaErrors.js +20 -12
- package/dist/src/utils/googleQuotaErrors.js.map +1 -1
- package/dist/src/utils/httpErrors.d.ts +18 -0
- package/dist/src/utils/httpErrors.js +36 -0
- package/dist/src/utils/httpErrors.js.map +1 -0
- package/dist/src/utils/llm-edit-fixer.js +1 -2
- package/dist/src/utils/llm-edit-fixer.js.map +1 -1
- package/dist/src/utils/llm-edit-fixer.test.js +16 -1
- package/dist/src/utils/llm-edit-fixer.test.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.d.ts +8 -0
- package/dist/src/utils/memoryDiscovery.js +24 -0
- package/dist/src/utils/memoryDiscovery.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.test.js +43 -1
- package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
- package/dist/src/utils/nextSpeakerChecker.js +1 -2
- package/dist/src/utils/nextSpeakerChecker.js.map +1 -1
- package/dist/src/utils/nextSpeakerChecker.test.js +10 -4
- package/dist/src/utils/nextSpeakerChecker.test.js.map +1 -1
- package/dist/src/utils/pathReader.js +4 -4
- package/dist/src/utils/pathReader.js.map +1 -1
- package/dist/src/utils/pathReader.test.js +44 -1
- package/dist/src/utils/pathReader.test.js.map +1 -1
- package/dist/src/utils/paths.d.ts +1 -1
- package/dist/src/utils/paths.js +5 -3
- package/dist/src/utils/paths.js.map +1 -1
- package/dist/src/utils/retry.d.ts +0 -9
- package/dist/src/utils/retry.js +24 -28
- package/dist/src/utils/retry.js.map +1 -1
- package/dist/src/utils/retry.test.js +51 -0
- package/dist/src/utils/retry.test.js.map +1 -1
- package/dist/src/utils/shell-utils.js +5 -3
- package/dist/src/utils/shell-utils.js.map +1 -1
- package/dist/src/utils/shell-utils.test.js +9 -9
- package/dist/src/utils/shell-utils.test.js.map +1 -1
- package/dist/src/utils/summarizer.d.ts +4 -2
- package/dist/src/utils/summarizer.js +6 -8
- package/dist/src/utils/summarizer.js.map +1 -1
- package/dist/src/utils/summarizer.test.js +32 -11
- package/dist/src/utils/summarizer.test.js.map +1 -1
- package/dist/src/utils/workspaceContext.d.ts +4 -3
- package/dist/src/utils/workspaceContext.js +10 -11
- package/dist/src/utils/workspaceContext.js.map +1 -1
- package/dist/src/utils/workspaceContext.test.js +1 -1
- package/dist/src/utils/workspaceContext.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -12,20 +12,21 @@ import { ToolErrorType } from './tool-error.js';
|
|
|
12
12
|
import { safeJsonStringify } from '../utils/safeJsonStringify.js';
|
|
13
13
|
import { debugLogger } from '../utils/debugLogger.js';
|
|
14
14
|
import { coreEvents } from '../utils/events.js';
|
|
15
|
+
export const DISCOVERED_TOOL_PREFIX = 'discovered_tool_';
|
|
15
16
|
class DiscoveredToolInvocation extends BaseToolInvocation {
|
|
16
17
|
config;
|
|
17
|
-
|
|
18
|
-
constructor(config,
|
|
19
|
-
super(params);
|
|
18
|
+
originalToolName;
|
|
19
|
+
constructor(config, originalToolName, prefixedToolName, params, messageBus) {
|
|
20
|
+
super(params, messageBus, prefixedToolName);
|
|
20
21
|
this.config = config;
|
|
21
|
-
this.
|
|
22
|
+
this.originalToolName = originalToolName;
|
|
22
23
|
}
|
|
23
24
|
getDescription() {
|
|
24
25
|
return safeJsonStringify(this.params);
|
|
25
26
|
}
|
|
26
27
|
async execute(_signal, _updateOutput) {
|
|
27
28
|
const callCommand = this.config.getToolCallCommand();
|
|
28
|
-
const child = spawn(callCommand, [this.
|
|
29
|
+
const child = spawn(callCommand, [this.originalToolName]);
|
|
29
30
|
child.stdin.write(JSON.stringify(this.params));
|
|
30
31
|
child.stdin.end();
|
|
31
32
|
let stdout = '';
|
|
@@ -89,15 +90,16 @@ class DiscoveredToolInvocation extends BaseToolInvocation {
|
|
|
89
90
|
}
|
|
90
91
|
export class DiscoveredTool extends BaseDeclarativeTool {
|
|
91
92
|
config;
|
|
92
|
-
description;
|
|
93
93
|
parameterSchema;
|
|
94
|
-
|
|
94
|
+
originalName;
|
|
95
|
+
constructor(config, originalName, prefixedName, description, parameterSchema, messageBus) {
|
|
95
96
|
const discoveryCmd = config.getToolDiscoveryCommand();
|
|
96
97
|
const callCommand = config.getToolCallCommand();
|
|
97
|
-
description
|
|
98
|
+
const fullDescription = description +
|
|
99
|
+
`
|
|
98
100
|
|
|
99
101
|
This tool was discovered from the project by executing the command \`${discoveryCmd}\` on project root.
|
|
100
|
-
When called, this tool will execute the command \`${callCommand} ${
|
|
102
|
+
When called, this tool will execute the command \`${callCommand} ${originalName}\` on project root.
|
|
101
103
|
Tool discovery and call commands can be configured in project or user settings.
|
|
102
104
|
|
|
103
105
|
When called, the tool call command is executed as a subprocess.
|
|
@@ -110,19 +112,22 @@ Error: Error or \`(none)\` if no error was reported for the subprocess.
|
|
|
110
112
|
Exit Code: Exit code or \`(none)\` if terminated by signal.
|
|
111
113
|
Signal: Signal number or \`(none)\` if no signal was received.
|
|
112
114
|
`;
|
|
113
|
-
super(
|
|
114
|
-
false
|
|
115
|
+
super(prefixedName, prefixedName, fullDescription, Kind.Other, parameterSchema, false, // isOutputMarkdown
|
|
116
|
+
false, // canUpdateOutput
|
|
117
|
+
messageBus);
|
|
115
118
|
this.config = config;
|
|
116
|
-
this.description = description;
|
|
117
119
|
this.parameterSchema = parameterSchema;
|
|
120
|
+
this.originalName = originalName;
|
|
118
121
|
}
|
|
119
122
|
createInvocation(params, _messageBus, _toolName, _displayName) {
|
|
120
|
-
return new DiscoveredToolInvocation(this.config, this.name, params);
|
|
123
|
+
return new DiscoveredToolInvocation(this.config, this.originalName, this.name, params, _messageBus);
|
|
121
124
|
}
|
|
122
125
|
}
|
|
123
126
|
export class ToolRegistry {
|
|
124
127
|
// The tools keyed by tool name as seen by the LLM.
|
|
125
|
-
tools
|
|
128
|
+
// This includes tools which are currently not active, use `getActiveTools`
|
|
129
|
+
// and `isActive` to get only the active tools.
|
|
130
|
+
allKnownTools = new Map();
|
|
126
131
|
config;
|
|
127
132
|
messageBus;
|
|
128
133
|
constructor(config) {
|
|
@@ -136,10 +141,14 @@ export class ToolRegistry {
|
|
|
136
141
|
}
|
|
137
142
|
/**
|
|
138
143
|
* Registers a tool definition.
|
|
144
|
+
*
|
|
145
|
+
* Note that excluded tools are still registered to allow for enabling them
|
|
146
|
+
* later in the session.
|
|
147
|
+
*
|
|
139
148
|
* @param tool - The tool object containing schema and execution logic.
|
|
140
149
|
*/
|
|
141
150
|
registerTool(tool) {
|
|
142
|
-
if (this.
|
|
151
|
+
if (this.allKnownTools.has(tool.name)) {
|
|
143
152
|
if (tool instanceof DiscoveredMCPTool) {
|
|
144
153
|
tool = tool.asFullyQualifiedTool();
|
|
145
154
|
}
|
|
@@ -148,12 +157,44 @@ export class ToolRegistry {
|
|
|
148
157
|
debugLogger.warn(`Tool with name "${tool.name}" is already registered. Overwriting.`);
|
|
149
158
|
}
|
|
150
159
|
}
|
|
151
|
-
this.
|
|
160
|
+
this.allKnownTools.set(tool.name, tool);
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Sorts tools as:
|
|
164
|
+
* 1. Built in tools.
|
|
165
|
+
* 2. Discovered tools.
|
|
166
|
+
* 3. MCP tools ordered by server name.
|
|
167
|
+
*
|
|
168
|
+
* This is a stable sort in that tries preserve existing order.
|
|
169
|
+
*/
|
|
170
|
+
sortTools() {
|
|
171
|
+
const getPriority = (tool) => {
|
|
172
|
+
if (tool instanceof DiscoveredMCPTool)
|
|
173
|
+
return 2;
|
|
174
|
+
if (tool instanceof DiscoveredTool)
|
|
175
|
+
return 1;
|
|
176
|
+
return 0; // Built-in
|
|
177
|
+
};
|
|
178
|
+
this.allKnownTools = new Map(Array.from(this.allKnownTools.entries()).sort((a, b) => {
|
|
179
|
+
const toolA = a[1];
|
|
180
|
+
const toolB = b[1];
|
|
181
|
+
const priorityA = getPriority(toolA);
|
|
182
|
+
const priorityB = getPriority(toolB);
|
|
183
|
+
if (priorityA !== priorityB) {
|
|
184
|
+
return priorityA - priorityB;
|
|
185
|
+
}
|
|
186
|
+
if (priorityA === 2) {
|
|
187
|
+
const serverA = toolA.serverName;
|
|
188
|
+
const serverB = toolB.serverName;
|
|
189
|
+
return serverA.localeCompare(serverB);
|
|
190
|
+
}
|
|
191
|
+
return 0;
|
|
192
|
+
}));
|
|
152
193
|
}
|
|
153
194
|
removeDiscoveredTools() {
|
|
154
|
-
for (const tool of this.
|
|
195
|
+
for (const tool of this.allKnownTools.values()) {
|
|
155
196
|
if (tool instanceof DiscoveredTool || tool instanceof DiscoveredMCPTool) {
|
|
156
|
-
this.
|
|
197
|
+
this.allKnownTools.delete(tool.name);
|
|
157
198
|
}
|
|
158
199
|
}
|
|
159
200
|
}
|
|
@@ -162,9 +203,9 @@ export class ToolRegistry {
|
|
|
162
203
|
* @param serverName The name of the server to remove tools from.
|
|
163
204
|
*/
|
|
164
205
|
removeMcpToolsByServer(serverName) {
|
|
165
|
-
for (const [name, tool] of this.
|
|
206
|
+
for (const [name, tool] of this.allKnownTools.entries()) {
|
|
166
207
|
if (tool instanceof DiscoveredMCPTool && tool.serverName === serverName) {
|
|
167
|
-
this.
|
|
208
|
+
this.allKnownTools.delete(name);
|
|
168
209
|
}
|
|
169
210
|
}
|
|
170
211
|
}
|
|
@@ -265,7 +306,7 @@ export class ToolRegistry {
|
|
|
265
306
|
!Array.isArray(func.parametersJsonSchema)
|
|
266
307
|
? func.parametersJsonSchema
|
|
267
308
|
: {};
|
|
268
|
-
this.registerTool(new DiscoveredTool(this.config, func.name, func.description ?? '', parameters));
|
|
309
|
+
this.registerTool(new DiscoveredTool(this.config, func.name, DISCOVERED_TOOL_PREFIX + func.name, func.description ?? '', parameters, this.messageBus));
|
|
269
310
|
}
|
|
270
311
|
}
|
|
271
312
|
catch (e) {
|
|
@@ -273,6 +314,39 @@ export class ToolRegistry {
|
|
|
273
314
|
throw e;
|
|
274
315
|
}
|
|
275
316
|
}
|
|
317
|
+
/**
|
|
318
|
+
* @returns All the tools that are not excluded.
|
|
319
|
+
*/
|
|
320
|
+
getActiveTools() {
|
|
321
|
+
const excludedTools = this.config.getExcludeTools() ?? new Set([]);
|
|
322
|
+
const activeTools = [];
|
|
323
|
+
for (const tool of this.allKnownTools.values()) {
|
|
324
|
+
if (this.isActiveTool(tool, excludedTools)) {
|
|
325
|
+
activeTools.push(tool);
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
return activeTools;
|
|
329
|
+
}
|
|
330
|
+
/**
|
|
331
|
+
* @param tool
|
|
332
|
+
* @param excludeTools (optional, helps performance for repeated calls)
|
|
333
|
+
* @returns Whether or not the `tool` is not excluded.
|
|
334
|
+
*/
|
|
335
|
+
isActiveTool(tool, excludeTools) {
|
|
336
|
+
excludeTools ??= this.config.getExcludeTools() ?? new Set([]);
|
|
337
|
+
const normalizedClassName = tool.constructor.name.replace(/^_+/, '');
|
|
338
|
+
const possibleNames = [tool.name, normalizedClassName];
|
|
339
|
+
if (tool instanceof DiscoveredMCPTool) {
|
|
340
|
+
// Check both the unqualified and qualified name for MCP tools.
|
|
341
|
+
if (tool.name.startsWith(tool.getFullyQualifiedPrefix())) {
|
|
342
|
+
possibleNames.push(tool.name.substring(tool.getFullyQualifiedPrefix().length));
|
|
343
|
+
}
|
|
344
|
+
else {
|
|
345
|
+
possibleNames.push(`${tool.getFullyQualifiedPrefix()}${tool.name}`);
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
return !possibleNames.some((name) => excludeTools.has(name));
|
|
349
|
+
}
|
|
276
350
|
/**
|
|
277
351
|
* Retrieves the list of tool schemas (FunctionDeclaration array).
|
|
278
352
|
* Extracts the declarations from the ToolListUnion structure.
|
|
@@ -281,7 +355,7 @@ export class ToolRegistry {
|
|
|
281
355
|
*/
|
|
282
356
|
getFunctionDeclarations() {
|
|
283
357
|
const declarations = [];
|
|
284
|
-
this.
|
|
358
|
+
this.getActiveTools().forEach((tool) => {
|
|
285
359
|
declarations.push(tool.schema);
|
|
286
360
|
});
|
|
287
361
|
return declarations;
|
|
@@ -294,31 +368,32 @@ export class ToolRegistry {
|
|
|
294
368
|
getFunctionDeclarationsFiltered(toolNames) {
|
|
295
369
|
const declarations = [];
|
|
296
370
|
for (const name of toolNames) {
|
|
297
|
-
const tool = this.
|
|
298
|
-
if (tool) {
|
|
371
|
+
const tool = this.allKnownTools.get(name);
|
|
372
|
+
if (tool && this.isActiveTool(tool)) {
|
|
299
373
|
declarations.push(tool.schema);
|
|
300
374
|
}
|
|
301
375
|
}
|
|
302
376
|
return declarations;
|
|
303
377
|
}
|
|
304
378
|
/**
|
|
305
|
-
* Returns an array of all registered and discovered tool names
|
|
379
|
+
* Returns an array of all registered and discovered tool names which are not
|
|
380
|
+
* excluded via configuration.
|
|
306
381
|
*/
|
|
307
382
|
getAllToolNames() {
|
|
308
|
-
return
|
|
383
|
+
return this.getActiveTools().map((tool) => tool.name);
|
|
309
384
|
}
|
|
310
385
|
/**
|
|
311
386
|
* Returns an array of all registered and discovered tool instances.
|
|
312
387
|
*/
|
|
313
388
|
getAllTools() {
|
|
314
|
-
return
|
|
389
|
+
return this.getActiveTools().sort((a, b) => a.displayName.localeCompare(b.displayName));
|
|
315
390
|
}
|
|
316
391
|
/**
|
|
317
392
|
* Returns an array of tools registered from a specific MCP server.
|
|
318
393
|
*/
|
|
319
394
|
getToolsByServer(serverName) {
|
|
320
395
|
const serverTools = [];
|
|
321
|
-
for (const tool of this.
|
|
396
|
+
for (const tool of this.getActiveTools()) {
|
|
322
397
|
if (tool?.serverName === serverName) {
|
|
323
398
|
serverTools.push(tool);
|
|
324
399
|
}
|
|
@@ -329,7 +404,11 @@ export class ToolRegistry {
|
|
|
329
404
|
* Get the definition of a specific tool.
|
|
330
405
|
*/
|
|
331
406
|
getTool(name) {
|
|
332
|
-
|
|
407
|
+
const tool = this.allKnownTools.get(name);
|
|
408
|
+
if (tool && this.isActiveTool(tool)) {
|
|
409
|
+
return tool;
|
|
410
|
+
}
|
|
411
|
+
return;
|
|
333
412
|
}
|
|
334
413
|
}
|
|
335
414
|
//# sourceMappingURL=tool-registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../../src/tools/tool-registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../../src/tools/tool-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
|
|
7
7
|
import { Config } from '../config/config.js';
|
|
8
8
|
import { ApprovalMode } from '../policy/types.js';
|
|
9
|
-
import { ToolRegistry, DiscoveredTool } from './tool-registry.js';
|
|
9
|
+
import { ToolRegistry, DiscoveredTool, DISCOVERED_TOOL_PREFIX, } from './tool-registry.js';
|
|
10
10
|
import { DiscoveredMCPTool } from './mcp-tool.js';
|
|
11
11
|
import { mcpToTool } from '@google/genai';
|
|
12
12
|
import { spawn } from 'node:child_process';
|
|
@@ -84,6 +84,7 @@ describe('ToolRegistry', () => {
|
|
|
84
84
|
let config;
|
|
85
85
|
let toolRegistry;
|
|
86
86
|
let mockConfigGetToolDiscoveryCommand;
|
|
87
|
+
let mockConfigGetExcludedTools;
|
|
87
88
|
beforeEach(() => {
|
|
88
89
|
vi.mocked(fs.existsSync).mockReturnValue(true);
|
|
89
90
|
vi.mocked(fs.statSync).mockReturnValue({
|
|
@@ -101,6 +102,7 @@ describe('ToolRegistry', () => {
|
|
|
101
102
|
vi.mocked(mcpToTool).mockClear();
|
|
102
103
|
vi.mocked(mcpToTool).mockReturnValue(createMockCallableTool([]));
|
|
103
104
|
mockConfigGetToolDiscoveryCommand = vi.spyOn(config, 'getToolDiscoveryCommand');
|
|
105
|
+
mockConfigGetExcludedTools = vi.spyOn(config, 'getExcludeTools');
|
|
104
106
|
vi.spyOn(config, 'getMcpServers');
|
|
105
107
|
vi.spyOn(config, 'getMcpServerCommand');
|
|
106
108
|
vi.spyOn(config, 'getPromptRegistry').mockReturnValue({
|
|
@@ -118,6 +120,60 @@ describe('ToolRegistry', () => {
|
|
|
118
120
|
expect(toolRegistry.getTool('mock-tool')).toBe(tool);
|
|
119
121
|
});
|
|
120
122
|
});
|
|
123
|
+
describe('excluded tools', () => {
|
|
124
|
+
const simpleTool = new MockTool({
|
|
125
|
+
name: 'tool-a',
|
|
126
|
+
displayName: 'Tool a',
|
|
127
|
+
});
|
|
128
|
+
const excludedTool = new ExcludedMockTool({
|
|
129
|
+
name: 'excluded-tool-class',
|
|
130
|
+
displayName: 'Excluded Tool Class',
|
|
131
|
+
});
|
|
132
|
+
const mockCallable = {};
|
|
133
|
+
const mcpTool = new DiscoveredMCPTool(mockCallable, 'mcp-server', 'excluded-mcp-tool', 'description', {});
|
|
134
|
+
const allowedTool = new MockTool({
|
|
135
|
+
name: 'allowed-tool',
|
|
136
|
+
displayName: 'Allowed Tool',
|
|
137
|
+
});
|
|
138
|
+
it.each([
|
|
139
|
+
{
|
|
140
|
+
name: 'should match simple names',
|
|
141
|
+
tools: [simpleTool],
|
|
142
|
+
excludedTools: ['tool-a'],
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
name: 'should match simple MCP tool names, when qualified or unqualified',
|
|
146
|
+
tools: [mcpTool, mcpTool.asFullyQualifiedTool()],
|
|
147
|
+
excludedTools: [mcpTool.name],
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
name: 'should match qualified MCP tool names when qualified or unqualified',
|
|
151
|
+
tools: [mcpTool, mcpTool.asFullyQualifiedTool()],
|
|
152
|
+
excludedTools: [`${mcpTool.getFullyQualifiedPrefix()}${mcpTool.name}`],
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
name: 'should match class names',
|
|
156
|
+
tools: [excludedTool],
|
|
157
|
+
excludedTools: ['ExcludedMockTool'],
|
|
158
|
+
},
|
|
159
|
+
])('$name', ({ tools, excludedTools }) => {
|
|
160
|
+
toolRegistry.registerTool(allowedTool);
|
|
161
|
+
for (const tool of tools) {
|
|
162
|
+
toolRegistry.registerTool(tool);
|
|
163
|
+
}
|
|
164
|
+
mockConfigGetExcludedTools.mockReturnValue(new Set(excludedTools));
|
|
165
|
+
expect(toolRegistry.getAllTools()).toEqual([allowedTool]);
|
|
166
|
+
expect(toolRegistry.getAllToolNames()).toEqual([allowedTool.name]);
|
|
167
|
+
expect(toolRegistry.getFunctionDeclarations()).toEqual(toolRegistry.getFunctionDeclarationsFiltered([allowedTool.name]));
|
|
168
|
+
for (const tool of tools) {
|
|
169
|
+
expect(toolRegistry.getTool(tool.name)).toBeUndefined();
|
|
170
|
+
expect(toolRegistry.getFunctionDeclarationsFiltered([tool.name])).toHaveLength(0);
|
|
171
|
+
if (tool instanceof DiscoveredMCPTool) {
|
|
172
|
+
expect(toolRegistry.getToolsByServer(tool.serverName)).toHaveLength(0);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
});
|
|
121
177
|
describe('getAllTools', () => {
|
|
122
178
|
it('should return all registered tools sorted alphabetically by displayName', () => {
|
|
123
179
|
// Register tools with displayNames in non-alphabetical order
|
|
@@ -181,6 +237,30 @@ describe('ToolRegistry', () => {
|
|
|
181
237
|
expect(toolsFromServer2[0].name).toBe(mcpTool2.name);
|
|
182
238
|
});
|
|
183
239
|
});
|
|
240
|
+
describe('sortTools', () => {
|
|
241
|
+
it('should sort tools by priority: built-in, discovered, then MCP (by server name)', () => {
|
|
242
|
+
const builtIn1 = new MockTool({ name: 'builtin-1' });
|
|
243
|
+
const builtIn2 = new MockTool({ name: 'builtin-2' });
|
|
244
|
+
const discovered1 = new DiscoveredTool(config, 'discovered-1', DISCOVERED_TOOL_PREFIX + 'discovered-1', 'desc', {});
|
|
245
|
+
const mockCallable = {};
|
|
246
|
+
const mcpZebra = new DiscoveredMCPTool(mockCallable, 'zebra-server', 'mcp-zebra', 'desc', {});
|
|
247
|
+
const mcpApple = new DiscoveredMCPTool(mockCallable, 'apple-server', 'mcp-apple', 'desc', {});
|
|
248
|
+
// Register in mixed order
|
|
249
|
+
toolRegistry.registerTool(mcpZebra);
|
|
250
|
+
toolRegistry.registerTool(discovered1);
|
|
251
|
+
toolRegistry.registerTool(builtIn1);
|
|
252
|
+
toolRegistry.registerTool(mcpApple);
|
|
253
|
+
toolRegistry.registerTool(builtIn2);
|
|
254
|
+
toolRegistry.sortTools();
|
|
255
|
+
expect(toolRegistry.getAllToolNames()).toEqual([
|
|
256
|
+
'builtin-1',
|
|
257
|
+
'builtin-2',
|
|
258
|
+
DISCOVERED_TOOL_PREFIX + 'discovered-1',
|
|
259
|
+
'mcp-apple',
|
|
260
|
+
'mcp-zebra',
|
|
261
|
+
]);
|
|
262
|
+
});
|
|
263
|
+
});
|
|
184
264
|
describe('discoverTools', () => {
|
|
185
265
|
it('should will preserve tool parametersJsonSchema during discovery from command', async () => {
|
|
186
266
|
const discoveryCommand = 'my-discovery-command';
|
|
@@ -222,7 +302,7 @@ describe('ToolRegistry', () => {
|
|
|
222
302
|
return mockChildProcess;
|
|
223
303
|
});
|
|
224
304
|
await toolRegistry.discoverAllTools();
|
|
225
|
-
const discoveredTool = toolRegistry.getTool('tool-with-bad-format');
|
|
305
|
+
const discoveredTool = toolRegistry.getTool(DISCOVERED_TOOL_PREFIX + 'tool-with-bad-format');
|
|
226
306
|
expect(discoveredTool).toBeDefined();
|
|
227
307
|
const registeredParams = discoveredTool.schema
|
|
228
308
|
.parametersJsonSchema;
|
|
@@ -267,7 +347,7 @@ describe('ToolRegistry', () => {
|
|
|
267
347
|
}
|
|
268
348
|
});
|
|
269
349
|
await toolRegistry.discoverAllTools();
|
|
270
|
-
const discoveredTool = toolRegistry.getTool('failing-tool');
|
|
350
|
+
const discoveredTool = toolRegistry.getTool(DISCOVERED_TOOL_PREFIX + 'failing-tool');
|
|
271
351
|
expect(discoveredTool).toBeDefined();
|
|
272
352
|
// --- Execution Mock ---
|
|
273
353
|
const executionProcess = {
|
|
@@ -296,10 +376,52 @@ describe('ToolRegistry', () => {
|
|
|
296
376
|
expect(result.llmContent).toContain('Stderr: Something went wrong');
|
|
297
377
|
expect(result.llmContent).toContain('Exit Code: 1');
|
|
298
378
|
});
|
|
379
|
+
it('should pass MessageBus to DiscoveredTool and its invocations', async () => {
|
|
380
|
+
const discoveryCommand = 'my-discovery-command';
|
|
381
|
+
mockConfigGetToolDiscoveryCommand.mockReturnValue(discoveryCommand);
|
|
382
|
+
// Mock MessageBus
|
|
383
|
+
const mockMessageBus = {
|
|
384
|
+
publish: vi.fn(),
|
|
385
|
+
subscribe: vi.fn(),
|
|
386
|
+
unsubscribe: vi.fn(),
|
|
387
|
+
};
|
|
388
|
+
toolRegistry.setMessageBus(mockMessageBus);
|
|
389
|
+
const toolDeclaration = {
|
|
390
|
+
name: 'policy-test-tool',
|
|
391
|
+
description: 'tests policy',
|
|
392
|
+
parametersJsonSchema: { type: 'object', properties: {} },
|
|
393
|
+
};
|
|
394
|
+
const mockSpawn = vi.mocked(spawn);
|
|
395
|
+
const discoveryProcess = {
|
|
396
|
+
stdout: { on: vi.fn(), removeListener: vi.fn() },
|
|
397
|
+
stderr: { on: vi.fn(), removeListener: vi.fn() },
|
|
398
|
+
on: vi.fn(),
|
|
399
|
+
kill: vi.fn(),
|
|
400
|
+
};
|
|
401
|
+
mockSpawn.mockReturnValueOnce(discoveryProcess);
|
|
402
|
+
discoveryProcess.stdout.on.mockImplementation((event, callback) => {
|
|
403
|
+
if (event === 'data') {
|
|
404
|
+
callback(Buffer.from(JSON.stringify([{ functionDeclarations: [toolDeclaration] }])));
|
|
405
|
+
}
|
|
406
|
+
});
|
|
407
|
+
discoveryProcess.on.mockImplementation((event, callback) => {
|
|
408
|
+
if (event === 'close') {
|
|
409
|
+
callback(0);
|
|
410
|
+
}
|
|
411
|
+
});
|
|
412
|
+
await toolRegistry.discoverAllTools();
|
|
413
|
+
const tool = toolRegistry.getTool(DISCOVERED_TOOL_PREFIX + 'policy-test-tool');
|
|
414
|
+
expect(tool).toBeDefined();
|
|
415
|
+
// Verify DiscoveredTool has the message bus
|
|
416
|
+
expect(tool.messageBus).toBe(mockMessageBus);
|
|
417
|
+
const invocation = tool.build({});
|
|
418
|
+
// Verify DiscoveredToolInvocation has the message bus
|
|
419
|
+
expect(invocation.messageBus).toBe(mockMessageBus);
|
|
420
|
+
});
|
|
299
421
|
});
|
|
300
422
|
describe('DiscoveredToolInvocation', () => {
|
|
301
423
|
it('should return the stringified params from getDescription', () => {
|
|
302
|
-
const tool = new DiscoveredTool(config, 'test-tool', 'A test tool', {});
|
|
424
|
+
const tool = new DiscoveredTool(config, 'test-tool', DISCOVERED_TOOL_PREFIX + 'test-tool', 'A test tool', {});
|
|
303
425
|
const params = { param: 'testValue' };
|
|
304
426
|
const invocation = tool.build(params);
|
|
305
427
|
const description = invocation.getDescription();
|
|
@@ -307,4 +429,12 @@ describe('ToolRegistry', () => {
|
|
|
307
429
|
});
|
|
308
430
|
});
|
|
309
431
|
});
|
|
432
|
+
/**
|
|
433
|
+
* Used for tests that exclude by class name.
|
|
434
|
+
*/
|
|
435
|
+
class ExcludedMockTool extends MockTool {
|
|
436
|
+
constructor(options) {
|
|
437
|
+
super(options);
|
|
438
|
+
}
|
|
439
|
+
}
|
|
310
440
|
//# sourceMappingURL=tool-registry.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-registry.test.js","sourceRoot":"","sources":["../../../src/tools/tool-registry.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-registry.test.js","sourceRoot":"","sources":["../../../src/tools/tool-registry.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -50,7 +50,8 @@ export declare abstract class BaseToolInvocation<TParams extends object, TResult
|
|
|
50
50
|
protected readonly messageBus?: MessageBus | undefined;
|
|
51
51
|
readonly _toolName?: string | undefined;
|
|
52
52
|
readonly _toolDisplayName?: string | undefined;
|
|
53
|
-
|
|
53
|
+
readonly _serverName?: string | undefined;
|
|
54
|
+
constructor(params: TParams, messageBus?: MessageBus | undefined, _toolName?: string | undefined, _toolDisplayName?: string | undefined, _serverName?: string | undefined);
|
|
54
55
|
abstract getDescription(): string;
|
|
55
56
|
toolLocations(): ToolLocation[];
|
|
56
57
|
shouldConfirmExecute(abortSignal: AbortSignal): Promise<ToolCallConfirmationDetails | false>;
|
package/dist/src/tools/tools.js
CHANGED
|
@@ -15,11 +15,13 @@ export class BaseToolInvocation {
|
|
|
15
15
|
messageBus;
|
|
16
16
|
_toolName;
|
|
17
17
|
_toolDisplayName;
|
|
18
|
-
|
|
18
|
+
_serverName;
|
|
19
|
+
constructor(params, messageBus, _toolName, _toolDisplayName, _serverName) {
|
|
19
20
|
this.params = params;
|
|
20
21
|
this.messageBus = messageBus;
|
|
21
22
|
this._toolName = _toolName;
|
|
22
23
|
this._toolDisplayName = _toolDisplayName;
|
|
24
|
+
this._serverName = _serverName;
|
|
23
25
|
}
|
|
24
26
|
toolLocations() {
|
|
25
27
|
return [];
|
|
@@ -123,6 +125,7 @@ export class BaseToolInvocation {
|
|
|
123
125
|
type: MessageBusType.TOOL_CONFIRMATION_REQUEST,
|
|
124
126
|
toolCall,
|
|
125
127
|
correlationId,
|
|
128
|
+
serverName: this._serverName,
|
|
126
129
|
};
|
|
127
130
|
try {
|
|
128
131
|
this.messageBus.publish(request);
|
|
@@ -317,7 +320,7 @@ export function hasCycleInSchema(schema) {
|
|
|
317
320
|
}
|
|
318
321
|
if ('$ref' in node && typeof node.$ref === 'string') {
|
|
319
322
|
const ref = node.$ref;
|
|
320
|
-
if (ref === '#/' || pathRefs.has(ref)) {
|
|
323
|
+
if (ref === '#' || ref === '#/' || pathRefs.has(ref)) {
|
|
321
324
|
// A ref to just '#/' is always a cycle.
|
|
322
325
|
return true; // Cycle detected!
|
|
323
326
|
}
|