VSCode extension ignores bypassPermissions defaultMode setting

Resolved 💬 3 comments Opened Mar 19, 2026 by evanstoddard23 Closed Mar 19, 2026

Bug Description

The VSCode extension continues to show permission popups for file edits despite defaultMode being set to "bypassPermissions" in both user and project settings.

This was working correctly until today's update (2026-03-19). The regression appears to have been introduced in v2.1.79.

Screenshots

The status bar confirms "Bypass permissions" mode is active, yet the permission popup still appears:

Permission popup appearing despite bypass mode:
!Permission popup

Status bar showing "Bypass permissions" is active:
!Status bar bypass

Steps to Reproduce

  1. Set "defaultMode": "bypassPermissions" in ~/.claude/settings.json:

``json
{
"permissions": {
"defaultMode": "bypassPermissions",
"allow": [...]
},
"skipDangerousModePermissionPrompt": true
}
``

  1. Open a project in VSCode with the Claude Code extension
  2. Ask Claude to edit a file (e.g., a markdown file in .claude/commands/)
  3. A permission popup appears asking "Make this edit to file.md?" with options: Yes / Yes, allow all edits this session / No
  4. Meanwhile the status bar at the bottom correctly shows "Bypass permissions" mode is active

Expected Behavior

No permission popup — bypassPermissions mode should skip all interactive permission prompts, as it did before today's update.

Actual Behavior

The extension shows a 3-option dialog (Yes / Yes, allow all edits this session / No) for every file edit, despite bypass mode being configured and confirmed active in the status bar.

Environment

  • Claude Code v2.1.79
  • Claude Code VSCode extension
  • macOS (Darwin 25.3.0)
  • Settings configured at both user (~/.claude/settings.json) and project (.claude/settings.json) levels
  • skipDangerousModePermissionPrompt: true is also set

Notes

  • This was working fine prior to v2.1.79 — the regression is new
  • The CLI version of Claude Code respects this setting correctly
  • The "Yes, allow all edits this session" option works as a workaround but resets each session
  • The setting is correctly present in the JSON and passes jq validation

View original on GitHub ↗

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