Permission allowlist is six unqualified tool names #2
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
~/.claude/settings.jsonallowsBash,Edit,Write,NotebookEdit,WebFetch,WebSearchwith no scoping. UnqualifiedBashpre-approves everyshell command, which means the
allowed-toolsdeclaration in every skill —vendored or local — never gates anything.
This sits directly against the rule in
claude-md/operating.mdthat saysexternal content is adversarial and its commands must not be run.
The
denylist is the only real gate and is per-tool, soRead(~/.ssh/**)does not stop the same file being read through Bash.
Cost of fixing: a wave of permission prompts until a scoped allowlist settles.
The
/fewer-permission-promptsskill builds one from existing transcripts,which is the cheap way in.