Debugging
Diese Seite behandelt Debugging-Helfer für Streaming-Ausgaben, insbesondere wenn ein Anbieter Reasoning mit normalem Text vermischt.Laufzeit-Debug-Überschreibungen
Verwenden Sie/debug im Chat, um nur zur Laufzeit geltende Konfigurationsüberschreibungen zu setzen (im Speicher, nicht auf dem Datenträger).
/debug ist standardmäßig deaktiviert; aktivieren Sie es mit commands.debug: true.
Das ist praktisch, wenn Sie schwer auffindbare Einstellungen umschalten müssen, ohne openclaw.json zu bearbeiten.
Beispiele:
/debug reset löscht alle Überschreibungen und kehrt zur Konfiguration auf dem Datenträger zurück.
Gateway-Watch-Modus
Für schnelle Iteration führen Sie das Gateway unter der Dateiwatcher-Überwachung aus:src/, Quellcodedateien von Erweiterungen,
package.json und openclaw.plugin.json-Metadaten von Erweiterungen, tsconfig.json,
package.json und tsdown.config.ts neu.
Änderungen an Erweiterungsmetadaten starten das
Gateway neu, ohne einen tsdown-Rebuild zu erzwingen; Änderungen an Quellcode und Konfiguration bauen dist weiterhin zuerst neu.
Fügen Sie beliebige Gateway-CLI-Flags nach gateway:watch hinzu; sie werden bei
jedem Neustart weitergereicht. Das erneute Ausführen desselben Watch-Befehls für dasselbe Repo/Flag-Set
ersetzt jetzt den älteren Watcher, statt doppelte übergeordnete Watcher-Prozesse zu hinterlassen.
Dev-Profil + Dev-Gateway (—dev)
Verwenden Sie das Dev-Profil, um Zustand zu isolieren und eine sichere, wegwerfbare Umgebung für das Debugging hochzufahren. Es gibt zwei--dev-Flags:
- Globales
--dev(Profil): isoliert Zustand unter~/.openclaw-devund setzt den Standard-Gateway-Port auf19001(abgeleitete Ports verschieben sich entsprechend). gateway --dev: weist das Gateway an, automatisch eine Standardkonfiguration + Workspace zu erstellen, wenn sie fehlen (undBOOTSTRAP.mdzu überspringen).
pnpm openclaw ... aus.
Was das bewirkt:
-
Profilisolierung (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 sie fehlt (
gateway.mode=local, Bindung an loopback). - Setzt
agent.workspaceauf den Dev-Workspace. - Setzt
agent.skipBootstrap=true(keinBOOTSTRAP.md). - Legt die Workspace-Dateien an, falls sie fehlen:
AGENTS.md,SOUL.md,TOOLS.md,IDENTITY.md,USER.md,HEARTBEAT.md. - Standardidentität: C3‑PO (Protokolldroide).
- Überspringt Kanalanbieter im Dev-Modus (
OPENCLAW_SKIP_CHANNELS=1).
- Schreibt eine minimale Konfiguration, falls sie fehlt (
--dev ist ein globales Profil-Flag und wird von einigen Runnern geschluckt.
Wenn Sie es explizit angeben müssen, verwenden Sie die Form mit Umgebungsvariable:
--reset löscht Konfiguration, Anmeldedaten, Sitzungen und den Dev-Workspace (mit
trash, nicht rm) und erstellt dann die standardmäßige Dev-Umgebung neu.
Tipp: Wenn bereits ein Nicht-Dev-Gateway läuft (launchd/systemd), stoppen Sie es zuerst:
Logging des rohen Streams (OpenClaw)
OpenClaw kann den rohen Assistant-Stream vor jeder Filterung/Formatierung protokollieren. Das ist der beste Weg, um zu sehen, ob Reasoning als einfache Text-Deltas ankommt (oder als separate Thinking-Blöcke). Aktivieren Sie es per CLI:~/.openclaw/logs/raw-stream.jsonl
Logging roher Chunks (pi-mono)
Um rohe OpenAI-kompatible Chunks zu erfassen, bevor sie in Blöcke geparst werden, stellt pi-mono einen separaten Logger bereit:~/.pi-mono/logs/raw-openai-completions.jsonl
Hinweis: Dies wird nur von Prozessen ausgegeben, die den
openai-completions-Anbieter von pi-mono verwenden.
Sicherheitshinweise
- Protokolle roher Streams können vollständige Prompts, Tool-Ausgaben und Benutzerdaten enthalten.
- Behalten Sie Protokolle lokal und löschen Sie sie nach dem Debugging.
- Wenn Sie Protokolle weitergeben, entfernen Sie vorher Geheimnisse und personenbezogene Daten.