{"version":"2.1.318","anchor":"shell-prefix-glob-disable-snippet-gets-a-dynamic-suffix","canonical_anchor":"shell-prefix-glob-disable-snippet-gets-a-dynamic-suffix","heading":"The shell setup line that turns off extended globbing now has extra text added","tier":"internal","area":"Bash Tool","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.318\/e\/shell-prefix-glob-disable-snippet-gets-a-dynamic-suffix","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.318","markdown":"### The shell setup line that turns off extended globbing now has extra text added\n\nThe setup line Claude Code runs before shell commands to switch off zsh extended globbing now ends with a variable part instead of fixed text\n\n**Unclear.** It is unclear what text is now added to the end of the setup line, so its effect on commands is not known.\n\n**What**\n\nBefore running a shell command, Claude Code can run a setup line that switches off some zsh pattern-matching features (globbing, where symbols like `*` expand into file names). That line used to be fixed: `setopt NO_EXTENDED_GLOB NO_BARE_GLOB_QUAL 2>\/dev\/null || true`. It now ends with extra text that Claude Code works out at run time.\n\nThis applies when `CLAUDE_CODE_SHELL_PREFIX` is set, and when the shell is zsh.\n\n**Why**\n\nThis line runs before your commands, so a change to it can affect how those commands behave in your shell.\n\n- Area: Bash Tool\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}