Plan mode ignores --dangerously-skip-permissions, and 'allow all' approvals don't stick for heredoc/brace bash commands
Summary
Two related permission-system frustrations:
1. Plan mode ignores --dangerously-skip-permissions
When launching Claude Code with --dangerously-skip-permissions and then entering plan mode (Shift+Tab), Claude still prompts for permission on every tool call. Expected: the global skip flag should apply, or at minimum the behavior should be documented and there should be a way to plan-without-prompts. Current behavior makes plan mode unusable for users who have explicitly opted into skip-permissions.
2. \"Allow all in this project\" doesn't persist for bash commands containing braces/quotes
Even after selecting \"Yes, allow all in this project\" for shell commands, the same/similar bash invocations re-prompt repeatedly (observed 4+ times in one session). The prompt shows a warning like:
Contains brace with quote character (expansion obfuscation) Do you want to proceed?
Example command that re-prompted despite prior approval:
\\\bash\
cat > /tmp/extract_cols.pl <<'PERLEOF'
...
PERLEOF
chmod +x /tmp/extract_cols.pl
perl /tmp/extract_cols.pl \"/c/Users/.../some/path\"
\\
It looks like the brace/quote heuristic (\"expansion obfuscation\") bypasses the project-level allowlist entirely, forcing re-approval every time. This makes the allowlist feel broken — users approve, then get asked again seconds later for what is effectively the same operation.
Why this matters
The combination means there is no reliable way to grant trust:
--dangerously-skip-permissionsdoesn't apply in plan mode- Project-level \"allow all\" doesn't apply to anything the brace/quote heuristic flags
Power users end up mashing \"Yes\" repeatedly for the same commands, which trains them to approve without reading — the opposite of what the permission system is trying to achieve.
Requests
- Either honor
--dangerously-skip-permissionsin plan mode, or add a documented plan-mode-specific equivalent. - Allow project-level approvals to cover commands flagged by the brace/quote heuristic, OR show a one-time \"trust this pattern\" option, OR at minimum remember the exact command for the session.
Environment
- Platform: Windows 11, bash shell
- Claude Code CLI
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗