Claude Code /fork now spawns a background session
Claude Code 2.1.212 (July 17, 2026) repurposes /fork. It now copies the current conversation into a new background session — its own row in claude agents — while you keep working in the original. The copy starts with everything in the conversation up to that point, and the two sessions are independent from then on.
# copy this conversation into a background session and hand it a task
/fork try the migration with the ORM upgrade instead
Pass a prompt and the copy starts working on it immediately. Without one, it waits in agent view for its first prompt. When the session has no title yet, the copy is named after your prompt, so the row is recognizable in the agent view.
The old /fork is now /subtask
Before 2.1.212, /fork launched a forked subagent: a background subagent that inherits the full conversation and reports its result back into it. That behavior still exists — it is now the /subtask command.
# spawn a subagent that inherits this conversation and reports back
/subtask check whether the failing test predates this branch
Three ways to split a conversation
The command set now covers three distinct intents:
/branch— branch the conversation and switch into the branch yourself; the original is preserved and reachable via/resume./fork— copy the conversation into a separate background session that runs independently./subtask— hand a side task to a subagent whose result comes back into this conversation.
Version gates
/fork-as-background-session requires v2.1.212 or later. On v2.1.161 through v2.1.211, /fork starts a forked subagent instead — the behavior that is now /subtask. Before v2.1.161 it was an alias for /branch, unless forked subagents were enabled via CLAUDE_CODE_FORK_SUBAGENT=1 (available from v2.1.117) or a server-side rollout. And when agent view is turned off, /fork keeps the forked-subagent behavior and /subtask is not available.
If you script around these commands, pin on claude --version before assuming which behavior you get. The Claude Code sheet tracks the current command surface.