This continues my digest of v2.1.294 to v2.1.300. The source is the Claude Code releases page. Dates there show day and month only, and the notes are truncated in places, so I’m reporting what I saw and haven’t tested these changes.
v2.1.302 (October 16)
Behavior changes worth checking
- Fork subagents on by default.
subagent_type: "fork"is now enabled inclaude -p, the Agent SDK, the desktop app and VS Code. SetCLAUDE_CODE_FORK_SUBAGENT=0to turn it off. - Background subagents. The desktop app and VS Code now always run the main conversation’s subagents in the background.
- Default permission mode on third-party providers.
claude -pand Agent SDK sessions with no permission mode now start indefaultmode on third-party providers.--permission-mode autostill selects auto. If you run scripts through Bedrock or Vertex and expected looser behavior, this is the line to read. - New variable:
CLAUDE_CODE_AUTO_MODE_MODELselects the model for the client-side auto mode classifier. It doesn’t change the server-side auto mode.
Performance and fixes
- The Read tool no longer loads image files entirely into memory, and image sources over 128 MB are refused.
- Startup is faster with many plugins enabled, especially on Windows.
- Fixed every file write being refused for projects on exFAT or FAT32 drives (Windows).
- Fixed a “Prompt is too long” error during compaction, a Vertex/Bedrock “Extra inputs are not permitted” error after switching providers mid-session, and a prompt-cache miss for tools loaded through ToolSearch.
v2.1.301 (October 15)
Added
CLAUDE_CODE_RETRY_WATCHDOG_MAX_USAGE_LIMIT_WAIT_MS: unattended retry mode can end a request when a usage limit resets too far away, instead of waiting.- Vim mode
%motion to jump to the matching bracket, alone or withd,candy. classifier_verdict,permission_modeandclassifier_categoryfields on OpenTelemetrytool_decisionevents, so auto-mode classifier decisions can be told apart from permission rules.- VS Code: LaTeX math rendering, a “Get more usage” link on the usage-limit banner, and panel fixes.
Fixes worth knowing
- Quitting no longer removes a
WorktreeCreatehook’s worktree without asking when it may hold unpushed commits. That is a data-loss guard, and relevant if you use worktrees like in the Codex worktrees post. - Grep and Glob now report an error when the search program fails, instead of reporting no matches. Before, a failure could look like “nothing found.”
- The Read tool no longer reads binary files (
.xlsm,.parquet,.epub,.heic) as text. - The
fable/bestalias retries once on the previous Fable model when the newest one isn’t available to your organization. - Vim mode no longer sometimes stays in INSERT after Escape.
Changed
- Switching to a model with a smaller context window summarizes the conversation with the previous model first.
- Faster rendering while long-running subagents work.
What stood out to me
- Silent-failure fixes are the quiet safety work. An agent that sees “no matches” when a search actually failed will confidently conclude something false. The Grep and Glob change addresses that.
- Subagents are becoming the default shape. Two releases in a row touch background or fork subagents, which also explains why classifier and permission settings are getting new knobs.
- Check your scripts. The third-party-provider permission default is the kind of change that surprises people running
claude -pin CI.
If you want the permission-model background, see the Claude Code permission post.
Source: Claude Code releases on GitHub.