[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?

View original on GitHub ↗

13 Comments

max-sixty · 1 year ago

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 afresh

we can close if no one else hits it

scottsen · 1 year ago

I am getting wrecked by this on multiple instances.

CamdenClark · 1 year ago

I too have this issue. Claude code is ignoring my previous allowed permissions stored in ~/.claude.json and instead tries to add permissions to .claude/settings.local.json in 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.json project settings.

CamdenClark · 1 year ago

Running bunx @anthropic-ai/claude-code@0.2.92 fixed me up if you're having this issue

I'm sure npm i -g @anthropic-ai/claude-code@0.2.92 will fix if you're using npm

steipete · 1 year ago

I see the same, nuking settings.json doesn't fix it. It also forgets if started with dangerously-skip-permissions (#929)

willer · 1 year ago

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.

steipete · 1 year ago

The bug was introduced in 0.2.93, downgrading works. Which is sad because the new todo list addition is really amazing!

willer · 1 year ago

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.

steipete · 1 year ago

This worked for me to pin 0.2.92:

rm -rf ~/.claude
npm uninstall -g @anthropic-ai/claude-code
unalias claude
npm i -g @anthropic-ai/claude-code@0.2.92
claude config set -g autoUpdaterStatus disabled
bcherny collaborator · 1 year ago

Thanks for the reports! Should be fixed in 0.2.98.

willer · 1 year ago

Yay! Looks better! Thanks, so fast!

willer · 1 year ago

actually it wasn't always taking effect in all projects in .98. I see there's a .99 now, which ... so far seems better.

github-actions[bot] · 1 year ago

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.