Debugging

Diese Seite behandelt Debugging-Hilfsmittel fuer die Streaming-Ausgabe, insbesondere wenn ein Anbieter Reasoning in den normalen Text einmischt.

Laufzeit-Debug-Ueberschreibungen

Verwende /debug im Chat, um nur zur Laufzeit gueltige Konfigurations-Ueberschreibungen zu setzen (im Speicher, nicht auf der Festplatte). /debug ist standardmaessig deaktiviert; aktiviere es mit commands.debug: true. Das ist praktisch, wenn du selten genutzte Einstellungen umschalten willst, ohne openclaw.json zu bearbeiten.

Beispiele:

/debug show
/debug set messages.responsePrefix="[openclaw]"
/debug unset messages.responsePrefix
/debug reset

/debug reset loescht alle Ueberschreibungen und kehrt zur Konfiguration auf der Festplatte zurueck.

Gateway Watch-Modus

Fuer schnelle Iteration fuehre das Gateway unter dem Datei-Watcher aus:

pnpm gateway:watch

Das entspricht:

node --watch-path src --watch-path tsconfig.json --watch-path package.json --watch-preserve-output scripts/run-node.mjs gateway --force

Fuege beliebige Gateway-CLI-Flags nach gateway:watch hinzu und sie werden bei jedem Neustart durchgereicht.

Dev-Profil + Dev-Gateway (—dev)

Verwende das Dev-Profil, um den Status zu isolieren und eine sichere, verwerfbare Umgebung fuer Debugging aufzusetzen. Es gibt zwei --dev-Flags:

  • Globales --dev (Profil): isoliert den Status unter ~/.openclaw-dev und setzt den Standard-Gateway-Port auf 19001 (abgeleitete Ports verschieben sich entsprechend).
  • gateway --dev: weist das Gateway an, automatisch eine Standard-Konfiguration + Workspace zu erstellen wenn fehlend (und BOOTSTRAP.md zu ueberspringen).

Empfohlener Ablauf (Dev-Profil + Dev-Bootstrap):

pnpm gateway:dev
OPENCLAW_PROFILE=dev openclaw tui

Falls du noch keine globale Installation hast, fuehre die CLI ueber pnpm openclaw ... aus.

Was das bewirkt:

  1. Profil-Isolation (globales --dev)

    • OPENCLAW_PROFILE=dev
    • OPENCLAW_STATE_DIR=~/.openclaw-dev
    • OPENCLAW_CONFIG_PATH=~/.openclaw-dev/openclaw.json
    • OPENCLAW_GATEWAY_PORT=19001 (Browser/Canvas verschieben sich entsprechend)
  2. Dev-Bootstrap (gateway --dev)

    • Schreibt eine minimale Konfiguration, falls fehlend (gateway.mode=local, Bind auf Loopback).
    • Setzt agent.workspace auf den Dev-Workspace.
    • Setzt agent.skipBootstrap=true (kein BOOTSTRAP.md).
    • Erstellt Workspace-Dateien, falls fehlend: AGENTS.md, SOUL.md, TOOLS.md, IDENTITY.md, USER.md, HEARTBEAT.md.
    • Standard-Identitaet: C3-PO (Protokolldroide).
    • Ueberspringt Channel-Provider im Dev-Modus (OPENCLAW_SKIP_CHANNELS=1).

Reset-Ablauf (Neustart):

pnpm gateway:dev:reset

Hinweis: --dev ist ein globales Profil-Flag und wird von manchen Runnern verschluckt. Wenn du es explizit angeben musst, verwende die Umgebungsvariablen-Form:

OPENCLAW_PROFILE=dev openclaw gateway --dev --reset

--reset loescht Konfiguration, Zugangsdaten, Sitzungen und den Dev-Workspace (mit trash, nicht rm) und erstellt dann das Standard-Dev-Setup neu.

Tipp: Wenn ein Nicht-Dev-Gateway bereits laeuft (launchd/systemd), stoppe es zuerst:

openclaw gateway stop

Rohes Stream-Logging (OpenClaw)

OpenClaw kann den rohen Assistenten-Stream vor jeglicher Filterung/Formatierung protokollieren. Das ist der beste Weg um zu sehen, ob Reasoning als Klartext-Deltas (oder als separate Thinking-Bloecke) ankommt.

Aktivierung ueber CLI:

pnpm gateway:watch --raw-stream

Optionale Pfad-Ueberschreibung:

pnpm gateway:watch --raw-stream --raw-stream-path ~/.openclaw/logs/raw-stream.jsonl

Aequivalente Umgebungsvariablen:

OPENCLAW_RAW_STREAM=1
OPENCLAW_RAW_STREAM_PATH=~/.openclaw/logs/raw-stream.jsonl

Standard-Datei:

~/.openclaw/logs/raw-stream.jsonl

Rohes Chunk-Logging (pi-mono)

Um rohe OpenAI-kompatible Chunks vor dem Parsen in Bloecke aufzuzeichnen, stellt pi-mono einen separaten Logger bereit:

PI_RAW_STREAM=1

Optionaler Pfad:

PI_RAW_STREAM_PATH=~/.pi-mono/logs/raw-openai-completions.jsonl

Standard-Datei:

~/.pi-mono/logs/raw-openai-completions.jsonl

Hinweis: Dies wird nur von Prozessen ausgegeben, die den openai-completions-Provider von pi-mono verwenden.

Sicherheitshinweise

  • Rohe Stream-Logs koennen vollstaendige Prompts, Tool-Ausgaben und Benutzerdaten enthalten.
  • Bewahre Logs lokal auf und loesche sie nach dem Debugging.
  • Wenn du Logs teilst, entferne zuerst Geheimnisse und personenbezogene Daten.