Shell-command normalization can now skip stripping VAR=value prefixes when matching permission rules
When Claude Code checks a shell command against permission rules, it first normalizes the command text by stripping leading VAR=value environment-variable assignments and shell wrapper keywords like builtin or noglob. That stripping step is now controlled by a new boolean parameter, n, which defaults to true. Several existing call sites already pass false, meaning they skip the VAR=value stripping and match against the command text as written.
This lets some permission checks see the full original command, including any environment-variable prefix, instead of always having that prefix stripped away first. That can affect whether a permission rule matches a command that starts with a variable assignment.
Each folder is interpreted on the machine the session runs on. For a Code session on an SSH host, `~` means the remote user's home, an entry that references a `%VAR%` is ignored there (environment variables belong to the machine that defin…see the edit
The finding does not say which call sites pass false or what practical difference this makes for a user writing permission rules.
VAR on Configuration reference