Sessions and questions

Every pipeline stage is a session of a coding agent — Claude Code or opencode — running on an agent of the project’s pool, in a fresh workspace on the ticket’s branch. You can watch it, talk to it, and answer its questions while it runs.

Watching a session

On the ticket page, Agent activity lists the ticket’s sessions with stage, runtime, duration, tokens and outcome. Show session opens its transcript: what the agent says, each tool it calls and the result, and your messages. A running session’s transcript updates live.

Talking to a running session

Under a running session’s transcript:

Send

Gives the agent a message. If it is in the middle of a turn, the message is delivered when the turn ends — like a colleague reading chat after finishing a thought.

Interrupt / Interrupt and send

Stops the current turn now; with a message, the agent continues with it. Use it to stop a wrong direction early.

Your messages stay in the transcript, marked You.

Questions

Agents are instructed to make reasonable, recorded assumptions for small reversible choices and to ask about anything irreversible, ambiguous or outside the ticket (Questions and Human Involvement).

A question first goes to the planner, which answers from the knowledge base when it can, citing its sources. Questions about intent, scope, money, credentials or anything hard to undo always go to humans: they appear in the Inbox (with a count in the header), most impactful first.

The inbox: a list of open questions and the selected question with an answer form.

The inbox.

Select a question to see its ticket and context, then:

Answer and resume

Records your answer; the ticket continues and the next question opens.

Open a sub-chat

Discuss the question with the planner first — it knows the ticket, the question and the latest reports, and can research. The planner suggests; you answer.

Each answer is saved as a decision in the organization’s knowledge base, linked to the ticket, so no agent asks it again.

Answering online, or later

After a blocking question the session waits, with its whole context, for the project’s answer window (15 minutes unless the project’s settings say otherwise):

  • within the window, your answer goes straight into the same session, which continues as if you had been there all along;

  • after it, the session parks: it pushes its work in progress as a WIP commit, saves its conversation and ends — nothing waits idle. The ticket shows Waiting for answer. When you answer, a new session of the same stage resumes the saved conversation (Claude Code) or starts afresh with the questions and answers (opencode).

Other tickets keep running either way; only the ticket and what depends on it wait.

A session transcript: the agent raises a blocking question, ends its turn, and receives the human's answer as its next message.

An answer delivered into the running session (recorded with the fake model, which only echoes tool results).

Assumptions

Assumptions on the project page lists what agents assumed instead of asking. Confirm the right ones; Reject… the wrong ones and say what is right. While the ticket is open, the correction goes to its next sessions; once it is done, Ballet proposes a bug ticket as a changeset.