Claude Code 2.1.302: headless permission mode flips back, forks everywhere
2.1.302 reverts the default permission mode for headless sessions on third-party providers, with telemetry off, or on a fresh install, and turns on fork subagents everywhere. Two default changes that can quietly break an unattended script.
Claude Code 2.1.302, released October 16, 2026, is a small release on paper: four additions, nine changes, seven improvements, forty-three bug fixes. Nothing here is a flashy new feature, but two changes touch an actual default behavior: the permission mode used in headless runs, and how subagents start. If you run Claude Code unattended, both are worth reading before the upgrade lands on its own.
Headless permission mode reverts to default on third-party providers
A permission mode decides which actions Claude Code can take without asking you first. In default mode (also called manual mode), only reads run without a prompt; everything else, file writes, shell commands, network access, triggers a permission request. In auto mode, a classifier reviews each action instead of a human.
Since 2.1.285, a claude -p or Agent SDK session that doesn't fetch server feature flags, typically because it runs on Amazon Bedrock, Google Cloud, Microsoft Foundry, or with telemetry turned off, started in auto mode by default. 2.1.302 reverts that: these sessions now start in default mode again, the way they did before 2.1.285, and so do sessions on a fresh install. --permission-mode auto still forces auto mode if you want to keep it, and an organization whose policy withholds the auto default stays in default either way.
The practical consequence: in headless mode, nobody is watching the screen to answer a permission prompt. A script that relied on the auto classifier to let its file writes or shell commands through now has those actions denied for lack of a response, instead of being evaluated. If you run Claude Code unattended on a third-party provider, with telemetry disabled or on a fresh install, check your permissions.defaultMode or pass --permission-mode auto explicitly before you pick up this version.
Fork subagents now run everywhere by default, not just in the terminal
A fork subagent starts with your entire conversation history instead of a blank context: same system prompt, same tools, same model, the whole exchange so far. Only its final result comes back into your main conversation, its own tool calls stay invisible. That's different from a regular subagent, which starts a fresh window with only the delegation message Claude writes for it.
Fork mode was already on by default in the interactive terminal, but off by default in claude -p, the Agent SDK, the desktop app and the VS Code extension. 2.1.302 lines everything up: fork mode is now on by default across those four surfaces too. CLAUDE_CODE_FORK_SUBAGENT=0 turns it off if you need to, and claude mcp serve never offers it at all.
Two adjustments ship alongside this change. The desktop app and VS Code now always run the main conversation's subagents in the background, the way the terminal already does, instead of letting Claude choose. Conversely, a subagent's own Agent calls, in claude -p, the Agent SDK, the desktop app and VS Code, now run in the foreground by default.
What this actually means for you: a fork inherits everything already said in the conversation, so its first request carries that full context even though its own detail stays out of your view. If you build on the Agent SDK or on claude -p and you trigger subagents, check whether this extra default context cost is what you want; the environment variable above turns it off if it isn't.
A few additions worth knowing about
- Pick the client-side auto mode classifier model:
CLAUDE_CODE_AUTO_MODE_MODELsets which model the local classifier uses, without changing the model for server-side auto mode. - Compaction instead of blocking: with the server-side classifier, a conversation that grows too long for auto mode's safety check is now compacted instead of having every checked tool call denied one by one.
- The Read tool refuses oversized images: past 128 MB, an image source is now rejected instead of being loaded entirely into memory, fixing a file of any size, or a pipe or device named like an image, that could exhaust the process's memory.
- A toggle for idle compaction:
/confignow shows a row to turn idle compaction off or back on, and the notices shown after an idle compaction now say how to turn it off. - Standalone Claude Design closes by December 14, 2026:
/design-syncand/design-loginnow show this deadline. - Cloud sessions: a banner now explains why a routine's last run didn't start, for example because your organization hit its limit on concurrent cloud sessions.
Everything else, briefly
- Prompt and agent hooks are now capped at twelve concurrent runs per event; the rest wait their turn.
- Claude Tag admin settings are reorganized into four tabs, and the organization's Roles page now groups the roles created for channel managers below the organization's own roles.
- The message shown when an organization's policy disables
/feedbacknow points to GitHub issues instead of an organization admin. - The "← for agents" footer hint now hides ten seconds after a session opens; the count of agents waiting on you still shows.
- Startup is faster with many plugins enabled: their command and agent files now take far fewer file system calls to load, most of all on Windows.
- Nearly half of the forty-three bug fixes land in Claude Tag on Slack, cloud sessions, VS Code and self-hosted runners: nothing that changes a daily habit, but worth checking if you rely on any of those.
What to take away
The additions and improvements in this release are minor. What actually matters are the two changed defaults: the permission mode that goes back to default in headless runs on third-party providers, with telemetry off or on a fresh install, and fork mode turning on everywhere for subagents. If you run Claude Code unattended, check both settings before upgrading; everything else can wait.
Pierre Rondeau
Developer and indie builder. I build products and automations with AI. Creator of Claude Hub.
LinkedIn