VS Code extension ignores initialPermissionMode on resumed conversations
Bug Description
The VS Code extension does not respect claudeCode.initialPermissionMode: "bypassPermissions" when resuming older conversations. Each time I click into a previous chat, it reverts to the default permission mode (prompting for every edit), even though bypass is configured everywhere.
New chats sometimes pick it up, but resumed conversations consistently ignore it.
Configuration (all correctly set)
VS Code settings.json:
"claudeCode.allowDangerouslySkipPermissions": true,
"claudeCode.initialPermissionMode": "bypassPermissions"
~/.claude/settings.json:
"permissions": {
"allow": ["Bash(*)", "Edit(*)", "Write(*)", "Read(*)", "WebSearch"],
"defaultMode": "bypassPermissions"
}
~/.claude/settings.local.json:
"permissions": {
"defaultMode": "bypassPermissions"
}
Steps to Reproduce
- Configure all settings above
- Restart VS Code
- Open an older/resumed conversation
- Ask Claude to edit a file
- Claude prompts for edit permission despite bypass mode being configured
Expected Behavior
Bypass permissions mode should persist across all conversations (new and resumed), matching the configured initialPermissionMode.
Actual Behavior
Resumed conversations revert to ask/edit permission mode. Manually switching to bypass within the chat works, but resets when switching to a different conversation.
Environment
- Windows 11 Enterprise 10.0.22631
- VS Code (latest)
- Claude Code VS Code extension
- Model: claude-opus-4-6 (1M context)
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗