
Claude Code Forks Subagents by Default Now
Two of these change what happens without you asking. One of them you'll feel before you read about it.
Founder, Automation Squad ·
The short answer
Claude Code v2.1.232, released August 13, 2026, makes subagent forking the default — a forked subagent inherits the full conversation and prompt cache — and adds cross-session messaging, letting you type @ to reach another live Claude session by name. Set CLAUDE_CODE_FORK_SUBAGENT=0 to opt out. It also fixes two Windows permission-bypass holes.
What actually changed in 2.1.231 and 2.1.232
Roughly fifty entries across two releases. These are the ones that change behaviour rather than fix an edge case.
Decide whether you want forking on before it surprises you
A forked subagent inheriting the full conversation and prompt cache is usually what you want — it stops you re-explaining context. But it also means the subagent sees everything in that session. If that is wrong for your setup, set CLAUDE_CODE_FORK_SUBAGENT=0.
Look at the two new /config rows
"Dialog expiry" and "Messages from your other sessions", the latter with accept, hold and refuse options. If you run several Claude sessions at once, decide now whether they should be able to interrupt each other.
If you are on Windows, update — these are security fixes
Two permission-bypass holes were closed: a PowerShell $PSDefaultParameterValues overwrite, and Git Bash following Cygwin-style symlinks past path validation. Both let actions run that your permission settings were meant to stop.
Re-check trust on any nested repositories
A git repo nested inside a trusted parent directory no longer inherits that trust. If a workflow of yours depended on the old behaviour, it will now prompt.
If MCP sign-in was failing on Slack, try it again
2.1.231 fixed a redirect-URI mismatch that broke OAuth for servers using a pre-registered OAuth client. If you gave up on an MCP connection recently, it may simply work now.
| Change | Version | What it means for you |
|---|---|---|
| Subagent forking on by default | 2.1.232 | Forked subagents inherit full conversation + prompt cache |
| Background spawns in interactive sessions | 2.1.232 | Non-teammate agents run in background by default |
| Opt out: CLAUDE_CODE_FORK_SUBAGENT=0 | 2.1.232 | Restores the previous behaviour |
| Cross-session messaging via @ | 2.1.232 | Mention another live session by name; reaches it via SendMessage |
| New /config rows | 2.1.232 | "Dialog expiry" and "Messages from your other sessions" |
| Windows: PowerShell $PSDefaultParameterValues overwrite | 2.1.232 | Permission-bypass fix |
| Windows: Git Bash Cygwin-style symlinks | 2.1.232 | Permission-bypass fix past path validation |
| Nested git repos no longer inherit parent trust | 2.1.232 | A repo inside a trusted dir is no longer trusted by default |
| MCP malformed protocol-version reply | 2.1.232 | No longer hangs the full 30-second timeout |
| MCP OAuth redirect-URI mismatch | 2.1.231 | Fixes sign-in for pre-registered OAuth clients, e.g. Slack |
Take it with you
CLAUDE CODE 2.1.231 + 2.1.232 — what changed
Released Aug 13, 2026
Source: https://automationsquad.com/news/claude-code-subagent-forking-default/
BEHAVIOUR CHANGES (you will feel these)
Subagent forking is ON BY DEFAULT
- a forked subagent inherits the FULL conversation + prompt cache
- opt out with: CLAUDE_CODE_FORK_SUBAGENT=0
Non-teammate agent spawns in interactive sessions run in BACKGROUND
Cross-session messaging: type @ to mention another live session by name
New /config rows: "Dialog expiry" and
"Messages from your other sessions" (accept/hold/refuse)
SECURITY FIXES — update if you're on Windows
PowerShell $PSDefaultParameterValues overwrite ....... permission bypass
Git Bash following Cygwin-style symlinks ............. bypass past path validation
Nested git repos no longer inherit parent-dir trust
FIXES WORTH KNOWING
MCP: malformed protocol-version reply no longer hangs the 30s timeout
MCP OAuth redirect-URI mismatch fixed for pre-registered clients (2.1.231)
-> if Slack MCP sign-in was failing, retry it
CHECKLIST
[ ] Decide if forking-by-default is right for my setup
[ ] Review the two new /config rows
[ ] Windows: update for the two permission-bypass fixes
[ ] Re-check trust on nested repos
[ ] Retry any MCP connection I gave up onAnthropic shipped Claude Code v2.1.231 and v2.1.232 on August 13, 2026. The first was a single-line release; the second carried roughly fifty entries, several of which change behaviour rather than fix a bug.
The facts, from Anthropic's changelog: v2.1.231 fixed MCP OAuth sign-in failing with a redirect-URI mismatch for servers using a pre-registered OAuth client, such as Slack. In v2.1.232, subagent forking is now on by default — a forked subagent inherits the full conversation and prompt cache — and non-teammate agent spawns in interactive sessions run in the background by default, with CLAUDE_CODE_FORK_SUBAGENT=0 as the opt-out. Cross-session messaging arrived: type @ to mention another live Claude session by name and Claude reaches it via SendMessage, governed by two new /config rows, "Dialog expiry" and "Messages from your other sessions". Two Windows permission-bypass holes were closed — a PowerShell $PSDefaultParameterValues overwrite, and Git Bash following Cygwin-style symlinks past path validation. Nested git repos no longer inherit trust from a parent directory, and a malformed MCP protocol-version reply no longer hangs the full 30-second timeout.
Automation Squad's take: this is a changelog story, which means most newsletters will not run it, which is precisely why it is worth your time. Anthropic's newsroom carried nothing about any of this. Two of the changes alter what happens when you are not looking — forking by default and background spawns — and the honest framing is that both are improvements you will feel as a vague sense that things got faster and more contextual. The Windows fixes deserve blunter treatment: a permission-bypass hole means your configured limits were not limiting. If you run Claude Code on Windows, this is an update rather than a read.
Run this now: update, then open /config and look at the two new rows before you do anything else — particularly "Messages from your other sessions", which decides whether your parallel sessions can interrupt each other. Then run one task that spawns a subagent and notice how much less context you had to restate; that is forking working. If you abandoned an MCP connection recently because sign-in kept failing, retry it now rather than debugging it.
Questions people are asking
- What does subagent forking on by default actually change?
- A forked subagent inherits the full conversation and the prompt cache from the session that spawned it, so it starts with your context instead of a blank slate. From v2.1.232 this is the default rather than something you request. You can restore the previous behaviour with CLAUDE_CODE_FORK_SUBAGENT=0.
- How do I turn off Claude Code subagent forking?
- Set the environment variable CLAUDE_CODE_FORK_SUBAGENT=0.
- What is cross-session messaging in Claude Code?
- From v2.1.232 you can type @ to mention another live Claude session by name, and Claude reaches it via SendMessage. Two new /config rows govern it — "Dialog expiry" and "Messages from your other sessions", the latter offering accept, hold or refuse.
- Are there security fixes in Claude Code 2.1.232?
- Yes, two Windows permission-bypass fixes: a PowerShell $PSDefaultParameterValues overwrite, and Git Bash following Cygwin-style symlinks past path validation. Separately, nested git repositories no longer inherit trust from a parent directory.
Further reading
- Claude Code changelog — Anthropic documents real behaviour changes here and frequently nowhere else. Worth checking weekly.
Last checked August 13, 2026 against the primary sources above, by Automation Squad Research. Spot an error? [email protected].
