gateway.token zu gateway.auth.token, launchd kann noch ein älteres globales Binary starten während Ihre Shell ein neueres nutzt, und wenn gateway.bind auf lan springt ohne passende Auth, verweigert das Gateway den Listen-Socket. Dieses Runbook deckt Snapshots vor Upgrades, eine disziplinierte Reihenfolge für openclaw doctor und openclaw gateway status --deep, Reparatur von Split Brain, reproduzierbare ssh -L- und Tailscale-Muster für Port 18789 sowie den realen Umfang von gateway install --force ab. Ergänzen Sie es mit der Installations-Checkliste und dem Artikel 24/7-Stabilität, damit Onboarding, Upgrade und Dauerbetrieb eine geschlossene Operations-Schleife bilden.Fünf typische Post-Upgrade-Fehler im Jahr 2026: nicht zuerst das Modell beschuldigen
Neuere OpenClaw-Builds verschärfen lokale Gateway-Binds und Auth-Guards. Wenn gateway.bind den Loopback verlässt ohne gültiges gateway.auth.token, scheitert der Start früh. Wenn Ihre interaktive Shell ein neueres globales openclaw auflöst, launchd aber noch einen älteren Präfix-Pfad startet, sehen Sie einen sauberen doctor-Lauf und gleichzeitig tote RPC-Proben: klassischer Split Brain. Ein drittes Muster hält nur den veralteten Schlüssel gateway.token, den das neue Schema ignoriert, sodass das Dashboard in 401-Schleifen läuft. Ein viertes legt State unter Enterprise-Sync oder Netzwerk-Homes, sodass Upgrades Schreibvorgänge gegen den Daemon-Leser verlaufen. Ein fünftes öffnet 18789 auf einer öffentlichen Schnittstelle bevor Anwendungs-Auth fertig ist, was Scanner-Rauschen erzeugt und On-Call dazu verleitet, Phantom-Model-Timeouts zu jagen.
Die folgenden fünf Checkpoints erzwingen Reihenfolge: Versionen und Dateien einfrieren bevor Sie Temperaturen oder API-Keys anfassen. Wenn First-Boot-Onboarding noch offen ist, schließen Sie zuerst die Installations-Checkliste ab, bevor Sie zu upgrade-spezifischen Pfaden zurückkehren.
Key-Drift: npm wurde gehoben, aber gateway.auth.token landete nie im plist-sichtbaren Profil, Dashboard und CLI lesen unterschiedliche Fragmente.
Duale Binaries: which openclaw widerspricht dem ersten ProgramArguments-Eintrag; neue Felder gelten nur auf einer Seite.
Unvollständiges Bind-Auth-Paar: lan ohne Token beendet das Gateway; Logs zeigen oft Verweigerungs-Signaturen.
Porttabelle ohne Besitzer: 18789 bleibt von einem Debug-Prozess belegt, EADDRINUSE überdauert Neustarts bis zur Bereinigung.
Rohes Internet: Lauschen auf nicht vertrauenswürdigen Schnittstellen vor Tunneln oder Edge-ACLs lädt sinnlose Retries ein.
Behandeln Sie Upgrades als Ausrichtungsproblem über Binaries, Plist-Metadaten und Konfigurationsdateien; erst danach wählen Sie Tunnel versus kontrollierte Bind-Strategien.
Ein subtiler Fehler ist Umgebungsvererbung: launchd-Jobs importieren nicht automatisch Shell-Exports aus Bequemlichkeit. Wenn Sie ein Token in einer interaktiven Session erzeugt und nur in eine rc-Datei geschrieben haben, sieht der Daemon es nie. Das robuste Muster persistiert Geheimnisse dort, wo der Dienst ohnehin Konfiguration liest, oder nutzt dokumentierte env-file-Hooks, dann Neustart und erneuter doctor-Lauf aus Sicht des Dienstes. Schreiben Sie erwartete SHA- oder Semver-Werte der CLI neben das Plist-Label ins Change-Ticket, damit das nächste Upgrade die Lücke zwischen menschlicher und überwachter Ausführung nicht still vergrößert.
Teilen sich mehrere Engineer ein Cloud-Mac-Experimentierfeld, ergänzen Sie das Runbook um eine kurze Rotationsnotiz: wer zuletzt force ausführte, welches Profil das Gateway besitzt und ob temporäre Bind-Änderungen zurückgenommen wurden. Geteilte Hosts verstärken Split Brain, weil jede Person annimmt, ihr PATH sei universell. Eine einzige autoritative Tabelle aus Binaries, Plist-Labels und Listenadressen verhindert Freitagnacht-Raten.
Golden-Image-Refreshes ändern oft den globalen npm-Pfad ohne dass alle LaunchAgents sofort neu geschrieben werden. Dokumentieren Sie nach jedem Image-Wechsel explizit, welche Node-Version, welcher Präfix und welches openclaw-Semver im Ticket stehen, und hängen Sie die doctor-Ausgabe als Artefakt an die Pipeline an. So entdecken Sie Diskrepanzen zwischen Dienst und Shell, bevor Produktionsfenster geöffnet werden. Wenn Sie Compliance-Pflichten haben, reduziert diese Spurbarkeit auch den Aufwand für interne Audits, weil Sie nicht rückwirkend rekonstruieren müssen, welches Binary am Dienst hing.
Die Verbindung zur 24/7-Dauerbetriebs-Dokumentation ist wichtig: Heartbeats und Gateway-Prozesse setzen voraus, dass dieselbe Binärdatei nach Kaltstart und nach Upgrade erreichbar bleibt. Wenn Ihr Heartbeat-Skript einen anderen PATH nutzt als launchd, sehen Sie gesunde Metriken in einem Terminal und gleichzeitig Alarme im Monitoring, obwohl nur ein Profil falsch ist. Das ist kein Netzwerkproblem und kein Modellproblem, sondern Konfigurationsalignment.
Vergleich: nur Loopback, LAN plus Token, getunnelter Dashboard-Zugriff
Auf Cloud-Macs ist die Standardhaltung Loopback plus SSH-Local-Forwarding oder ein Tailnet mit strengen ACLs. Das unterscheidet sich vom Modell, 18789 auf einer öffentlichen Schnittstelle zu binden. Packen Sie die Tabelle auf Seite eins des Runbooks, damit On-Call Bind-Wechsel nicht ad hoc diskutiert.
| Modus | Beste für | Voraussetzungen | Scharfe Kanten |
|---|---|---|---|
| loopback | Einzelner Engineer mit SSH und lokalem Browser | Einfachster Default; Token optional | Healthchecks aus dem Internet scheitern ohne Tunnel |
| lan + token | Interne Proben auf festen RFC1918-Bereichen | Erfordert gateway.auth.token und minimale Firewall-Löcher | Fehlendes Token in der Plist-Umgebung lässt den Dienst leer ausgehen |
| SSH -L / Tailscale | Ops über Internet mit Zero-Trust-Kante | SSH-Key-Rotation und MagicDNS-Planung | Lokale Portkollisionen; Reconnect-Skripte nach Sleep |
| Signal | Gesund bedeutet | Bei Fehlern zuerst prüfen |
|---|---|---|
openclaw doctor | Schema, Token, Port, Supervisor-Konsistenz | Legacy-Keys, PATH, Sync-Sperren |
openclaw gateway status | Runtime plus RPC-Probe-Zusammenfassung | Prozess lebt, RPC tot, Token-Drift |
openclaw gateway status --deep | Duplikat-Installationen und User- versus System-Unit-Hinweise | Doppelte launchd-Jobs, veraltete Plists |
Richten Sie zuerst aus, wer läuft, welche Datei geladen wird und welche Adresse lauscht, bevor Sie tunneln; sonst verbreiten Sie die Diskrepanz nur auf mehr Laptops.
Upstream-Troubleshooting startet mit openclaw status, openclaw gateway status, openclaw logs --follow und openclaw doctor. Notieren Sie auf Cloud-Images zusätzlich, ob Node und der globale Präfix nach Golden-Image-Refresh noch zu Plist-Erwartungen passen.
Tailscale und SSH-Tunnel unterscheiden sich im Betriebsaufwand. Tailscale liefert DNS-Namen und ACLs für kleine Teams ohne pro-Host-SSH-Flags zu merken, führt aber eine weitere Patch- und Audit-Kette ein. SSH-Portforwarding ist langweilig, was ein Vorteil ist, wenn Compliance eine minimale Moving-Parts-Liste will. Manche Teams kombinieren: Tailscale für Erreichbarkeit, Loopback-Bind am Gateway, explizite Deny-Regeln damit LAN-Binds während Upgrades nie auftauchen. Dokumentieren Sie das Degradationsverhalten wenn der Tunnel fällt: Agenten sollen nicht endlos tote Sockets hämmern.
Kapazitätsplanung bleibt relevant: ein OpenClaw-Upgrade entfernt Speicherdruck großer Toolchains nicht. Wenn Logs OOM neben Gateway-Restarts zeigen, erfassen Sie das getrennt von Auth-Failures. Der Memory- und Storage-Playbook-Artikel auf dieser Site hilft zu entscheiden, ob M4 Pro Headroom Stabilität kauft oder ob sauberere Supervisor-Metadaten genügen.
Für interne Reviews lohnt sich ein einheitliches Glossar: Loopback bedeutet 127.0.0.1 auf dem Host, LAN bedeutet eine RFC1918-Schnittstelle, Tunnel bedeutet dass der Browser nie direkt den öffentlichen Hostnamen des Macs spricht. Wenn Marketing oder Finance diese Begriffe vermischen, entstehen Budgetentscheidungen auf falscher Netzwerkannahme. Halten Sie die Tabelle im Wiki neben dem Architekturdiagramm und verlinken Sie die Erstinstallations-Checkliste, damit neue Mitarbeitende nicht aus Versehen öffentliche Binds aus alten Screenshots kopieren.
Bei mehreren Regionen sollte jede Gateway-Instanz ihr eigenes Change-Record-Feld für Bind-Modus und Tunnelbefehl haben. Sonst migriert ein Team aus Frankfurt erfolgreich auf Loopback plus SSH, während Singapur noch experimentelle LAN-Binds nutzt, und Sie vergleichen Äpfel mit Birnen in denselben KPIs. Konsolidieren Sie die Metriken pro Region und pro Modus, nicht global gemischt.
Token-Migration und Split Brain: Supervisor liest, was Sie editieren
Wenn ~/.openclaw/openclaw.json bereits gateway.auth.token enthält, Dashboards aber weiter 401 liefern, ist der nächste Schritt nicht ein zehntes Token. Prüfen Sie launchd-Arbeitsverzeichnis und ob OPENCLAW_STATE_DIR zur interaktiven Shell passt. Manche Cloud-Images trennen Heimverzeichnisse für Automatisierungsnutzer versus Login-Nutzer; eine Plist auf dem falschen Konto erzeugt die Illusion, cat zeige ein Token, während der Dienst keines sieht.
Wenn doctor meldet, eine neuere Konfiguration wurde von einem älteren Binary berührt, zuerst PATH reparieren und Supervisor-Metadaten aus der beabsichtigten Installation neu schreiben. Vermeiden Sie schnelle config set-Schleifen während ein altes Binary noch überwacht wird, sonst blockieren Meta-Versionswächter Mutationen ohne klares UI-Feedback.
openclaw doctor openclaw config get gateway.auth.token openclaw gateway status --deep openclaw gateway install --force openclaw gateway restart
Hinweis: Während des Change-Fensters snapshotten Sie openclaw.json, das Plist-Label und openclaw --version gemeinsam; Rollback als Triplett, nicht als isolierte Dateiwiederherstellung.
Unter der DSGVO und verwandten Aufbewahrungsgrundsätzen sollten Sie Log-Auszüge aus doctor, status --deep und gateway logs so kurz wie möglich halten, personenbezogene Pfade und Hostnamen redigieren und nur das für die Incident-Dokumentation Nötige in Tickets speichern; vollständige Rohlogs gehören in kontrollierte, zeitlich begrenzte Speicher mit Zugriffskontrolle, nicht in offene Chat-Kanäle.
Für Übergaben kleben Sie diese vier Kommandoausgaben neben den Heartbeat-Abschnitt im Artikel 24/7-Stabilität, damit die Nachtschicht nicht auf Chat-Folklore zu Port-Tweaks angewiesen ist.
Wenn CI Images backt, ergänzen Sie einen automatisierten Smoke, der doctor nach dem Build non-interactive ausführt und die Pipeline scheitern lässt, sobald Warnungen einen von Ihnen definierten Schwellenwert überschreiten. Das verschiebt Upgrade-Regressionen nach links, wo sie billiger sind. Bewahren Sie Smoke-Artefakte neben der Image-Versionszeichenkette, damit Operatoren Differenzen zwischen Dienstag- und Donnerstag-Builds ohne SSH-Archäologie sehen.
Zusätzlich sollten Sie nach jedem force-Lauf verifizieren, dass nur eine aktive User-LaunchAgent-Plist den Gateway-Prozess besitzt und dass keine verwaisten ProgramArguments auf alte npm-Pfade zeigen. Deep-Status zeigt oft vergessene Duplikate aus früheren Experimenten, die still im Hintergrund Ports halten oder falsche Tokens lesen. Deaktivieren Sie diese Duplikate explizit, bevor Sie erneut deployen, sonst kehrt der Split Brain nach dem nächsten Reboot zurück.
Sechs reproduzierbare Schritte von Loopback-Gesundheit zu sicherem Remote-18789
Unterstellen Sie, Loopback funktioniert bereits auf dem Server; sonst zurück zur Installations-Checkliste für Onboarding und Daemon. Erst danach Remote-Pfade ergänzen, damit Netzwerkfehler nicht als Auth-Failures maskieren.
Lokaler Beweis: Auf dem Host curl gegen http://127.0.0.1:18789/ oder den dokumentierten Health-Pfad und HTTP-Code notieren.
Pfad wählen: Einzel-Laptop-Zugriff bevorzugt ssh -L 18789:127.0.0.1:18789 user@cloud-mac; breitere Teams evaluieren Tailscale mit ACLs.
Kollisionen lösen: Wenn lokal 18789 belegt ist, ssh -L 19000:127.0.0.1:18789 nutzen und den hohen lokalen Port im Browser öffnen.
Tokens angleichen: Tunnel zeigen dem Browser weiter das Gateway-Token; Werte im Vault speichern, nicht im Chat.
Disconnects planen: autossh oder Äquivalent, damit unbeaufsichtigte Jobs nicht annehmen, das Gateway sei verschwunden.
Ticket schreiben: Bind-Modus, Tunnelbefehl und Portbesitzer im selben Change-Record wie Region und SKU; Kapazität über die geprüfte Bestellseite beziehen.
Dokumentieren Sie in Schritt sechs explizit, welche Firewall-Regeln zwischen Laptop und Cloud-Mac erlaubt sind und ob Split-Tunnel-VPNs SSH unterbrechen könnten. Viele false-positive Auth-Probleme entstehen, weil Corporate-VPNs lokale Forward-Ports blockieren, nicht weil Tokens falsch sind. Ein Satz im Runbook spart Stunden.
Drei Produktions-Gates und wann gateway install --force gerechtfertigt ist
Versionsstempel stimmen: meta.lastTouchedVersion und openclaw --version bewegen sich gemeinsam; beabsichtigte Downgrades brauchen eine eigene Policy, nicht stillen Force-Missbrauch.
Eine Supervisor-Quelle: Standard ist eine User-Level-Gateway-Unit pro Host; zeigen Deep-Scans Duplikate, Extras deaktivieren vor force.
Force-Grenzen: nutzen wenn Plist-Ports von Live-Config abweichen oder doctor explizit Supervisor-Refresh verlangt; niemals als Ersatz für Secret-Rotation oder Security-Group-Review.
Warnung: Wiederholtes force ohne Logs und doctor-Ausgabe verwandelt einfache Portkollisionen in Neustart-Schleifen und verbreitert das Outage-Fenster.
Im Vergleich zum Leihen eines Kollegen-Laptops als Gateway-Host vereinfacht es, OpenClaw auf einem mietbaren KVMNODE-Cloud-Mac zu verankern, Binary-Pfade, Plist-Labels, Tokens und Tunnelbefehle in einem Change-Record zu halten; Laptops verlieren weiterhin Zeit durch Sleep und OS-Upgrades. Für Teams, die Observability, Upgrade-Rollback und Verlängerungen wöchentlich dokumentieren müssen, ist dediziertes Bare Metal mit Multi-Metro-Wahl meist leichter umzusetzen als verstreute Hardware: kurzfristig in der gewählten Region mieten, Upgrades und Tunnel validieren, dann M4 Pro und längere Laufzeiten über Preisliste und Hilfezentrum entscheiden statt Release-Nacht-Chat-Anfragen.
Wenn Sie Incident-Reviews durchführen, ordnen Sie force-Ereignisse explizit den Gates A bis C zu. Ohne diese Zuordnung entsteht im Team der Eindruck, force sei ein universelles Wundermittel. Das führt dazu, dass Tokens rotiert werden, während der Supervisor noch alte Metadaten hält, was wiederum neue Drift erzeugt. Konsistenz in der Sprache und in den Tickets ist genauso wichtig wie Konsistenz in der Konfiguration.