Anthropic · 2026-09-03 · major
Claude Code 2.1.260 — a live diff panel and a permission-rule security fix
Claude Code 2.1.260 adds a /diff panel that shows uncommitted changes beside the conversation as Claude edits. It also fixes permission rules whose path contains parentheses, a bug that left folders marked read-only writable.
Claude Code 2.1.260 puts a live diff beside the conversation and repairs permission rules that quietly left folders writable.
Quick facts
| Maker | Anthropic |
|---|---|
| Version | 2.1.260 |
| Released | September 3, 2026 |
| New command | /diff (fullscreen diff panel) |
| Permission fix | Paths with parentheses no longer dropped as invalid |
| Reverted | 2.1.259's Read() deny rules on Bash arguments |
| Install | npm i -g @anthropic-ai/claude-code@2.1.260 |
What is it?
A fullscreen diff panel is the headline of Claude Code 2.1.260: /diff opens it beside the conversation and shows your uncommitted changes as Claude edits. The release also adds a likely cause for prompt-cache misses to /cost and the status line, and brings /advisor and /reload-plugins to headless sessions such as the desktop app and the Agent SDK.
How does it work?
The permission fixes are where the mechanics changed. A rule's path is compiled into a pattern, and a parenthesis inside that path was read as regex grouping — so Edit, Write and Read rules containing one were dropped as invalid or ignored by the Bash sandbox. A separate case, a pattern that cannot compile at all such as an unclosed bracket, made every file edit fail with an invalid-regular-expression error; that deny rule now guards the literal path it spells. Bash checks also stopped auto-approving zsh commands that hide a command substitution inside a REPORTTIME, REPORTMEMORY or DIRSTACKSIZE assignment.
Why does it matter?
Marking a folder read-only and having it stay writable is the kind of gap you cannot see from inside a session, so this update is worth taking even if none of the new features appeal. Version 2.1.260 also undoes a 2.1.259 change that applied Read() deny rules to Bash arguments and blocked ordinary commands. Auto-compact now triggers shortly before the 1M-token limit on Opus and Fable sessions, and /ultrareview waits up to 45 minutes instead of 30.
Who is it for?
Claude Code users and platform teams
Frequently asked questions
- Was my read-only folder actually protected before 2.1.260?
- Claude Code read a parenthesis in an Edit, Write or Read rule's path as regex grouping, so any such rule was dropped as invalid or ignored by the Bash sandbox — leaving a folder you had marked read-only writable. Version 2.1.260 parses those paths correctly. Review any permission rule of yours that uses parentheses.
- Why did Claude Code 2.1.259 start refusing npm run build?
- Claude Code 2.1.259 applied Read() deny rules to Bash arguments. Under a rule such as Read(./**/build/**) that denied npm run build in every mode, and made a command like cd … && grep ask for approval even in auto mode. Version 2.1.260 reverts that change, so those commands run normally again.
- What changed for Claude Fable 5.1 users in this release?
- Claude Fable 5.1 gains three fixes in Claude Code 2.1.260. Prompt caching now covers the context attached after tool results, which was previously re-sent as uncached input on every tool-call turn. Changing /effort mid-session no longer invalidates the cache. The /model picker also lists Fable 5.1 for organizations that can use it, instead of only accepting it typed out.
- How can I tell why my prompt cache keeps missing?
- Claude Code 2.1.260 adds a likely cause for prompt-cache misses to /cost and to the status line's prompt_cache field. Examples it names include tool definitions or the system prompt changing, or the session sitting idle past the cache TTL. Before this, a miss showed up as cost with no explanation of what invalidated it.
Try it
npm i -g @anthropic-ai/claude-code@2.1.260