{"version":"2.1.317","anchor":"shell-parser-handles-zsh-short-form-loops-and-conditio","canonical_anchor":"shell-parser-handles-zsh-short-form-loops-and-conditio","heading":"Claude Code now understands more zsh command forms when checking permissions","tier":"notice","area":"Permissions","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.317\/e\/shell-parser-handles-zsh-short-form-loops-and-conditio","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.317","markdown":"### Claude Code now understands more zsh command forms when checking permissions\n\nThe command reader now understands zsh short loops, commands after [[ ]], and the repeat, noglob and nocorrect prefixes\n\n**What**\n\nBefore running a shell command, Claude Code reads it to decide whether it needs your permission. It can now read these zsh forms:\n\n- Short loops such as `for x (a b) cmd`.\n\n- Commands that come after a `[[ ]]` test.\n\n- `repeat`, `noglob` and `nocorrect` placed in front of a command.\n\nWhen a loop's word list cannot be read safely, for example with a second parenthesis inside it, Claude Code gives a reason instead of guessing.\n\n**Why**\n\nPermission checks on zsh commands can now see what these forms actually run.\n\n- Area: Permissions\n- Tier: You'll notice\n- Useful: 1\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}