diff --git a/docs/cli/settings.md b/docs/cli/settings.md index 83c3874f06..8a5c888db6 100644 --- a/docs/cli/settings.md +++ b/docs/cli/settings.md @@ -62,6 +62,7 @@ they appear in the UI. | Hide Model Info | `ui.footer.hideModelInfo` | Hide the model name and context usage in the footer. | `false` | | Hide Context Window Percentage | `ui.footer.hideContextPercentage` | Hides the context window remaining percentage. | `true` | | Hide Footer | `ui.hideFooter` | Hide the footer from the UI | `false` | +| Hide Footer During Approval | `ui.hideFooterDuringApproval` | Hide the footer when a tool approval request is displayed. | `true` | | New Footer Layout | `ui.newFooterLayout` | Use the new 2-row layout with inline tips. | `"legacy"` | | Show Tips | `ui.showTips` | Show informative tips on the right side of the status line. | `true` | | Show Witty Phrases | `ui.showWit` | Show witty phrases while waiting. | `true` | diff --git a/docs/reference/configuration.md b/docs/reference/configuration.md index c74a6938ea..c523e1dbda 100644 --- a/docs/reference/configuration.md +++ b/docs/reference/configuration.md @@ -275,6 +275,10 @@ their corresponding top-level category object in your `settings.json` file. - **Description:** Hide the footer from the UI - **Default:** `false` +- **`ui.hideFooterDuringApproval`** (boolean): + - **Description:** Hide the footer when a tool approval request is displayed. + - **Default:** `true` + - **`ui.newFooterLayout`** (enum): - **Description:** Use the new 2-row layout with inline tips. - **Default:** `"legacy"` diff --git a/packages/cli/src/config/settingsSchema.ts b/packages/cli/src/config/settingsSchema.ts index 4933de74a9..98387a561e 100644 --- a/packages/cli/src/config/settingsSchema.ts +++ b/packages/cli/src/config/settingsSchema.ts @@ -619,6 +619,16 @@ const SETTINGS_SCHEMA = { description: 'Hide the footer from the UI', showInDialog: true, }, + hideFooterDuringApproval: { + type: 'boolean', + label: 'Hide Footer During Approval', + category: 'UI', + requiresRestart: false, + default: true, + description: + 'Hide the footer when a tool approval request is displayed.', + showInDialog: true, + }, newFooterLayout: { type: 'enum', label: 'New Footer Layout', diff --git a/packages/cli/src/ui/__snapshots__/App.test.tsx.snap b/packages/cli/src/ui/__snapshots__/App.test.tsx.snap index e498fb7bd0..d46985352b 100644 --- a/packages/cli/src/ui/__snapshots__/App.test.tsx.snap +++ b/packages/cli/src/ui/__snapshots__/App.test.tsx.snap @@ -136,7 +136,7 @@ HistoryItemDisplay │ Allow execution of: 'ls'? │ │ │ │ ● 1. Allow once │ -│ 2. Allow for this session │ +│ 2. Allow for this session Enter to select · ↑/↓ to navigate · Esc to cancel │ │ 3. No, suggest changes (esc) │ │ │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ diff --git a/packages/cli/src/ui/components/Composer.tsx b/packages/cli/src/ui/components/Composer.tsx index 849187ce64..b46e994cf9 100644 --- a/packages/cli/src/ui/components/Composer.tsx +++ b/packages/cli/src/ui/components/Composer.tsx @@ -751,6 +751,8 @@ export const Composer = ({ isFocused = true }: { isFocused?: boolean }) => { {showUiDetails && !settings.merged.ui.hideFooter && + (!hasPendingActionRequired || + !settings.merged.ui.hideFooterDuringApproval) && !isScreenReaderEnabled &&