Messages and delivery
Sturingswachtrij
Wanneer een normale prompt binnenkomt terwijl een sessierun al streamt, probeert OpenClaw
die prompt standaard naar de actieve runtime te sturen wanneer de wachtrijmodus
steer is. Er is geen configuratievermelding en geen wachtrijrichtlijn vereist voor dat standaardgedrag.
OpenClaw en de native Codex appserver-harness implementeren de bezorgdetails
op verschillende manieren.
Runtimegrens
Sturen onderbreekt geen toolaanroep die al actief is. OpenClaw controleert op in de wachtrij geplaatste stuurberichten bij modelgrenzen:
- De assistent vraagt om toolaanroepen.
- OpenClaw voert de batch met toolaanroepen van het huidige assistentbericht uit.
- OpenClaw geeft de gebeurtenis voor het einde van de beurt uit.
- OpenClaw verwerkt in de wachtrij geplaatste stuurberichten.
- OpenClaw voegt die berichten toe als gebruikersberichten vóór de volgende LLM-aanroep.
Zo blijven toolresultaten gekoppeld aan het assistentbericht dat ze heeft aangevraagd, waarna de volgende modelaanroep de nieuwste gebruikersinvoer kan zien.
De native Codex appserver-harness biedt turn/steer in plaats van de interne
stuurwachtrij van de OpenClaw-runtime. OpenClaw batcht in de wachtrij geplaatste prompts gedurende het geconfigureerde
stille venster en stuurt daarna één turn/steer-verzoek met alle verzamelde gebruikersinvoer
in volgorde van binnenkomst.
Codex-review en handmatige Compaction-beurten weigeren sturen binnen dezelfde beurt. Wanneer een
runtime geen sturen kan accepteren in de modus steer, wacht OpenClaw tot de actieve
run is voltooid voordat de prompt wordt gestart.
Deze pagina legt wachtrijmodussturing uit voor normale inkomende berichten wanneer de modus
steer is. Als de modus followup of collect is, gaan normale berichten niet dit
stuurpad in; ze wachten tot de actieve run is voltooid. Zie Sturen voor de expliciete
opdracht /steer <message>.
Modi
| Modus | Gedrag bij actieve run | Later gedrag |
|---|---|---|
steer |
Stuurt de prompt naar de actieve runtime wanneer dat kan. | Wacht tot de actieve run is voltooid als sturen niet beschikbaar is. |
followup |
Stuurt niet. | Voert berichten in de wachtrij later uit nadat de actieve run is beëindigd. |
collect |
Stuurt niet. | Voegt compatibele berichten in de wachtrij samen tot één latere beurt na het debounce-venster. |
interrupt |
Breekt de actieve run af in plaats van die te sturen. | Start het nieuwste bericht na het afbreken. |
Burstvoorbeeld
Als vier gebruikers berichten sturen terwijl de agent een toolaanroep uitvoert:
- Met het standaardgedrag ontvangt de actieve runtime alle vier berichten in
volgorde van binnenkomst vóór de volgende modelbeslissing. OpenClaw verwerkt ze bij de volgende modelgrens;
Codex ontvangt ze als één gebatchte
turn/steer. - Met
/queue collectstuurt OpenClaw niet. Het wacht tot de actieve run eindigt en maakt daarna een follow-upbeurt met compatibele berichten uit de wachtrij na het debounce-venster. - Met
/queue interruptbreekt OpenClaw de actieve run af en start het nieuwste bericht in plaats van te sturen.
Bereik
Sturen richt zich altijd op de huidige actieve sessierun. Het maakt geen nieuwe sessie aan, wijzigt het toolbeleid van de actieve run niet en splitst berichten niet per afzender. In kanalen met meerdere gebruikers bevatten inkomende prompts al afzender- en routecontext, zodat de volgende modelaanroep kan zien wie elk bericht heeft gestuurd.
Gebruik followup of collect wanneer je wilt dat berichten standaard in de wachtrij komen
in plaats van de actieve run te sturen. Gebruik interrupt wanneer de nieuwste prompt
de actieve run moet vervangen.
Debounce
messages.queue.debounceMs is van toepassing op levering via followup en collect vanuit de wachtrij.
In de modus steer met de native Codex-harness stelt dit ook het stille venster in
voordat de gebatchte turn/steer wordt verzonden. Voor OpenClaw gebruikt actief sturen zelf
de debounce-timer niet, omdat OpenClaw berichten van nature batcht tot de volgende modelgrens.