[Bug] Bash tool authorization settings not persisting in settings.local.json
Bug Description
Claude Code keeps interrupting to ask for permission to use Bash commands. I always respond with option 2, and it adds a very specific key to "settings.local.json" (useless).
I've already manually edited "settings.local.json", adding: "Bash", "Bash()", "Bash(:*)", and it ignores it and continues asking for permission.
And whenever I authorize with option 2 (to update settings.local.json), it deletes all my keys and adds a very specific key.
If I fail to type "2", Claude pauses indefinitely until I return. This is very counterproductive because it prevents me from doing other activities by standing still waiting for prompts from Claude to repeatedly authorize something that is already authorized.
How can I solve this permanently?
Environment Info
- Platform: darwin
- Terminal: vscode
- Version: 2.0.55
- Feedback ID: 6dbee30f-5ecb-4868-ab87-032acc3a58e3
Errors
[{"error":"Error: NON-FATAL: Lock acquisition failed for /Users/gcherem/.local/share/claude/versions/2.0.55 (expected in multi-process scenarios)\n at $T1 (/$bunfs/root/claude:2667:1622)\n at HXL (/$bunfs/root/claude:2667:1300)\n at processTicksAndRejections (native:7:39)","timestamp":"2026-02-06T16:25:13.444Z"},{"error":"Error\n at dq (/$bunfs/root/claude:27:1143)\n at <anonymous> (/$bunfs/root/claude:32:10086)\n at emit (node:events:92:22)\n at endReadableNT (internal:streams/readable:862:50)\n at processTicksAndRejections (native:7:39)\n at request (/$bunfs/root/claude:34:2147)\n at processTicksAndRejections (native:7:39)","timestamp":"2026-02-06T16:25:33.557Z"},{"error":"Error\n at dq (/$bunfs/root/claude:27:1143)\n at <anonymous> (/$bunfs/root/claude:32:10086)\n at emit (node:events:92:22)\n at endReadableNT (internal:streams/readable:862:50)\n at processTicksAndRejections (native:7:39)\n at request (/$bunfs/root/claude:34:2147)\n at processTicksAndRejections (native:7:39)","timestamp":"2026-02-06T16:26:15.137Z"},{"error":"Error\n at dq (/$bunfs/root/claude:27:1143)\n at <anonymous> (/$bunfs/root/claude:32:10086)\n at emit (node:events:92:22)\n at endReadableNT (internal:streams/readable:862:50)\n at processTicksAndRejections (native:7:39)\n at request (/$bunfs/root/claude:34:2147)\n at processTicksAndRejections (native:7:39)","timestamp":"2026-02-06T16:26:39.615Z"},{"error":"Error\n at dq (/$bunfs/root/claude:27:1143)\n at <anonymous> (/$bunfs/root/claude:32:10086)\n at emit (node:events:92:22)\n at endReadableNT (internal:streams/readable:862:50)\n at processTicksAndRejections (native:7:39)\n at request (/$bunfs/root/claude:34:2147)\n at processTicksAndRejections (native:7:39)","timestamp":"2026-02-06T16:31:59.222Z"},{"error":"Error\n at dq (/$bunfs/root/claude:27:1143)\n at <anonymous> (/$bunfs/root/claude:32:10086)\n at emit (node:events:92:22)\n at endReadableNT (internal:streams/readable:862:50)\n at processTicksAndRejections (native:7:39)\n at request (/$bunfs/root/claude:34:2147)\n at processTicksAndRejections (native:7:39)","timestamp":"2026-02-06T16:32:16.591Z"},{"error":"Error\n at dq (/$bunfs/root/claude:27:1143)\n at <anonymous> (/$bunfs/root/claude:32:10086)\n at emit (node:events:92:22)\n at endReadableNT (internal:streams/readable:862:50)\n at processTicksAndRejections (native:7:39)\n at request (/$bunfs/root/claude:34:2147)\n at processTicksAndRejections (native:7:39)","timestamp":"2026-02-06T16:32:58.599Z"},{"error":"Error\n at dq (/$bunfs/root/claude:27:1143)\n at <anonymous> (/$bunfs/root/claude:32:10086)\n at emit (node:events:92:22)\n at endReadableNT (internal:streams/readable:862:50)\n at processTicksAndRejections (native:7:39)\n at request (/$bunfs/root/claude:34:2147)\n at processTicksAndRejections (native:7:39)","timestamp":"2026-02-06T16:33:16.923Z"}]This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗