[BUG] Auto mode never appears in VS Code extension picker — server-side gate (tengu_auto_mode_state) never delivered for client_type claude-vscode

Status Open
Reported on v2.1.220
Maintainer reply None cached
Activity 5 comments · opened Jul 25, 2026

Summary

Auto mode never appears in the VS Code extension's permission-mode picker (Shift+Tab menu), even though the account is enrolled in the broader Auto mode rollout and claude --permission-mode auto works correctly from the terminal CLI on the same account/machine. This reproduces the exact symptom already reported and closed-stale in #61282, #60086, and #44941 (Linux, Windows x2) — this report adds code-level root-cause evidence from reading the compiled extension bundle directly, isolating it to a specific server-side feature gate.

Environment

  • Claude Code VS Code extension: 2.1.220 (confirmed current via marketplace at time of testing — not a stale-extension issue)
  • OS: macOS
  • Terminal CLI: same version family, works correctly (claude --permission-mode auto succeeds every time)

What we found

The extension's webview picker-building function (Ti() in the bundled webview/index.js) conditionally includes "auto" in the mode list based on a live, server-pushed field:

experimentGates.tengu_auto_mode_state === "enabled" | "opt-in"

This field is delivered via JSON-RPC from the spawned CLI subprocess at session start — it is never read from any local file, so no claudeCode.* VS Code setting, environment variable, or ~/.claude/settings.json key can force it. We confirmed none of those exist as an override.

Inspecting the account's live gate cache (~/.claude.json) shows:

  • tengu_auto_mode_config: "enabled" — the account is enrolled in the broader Auto mode feature.
  • tengu_auto_mode_statemissing entirely, not explicitly set to a disabled value. It's simply never delivered.

The extension reports client_type: "claude-vscode" to the backend (vs. plain terminal sessions). Combined with the terminal working fine on the identical account, this strongly suggests a rollout gate that keys off client_type and has not been enabled for the VS Code surface, rather than an account-level eligibility issue or a bug in the extension's own rendering logic.

What we ruled out (all tested directly, not assumed)

  • Extension staleness — confirmed on latest marketplace version (2.1.220), MD5-identical bundled CLI vs. system CLI
  • Any claudeCode.* VS Code setting exposing this — none exists
  • Any environment variable override — none found
  • Stale local cache — a full VS Code quit + reopen does not refresh the gate (tested)
  • skipAutoPermissionPrompt / other local permission flags — no effect
  • Account/model ineligibility — ruled out by the terminal CLI working correctly on the same account

Expected behavior

Auto mode should appear in the VS Code picker for any account where tengu_auto_mode_config is enabled, matching terminal CLI behavior on the same account.

Ask

Given this reproduces across at least 3 prior closed reports on different platforms over time, could someone confirm whether tengu_auto_mode_state rollout is specifically gated per client_type, and if so, get claude-vscode included? Happy to provide additional local diagnostics if useful.

View original on GitHub ↗

3 Comments

ewiger · 23 days ago

In you settings you can toggle (VsCode Version: 1.132.0):

GitHub › Copilot › Chat › Claude Agent: Allow Auto Permissions

Allow auto permission mode, which uses a model classifier to approve or deny tool operations automatically

ygouzerh · 20 days ago
In you settings you can toggle (VsCode Version: 1.132.0): > GitHub › Copilot › Chat › Claude Agent: Allow Auto Permissions Allow auto permission mode, which uses a model classifier to approve or deny tool operations automatically

This one is unfortunately only for Github Copilot, not for Claude Code, right?

ryanb8 · 19 days ago

+1, with a data point that suggests a server-side rollback around Aug 10–11 rather than "never rolled out":

Auto mode worked for me in the VS Code extension on Aug 10, 2026, and disappeared from the picker on Aug 11

Caveat - I'm terrible about letting VS code install updates and refresh extensions; so I probably skipped several versions when I tried to update...

Environment

  • macOS (arm64), extension anthropic.claude-code v2.1.228, CLI 2.1.228 (native install, versions match)
  • Max 5x plan, model claude-opus-4-8[1m] (effort: xhigh) — confirmed via /model in the extension
  • Auto mode works in the terminal CLI on the same account/model

Evidence from ~/.claude.json (flag cache re-fetched Aug 11):

  • tengu_auto_mode_state is entirely absent — not "disabled", just never delivered (matches OP)
  • tengu_auto_mode_config.enabled: "enabled", and its severityByModel includes claude-opus-4-8[1m], so account + model are eligible
  • tengu_disable_bypass_permissions_mode: false, no managed-settings.json, no disableAutoMode anywhere

Ruled out locally: version skew (CLI and extension both 2.1.228), claudeCode.environmentVariables / ANTHROPIC_MODEL overrides

Showing cached comments. Read the full discussion on GitHub ↗