{"version":"2.1.305","anchor":"rm-with-command-substitution-prompt-now-applies-to-extra-com","canonical_anchor":"rm-with-command-substitution-prompt-now-applies-to-extra-com","heading":"Approval prompt for rm on a command's output now checks more of the command","tier":"notice","area":"Bash Safety","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.305\/e\/rm-with-command-substitution-prompt-now-applies-to-extra-com","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.305","markdown":"### Approval prompt for `rm` on a command's output now checks more of the command\n\nThe approval check for a recursive `rm` aimed at a command's output now also looks at extra parts of the command\n\n**Unclear.** Which extra parts of a command are now checked is not stated.\n\n**What**\n\nClaude Code asks for approval before a recursive `rm` whose target is entirely the output of a command substitution, such as `rm -rf \"$(pwd)\"`. A command substitution is a `$(...)` inside a command, replaced by whatever the inner command prints. This check now also looks at additional command text as well as the separate commands it already examined.\n\nSetting `CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT` still turns this check off.\n\n**Why**\n\nThe safety check now covers more ways of writing a shell command.\n\n- Flag `tengu_iridescent_boot`: Not enough to say (read for one account on one subscription tier against v2.1.305; this account: no value returned, anonymous baseline: no value returned, compiled default: on) These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.\n- Area: Bash Safety\n- Tier: You'll notice\n- Useful: 1\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}