diff options
Diffstat (limited to 'packages/core/src')
| -rw-r--r-- | packages/core/src/config/config.ts | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/packages/core/src/config/config.ts b/packages/core/src/config/config.ts index 9d47fb08..f81b3e32 100644 --- a/packages/core/src/config/config.ts +++ b/packages/core/src/config/config.ts @@ -71,9 +71,10 @@ export interface TelemetrySettings { logPrompts?: boolean; } -export interface ActiveExtension { +export interface GeminiCLIExtension { name: string; version: string; + isActive: boolean; } export class MCPServerConfig { @@ -97,6 +98,7 @@ export class MCPServerConfig { readonly description?: string, readonly includeTools?: string[], readonly excludeTools?: string[], + readonly extensionName?: string, ) {} } @@ -147,7 +149,8 @@ export interface ConfigParameters { maxSessionTurns?: number; experimentalAcp?: boolean; listExtensions?: boolean; - activeExtensions?: ActiveExtension[]; + extensions?: GeminiCLIExtension[]; + blockedMcpServers?: Array<{ name: string; extensionName: string }>; noBrowser?: boolean; summarizeToolOutput?: Record<string, SummarizeToolOutputSettings>; ideMode?: boolean; @@ -194,7 +197,11 @@ export class Config { private modelSwitchedDuringSession: boolean = false; private readonly maxSessionTurns: number; private readonly listExtensions: boolean; - private readonly _activeExtensions: ActiveExtension[]; + private readonly _extensions: GeminiCLIExtension[]; + private readonly _blockedMcpServers: Array<{ + name: string; + extensionName: string; + }>; flashFallbackHandler?: FlashFallbackHandler; private quotaErrorOccurred: boolean = false; private readonly summarizeToolOutput: @@ -245,7 +252,8 @@ export class Config { this.maxSessionTurns = params.maxSessionTurns ?? -1; this.experimentalAcp = params.experimentalAcp ?? false; this.listExtensions = params.listExtensions ?? false; - this._activeExtensions = params.activeExtensions ?? []; + this._extensions = params.extensions ?? []; + this._blockedMcpServers = params.blockedMcpServers ?? []; this.noBrowser = params.noBrowser ?? false; this.summarizeToolOutput = params.summarizeToolOutput; this.ideMode = params.ideMode ?? false; @@ -505,8 +513,12 @@ export class Config { return this.listExtensions; } - getActiveExtensions(): ActiveExtension[] { - return this._activeExtensions; + getExtensions(): GeminiCLIExtension[] { + return this._extensions; + } + + getBlockedMcpServers(): Array<{ name: string; extensionName: string }> { + return this._blockedMcpServers; } getNoBrowser(): boolean { |
