diff options
| author | Billy Biggs <[email protected]> | 2025-07-18 20:45:00 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-07-18 18:45:00 +0000 |
| commit | 18c3bf3a4206d5d3be41b2510ec3940760a15e9f (patch) | |
| tree | 960112fd2f233b53f6ea35aa777da51769617197 /packages/cli/src/ui/components/ContextSummaryDisplay.tsx | |
| parent | 9dadf2295804867d44628eda32fc1e46d80f9db3 (diff) | |
Summarize extensions and MCP servers on startup (#3977)
Diffstat (limited to 'packages/cli/src/ui/components/ContextSummaryDisplay.tsx')
| -rw-r--r-- | packages/cli/src/ui/components/ContextSummaryDisplay.tsx | 34 |
1 files changed, 29 insertions, 5 deletions
diff --git a/packages/cli/src/ui/components/ContextSummaryDisplay.tsx b/packages/cli/src/ui/components/ContextSummaryDisplay.tsx index 00a95e19..314e8ebd 100644 --- a/packages/cli/src/ui/components/ContextSummaryDisplay.tsx +++ b/packages/cli/src/ui/components/ContextSummaryDisplay.tsx @@ -13,6 +13,7 @@ interface ContextSummaryDisplayProps { geminiMdFileCount: number; contextFileNames: string[]; mcpServers?: Record<string, MCPServerConfig>; + blockedMcpServers?: Array<{ name: string; extensionName: string }>; showToolDescriptions?: boolean; } @@ -20,11 +21,17 @@ export const ContextSummaryDisplay: React.FC<ContextSummaryDisplayProps> = ({ geminiMdFileCount, contextFileNames, mcpServers, + blockedMcpServers, showToolDescriptions, }) => { const mcpServerCount = Object.keys(mcpServers || {}).length; + const blockedMcpServerCount = blockedMcpServers?.length || 0; - if (geminiMdFileCount === 0 && mcpServerCount === 0) { + if ( + geminiMdFileCount === 0 && + mcpServerCount === 0 && + blockedMcpServerCount === 0 + ) { return <Text> </Text>; // Render an empty space to reserve height } @@ -39,10 +46,27 @@ export const ContextSummaryDisplay: React.FC<ContextSummaryDisplayProps> = ({ }`; })(); - const mcpText = - mcpServerCount > 0 - ? `${mcpServerCount} MCP server${mcpServerCount > 1 ? 's' : ''}` - : ''; + const mcpText = (() => { + if (mcpServerCount === 0 && blockedMcpServerCount === 0) { + return ''; + } + + const parts = []; + if (mcpServerCount > 0) { + parts.push( + `${mcpServerCount} MCP server${mcpServerCount > 1 ? 's' : ''}`, + ); + } + + if (blockedMcpServerCount > 0) { + let blockedText = `${blockedMcpServerCount} blocked`; + if (mcpServerCount === 0) { + blockedText += ` MCP server${blockedMcpServerCount > 1 ? 's' : ''}`; + } + parts.push(blockedText); + } + return parts.join(', '); + })(); let summaryText = 'Using '; if (geminiMdText) { |
