Forking conversations
Branch any conversation from any message. Both halves keep running. The single most-loved feature on Reverie.
Forking turns Reverie chats into something closer to git than a chat log. Any message — yours or the character's — can become the root of a new branch. The original keeps going. The new branch goes wherever you take it. Nothing ever overwrites anything.
Why this matters: every choice in a conversation becomes reversible. You stop hesitating, you stop pre-editing yourself, and you start actually exploring. Read the design story →
How to fork
Find the message you want to branch from
Scroll back to the moment you want to revisit. It can be any message, not just the most recent — your message or the character's.
Long-press the message
On mobile: long-press. On desktop: hover and use the ⋯ menu. The actions revealed include Copy, Regenerate, Continue, and a More menu with Fork, Edit, and Delete.
Tap Fork
A dialog asks for an optional branch name. You can skip naming — Reverie auto-labels branches by first message — but a name like "what if she said no" makes the branch sidebar readable later.
Land in the new branch
Reverie drops you into the new branch with full context up to the fork point and nothing after. From here you can edit your prompt, regenerate the AI reply, change models, swap identity — whatever you like.
Switching between branches
The branch dropdown lives at the top of the chat (next to the character name). Tap to see the branch tree, hit any branch to jump into it. Branches are sandboxed — what happens in one never bleeds into another.
What forks well
- "What if I said the other thing?" — say the bold thing in branch A, the safe thing in branch B, compare.
- "What if this character had been honest?" — fork from their reply, regenerate after pinning a memory like "Mira tells the truth."
- "What if a different model wrote this scene?" — fork, then change models. See what each LLM does with the same setup.
- "What if I were someone else?" — fork, then switch user identity. Same character, different persona, different relationship.
What memory does across forks
When you fork, the branch inherits the long-term memory state at the fork point. From there, each branch builds its own memory independently. There is no bleed-back to the original.
If you decide later that the new branch is the "real" one, you can mark it as canonical (it becomes the default the next time you open this character).
When not to fork
You don't need to fork to undo your last message — just edit it. Editing rebuilds the next AI reply automatically, in-place. Forking is for when you want to keep both versions side by side.
Forks and credits
Each branch consumes credits for its own messages independently. A 50-message chat that you fork into three branches costs the same per message in each branch, just as if you'd started fresh.
Power patterns
- Date-night chess. Three branches: confession, deflection, change-the-subject. See where each goes.
- A/B model bake-off. Same scene, two models, fork to compare voice and pacing.
- Memory experiments. Fork before testing whether the character will remember something across summarization.
- Story sandbox. Use forks as "drafts" — bad branch becomes the cutting-room floor; good branch becomes the canonical timeline.