Permissions

Allow the boring, deny the irreversible, get asked about the rest

Claude wants to run a command deny rule matches? ask rule matches? allow rule matches? Blocked Asks you Runs Asks you the default no no no yes yes yes
🪤 The gotcha a review caught
uv run twine upload→ deny twine upload * doesn't match→ allow uv run * matches: it publishes
Rules match the whole command text, and uv run isn't a wrapper Claude Code strips. Keep allow patterns narrow.
79allow: tests, lint, git reads, edits in the repo
8deny: force push, rm -rf, publishing, Opus subagents