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-devund setzt den Standard-Gateway-Port auf19001(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:
-
Profil-Isolation (globales
--dev)OPENCLAW_PROFILE=devOPENCLAW_STATE_DIR=~/.openclaw-devOPENCLAW_CONFIG_PATH=~/.openclaw-dev/openclaw.jsonOPENCLAW_GATEWAY_PORT=19001(Browser/Canvas verschieben sich entsprechend)
-
Dev-Bootstrap (
gateway --dev)- Schreibt eine minimale Konfiguration, falls fehlend (
gateway.mode=local, Bind auf Loopback). - Setzt
agent.workspaceauf 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).
- Schreibt eine minimale Konfiguration, falls fehlend (
Reset-Ablauf (Neustart):
pnpm gateway:dev:reset
Hinweis:
--devist 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.