[BUG] Auto mode missing from VS Code extension picker on Linux despite canEnterAuto=true (works in terminal CLI and Windows extension)

Resolved 💬 5 comments Opened May 21, 2026 by JorgeTato99 Closed Jul 10, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

On Linux (Ubuntu 24.04, VS Code extension), the mode picker only shows Ask before edits, Edit automatically, Plan mode, and — after enabling "Allow dangerously skip permissions" — Bypass permissions. "Auto mode" never appears.

This is NOT an eligibility problem. The spawned CLI explicitly reports Auto mode is available. The extension Output log shows:

[auto-mode] verifyAutoModeGateAccess: enabledState=enabled disabledBySettings=false model=claude-opus-4-7[1m] modelSupported=true carouselAvailable=true canEnterAuto=true

Despite canEnterAuto=true and carouselAvailable=true, the extension webview only ever sends set_permission_mode with acceptEdits, plan, or bypassPermissionsnever auto. The backend offers Auto mode but the extension UI does not render it.

Key facts:

  • Auto mode works in the terminal CLI on the same machine/account.
  • Auto mode appears in the Windows extension picker with the same account (Claude Max, Opus 4.7).
  • Extension version 2.1.145 · CLI version 2.1.146.
  • The Linux extension build did not ship a bundled native binary (errored "native binary not found" until claudeProcessWrapper was set to an external claude).

Also recurring on every auth check (possibly related):
claude auth status parse failed: SyntaxError: Unexpected end of JSON input

What Should Happen?

"Auto mode" should appear in the VS Code extension mode picker on Linux — as it does in the terminal CLI and in the Windows extension — since the backend reports canEnterAuto=true / carouselAvailable=true and all documented requirements are met (Claude Max, Opus 4.7, Anthropic API, "Allow dangerously skip permissions" enabled).

Error Messages/Logs

[auto-mode] verifyAutoModeGateAccess: enabledState=enabled disabledBySettings=false model=claude-opus-4-7[1m] modelSupported=true disableFastModeBreakerFires=false carouselAvailable=true canEnterAuto=true

# The webview only ever requests these modes — never "auto":
webview -> set_permission_mode {"mode":"bypassPermissions","userInitiated":true}
webview -> set_permission_mode {"mode":"plan","userInitiated":true}
webview -> set_permission_mode {"mode":"acceptEdits","userInitiated":true}

# Recurring on every auth status check:
[error] claude auth status parse failed: SyntaxError: Unexpected end of JSON input

# Binary launched (extension reports 2.1.145, binary resolves to 2.1.146):
Spawning Claude with SDK query function - permission mode: acceptEdits, version: 2.1.145, /home/<user>/.local/bin/claude
Acquired PID lock for 2.1.146 ... /home/<user>/.local/share/claude/versions/2.1.146

Steps to Reproduce

  1. On Linux (Ubuntu 24.04), install the Claude Code VS Code extension (v2.1.145).
  2. Extension reports "native binary not found"; install the CLI and set claudeCode.claudeProcessWrapper to the external binary (e.g. /home/<user>/.local/bin/claude).
  3. Account meets all Auto mode requirements: Claude Max, Opus 4.7, Anthropic API.
  4. Set claudeCode.allowDangerouslySkipPermissions: true and reload the window.
  5. Open the mode picker in the extension panel (Shift+Tab to cycle).
  6. Observe: picker shows Ask before edits / Edit automatically / Plan mode / Bypass permissions — but NOT Auto mode.
  7. In the same project, run claude in the integrated terminal and press Shift+Tab → Auto mode IS available there.
  8. On Windows with the same account, the extension picker DOES show Auto mode.

Tried with no effect (in this order):

  • Enabled allowDangerouslySkipPermissions + reloaded → only surfaced Bypass, never Auto.
  • Set claudeProcessWrapper to the external binary, and also removed it → no change.
  • Full uninstall + reinstall of the extension → no change.
  • Initially ran with CLI 2.1.146 (Auto mode missing in the picker), then deliberately downgraded the CLI to 2.1.145 to align with the extension version in case version skew was the cause → Auto mode was STILL missing. The bug reproduces on BOTH 2.1.146 and 2.1.145.
  • Confirmed all Auto mode preconditions (Max plan, Opus 4.7, Anthropic API).

Claude Model

Opus

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.146 (Claude Code) — also tested 2.1.145 to match the extension version; same result

Platform

Anthropic API

Operating System

Ubuntu/Debian Linux

Terminal/Shell

VS Code integrated terminal

Additional Information

This is a UI/webview bug in the Linux extension — not a terminal, account, or config issue. The backend reports Auto mode available (canEnterAuto=true) but the extension webview never renders it. (Note: the actual issue is in the VS Code extension panel, not the terminal/shell selected above.)

Environment:

  • OS: Ubuntu 24.04 LTS, kernel 6.17.0, linux-x64
  • VS Code: 1.121.0
  • Claude Code extension: 2.1.145
  • Claude Code CLI: tested 2.1.146 first (Auto mode missing), then downgraded to 2.1.145 to match the extension — missing in BOTH
  • Plan: Claude Max · Model: Opus 4.7 · Provider: Anthropic API

Possibly related: #44941 (Auto mode missing in extension, reported on Windows; says it worked in extension 2.1.81), #56648 (claudeProcessWrapper ignored on Linux), #10500 (claudeProcessWrapper not used with useTerminal).

The Linux extension build did not bundle a native binary, forcing use of claudeProcessWrapper. This may be connected: Windows ships a bundled binary and shows Auto mode, while Linux relies on the external wrapper and does not.

Screenshots:

<img width="817" height="830" alt="Image" src="https://github.com/user-attachments/assets/59611ae0-7a8d-4744-9071-bac41bf433bb" />

<img width="490" height="449" alt="Image" src="https://github.com/user-attachments/assets/85fcb349-4413-4f6d-9d95-c2c8ed9173ef" />

<img width="2205" height="852" alt="Image" src="https://github.com/user-attachments/assets/b6cc4103-10df-4e9d-8825-2eb3e587b591" />

View original on GitHub ↗

This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗