Sweep 19 Sep 2026 · 02:36Z Build v2.1.278 500 read Stable v2.1.267 Latest v2.1.278 Next v2.1.278 Feeds RSS JSON llms.txt Unofficial
Claude Code v2.1.273 ·

Bash 'too complex' command handling reworked with a per-reason-kind table gating the outside-working-directory read block

Bash's 'too complex to check' read-block guard now applies via a general table covering more refusal reasons, not just one hardcoded case

TierYou'll noticehow much it should matter to you
Useful2my rating, 1 to 5
Signal1worth watching, 1 to 5
AreaBash Safetywhat it touches
KindImprovementsin v2.1.273,
You'll notice

Bash's 'too complex to check' read-block guard now applies via a general table covering more refusal reasons, not just one hardcoded case

What

When permissions.blockReadsOutsideWorkingDirectories is turned on (which makes file tools refuse reads outside your designated working directories), Bash commands that can't be reliably checked against that rule are refused. Previously this only applied to commands flagged as "too complex." Now a table of refusal reasons decides which ones trigger the same refusal, including: too-complex, semantics, multi-cd, shell-operators, cd-git-compound, and process-substitution. Other reasons, like dangerous-path, flag-validation, net-redirect, and sed-dangerous, are explicitly excluded.

Why

This broadens the read-block safety net to more kinds of Bash commands that are hard to statically verify, closing gaps where a command could previously slip past the outside-working-directory read restriction just because it wasn't classified as "too complex."

Read from
Names in the bundleblockReadsOutsideWorkingDirectories
Since it was published

The entry above is what we published on the day. These lines were added later, as Anthropic's own pages caught up, and they sit beside the original rather than replacing it.

Added since A small documentation edit on How Claude remembers your project touched a line naming blockReadsOutsideWorkingDirectories after this was published. When you set it in a project's `.claude/settings.json` or `.claude/settings.local.json`, Claude Code honors it under the same [workspace trust rule as hooks in settings files](/docs/en/permissions#what-runs-before-you-trust-a-folder). Whil… memory see the edit
How sure we are
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubtWhether this behavior is active for this site's account is not established; the related gate is unread.
Anthropic's documentation agreesA small documentation edit on How Claude remembers your project touched a line naming blockReadsOutsideWorkingDirectories after this was…
Anthropic's release notes agreeFixed Bash commands the permission checker cannot fully analyze skipping the prompt under permissions.blockReadsOutsideWorkingDirectories…

See this entry in the whole of v2.1.273 →