Skip to main content

Conversation Branching Overview

ZeroTwo uses a tree structure for conversations, allowing you to explore multiple paths from any point without losing previous work. This powerful feature enables experimentation, comparison, and iterative refinement.
Every time you edit a message or regenerate a response, you create a new branch. All branches are preserved, letting you explore different approaches and return to any point in the conversation.

Understanding Conversation Trees

Conversations aren’t linear - they’re branching trees of possibilities.

Tree Structure Visualization

Each path represents a different conversation direction. You can explore all paths and return to any branch point.

Creating Branches

There are several ways to create new conversation branches.
Most common branching method:
1

Hover over a message

Move your cursor over any of your previous messages
2

Click Edit

Click the ✏️ Edit button that appears
3

Modify and save

Change the message and click Save & Regenerate
4

New branch created

A new branch forms from that point, preserving the original path
Original conversation remains accessible - you haven’t lost anything!
Move between different conversation paths efficiently.

Visual Branch Indicators

Branch markers you’ll see:

Branch Icon

🔀 appears next to messages with multiple branches

Active Path Highlight

Current branch path is visually highlighted

Response Counter

“Response 2 of 4” shows multiple response variations

Breadcrumb Trail

Shows your path through the conversation tree
Use arrows to switch responses:
  • ◀️ Previous: View earlier response variation
  • ▶️ Next: View next response variation
  • Counter: Shows “Response 2 of 3”
Keyboard shortcuts:
  • Alt/Opt + ← Previous variation
  • Alt/Opt + → Next variation

Branch Management

Organize and clean up your conversation branches.

Viewing Branch Information

For each branch, you can see:
  • 📊 Number of messages in branch
  • 🕐 When branch was created
  • 📝 Branch starting point (edited message or regeneration)
  • 🎯 Current active branch indicator

Comparing Branches

1

Enable comparison mode

Click Compare Branches in the chat header menu
2

Select branches

Choose 2-3 branches to compare side by side
3

View differences

See responses highlighted with differences marked
4

Choose best approach

Evaluate which branch has the best solution for your needs
Comparison mode is perfect for evaluating different approaches to the same problem.

Pruning Branches

Keep your conversation organized by removing unsuccessful paths.
Deleting branches is permanent. Make sure you’ve extracted any useful information first.
To delete a branch:
  1. Navigate to the branch you want to remove
  2. Click the ⋮ More menu in chat header
  3. Select Delete Branch
  4. Confirm deletion
Delete branches that led nowhere or contained errors to keep your history clean.

Continue Conversations

Resume and extend conversations in powerful ways.

Continue from Any Point

You can continue the conversation from any message, creating a new direction:
1

Find starting point

Scroll to the message where you want to branch
2

Click or type

Click the message, then type a new message in the input
3

Send message

Your new message creates a branch from that point
4

Explore new direction

Continue with a different approach or question
Example use case:

Long Conversation Management

For complex, multi-session work:
Get context quickly:Ask AI to summarize the conversation so far:
AI will review all branches and provide a comprehensive summary.

Advanced Branching Techniques

Parallel Exploration

Explore multiple approaches simultaneously:
1

Create multiple branches

From one message, create 3-4 different branches exploring different approaches
2

Develop each independently

Take each branch several messages deep
3

Compare results

Use comparison mode to evaluate all approaches
4

Synthesize or choose

Either pick the best or ask AI to combine the best aspects
Example:

Iterative Refinement

Use branches for progressive improvement:

Hypothesis Testing

Test different assumptions with branches:
Test competing solutions:Start: “My API is slow”
  • Branch 1: “Let’s optimize database queries”
  • Branch 2: “Let’s add caching”
  • Branch 3: “Let’s use pagination”
Each branch explores that solution fully, then compare results.
Try different configurations:Start: “Design a recommendation algorithm”
  • Branch A: Using collaborative filtering
  • Branch B: Using content-based filtering
  • Branch C: Hybrid approach
Evaluate trade-offs in each branch.
Explore related topics:Start: “Explain React hooks”
  • Branch 1: Deep dive into useState
  • Branch 2: Deep dive into useEffect
  • Branch 3: Deep dive into useContext
  • Branch 4: Custom hooks tutorial
Each branch becomes a learning module.

Use Cases and Patterns

Debugging Complex Issues

1

Initial problem description

2

Create diagnostic branches

  • Branch A: Investigate event handler
  • Branch B: Check state management
  • Branch C: Review component lifecycle
3

Follow promising leads

Branch B finds state issue - continue deep on that branch
4

Solve and document

Solution found in Branch B, message 8. Star it for reference.

Architecture Decision Making

Learning and Exploration

Pattern: Progressive topic exploration

Best Practices

Track what each branch explores:Keep a mental (or written) label for branches:
  • “Performance optimization path”
  • “Security-focused approach”
  • “Beginner-friendly version”
  • “Enterprise-scale solution”
This helps you remember what you were exploring in each branch.
Experiment freely:Do:
  • Create branches to test ideas
  • Try unconventional approaches
  • Ask “what if” questions
  • Explore multiple solutions
Don’t:
  • Worry about “wasting” messages
  • Fear creating too many branches
  • Hesitate to try something new
You can always delete unsuccessful branches later.
Iterate on solutions:Pattern:
Each version is a branch, easy to compare and reference.
Preserve key decisions:When you find a great solution:
  1. Star the message
  2. Add a note explaining why this approach won
  3. Export the branch for documentation
  4. Reference in future conversations
Copy the full branch into a new conversation titled “Final Solution - [Topic]”
Maintain clarity:Periodically:
  • Review all branches
  • Delete dead-end explorations
  • Keep only promising/reference branches
  • Export important solutions before deleting
This keeps your conversation manageable.

Keyboard Shortcuts

Speed up branch navigation:
Enable keyboard shortcuts in Settings > General > Keyboard Shortcuts

Branch Examples

Example 1: Code Review Process

Example 2: Writing and Editing

Example 3: Problem Solving Journey

Troubleshooting

If branch tree is overwhelming:
  1. Open History panel to see full structure
  2. Use search to find specific content
  3. Delete unsuccessful branches
  4. Star your current best solution
  5. Consider starting a new chat with the best solution copied over
Limit yourself to 3-4 active branches at once for clarity.
Recovery methods:
  • Use Search (Cmd/Ctrl + F) to find content
  • Open History panel to view tree structure
  • Check Starred messages for important points
  • Use Export to search full conversation text
All branches are preserved unless explicitly deleted.
Try these fixes:
  • Refresh the page
  • Clear browser cache
  • Check for browser console errors
  • Try keyboard shortcuts instead of clicking
  • Update to latest browser version
Unfortunately:Branch deletion is permanent and cannot be undone.Prevention:
  • Export important conversations regularly
  • Star critical messages before deleting
  • Use deletion carefully
  • Keep backups of important solutions

Next Steps

Edit & Regenerate

Master message editing and regeneration

Files & History

Manage conversation history

Canvas

Iteratively develop content in Canvas

Projects

Organize conversations in projects
Master conversation branching to explore solutions fearlessly and find the perfect approach!