summaryrefslogtreecommitdiff
path: root/packages/cli/src/ui/components/messages/ToolConfirmationMessage.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'packages/cli/src/ui/components/messages/ToolConfirmationMessage.tsx')
-rw-r--r--packages/cli/src/ui/components/messages/ToolConfirmationMessage.tsx32
1 files changed, 32 insertions, 0 deletions
diff --git a/packages/cli/src/ui/components/messages/ToolConfirmationMessage.tsx b/packages/cli/src/ui/components/messages/ToolConfirmationMessage.tsx
index b747cabc..e1e53ff6 100644
--- a/packages/cli/src/ui/components/messages/ToolConfirmationMessage.tsx
+++ b/packages/cli/src/ui/components/messages/ToolConfirmationMessage.tsx
@@ -115,6 +115,38 @@ export const ToolConfirmationMessage: React.FC<
},
{ label: 'No (esc)', value: ToolConfirmationOutcome.Cancel },
);
+ } else if (confirmationDetails.type === 'info') {
+ const infoProps = confirmationDetails;
+ const displayUrls =
+ infoProps.urls &&
+ !(infoProps.urls.length === 1 && infoProps.urls[0] === infoProps.prompt);
+
+ bodyContent = (
+ <Box flexDirection="column" paddingX={1} marginLeft={1}>
+ <Text color={Colors.AccentCyan}>{infoProps.prompt}</Text>
+ {displayUrls && infoProps.urls && infoProps.urls.length > 0 && (
+ <Box flexDirection="column" marginTop={1}>
+ <Text>URLs to fetch:</Text>
+ {infoProps.urls.map((url) => (
+ <Text key={url}> - {url}</Text>
+ ))}
+ </Box>
+ )}
+ </Box>
+ );
+
+ question = `Do you want to proceed?`;
+ options.push(
+ {
+ label: 'Yes, allow once',
+ value: ToolConfirmationOutcome.ProceedOnce,
+ },
+ {
+ label: 'Yes, allow always',
+ value: ToolConfirmationOutcome.ProceedAlways,
+ },
+ { label: 'No (esc)', value: ToolConfirmationOutcome.Cancel },
+ );
} else {
// mcp tool confirmation
const mcpProps = confirmationDetails as ToolMcpConfirmationDetails;