Private Beta — Request Access

Branch your
conversations.

Git-style version control for AI chat. Explore tangents without losing context. Merge insights back when you're ready. Built open source.

init merged explore tangent debug

Linear chat is a
dead end.

  • Ask a side question?
    Your main context gets derailed.

  • Want to explore "what if"?
    You're forced to start a new chat.

  • Debugging a tangent?
    Good luck finding your way back.

Linear Chat
How do I optimize this SQL query?
You could add an index on the user_id column...
Wait, what's an index again?
An index is a data structure that...
Actually, back to the query...
stepback.dev
How do I optimize this SQL query?
You could add an index on the user_id column...
Branch: "What's an index?"
Can you show me the optimized query?

Think in branches.
Work in branches.

Built for developers who understand that great ideas rarely follow a straight line.

Branch Anywhere

Click any message to create a new path. Your original conversation stays exactly where you left it.

Isolated Context

Each branch maintains its own context window. Experiment freely without polluting your main thread.

Visual Navigation

See your entire conversation tree in an interactive graph. Jump to any point with a single click.

Merge & Synthesize

Found the answer in a side-quest? Summarize the branch and inject insights back into your main flow.

From linear to limitless
in three steps.

1

Start a conversation

Begin like any AI chat. Ask questions, get responses. The interface is familiar — until you need more.

2

Branch when needed

Hit a tangent? Click to branch off. Your main thread is preserved while you explore freely.

3

Navigate & merge

Switch between branches instantly. When you find what you need, merge it back to your main path.

Built by developers,
for developers.

Every message is a node. Every node knows its parent. Context is rebuilt dynamically from the path array — no expensive graph traversals.

⚛️
Frontend
React 19 + ReactFlow + Zustand
🐍
Backend
FastAPI (async Python)
🍃
Database
MongoDB + Beanie ODM
AI Engine
Google Gemini 2.5 Flash, GPT 120B OSS, and more — slowly rolling out multiple providers
// Every node knows its lineage
interface ConversationNode {
  id: string;
  parent_id: string | null;
  path: string[];
  content: string;
  role: "user" | "assistant";
}

// Context rebuilt in O(1) lookups
const getContext = (node) =>
  node.path.map(id => nodes[id]);

Ready to branch out?

We're currently in private beta, rolling out access gradually. Request access or reach out to tell us about your needs.