[BUG] did 0.2.97 just hobble permissions?
Status Fixed / completed
Maintainer reply ✓ Yes — bcherny
Activity 13 comments · opened May 1, 2025 · closed May 1, 2025
💡 Likely answer: A maintainer (bcherny, collaborator)
responded on this thread — see the highlighted reply below.
Environment
- Platform (select one):
- [x] Anthropic API
- [ ] AWS Bedrock
- [ ] Google Vertex AI
- [ ] Other: <!-- specify -->
- Claude CLI version: <!-- output of
claude --version--> 0.2.97 - Operating System: <!-- e.g. macOS 14.3, Windows 11, Ubuntu 22.04 --> macOS
- Terminal: <!-- e.g. iTerm2, Terminal App --> Alacritty
Bug Description
previously I would run claude config add allowedTools FileEdit FileRead FileWrite Bash Grep Update Write Update WebFetch
then I'd get
claude config ls
{
"allowedTools": [
"Bash",
"FileEdit",
"FileRead",
"FileWrite",
"Grep",
"Update",
"WebFetch",
"Write",
but with the most recent update, claude seems to ask permissions for everything, write a new file at .claude/settings.local.json, mutate .gitignore and — most importantly — fail to read the config of allowedTools
so claude config add allowedTools doesn't raise an error but now has no effect?
or have I made some very rookie mistake?
13 Comments
It's possible this was a corruption in my
~/.claude.json, because it persisted after downgrading, but seems to be fixed after removing that file and starting afreshwe can close if no one else hits it
I am getting wrecked by this on multiple instances.
I too have this issue. Claude code is ignoring my previous allowed permissions stored in
~/.claude.jsonand instead tries to add permissions to.claude/settings.local.jsonin the project. But it doesn't respect those either and creates several duplicates each time I tell it to proceed and don't ask again. Claude code is also not respecting my committed.claude/settings.jsonproject settings.Running
bunx @anthropic-ai/claude-code@0.2.92fixed me up if you're having this issueI'm sure
npm i -g @anthropic-ai/claude-code@0.2.92will fix if you're using npmI see the same, nuking settings.json doesn't fix it. It also forgets if started with dangerously-skip-permissions (#929)
It definitely did this to me; I have many tools including Bash allowed in my ~/.clause/settings.json .
I thought maybe they changed the json structure, and somehow managed to make it work once with a change, but I lost the change and haven't reproduced the fix yet.
The bug was introduced in 0.2.93, downgrading works. Which is sad because the new todo list addition is really amazing!
Here's something crazy: Downgrade to 0.2.96, then try it. It works. Relaunch Claude, same version, doesn't work.
Then do the same with 0.2.97: it works, then launch, then it doesn't.
So, a theory: They're importing configs in the background upon launch into the new sqlite database, then tagging it with the version. If it's tagged with a different version, use our config files and launch an importer. If it's tagged with the same version, load config from sqlite, but the bug is in the load from sqlite.
This worked for me to pin 0.2.92:
Thanks for the reports! Should be fixed in 0.2.98.
Yay! Looks better! Thanks, so fast!
actually it wasn't always taking effect in all projects in .98. I see there's a .99 now, which ... so far seems better.
This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.