Messages
Cette page relie la maniere dont OpenClaw gere les messages entrants, les sessions, la mise en file d’attente, le streaming et la visibilite du raisonnement.Flux des messages (vue d’ensemble)
messages.*pour les prefixes, la mise en file d’attente et le comportement des groupes.agents.defaults.*pour le streaming par blocs et les valeurs par defaut de decoupage.- Surcharges par canal (
channels.whatsapp.*,channels.telegram.*, etc.) pour les limites et les bascules de streaming.
Deduplication entrante
Les canaux peuvent redistribuer le meme message apres des reconnexions. OpenClaw conserve un cache de courte duree indexe par canal/compte/peer/session/id de message afin que les livraisons en double ne declenchent pas une nouvelle execution de l’agent.Délivrance entrante
Des messages consecutifs rapides provenant du meme expediteur peuvent etre regroupes en un seul tour d’agent viamessages.inbound. Le debouncing est delimite par canal + conversation
et utilise le message le plus recent pour le fil de reponse et les IDs.
Configuration (defaut global + surcharges par canal) :
- Le debouncing s’applique aux messages texte uniquement ; les medias/pieces jointes sont envoyes immediatement.
- Les commandes de controle contournent le debouncing afin de rester autonomes.
Sessions et appareils
Les sessions appartiennent a la Gateway (passerelle), pas aux clients.- Les discussions directes sont regroupees dans la cle de session principale de l’agent.
- Les groupes/canaux obtiennent leurs propres cles de session.
- Le stockage des sessions et les transcriptions resident sur l’hote de la passerelle.
Corps entrants et contexte d’historique
OpenClaw separe le corps du prompt du corps de commande :Body: texte du prompt envoye a l’agent. Cela peut inclure des enveloppes de canal et des wrappers d’historique optionnels.CommandBody: texte utilisateur brut pour l’analyse des directives/commandes.RawBody: alias historique deCommandBody(conserve pour compatibilite).
[Chat messages since your last reply - for context][Current message - respond to this]
CommandBody (ou
RawBody) avec le texte du message original et conserver Body comme prompt combine.
Les tampons d’historique sont configurables via messages.groupChat.historyLimit (defaut
global) et des surcharges par canal comme channels.slack.historyLimit ou
channels.telegram.accounts.<id>.historyLimit (definir 0 pour desactiver).
Mise en file d’attente et suivis
Si une execution est deja active, les messages entrants peuvent etre mis en file d’attente, diriges vers l’execution en cours, ou collectes pour un tour de suivi.- Configurer via
messages.queue(etmessages.queue.byChannel). - Modes :
interrupt,steer,followup,collect, plus des variantes avec backlog.
Streaming, decoupage et lotissement
Le streaming par blocs envoie des reponses partielles au fur et a mesure que le modele produit des blocs de texte. Le decoupage respecte les limites de texte des canaux et evite de scinder le code balise. Paramètres de la touche :agents.defaults.blockStreamingDefault(on|off, desactive par defaut)agents.defaults.blockStreamingBreak(text_end|message_end)agents.defaults.blockStreamingChunk(minChars|maxChars|breakPreference)agents.defaults.blockStreamingCoalesce(lotissement base sur l’inactivite)agents.defaults.humanDelay(pause de type humaine entre les reponses par blocs)- Surcharges par canal :
*.blockStreaminget*.blockStreamingCoalesce(les canaux non-Telegram necessitent un*.blockStreaming: trueexplicite)
Visibilite du raisonnement et tokens
OpenClaw peut exposer ou masquer le raisonnement du modele :/reasoning on|off|streamcontrole la visibilite.- Le contenu de raisonnement compte toujours dans l’utilisation de tokens lorsqu’il est produit par le modele.
- Telegram prend en charge le streaming du raisonnement dans la bulle de brouillon.
Prefixes, fils de discussion et reponses
Le formatage des messages sortants est centralise dansmessages :
messages.responsePrefix,channels.<channel>.responsePrefixetchannels.<channel>.accounts.<id>.responsePrefix(cascade de prefixes sortants), pluschannels.whatsapp.messagePrefix(prefixe entrant WhatsApp)- Fil de reponse via
replyToModeet des defauts par canal