Abo -30% SUB30
OpenClaw SOUL.md: Die Datei, die dein komplettes Agent-Verhalten steuert
$ ./blog/guides
Anleitungen

OpenClaw SOUL.md: Die Datei, die dein komplettes Agent-Verhalten steuert

ClawHosters
ClawHosters von Daniel Samer
5 Min. Lesezeit

Die meisten Leute behandeln OpenClaw wie einen Chat-Assistenten. Frage rein, Antwort raus. Aber das ist ungefähr so, als würde man einen Formel-1-Wagen zum Einkaufen nehmen. OpenClaw ist eine modulare Prompt-Assembly-Runtime, und SOUL.md ist die Datei, die dem Agenten sagt, wer er sein soll.

Bei jeder einzelnen Nachricht, die dein Agent verarbeitet, wird SOUL.md in den System Prompt injiziert. Jede Runde. Das bedeutet: es kostet bei jeder Interaktion Tokens und formt jede Antwort. Richtig konfiguriert fühlt sich dein Agent an wie ein Kollege, der dein Business kennt. Falsch konfiguriert verbrennst du Geld für einen verwirrten Bot.

Was SOUL.md tatsächlich macht

SOUL.md ist eine Markdown-Datei, die Persönlichkeit, Regeln und langfristige Anweisungen deines Agenten definiert. Stell es dir als den System Prompt vor, der über Sessions hinweg bestehen bleibt. Wenn OpenClaw startet, liest es SOUL.md und schiebt den Inhalt an den Anfang jedes Gesprächs.

Was die meisten nicht wissen: OpenClaw schickt nicht einfach SOUL.md an das Modell. Es baut den System Prompt dynamisch aus mehreren Quellen zusammen. Deine SOUL.md, plus aktive Skills, plus Memory-Kontext, plus User-Identity-Metadaten, plus Model-Aliases-Konfiguration. Alles wird zusammengefügt, bevor es ans LLM geht.

Genau deshalb verhalten sich Sub-Agents anders als dein Haupt-Agent. Sub-Agents laufen im "minimal" Modus, der Memory, Messaging-Hooks und Heartbeat-Funktionen entfernt. Gleiche SOUL.md, anderer Runtime-Kontext.

Was in die SOUL.md gehört

Ich habe SOUL.md-Dateien gesehen, die 5 Zeilen lang waren, und welche mit 500. Beide Extreme machen Probleme. Basierend auf dem, was wir bei ClawHosters-Instanzen beobachtet haben, liegt der Sweet Spot bei 50 bis 150 Zeilen, aufgeteilt in drei Bereiche.

Persönlichkeit und Tonfall: Wie der Agent kommuniziert. "Antworte professionell aber freundlich." "Keine Emojis verwenden." "Halte Antworten unter 200 Wörtern, außer es wird ausdrücklich mehr verlangt." Sei hier konkret. "Sei knapp" bedeutet für ein LLM nichts. "Maximal 5 Aufzählungspunkte pro Antwort" gibt dem Modell etwas Greifbares.

Kernregeln und Grenzen: Was der Agent tun darf und was nicht. "Gib niemals Preisinformationen weiter, ohne die aktuelle Preisliste zu prüfen." "Frage immer nach der Bestellnummer, bevor du den Versandstatus nachschlägst." Das sind deine Leitplanken.

Langfristige Anweisungen: Zeitplanung, Formatierungsregeln, Workflow-Muster. "Wenn ich nach Lagerbestand frage, prüfe immer beide Lager." "Formatiere alle Daten als TT.MM.JJJJ."

Ein Punkt, der viele überrascht, wie der OpenClaw Experts Guide erklärt: Position ist entscheidend. Modelle gewichten Anweisungen am Anfang des System Prompts stärker als am Ende. Deine wichtigsten Regeln gehören ganz nach oben in die SOUL.md. Nicht in die Mitte. Nicht verstreut. Ganz oben.

Die Token-Rechnung, die du wahrscheinlich ignorierst

Jedes Zeichen in deiner SOUL.md kostet bei jeder Nachricht Tokens. Rechnen wir mal.

Eine 150-Zeilen SOUL.md hat ungefähr 3.000 bis 4.000 Tokens. Laut der DeepWiki Source-Analyse können OpenClaws Bootstrap-Dateien (System Prompt, aktive Skills, Memory-Kontext) über 35.600 Tokens pro Nachricht verschlingen, bevor der Nutzer überhaupt "Hallo" tippt. Es gibt ein Limit von 20.000 Zeichen pro Datei und 150.000 Zeichen insgesamt über alle geladenen Kontexte.

Anthropics Prompt Caching hilft dabei. Wenn deine SOUL.md zwischen Nachrichten stabil bleibt (und das sollte sie), spart der Cache 80 bis 90% der Input-Token-Kosten. Aber wenn du SOUL.md dynamisch zwischen Nachrichten änderst, sprengst du den Cache jedes Mal. Unser Token-Kosten-Optimierungsguide erklärt die komplette Kostenstruktur.

Fazit: Halte SOUL.md stabil und knapp. Stopf keine Anweisungen rein, die du nur gelegentlich brauchst. Pack die stattdessen in Skills.

Memory: Wo Anweisungen wirklich bestehen bleiben

OpenClaws Memory-System nutzt SQLite mit FTS5-Volltextsuche und sqlite-vec für Vektor-Embeddings. Wenn der Agent sich an etwas erinnern muss, verwendet er hybrides Scoring: 70% Vektor-Ähnlichkeit plus 30% BM25-Keyword-Match.

Die wichtigste Regel: Was nicht in eine Datei geschrieben wird, existiert langfristig nicht. Anweisungen, die du nur im Chat gibst, werden irgendwann durch Kontext-Kompaktierung entfernt. Genau diesen Fehlerfall haben wir in unserem Sicherheitsartikel über ClawBands behandelt. Wenn eine Regel wichtig ist, gehört sie in SOUL.md oder eine eigene Anweisungsdatei. Chat-Anweisungen sterben bei der Kompaktierung.

Die Sicherheitslücke, die du kennen musst

SOUL.md-Regeln sind Empfehlungen, kein Zwang. Wenn du "niemals Shell-Kommandos ausführen" in die SOUL.md schreibst, wird das LLM versuchen, das zu respektieren. Aber eine geschickte Prompt Injection kann das umgehen. SOUL.md ist eine Vorschlagsebene, keine Sicherheitsgrenze.

Für echte Durchsetzung brauchst du Tool Policies in deiner OpenClaw-Konfiguration. Tool Policies arbeiten auf Runtime-Ebene und blockieren Tools, bevor das LLM sie überhaupt sieht. Das ist eine Mauer, kein Vorschlag. Unser Security-Hardening-Guide erklärt beide Ebenen im Detail.

Wie ClawHosters das handhabt

Bei ClawHosters bekommt jede Instanz ein eigenes, dediziertes Context Window und vorkonfigurierte Prompt-Einstellungen. Das Dashboard bietet eine UI zum Bearbeiten der SOUL.md, ohne Konfigurationsdateien anfassen zu müssen. Und die Container-Isolation sorgt dafür, dass dein Prompt-Kontext privat bleibt.

Beim Self-Hosting musst du das alles manuell verwalten. Der Free-LLM-API-Guide erklärt, wie du günstig startest, und unser Self-Hosted vs Managed Vergleich zeigt, worauf du dich einlässt.

Häufig gestellte Fragen

SOUL.md ist eine Markdown-Datei, die Persönlichkeit, Regeln und langfristige Anweisungen deines OpenClaw-Agenten definiert. Sie wird bei jeder Nachricht in den System Prompt injiziert und bestimmt, wie dein Agent auf Nutzer reagiert.

Zwischen 50 und 150 Zeilen. Kürzere Dateien geben dem Modell zu wenig Orientierung. Längere fressen bei jeder Nachricht Tokens und verwässern deine wichtigsten Anweisungen. Die kritischsten Regeln gehören an den Anfang.

Nein. SOUL.md-Anweisungen sind Empfehlungen. Das LLM versucht sie zu befolgen, aber Prompt Injection kann textbasierte Regeln umgehen. Für echte Absicherung brauchst du OpenClaws Tool Policies, die Aktionen auf Runtime-Ebene blockieren, bevor das Modell sie ausführen kann.

Sub-Agents laufen im "minimal" Modus, der Memory, Messaging-Hooks und Heartbeat-Funktionen aus dem System Prompt entfernt. Deine SOUL.md wird zwar geladen, aber der umgebende Kontext ist anders. Das kann beeinflussen, wie das Modell deine Anweisungen interpretiert.

Halte SOUL.md zwischen Nachrichten stabil, damit Prompt Caching greift (spart 80-90% der Input-Tokens). Verschiebe selten gebrauchte Anweisungen in Skills, die bei Bedarf geladen werden. Vermeide dynamische Änderungen, die den Cache bei jeder Runde zerstören.
*Zuletzt aktualisiert: März 2026*

Quellen

  1. 1 System Prompt
  2. 2 OpenClaw Experts Guide
  3. 3 DeepWiki Source-Analyse
  4. 4 Token-Kosten-Optimierungsguide
  5. 5 70% Vektor-Ähnlichkeit plus 30% BM25-Keyword-Match
  6. 6 Sicherheitsartikel über ClawBands
  7. 7 Security-Hardening-Guide
  8. 8 ClawHosters
  9. 9 Free-LLM-API-Guide
  10. 10 Self-Hosted vs Managed Vergleich