Features explained

What branching does, and why linear chat falls apart

Branching forks a conversation at any useful point so you can try a new direction while the original thread, and all its context, stays intact.

Branching forks a conversation at any useful point. Instead of overwriting the thread that was working, you open a separate path to try a different idea, direction, or tone, and the parent context comes along intact.

That last clause is the whole trick. A new branch already knows everything the conversation knew at the moment it split, so you're not re-explaining your codebase or re-pasting the brief. You're asking "what if we went this way instead" without giving up the way you came.

Where linear chat falls apart

A linear chat has exactly one future. Every message you send commits the entire conversation to it.

Say you're 40 messages into a debugging session and the model offers two plausible causes. Linear chat makes you pick one. If it's wrong, you scroll up, re-explain, and hope the model hasn't been confused by its own dead end (it usually has). The standard workaround is pasting the same question into three browser tabs, which trades one problem for a worse one: none of the tabs know about the others, so the real context now lives in your head.

We built branching because that fragmentation is the actual failure, not the model. Related paths should stay connected to the same source context, so you can always see where an answer came from and carry the right one back into the main flow.

Developers use branches to try a second approach without losing their debugging state. Writers use them to hear the same draft in a different voice while the original stays put. The shape of the problem is identical: you want to explore without paying for it with the thread you already have.

The tree is the mental model

Every branch shows up as a node in the tree sidebar on the left, and clicking any node jumps you straight to that branch. The tree collapses out of the way when you don't need it, and search filters your conversations and branches once an exploration gets big. The payoff is legibility: a sprawling investigation has a visible shape instead of a scroll position.

New branches open in a pane beside the one you branched from, so the original thread never moves. And you can branch again and again, from wherever the thought strikes: a "Branch" button in the pane header copies the whole path, every AI response carries its own Branch icon, and (our favorite) you can highlight a few words inside a reply and branch from exactly those. The how-to article covers those mechanics. The thing to take from this one is that a branch starts precisely where your curiosity did, not just at the end of the chat.

Branching is available on every plan, including Free.

When you don't need one

A short, single-purpose chat doesn't need a branch. If you're asking for a dinner recipe, just ask.

There's an honest constraint to know about too: a conversation processes one assistant reply at a time, so two branches won't both be streaming answers at the same moment. Branching suits diverging paths you walk one at a time. If what you actually want is one prompt answered several ways at once, side by side, that's Explore mode, and it has its own article.

The other thing branching won't do is decide for you. Sooner or later two paths both look good, and the way through is putting them next to each other and reading the difference. That's comparing branches side by side, and it's the article to read next.

Related reading