Conversations
Inside a project, you can have multiple conversations with the agent. Each conversation is its own chat thread, with its own history. You can switch between them, rename them, delete them, and start fresh ones at any time.
This page covers when to use multiple conversations, and how the panel works.
Why multiple conversations matter
The agent uses your chat history as context. Every message you send is read alongside the last several messages so the agent stays coherent. That's powerful when you're iterating on one feature. But it works against you when the conversation gets long, drifts, or starts to contradict itself.
A new conversation gives the agent a clean slate. The code and the data in your project are still there, but the chat history isn't. You re-state where you are and what you want, and the agent picks it up fresh.
When to start a new conversation
A few clear signals:
- The current chat is tangled. You've been on one feature for 30+ back-and-forth messages and the agent keeps missing something. Start fresh, summarise where you are, restate the goal.
- You're switching topics. You just spent an hour on the sign-in flow; now you want to tackle payments. New conversation. The agent doesn't need the sign-in context bleeding into payments work.
- You're about to make a big change. A fresh conversation makes the rollback boundary clear. If the change goes wrong, the previous conversation is still there as a record of the working state.
- You're handing off to someone else. A short, focused new conversation is easier for a teammate to read than a six-hour thread.
When not to start a new conversation:
- You're mid-flow on a feature. Don't break the agent's stride for a small tweak.
- You're going to need recent context. If your next ask depends on what just happened, stay in the same thread.
Opening the conversations panel
Inside the builder, click the Conversations button in the chat panel header (top-left, looks like a stack of speech bubbles). The panel slides over the chat area.
What you see:
- A search box at the top. Filter conversations by title as you type.
- A "New chat" button.
- A grouped list of past conversations: Today, Yesterday, Last 7 days, Earlier.
- A check or accent on the conversation you're currently in.
Click outside the panel or hit Esc to close it.
Starting a new conversation
Click New chat in the panel header. The chat area clears and you're in a fresh conversation. Your project. Code, data, brand kit, connectors. Is all still there. Only the chat history is empty.
A good first message in a new conversation:
"Picking up where I left off. The app is a habit tracker with sign-in, daily check-ins, and a streak counter. I want to add weekly summaries. An email and a screen showing the last 7 days. Plan it out, then build."
That orients the agent in two sentences and avoids "wait, what's this app about?" round-trips.
Switching between conversations
Click any conversation in the list. The chat area swaps to that thread instantly. Your scroll position, drafts in the textarea, and the file you have open in the code editor all restore to where you left off.
The agent doesn't merge conversations. Each one stays its own thread.
Renaming a conversation
Conversations get an auto-generated title from the first thing you said. Sometimes the title is great; sometimes it's bland.
In the panel, hover the conversation row, click the overflow menu (three dots), pick Rename. Edit the title in place. Press Enter to save, Esc to cancel.
Renaming is just a label. Doesn't affect the agent or the project.
Deleting a conversation
Same overflow menu, click Delete. A confirmation step asks you to confirm (especially if the conversation is currently building something. The prompt names what's in flight).
What gets deleted:
- The chat history for that conversation.
- The agent's stored context for that thread.
What doesn't:
- Your code. All files the agent wrote stay.
- Your data. All database rows stay.
- Your project. Just one conversation goes; the project is fine.
Deletion is immediate and permanent.
If you delete the conversation you're currently in, the panel swaps to the next-most-recent conversation in the project. If there are no others, you land on an empty "New chat" view.
What happens to a conversation that was mid-build
If you switch away from a conversation while the agent is in the middle of building something, the agent keeps going. It writes its work to the project independently of which conversation you're looking at. When you come back, the chat shows the completed work.
You can keep working in a different conversation in the meantime, on different parts of the app. There's a hard limit of one active build per project at a time (the agent can't write to the same files twice at once), but you can flip between conversations freely while one is in flight.
How conversations are ordered
The panel groups conversations by recency:
- Building: any conversation where the agent is currently working pins to the top.
- Today: anything you've touched today.
- Yesterday.
- Last 7 days.
- Earlier: within each group, most recent first.
Tips
- Rename your conversations as you go. Five minutes from now, "Add comments to posts" is much easier to find than "Sure, let's start by adding..."
- One feature per conversation as a default. It's not a rule; it's a habit that makes the history readable later.
- Don't be precious. Conversations are cheap. Start a new one whenever it feels right.
Under the hood (for engineers)
- Conversations live in
agent_conversations, scoped per project + user. - Switching conversations re-binds the realtime subscription (see agent-realtime.ts) to the new
conversation_id. - Auto-titles come from the agent itself, generated once after the first turn lands.
- Deleting a conversation cascades to its messages and tool-call records.
Next
Read Writing Prompts for how to start a new conversation effectively, or Fast vs Pro for when to switch models mid-thread.
