In de gangbare split-hostconfiguratie draait OpenClaw Gateway binnen WSL2, draait Chrome op Windows, en moet browserbesturing de grens tussen WSL2 en Windows oversteken. Het gelaagde foutpatroon uit issue #39369 betekent dat meerdere onafhankelijke problemen tegelijk kunnen optreden, waardoor eerst de verkeerde laag kapot lijkt.Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
Kies eerst de juiste browsermodus
Je hebt twee geldige patronen:Optie 1: Ruwe externe CDP van WSL2 naar Windows
Gebruik een extern browserprofiel dat vanuit WSL2 naar een Windows Chrome-CDP-eindpunt wijst. Kies dit wanneer:- de Gateway binnen WSL2 blijft
- Chrome op Windows draait
- je browserbesturing de grens tussen WSL2 en Windows moet laten oversteken
Optie 2: Host-lokale Chrome MCP
Gebruikexisting-session / user alleen wanneer de Gateway zelf op dezelfde host als Chrome draait.
Kies dit wanneer:
- OpenClaw en Chrome op dezelfde machine staan
- je de lokale ingelogde browserstatus wilt
- je geen cross-host browsertransport nodig hebt
- je geen geavanceerde beheerde/alleen-raw-CDP-routes nodig hebt, zoals
responsebody, PDF- export, downloadinterceptie of batchacties
Werkende architectuur
Referentievorm:- WSL2 draait de Gateway op
127.0.0.1:18789 - Windows opent de Control UI in een normale browser op
http://127.0.0.1:18789/ - Windows Chrome stelt een CDP-eindpunt beschikbaar op poort
9222 - WSL2 kan dat Windows CDP-eindpunt bereiken
- OpenClaw wijst een browserprofiel naar het adres dat bereikbaar is vanuit WSL2
Waarom deze configuratie verwarrend is
Meerdere fouten kunnen elkaar overlappen:- WSL2 kan het Windows CDP-eindpunt niet bereiken
- de Control UI wordt geopend vanaf een niet-beveiligde oorsprong
gateway.controlUi.allowedOriginskomt niet overeen met de paginaoorsprong- token of koppeling ontbreekt
- het browserprofiel wijst naar het verkeerde adres
Kritieke regel voor de Control UI
Wanneer de UI vanuit Windows wordt geopend, gebruik dan Windows localhost tenzij je bewust een HTTPS-configuratie hebt. Gebruik:http://127.0.0.1:18789/
Gebruik niet standaard een LAN-IP voor de Control UI. Gewone HTTP op een LAN- of tailnet-adres kan onveilig-oorsprong-/apparaat-authenticatiegedrag activeren dat niets met CDP zelf te maken heeft. Zie Control UI.
Valideer in lagen
Werk van boven naar beneden. Sla niets over.Laag 1: Controleer of Chrome CDP aanbiedt op Windows
Start Chrome op Windows met remote debugging ingeschakeld:Laag 2: Controleer of WSL2 dat Windows-eindpunt kan bereiken
Test vanuit WSL2 het exacte adres dat je incdpUrl wilt gebruiken:
/json/versionretourneert JSON met Browser / Protocol-Version-metadata/json/listretourneert JSON (een lege array is prima als er geen pagina’s open zijn)
- Windows stelt de poort nog niet beschikbaar aan WSL2
- het adres is verkeerd voor de WSL2-kant
- firewall / port forwarding / lokale proxying ontbreekt nog steeds
Laag 3: Configureer het juiste browserprofiel
Voor ruwe externe CDP laat je OpenClaw wijzen naar het adres dat bereikbaar is vanuit WSL2:- gebruik het vanuit WSL2 bereikbare adres, niet wat alleen op Windows werkt
- houd
attachOnly: trueaan voor extern beheerde browsers cdpUrlkanhttp://,https://,ws://ofwss://zijn- gebruik HTTP(S) wanneer je wilt dat OpenClaw
/json/versionontdekt - gebruik WS(S) alleen wanneer de browserprovider je een directe DevTools-socket-URL geeft
- test dezelfde URL met
curlvoordat je verwacht dat OpenClaw slaagt
Laag 4: Controleer de Control UI-laag afzonderlijk
Open de UI vanuit Windows:http://127.0.0.1:18789/
Controleer daarna:
- de paginaoorsprong komt overeen met wat
gateway.controlUi.allowedOriginsverwacht - tokenauthenticatie of koppeling is correct geconfigureerd
- je debugt geen authenticatieprobleem van de Control UI alsof het een browserprobleem is
Laag 5: Controleer end-to-end browserbesturing
Vanuit WSL2:- het tabblad opent in Windows Chrome
openclaw browser tabsretourneert het doel- latere acties (
snapshot,screenshot,navigate) werken vanuit hetzelfde profiel
Vaak misleidende fouten
Behandel elk bericht als een laagspecifieke aanwijzing:control-ui-insecure-auth- UI-oorsprong / secure-context-probleem, geen CDP-transportprobleem
token_missing- authenticatieconfiguratieprobleem
pairing required- apparaatgoedkeuringsprobleem
Remote CDP for profile "remote" is not reachable- WSL2 kan de geconfigureerde
cdpUrlniet bereiken
- WSL2 kan de geconfigureerde
Browser attachOnly is enabled and CDP websocket for profile "remote" is not reachable- het HTTP-eindpunt antwoordde, maar de DevTools WebSocket kon nog steeds niet worden geopend
- verouderde viewport- / dark-mode- / locale- / offline-overschrijvingen na een externe sessie
- voer
openclaw browser stop --browser-profile remoteuit - dit sluit de actieve besturingssessie en geeft Playwright/CDP-emulatiestatus vrij zonder de gateway of de externe browser opnieuw te starten
- voer
gateway timeout after 1500ms- vaak nog steeds CDP-bereikbaarheid of een traag/onbereikbaar extern eindpunt
No Chrome tabs found for profile="user"- lokaal Chrome MCP-profiel geselecteerd terwijl er geen host-lokale tabbladen beschikbaar zijn
Snelle triagechecklist
- Windows: werkt
curl http://127.0.0.1:9222/json/version? - WSL2: werkt
curl http://WINDOWS_HOST_OR_IP:9222/json/version? - OpenClaw-configuratie: gebruikt
browser.profiles.<name>.cdpUrldat exacte vanuit WSL2 bereikbare adres? - Control UI: open je
http://127.0.0.1:18789/in plaats van een LAN-IP? - Probeer je
existing-sessionover WSL2 en Windows te gebruiken in plaats van ruwe externe CDP?
Praktische conclusie
De configuratie is meestal haalbaar. Het lastige is dat browsertransport, oorsprongsbeveiliging van de Control UI en token/koppeling elk onafhankelijk kunnen mislukken terwijl ze vanaf de gebruikerskant op elkaar lijken. Bij twijfel:- controleer eerst lokaal het Windows Chrome-eindpunt
- controleer daarna hetzelfde eindpunt vanuit WSL2
- debug pas daarna OpenClaw-configuratie of Control UI-authenticatie