CLAUDE_CODE_FORK_SUBAGENT
A Claude Code environment variable, read out of the shipped bundle. It has been in the build since v2.1.138, including the newest one read.
What it is
Controls [fork mode](/docs/en/sub-agents#turn-fork-mode-on-or-off), which lets Claude spawn [forked subagents](/docs/en/sub-agents#fork-the-current-conversation) itself and is on by default in interactive sessions only. Set to 1 to turn it on in claude -p and the Agent SDK as well, or 0 to turn it off in every kind of session. You can run /subtask whether or not fork mode is on. The interactive default requires Claude Code v2.1.232 or later; on earlier versions, set the variable to 1 to turn fork mode on
Anthropic's own wording. Read off Environment variables, captured 2026-08-28.
Presence across releases
| Releases | Reading | Declared type | Default |
|---|---|---|---|
| 2.1.245 – 2.1.251 6 releases | never mined | — | — |
| 2.1.210 – 2.1.243 33 releases | in the build | triBool | — |
| 2.1.160 – 2.1.209 42 releases | in the build | bool | — |
| 2.1.138 – 2.1.159 20 releases | in the build | — | — |
A row reading never mined is a release with no archived bundle behind it. Nothing was read out of it, so nothing here says whether the name was in it. A declared type or a default is only ever what that release's own bundle stated.
Changelog entries naming it
-
v2.1.232Three more variables can be set from settings.json
You can now set OTEL_SERVICE_NAME, OTEL_TRACES_EXPORT_INTERVAL and CLAUDE_CODE_FORK_SUBAGENT in settings.json.
named in this entry
-
v2.1.232Fork-subagent setting is resolved once per session, with the environment checked first
Setting CLAUDE_CODE_FORK_SUBAGENT decides fork subagents up front, and the answer is cached per session.
named in this entry
-
v2.1.232Forked subagents are on by default
Forked subagents are on by default in interactive sessions; set
CLAUDE_CODE_FORK_SUBAGENTto false to opt out.named in this entry
Documentation pages
- Environment variables reference table Claude Code CLI
- Create custom subagents mentions it Claude Code CLI
A reference table page is one whose own table defines this name, and it is where the description above came from. A page that mentions it carries the name somewhere in its text and may say nothing about it at all. Every page carrying it.
Names beside it
Every environment variable in the inventory starting claude_code_fork, up to twelve of them.
Read out of the published npm bundle release by release, and out of Anthropic's own documentation as this site captured it. Nothing on this page is a description anybody here wrote about what the environment variable does. All environment variables.