"Always allow access from this project" permission not persisted to settings.local.json
Resolved 💬 2 comments Opened Sep 11, 2025 by royliu-sage Closed Sep 12, 2025
Description
When selecting "Yes, and always allow access to [directory] from this project" in the permission prompt, the permission is not saved to the project's .claude/settings.local.json file, despite the "always" promise in the option text.
Current Behavior
- User is prompted for directory access permission (e.g.,
mkdir -p /Users/rliu/Dev/docs/WeeklyLogs/Reports) - User selects Option 2: "Yes, and always allow access to Reports/ from this project"
- Permission works for the current session
- Permission is NOT saved to project's
.claude/settings.local.json - User will be prompted again in future sessions
Expected Behavior
When selecting "always allow... from this project":
- Permission should be saved to
/path/to/project/.claude/settings.local.json - Future sessions from the same project should not prompt for the same permission
- The permission should be visible in the settings file
Steps to Reproduce
- Start Claude Code in a project directory
- Run a command that requires permission for an external directory (e.g.,
mkdir -p /external/path) - Choose "Yes, and always allow access to [directory] from this project"
- Check project's
.claude/settings.local.json- permission is not added - Restart Claude Code and try the same command - will be prompted again
Evidence
Before granting permission:
{
"permissions": {
"allow": [
"mcp__zen__chat",
"mcp__roy-jira__jira_search",
"Read(//Users/rliu/.claude/**)",
"mcp__github__list_pull_requests"
]
}
}
After granting "always allow from this project":
Same content - no new permission added for the directory access.
Testing shows:
- Permission works in current session (can create directories without further prompts)
- Permission is stored in runtime/session memory only
- Not persisted to settings file as promised by "always"
Impact
- Misleading UX - "always" implies persistence but doesn't deliver
- Workflow interruption - users must re-approve permissions every session
- Contradicts the explicit promise in the option text
Suggested Fix
Either:
- Actually persist the permission to project's
settings.local.jsonwhen Option 2 is selected - Change the wording from "always allow" to "allow for this session" to match actual behavior
Environment
- Claude Code (CLI version)
- Platform: darwin
- Project path: /Users/rliu/projects/Hackathon/2025.09
- Settings file: /Users/rliu/projects/Hackathon/2025.09/.claude/settings.local.json
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗