Follow Discord
Sweep 27 Oct 2026 · 19:04Z Build v2.1.312 531 read Stable v2.1.308 Latest v2.1.312 Next v2.1.312 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.311 ·

Tighter auto-approval checks for date, stat and zsh builtins

Shell safety checks are stricter for date formats, stat paths, zsh stat options and zsh module builtins, with new hints on how to pass

Group of 3 You'll notice Improvements
JSON All of v2.1.311
You'll noticeTier: how much it should matter to you
1Useful: my rating, 1 to 5
2Signal: worth watching, 1 to 5
Bash SafetyArea: what it touches
ImprovementsKind: in v2.1.311,
ImprovementsSection of the release

Unclear What switches this stricter mode on, and whether it is on for a given user, is not stated.

What

Claude Code approves some read-only shell commands automatically, without asking you. The checks for date, stat and several zsh built-in commands have changed:

  • Under a safe-mode gate, date rejects the %N and %q formats and records the refusal.
  • Under the same gate, stat -c with a % format is allowed only in a narrow form, and stat paths that are dynamic or start with ~ are refused.
  • New messages explain these refusals. A word given to stat may turn into --help, and date %N/%q behave differently between versions. The messages suggest stat -c FORMAT -- "PATH", or date +%s, or doing the sum in bc or awk.
  • zsh's own stat with -A or -H is rejected, because zsh's stat builtin stores its result in the variable that option names, so the value cannot be checked in advance.
  • A set of zsh module builtins, including zformat, zparseopts, zstyle, zregexparse, getln, vared, strftime and zstat, is now blocked only when a further check says so. Before, they were blocked every time with a "can bypass security checks" refusal.

Why

Some date and stat commands that used to run automatically may now ask for permission or be refused, and Claude is told how to rewrite them so they pass. Commands that use the listed zsh builtins may also be rejected or prompt.

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 doubtWhat switches this stricter mode on, and whether it is on for a given user, is not stated.

See this entry in the whole of v2.1.311 →

Feedback