Zum Hauptinhalt springen

Kontext

„Kontext“ ist alles, was OpenClaw für einen Lauf an das Modell sendet. Er ist durch das Kontextfenster des Modells (Token-Limit) begrenzt. Mentales Modell für Einsteiger:
  • System-Prompt (von OpenClaw erstellt): Regeln, Werkzeuge, Skills-Liste, Zeit/Laufzeit und injizierte Workspace-Dateien.
  • Gesprächsverlauf: Ihre Nachrichten + die Nachrichten des Assistenten für diese Sitzung.
  • Werkzeugaufrufe/-ergebnisse + Anhänge: Befehlsausgaben, Dateizugriffe, Bilder/Audio usw.
Kontext ist nicht dasselbe wie „Speicher“: Speicher kann auf der Festplatte abgelegt und später wieder geladen werden; Kontext ist das, was sich aktuell im Fenster des Modells befindet.

Schnellstart (Kontext prüfen)

  • /status → schnelle Ansicht „wie voll ist mein Fenster?“ + Sitzungseinstellungen.
  • /context list → was injiziert wird + grobe Größen (pro Datei + Summen).
  • /context detail → detaillierte Aufschlüsselung: pro Datei, pro Werkzeug-Schema, pro Skill-Eintrag und Größe des System-Prompts.
  • /usage tokens → hängt an normale Antworten eine Nutzungs-Fußzeile pro Antwort an.
  • /compact → fasst ältere Historie zu einem kompakten Eintrag zusammen, um Platz im Fenster freizugeben.
Siehe auch: Slash commands, Token use & costs, Compaction.

Beispielausgabe

Werte variieren je nach Modell, Anbieter, Werkzeugrichtlinie und dem Inhalt Ihres Workspace.

/context list

🧠 Context breakdown
Workspace: <workspaceDir>
Bootstrap max/file: 20,000 chars
Sandbox: mode=non-main sandboxed=false
System prompt (run): 38,412 chars (~9,603 tok) (Project Context 23,901 chars (~5,976 tok))

Injected workspace files:
- AGENTS.md: OK | raw 1,742 chars (~436 tok) | injected 1,742 chars (~436 tok)
- SOUL.md: OK | raw 912 chars (~228 tok) | injected 912 chars (~228 tok)
- TOOLS.md: TRUNCATED | raw 54,210 chars (~13,553 tok) | injected 20,962 chars (~5,241 tok)
- IDENTITY.md: OK | raw 211 chars (~53 tok) | injected 211 chars (~53 tok)
- USER.md: OK | raw 388 chars (~97 tok) | injected 388 chars (~97 tok)
- HEARTBEAT.md: MISSING | raw 0 | injected 0
- BOOTSTRAP.md: OK | raw 0 chars (~0 tok) | injected 0 chars (~0 tok)

Skills list (system prompt text): 2,184 chars (~546 tok) (12 skills)
Tools: read, edit, write, exec, process, browser, message, sessions_send, …
Tool list (system prompt text): 1,032 chars (~258 tok)
Tool schemas (JSON): 31,988 chars (~7,997 tok) (counts toward context; not shown as text)
Tools: (same as above)

Session tokens (cached): 14,250 total / ctx=32,000

/context detail

🧠 Context breakdown (detailed)

Top skills (prompt entry size):
- frontend-design: 412 chars (~103 tok)
- oracle: 401 chars (~101 tok)
… (+10 more skills)

Top tools (schema size):
- browser: 9,812 chars (~2,453 tok)
- exec: 6,240 chars (~1,560 tok)
… (+N more tools)

Was zum Kontextfenster zählt

Alles, was das Modell erhält, zählt dazu, einschließlich:
  • System-Prompt (alle Abschnitte).
  • Gesprächsverlauf.
  • Werkzeugaufrufe + Werkzeugergebnisse.
  • Anhänge/Transkripte (Bilder/Audio/Dateien).
  • Kompaktionszusammenfassungen und Pruning-Artefakte.
  • Anbieter-„Wrapper“ oder versteckte Header (nicht sichtbar, zählen trotzdem).

Wie OpenClaw den System-Prompt erstellt

Der System-Prompt gehört OpenClaw und wird bei jedem Lauf neu aufgebaut. Er umfasst:
  • Werkzeugliste + kurze Beschreibungen.
  • Skills-Liste (nur Metadaten; siehe unten).
  • Workspace-Speicherort.
  • Zeit (UTC + konvertierte Benutzerzeit, falls konfiguriert).
  • Laufzeit-Metadaten (Host/OS/Modell/Thinking).
  • Injizierte Workspace-Bootstrap-Dateien unter Project Context.
Vollständige Aufschlüsselung: System Prompt.

Injizierte Workspace-Dateien (Project Context)

Standardmäßig injiziert OpenClaw einen festen Satz an Workspace-Dateien (falls vorhanden):
  • AGENTS.md
  • SOUL.md
  • TOOLS.md
  • IDENTITY.md
  • USER.md
  • HEARTBEAT.md
  • BOOTSTRAP.md (nur beim ersten Lauf)
Große Dateien werden pro Datei mit agents.defaults.bootstrapMaxChars gekürzt (Standard 20000 Zeichen). OpenClaw erzwingt außerdem eine Gesamtobergrenze für Bootstrap-Injections über alle Dateien hinweg mit agents.defaults.bootstrapTotalMaxChars (Standard 24000 Zeichen). /context zeigt Roh- vs. injizierte Größen und ob eine Kürzung stattgefunden hat.

Skills: was injiziert wird vs. bedarfsweise geladen

Der System-Prompt enthält eine kompakte Skills-Liste (Name + Beschreibung + Speicherort). Diese Liste verursacht realen Overhead. Skill-Anweisungen sind standardmäßig nicht enthalten. Vom Modell wird erwartet, dass es read die SKILL.md des Skills nur bei Bedarf.

Werkzeuge: es gibt zwei Kosten

Werkzeuge beeinflussen den Kontext auf zwei Arten:
  1. Werkzeuglisten-Text im System-Prompt (das, was Sie als „Tooling“ sehen).
  2. Werkzeug-Schemas (JSON). Diese werden an das Modell gesendet, damit es Werkzeuge aufrufen kann. Sie zählen zum Kontext, auch wenn Sie sie nicht als Klartext sehen.
/context detail schlüsselt die größten Werkzeug-Schemas auf, damit Sie sehen können, was dominiert.

Befehle, Direktiven und „Inline-Shortcuts“

Slash-Befehle werden vom Gateway verarbeitet. Es gibt einige unterschiedliche Verhaltensweisen:
  • Eigenständige Befehle: Eine Nachricht, die nur /... ist, wird als Befehl ausgeführt.
  • Direktiven: /think, /verbose, /reasoning, /elevated, /model, /queue werden entfernt, bevor das Modell die Nachricht sieht.
    • Nachrichten, die nur aus Direktiven bestehen, speichern Sitzungseinstellungen.
    • Inline-Direktiven in einer normalen Nachricht wirken als Hinweise pro Nachricht.
  • Inline-Shortcuts (nur Allowlist-Absender): Bestimmte /...-Tokens innerhalb einer normalen Nachricht können sofort ausgeführt werden (Beispiel: „hey /status“) und werden entfernt, bevor das Modell den verbleibenden Text sieht.
Details: Slash-Befehle.

Sitzungen, Kompaktierung und Pruning (was bestehen bleibt)

Was über Nachrichten hinweg bestehen bleibt, hängt vom Mechanismus ab:
  • Normaler Verlauf bleibt im Sitzungsprotokoll, bis er durch Richtlinien kompaktierte/geschnitten wird.
  • Kompaktierung speichert eine Zusammenfassung im Protokoll und lässt aktuelle Nachrichten intakt.
  • Pruning entfernt alte Werkzeugergebnisse aus dem in-memory-Prompt für einen Lauf, schreibt das Protokoll jedoch nicht um.
Doku: Session, Compaction, Session pruning.

Was /context tatsächlich meldet

/context bevorzugt den neuesten run-built System-Prompt-Bericht, sofern verfügbar:
  • System prompt (run) = aus dem letzten eingebetteten (werkzeugfähigen) Lauf erfasst und im Sitzungsspeicher persistiert.
  • System prompt (estimate) = ad hoc berechnet, wenn kein Laufbericht existiert (oder bei Ausführung über ein CLI-Backend, das keinen Bericht erzeugt).
In beiden Fällen meldet es Größen und Hauptverursacher; es gibt nicht den vollständigen System-Prompt oder Werkzeug-Schemas aus.