Skip to main content
A conversation is a single agent session on the active backend. It has its own message history, tool calls, file changes, selected agent profile, and conversation-specific plugins.

Child Conversations

When an agent uses launch_child_conversation, Agent Canvas can launch a child conversation on a local or Cloud target. Local children can use either an isolated worktree or the parent’s shared workspace. Cloud children use the repository and branch selected for the launch. The child remains linked to its parent, and its result is returned to the parent conversation. Agent Canvas validates the launch inputs before creating the child conversation.

Conversation List Controls

Use the conversation list controls to manage automation runs and visible tags:
  • Choose All, Hide, or Only to include, exclude, or show only automation-run conversations. You can further select individual automation names, including unnamed automations.
  • Pinned conversations remain visible when automation-run filtering would otherwise hide them.
  • Enable the Tags preference to show conversation tag chips. Tags are off by default; when there are more tags than fit, Agent Canvas shows a +N chip with the remaining count.
Agent Canvas omits reserved tags and raw automation IDs from the chips. LLM metadata is also hidden by default.

Follow Agent Activity

While an agent is running, the composer shows a live activity chip for its current unresolved action, such as reading a file or running a command. If no action-specific label is available, it shows Thinking. The chip disappears when the agent pauses or completes its work.

Handle a Failed Message

If a message fails to send, select Retry to send it again or Dismiss to remove the failed message bubble. Dismissing a message does not restore its text to the composer.

Branch From a Message

Use Branch from here on a message when you want to explore a different path without changing the original conversation. Branching creates a new conversation from the selected point in the current conversation. The original conversation remains available in the sidebar.
Conversation branching is available on local agent-server backends that support conversation forks.

Branching User Messages

Branching from one of your own messages works like edit-and-resend:
  1. Hover over the message.
  2. Select Branch from here.
  3. Agent Canvas opens a new branched conversation.
  4. The selected message appears in the composer so you can edit it before sending.
The new branch starts from the parent of that message. This lets you rewrite the prompt and continue from the earlier state.

Branching Assistant Messages

Branching from an assistant message creates a new conversation that includes history through that assistant response. Use this when the agent reached a useful point and you want to try a different next step without changing the original thread.

What Branching Preserves

The branch keeps the relevant conversation history, agent configuration, workspace context, and backend-managed state needed to continue from the branch point. The branch is independent after creation:
  • messages you send in the branch do not modify the original conversation
  • the original conversation stays in the sidebar
  • branches can be branched again
  • the branch gets its own conversation title

Branching vs Starting Fresh

Start a fresh conversation when you want no prior context. Branch a conversation when you want the agent to remember what happened up to a specific message, but you want to test a different instruction, correction, or follow-up.

Run a Goal

Use the /goal command when you want the agent to keep working until a specific objective is complete or the goal reaches its iteration limit.
For example:
When you start a goal, Agent Canvas runs the agent and uses a judge LLM to check whether the objective is complete after each round. If the judge finds missing work, Agent Canvas sends that feedback back to the agent and continues until the goal is complete or the maximum number of rounds is reached. While a goal is running, Agent Canvas shows a status banner with the objective, current round, status, judge score, and any missing work. When the goal finishes, the final status appears inline in the conversation history. Goal statuses include: Sending a normal message while a goal is running interrupts the goal and gives control back to you.
The /goal command requires a backend that supports conversation goal routes. It uses both the agent LLM and a judge LLM, so goal runs may make additional model calls beyond the agent’s normal work.

Export a transcript as Markdown or HTML

You can download any conversation as a self-contained file to share, archive, or review outside Agent Canvas. To export a transcript:
  1. Open the conversation you want to export.
  2. Click the kebab menu (⋮) next to the conversation title.
  3. Select Export transcript.
  4. Choose a format and adjust the options, then click Download.

Format options

The downloaded file is named conversation-<conversation-id>.md or conversation-<conversation-id>.html.

Export options

Turn off either option before downloading if you want a shorter or cleaner transcript.

Privacy

The export is generated locally in your browser from the events Agent Canvas already has for that conversation. No conversation data is sent to a third party to produce the file.
For very large conversations, Agent Canvas loads the full event history before generating the file. This may take a moment. On cloud backends, the export uses the events the app currently has loaded.