|
| 1 | +--- |
| 2 | +summary: "Steer an active run without changing queue mode" |
| 3 | +read_when: |
| 4 | + - Using /steer or /tell while an agent is already running |
| 5 | + - Comparing /steer with /queue steer |
| 6 | + - Deciding whether to steer the current run, a sub-agent, or an ACP session |
| 7 | +title: "Steer" |
| 8 | +sidebarTitle: "Steer" |
| 9 | +--- |
| 10 | + |
| 11 | +`/steer` sends guidance to an already-active run. It is for "adjust this |
| 12 | +run while it is still working" moments, not for starting a new turn. |
| 13 | + |
| 14 | +## Current session |
| 15 | + |
| 16 | +Use top-level `/steer` to target the active run for the current session: |
| 17 | + |
| 18 | +```text |
| 19 | +/steer prefer the smaller patch and keep the tests focused |
| 20 | +/tell summarize before making the next tool call |
| 21 | +``` |
| 22 | + |
| 23 | +Behavior: |
| 24 | + |
| 25 | +- Targets only the current session's active run. |
| 26 | +- Works independently of the session's `/queue` mode. |
| 27 | +- Does not start a new run when the session is idle. |
| 28 | +- Replies with a warning when there is no active run to steer. |
| 29 | +- Uses the active runtime's steering path, so the model sees the guidance at |
| 30 | + the next supported runtime boundary. |
| 31 | + |
| 32 | +## Steer vs queue |
| 33 | + |
| 34 | +`/queue steer` changes how normal inbound messages behave when they arrive |
| 35 | +while a run is active. `/steer <message>` is an explicit command that tries to |
| 36 | +inject that command's message into the active run at the next supported runtime |
| 37 | +boundary, regardless of the stored `/queue` setting. |
| 38 | + |
| 39 | +Use: |
| 40 | + |
| 41 | +- `/steer <message>` when you want to guide the active run right now. |
| 42 | +- `/queue steer` when you want future normal messages to steer active runs by |
| 43 | + default. |
| 44 | +- `/queue collect` or `/queue followup` when new messages should wait for a |
| 45 | + later turn instead of steering the active run. |
| 46 | + |
| 47 | +For queue modes and fallback behavior, see [Command queue](/concepts/queue) and |
| 48 | +[Steering queue](/concepts/queue-steering). |
| 49 | + |
| 50 | +## Sub-agents |
| 51 | + |
| 52 | +Use `/subagents steer` when the target is a child run: |
| 53 | + |
| 54 | +```text |
| 55 | +/subagents steer 2 focus only on the API surface |
| 56 | +``` |
| 57 | + |
| 58 | +Top-level `/steer` does not select a sub-agent by id or list index. It always |
| 59 | +targets the current session's active run. See [Sub-agents](/tools/subagents) for |
| 60 | +sub-agent ids, labels, and control commands. |
| 61 | + |
| 62 | +## ACP sessions |
| 63 | + |
| 64 | +Use `/acp steer` when the target is an ACP harness session: |
| 65 | + |
| 66 | +```text |
| 67 | +/acp steer --session agent:main:acp:codex tighten the repro |
| 68 | +``` |
| 69 | + |
| 70 | +See [ACP agents](/tools/acp-agents) for ACP session selection and runtime |
| 71 | +behavior. |
| 72 | + |
| 73 | +## Related |
| 74 | + |
| 75 | +- [Slash commands](/tools/slash-commands) |
| 76 | +- [Command queue](/concepts/queue) |
| 77 | +- [Steering queue](/concepts/queue-steering) |
| 78 | +- [Sub-agents](/tools/subagents) |
0 commit comments