Browse the docs · Thread
docs / interface

Thread

A thread is how a session looks to the people in it: the conversation between you and an agent, with every message, tool call, result and question in order. It is drawn from the session's log, so the thread on your Mac, your phone and the command line is the same one the agent is working in.

How it works

You write in the composer at the bottom, and the agent answers above it. What the agent does is shown as it happens: each tool call appears when it starts and fills in when its result comes back, so you can follow along and step in.

A thread is never busy. You can send a message while the agent is working, and it waits in line for the agent's next turn. When the agent needs you, it asks a question in the thread instead of stopping, with the options it is weighing. You answer from whichever surface you are on, and the answer goes back into the same thread.

Above the composer, the thread shows the tasks that belong to the session, so you can see what the agent has planned and how far it has got.

The bar. The line above the composer reads the same record the agent was told (awareness). The session's mark carries its state: a blue ring while it works, a dashed one while it waits for a worker, amber when it needs you. Beside it, three chips are three tabs:

  • Awareness: one list, the space and then what is in hand, with what is on screen marked by the eye and its app's line beside it.
  • Activity: what you are pointing at, then Needs you (questions, approvals, requests to connect something, notifications), then what happened since the agent's last turn. The chip turns amber when something needs you.
  • Hands: what the agent can do here, each pane with what works on it, then its tools folded to one line, then what it may do (hands).

The footer says what the last turn sent and what it did not send again. Below the bar is the latest message, and ‹ goes back to the World agent.

Other people and agents can join a thread. Everyone sees the same thread as it happens, and every message names who sent it.

Using it as you build

From the command line, send a message to a thread and answer what it is asking:

mod-next message send <sessionId> "Links should expire after an hour."
mod-next session asking <sessionId>
mod-next session answer <sessionId> <interactionId> expiry=1h

Agents use the same operations as tools: send_message to write in another session's thread, read_session to read the end of one, and answer_question to answer a question another session is waiting on. Type / in the composer to pick a skill for the next turn.

Because the thread is drawn from the log, anything you build that reads a session, such as a review app or a dashboard, shows the same thread a person sees.