{"version":"2.1.309","anchor":"print-p-zsh-check-replaced-with-a-blanket-refusal","canonical_anchor":"print-p-zsh-check-replaced-with-a-blanket-refusal","heading":"Bash commands using print -P are now always flagged","tier":"notice","area":"Bash Safety","scope":"individual","heads_up":true,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.309\/e\/print-p-zsh-check-replaced-with-a-blanket-refusal","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.309","markdown":"### Bash commands using `print -P` are now always flagged\n\nClaude Code now flags every `print -P` command, not just ones containing command substitution\n\n**What**\n\n`print -P` is a zsh shell command that expands special codes in its text before printing. Claude Code checks Bash commands before running them. That check previously flagged `print -P` only when its text contained command substitution, which is a way of running another command inside it. It now flags every `print -P`, with the reason \"What 'print -P' expands can't be checked before it runs\".\n\n**Why**\n\nCommands that use `print -P` may ask for your permission more often.\n\n- Area: Bash Safety\n- Tier: You'll notice\n- Useful: 1\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: yes"}