Feature request: Fork a session for interactive parallel exploration
Resolved 💬 2 comments Opened Mar 19, 2026 by jackkang-jaris Closed Mar 19, 2026
Problem
When Claude presents multiple options (e.g., "we could approach this via A, B, or C"), there's no way to interactively explore more than one path. You pick one, and if it doesn't work out, you /rewind and try another — sequentially.
This is a distinct problem from session persistence (#18417) or session resume (#12990). The gap is interactive branching: forking a live session into two independent, interactive conversations that share the same history up to the fork point.
Why existing workarounds fall short
- Background agents: Fire-and-forget. You can't steer them, ask follow-ups, or make choices at sub-decision points. Not interactive.
- New terminal +
claude: Picks up CLAUDE.md/memory but loses the entire conversation history — including the reasoning and context that led to the decision point. .mdfiles / memory: Can capture facts and decisions, but can't recreate the conversational state where Claude has built up context, presented options, and is ready to act on a choice./rewind: Sequential, not parallel. You have to fully explore one path before trying another.
Proposed solution
A /fork command that:
- Snapshots the current conversation state
- Spawns a new Claude Code process (e.g., in a new terminal tab or tmux pane) loaded with that snapshot
- Both sessions continue independently and interactively from that point
Use case
Session A: "Here are three approaches to refactor this module..."
User: /fork → Session B opens with identical context
Session A: "Let's go with approach 1" (interactive exploration)
Session B: "Let's go with approach 2" (interactive exploration in parallel)
The user compares outcomes from both sessions and moves forward with the better result.
Related issues
- #18417 — Session persistence (different: about resume, not forking)
- #16863 — Multi-tab session management (different: about save/restore)
- #12990 — Persistent session context (different: about restart recovery)
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗