@vybestack/llxprt-code-core 0.5.0 → 0.6.0-nightly.251128.1049d5f2b
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 +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/src/agents/codebase-investigator.d.ts +46 -0
- package/dist/src/agents/codebase-investigator.js +136 -0
- package/dist/src/agents/codebase-investigator.js.map +1 -0
- package/dist/src/agents/executor.d.ts +92 -0
- package/dist/src/agents/executor.js +624 -0
- package/dist/src/agents/executor.js.map +1 -0
- package/dist/src/agents/invocation.d.ts +45 -0
- package/dist/src/agents/invocation.js +114 -0
- package/dist/src/agents/invocation.js.map +1 -0
- package/dist/src/agents/registry.d.ts +38 -0
- package/dist/src/agents/registry.js +64 -0
- package/dist/src/agents/registry.js.map +1 -0
- package/dist/src/agents/types.d.ts +145 -0
- package/dist/src/agents/types.js +17 -0
- package/dist/src/agents/types.js.map +1 -0
- package/dist/src/agents/utils.d.ts +15 -0
- package/dist/src/agents/utils.js +27 -0
- package/dist/src/agents/utils.js.map +1 -0
- package/dist/src/auth/types.d.ts +4 -4
- package/dist/src/code_assist/oauth-credential-storage.d.ts +27 -0
- package/dist/src/code_assist/oauth-credential-storage.js +115 -0
- package/dist/src/code_assist/oauth-credential-storage.js.map +1 -0
- package/dist/src/code_assist/oauth2.js +36 -9
- package/dist/src/code_assist/oauth2.js.map +1 -1
- package/dist/src/config/config.d.ts +72 -8
- package/dist/src/config/config.js +130 -23
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/constants.d.ts +11 -0
- package/dist/src/config/constants.js +16 -0
- package/dist/src/config/constants.js.map +1 -0
- package/dist/src/config/storage.d.ts +1 -0
- package/dist/src/config/storage.js +2 -1
- package/dist/src/config/storage.js.map +1 -1
- package/dist/src/confirmation-bus/index.d.ts +2 -0
- package/dist/src/confirmation-bus/index.js +3 -0
- package/dist/src/confirmation-bus/index.js.map +1 -0
- package/dist/src/confirmation-bus/message-bus.d.ts +60 -0
- package/dist/src/confirmation-bus/message-bus.js +141 -0
- package/dist/src/confirmation-bus/message-bus.js.map +1 -0
- package/dist/src/confirmation-bus/types.d.ts +59 -0
- package/dist/src/confirmation-bus/types.js +10 -0
- package/dist/src/confirmation-bus/types.js.map +1 -0
- package/dist/src/core/baseLlmClient.d.ts +77 -0
- package/dist/src/core/baseLlmClient.js +175 -0
- package/dist/src/core/baseLlmClient.js.map +1 -0
- package/dist/src/core/client.d.ts +13 -1
- package/dist/src/core/client.js +98 -119
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/coreToolScheduler.d.ts +20 -1
- package/dist/src/core/coreToolScheduler.js +160 -16
- package/dist/src/core/coreToolScheduler.js.map +1 -1
- package/dist/src/core/geminiChat.d.ts +8 -1
- package/dist/src/core/geminiChat.js +30 -21
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/core/subagent.d.ts +16 -1
- package/dist/src/core/subagent.js +59 -3
- package/dist/src/core/subagent.js.map +1 -1
- package/dist/src/core/subagentOrchestrator.d.ts +2 -1
- package/dist/src/core/subagentOrchestrator.js +36 -6
- package/dist/src/core/subagentOrchestrator.js.map +1 -1
- package/dist/src/core/turn.d.ts +1 -4
- package/dist/src/core/turn.js +2 -12
- package/dist/src/core/turn.js.map +1 -1
- package/dist/src/ide/detect-ide.d.ts +44 -14
- package/dist/src/ide/detect-ide.js +35 -75
- package/dist/src/ide/detect-ide.js.map +1 -1
- package/dist/src/ide/ide-client.d.ts +5 -4
- package/dist/src/ide/ide-client.js +34 -25
- package/dist/src/ide/ide-client.js.map +1 -1
- package/dist/src/ide/ide-installer.d.ts +2 -2
- package/dist/src/ide/ide-installer.js +7 -9
- package/dist/src/ide/ide-installer.js.map +1 -1
- package/dist/src/index.d.ts +10 -2
- package/dist/src/index.js +12 -3
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/oauth-provider.d.ts +5 -1
- package/dist/src/mcp/oauth-provider.js +56 -44
- package/dist/src/mcp/oauth-provider.js.map +1 -1
- package/dist/src/mcp/oauth-token-storage.d.ts +43 -40
- package/dist/src/mcp/oauth-token-storage.js +114 -44
- package/dist/src/mcp/oauth-token-storage.js.map +1 -1
- package/dist/src/mcp/oauth-utils.js +1 -0
- package/dist/src/mcp/oauth-utils.js.map +1 -1
- package/dist/src/mcp/sa-impersonation-provider.d.ts +33 -0
- package/dist/src/mcp/sa-impersonation-provider.js +130 -0
- package/dist/src/mcp/sa-impersonation-provider.js.map +1 -0
- package/dist/src/mcp/token-storage/hybrid-token-storage.js +1 -1
- package/dist/src/policy/config.d.ts +51 -0
- package/dist/src/policy/config.js +102 -0
- package/dist/src/policy/config.js.map +1 -0
- package/dist/src/policy/index.d.ts +5 -0
- package/dist/src/policy/index.js +6 -0
- package/dist/src/policy/index.js.map +1 -0
- package/dist/src/policy/policies/discovered.toml +9 -0
- package/dist/src/policy/policies/read-only.toml +68 -0
- package/dist/src/policy/policies/write.toml +69 -0
- package/dist/src/policy/policies/yolo.toml +8 -0
- package/dist/src/policy/policy-engine.d.ts +55 -0
- package/dist/src/policy/policy-engine.js +126 -0
- package/dist/src/policy/policy-engine.js.map +1 -0
- package/dist/src/policy/stable-stringify.d.ts +29 -0
- package/dist/src/policy/stable-stringify.js +111 -0
- package/dist/src/policy/stable-stringify.js.map +1 -0
- package/dist/src/policy/toml-loader.d.ts +37 -0
- package/dist/src/policy/toml-loader.js +183 -0
- package/dist/src/policy/toml-loader.js.map +1 -0
- package/dist/src/policy/types.d.ts +16 -0
- package/dist/src/policy/types.js +7 -0
- package/dist/src/policy/types.js.map +1 -0
- package/dist/src/providers/LoggingProviderWrapper.d.ts +2 -0
- package/dist/src/providers/LoggingProviderWrapper.js +27 -6
- package/dist/src/providers/LoggingProviderWrapper.js.map +1 -1
- package/dist/src/providers/ProviderManager.d.ts +18 -0
- package/dist/src/providers/ProviderManager.js +54 -3
- package/dist/src/providers/ProviderManager.js.map +1 -1
- package/dist/src/providers/anthropic/AnthropicProvider.d.ts +49 -0
- package/dist/src/providers/anthropic/AnthropicProvider.js +468 -30
- package/dist/src/providers/anthropic/AnthropicProvider.js.map +1 -1
- package/dist/src/providers/openai/OpenAIProvider.d.ts +3 -0
- package/dist/src/providers/openai/OpenAIProvider.js +12 -6
- package/dist/src/providers/openai/OpenAIProvider.js.map +1 -1
- package/dist/src/providers/utils/localEndpoint.d.ts +39 -0
- package/dist/src/providers/utils/localEndpoint.js +117 -0
- package/dist/src/providers/utils/localEndpoint.js.map +1 -0
- package/dist/src/runtime/AgentRuntimeLoader.d.ts +1 -0
- package/dist/src/runtime/AgentRuntimeLoader.js +6 -1
- package/dist/src/runtime/AgentRuntimeLoader.js.map +1 -1
- package/dist/src/runtime/createAgentRuntimeContext.js +8 -7
- package/dist/src/runtime/createAgentRuntimeContext.js.map +1 -1
- package/dist/src/services/fileSystemService.d.ts +9 -0
- package/dist/src/services/fileSystemService.js +12 -1
- package/dist/src/services/fileSystemService.js.map +1 -1
- package/dist/src/services/history/HistoryService.d.ts +4 -0
- package/dist/src/services/history/HistoryService.js +18 -0
- package/dist/src/services/history/HistoryService.js.map +1 -1
- package/dist/src/services/history/IContent.d.ts +6 -0
- package/dist/src/services/history/IContent.js.map +1 -1
- package/dist/src/services/shellExecutionService.js +0 -6
- package/dist/src/services/shellExecutionService.js.map +1 -1
- package/dist/src/settings/types.d.ts +7 -0
- package/dist/src/storage/sessionTypes.d.ts +27 -0
- package/dist/src/storage/sessionTypes.js +10 -0
- package/dist/src/storage/sessionTypes.js.map +1 -0
- package/dist/src/telemetry/constants.d.ts +8 -0
- package/dist/src/telemetry/constants.js +8 -0
- package/dist/src/telemetry/constants.js.map +1 -1
- package/dist/src/telemetry/loggers.d.ts +9 -1
- package/dist/src/telemetry/loggers.js +154 -2
- package/dist/src/telemetry/loggers.js.map +1 -1
- package/dist/src/telemetry/metrics.d.ts +5 -0
- package/dist/src/telemetry/metrics.js +4 -0
- package/dist/src/telemetry/metrics.js.map +1 -1
- package/dist/src/telemetry/types.d.ts +62 -1
- package/dist/src/telemetry/types.js +92 -0
- package/dist/src/telemetry/types.js.map +1 -1
- package/dist/src/telemetry/uiTelemetry.d.ts +1 -1
- package/dist/src/telemetry/uiTelemetry.js +2 -3
- package/dist/src/telemetry/uiTelemetry.js.map +1 -1
- package/dist/src/test-utils/config.js +14 -0
- package/dist/src/test-utils/config.js.map +1 -1
- package/dist/src/test-utils/mock-tool.d.ts +8 -4
- package/dist/src/test-utils/mock-tool.js +35 -18
- package/dist/src/test-utils/mock-tool.js.map +1 -1
- package/dist/src/test-utils/tools.d.ts +1 -1
- package/dist/src/test-utils/tools.js +4 -4
- package/dist/src/test-utils/tools.js.map +1 -1
- package/dist/src/tools/edit.d.ts +3 -2
- package/dist/src/tools/edit.js +29 -10
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/glob.d.ts +6 -4
- package/dist/src/tools/glob.js +3 -3
- package/dist/src/tools/glob.js.map +1 -1
- package/dist/src/tools/grep.d.ts +3 -2
- package/dist/src/tools/grep.js +2 -2
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/ls.d.ts +4 -3
- package/dist/src/tools/ls.js +3 -3
- package/dist/src/tools/ls.js.map +1 -1
- package/dist/src/tools/mcp-client.d.ts +9 -18
- package/dist/src/tools/mcp-client.js +60 -102
- package/dist/src/tools/mcp-client.js.map +1 -1
- package/dist/src/tools/mcp-tool.js +7 -1
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/memoryTool.d.ts +6 -2
- package/dist/src/tools/memoryTool.js +14 -4
- package/dist/src/tools/memoryTool.js.map +1 -1
- package/dist/src/tools/modifiable-tool.d.ts +1 -1
- package/dist/src/tools/modifiable-tool.js +9 -1
- package/dist/src/tools/modifiable-tool.js.map +1 -1
- package/dist/src/tools/read-file.d.ts +3 -2
- package/dist/src/tools/read-file.js +2 -2
- package/dist/src/tools/read-file.js.map +1 -1
- package/dist/src/tools/read-many-files.d.ts +3 -2
- package/dist/src/tools/read-many-files.js +2 -2
- package/dist/src/tools/read-many-files.js.map +1 -1
- package/dist/src/tools/ripGrep.d.ts +3 -2
- package/dist/src/tools/ripGrep.js +2 -2
- package/dist/src/tools/ripGrep.js.map +1 -1
- package/dist/src/tools/shell.d.ts +3 -2
- package/dist/src/tools/shell.js +69 -9
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/smart-edit.d.ts +22 -2
- package/dist/src/tools/smart-edit.js +124 -12
- package/dist/src/tools/smart-edit.js.map +1 -1
- package/dist/src/tools/task.d.ts +1 -0
- package/dist/src/tools/task.js +33 -16
- package/dist/src/tools/task.js.map +1 -1
- package/dist/src/tools/tool-confirmation-types.d.ts +20 -0
- package/dist/src/tools/tool-confirmation-types.js +15 -0
- package/dist/src/tools/tool-confirmation-types.js.map +1 -0
- package/dist/src/tools/tool-error.d.ts +2 -0
- package/dist/src/tools/tool-error.js +2 -0
- package/dist/src/tools/tool-error.js.map +1 -1
- package/dist/src/tools/tool-registry.d.ts +8 -1
- package/dist/src/tools/tool-registry.js +18 -4
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tools.d.ts +52 -14
- package/dist/src/tools/tools.js +71 -15
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/web-fetch.d.ts +3 -2
- package/dist/src/tools/web-fetch.js +11 -6
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/web-search-invocation.d.ts +3 -1
- package/dist/src/tools/web-search-invocation.js +5 -2
- package/dist/src/tools/web-search-invocation.js.map +1 -1
- package/dist/src/tools/web-search.d.ts +3 -2
- package/dist/src/tools/web-search.js +6 -4
- package/dist/src/tools/web-search.js.map +1 -1
- package/dist/src/tools/write-file.d.ts +3 -2
- package/dist/src/tools/write-file.js +11 -6
- package/dist/src/tools/write-file.js.map +1 -1
- package/dist/src/utils/bfsFileSearch.d.ts +2 -2
- package/dist/src/utils/editor.js +5 -3
- package/dist/src/utils/editor.js.map +1 -1
- package/dist/src/utils/getFolderStructure.d.ts +2 -2
- package/dist/src/utils/getFolderStructure.js +1 -1
- package/dist/src/utils/getFolderStructure.js.map +1 -1
- package/dist/src/utils/llm-edit-fixer.js +10 -1
- package/dist/src/utils/llm-edit-fixer.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.d.ts +2 -1
- package/dist/src/utils/memoryDiscovery.js +3 -2
- package/dist/src/utils/memoryDiscovery.js.map +1 -1
- package/dist/src/utils/memoryImportProcessor.js +13 -20
- package/dist/src/utils/memoryImportProcessor.js.map +1 -1
- package/dist/src/utils/retry.d.ts +5 -1
- package/dist/src/utils/retry.js +31 -16
- package/dist/src/utils/retry.js.map +1 -1
- package/dist/src/utils/schemaValidator.js +11 -1
- package/dist/src/utils/schemaValidator.js.map +1 -1
- package/dist/src/utils/shell-utils.d.ts +1 -0
- package/dist/src/utils/shell-utils.js +6 -2
- package/dist/src/utils/shell-utils.js.map +1 -1
- package/dist/src/utils/thoughtUtils.d.ts +21 -0
- package/dist/src/utils/thoughtUtils.js +39 -0
- package/dist/src/utils/thoughtUtils.js.map +1 -0
- package/dist/src/utils/tool-utils.js +2 -2
- package/dist/src/utils/tool-utils.js.map +1 -1
- package/package.json +6 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grep.js","sourceRoot":"","sources":["../../../src/tools/grep.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"grep.js","sourceRoot":"","sources":["../../../src/tools/grep.ts"],"names":[],"mappings":"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"}
|
package/dist/src/tools/ls.d.ts
CHANGED
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { BaseDeclarativeTool, ToolInvocation, ToolResult } from './tools.js';
|
|
7
|
-
import { Config } from '../config/config.js';
|
|
7
|
+
import type { Config } from '../config/config.js';
|
|
8
|
+
import { MessageBus } from '../confirmation-bus/message-bus.js';
|
|
8
9
|
/**
|
|
9
10
|
* Parameters for the LS tool
|
|
10
11
|
*/
|
|
@@ -56,12 +57,12 @@ export interface FileEntry {
|
|
|
56
57
|
export declare class LSTool extends BaseDeclarativeTool<LSToolParams, ToolResult> {
|
|
57
58
|
private config;
|
|
58
59
|
static readonly Name = "list_directory";
|
|
59
|
-
constructor(config: Config);
|
|
60
|
+
constructor(config: Config, _messageBus?: MessageBus);
|
|
60
61
|
/**
|
|
61
62
|
* Validates the parameters for the tool
|
|
62
63
|
* @param params Parameters to validate
|
|
63
64
|
* @returns An error message string if invalid, null otherwise
|
|
64
65
|
*/
|
|
65
66
|
protected validateToolParamValues(params: LSToolParams): string | null;
|
|
66
|
-
protected createInvocation(params: LSToolParams): ToolInvocation<LSToolParams, ToolResult>;
|
|
67
|
+
protected createInvocation(params: LSToolParams, _messageBus?: MessageBus): ToolInvocation<LSToolParams, ToolResult>;
|
|
67
68
|
}
|
package/dist/src/tools/ls.js
CHANGED
|
@@ -7,7 +7,7 @@ import fs from 'fs';
|
|
|
7
7
|
import path from 'path';
|
|
8
8
|
import { BaseDeclarativeTool, BaseToolInvocation, Kind, } from './tools.js';
|
|
9
9
|
import { makeRelative, shortenPath } from '../utils/paths.js';
|
|
10
|
-
import { DEFAULT_FILE_FILTERING_OPTIONS } from '../config/
|
|
10
|
+
import { DEFAULT_FILE_FILTERING_OPTIONS } from '../config/constants.js';
|
|
11
11
|
import { ToolErrorType } from './tool-error.js';
|
|
12
12
|
class LSToolInvocation extends BaseToolInvocation {
|
|
13
13
|
config;
|
|
@@ -170,7 +170,7 @@ class LSToolInvocation extends BaseToolInvocation {
|
|
|
170
170
|
export class LSTool extends BaseDeclarativeTool {
|
|
171
171
|
config;
|
|
172
172
|
static Name = 'list_directory';
|
|
173
|
-
constructor(config) {
|
|
173
|
+
constructor(config, _messageBus) {
|
|
174
174
|
super(LSTool.Name, 'ReadFolder', 'Lists the names of files and subdirectories directly within a specified directory path. Can optionally ignore entries matching provided glob patterns.', Kind.Search, {
|
|
175
175
|
properties: {
|
|
176
176
|
path: {
|
|
@@ -220,7 +220,7 @@ export class LSTool extends BaseDeclarativeTool {
|
|
|
220
220
|
}
|
|
221
221
|
return null;
|
|
222
222
|
}
|
|
223
|
-
createInvocation(params) {
|
|
223
|
+
createInvocation(params, _messageBus) {
|
|
224
224
|
return new LSToolInvocation(this.config, params);
|
|
225
225
|
}
|
|
226
226
|
}
|
package/dist/src/tools/ls.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ls.js","sourceRoot":"","sources":["../../../src/tools/ls.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,IAAI,GAGL,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"ls.js","sourceRoot":"","sources":["../../../src/tools/ls.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,14 +4,14 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
|
|
7
|
-
import { Transport } from '@modelcontextprotocol/sdk/shared/transport.js';
|
|
8
|
-
import {
|
|
7
|
+
import type { Transport } from '@modelcontextprotocol/sdk/shared/transport.js';
|
|
8
|
+
import type { GetPromptResult, Prompt } from '@modelcontextprotocol/sdk/types.js';
|
|
9
9
|
import type { Config, MCPServerConfig } from '../config/config.js';
|
|
10
10
|
import { DiscoveredMCPTool } from './mcp-tool.js';
|
|
11
|
-
import { FunctionDeclaration } from '@google/genai';
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
11
|
+
import type { FunctionDeclaration } from '@google/genai';
|
|
12
|
+
import type { PromptRegistry } from '../prompts/prompt-registry.js';
|
|
13
|
+
import type { WorkspaceContext } from '../utils/workspaceContext.js';
|
|
14
|
+
import type { ToolRegistry } from './tool-registry.js';
|
|
15
15
|
export declare const MCP_DEFAULT_TIMEOUT_MSEC: number;
|
|
16
16
|
export type DiscoveredMCPPrompt = Prompt & {
|
|
17
17
|
serverName: string;
|
|
@@ -23,6 +23,8 @@ export type DiscoveredMCPPrompt = Prompt & {
|
|
|
23
23
|
export declare enum MCPServerStatus {
|
|
24
24
|
/** Server is disconnected or experiencing errors */
|
|
25
25
|
DISCONNECTED = "disconnected",
|
|
26
|
+
/** Server is actively disconnecting */
|
|
27
|
+
DISCONNECTING = "disconnecting",
|
|
26
28
|
/** Server is in the process of connecting */
|
|
27
29
|
CONNECTING = "connecting",
|
|
28
30
|
/** Server is connected and ready to use */
|
|
@@ -55,7 +57,6 @@ export declare class McpClient {
|
|
|
55
57
|
private client;
|
|
56
58
|
private transport;
|
|
57
59
|
private status;
|
|
58
|
-
private isDisconnecting;
|
|
59
60
|
constructor(serverName: string, serverConfig: MCPServerConfig, toolRegistry: ToolRegistry, promptRegistry: PromptRegistry, workspaceContext: WorkspaceContext, debugMode: boolean);
|
|
60
61
|
/**
|
|
61
62
|
* Connects to the MCP server.
|
|
@@ -74,7 +75,7 @@ export declare class McpClient {
|
|
|
74
75
|
*/
|
|
75
76
|
getStatus(): MCPServerStatus;
|
|
76
77
|
private updateStatus;
|
|
77
|
-
private
|
|
78
|
+
private assertConnected;
|
|
78
79
|
private discoverTools;
|
|
79
80
|
private discoverPrompts;
|
|
80
81
|
}
|
|
@@ -134,16 +135,6 @@ export declare function populateMcpServerCommand(mcpServers: Record<string, MCPS
|
|
|
134
135
|
* @returns Promise that resolves when discovery is complete
|
|
135
136
|
*/
|
|
136
137
|
export declare function connectAndDiscover(mcpServerName: string, mcpServerConfig: MCPServerConfig, toolRegistry: ToolRegistry, promptRegistry: PromptRegistry, debugMode: boolean, workspaceContext: WorkspaceContext, cliConfig: Config): Promise<void>;
|
|
137
|
-
/**
|
|
138
|
-
* Recursively validates that a JSON schema and all its nested properties and
|
|
139
|
-
* items have a `type` defined.
|
|
140
|
-
*
|
|
141
|
-
* @param schema The JSON schema to validate.
|
|
142
|
-
* @returns `true` if the schema is valid, `false` otherwise.
|
|
143
|
-
*
|
|
144
|
-
* @visiblefortesting
|
|
145
|
-
*/
|
|
146
|
-
export declare function hasValidTypes(schema: unknown): boolean;
|
|
147
138
|
/**
|
|
148
139
|
* Discovers and sanitizes tools from a connected MCP client.
|
|
149
140
|
* It retrieves function declarations from the client, filters out disabled tools,
|
|
@@ -4,21 +4,22 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
|
|
7
|
+
import { SSEClientTransport } from '@modelcontextprotocol/sdk/client/sse.js';
|
|
7
8
|
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { ListPromptsResultSchema, GetPromptResultSchema, ListRootsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
|
|
9
|
+
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
|
|
10
|
+
import { GetPromptResultSchema, ListPromptsResultSchema, ListRootsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
|
|
11
11
|
import { parse } from 'shell-quote';
|
|
12
12
|
import { AuthProviderType } from '../config/config.js';
|
|
13
13
|
import { GoogleCredentialProvider } from '../mcp/google-auth-provider.js';
|
|
14
|
+
import { ServiceAccountImpersonationProvider } from '../mcp/sa-impersonation-provider.js';
|
|
14
15
|
import { DiscoveredMCPTool } from './mcp-tool.js';
|
|
15
16
|
import { mcpToTool } from '@google/genai';
|
|
17
|
+
import { basename } from 'node:path';
|
|
18
|
+
import { pathToFileURL } from 'node:url';
|
|
16
19
|
import { MCPOAuthProvider } from '../mcp/oauth-provider.js';
|
|
17
|
-
import { OAuthUtils } from '../mcp/oauth-utils.js';
|
|
18
20
|
import { MCPOAuthTokenStorage } from '../mcp/oauth-token-storage.js';
|
|
21
|
+
import { OAuthUtils } from '../mcp/oauth-utils.js';
|
|
19
22
|
import { getErrorMessage } from '../utils/errors.js';
|
|
20
|
-
import { basename } from 'node:path';
|
|
21
|
-
import { pathToFileURL } from 'node:url';
|
|
22
23
|
import { DebugLogger } from '../debug/index.js';
|
|
23
24
|
export const MCP_DEFAULT_TIMEOUT_MSEC = 10 * 60 * 1000; // default to 10 minutes
|
|
24
25
|
/**
|
|
@@ -28,6 +29,8 @@ export var MCPServerStatus;
|
|
|
28
29
|
(function (MCPServerStatus) {
|
|
29
30
|
/** Server is disconnected or experiencing errors */
|
|
30
31
|
MCPServerStatus["DISCONNECTED"] = "disconnected";
|
|
32
|
+
/** Server is actively disconnecting */
|
|
33
|
+
MCPServerStatus["DISCONNECTING"] = "disconnecting";
|
|
31
34
|
/** Server is in the process of connecting */
|
|
32
35
|
MCPServerStatus["CONNECTING"] = "connecting";
|
|
33
36
|
/** Server is connected and ready to use */
|
|
@@ -61,7 +64,6 @@ export class McpClient {
|
|
|
61
64
|
client;
|
|
62
65
|
transport;
|
|
63
66
|
status = MCPServerStatus.DISCONNECTED;
|
|
64
|
-
isDisconnecting = false;
|
|
65
67
|
constructor(serverName, serverConfig, toolRegistry, promptRegistry, workspaceContext, debugMode) {
|
|
66
68
|
this.serverName = serverName;
|
|
67
69
|
this.serverConfig = serverConfig;
|
|
@@ -69,44 +71,27 @@ export class McpClient {
|
|
|
69
71
|
this.promptRegistry = promptRegistry;
|
|
70
72
|
this.workspaceContext = workspaceContext;
|
|
71
73
|
this.debugMode = debugMode;
|
|
72
|
-
this.client = new Client({
|
|
73
|
-
name: `gemini-cli-mcp-client-${this.serverName}`,
|
|
74
|
-
version: '0.0.1',
|
|
75
|
-
});
|
|
76
74
|
}
|
|
77
75
|
/**
|
|
78
76
|
* Connects to the MCP server.
|
|
79
77
|
*/
|
|
80
78
|
async connect() {
|
|
81
|
-
this.
|
|
79
|
+
if (this.status !== MCPServerStatus.DISCONNECTED) {
|
|
80
|
+
throw new Error(`Can only connect when the client is disconnected, current state is ${this.status}`);
|
|
81
|
+
}
|
|
82
82
|
this.updateStatus(MCPServerStatus.CONNECTING);
|
|
83
83
|
try {
|
|
84
|
-
this.
|
|
84
|
+
this.client = await connectToMcpServer(this.serverName, this.serverConfig, this.debugMode, this.workspaceContext);
|
|
85
|
+
const originalOnError = this.client.onerror;
|
|
85
86
|
this.client.onerror = (error) => {
|
|
86
|
-
if (this.
|
|
87
|
+
if (this.status !== MCPServerStatus.CONNECTED) {
|
|
87
88
|
return;
|
|
88
89
|
}
|
|
90
|
+
if (originalOnError)
|
|
91
|
+
originalOnError(error);
|
|
89
92
|
console.error(`MCP ERROR (${this.serverName}):`, error.toString());
|
|
90
93
|
this.updateStatus(MCPServerStatus.DISCONNECTED);
|
|
91
94
|
};
|
|
92
|
-
this.client.registerCapabilities({
|
|
93
|
-
roots: {},
|
|
94
|
-
});
|
|
95
|
-
this.client.setRequestHandler(ListRootsRequestSchema, async () => {
|
|
96
|
-
const roots = [];
|
|
97
|
-
for (const dir of this.workspaceContext.getDirectories()) {
|
|
98
|
-
roots.push({
|
|
99
|
-
uri: pathToFileURL(dir).toString(),
|
|
100
|
-
name: basename(dir),
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
return {
|
|
104
|
-
roots,
|
|
105
|
-
};
|
|
106
|
-
});
|
|
107
|
-
await this.client.connect(this.transport, {
|
|
108
|
-
timeout: this.serverConfig.timeout,
|
|
109
|
-
});
|
|
110
95
|
this.updateStatus(MCPServerStatus.CONNECTED);
|
|
111
96
|
}
|
|
112
97
|
catch (error) {
|
|
@@ -134,11 +119,18 @@ export class McpClient {
|
|
|
134
119
|
* Disconnects from the MCP server.
|
|
135
120
|
*/
|
|
136
121
|
async disconnect() {
|
|
137
|
-
this.
|
|
122
|
+
if (this.status !== MCPServerStatus.CONNECTED) {
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
this.updateStatus(MCPServerStatus.DISCONNECTING);
|
|
126
|
+
const client = this.client;
|
|
127
|
+
this.client = undefined;
|
|
138
128
|
if (this.transport) {
|
|
139
129
|
await this.transport.close();
|
|
140
130
|
}
|
|
141
|
-
|
|
131
|
+
if (client) {
|
|
132
|
+
await client.close();
|
|
133
|
+
}
|
|
142
134
|
this.updateStatus(MCPServerStatus.DISCONNECTED);
|
|
143
135
|
}
|
|
144
136
|
/**
|
|
@@ -151,13 +143,17 @@ export class McpClient {
|
|
|
151
143
|
this.status = status;
|
|
152
144
|
updateMCPServerStatus(this.serverName, status);
|
|
153
145
|
}
|
|
154
|
-
|
|
155
|
-
|
|
146
|
+
assertConnected() {
|
|
147
|
+
if (this.status !== MCPServerStatus.CONNECTED) {
|
|
148
|
+
throw new Error(`Client is not connected, must connect before interacting with the server. Current state is ${this.status}`);
|
|
149
|
+
}
|
|
156
150
|
}
|
|
157
151
|
async discoverTools(cliConfig) {
|
|
152
|
+
this.assertConnected();
|
|
158
153
|
return discoverTools(this.serverName, this.serverConfig, this.client, cliConfig);
|
|
159
154
|
}
|
|
160
155
|
async discoverPrompts() {
|
|
156
|
+
this.assertConnected();
|
|
161
157
|
return discoverPrompts(this.serverName, this.client, this.promptRegistry);
|
|
162
158
|
}
|
|
163
159
|
}
|
|
@@ -406,59 +402,6 @@ export async function connectAndDiscover(mcpServerName, mcpServerConfig, toolReg
|
|
|
406
402
|
updateMCPServerStatus(mcpServerName, MCPServerStatus.DISCONNECTED);
|
|
407
403
|
}
|
|
408
404
|
}
|
|
409
|
-
/**
|
|
410
|
-
* Recursively validates that a JSON schema and all its nested properties and
|
|
411
|
-
* items have a `type` defined.
|
|
412
|
-
*
|
|
413
|
-
* @param schema The JSON schema to validate.
|
|
414
|
-
* @returns `true` if the schema is valid, `false` otherwise.
|
|
415
|
-
*
|
|
416
|
-
* @visiblefortesting
|
|
417
|
-
*/
|
|
418
|
-
export function hasValidTypes(schema) {
|
|
419
|
-
if (typeof schema !== 'object' || schema === null) {
|
|
420
|
-
// Not a schema object we can validate, or not a schema at all.
|
|
421
|
-
// Treat as valid as it has no properties to be invalid.
|
|
422
|
-
return true;
|
|
423
|
-
}
|
|
424
|
-
const s = schema;
|
|
425
|
-
if (!s.type) {
|
|
426
|
-
// These keywords contain an array of schemas that should be validated.
|
|
427
|
-
//
|
|
428
|
-
// If no top level type was given, then they must each have a type.
|
|
429
|
-
let hasSubSchema = false;
|
|
430
|
-
const schemaArrayKeywords = ['anyOf', 'allOf', 'oneOf'];
|
|
431
|
-
for (const keyword of schemaArrayKeywords) {
|
|
432
|
-
const subSchemas = s[keyword];
|
|
433
|
-
if (Array.isArray(subSchemas)) {
|
|
434
|
-
hasSubSchema = true;
|
|
435
|
-
for (const subSchema of subSchemas) {
|
|
436
|
-
if (!hasValidTypes(subSchema)) {
|
|
437
|
-
return false;
|
|
438
|
-
}
|
|
439
|
-
}
|
|
440
|
-
}
|
|
441
|
-
}
|
|
442
|
-
// If the node itself is missing a type and had no subschemas, then it isn't valid.
|
|
443
|
-
if (!hasSubSchema)
|
|
444
|
-
return false;
|
|
445
|
-
}
|
|
446
|
-
if (s.type === 'object' && s.properties) {
|
|
447
|
-
if (typeof s.properties === 'object' && s.properties !== null) {
|
|
448
|
-
for (const prop of Object.values(s.properties)) {
|
|
449
|
-
if (!hasValidTypes(prop)) {
|
|
450
|
-
return false;
|
|
451
|
-
}
|
|
452
|
-
}
|
|
453
|
-
}
|
|
454
|
-
}
|
|
455
|
-
if (s.type === 'array' && s.items) {
|
|
456
|
-
if (!hasValidTypes(s.items)) {
|
|
457
|
-
return false;
|
|
458
|
-
}
|
|
459
|
-
}
|
|
460
|
-
return true;
|
|
461
|
-
}
|
|
462
405
|
/**
|
|
463
406
|
* Discovers and sanitizes tools from a connected MCP client.
|
|
464
407
|
* It retrieves function declarations from the client, filters out disabled tools,
|
|
@@ -474,6 +417,9 @@ export async function discoverTools(mcpServerName, mcpServerConfig, mcpClient, c
|
|
|
474
417
|
const debug = new DebugLogger('llxprt:mcp:discovery');
|
|
475
418
|
try {
|
|
476
419
|
debug.log(`Starting tool discovery for server: ${mcpServerName}`);
|
|
420
|
+
// Only request tools if the server supports them.
|
|
421
|
+
if (mcpClient.getServerCapabilities()?.tools == null)
|
|
422
|
+
return [];
|
|
477
423
|
const mcpCallableTool = mcpToTool(mcpClient, {
|
|
478
424
|
timeout: mcpServerConfig.timeout ?? MCP_DEFAULT_TIMEOUT_MSEC,
|
|
479
425
|
});
|
|
@@ -494,14 +440,6 @@ export async function discoverTools(mcpServerName, mcpServerConfig, mcpClient, c
|
|
|
494
440
|
debug.log(`Tool ${funcDecl.name} is disabled by configuration`);
|
|
495
441
|
continue;
|
|
496
442
|
}
|
|
497
|
-
if (!hasValidTypes(funcDecl.parametersJsonSchema)) {
|
|
498
|
-
debug.log(`Tool ${funcDecl.name} has invalid parameter schema`);
|
|
499
|
-
console.warn(`Skipping tool '${funcDecl.name}' from MCP server '${mcpServerName}' ` +
|
|
500
|
-
`because it has missing types in its parameter schema. Please file an ` +
|
|
501
|
-
`issue with the owner of the MCP server.`);
|
|
502
|
-
continue;
|
|
503
|
-
}
|
|
504
|
-
debug.log(`Adding tool ${funcDecl.name} to discovered tools`);
|
|
505
443
|
discoveredTools.push(new DiscoveredMCPTool(mcpCallableTool, mcpServerName, funcDecl.name, funcDecl.description ?? '', funcDecl.parametersJsonSchema ?? { type: 'object', properties: {} }, mcpServerConfig.trust, undefined, cliConfig));
|
|
506
444
|
}
|
|
507
445
|
catch (error) {
|
|
@@ -667,7 +605,8 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
|
|
|
667
605
|
const shouldTriggerOAuth = mcpServerConfig.httpUrl || mcpServerConfig.oauth?.enabled;
|
|
668
606
|
if (!shouldTriggerOAuth) {
|
|
669
607
|
// For SSE servers without explicit OAuth config, if a token was found but rejected, report it accurately.
|
|
670
|
-
const
|
|
608
|
+
const tokenStorage = new MCPOAuthTokenStorage();
|
|
609
|
+
const credentials = await tokenStorage.getCredentials(mcpServerName);
|
|
671
610
|
if (credentials) {
|
|
672
611
|
const hasStoredTokens = await MCPOAuthProvider.getValidToken(mcpServerName, {
|
|
673
612
|
// Pass client ID if available
|
|
@@ -721,7 +660,8 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
|
|
|
721
660
|
console.log(`Retrying connection to '${mcpServerName}' with OAuth token...`);
|
|
722
661
|
// Get the valid token - we need to create a proper OAuth config
|
|
723
662
|
// The token should already be available from the authentication process
|
|
724
|
-
const
|
|
663
|
+
const tokenStorage = new MCPOAuthTokenStorage();
|
|
664
|
+
const credentials = await tokenStorage.getCredentials(mcpServerName);
|
|
725
665
|
if (credentials) {
|
|
726
666
|
const accessToken = await MCPOAuthProvider.getValidToken(mcpServerName, {
|
|
727
667
|
// Pass client ID if available
|
|
@@ -769,7 +709,8 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
|
|
|
769
709
|
// For SSE servers, we should not trigger new OAuth flows automatically
|
|
770
710
|
const shouldTryDiscovery = mcpServerConfig.httpUrl || mcpServerConfig.oauth?.enabled;
|
|
771
711
|
if (!shouldTryDiscovery) {
|
|
772
|
-
const
|
|
712
|
+
const tokenStorage = new MCPOAuthTokenStorage();
|
|
713
|
+
const credentials = await tokenStorage.getCredentials(mcpServerName);
|
|
773
714
|
if (credentials) {
|
|
774
715
|
const hasStoredTokens = await MCPOAuthProvider.getValidToken(mcpServerName, {
|
|
775
716
|
// Pass client ID if available
|
|
@@ -810,7 +751,8 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
|
|
|
810
751
|
console.log(`Starting OAuth authentication for server '${mcpServerName}'...`);
|
|
811
752
|
await MCPOAuthProvider.authenticate(mcpServerName, oauthAuthConfig, authServerUrl);
|
|
812
753
|
// Retry connection with OAuth token
|
|
813
|
-
const
|
|
754
|
+
const tokenStorage = new MCPOAuthTokenStorage();
|
|
755
|
+
const credentials = await tokenStorage.getCredentials(mcpServerName);
|
|
814
756
|
if (credentials) {
|
|
815
757
|
const accessToken = await MCPOAuthProvider.getValidToken(mcpServerName, {
|
|
816
758
|
// Pass client ID if available
|
|
@@ -885,6 +827,21 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
|
|
|
885
827
|
}
|
|
886
828
|
/** Visible for Testing */
|
|
887
829
|
export async function createTransport(mcpServerName, mcpServerConfig, debugMode) {
|
|
830
|
+
if (mcpServerConfig.authProviderType ===
|
|
831
|
+
AuthProviderType.SERVICE_ACCOUNT_IMPERSONATION) {
|
|
832
|
+
const provider = new ServiceAccountImpersonationProvider(mcpServerConfig);
|
|
833
|
+
const transportOptions = {
|
|
834
|
+
authProvider: provider,
|
|
835
|
+
};
|
|
836
|
+
if (mcpServerConfig.httpUrl) {
|
|
837
|
+
return new StreamableHTTPClientTransport(new URL(mcpServerConfig.httpUrl), transportOptions);
|
|
838
|
+
}
|
|
839
|
+
else if (mcpServerConfig.url) {
|
|
840
|
+
// Default to SSE if only url is provided
|
|
841
|
+
return new SSEClientTransport(new URL(mcpServerConfig.url), transportOptions);
|
|
842
|
+
}
|
|
843
|
+
throw new Error('No URL configured for ServiceAccountImpersonation MCP Server');
|
|
844
|
+
}
|
|
888
845
|
if (mcpServerConfig.authProviderType === AuthProviderType.GOOGLE_CREDENTIALS) {
|
|
889
846
|
const provider = new GoogleCredentialProvider(mcpServerConfig);
|
|
890
847
|
const transportOptions = {
|
|
@@ -912,7 +869,8 @@ export async function createTransport(mcpServerName, mcpServerConfig, debugMode)
|
|
|
912
869
|
}
|
|
913
870
|
else {
|
|
914
871
|
// Check if we have stored OAuth tokens for this server (from previous authentication)
|
|
915
|
-
const
|
|
872
|
+
const tokenStorage = new MCPOAuthTokenStorage();
|
|
873
|
+
const credentials = await tokenStorage.getCredentials(mcpServerName);
|
|
916
874
|
if (credentials) {
|
|
917
875
|
accessToken = await MCPOAuthProvider.getValidToken(mcpServerName, {
|
|
918
876
|
// Pass client ID if available
|