Feature Request: Add 'Allow always (save to settings)' permission option
Problem
Currently, when Claude Code prompts for permission to execute a command, the available options are:
- Allow once
- Allow for session
There is no option to permanently save the permission to the user's settings file (~/.claude/settings.json).
This becomes frustrating as users must repeatedly grant the same permissions across sessions.
Current Workaround
Users must manually edit ~/.claude/settings.json to add permissions, which is tedious and requires knowledge of the file structure.
Proposed Solution
Add a third option when prompting for permissions:
- "Allow always (save to settings)"
This option would:
- Allow the current action
- Automatically append the permission pattern to
~/.claude/settings.jsonunderpermissions.allow
Additional Issue
Even with permissions already configured in the settings file, Claude Code sometimes prompts again at the start of a new session. The system should better respect already-saved permissions.
Benefits
- Better UX - users don't have to repeatedly grant the same permissions across sessions
- Reduces friction for power users
- Eliminates the need to manually edit config files
- Follows the principle of progressive permission granting
Example Flow
Claude wants to run: rm -rf node_modules
[Allow once] [Allow for session] [Allow always (save to settings)] [Deny]
Selecting "Allow always" would add "Bash(rm *)" to the user's settings file permanently.
Showing cached comments. Read the full discussion on GitHub ↗
11 Comments
Found 3 possible duplicate issues:
This issue will be automatically closed as a duplicate in 3 days.
🤖 Generated with Claude Code
On the Windows Desktop App (version 1.1.381), there is no "Allow for session" option at all. We only have "Deny" and "Allow once".
It would be great to have both:
as proposed in this issue.
Here is a screenshot showing the permission prompt on Windows Desktop App. As you can see, only "Deny" and "Allow once" options are available:
<img width="816" height="358" alt="Image" src="https://github.com/user-attachments/assets/2f0771b5-e07f-42b7-83f6-ce10b81cc5e9" />
+1 for this feature. I've been experiencing the exact same friction.
My workflow pain point:
During a session, I approve commands like
npm test,npm run build,git diffetc. multiple times. Each time, I think "I should add this to my allow list later" — but by the end of the session, I've forgotten.Next session, the cycle repeats.
The core issue is that the moment of approval (mid-flow, focused on the task) is disconnected from the moment of configuration (editing settings.json, which requires context-switching).
Adding an "Allow always (save to settings)" option directly in the permission prompt would solve this perfectly — the decision happens right when the context is fresh.
This has 5+ duplicate issues, which shows clear community demand.
Would love to see this prioritized.
+1 for this feature!
OMG, been looking for a solution to this and this is the first google search. +1 bump for the feature.
+1 Still, we want this !!!!
Maybe claude is running on a isolated machine doing some isolated task where just the final result is relevant!
Until "Allow always (save to settings)" is built in, a PermissionRequest hook can implement auto-save:
Type
always allow gitto permanently auto-approve all git commands. The rule is saved to~/.claude/.always-allowand persists across sessions.This gives you the missing "Allow always (save to settings)" option — but saved to a hook-managed file instead of settings.json.
I would also add
[Allow always for this project]:[Allow once] [Allow for session] [Allow always in this project] [Allow always in all projects (save to settings)] [Deny]OMG pls, why is still not shipped!
Not trying to be annoying here, but Copilot has this and it's the first feature I'm missing after switching from Copilot CLI to Claude Code.
Currently saving to project settings and then manually copy-pasting the rules into my user claude properties. Doable, but it could be easier.