[BUG] VS Code Claude extension fails on diverse permission file configuration errors, but does not report them
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?
I created an empty directory, opened it in vs code, set up .claude with the total Bash permissions, initialized the directory as a repository, and told Claude to make an initial empty commit. It popped up a permission request: "git commit --allow-empty -m "$(cat <<'EOF' Getting started test 🤖 Generated with Claude Code Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> EOF )"" Pasting the permission json: "{"permissions":{
"allow":
["Bash(*)"
]}}" I told Claude to read the permissions file and it said: "This configuration allows all Bash commands to run without requiring additional approval. The file appears to have some formatting issues (line breaks in the array), but the JSON structure is valid and allows unrestricted Bash tool usage." But then I told it to make a second empty commit and the same permission request (with a different commit message) came up.
This was just a reproduction of a real problem. I have been completely unable to get Claude to recognize any permissions, and even though it reports them in its configuration (including Allow Dangerously Skip Permissions) it ignores them and asks for permission for everything except file writes.
What Should Happen?
Claude should carry out permitted actions without any permission requests.
Error Messages/Logs
Steps to Reproduce
Given above in the initial report. Incredibly easy to reproduce.
Claude Model
None
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.0.75 (Claude Code)
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
_No response_
This issue has 7 comments on GitHub. Read the full discussion on GitHub ↗