# Claude Code v2.1.301

> Claude Code v2.1.301, released 15 Oct 2026 (2026-10-15). 272 entries read out of the shipped bundle. Unofficial, and not affiliated with Anthropic.

[Web version](https://changelogs.core-directive.com/v/2.1.301)

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.

## Sections

Each section is its own markdown document of whole entries, in pages of about 40 KB. The whole release in one document is [full.md](https://changelogs.core-directive.com/v/2.1.301/full.md).

- [What probably matters to you](https://changelogs.core-directive.com/v/2.1.301/what-probably-matters-to-you.md): 38 entries, 2 pages
- [Improvements](https://changelogs.core-directive.com/v/2.1.301/improvements.md): 101 entries, 3 pages
- [Bug Fixes](https://changelogs.core-directive.com/v/2.1.301/bug-fixes.md): 24 entries
- [In Development](https://changelogs.core-directive.com/v/2.1.301/in-development.md): 7 entries
- [Internal Changes](https://changelogs.core-directive.com/v/2.1.301/internal-changes.md): 100 entries, 3 pages
- [Removed](https://changelogs.core-directive.com/v/2.1.301/removed.md): 2 entries

## What probably matters to you

The first 10 of 38, one line each. The section's own pages have every one in full.

- [Remote-session attachments can be stored in a user-data folder behind CLAUDE_CODE_ATTACHMENTS_IN_USER_DATA](https://changelogs.core-directive.com/v/2.1.301/e/remote-session-attachments-in-user-data-path-env-gated-and.json): New `CLAUDE_CODE_ATTACHMENTS_IN_USER_DATA` variable lets remote sessions keep attachments in a user-data folder, with retention checks and hardened writes
- ['Beside tool results' switch renamed to CLAUDE_CODE_DAPPER_CUPCAKE, and messages are tagged besideToolResults](https://changelogs.core-directive.com/v/2.1.301/e/artifact-beside-tool-results-gate-renamed-from-tengu-squis.json): The 'beside tool results' behaviour now reads `CLAUDE_CODE_DAPPER_CUPCAKE`; the old `CLAUDE_CODE_SQUISHY_NEWT` variable no longer does anything
- [New dialog offering to autocompact earlier, controlled by a server-side config](https://changelogs.core-directive.com/v/2.1.301/e/autocompact-offer-dialog-dark-unless-a-remote-config-object.json): A new 'We recommend compacting earlier' dialog can offer to lower your autocompact threshold, shown only when a server-side config selects the offer
- [reload_plugins can now add plugins mid-session](https://changelogs.core-directive.com/v/2.1.301/e/reload-plugins-control-request-gains-add-plugins.json): The SDK reload_plugins request takes add_plugins to load extra plugin folders without restarting, refused in cloud sessions and under disableSideloadFlags
- [SDK MCP servers can now carry a per-tool permission policy](https://changelogs.core-directive.com/v/2.1.301/e/sdk-mcp-servers-can-carry-per-tool-permission-policy-via-mcp.json): 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
- [Tools can now be blocked for a single turn](https://changelogs.core-directive.com/v/2.1.301/e/per-turn-disallowed-mcp-tools.json): A per-turn disallowedTools list now blocks named MCP tools for one turn, feeds deny rules, and suppresses misleading tool-revoked notices
- [Cloud session list: archiving replaced by removeRemoteSession, with paging and a summary of results](https://changelogs.core-directive.com/v/2.1.301/e/remote-sessions-archive-replaced-by-removeremotesession-stu.json): Cloud sessions now go through removeRemoteSession, which reports a result summary but in this build always fails with gate_off; the list also gains paging
- [Hooks and env settings are now marked as the organization's or a person's](https://changelogs.core-directive.com/v/2.1.301/e/hooks-organization-managed-vs-person-written-hooks-are-di.json): Claude Code now tells managed (organization) hooks and env apart from those a person's plugin wrote, including statusLine and fileSuggestion commands
- [MCP results can skip the model, and the starting folder is withheld in restricted setups](https://changelogs.core-directive.com/v/2.1.301/e/mcp-tool-call-input-gains-result-not-for-model-for-programma.json): Hosts can get raw MCP results with result_not_for_model, and the original working directory is left out under HIPAA-style restrictions
- [New prompt variants without a scratchpad](https://changelogs.core-directive.com/v/2.1.301/e/new-prompt-variant-enum-values-for-scratchpad.json): The list of prompt variants Claude Code accepts now includes three options without a scratchpad
