Claude Code 2.1.142: `claude agents` Gains Session Flags, Fast Mode Defaults to Opus 4.7, MCP Tool Timeout Honored
Claude Code 2.1.142 (May 14, 2026) added eight dispatch flags to `claude agents`, moved fast mode's default from Opus 4.6 to Opus 4.7, and made `MCP_TOOL_TIMEOUT` raise the 60-second per-request cap on remote MCP servers. As of September 2026 the flags and the timeout fix stand, but fast mode has left Opus 4.7: the default moved to Opus 4.8 in 2.1.154 and to Opus 5 in 2.1.219, and the 4.6 override variable is a no-op.
Anthropic shipped Claude Code 2.1.142 on May 14, 2026. The headline is a fleshed-out claude agents dispatch surface: eight new flags that let each background session override directories, settings, MCP config, plugin directories, permission mode, model, effort, and the permission bypass. Behind that, fast mode's default moves from Opus 4.6 to Opus 4.7, MCP_TOOL_TIMEOUT finally raises the underlying fetch timeout for remote HTTP/SSE servers, and a series of background-session stability fixes land for the agent view that shipped in 2.1.139.
For where Claude Code sits this quarter, 2.1.133's worktree-base reversal and MCP OAuth proxy fixes are the right context, and the post-mortem on the spring quality regression is the trajectory anchor.
Key Takeaways
- Eight new
claude agentsflags.--add-dir,--settings,--mcp-config,--plugin-dir,--permission-mode,--model,--effort,--dangerously-skip-permissions-- all configure dispatched background sessions independently of the daemon defaults. - Fast mode defaults to Opus 4.7. Previously Opus 4.6. Set
CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE=1to pin fast mode to 4.6 (updated September 5, 2026: the default moved to Opus 4.8 in 2.1.154 and to Opus 5 in 2.1.219, Opus 4.7 fast mode was removed on July 24, 2026, and the override variable has been a no-op since 2.1.160). MCP_TOOL_TIMEOUTnow honored end to end. The env var raises the per-request fetch timeout for remote HTTP and SSE MCP servers, lifting the 60-second cap that previously applied regardless of configuration (updated September 5, 2026: a per-servertimeoutfield in.mcp.jsonnow overrides the variable per server, and the per-request timer is the greatest of 60 seconds, that tool timeout, andMCP_TIMEOUT).- Root-level
SKILL.mdplugins. Plugins with a rootSKILL.mdand noskills/subdirectory now register as a skill, simplifying single-skill plugins (updated September 5, 2026: set the frontmattername, or the skill is named after the install directory). - Background-session stability. Pre-existing worktrees recognized, daemon survives macOS sleep/wake by detecting clock jumps, clean daemon exit on binary upgrade,
claude --bg --dangerously-skip-permissionspersists across retire/wake. /pluginshows LSP servers. The details pane andclaude plugin detailsnow list LSP servers a plugin provides.- Better reactive compaction. First summarize attempt seeds from overflow size, avoiding a wasted near-full-context retry.
- Hook config error clarity. Configuring a prompt- or agent-type hook for
SessionStart/Setup/SubagentStartnow shows a clear "use a command-type hook instead" error.
The claude agents Flag Set
The most consequential addition is the new flag set for dispatched background sessions. Quoting the changelog:
Added new
claude agentsflags:--add-dir,--settings,--mcp-config,--plugin-dir,--permission-mode,--model,--effort, and--dangerously-skip-permissionsto configure dispatched background sessions
The agent view (claude agents) shipped in 2.1.139 as a single dashboard of every Claude Code session -- running, blocked, or done. The original version dispatched background sessions with the daemon's defaults: same working directory roots, same settings, same MCP config, same plugin tree, same permission mode, same model, same effort.
That works for fan-out where every agent does the same kind of work. It breaks the moment you want heterogeneous dispatch: one agent at low effort running tests, another at high effort writing a migration, a third with a permission bypass for a sandboxed throwaway. Until 2.1.142, each of those needed a separate top-level Claude Code config or a wrapper script.
The new flags map one-to-one to the corresponding session-level settings:
| Flag | Configures |
|---|---|
--add-dir | Additional working directories for the session |
--settings | Path to a settings file overriding the daemon default |
--mcp-config | Path to an MCP config file overriding .mcp.json |
--plugin-dir | Plugin directory override |
--permission-mode | Session permission mode (auto, plan, etc.) |
--model | Model override for the dispatched session |
--effort | Effort level for the dispatched session |
--dangerously-skip-permissions | Permission-bypass flag |
The pattern matches the existing top-level Claude Code CLI flags, which is the right call -- it means knowledge transfers and there is no second flag dialect to learn. The use case is the natural one: you can now launch a dashboard full of agents where each one is configured exactly for its job.
Update (September 5, 2026): All eight flags are still documented on the agent view page, whose version table credits 2.1.142 with a ninth, --strict-mcp-config, that the changelog entry did not list. The set has grown since: --allow-dangerously-skip-permissions (2.1.143) makes bypass mode reachable in a dispatched session's Shift+Tab cycle without starting in it, --agent (2.1.157) sets the subagent a dispatch prompt runs when it names none, and --restricted (2.1.248) starts every dispatched session in restricted mode. Three of the launch flags needed fixes afterwards: --dangerously-skip-permissions silently fell back to auto mode until 2.1.196, --plugin-dir was ignored when placed after agents until 2.1.200, and --effort ultracode was dropped before it reached the dispatched session until 2.1.210. The docs also note that claude agents rejects any flag an older version does not know with an unknown option error, so the version table is the place to check before scripting against these.
Fast Mode Now Defaults to Opus 4.7
Fast mode is Claude Code's high-speed Opus configuration: the same model at a higher per-token price, not a different model. Until 2.1.142, the default was Opus 4.6. In 2.1.142 the default moves to Opus 4.7.
The escape hatch is documented in the changelog:
Fast mode now uses Opus 4.7 by default (previously Opus 4.6). Set
CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE=1to pin fast mode to Opus 4.6
The override exists because some users build muscle memory around a specific model's quirks -- prompt formatting that one model handles better than another, tool-call patterns that calibrate to one's behavior. Letting them pin to 4.6 explicitly is the right move during a generation transition. If you have not tuned to a specific Opus version, the new default is what you want.
Update (September 5, 2026): This section describes a default that lasted twelve releases. Anthropic's fast mode page now gives the full history: "Opus 5 is the fast mode default in Claude Code v2.1.219 and later. Before v2.1.219, fast mode defaulted to Opus 4.8 on v2.1.154 through v2.1.218, and to Opus 4.7 on v2.1.142 through v2.1.153." Fast mode on Opus 4.7 was "deprecated on June 25, 2026, and removed on July 24, 2026", and switching to Opus 4.7 now turns fast mode off. The override went the same way: 2.1.154 deprecated CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE with a June 1 removal date, and 2.1.160 removed it; the environment variables reference lists it as "now a no-op". Setting it today does nothing.
| Claude Code versions | Fast mode default | Fast mode price per MTok (in/out) |
|---|---|---|
| Before 2.1.142 | Opus 4.6 | $30 / $150 (per the Week 22 digest, which says "Opus 4.7 and 4.6 stay at $30/$150") |
| 2.1.142 through 2.1.153 | Opus 4.7 | $30 / $150 (same source) |
| 2.1.154 through 2.1.218 | Opus 4.8 | $10 / $50 |
| 2.1.219 and later | Opus 5 | $10 / $50 |
Sources: the fast mode docs page and the Week 22 and Week 30 release digests, all fetched September 5, 2026. The Opus 4.8 fast mode piece covers the 2.1.154 change and the price cut that came with it.
MCP_TOOL_TIMEOUT Honored End to End
The MCP tool timeout fix is the kind of plumbing bug that only matters until you hit it, at which point it is the only thing that matters:
Fixed
MCP_TOOL_TIMEOUTnot raising the per-request fetch timeout for remote HTTP and SSE MCP servers, which capped tool calls at 60 seconds regardless of the configured value
Two layers were involved. The protocol-level timeout is what MCP_TOOL_TIMEOUT is supposed to control -- how long Claude Code waits for a tool call to complete before giving up. The fetch-level timeout is the underlying HTTP request's idle timeout, which for remote HTTP and SSE MCP servers was fixed at 60 seconds.
When the protocol-level timeout was higher than 60 seconds, the fetch layer would cancel the request first and the protocol layer would see a connection error rather than a clean timeout. The user-visible effect: every remote MCP tool call that took longer than 60 seconds failed with what looked like a network error, regardless of what MCP_TOOL_TIMEOUT was set to.
2.1.142 routes the env var through to the fetch timeout. If you run remote MCP servers with long-running tools -- code execution, data analysis, anything that takes more than a minute -- this is the version to upgrade to. The configured value now actually applies.
Update (September 5, 2026): The two-layer model above still holds, and the MCP docs now spell it out. MCP_TOOL_TIMEOUT defaults to about 28 hours. For HTTP, SSE, and claude.ai connector servers the per-request timer "covers each request through to the server's first response byte", and Claude Code sets it "to the greatest of three values: 60 seconds, the tool timeout that applies to the server, and MCP_TIMEOUT"; the 28-hour default does not enter that comparison, and a value below 60 seconds does not shorten it. Two controls arrived after this release. A per-server timeout field in milliseconds in the server's .mcp.json entry overrides the environment variable for that server only, and since 2.1.162 values below 1000 are ignored rather than floored to one second. An idle timeout (2.1.187 and later) aborts a call that sends no response and no progress notification for five minutes on HTTP, SSE, and WebSocket servers, or 30 minutes on stdio servers, configurable with CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT. Since 2.1.212 a main-conversation MCP call still running after two minutes moves to a background task instead of blocking the session, with the same limits still applied.
Background-Session Stability
A cluster of fixes around claude agents and background sessions land in 2.1.142. The most user-visible:
- Pre-existing worktree recognition. Background sessions now recognize pre-existing git worktrees, fixing a state where
Editwas blocked whileEnterWorktreerefused to create a duplicate. If you ever hit a "worktree already exists" wall in a dispatched agent, this is the fix. - macOS sleep/wake clock-jump detection. The daemon now detects clock jumps instead of treating them as elapsed idle time. Before, sessions disappeared and daemon reconnect failed after macOS sleep/wake because the daemon mistook the sleep duration for genuine inactivity and tore down state.
- Clean daemon exit on binary upgrade. When
brew upgradeor another mechanism replaces the Claude Code binary, the daemon now exits cleanly rather than crash-looping dispatched agents on the deleted path. Real outage cause for anyone running long-livedclaude agentssessions on macOS. claude --bg --dangerously-skip-permissionspersists across retire/wake. Before, the permission bypass would silently drop when the daemon retired the session and reawakened it, requiring re-invocation. The flag now sticks.- Empty placeholder sessions retired. Empty idle background sessions left over from backgrounding a fresh REPL are now automatically retired by the daemon after 5 minutes (this fix actually landed in 2.1.141 and remains in 2.1.142).
Together these are the kind of background-session bugs that show up only after enough hours of real use to accumulate sleep cycles, upgrades, and worktree state. The fact that they all land in one release suggests Anthropic is now driving the agent view from real production use, not just the launch demo.
Other Notable Changes
/pluginshows LSP servers. The details pane andclaude plugin detailsnow list LSP servers a plugin provides. Helpful for plugin authors and users debugging which language servers a plugin actually exposes./web-setupwarns before replacing GitHub App connection. Previously silent.- Reactive compaction warm start. First summarize attempt now seeds from the original request's overflow size, avoiding a wasted near-full-context retry. For users who push context to its limits, this is a real latency improvement.
- Hook config error clarity. Configuring a prompt- or agent-type hook for
SessionStart,Setup, orSubagentStartnow returns a clear "use a command-type hook instead" error rather than silent misbehavior. - Stale
/modelsuggestion removed. Usage Policy refusal messages no longer suggest/model claude-sonnet-4-20250514, which referred to a retired model ID. - Background-color bleed fix. Attaching to a
claude agentssession from Apple Terminal or other 256-color-only terminals no longer bleeds background color. - Editor preference fix.
claude agents"v to open in editor" now uses your shell's$EDITOR/$VISUALinstead of the daemon's default editor. - Plugin cache safety. Plugin cache cleanup no longer deletes the active plugin version directory when no installation metadata is present.
- Click links while attached. Clicking links in an attached
claude agentssession works again; the background worker's headless browser shim no longer applies while attached. - Windows network-drive deadlock.
claude agentsno longer deadlocks on Windows with network-drive working directories, and Ctrl+C now works during startup. - Chrome extension crash-loop fix. Background agents no longer crash-loop when the Claude-in-Chrome extension is connected without a shared tab.
- Session-title heuristic. Session titles are no longer derived from the URL when the first message is a link.
- Redundant
set_modelcleanup. Remote clients sending redundantset_modelrequests no longer inject duplicate/modelbreadcrumbs into the transcript.
Who Can Use These Features
Agent view has no plan gate of its own; fast mode does. The table below is drawn from the agent view, fast mode, and settings docs as of September 5, 2026.
| Question | claude agents and its flags | Fast mode |
|---|---|---|
| Which plans | No plan requirement stated. Each background session "uses your subscription quota independently", so ten parallel sessions spend usage about ten times as fast as one. | Pro, Max, Team, and Enterprise subscriptions, and Claude Console. Not available on Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, or Claude Platform on AWS. |
| On or off by default | On. claude agents opens the view with no setup; it is still labeled a research preview. | Off. You toggle it with /fast, and the preference persists across sessions unless fastModePerSessionOptIn is set. |
| Prerequisites | None beyond a trusted workspace; since 2.1.225 an untrusted directory shows the workspace trust dialog first. | On subscription plans, usage credits must be turned on; fast mode bills to usage credits even when plan usage remains. Team and Enterprise need an Owner to enable it first. |
| Can an admin turn it off | Yes. disableAgentView: true in settings or CLAUDE_CODE_DISABLE_AGENT_VIEW, enforceable through managed settings. | Yes. Fast mode is disabled by default for Team and Enterprise organizations until an Owner enables it, and fastModePerSessionOptIn can be deployed through server-managed settings. |
| Session types | Interactive sessions do not appear in the view until you background them; subagents and teammates a session spawns are not listed as rows. | In -p mode, /fast works only in a session launched with fastMode in its --settings value. |
What Changed After Launch
Every row is from Anthropic's changelog or the version tables on its docs pages, read on September 5, 2026.
| Version | Change |
|---|---|
| 2.1.143 | claude agents accepts --allow-dangerously-skip-permissions; worktree.bgIsolation setting added. |
| 2.1.154 | Fast mode default moves to Opus 4.8 at $10/$50 per MTok; CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE deprecated with a June 1 removal date. |
| 2.1.157 | claude agents accepts --agent; dispatched sessions honor the agent setting. |
| 2.1.160 | CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE removed; setting it is a no-op. |
| 2.1.162 | Per-server MCP timeout values below 1000 ms are ignored instead of being floored to a one-second watchdog. |
| 2.1.187 | MCP idle timeout added for servers that send no response and no progress notification. |
| 2.1.196 | --dangerously-skip-permissions passed to claude agents shows the bypass disclaimer instead of silently falling back to auto mode. |
| 2.1.200 | claude agents --plugin-dir <dir> works when the flag is placed after agents. |
| 2.1.210 | claude agents --effort ultracode reaches dispatched sessions; the value was previously dropped. |
| 2.1.212 | MCP calls in the main conversation move to a background task after two minutes. |
| 2.1.219 | Opus 5 becomes the fast mode default; Opus 4.7 removed from fast mode. |
| 2.1.221 | Plugins accept "." as a skills path, and the root-level SKILL.md validation error suggests using the plugin root. |
| 2.1.248 | claude agents accepts --restricted. |
Why This Release Matters
2.1.142 is a claude agents maturation release. The flag set, the macOS sleep/wake fix, the binary-upgrade fix, the worktree recognition, the persistent --dangerously-skip-permissions, and the editor preference all point at the same thing: the agent view shipped in 2.1.139 is graduating from "research preview that works for the demo" to something Anthropic is willing to defend as the place you run multiple Claude Code sessions for real.
The MCP tool timeout fix is the other half. Anyone running remote MCP servers with non-trivial tools was hitting the 60-second cap whether they knew it or not; the fact that MCP_TOOL_TIMEOUT now actually controls the timeout is the difference between MCP-backed workflows being viable and being a 60-second tease.
Pair this with the post-mortem on the spring quality regression and the pattern is consistent: Anthropic is currently shipping Claude Code releases focused on the engineering substrate -- background-session reliability, multi-session ergonomics, MCP plumbing that respects configuration, plugin and skill registration that does what users expect. The headline features get bullet points; the substrate fixes are what makes Claude Code something you can leave running across a workday without nursing.
For the canonical reference, the Claude Code changelog is the durable source for everything in 2.1.142, and the agent view docs cover the claude agents surface that the new flags configure.
Sources
Every source is Anthropic-owned and was fetched on September 5, 2026. No claim on this page rests on a social post.
| Source | What it grounds | Status on September 5, 2026 |
|---|---|---|
| Claude Code changelog, 2.1.142 entry | Every quoted release note; the 2.1.154, 2.1.160, 2.1.162, 2.1.196, 2.1.200, 2.1.210, 2.1.219, and 2.1.221 rows | Read in full; the 2.1.142 quotes on this page match verbatim |
| Week 20 release digest | The May 11-15, 2026 release window for v2.1.139 through v2.1.142 | Confirms the flag set and the Opus 4.7 fast mode default |
| Fast mode | Default-model history by version, the June 25 and July 24 dates, plans and prerequisites, pricing | Fetched; quoted above |
| Week 22 and Week 30 digests | The Opus 4.8 (2.1.154) and Opus 5 (2.1.219) fast mode moves | Fetched; consistent with the fast mode page |
| Environment variables | CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE "removed in v2.1.160 and now a no-op"; MCP_TOOL_TIMEOUT default and per-request behaviour | Fetched; quoted above |
| Agent view | Current flag set, the version table, quota and off-switch behaviour | Fetched; its table lists --strict-mcp-config under 2.1.142 while the changelog entry does not |
| MCP | Per-server timeout, the three-value per-request timer, idle timeout, automatic backgrounding | Fetched; quoted above |
| Plugins reference | Root-level SKILL.md loading and the frontmatter name caveat | Fetched |
Read next
Keep building the workspace playbookClaude Code 2.1.133: `worktree.baseRef` Default Returns to `origin/<default>`, MCP OAuth Proxy Honored Across the Whole Flow
Anthropic shipped Claude Code 2.1.133 on May 7, 2026. The headline is a worktree-base behavior change: a new `worktree.baseRef` setting (`fresh` | `head`) defaults to `fresh`, which moves `EnterWorktree`'s base back to `origin/<default>` after three days of branching from local `HEAD` (since 2.1.128 on May 4). The release also routes `HTTP(S)_PROXY` / `NO_PROXY` / mTLS through the entire MCP OAuth flow (discovery, dynamic client registration, token exchange, refresh), exposes effort level to hooks via `$CLAUDE_EFFORT`, adds Linux sandbox path overrides, and fixes a refresh-token race that was 401-ing parallel sessions.
Claude Opus 4.7 Is Here: State-of-the-Art Coding, xhigh Effort, and a New Cyber Safeguards Tier
Anthropic launched Claude Opus 4.7 on April 16, 2026 -- a notable improvement on Opus 4.6 in advanced software engineering, with the same pricing, a new xhigh effort level, /ultrareview in Claude Code, higher-resolution vision, and the first deployment of cyber safeguards from the Mythos Preview track.
Claude Opus 4.8 Fast Mode: 2.5x Faster Output Tokens in Research Preview
Anthropic launched Fast mode for Claude Opus 4.8 in research preview, promising 2.5x faster output token speeds with the same Opus-level intelligence. It is available now in Claude Code for developers with extra usage enabled, and on the Claude Platform API through an account manager or a waitlist form.
Prompting Claude Opus 5: Trim the Verbosity, Delete the Verification
Claude Opus 5 needs opposite prompting from its predecessors: you prompt for conciseness because effort no longer controls visible length, and you delete verification and double-check instructions because the model already does both. Constrain scope on narrow tasks, cap subagent spawning for cost, and keep thinking enabled at low effort rather than disabling it.
Anthropic's Claude Code Post-Mortem: Three Engineering Missteps Behind the Spring 2026 Quality Decline
Anthropic published a post-mortem on April 23, 2026 explaining the Claude Code quality regression that ran from early March through mid-April: a March 4 default-effort downgrade from high to medium, a March 26 caching change that wiped reasoning history every turn, and an April 16 verbosity prompt that capped responses at 25 words between tool calls. All three were resolved by April 20, the API was unaffected, and Anthropic reset usage limits for all subscribers.
Frequently Asked Questions
What are the new `claude agents` flags in 2.1.142?
Eight flags that configure background sessions dispatched through `claude agents`: `--add-dir`, `--settings`, `--mcp-config`, `--plugin-dir`, `--permission-mode`, `--model`, `--effort`, and `--dangerously-skip-permissions`. Before 2.1.142, dispatched sessions inherited the daemon's defaults. As of September 2026 all eight are still documented on the agent view page, which also lists `--strict-mcp-config` from the same release, `--allow-dangerously-skip-permissions` from 2.1.143, `--agent` from 2.1.157, and `--restricted` from 2.1.248.
Why did fast mode change from Opus 4.6 to Opus 4.7?
In May 2026 Opus 4.7 was the current Opus generation, so 2.1.142 made it the fast mode default. As of September 2026 that is history: the default moved to Opus 4.8 in 2.1.154 and to Opus 5 in 2.1.219, and Anthropic deprecated fast mode on Opus 4.7 on June 25, 2026 and removed it on July 24, 2026. `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` was removed in 2.1.160 and is now a no-op.
What is the MCP tool timeout fix?
Before 2.1.142, `MCP_TOOL_TIMEOUT` raised the overall tool-call limit but not the per-request fetch timeout on remote HTTP and SSE MCP servers, so those calls failed at 60 seconds whatever you set. 2.1.142 routed the variable through. As of September 2026 the per-request timer is the greatest of 60 seconds, the tool timeout that applies to the server, and `MCP_TIMEOUT`, and a per-server `timeout` field in `.mcp.json` overrides the variable for that server.
What is the plugin-as-skill change?
Since 2.1.142, a plugin with a `SKILL.md` at its root, no `skills/` subdirectory, and no `skills` manifest field is loaded as a single skill, so a one-skill plugin can drop the `skills/<name>/` wrapper. As of September 2026 the plugins reference adds one caveat: set the frontmatter `name` field, because without it the skill takes the install directory's name, which for marketplace installs is a version string that changes on every update.
What background-session bugs were fixed?
Several. Background sessions now recognize pre-existing git worktrees instead of refusing to create a duplicate. The daemon detects clock jumps on macOS sleep/wake instead of treating them as elapsed idle time, fixing sessions disappearing and daemon reconnect failing after a sleep cycle. The daemon also exits cleanly after binary upgrades (e.g. `brew upgrade`) instead of crash-looping dispatched agents on the deleted path. And `claude --bg --dangerously-skip-permissions` now persists across retire/wake.
Are there other notable fixes in 2.1.142?
Yes. Reactive compaction now seeds the first summarize attempt from the original request's overflow size, avoiding a wasted near-full-context retry. Hook configuration errors for prompt- or agent-type hooks on `SessionStart`/`Setup`/`SubagentStart` now show a clear 'use a command-type hook instead' message. The stale `/model claude-sonnet-4-20250514` suggestion was removed from Usage Policy refusal messages. And plugin cache cleanup no longer deletes the active plugin version when installation metadata is missing.