Claude Code 2.1.214: permission-check bypasses closed, dir/** glob scope narrowed
Security-weighted release closing multiple permission-check bypasses, including a PowerShell 5.1 bypass and dir/ allow rules auto-approving writes to same-named directories anywhere in the tree. Hook if: conditions using single-segment dir/ now match only <cwd>/dir, so existing hook configs may stop matching.
PUBLISHED2026-07-18
OBSERVED2026-08-11
AGE25d
SOURCES1
Permission fixes
dir/allow rules (e.g.Edit(src/)) auto-approved writes to nesteddir/directories anywhere in the tree; now scoped to<cwd>/dir- Permission-check bypass in Windows PowerShell 5.1 sessions
- Bash checks now fail closed on file-descriptor redirect forms the analyzer parsed differently than bash
- Commands over 10,000 characters always prompt instead of auto-running
- zsh variable subscripts/modifiers in
[[ ]]no longer treated as inert text - Certain
helpandmaninvocations no longer auto-approved docker(and the Podmandockershim) prompts on daemon-redirect flags:--url,--connection,--identity, Podman remote modefilewith-m/--magic-fileor-f/--files-fromnow requires permission- Remote-session permission prompts could proceed before the local confirmation dialog
Breaking
- Single-segment
dir/in hookif:conditions matches only<cwd>/dir; use/dir/**for any-depth.deny/askpermission rules keep any-depth matching.
Other
- Added the EndConversation tool, letting Claude end sessions with highly abusive users or jailbreak attempts
- OpenTelemetry:
message.uuid,client_request_id,tool_sourceattributes;CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTHfor the 60 KB truncation limit - Reasoning effort added to the
subagentStatusLinepayload - Fixed unbounded memory growth when
--settingspoints at a device file or multi-GB file; settings over 2 MiB now fail at startup - Fixed Bash killing the session when a
pkill -fpattern matched the CLI's own process (Linux) - Fixed plugins enabled via
--settingsnot loading (regression since 2.1.181) - Multiple Windows PowerShell tool fixes: stdin hangs, Unicode decode/encode crashes,
where.exe/fc.exe/diff.exenegative results as errors, UTF-16LE output redirects - Background daemon fixes: a displaced daemon deleting its successor's control socket, undeletable completed sessions, sessions dispatched from non-git folders
- Fixed session cost and token telemetry double-counting on multiple cumulative
message_deltaframes - Fixed hooks with exit code 2 not blocking when stdout JSON fails schema validation
Note: the source entry is truncated mid-bullet at the end.
COMMUNITY
No curated reactions recorded for this event. Facts and takes are kept in separate layers — community context is added by hand, never blended into the record above.