From c66961a3b6a967ff80a7115035f60c048661b683 Mon Sep 17 00:00:00 2001 From: Adam Creeger Date: Mon, 16 Feb 2026 01:56:26 -0500 Subject: [PATCH] fix(start): skip bypassPermissions prompt for non-interactive modes Skip the bypassPermissions confirmation prompt when --no-claude is passed (Claude won't launch) or in JSON mode (non-interactive). The explicit --one-shot=bypassPermissions flag is sufficient intent, and the warning is shown again when Claude launches via 'il spin'. Previously JSON mode threw an error instead of proceeding, blocking non-interactive workflows that use bypassPermissions. --- src/commands/start.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/commands/start.ts b/src/commands/start.ts index 8763257e..495b6734 100644 --- a/src/commands/start.ts +++ b/src/commands/start.ts @@ -224,11 +224,11 @@ export class StartCommand { } // Step 2.7: Confirm bypassPermissions mode if applicable - if (input.options.oneShot === 'bypassPermissions') { - // JSON mode cannot use bypassPermissions confirmation prompt - if (isJsonMode) { - throw new Error('JSON mode does not support bypassPermissions confirmation prompt') - } + // Only prompt in interactive mode when Claude is enabled. + // Skip when: --no-claude (Claude won't launch now), JSON mode (non-interactive). + // The explicit --one-shot=bypassPermissions flag is sufficient intent. + // The warning is shown again when Claude launches via 'il spin'. + if (input.options.oneShot === 'bypassPermissions' && input.options.claude !== false && !isJsonMode) { const { promptConfirmation } = await import('../utils/prompt.js') const confirmed = await promptConfirmation( 'WARNING: bypassPermissions mode will allow Claude to execute all tool calls without confirmation. ' +