- Systeemprompt (door OpenClaw gebouwd): regels, tools, Skills-lijst, tijd/runtime en geïnjecteerde werkruimtebestanden.
- Gespreksgeschiedenis: jouw berichten + de berichten van de assistent voor deze sessie.
- Toolaanroepen/resultaten + bijlagen: opdrachtuitvoer, gelezen bestanden, afbeeldingen/audio, enz.
Snel aan de slag (context inspecteren)
/status→ snelle weergave “hoe vol is mijn venster?” + sessie-instellingen./context list→ wat is geïnjecteerd + ruwe groottes (per bestand + totalen)./context detail→ diepere uitsplitsing: per-bestand, groottes van tool-schema’s, groottes van Skills-items, grootte van de systeemprompt en aantallen transcriptberichten die compacteerbaar zijn./context map→ WinDirStat-achtige treemap-afbeelding van de bijgehouden contextbijdragers van de huidige sessie./usage tokens→ voeg een gebruiksvoetregel per antwoord toe aan normale antwoorden./compact→ vat oudere geschiedenis samen in een compacte vermelding om vensterruimte vrij te maken.
Voorbeelduitvoer
Waarden verschillen per model, provider, toolbeleid en wat er in je werkruimte staat./context list
/context detail
/context map
Stuurt een afbeelding die is gegenereerd op basis van het nieuwste gecachete runrapport. Voordat een normaal bericht een runrapport in de sessie heeft geproduceerd, geeft /context map een bericht dat de functie niet beschikbaar is terug in plaats van een schatting te renderen. De oppervlakte van rechthoeken is evenredig met bijgehouden prompttekens:
- geïnjecteerde werkruimtebestanden
- basistekst van de systeemprompt
- Skills-promptitems
- JSON-schema’s van tools
/context list, /context detail en /context json kunnen nog steeds een schatting op aanvraag inspecteren wanneer er geen runrapport is gecachet.
Wat meetelt voor het contextvenster
Alles wat het model ontvangt telt mee, waaronder:- Systeemprompt (alle secties).
- Gespreksgeschiedenis.
- Toolaanroepen + toolresultaten.
- Bijlagen/transcripten (afbeeldingen/audio/bestanden).
- Compaction-samenvattingen en snoei-artefacten.
- Provider-”wrappers” of verborgen headers (niet zichtbaar, tellen nog steeds mee).
Hoe OpenClaw de systeemprompt bouwt
De systeemprompt is eigendom van OpenClaw en wordt bij elke run opnieuw gebouwd. Deze bevat:- Toollijst + korte beschrijvingen.
- Skills-lijst (alleen metadata; zie hieronder).
- Werkruimtelocatie.
- Tijd (UTC + geconverteerde gebruikerstijd indien geconfigureerd).
- Runtime-metadata (host/OS/model/denken).
- Geïnjecteerde werkruimte-bootstrapbestanden onder Projectcontext.
Geïnjecteerde werkruimtebestanden (Projectcontext)
Standaard injecteert OpenClaw een vaste set werkruimtebestanden (indien aanwezig):AGENTS.mdSOUL.mdTOOLS.mdIDENTITY.mdUSER.mdHEARTBEAT.mdBOOTSTRAP.md(alleen eerste run)
agents.defaults.bootstrapMaxChars (standaard 20000 tekens). OpenClaw handhaaft ook een totale limiet voor bootstrap-injectie over bestanden heen met agents.defaults.bootstrapTotalMaxChars (standaard 60000 tekens). /context toont groottes van onbewerkt versus geïnjecteerd en of er afkapping heeft plaatsgevonden.
Wanneer afkapping optreedt, kan de runtime een waarschuwingsblok in de prompt injecteren onder Projectcontext. Configureer dit met agents.defaults.bootstrapPromptTruncationWarning (off, once, always; standaard always).
Skills: geïnjecteerd versus op aanvraag geladen
De systeemprompt bevat een compacte Skills-lijst (naam + beschrijving + locatie). Deze lijst heeft echte overhead. Skills-instructies worden standaard niet opgenomen. Van het model wordt verwacht dat het deSKILL.md van de Skill alleen leest wanneer nodig.
Tools: er zijn twee kosten
Tools beïnvloeden context op twee manieren:- Toollijsttekst in de systeemprompt (wat je ziet als “Tooling”).
- Tool-schema’s (JSON). Deze worden naar het model gestuurd zodat het tools kan aanroepen. Ze tellen mee voor context, ook al zie je ze niet als platte tekst.
/context detail splitst de grootste tool-schema’s uit, zodat je kunt zien wat domineert.
Commands, richtlijnen en “inline snelkoppelingen”
Slash-commands worden afgehandeld door de Gateway. Er zijn een paar verschillende gedragingen:- Losstaande commands: een bericht dat alleen
/...is, wordt als command uitgevoerd. - Richtlijnen:
/think,/verbose,/trace,/reasoning,/elevated,/model,/queueworden verwijderd voordat het model het bericht ziet.- Berichten die alleen uit een richtlijn bestaan, bewaren sessie-instellingen.
- Inline richtlijnen in een normaal bericht fungeren als hints per bericht.
- Inline snelkoppelingen (alleen toegestane afzenders): bepaalde
/...-tokens in een normaal bericht kunnen direct worden uitgevoerd (voorbeeld: “hey /status”) en worden verwijderd voordat het model de resterende tekst ziet.
Sessies, Compaction en snoeien (wat blijft bestaan)
Wat tussen berichten blijft bestaan, hangt af van het mechanisme:- Normale geschiedenis blijft bestaan in het sessietranscript totdat deze door beleid wordt gecompacteerd/gesnoeid.
- Compaction bewaart een samenvatting in het transcript en houdt recente berichten intact.
- Snoeien verwijdert oude toolresultaten uit de in-memory prompt om ruimte in het contextvenster vrij te maken, maar herschrijft het sessietranscript niet - de volledige geschiedenis blijft op schijf inspecteerbaar.
legacy-contextengine voor assemblage en
Compaction. Als je een Plugin installeert die kind: "context-engine" biedt en
deze selecteert met plugins.slots.contextEngine, delegeert OpenClaw contextassemblage,
/compact en gerelateerde lifecycle-hooks voor subagentcontext in plaats daarvan aan die
engine. ownsCompaction: false valt niet automatisch terug op de legacy-engine;
de actieve engine moet compact() nog steeds correct implementeren. Zie
Contextengine voor de volledige
pluggable interface, lifecycle-hooks en configuratie.
Wat /context daadwerkelijk rapporteert
/context geeft de voorkeur aan het nieuwste door run gebouwde systeempromptrapport wanneer beschikbaar:
System prompt (run)= vastgelegd uit de laatste ingebedde (tool-geschikte) run en opgeslagen in de sessiestore.System prompt (estimate)= direct berekend wanneer er geen runrapport bestaat (of wanneer wordt uitgevoerd via een CLI-backend die het rapport niet genereert).
Gerelateerd
Context engine
Aangepaste contextinjectie via plugins.
Compaction
Lange gesprekken samenvatten om ze binnen het modelvenster te houden.
System prompt
Hoe de systeemprompt wordt gebouwd en wat deze bij elke beurt injecteert.
Agent loop
De volledige uitvoeringscyclus van de agent, van inkomend bericht tot definitief antwoord.