Permission Rules Settings
Permission Rules Settings
{
"permissions": {
"allow": [
"Bash(git diff *)",
"Bash(git log *)",
"Bash(npm run *)",
"Read(**)",
"Write(./src/**)"
],
"ask": [
"Bash(git commit *)",
"Bash(git push *)"
],
"deny": [
"WebFetch",
"Bash(curl *)",
"Bash(wget *)",
"Bash(rm -rf *)",
"Read(./.env)",
"Read(./secrets/**)",
"Read(~/.ssh/**)"
],
"additionalDirectories": [
"../shared-docs/",
"../design-system/"
],
"defaultMode": "acceptEdits",
"disableBypassPermissionsMode": "disable"
}
}
allow— always allow these, no confirmation prompt.ask— prompt the user for confirmation before running.deny— always block; use this for sensitive files and dangerous commands.additionalDirectories— extra directories Claude can access beyond the project root.defaultMode— the default permission mode when Claude first opens.disableBypassPermissionsMode— set to"disable"to block the--dangerously-skip-permissionsflag entirely.
Related: Permission Rules, Permission Modes, Claude Code Settings