Configured file permissions not being respected for ~/.claude/** paths
Describe the bug
Claude Code is prompting for permission when reading files under ~/.claude/ despite having explicit permission configured in settings.json.
Configuration
In .claude/settings.json:
{
"permissions": {
"Read:~/.claude/**": true
}
}
Additionally, my ~/.claude/CLAUDE.md (global instructions) explicitly states:
- **Notes Files:** `~/.claude/NOTES.md` and `~/.claude/COMPLETED_NOTES.md` - Full read/write access, modify automatically without asking
Expected behavior
Claude should be able to read ~/.claude/NOTES.md without prompting for permission, as it matches the configured Read:~/.claude/** permission pattern.
Actual behavior
When Claude attempts to read ~/.claude/NOTES.md, the system still prompts the user for permission and returns this error when rejected:
The user doesn't want to proceed with this tool use. The tool use was rejected
Steps to reproduce
- Configure
"Read:~/.claude/**": truein.claude/settings.json - Ask Claude to read a file under
~/.claude/(e.g.,~/.claude/NOTES.md) - Observe that permission is still requested despite the configuration
Environment
- Platform: macOS (Darwin 25.2.0)
- Claude Code version: v2.1.27
Impact
This breaks workflows that rely on Claude automatically managing notes/state files in ~/.claude/ without user intervention.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗