Follow Discord

Claude Code v2.1.301

321 entries read Grouped into 272 v2.1.300 → v2.1.301 Mods API: +1 added · 0 removed · 5 changed · 10 docs only Markdown JSON Follow Unofficial

You can now set CLAUDE_CODE_RETRY_WATCHDOG_MAX_USAGE_LIMIT_WAIT_MS to make a request fail instead of waiting past that time after hitting a usage limit. This release has 272 entries, and 150 of them are usable today. On 1M-context models, a new dialog can offer to auto-compact long conversations sooner. If you accept, the lower size is saved to your user settings. The setting for showing artifacts beside tool results is now CLAUDE_CODE_DAPPER_CUPCAKE, and the old CLAUDE_CODE_SQUISHY_NEWT is ignored. Programs built on the SDK can now block up to 64 MCP tools for a single turn, and they can load more plugins into a running session without a restart.

There are 12 entries in the build that are not switched on yet. Claude Code can build shorter instructions for the Read, Grep and Agent tools, but none are in use. Rewritten instructions for AskUserQuestion, the tool Claude uses to ask you questions, are prepared but not used. A slimmed-down prompt variant sits behind a remote switch that is off by default. Groundwork for routing notifications and for spotting interface freezes is present but changes nothing yet. The browser setup prompt in the desktop app and on claude.ai now uses a newly named switch, so any earlier rollout starts over.

Long-running MCP tasks now wait and retry when the server rejects their ID with error -32602. Before this fix they failed at once. Stopping a background command whose output is saved elsewhere now points the notice to that file. Sending a session to the background mid-turn now keeps pending task notices and a scheduled-job note. Checkpoint commits now skip with a git_error reason when Claude Code cannot tell whether a git operation is in progress. Archiving remote sessions from the session list is removed, and the remove option that replaces it is not switched on in this build.

Written by our agent from the shipped bundle, not by Anthropic.

Five to try today

Picked from 16 you can use now
  1. Remote-session attachments can be stored in a user-data folder behind CLAUDE_CODE_ATTACHMENTS_IN_USER_DATA

    New CLAUDE_CODE_ATTACHMENTS_IN_USER_DATA variable lets remote sessions keep attachments in a user-data folder, with retention checks and hardened writes

    Sessions & agents
  2. 'Beside tool results' switch renamed to CLAUDE_CODE_DAPPER_CUPCAKE, and messages are tagged besideToolResults

    The 'beside tool results' behaviour now reads CLAUDE_CODE_DAPPER_CUPCAKE; the old CLAUDE_CODE_SQUISHY_NEWT variable no longer does anything

    Tools & output
  3. reload_plugins can now add plugins mid-session

    The SDK reload_plugins request takes add_plugins to load extra plugin folders without restarting, refused in cloud sessions and under disableSideloadFlags

    Extensions
  4. SDK MCP servers can now carry a per-tool permission policy

    Programs hosting Claude Code can set ask or deny rules for individual tools on their in-process MCP servers, at initialize or via mcp_set_servers

    Extensions
  5. Tools can now be blocked for a single turn

    A per-turn disallowedTools list now blocks named MCP tools for one turn, feeds deny rules, and suppresses misleading tool-revoked notices

    Extensions

Want the reasoning? Read walks the 38 entries that probably matter to you, each one opening to what changed and why.

Read this release → Every row →
Reading as
Show only
Who it's for
Tier
Flag state
Names
Pick an entry · j / k steps through · rest on a row to peek
100 entries

Internal Changesopen

Continued from page 2

8 more of these are in What probably matters to you, on page 1.

6 entriesBackground Shells · none marked notable
·Internal
Under the hood
Useful1 Signal3
Background Shells unclear

Claude Code now sorts background shell commands into kinds#

Claude Code now labels each shell command as running in the foreground, kept in the background, or under a permission rule

Unclear What Claude Code does with these labels, and whether it is switched on, is not clear.

Details 0 0 Feedback
6 entriesSessions · none marked notable
·Internal
Under the hood
Useful1 Signal3
Sessions unclear

Session names can be saved somewhere other than the local alias file#

When a certain condition holds, Claude Code now saves a session's alias through a different route instead of the local alias file

Unclear It is not clear what condition makes Claude Code store the alias elsewhere, or where it goes.

Details 0 0 Feedback
·Internal
Under the hood
Useful1 Signal3
Sessions unclear

Background sessions get a second way to build their instructions#

The instructions Claude Code gives a background session can now be built a second way, while the default text stays the same

Unclear Nothing was seen choosing the second version, so whether any background session uses it yet is not known.

Details 0 0 Feedback
4 entriesBackground Tasks · none marked notable
·Internal
Under the hood
Useful1 Signal2
Background Tasks unclear

Background tasks pass more detail when they wake Claude up#

A background task that wakes Claude now passes along where its prompt came from and details about its notices

Unclear It is not clear what the added notice details or the extra MCP information change for users.

Details 0 0 Feedback
4 entriesHooks · none marked notable
·Internal
Under the hood
Useful2 Signal2
Hooks unclear

Permission decisions made by hooks now record which hook made them#

When a hook allows or blocks a tool, Claude Code now records the hook's event, where the hook came from and, for plugins, the plugin's ID

Unclear Whether Claude Code sends these details by default is not clear.

Details 0 0 Feedback
PreToolUse
3 entriesAgent Proxy · none marked notable
·Internal
Under the hood
Useful2 Signal3
Agent Proxy unclear

Working-directory report now includes the shell's folder and proxy status#

A tool that reports the working directory now also returns the shell's current folder and whether an agent proxy is in use

Unclear Which tool returns this, and whether it reaches anyone outside remote sessions, is not clear.

Details 0 0 Feedback
3 entriesConfig File · none marked notable
3 entriesEnvironment Variables · none marked notable
·Internal
Under the hood
Useful1 Signal1
Environment Variables unclear

Environment variables from global configuration are applied differently#

Environment variables from Claude Code's global configuration are now applied through a different step than before

Unclear It is not clear whether this changes which environment variables from global configuration are applied or how.

Details 0 0 Feedback
3 entriesGit · none marked notable
3 entriesPermissions · none marked notable
·Internal
Under the hood
Useful1 Signal3
Permissions unclear

The check that blocks reading denied files can now be skipped#

The check that stops Claude reading files covered by a deny rule now passes straight through when a certain condition holds

Unclear What condition makes the read-deny check end early is not known.

Details 0 0 Feedback
3 entriesPlugins · none marked notable
3 entriesResume · none marked notable
·Internal
Under the hood
Useful1 Signal1
Resume unclear

Reattaching agents on resume uses a shared step#

When a session resumes, Claude Code now reattaches its local agents through a shared step instead of its own separate loop

Unclear It is not clear whether the shared step still skips agents whose owner was not resumed.

Details 0 0 Feedback
3 entriesSDK · none marked notable
·Internal
Under the hood
Useful1 Signal2
SDK unclear

SDK-provided MCP servers are left out of some permission rule handling#

When Claude Code applies permission rules to MCP servers added while it runs, it now skips servers supplied through the Agent SDK

Unclear What skipping SDK-supplied servers here changes for a person using them is not clear.

Details 0 0 Feedback
3 entriesTelemetry · none marked notable
3 entriesTerminal UI · none marked notable
·Internal
Under the hood
Useful1 Signal1
Terminal UI unclear

Dialog height limit checks now tell drawing surfaces apart#

The check on whether a plugin dialog is too tall now matches dialogs by both request and drawing surface, using a measured height limit

Unclear It is not clear what, if anything, changes on screen as a result.

Details 0 0 Feedback
2 entriesAuth · none marked notable
·Internal
Under the hood
Useful1 Signal0
Auth unclear

Sign-in refresh lock takes extra settings#

The lock Claude Code uses while renewing your sign-in now adds extra settings based on where its lock file lives

Unclear What the extra lock settings change is not shown.

Details 0 0 Feedback
2 entriesCloud Sessions · none marked notable
2 entriesCompaction · none marked notable
2 entriesDebug Logs · none marked notable
2 entriesEnvironment Detection · none marked notable
·Internal
Under the hood
Useful1 Signal2
Environment Detection unclear

WSL, hypervisor and Docker detection can now be skipped#

The checks that detect WSL, a hypervisor or Docker can now return early without probing when a certain condition holds

Unclear It is not clear what condition causes these environment checks to be skipped.

Details 0 0 Feedback
·Internal
Under the hood
Useful1 Signal1
Environment Detection unclear

WSL detection now checks another condition first#

Claude Code's check for Windows Subsystem for Linux now runs an earlier environment check that can rule WSL out first

Unclear It is not clear which environments the new earlier check rules out, so it is unclear who is affected.

Details 0 0 Feedback
2 entriesMessages · none marked notable
·Internal
Under the hood
Useful1 Signal1
Messages unclear

Message check now counts reasoning blocks, plus small internal additions#

A check that scans messages now counts the model's reasoning blocks and no longer reads a stale value for tool calls; subagent side files go under a folder

Unclear It is not stated what the message check decides, so the visible effect of counting reasoning blocks is unclear.

Details 0 0 Feedback
·Internal
Under the hood
Useful1 Signal0
Messages unclear

Check for messages carrying tool errors moved into a shared routine#

Claude Code's check for messages that carry a tool error now runs through a shared routine, which may be a tidy-up with no visible effect

Unclear Whether this changes behaviour or is only a reorganisation is not shown.

Details 0 0 Feedback
2 entriesModels · none marked notable
·Internal
Under the hood
Useful1 Signal1
Models unclear

Different conditions now decide when saved model capability data is used#

Claude Code changed the checks that decide when it reads or uses its saved record of what each model can do

Unclear It is not clear under which conditions the lookups now stop early, so the effect on any given setup is unknown.

Details 0 0 Feedback
2 entriesSkills · none marked notable
2 entriesSubagents · none marked notable
·Internal
Under the hood
Useful2 Signal3
Subagents unclear

Subagents can get a second version of their instructions#

Claude Code now has a second, leaner version of the instructions it gives subagents, used only when a certain condition holds

Unclear It is not clear what decides which version of the instructions a subagent receives.

Details 0 0 Feedback
2 entriesTool Prompts · none marked notable
·Internal
Under the hood
Useful1 Signal3
Tool Prompts unclear

Idle-wait tool instructions explain events that arrive after the turn#

Text describing the idle-wait tool now says scheduled prompts and held messages arrive only after the turn ends, even if no event was delivered

Unclear It is not clear whether this tool and its new text are in use in any live prompt.

Details 0 0 Feedback
2 entriesUsage & Limits · none marked notable
2 entries

Removedopen

1 more of these is in What probably matters to you, on page 1.

Verbatim
Official · Anthropic

Anthropic’s official release notes

Published verbatim by Anthropic for v2.1.301. Text is unmodified from the upstream changelog. Everything else on this page came out of the bundle instead, which is why the two lists don't match.

Of these 51 bullets, 8 name something an entry on this page also names, 15 name something no entry here does, and 28 name nothing specific enough to line up either way. The pairings are made on names both sides wrote down, a flag or a setting or a slash command, so read one as probably the same thing rather than as a fact, and read the middle number as candidates rather than as a miss count.

A model matched these bullets to the GitHub issues they fix, so a link can be wrong.

System prompt

No change to the system prompt since v2.1.300.

Claude Code, interactive mode

Documentation

What the docs did around this release

860 documentation changes were recorded within 24 hours either side of this release, nearest first. The closest 12 are below. They're here because they happened near this release in time. That's not a claim that this release caused the edit, or that the page documents anything in it.

Switches

Every name in this release

The 36 literal strings found in the bundle, with the number of entries that name each one. Picking one searches for it. A name is here because this build's code mentions it, which is not the same as it working or being finished.

Slash commands

CLI flags

Environment variables

Settings and names in the code

Feedback