Anthropic shipped ten Claude Code releases in twelve days and not one of them carried a new model or a marquee feature. The headline is the absence of a headline: this was a stabilization sprint, and the cadence is the story.
What Is the 12-Day Stabilization Sprint?
The 12-day stabilization sprint is the run of Claude Code releases from version 2.1.174 (June 12) through 2.1.187 (June 23, 2026), in which Anthropic shipped security tightening, enterprise governance controls, and reliability fixes for unattended agentic runs — without introducing a new base model or a flagship feature . The official changelog documents ten releases across that window. The often-repeated "12 days" framing is approximate, because intermediate build numbers like 2.1.180, .182, and .184 are not separately documented, so the exact count is artifact-dependent — it depends on whether you tally every incremented build or only the documented ones .
Quick Answer: The 12-day sprint is ten documented Claude Code releases (2.1.174 to 2.1.187, June 12–23, 2026) with no new model and no flagship feature — only security, enterprise governance, and reliability work for unattended agent runs. The velocity, not any single change, is the signal .
Five themes dominate the window. Read together, they describe what Anthropic now treats as production-critical:
| Theme | Representative change |
|---|---|
| Sandbox isolation | sandbox.credentials blocks sandboxed commands from reading credential files and secret env vars |
| Org-level governance | Organization model restrictions propagate to the picker, --model, /model, and ANTHROPIC_MODEL |
| Destructive-command rails | 2.1.183 blocks git reset --hard, git clean -fd, plus terraform/pulumi/cdk destroy |
| MCP / subagent reliability | Remote MCP calls abort after five minutes of silence; corrected subagent depth tracking |
| TUI robustness | CJK paste corruption, WSL2 mouse-wheel scrolling, Windows Terminal corruption under nested load |
The breadth of the bug surface — spanning Windows Terminal, WSL2, Ghostty, tmux, macOS Apple Events, VS Code, JetBrains, Bedrock GovCloud, MCP OAuth, and worktrees — reflects how far Claude Code now reaches . Anthropic's own docs position it as a single engine spanning the terminal, IDEs, desktop, browser, CI/CD, Slack, background agents, scheduled tasks, and an Agent SDK .
That scope explains the pace. None of these releases moved the model frontier; they moved the operational frontier — making multi-agent, unattended autonomous operation safe and predictable. Anthropic attaches no stated release-rate target, so the read is inference: security, enterprise governance, and multi-agent reliability are the active battleground, and the company is willing to ship daily to hold it . The sections that follow annotate the specific patches that made that bet concrete.
2.1.183: Blocking Destructive Git and IaC Operations

Release 2.1.183, dated June 19, is where the auto-mode safety thesis stops being abstract: it teaches Claude Code to refuse a defined set of destructive version-control and infrastructure commands when the user's request does not imply discarding work . The blocked git commands are git reset --hard, git checkout -- ., git clean -fd, git stash drop, and git commit --amend when the amend was not authored by the agent itself . In parallel, the same release added infrastructure-as-code guardrails: terraform destroy, pulumi destroy, and cdk destroy are refused unless the request explicitly names the specific stack to tear down .
The mechanism matters more than the list. The gate is intent detection, not pattern matching on the command string. The check asks whether your request implies discarding existing work — not merely whether one of these commands shows up in the proposed plan . So an agent that decides on its own to run git reset --hard to "clean up" a messy working tree gets stopped, while a prompt like "discard my local changes and reset to origin/main" passes because the discard intent is explicit. This closes a real failure mode: an autonomous run silently wiping uncommitted work it was never asked to remove.
| Command | Category | Passes when |
|---|---|---|
git reset --hard | Git | Request implies discarding local changes |
git checkout -- . | Git | Request implies discarding local changes |
git clean -fd | Git | Request implies removing untracked files |
git stash drop | Git | Request implies discarding stashed work |
git commit --amend | Git | Amend authored by the agent, or user asks |
terraform / pulumi / cdk destroy | IaC | Request names the specific stack to destroy |
There is a migration consequence for anyone running Claude Code unattended. If you drive these commands through Claude in a CI job, a scheduled task, or any automated pipeline, audit the prompts those pipelines send. A cleanup step that previously relied on Claude executing git clean -fd or cdk destroy from a generic instruction will now be refused unless the prompt carries explicit discard intent — naming the stack for IaC, or stating that local work should be thrown away for git . The same release also fixed an unrelated reliability bug where WebSearch returned empty results inside subagents, keeping the sprint's mixed texture of new guardrails and bug fixes intact .
Tighter Isolation: 2.1.187's Additions for Unattended Operation
Version 2.1.187, shipped June 23, 2026 , narrows what an agent can touch while it runs unattended. Its headline addition is a sandbox.credentials setting that blocks sandboxed commands from reading credential files and secret environment variables . The target is agentic runs that execute shell commands but have no legitimate need for live cloud secrets — a sandboxed build or test step can do its job without the keys that would let a compromised or misdirected command exfiltrate data or call paid APIs. It is an isolation default, not a feature, and it fits the sprint's pattern of tightening what auto-mode is allowed to do by default rather than expanding capability.
The release also makes organization-configured model restrictions propagate uniformly. A blocked model is now refused at the model picker, the --model flag, the /model slash command, and the ANTHROPIC_MODEL environment variable, surfacing a "restricted by your organization's settings" message when a disallowed model is chosen . That last entry point is the one that matters for admins. Previously a UI-level restriction could be sidestepped by exporting ANTHROPIC_MODEL in the shell; enforcement is now end-to-end across every entry point, so org policy holds whether a model is selected interactively or set programmatically in a CI environment.
sandbox.credentials: sandboxed commands can no longer read credential files or secret env vars — scoped at agentic shell execution.- Org model enforcement: restrictions apply at the picker,
--model,/model, andANTHROPIC_MODEL, closing the env-var bypass. - Mouse-click selection: added to fullscreen menus — permission prompts,
/model, and/config.
The third change is more mundane but practical: mouse-click selection now works in fullscreen menus, including permission prompts, /model, and /config . For developers doing live review of an agent's permission requests, that removes the keyboard-only friction of arrowing through options during an interactive approval flow. Read together, the three additions point the same direction — tighter defaults for unattended runs, and lower friction for the human still in the loop.
What 2.1.186 Added for Hanging Operations and SSH-Compatible Login

Release 2.1.186 (June 22, 2026) shifted the focus from permission rails to the connective tissue around MCP servers and background agents . Its headline additions are two CLI commands — claude mcp login and claude mcp logout — that authenticate an MCP server without opening the interactive /mcp menu . For anyone scripting setup or running Claude Code outside a full TUI, that removes a step that previously required a human at the terminal.
The practical unlock is the --no-browser flag, which redirects the OAuth flow to stdin instead of launching a local browser . On an SSH session or in a headless CI runner — where no browser exists and no callback port is reachable — you can now paste the authorization response directly. MCP authentication stops being the thing that breaks an otherwise unattended pipeline.
The reliability side of the same problem landed one release later. 2.1.187 added a five-minute idle timeout for remote MCP tool invocations that previously hung indefinitely, aborting the call after five minutes of silence . For legitimately slow tools, the threshold is configurable through the CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT environment variable, so a long-running call is a setting rather than a stall .
Two smaller 2.1.186 changes tighten the loop between shell output and agent action:
- Bang-prefixed bash commands now trigger an automatic Claude response. Running a
!-prefixed shell command produces output that the model then acts on, closing the gap where shell output was generated but ignored until an explicit follow-up . - Status filtering in the
/workflowsagent detail view. You can now filter a large background agent tree by status instead of scrolling past every completed subtask — useful when inspecting deep multi-agent runs .
The same release also added an iTerm2 teammate mode and fixed enforcement of Agent(type) deny rules for named subagent spawns . Read together, these are plumbing for the unattended case: authenticate without a browser, fail fast when a remote tool goes quiet, and keep the human's view of a large agent tree legible.
CJK Paste Corruption, Stale Resume Turns, and the Infinite Schema Repeat
The longest tail of 2.1.187 is the bug fixes — and several of them matter most to people running Claude Code unattended or in another language. The headline correctness fix closes an infinite loop: with --json-schema and workflow structured output, the model could re-call StructuredOutput indefinitely, and 2.1.187 stops it . For automated pipelines that depend on a single validated object coming back, that is the difference between a deterministic step and a run that burns tokens until something times out.
Two resume-path defects are fixed alongside it. --resume no longer fails with "No conversation found" when the original -p run produced zero model turns — a case that previously stranded scripted sessions that hadn't yet generated output . Background jobs that got stuck in a "working" state are released, and subagent depth tracking is corrected for resumed and forked subagents, so the nesting cap discussed earlier in this sprint is measured against the real depth rather than a stale count .
The release also cleans up after itself. Locked .git/worktrees/ entries left behind by killed agents are now removed, which prevents the orphaned-lock failures that otherwise force a manual git worktree prune before the next agent can claim a tree .
For anyone working outside ASCII, the most visible fix is the simplest: pasted Korean and other CJK text no longer turns into mojibake . If you paste a Hangul or Japanese prompt into the terminal, what the model receives is now what you copied.
The platform-specific list rounds it out. Ghostty URL opening is fixed, VS Code large-session resume works again, and a roughly 2.7-second Remote startup regression is gone — that slowdown had been introduced when agent-proxy CA system-trust installation was added in an earlier build, a clean example of one feature's side effect being caught and reversed within the same sprint . None of these are features; together they are what makes the daily cadence usable instead of risky.
The Fable 5 Launch, the Government Order, and What It Changed

The same window that produced these fixes also carried a model launch and its abrupt reversal. On June 9, Anthropic introduced Fable 5 and Mythos 5, with Mythos-class models priced at $10 per million input tokens and $50 per million output tokens Anthropic, 2026-06. Fable 5 shipped with a safety guardrail baked in: it falls back to Opus 4.8 for classifier-detected cybersecurity, biology/chemistry, or distillation requests releasebot, 2026-06. Claude Code wired in access through build 2.1.170 on June 9, so the new models reached the terminal the day they launched.
Three days later the launch unwound. On June 12, at 5:21pm ET, a US government export-control directive forced Anthropic to suspend all Fable 5 and Mythos 5 access globally, while leaving every other model unaffected Anthropic release notes, 2026-06. Anthropic disputed the rationale — it characterized the underlying concern as a narrow potential jailbreak — but complied immediately. For developers who had built the new models into pipelines over a weekend, the access simply vanished mid-week.
What makes the timing worth reading is that the suspension lands inside the same 12-day changelog window as the sprint's governance work. Org-level model restriction enforcement — which propagates blocked models to the picker, the --model flag, /model, and ANTHROPIC_MODEL — and classifier-gated subagent spawning were shipping in the same days that a model was being pulled by external order. Two tracks ran in parallel: product velocity pushing new capability out, and an incident-response posture pulling it back and hardening the controls that decide which model a run is even allowed to call. The org-restriction plumbing is exactly the mechanism you would want when access to a model class can change without notice.
That parallel raises a harder question for teams leaning on autonomous runs: how much can you trust the classifier that gates these decisions? An April 2026 arXiv stress test offers a caution. It reports Anthropic's own production figures of 0.4% false positives and 17% false negatives for auto-mode permissioning, against 81.0% end-to-end false negatives the authors measured on AmPermBench, a deliberately ambiguous workload arXiv, 2026-04. The researchers are careful about the gap:
AmPermBench is a different, intentionally harder workload than production traffic — the figures describe a stress test, not a direct refutation of the production numbers (source: AmPermBench authors, arXiv 2026-04).
The honest read: the two numbers are not measuring the same thing, but the spread is large enough to matter if you are relying on auto-mode permissioning in high-stakes runs. Pair the convenience of unattended operation with the org-level restrictions and classifier gates this sprint added, and treat the classifier as one layer, not the whole fence.
Underneath the Stabilization Sprint: What Anthropic Is Prioritizing
Read as a whole, this sprint shows Anthropic spending its effort on operational safety and breadth, not model capability. Roughly ten documented builds shipped between June 12 and June 23, 2026 , and the bug surface they touched is the tell: Windows Terminal, WSL2, Ghostty, tmux, macOS Apple Events, VS Code, JetBrains, Bedrock GovCloud, Foundry, Vertex, MCP OAuth, and the GitHub App. That spread reflects how Anthropic's own docs now position Claude Code — one engine across terminal, IDEs, desktop, browser, CI/CD, Slack, and an Agent SDK . Each of those is now a first-class environment that has to keep working.
Three investment areas are legible from the patch stream:
- Unattended-operation safety — sandbox credential isolation and blocking of destructive git and IaC commands, so autonomous runs fail closed.
- Enterprise governance — organization model restrictions that propagate to the picker,
--model,/model, andANTHROPIC_MODEL, plus managed settings, Bedrock regions, and usage attribution . - Multi-agent reliability — the five-level nesting cap, depth-limit enforcement, and corrected tracking for forked and resumed subagents.
If you run Claude Code in production, the install channel matters here. Native installs (claude-code@latest) auto-update in the background and receive patches immediately, while Homebrew stable lags roughly a week and intentionally skips builds carrying major regressions . For unattended fleets, the Homebrew lag is a feature: it filters the churn that a daily cadence inevitably produces.
Anthropic publishes no stated release-rate target, so the pace is best read as posture rather than plan. The AmPermBench authors who measured auto-mode permissioning framed their own findings carefully: their high false-negative rate reflects "a different, harder workload, not a direct contradiction" of Anthropic's production figures . Take the same caution toward the cadence itself. Ten builds in twelve days is an incident-response stance for the frontier the company has chosen to defend — multi-agent orchestration and safe unattended operation — not a stabilized release rhythm. The concrete takeaway: pin a known-good build, run native auto-update only where you can absorb churn, and treat the daily stream as evidence of where the product is still being hardened.
Frequently asked questions
What does sandbox.credentials do in Claude Code 2.1.187?
sandbox.credentials is a setting added in 2.1.187 that blocks sandboxed commands from reading credential files and secret environment variables . It targets agentic runs that execute arbitrary shell commands, where cloud secrets and stored tokens generally do not need to be accessible. If an unattended agent runs a command it shouldn't, this control narrows what that command can exfiltrate — a default tightening rather than a feature you have to wire up yourself.
Why did Anthropic suspend Fable 5 and Mythos 5 in June 2026?
A US government export-control directive, received on June 12, 2026 at 5:21pm ET, required Anthropic to suspend all Fable 5 and Mythos 5 access globally . Anthropic disputed the stated rationale — which it characterized as a narrow potential jailbreak edge case — but complied. All other models remained unaffected, so only the newest Mythos-class tier went dark while the rest of the lineup kept running.
Which git commands does Claude Code now block in autonomous runs?
As of 2.1.183 (June 19, 2026), Claude Code blocks git reset --hard, git checkout -- ., git clean -fd, git stash drop, and git commit --amend (when the amend was not made by the agent) if the user did not explicitly ask to discard work . The same release blocks infrastructure-as-code equivalents — terraform destroy, pulumi destroy, and cdk destroy — unless the specific stack is named in the request.
How do I authenticate an MCP server over SSH without a browser?
Use claude mcp login --no-browser, added in 2.1.186 (June 22, 2026), which redirects the OAuth flow to stdin instead of launching a browser . It suits SSH sessions, CI environments, and any headless setup where no browser is available. The same release added a matching claude mcp logout, so you can authenticate and revoke MCP servers from the CLI without opening the interactive /mcp menu.
Which install channel gets Claude Code patches fastest?
Native installs are fastest: claude-code@latest ships releases immediately and auto-updates in the background . Homebrew stable lags roughly a week behind and deliberately skips builds that ship major regressions. For a sprint that produced ten builds in twelve days, that tradeoff is concrete: native gets fixes and behavior changes sooner, while Homebrew stable trades latency for a smoother, regression-filtered stream.