Conversations — how a turn runs

Shipped

View as Markdown

A conversation is a back-and-forth with one of your agents. You send a message; the agent streams its reply token by token, and along the way it may call tools and keep going with what they return — all before it hands you a finished answer.

Why it matters

This is where constructor, not chatbot shows. A turn isn't a single request-and-response: the model can reach for the current time, ask you a question, fetch a URL, or recall a saved note in the middle of an answer, fold the result back in, and continue. And because turns are durable, they don't depend on you staying on the screen.

What a turn does

A finished reply with its reasoning and per-message metrics

Cancelling

Stop a running turn with the stop control. Cancellation is durable: the partial answer produced so far is kept, and the stop sticks even across a restart. The flip side is deliberate — because turns are decoupled from the screen, navigating away or backgrounding does not cancel a turn. Only an explicit stop, or the turn finishing, ends it.

Attachments

You can attach an image when the model supports vision, and a text file when the model advertises file input — the attach button only appears when the model accepts one or the other. See Attachments for the full list of supported formats, camera capture, and how the bytes reach the model.

The composer

The message box is a bordered field with an action bar beneath it: attach on the left, send on the right. Enter sends on desktop and inserts a newline on mobile (Shift+Enter does the opposite), and a swap button flips that if you prefer. A preview toggle renders your draft as Markdown so you can check tables and code blocks before sending, and the field is spell-checked — see Spell checking.

Drafts

A message you type but don't send is kept. Leave the conversation, switch to another app, or come back tomorrow: the text is waiting in the composer with the cursor where you stopped, and anything you had attached to it is still staged. A conversation you never sent the first message in keeps its draft too. Sending clears it.

Drafts also travel with your sync setup. Start a message on your laptop and the phone shows it above the field — "Unsent draft from Laptop", with what it says and when you touched it — for you to bring in with Use here or drop with Discard. It's offered, never inserted for you: nothing should move text under your cursor while you are typing. Use here adds it to whatever is already in the box rather than replacing it, and Discard removes that draft on every device. Conversations holding an unsent draft are marked as such on the conversation list, so a half-written message is easy to find again.

Worth knowing: with sync configured, an unsent draft reaches your sync server like the rest of a conversation's content. Without sync, drafts stay on the device that typed them.

Finding and reading

What it doesn't do yet

The app ships on Android (Google Play); it also runs on Linux desktop, but there is no published Linux binary yet. See Background turns for the platform limits on very long turns while the app is in the background.