Najpierw wybierz odpowiedni tryb przeglądarki
Opcja 1: bezpośredni zdalny CDP z WSL2 do Windows
Użyj profilu zdalnej przeglądarki wskazującego z WSL2 na punkt końcowy CDP Chrome w systemie Windows. Wybierz tę opcję, gdy Gateway pozostaje wewnątrz WSL2, Chrome działa w systemie Windows, a sterowanie przeglądarką musi przekraczać granicę WSL2/Windows.Opcja 2: lokalny dla hosta Chrome MCP
Używaj sterownikaexisting-session (profil user) tylko wtedy, gdy Gateway działa
na tym samym hoście co Chrome, chcesz korzystać z lokalnego stanu zalogowanej przeglądarki, nie
potrzebujesz transportu przeglądarki między hostami ani funkcji responsebody,
eksportu do PDF, przechwytywania pobierania lub operacji wsadowych (profile Chrome MCP
ich nie obsługują).
W przypadku Gateway w WSL2 i Chrome w Windows użyj bezpośredniego zdalnego CDP. Chrome MCP działa
lokalnie na hoście i nie stanowi mostu między WSL2 a Windows.
Działająca architektura
- WSL2 uruchamia Gateway pod adresem
127.0.0.1:18789 - Windows otwiera Control UI w zwykłej przeglądarce pod adresem
http://127.0.0.1:18789/ - Chrome w Windows udostępnia punkt końcowy CDP na porcie
9222 - WSL2 może uzyskać dostęp do tego punktu końcowego CDP w Windows
- OpenClaw kieruje profil przeglądarki na adres dostępny z WSL2
Kluczowa reguła dotycząca Control UI
Gdy interfejs jest otwierany z Windows, używaj hosta lokalnego Windows, chyba że masz celowo skonfigurowane HTTPS:Weryfikuj warstwami
Przechodź od góry do dołu; nie pomijaj kolejnych kroków. Naprawienie jednej warstwy może nadal pozostawić widoczny inny błąd pochodzący z dalszej warstwy.Warstwa 1: sprawdź, czy Chrome udostępnia CDP w Windows
Zdiagnozuj IPv4 i IPv6 przed zmianą portproxy
Chromium próbuje najpierw powiązać zdalne debugowanie z127.0.0.1, a do
[::1] przechodzi tylko wtedy, gdy powiązanie IPv4 się nie powiedzie. Trwała reguła v4tov4 nasłuchująca
na 127.0.0.1:9222 może zająć ten punkt końcowy przed uruchomieniem Chrome. Chrome
przechodzi wtedy na [::1]:9222, podczas gdy stara reguła przekazuje ruch IPv4 z powrotem do
własnego procesu nasłuchującego i zwraca pustą odpowiedź.
Sprawdź rzeczywiste procesy nasłuchujące i reguły serwera proxy w Windows, zamiast wnioskować
o nich na podstawie wersji Chrome:
netstat użyj polecenia tasklist /fi "PID eq <PID>".
-
Jeśli
chrome.exeodpowiada pod adresem127.0.0.1, usuń każdą regułę portproxy, która również nasłuchuje na127.0.0.1:9222. Przekazuj wyłącznie adres karty sieciowej Windows dostępny z WSL2 do127.0.0.1. -
Jeśli
chrome.exeodpowiada tylko pod adresem[::1], skieruj proces nasłuchujący dostępny z WSL2 na::1za pomocąv4tov6, zamiast przekazywać ruch na nieużywany adres IPv4:
0.0.0.0, adresem LAN ani adresem tailnet: CDP zapewnia kontrolę nad
sesją przeglądarki.
Warstwa 2: sprawdź, czy WSL2 ma dostęp do tego punktu końcowego Windows
Z WSL2 przetestuj dokładnie ten adres, którego zamierzasz użyć wcdpUrl:
/json/versionzwraca dane JSON z metadanymi Browser / Protocol-Version/json/listzwraca dane JSON (pusta tablica jest prawidłowa, jeśli nie ma otwartych stron)
Warstwa 3: skonfiguruj prawidłowy profil przeglądarki
Skieruj OpenClaw na adres dostępny z WSL2:- używaj adresu dostępnego z WSL2, a nie adresu działającego wyłącznie w Windows
- pozostaw
attachOnly: truedla przeglądarek zarządzanych zewnętrznie cdpUrlmoże używać schematuhttp://,https://,ws://lubwss://- używaj HTTP(S), gdy chcesz, aby OpenClaw wykrywał
/json/version - używaj WS(S) tylko wtedy, gdy dostawca przeglądarki udostępnia bezpośredni adres URL gniazda DevTools
- przetestuj ten sam adres URL za pomocą
curl, zanim zaczniesz oczekiwać poprawnego działania OpenClaw
Warstwa 4: sprawdź oddzielnie warstwę Control UI
Otwórzhttp://127.0.0.1:18789/ z Windows, a następnie sprawdź:
- czy źródło strony odpowiada wartości oczekiwanej przez
gateway.controlUi.allowedOrigins - czy uwierzytelnianie tokenem lub parowanie jest prawidłowo skonfigurowane
- czy nie diagnozujesz problemu z uwierzytelnianiem Control UI tak, jakby był to problem z przeglądarką
Warstwa 5: sprawdź kompleksowe sterowanie przeglądarką
Z WSL2:- karta otwiera się w Chrome w Windows
browser tabszwraca obiekt docelowy- kolejne operacje (
snapshot,screenshot,navigate) działają z tego samego profilu
Częste mylące błędy
Lista kontrolna szybkiej diagnostyki
- Windows: który z adresów
127.0.0.1lub[::1]odpowiada na/json/versioni czy ten proces nasłuchujący należy dochrome.exe? - WSL2: czy działa
curl http://WINDOWS_HOST_OR_IP:9222/json/version? - Konfiguracja OpenClaw: czy
browser.profiles.<name>.cdpUrlużywa dokładnie tego adresu dostępnego z WSL2? - Control UI: czy otwierasz
http://127.0.0.1:18789/zamiast adresu IP sieci LAN? - Czy próbujesz używać
existing-sessionmiędzy WSL2 a Windows zamiast bezpośredniego zdalnego CDP?