Messages and delivery
Fila de direcionamento
Quando uma mensagem chega enquanto uma execução de sessão já está transmitindo, o OpenClaw pode enviar essa mensagem para o ambiente de execução ativo em vez de iniciar outra execução para a mesma sessão. Os modos públicos são neutros em relação ao ambiente de execução; Pi e o harness nativo de servidor de aplicativo do Codex implementam os detalhes de entrega de formas diferentes.
Limite do ambiente de execução
O direcionamento não interrompe uma chamada de ferramenta que já está em execução. Pi verifica mensagens de direcionamento enfileiradas nos limites do modelo:
- O assistente solicita chamadas de ferramentas.
- Pi executa o lote de chamadas de ferramentas da mensagem atual do assistente.
- Pi emite o evento de fim do turno.
- Pi drena as mensagens de direcionamento enfileiradas.
- Pi acrescenta essas mensagens como mensagens de usuário antes da próxima chamada ao LLM.
Isso mantém os resultados das ferramentas pareados com a mensagem do assistente que os solicitou, e então permite que a próxima chamada do modelo veja a entrada mais recente do usuário.
O harness nativo de servidor de aplicativo do Codex expõe turn/steer em vez da
fila interna de direcionamento do Pi. O OpenClaw adapta os mesmos modos ali:
steeragrupa mensagens enfileiradas durante a janela de silêncio configurada e então envia uma única solicitaçãoturn/steercom todas as entradas de usuário coletadas na ordem de chegada.queuemantém o formato serializado legado enviando solicitaçõesturn/steerseparadas.followup,collect,steer-backlogeinterruptpermanecem como comportamento de fila pertencente ao OpenClaw em torno do turno ativo do Codex.
Turnos de revisão do Codex e de Compaction manual rejeitam direcionamento no mesmo turno. Quando um ambiente de execução não consegue aceitar direcionamento, o OpenClaw recorre à fila de acompanhamento quando esse modo permite.
Esta página explica o direcionamento em modo de fila para mensagens de entrada normais. Para o
comando explícito /steer <message>, consulte Direcionar.
Modos
| Modo | Comportamento com execução ativa | Comportamento de acompanhamento posterior |
|---|---|---|
steer |
Injeta todas as mensagens de direcionamento enfileiradas juntas no próximo limite do ambiente de execução. Este é o padrão. | Recorre ao acompanhamento somente quando o direcionamento está indisponível. |
queue |
Direcionamento legado uma por vez. Pi injeta uma mensagem enfileirada por limite de modelo; Codex envia solicitações turn/steer separadas. |
Recorre ao acompanhamento somente quando o direcionamento está indisponível. |
steer-backlog |
Mesmo comportamento de direcionamento com execução ativa que steer. |
Também mantém a mesma mensagem para um turno de acompanhamento posterior. |
followup |
Não direciona a execução atual. | Executa mensagens enfileiradas depois. |
collect |
Não direciona a execução atual. | Agrupa mensagens enfileiradas compatíveis em um turno posterior após a janela de debounce. |
interrupt |
Aborta a execução ativa e então inicia a mensagem mais recente. | Nenhum. |
Exemplo de rajada
Se quatro usuários enviarem mensagens enquanto o agente está executando uma chamada de ferramenta:
steer: o ambiente de execução ativo recebe todas as quatro mensagens na ordem de chegada antes de sua próxima decisão do modelo. Pi as drena no próximo limite do modelo; Codex as recebe como umturn/steeragrupado.queue: direcionamento serializado legado. Pi injeta uma mensagem enfileirada por vez; Codex recebe solicitaçõesturn/steerseparadas.collect: o OpenClaw espera até que a execução ativa termine e então cria um turno de acompanhamento com mensagens enfileiradas compatíveis após a janela de debounce.
Escopo
O direcionamento sempre mira a execução de sessão ativa atual. Ele não cria uma nova sessão, não altera a política de ferramentas da execução ativa nem divide mensagens por remetente. Em canais multiusuário, os prompts de entrada já incluem contexto de remetente e rota, então a próxima chamada do modelo consegue ver quem enviou cada mensagem.
Use collect quando quiser que o OpenClaw crie um turno de acompanhamento posterior que possa
agrupar mensagens compatíveis e preservar a política de descarte da fila de acompanhamento. Use
queue somente quando precisar do comportamento de direcionamento antigo uma por vez.
Debounce
messages.queue.debounceMs se aplica à entrega de acompanhamento, incluindo collect,
followup, steer-backlog e fallback de steer quando o direcionamento com execução ativa não está
disponível. Para Pi, o próprio steer ativo não usa o temporizador de debounce porque
Pi naturalmente agrupa mensagens até o próximo limite do modelo. Para o harness nativo do
Codex, o OpenClaw usa o mesmo valor de debounce como a janela de silêncio antes de
enviar o turn/steer agrupado.