VSCode extension ignores bypassPermissions defaultMode setting
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
- Set
"defaultMode": "bypassPermissions"in~/.claude/settings.json:
``json``
{
"permissions": {
"defaultMode": "bypassPermissions",
"allow": [...]
},
"skipDangerousModePermissionPrompt": true
}
- Open a project in VSCode with the Claude Code extension
- Ask Claude to edit a file (e.g., a markdown file in
.claude/commands/) - A permission popup appears asking "Make this edit to file.md?" with options: Yes / Yes, allow all edits this session / No
- 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: trueis 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
jqvalidation
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗