Skip to content

Conversations and the queue

A project keeps several conversations with its agent. Each conversation is one agent session (and, with worktrees, one working copy): the agent sees its whole history.

The command parser decides where each phrase goes:

  • continue — an answer to the agent’s question, a refinement, more of the same work;
  • new — another goal or another part of the project (“separately: …” makes it explicit);
  • an older conversation — “about the version, the first one”, “cancel the README one”.

The same choice applies to a status, a refinement or a cancel. A cancel that names no conversation stops the task started last.

Main folderWorktreesConversations
a git repositoryonrun in parallel, each in its own working copy
a git repositoryoffone task at a time, the rest queued
a plain folder—one task at a time, the rest queued

When several conversations run at once, small satellites circle the blob, one per conversation: a white ring is working, yellow is waiting for permission, dim is queued. The voice names the conversation when there’s more than one.

“No, change the sidebar instead” while the agent is still working waits in the queue and goes to the agent as soon as its current turn ends.

Settings ▸ Models has an experimental switch: a separate decision model picks the conversation with probabilities, and when two conversations are about equally likely, blu asks you instead of picking. Off by default.