Two days after the 2.1.265/266 double act, 2.1.267 arrives — and it’s longer still. Over fifty lines. Little of it is new; a lot of it is cleanup.
The two new things
maxEffortLevel caps the effort level, either globally or per model under modelSettings. The cap holds across every provider, Bedrock, Vertex and Foundry included. Users can still pick something lower. This is a cost lever for admins, not a feature for solo developers — which fits what I wrote about the last release: the work is going into team infrastructure.
--system-prompt-snapshot off renders the system prompt fresh on every request instead of reusing the one recorded in the conversation. Handy when you’re iterating on prompt text and don’t want a new session for every edit.
The cache, again
Roughly half the changelog is about prompt-cache hits. A few examples:
- An MCP server re-sending a tool the model already loaded would throw away earlier reasoning. So would a tool vanishing mid-conversation because a server dropped or an upgrade ran.
/modelre-sent every tool definition on a model switch — a guaranteed cache miss. Commit and PR attribution text now arrives as a conversation note that updates on model changes instead.- Resumed sessions rewrote earlier MCP tool announcements and lost extended thinking in the process.
- Resuming a
-pconversation interactively no longer changes the system prompt prefix. - A background worker was adding
EnterWorktreeto the conversation’s tool block mid-session.
That’s two releases in a row with this block. Someone at Anthropic clearly went looking for every place the cache breaks, and found plenty.
Security, twice fail-closed
A marketplace entry whose path contained a backslash could bypass the containment check on macOS and Linux. Fixed.
And the managed lists allowedHttpHookUrls, httpHookAllowedEnvVars and allowedChannelPlugins now admit nothing when they’re unreadable — they used to admit everything. Both fixes point the same way: when in doubt, shut it.
Small stuff worth noticing
Large sessions with transcripts over 5 MB no longer drop parallel tool calls and hook output when reloaded. /context rendered blank on mobile clients. claude remote-control used to die after about thirty days when its server credential expired; the host now re-registers and keeps going. And effort: frontmatter on commands, skills and subagents was ignored on models whose default effort is pinned — Opus 4.7, Opus 4.8 and Fable 5.
Cowork gets its own fix: scheduled tasks in the cloud failed at startup for organizations whose managed settings require sandboxing.
Then a stack of VS Code repairs, including an extension host that pegged 100 percent CPU on transcripts containing a cyclic parent link.
Reading it
A changelog this long with no real headline feature is a good sign. Cache hits and fail-closed defaults are invisible — you notice them on the bill and in the absence of trouble. If long sessions have felt pricier than they used to: update.
Sources: Claude Code changelog