Talking to a running turn
While an agent is working, type a line and press enter. The line goes into the turn that is running, and the agent takes it into account without starting over. There is no mode to switch into and no key to hold.
At a glance
- You will add to, correct or redirect what an agent is doing, without stopping the run.
- Use it when the agent has gone the wrong way, missed part of the task, or needs a fact only you have.
- You need a flow running in
hmz. Your first run starts one.
Try it
While a turn is running, type at the prompt and press enter:
❯ and fix the tests tooHow it works
A turn is one exchange with an agent: it is given something, works with its tools, and answers. A flow is a loop of turns, and most of the time one of them is open. What you type at the prompt while it is open is not a new task. It is something said to the agent in the middle of its work, the way you would lean over and say it to a colleague.
Three things happen to the line, in order:
- It is pinned. It appears above the editor, dim, with the agent that has it. Nothing is lost if the agent is busy: the pin is a queue.
- It is taken. Once the agent's CLI confirms the words are in front of the model, the line leaves the pin and appears in the transcript, where the agent's own words are.
- The turn carries on. The agent keeps what it has done so far and works your line in. It does not start the turn again, and nothing it has already written is undone.
Which turn gets the line depends on the transcript you are reading, and whether the agent's CLI can take words mid-turn at all. Both are below.
Example: add to the task four minutes in
An rlar run has an actor fixing a flaky payment test and a reviewer that checks each of its turns. Four minutes into the actor's turn, you remember that the tests assert the old retry count, and want them fixed in the same turn. Step through what the screen does:
The actor is in the middle of a turn. You type as you would to start one; the status line offers enter send.
What to look at, by number:
● 1on the actor's line.●means the agent has a turn open, so a line sent now goes into that turn. The reviewer's○means it is between turns. The number is how many conversations the agent holds.- The editor. You type exactly as you would to start a task. The status line changes its last keys to
enter sendandctrl+c clear: ctrl+c now clears what you typed rather than stopping anything. - The pin,
· with actor. Sent, but not yet in front of the model. The name says which agent holds it; where two agents are working, that is the half worth knowing. A pin with nowithis still waiting for a turn to go into. - The line in the transcript. The agent's CLI has confirmed it. From here on it is part of the conversation, and the trace records it where it landed.
- The agent's answer, in the same turn. No new turn started, and the work it had done on
charge()is kept.
Check it worked
- The pin above the editor is gone, and your line is in the transcript with a dim
❯in front. - The agent's next words respond to it.
- On the monitor the agent's turn count has not gone up: the same turn took the line.
Where your line goes
To the conversation you are reading. shift+tab changes which one that is; see Many conversations at once.
| You are reading | Your line goes |
|---|---|
| a conversation with a turn open | into that turn |
| an agent, which is where a run lands | into whichever of its conversations has a turn open |
| a conversation between turns, or nothing is working | onto the pin, then into the next turn to start |
chat's conversation between turns | the next message, which starts the next turn |
| an outworlder, or any view where a question is up | the answer to it |
Lines go one at a time, in order. The next one goes only after the agent has taken the one before it, so three lines typed in a row are three things said, each answered in turn.
A line typed between turns is never dropped. It stays on the pin and goes into the next turn to start.
Where somebody else reads the same run, their lines wait on the same pin and land in the same transcripts, marked · by <name>. Anybody may say anything to any agent.
Which agents take a line mid-turn
| Your line goes into | Backends |
|---|---|
| this turn | Claude Code, Codex, Kimi Code, Oh My Pi, pi |
| next turn | Antigravity, Cursor, DeepSeek Harness, Grok Build, MiMo Code, MiniMax Code, opencode, Qwen Code, and any CLI you add on the Accounts page of /settings |
The backends in the second row cannot be talked to while they work. Your line is refused, and goes back on the pin, where the next turn to start takes it:
- The red
hmz:line names the backend that refused. Nothing is wrong with the run. - The pin keeps your line, now without
with actor: it waits for the next turn to start.
An agent working on another machine takes a line during a turn the same way it would locally. Between its turns, your line waits on the pin like any other.
Variations
- Ask without steering. To ask how the run is going without the agent hearing it, use
/btw. - Several lines at once. shift+enter starts a new line in the editor, so a paragraph goes as one message rather than as several.
- Steer one agent of several. Press shift+tab until that agent's conversation is on the screen, then type. On an agent's own transcript, a line goes to whichever of its conversations has a turn open.
Troubleshooting
My line stays on the pin and never goes
You were reading a conversation that will not take another turn. A line typed on one conversation's transcript waits for that conversation, and a Ralph loop opens a fresh one every round, so an old round's conversation never starts again. The pin shows no with.
Press shift+tab onto the conversation that is running, or read the agent itself from the monitor, and type the line again. The one still pinned goes into the transcript as never sent when the flow ends.
sent to actor, which ended its turn without acknowledging it
The turn ended before the CLI confirmed your words were in front of the model. The line goes into the transcript either way. It may or may not have reached the agent, so say it again if it matters.
Lines marked never sent or sent to the agent, not acknowledged
The flow ended with lines still pinned. never sent never left the pin. sent to the agent, not acknowledged was handed to the agent, which never confirmed it: it may have reached the model.
I want it to stop, not change course
A line never stops a run. Type /stop or press ctrl+c twice. See Stopping.
Next steps
- Side questions (
/btw): ask about the run without the agents hearing it. - Many conversations at once: choose which agent you are talking to.
- Questions: when the agent asks you instead.
- A line typed mid-turn: how it works, drawn.
- TUI reference: every key at the prompt.
A flow can put words into its own agents' turns as well. See Writing a flow.