Systeemprompt
OpenClaw bouwt voor elke agent-run een aangepaste systeemprompt. De prompt is eigendom van OpenClaw en gebruikt niet de standaardprompt van p-coding-agent. De prompt wordt door OpenClaw samengesteld en in elke agent-run geïnjecteerd.Structuur
De prompt is bewust compact en gebruikt vaste secties:- Tooling: huidige toolslijst + korte beschrijvingen.
- Safety: korte herinnering aan guardrails om machtszoekend gedrag of het omzeilen van toezicht te vermijden.
- Skills (indien beschikbaar): vertelt het model hoe Skill-instructies on demand te laden.
- OpenClaw Self-Update: hoe
config.applyenupdate.runuit te voeren. - Workspace: werkmap (
agents.defaults.workspace). - Documentation: lokaal pad naar OpenClaw-documentatie (repo of npm-pakket) en wanneer deze te lezen.
- Workspace Files (injected): geeft aan dat bootstrapbestanden hieronder zijn opgenomen.
- Sandbox (indien ingeschakeld): geeft een gesandboxde runtime aan, sandboxpaden en of verhoogde exec beschikbaar is.
- Current Date & Time: lokale tijd van de gebruiker, tijdzone en tijdformaat.
- Reply Tags: optionele reply-tag-syntaxis voor ondersteunde providers.
- Heartbeats: heartbeat-prompt en ack-gedrag.
- Runtime: host, OS, node, model, repo-root (indien gedetecteerd), denkniveau (één regel).
- Reasoning: huidig zichtbaarheidsniveau + hint voor de /reasoning-toggle.
Promptmodi
OpenClaw kan kleinere systeemprompts renderen voor sub-agents. De runtime stelt per run eenpromptMode in (geen gebruikersgerichte configuratie):
full(standaard): bevat alle bovenstaande secties.minimal: gebruikt voor sub-agents; laat Skills, Memory Recall, OpenClaw Self-Update, Model Aliases, User Identity, Reply Tags, Messaging, Silent Replies en Heartbeats weg. Tooling, Safety, Workspace, Sandbox, Current Date & Time (indien bekend), Runtime en geïnjecteerde context blijven beschikbaar.none: retourneert alleen de basisidentiteitsregel.
promptMode=minimal, worden extra geïnjecteerde prompts gelabeld als Subagent
Context in plaats van Group Chat Context.
Workspace-bootstrapinjectie
Bootstrapbestanden worden ingekort en toegevoegd onder Project Context, zodat het model identiteit en profielcontext ziet zonder expliciete reads:AGENTS.mdSOUL.mdTOOLS.mdIDENTITY.mdUSER.mdHEARTBEAT.mdBOOTSTRAP.md(alleen bij gloednieuwe werkruimtes)MEMORY.mden/ofmemory.md(indien aanwezig in de workspace; één of beide kunnen worden geïnjecteerd)
MEMORY.md, dat in de loop van de tijd kan groeien en kan leiden tot onverwacht hoog contextgebruik en frequentere compactie.
Opmerking: dagelijkse bestanden inGrote bestanden worden afgekapt met een markering. De maximale grootte per bestand wordt bepaald doormemory/*.mdworden niet automatisch geïnjecteerd. Ze worden op aanvraag benaderd via de toolsmemory_searchenmemory_get, en tellen dus niet mee voor het contextvenster tenzij het model ze expliciet leest.
agents.defaults.bootstrapMaxChars (standaard: 20000). De totale geïnjecteerde bootstrap-inhoud over alle bestanden is gemaximeerd door agents.defaults.bootstrapTotalMaxChars (standaard: 24000). Ontbrekende bestanden injecteren een
korte ontbrekend-bestand-markering.
Sub-agent sessies injecteren alleen AGENTS.md en TOOLS.md (andere bootstrap-bestanden worden gefilterd om de context van de sub-agent klein te houden).
Interne hooks kunnen deze stap onderscheppen via agent:bootstrap om de geïnjecteerde
bootstrapbestanden te muteren of te vervangen (bijvoorbeeld het wisselen van SOUL.md voor een alternatieve persona).
Om te inspecteren hoeveel elke geïnjecteerde file bijdraagt (ruw vs. geïnjecteerd, afkapping, plus tool-schema-overhead), gebruik /context list of /context detail. Zie Context.
Tijdafhandeling
De systeemprompt bevat een speciale sectie Current Date & Time wanneer de tijdzone van de gebruiker bekend is. Om de prompt cache-stabiel te houden, bevat deze nu alleen de tijdzone (geen dynamische klok of tijdformaat). Gebruiksession_status wanneer de agent de huidige tijd nodig heeft; de statuskaart
bevat een tijdstempelregel.
Configureren met:
agents.defaults.userTimezoneagents.defaults.timeFormat(auto|12|24)
Skills
Wanneer er in aanmerking komende Skills bestaan, injecteert OpenClaw een compacte lijst met beschikbare Skills (formatSkillsForPrompt) die voor elke Skill het bestandspad bevat. De
prompt instrueert het model om read te gebruiken om de SKILL.md te laden op de vermelde
locatie (werkruimte, beheerd of gebundeld). Als er geen Skills in aanmerking komen, wordt de
Skills-sectie weggelaten.
Documentatie
Wanneer beschikbaar bevat de systeemprompt een sectie Documentation die verwijst naar de lokale OpenClaw-documentatiemap (ofweldocs/ in de repo-werkruimte of de gebundelde npm-
pakketdocumentatie) en vermeldt ook de publieke mirror, bronrepo, community-Discord en
ClawHub (https://clawhub.com) voor Skill-discovery. De prompt instrueert het model om eerst de lokale documentatie te raadplegen
voor OpenClaw-gedrag, opdrachten, configuratie of architectuur, en om indien mogelijk zelf
openclaw status uit te voeren (alleen de gebruiker te vragen wanneer het geen toegang heeft).