What
Before Claude Code runs a shell command, it reads the command to decide whether it is safe or needs your permission. That reading is now stricter.
- Arguments after builtins: arguments that follow builtins which set variables, such as
exportordeclare, are now checked too. Before, assignments were simply skipped and the first word that was not an assignment ended the check. builtin -p: this form is now treated as a command lookup that runs nothing. One member says this applies when an internal check passes.- Glob characters: wildcard characters such as
*,?and[in those arguments are now checked. - Variable assignments: assignments written before certain commands are now flagged under the same condition. Before, only the
vandVoptions set that flag.
Why
This changes which commands Claude Code treats as fully understood without running them. A command it now reads more carefully may ask for your permission where it did not before.