Caricamento in corso...
Caricamento in corso...
Last synced: Today, 22:00
Technical reference for the OpenClaw framework. Real-time synchronization with the official documentation engine.
Use this file to discover all available pages before exploring further.
When a message arrives while a session run is already streaming, OpenClaw can send that message into the active runtime instead of starting another run for the same session. The public modes are runtime-neutral; Pi and the native Codex app-server harness implement the delivery details differently.
Steering does not interrupt a tool call that is already running. Pi checks for queued steering messages at model boundaries:
This keeps tool results paired with the assistant message that requested them, then lets the next model call see the latest user input.
The native Codex app-server harness exposes
turn/steersteerturn/steerqueueturn/steerfollowupcollectsteer-backloginterruptCodex review and manual compaction turns reject same-turn steering. When a runtime cannot accept steering, OpenClaw falls back to the followup queue where that mode allows it.
| Mode | Active-run behavior | Later followup behavior |
|---|---|---|
text steer | Injects all queued steering messages together at the next runtime boundary. This is the default. | Falls back to followup only when steering is unavailable. |
text queue | Legacy one-at-a-time steering. Pi injects one queued message per model boundary; Codex sends separate text turn/steer | Falls back to followup only when steering is unavailable. |
text steer-backlog | Same active-run steering behavior as text steer | Also keeps the same message for a later followup turn. |
text followup | Does not steer the current run. | Runs queued messages later. |
text collect | Does not steer the current run. | Coalesces compatible queued messages into one later turn after the debounce window. |
text interrupt | Aborts the active run, then starts the newest message. | None. |
If four users send messages while the agent is executing a tool call:
steerturn/steerqueueturn/steercollectSteering always targets the current active session run. It does not create a new session, change the active run's tool policy, or split messages by sender. In multi-user channels, inbound prompts already include sender and route context, so the next model call can see who sent each message.
Use
collectqueuemessages.queue.debounceMscollectfollowupsteer-backlogsteersteerturn/steer© 2024 TaskFlow Mirror
Powered by TaskFlow Sync Engine