[BUG] an invalid settings.local.json leads to silent, bad, undefined behavior
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 had an invalid settings.local.json. I found out running /status which said as such.
I was troubleshooting because my .mcp.json file was not being loaded.
Also previously I noticed that none of my allow/deny in settings.local.json was doing anything, since there are known bugs about that, I thought it was unrelated (and have always been running --dangerously-skip-permissions)
when I fixed my settings.local.json, now my allow/deny works again, and my .mcp.json is being loaded properly.
so it seems an invalid settings file just stops config from being loaded, so only defaults. The problem is that this is a silent error, and your configs just don't work.
What Should Happen?
I think you should be very explicit that there is an error with a config file, and/or just prevent claude-code from running in that situation
Error Messages/Logs
no error messages. just have to run `/status` and see the `settings.local.json` wasn't loaded.
Steps to Reproduce
I added Bash(*) to my Allow settings, which causes the settings file to be deemed invalid.
Claude Model
None
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
1.0.120 (Claude Code)
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
VS Code integrated terminal
Additional Information
_No response_
This issue has 9 comments on GitHub. Read the full discussion on GitHub ↗