{"version":"2.1.309","anchor":"wrapper-stripping-in-command-parsing-extended-time-p-opti","canonical_anchor":"wrapper-stripping-in-command-parsing-extended-time-p-opti","heading":"Bash permission checks handle time and nohup wrappers more carefully","tier":"notice","area":"Permissions","scope":"individual","heads_up":true,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.309\/e\/wrapper-stripping-in-command-parsing-extended-time-p-opti","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.309","markdown":"### Bash permission checks handle time and nohup wrappers more carefully\n\nPermission rules now look through time and nohup wrappers more carefully, and unusual shell commands are treated with more suspicion\n\n**What**\n\nBefore Claude runs a shell command, Claude Code checks it against your permission rules, the allow and deny lists that decide what runs without asking. A wrapper is a command such as `time` or `nohup` placed in front of the real command. How these checks treat wrappers and some shell variables has changed:\n\n- Wrapper stripping now understands `time -p`. Before, only `time`, `nohup` and a following `--` were removed.\n\n- If a wrapper such as `nohup` or `time` is followed by an option Claude Code doesn't recognise, the command is left unchanged rather than guessed at.\n\n- `time` and `nohup` now refuse a wrapped command whose name is not a plain word.\n\n- Command names are normalised (put into a standard form) before rule matching, and that normalised form is also tried against your rules.\n\n- A new check strips a leading `time` (including `time --`) and runs the permission-rule match again, so a rule for `git status` could also match `time git status`. This check only applies when the remote flag `tengu_wild_octopus` is on. Nothing has been read about that flag.\n\n- The tracker that follows shell variables now gives up (treats the command as too complex) on an unset or an appended variable when the command contains an expansion that can fail while running, because whether the name is cleared cannot be checked in advance. Variable assignments placed in front of a command after such an expansion are checked too.\n\n**Why**\n\nThese changes affect which part of a command your permission rules see as the real command. In practice, fewer unusual compound commands are approved automatically, so you may see more permission prompts for them.\n\n- Area: Permissions\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 3\/5\n- Scope: individual\n- Heads-up: yes"}