Claude Code 2.1.302 Guards Against Surprise Credit Charges and Enables Fork Subagents by Default
Claude Code v2.1.302 skips credit-billed model suggestions, adds an idle compaction toggle to /config, and enables fork subagents by default in print mode, SDK, desktop, and VS Code.
Anthropic shipped Claude Code v2.1.302 on October 16 with three changes that directly affect how subscribers spend usage credits, control context trimming, and delegate work to subagents. The release adds a credit-billed model guard, exposes an idle compaction toggle in /config, and enables fork subagents by default in print mode, the Agent SDK, the desktop app, and VS Code.

Credit-Billed Prompt Guard Closes a Surprise-Charge Path
The most immediately practical change for paid subscribers is a new safeguard around prompt suggestions. Claude Code sometimes offers follow-up suggestions after a reply. When that reply was itself billed to usage credits rather than included in a subscription, those suggestions could offer models that also cost credits, creating a path to unexpected charges. The release now skips credit-billed model suggestions after a credit-billed reply.
This is not a cosmetic fix. Subscribers on plans where certain models are credit-only — meaning they are not covered by the monthly subscription allowance — can now trust that accepting a suggested prompt will not silently burn extra credits. The guard applies to credit-billed suggestions only; it does not prevent you from manually selecting a credit-billed model for your next turn.
Idle Compaction Toggle Lands in /config
Claude Code has long performed idle compaction: automatically trimming the conversation context after a period of inactivity to keep the session lean. This release adds a dedicated Idle compaction row to /config, giving every user an explicit on/off toggle. Notices shown after an idle compaction now also include instructions for turning it off.
For unattended or overnight sessions, idle compaction can be a useful guard against runaway context windows that push token costs higher — a concern also explored in the previous v2.1.296 release which added auto-compact windows for subagents. But for interactive work where you want the full conversation preserved while you step away, the toggle now makes the trade-off explicit and reversible in a single keystroke.
Fork Subagents Are Now the Default in Print Mode, SDK, Desktop and VS Code
The release changes fork subagents (subagent_type: "fork") to be on by default in claude -p, the Agent SDK, the desktop app, and VS Code — surfaces where they previously required an explicit opt-in. Terminal sessions already had forks enabled. Operators who want the old behavior can set CLAUDE_CODE_FORK_SUBAGENT=0 as an opt-out.
A fork subagent inherits the parent system prompt, tools, model, and full message history, as detailed in the fork subagent migration runbook. That makes it a context-distribution decision as much as a scheduling change. A non-fork subagent starts from its definition and delegation message only, providing stronger input isolation. Fleet operators should inventory every unattended lane and probe what information a fork actually inherits before promoting the version — the same upgrade discipline described in our CLI upgrade canary guide.
The release also changes the desktop app and VS Code to always run the main conversation subagents in the background, matching the terminal’s existing behavior. A subagent’s own nested Agent calls in print mode, the SDK, the desktop app, and VS Code now run in the foreground by default. These scheduling shifts change how operators design subagent orchestration patterns across unattended lanes.
Read Tool Refuses Large Image Files
A less visible but practical fix: the Read tool previously loaded image files of any size — or a pipe or device named like an image — entirely into memory. The release adds a 128 MB hard limit. Image sources exceeding that threshold are now refused, preventing memory crashes when an agent encounters large media files during automated runs.
Other Notable Fixes
Several additional changes in the release matter for fleet operators and regular users:
- Permission mode defaults change for third-party providers:
claude -pand Agent SDK sessions with no permission mode now start in default mode on third-party providers, with telemetry off or on a fresh install. Use--permission-mode autoto preserve the previous auto behavior. - Startup time improves when many plugins are enabled. Plugin command and agent files now take far fewer file system calls to load, with the biggest gains on Windows.
- Auto mode with the server-side classifier now compacts conversations that are too long for the safety check, rather than denying every checked tool call.
- Cost and usage tracking in cloud sessions no longer resets to zero when the session resumes in a new process.
- Prompt cache misses after a mid-session tool add are fixed, as is
/autocompactsaving to the wrong model when a gateway prefixes model names.
What Operators Should Do
The credit guard and idle compaction toggle require no configuration — they take effect on upgrade. The fork subagent default change deserves deliberate attention: inventory every unattended lane, probe what information a fork actually inherits in your runtime, and verify that approval and completion reconciliation still work before promoting the version. A single observation that delegation still runs is not enough.
Set CLAUDE_CODE_FORK_SUBAGENT=0 on lanes where conversation inheritance has not been explicitly reviewed and approved. The opt-out is a specific control, not a complete version rollback — other scheduling changes in the release still apply regardless of the fork setting.