channels.<channel>.streaming.mode: "progress" in en OpenClaw maakt het
bericht aan zodra het echte werk begint, bewerkt het terwijl de agent leest, plant,
tools aanroept of op goedkeuring wacht, en verandert het vervolgens in het definitieve antwoord.
Discord gebruikt al standaard
streaming.mode: "progress" wanneer
channels.discord.streaming niet is ingesteld, zodat voortgangsconcepten
daar zonder configuratie verschijnen. Elk ander kanaal gebruikt standaard partial
of off; zie Streamen en opdelen
voor de volledige tabel met standaardwaarden per kanaal.Snel aan de slag
Wat gebruikers zien
Voor onbewerkte toolvoortgang verschijnt het label zodra de agent zinvol werk begint
en gedurende de aanvankelijke vertraging bezig blijft.
Het staat bovenaan de doorlopende lijst met voortgangsregels en schuift dus uit beeld zodra
er voldoende concrete werkregels verschijnen. Een statuskop toont alleen de
status van de agent in gewone taal, tenzij expliciet een label is geconfigureerd. Antwoorden die
uitsluitend uit platte tekst bestaan, tonen nooit een voortgangsconcept; een regel verschijnt alleen bij echte werkupdates,
bijvoorbeeld
🛠️ Bash: run tests, 🔎 Web Search: for "discord edit message"
of ✍️ Write: to /tmp/file.
Het definitieve antwoord vervangt het concept ter plaatse wanneer het kanaal dat veilig kan
doen; anders verzendt OpenClaw het definitieve antwoord via de normale bezorging en
ruimt het concept op of stopt met het bijwerken ervan (zie Afronding).
Een modus kiezen
channels.<channel>.streaming.mode bepaalt het zichtbare gedrag tijdens de uitvoering:
Kies
progress wanneer gebruikers meer belang hechten aan “wat er gebeurt” dan aan het
token voor token zien streamen van antwoordtekst; partial wanneer de antwoordtekst zelf
het voortgangssignaal is; block voor grotere voorbeeldfragmenten. Op Discord en
Telegram is streaming.mode: "block" nog steeds het streamen van een voorbeeld, niet de normale
bezorging van blokantwoorden — gebruik daarvoor streaming.block.enabled.
Labels configureren
Voortgangslabels staan onderchannels.<channel>.streaming.progress. Het standaardlabel
voor onbewerkte toolregels is "auto", dat het eenvoudige ingebouwde label Working
gebruikt. Een statuskop verbergt dat impliciete label; stel
label: "auto" expliciet in als je er ook een label boven wilt:
label: "auto"):
Voortgangsregels beheren
Voortgangsregels zijn afkomstig van echte uitvoeringsgebeurtenissen: het starten van tools, updates van items, taakplannen, goedkeuringen, opdrachtuitvoer, samenvattingen van patches en vergelijkbare agentactiviteit. Ze zijn standaard ingeschakeld (progress.toolProgress, standaard true).
Tools kunnen ook getypeerde voortgang doorgeven terwijl één aanroep nog wordt uitgevoerd. Zo
kan een trage ophaal- of zoekactie het zichtbare concept bijwerken voordat de tool
het definitieve resultaat retourneert. De voortgangsupdate is een gedeeltelijk toolresultaat met
lege modelinhoud en expliciete openbare kanaalmetadata:
progress.text in de voortgangsinterface van het kanaal. Het normale
toolresultaat arriveert later alsnog als content/details en is het enige onderdeel
dat aan het model wordt teruggegeven.
Wanneer je voortgang aan een tool toevoegt, geef je een kort, algemeen bericht door en stel je dit uit
totdat de bewerking lang genoeg in behandeling is om nuttig te zijn. web_fetch
doet precies dit met een vertraging van 5 seconden:
Detailmodus
OpenClaw gebruikt dezelfde formatter voor voortgangsconcepten en/verbose:
"explain" is de standaardwaarde en houdt concepten stabiel met beknopte labels.
"raw" voegt waar beschikbaar de onderliggende opdracht toe, wat nuttig is tijdens
het debuggen, maar meer ruis in de chat veroorzaakt. Een aanroep van node --check /tmp/app.js
wordt bijvoorbeeld per modus anders gerenderd:
Opdracht-/exec-tekst
streaming.progress.commandText (standaard "raw") bepaalt hoeveel details van de opdracht
naast exec-/bash-voortgangsregels worden weergegeven, onafhankelijk van de bovenstaande detailmodus.
Stel dit in op "status" om een toolvoortgangsregel zichtbaar te houden en tegelijkertijd
de opdrachttekst volledig te verbergen:
Commentaarbaan
streaming.progress.commentary (standaard false) voegt het commentaar/de preambule
van het model vóór toolgebruik (💬, bijvoorbeeld “Ik controleer… en daarna
…”) tussen de toolregels in het concept. Zie
Streamen en opdelen voor de
gedeelde configuratiestructuur voor alle kanalen.
Wanneer de commentaarbaan is ingeschakeld, worden preambules alleen als deze tussengevoegde
💬-regels gerenderd; de statuskop hieronder blijft uit beeld, zodat de baan zijn
gedocumenteerde vorm behoudt.
Statuskop
Op Discord en Telegram in de voortgangsmodus wordt de getypeerde preambule van het model vóór toolgebruik de statuskop van het concept zodra deze beschikbaar is. Andere kanalen in de voortgangsmodus behouden hun bestaande statusgedrag. De kop is standaard ingeschakeld en omzeilt de normale activiteitsdrempel voor korte beurten niet; doorstreaming.progress.commentary in te schakelen, worden preambules in plaats daarvan aan de tussengevoegde
commentaarbaan doorgegeven.
Wanneer op Discord een utility-model voor de agent wordt bepaald — een expliciet
utilityModel, of de opgegeven standaardwaarde
voor een klein model van de primaire provider (OpenAI → gpt-5.6-luna,
Anthropic → claude-haiku-4-5) — levert het een korte opvulling in gewone taal
wanneer het model geen preambule produceert of ongeveer 20 seconden stil is geweest
(de kop van Telegram gebruikt momenteel alleen de preambule):
streaming.progress.narration, standaard
true) en valt nooit terug op het primaire model: deze wordt alleen uitgevoerd met een expliciet
utilityModel of een door de provider opgegeven standaardwaarde voor de primaire
provider van de agent. Stel utilityModel: "" in om utility-routering volledig uit te schakelen. Toolregels
blijven zich eronder opstapelen en keren terug als beide statusbronnen stoppen. Bewerkingen van het concept
wachten nog steeds op de normale activiteitsdrempel en een daadwerkelijke
tekstwijziging, waardoor flitsen bij snelle beurten worden voorkomen en het aantal bewerkingen in drukke
kanalen wordt verminderd. Stel narration: false in om alleen de opvulling van het utility-model uit te schakelen;
statuskoppen op basis van modelpreambules blijven ingeschakeld:
commandText: "status" laat de invoer voor vertelling ook exec-/bash-opdrachttekst weg,
overeenkomstig wat het concept toont.
Regellimieten
Beperk hoeveel regels zichtbaar blijven (standaard 8):Verrijkte rendering (Slack)
Slack kan voortgangsregels als gestructureerde Block Kit-velden renderen in plaats van platte tekst:Tool-/taakregels verbergen
Behoud het ene voortgangsconcept, maar verberg tool- en taakregels:toolProgress: false onderdrukt OpenClaw voor die beurt nog steeds de oudere zelfstandige
berichten over toolvoortgang — het kanaal blijft visueel rustig tot
het definitieve antwoord, behalve het label als er een is geconfigureerd.
Kanaalgedrag
Kanalen zonder veilige ondersteuning voor bewerken vallen terug op type-indicatoren of
levering van alleen het definitieve antwoord. Zie Streaming en opdelen voor het
volledige overzicht van het runtimegedrag per kanaal.
Afronding
Wanneer het definitieve antwoord gereed is, probeert OpenClaw de chat overzichtelijk te houden:- In de modus
progressop Discord wordt het definitieve antwoord als nieuw bericht verzonden met een klein-#-activiteitenoverzicht erachter (bijvoorbeeld-# 🧠 2 thoughts · 🛠️ 5 tool calls · ⏱️ 12s), en wordt het statusconcept verwijderd zodra dat antwoord is afgeleverd. In drukke kanalen blijft boven het antwoord geen verweesd toollogboek staan; bij definitieve foutmeldingen blijft het concept zichtbaar als verslag van de mislukte beurt. - Als het concept veilig het definitieve antwoord kan worden (modi
partial/block), bewerkt OpenClaw het ter plaatse. - Als het kanaal systeemeigen voortgangsstreaming gebruikt, rondt OpenClaw die stream af wanneer het systeemeigen transport de definitieve tekst accepteert.
- Anders (media, een goedkeuringsprompt, een expliciet antwoorddoel, te veel delen of een mislukte bewerking/verzending) verzendt OpenClaw het definitieve antwoord via het normale leveringspad van het kanaal in plaats van het concept te overschrijven.
Probleemoplossing
Ik zie alleen het definitieve antwoord. Controleer ofchannels.<channel>.streaming.mode voor het account
of kanaal dat het bericht heeft verwerkt op progress staat. Sommige paden voor groepen of antwoorden op citaten schakelen
conceptvoorbeelden voor een beurt uit wanneer het kanaal niet veilig het juiste
bericht kan bewerken.
Ik zie het label, maar geen toolregels.
Controleer streaming.progress.toolProgress. Als dit false is, behoudt OpenClaw het
gedrag met één concept, maar verbergt het de voortgangsregels voor tools en taken.
Ik zie een nieuw definitief bericht in plaats van een bewerkt concept.
Dat is de veiligheidsterugval die wordt beschreven in Afronding. Dit kan
gebeuren bij antwoorden met media, lange antwoorden, expliciete antwoorddoelen, oude Telegram-
concepten, ontbrekende Slack-threaddoelen, verwijderde voorbeeldberichten of een mislukte
afronding van een systeemeigen stream.
Ik zie nog steeds zelfstandige voortgangsberichten.
De voortgangsmodus onderdrukt standaard zelfstandige berichten over toolvoortgang wanneer een
concept actief is. Als er nog steeds zelfstandige berichten verschijnen, controleer dan of de beurt
daadwerkelijk de modus progress gebruikt en niet streaming.mode: "off" of een kanaalpad
dat geen concept voor dat bericht kan maken.
Teams gedraagt zich anders dan Discord of Telegram.
Microsoft Teams gebruikt in persoonlijke chats een systeemeigen stream in plaats van het generieke
transport voor verzenden en bewerken van voorbeelden, en wijst streaming.mode: "block" toe aan
bloklevering van Teams, omdat het geen blokmodus voor conceptvoorbeelden heeft zoals Discord en
Telegram.