CLI commands

Gateway

Gateway to serwer WebSocket OpenClaw (kanały, węzły, sesje, hooki). Podpolecenia na tej stronie znajdują się pod openclaw gateway ….

Uruchamianie Gateway

Uruchom lokalny proces Gateway:

openclaw gateway

Alias pierwszoplanowy:

openclaw gateway run
Startup behavior
  • Domyślnie Gateway odmawia uruchomienia, chyba że w ~/.openclaw/openclaw.json ustawiono gateway.mode=local. Użyj --allow-unconfigured do jednorazowych uruchomień ad hoc/deweloperskich.
  • Oczekuje się, że openclaw onboard --mode local i openclaw setup zapiszą gateway.mode=local. Jeśli plik istnieje, ale brakuje gateway.mode, potraktuj to jako uszkodzoną lub nadpisaną konfigurację i napraw ją zamiast zakładać tryb lokalny domyślnie.
  • Jeśli plik istnieje i brakuje gateway.mode, Gateway traktuje to jako podejrzane uszkodzenie konfiguracji i odmawia „zgadywania trybu lokalnego” za Ciebie.
  • Bindowanie poza loopback bez uwierzytelniania jest blokowane (zabezpieczenie).
  • SIGUSR1 wyzwala restart w procesie, gdy jest autoryzowany (commands.restart jest domyślnie włączone; ustaw commands.restart: false, aby zablokować ręczny restart, przy jednoczesnym pozostawieniu dozwolonych operacji narzędzia Gateway/config apply/update).
  • Handlery SIGINT/SIGTERM zatrzymują proces Gateway, ale nie przywracają żadnego niestandardowego stanu terminala. Jeśli opakowujesz CLI za pomocą TUI lub wejścia w trybie surowym, przywróć terminal przed wyjściem.

Opcje

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA " type="number"> Port WebSocket (domyślna wartość pochodzi z konfiguracji/env; zwykle 18789).

"--bind
"--auth

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdG9rZW4gPHRva2Vu " type="string"> Nadpisanie tokena (ustawia też OPENCLAW_GATEWAY_TOKEN dla procesu).

"--password
"--tailscale
--tailscale-reset-on-exitboolean

Zresetuj konfigurację Tailscale serve/funnel przy zamykaniu.

--allow-unconfiguredboolean

Zezwól na uruchomienie Gateway bez gateway.mode=local w konfiguracji. Omija zabezpieczenie uruchamiania wyłącznie dla ad hoc/deweloperskiego bootstrapu; nie zapisuje ani nie naprawia pliku konfiguracji.

--devboolean

Utwórz konfigurację deweloperską + workspace, jeśli ich brakuje (pomija BOOTSTRAP.md).

--resetboolean

Zresetuj konfigurację deweloperską + dane uwierzytelniające + sesje + workspace (wymaga --dev).

--forceboolean

Zabij istniejący nasłuch na wybranym porcie przed uruchomieniem.

--verboseboolean

Szczegółowe logi.

--cli-backend-logsboolean

Pokazuj w konsoli tylko logi backendu CLI (i włącz stdout/stderr).

"--ws-log
--compactboolean

Alias dla --ws-log compact.

--raw-streamboolean

Loguj surowe zdarzenia strumienia modelu do jsonl.

Restartowanie Gateway

openclaw gateway restart
openclaw gateway restart --safe
openclaw gateway restart --force

openclaw gateway restart --safe prosi działający Gateway o wstępne sprawdzenie aktywnej pracy OpenClaw przed restartem. Jeśli aktywne są zakolejkowane operacje, dostarczanie odpowiedzi, osadzone uruchomienia lub uruchomienia zadań, Gateway zgłasza blokady, scala zduplikowane żądania bezpiecznego restartu i restartuje się po opróżnieniu aktywnej pracy. Zwykłe restart zachowuje istniejące zachowanie menedżera usług dla zgodności. Używaj --force tylko wtedy, gdy jawnie chcesz natychmiastowej ścieżki nadpisania.

Profilowanie uruchamiania

  • Ustaw OPENCLAW_GATEWAY_STARTUP_TRACE=1, aby logować czasy faz podczas uruchamiania Gateway, w tym opóźnienie eventLoopMax dla każdej fazy oraz czasy tabel wyszukiwania pluginów dla installed-index, manifest registry, startup planning i owner-map.
  • Ustaw OPENCLAW_DIAGNOSTICS=timeline z OPENCLAW_DIAGNOSTICS_TIMELINE_PATH=<path>, aby zapisać najlepszym wysiłkiem oś czasu diagnostyki uruchamiania JSONL dla zewnętrznych harnessów QA. Możesz też włączyć flagę przez diagnostics.flags: ["timeline"] w konfiguracji; ścieżka nadal jest podawana przez env. Dodaj OPENCLAW_DIAGNOSTICS_EVENT_LOOP=1, aby uwzględnić próbki pętli zdarzeń.
  • Uruchom pnpm test:startup:gateway -- --runs 5 --warmup 1, aby wykonać benchmark uruchamiania Gateway. Benchmark zapisuje pierwsze wyjście procesu, /healthz, /readyz, czasy trace uruchamiania, opóźnienie pętli zdarzeń oraz szczegóły czasów tabel wyszukiwania pluginów.

Odpytywanie działającego Gateway

Wszystkie polecenia zapytań używają RPC przez WebSocket.

Output modes

  • Domyślnie: czytelne dla człowieka (kolorowe w TTY).
  • --json: JSON czytelny maszynowo (bez stylowania/spinnera).
  • --no-color (lub NO_COLOR=1): wyłącz ANSI, zachowując układ czytelny dla człowieka.

Shared options

  • --url <url>: URL WebSocket Gateway.
  • --token <token>: token Gateway.
  • --password <password>: hasło Gateway.
  • --timeout <ms>: timeout/budżet (różni się zależnie od polecenia).
  • --expect-final: czekaj na odpowiedź „final” (wywołania agenta).

gateway health

openclaw gateway health --url ws://127.0.0.1:18789

Endpoint HTTP /healthz jest próbką żywotności: zwraca odpowiedź, gdy serwer może odpowiadać przez HTTP. Endpoint HTTP /readyz jest bardziej rygorystyczny i pozostaje czerwony, gdy boczne procesy pluginów startowych, kanały lub skonfigurowane hooki nadal się stabilizują. Lokalne lub uwierzytelnione szczegółowe odpowiedzi gotowości zawierają blok diagnostyczny eventLoop z opóźnieniem pętli zdarzeń, wykorzystaniem pętli zdarzeń, stosunkiem rdzeni CPU oraz flagą degraded.

gateway usage-cost

Pobierz podsumowania kosztu użycia z logów sesji.

openclaw gateway usage-cost
openclaw gateway usage-cost --days 7
openclaw gateway usage-cost --json
"--days

gateway stability

Pobierz najnowszy rejestrator stabilności diagnostycznej z działającego Gateway.

openclaw gateway stability
openclaw gateway stability --type payload.large
openclaw gateway stability --bundle latest
openclaw gateway stability --bundle latest --export
openclaw gateway stability --json

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tbGltaXQgPGxpbWl0 " type="number" default="25"> Maksymalna liczba najnowszych zdarzeń do uwzględnienia (maks. 1000).

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdHlwZSA8dHlwZQ " type="string"> Filtruj według typu zdarzenia diagnostycznego, takiego jak payload.large lub diagnostic.memory.pressure.

"--since-seq
--bundle [path]string

Odczytaj utrwalony pakiet stabilności zamiast wywoływać działający Gateway. Użyj --bundle latest (lub po prostu --bundle) dla najnowszego pakietu w katalogu stanu albo przekaż bezpośrednio ścieżkę JSON pakietu.

--exportboolean

Zapisz udostępnialny zip diagnostyki wsparcia zamiast drukować szczegóły stabilności.

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tb3V0cHV0IDxwYXRo " type="string"> Ścieżka wyjściowa dla --export.

Privacy and bundle behavior
  • Rekordy przechowują metadane operacyjne: nazwy zdarzeń, liczniki, rozmiary bajtów, odczyty pamięci, stan kolejki/sesji, nazwy kanałów/pluginów oraz zredagowane podsumowania sesji. Nie przechowują tekstu czatu, treści webhooków, wyników narzędzi, surowych treści żądań ani odpowiedzi, tokenów, cookies, wartości sekretów, nazw hostów ani surowych identyfikatorów sesji. Ustaw diagnostics.enabled: false, aby całkowicie wyłączyć rejestrator.
  • Przy krytycznych wyjściach Gateway, timeoutach zamykania i błędach uruchamiania po restarcie OpenClaw zapisuje tę samą migawkę diagnostyczną do ~/.openclaw/logs/stability/openclaw-stability-*.json, gdy rejestrator ma zdarzenia. Sprawdź najnowszy pakiet za pomocą openclaw gateway stability --bundle latest; --limit, --type i --since-seq mają też zastosowanie do wyjścia pakietu.

gateway diagnostics export

Zapisz lokalny zip diagnostyczny przeznaczony do dołączania do zgłoszeń błędów. Model prywatności i zawartość pakietu opisano w Eksport diagnostyki.

openclaw gateway diagnostics export
openclaw gateway diagnostics export --output openclaw-diagnostics.zip
openclaw gateway diagnostics export --json
"--log-lines
"--log-bytes
"--url
"--token
"--password
"--timeout
--no-stability-bundleboolean

Pomiń wyszukiwanie utrwalonego pakietu stabilności.

--jsonboolean

Wypisz zapisaną ścieżkę, rozmiar i manifest jako JSON.

Eksport zawiera manifest, podsumowanie Markdown, kształt konfiguracji, oczyszczone szczegóły konfiguracji, oczyszczone podsumowania logów, oczyszczone migawki statusu/health Gateway oraz najnowszy pakiet stabilności, jeśli istnieje.

Jest przeznaczony do udostępniania. Zachowuje szczegóły operacyjne pomocne w debugowaniu, takie jak bezpieczne pola logów OpenClaw, nazwy podsystemów, kody statusu, czasy trwania, skonfigurowane tryby, porty, identyfikatory pluginów, identyfikatory providerów, niesekretne ustawienia funkcji oraz zredagowane operacyjne komunikaty logów. Pomija lub redaguje tekst czatu, treści webhooków, wyniki narzędzi, dane uwierzytelniające, cookies, identyfikatory kont/wiadomości, tekst promptów/instrukcji, nazwy hostów oraz wartości sekretów. Gdy komunikat w stylu LogTape wygląda jak tekst payloadu użytkownika/czatu/narzędzia, eksport zachowuje tylko informację, że komunikat został pominięty, oraz jego liczbę bajtów.

gateway status

gateway status pokazuje usługę Gateway (launchd/systemd/schtasks) oraz opcjonalną próbę łączności/możliwości uwierzytelniania.

openclaw gateway status
openclaw gateway status --json
openclaw gateway status --require-rpc
"--url
"--token
"--password
"--timeout
--no-probeboolean

Pomiń sondę łączności (widok tylko usługi).

--deepboolean

Skanuj także usługi na poziomie systemu.

--require-rpcboolean

Ulepsz domyślną sondę łączności do sondy odczytu i zakończ z kodem niezerowym, gdy ta sonda odczytu się nie powiedzie. Nie można łączyć z --no-probe.

Semantyka statusu
  • gateway status pozostaje dostępne do diagnostyki nawet wtedy, gdy lokalna konfiguracja CLI jest brakująca lub nieprawidłowa.
  • Domyślne gateway status potwierdza stan usługi, połączenie WebSocket oraz możliwość uwierzytelniania widoczną w czasie uzgadniania połączenia. Nie potwierdza operacji odczytu/zapisu/administracyjnych.
  • Sondy diagnostyczne nie modyfikują uwierzytelniania urządzenia przy pierwszym użyciu: ponownie używają istniejącego, buforowanego tokena urządzenia, gdy taki istnieje, ale nie tworzą nowej tożsamości urządzenia CLI ani rekordu parowania urządzenia tylko do odczytu tylko po to, aby sprawdzić status.
  • gateway status rozwiązuje skonfigurowane SecretRefs uwierzytelniania dla uwierzytelniania sondy, gdy to możliwe.
  • Jeśli wymagany SecretRef uwierzytelniania nie zostanie rozwiązany w tej ścieżce polecenia, gateway status --json zgłasza rpc.authWarning, gdy łączność/uwierzytelnianie sondy się nie powiedzie; przekaż jawnie --token/--password albo najpierw rozwiąż źródło sekretu.
  • Jeśli sonda się powiedzie, ostrzeżenia o nierozwiązanych odwołaniach do uwierzytelniania są wyciszane, aby uniknąć fałszywych alarmów.
  • Używaj --require-rpc w skryptach i automatyzacji, gdy nasłuchująca usługa nie wystarcza i potrzebujesz także sprawnych wywołań RPC z zakresem odczytu.
  • --deep dodaje best-effort skanowanie dodatkowych instalacji launchd/systemd/schtasks. Gdy wykryto wiele usług podobnych do Gateway, wyjście czytelne dla człowieka drukuje wskazówki czyszczenia i ostrzega, że większość konfiguracji powinna uruchamiać jeden Gateway na maszynę.
  • --deep zgłasza także niedawne przekazanie restartu nadzorcy Gateway, gdy proces usługi zakończył się czysto na potrzeby restartu przez zewnętrznego nadzorcę.
  • Wyjście czytelne dla człowieka zawiera rozwiązaną ścieżkę pliku dziennika oraz migawkę ścieżek/poprawności konfiguracji CLI względem usługi, aby pomóc diagnozować rozbieżności profilu lub katalogu stanu.
Kontrole rozbieżności uwierzytelniania Linux systemd
  • W instalacjach Linux systemd kontrole rozbieżności uwierzytelniania usługi odczytują zarówno wartości Environment=, jak i EnvironmentFile= z jednostki (w tym %h, ścieżki w cudzysłowie, wiele plików oraz opcjonalne pliki -).
  • Kontrole rozbieżności rozwiązują SecretRefs gateway.auth.token przy użyciu scalonego środowiska uruchomieniowego (najpierw środowisko polecenia usługi, następnie awaryjnie środowisko procesu).
  • Jeśli uwierzytelnianie tokenem nie jest faktycznie aktywne (jawny gateway.auth.mode równy password/none/trusted-proxy albo tryb nieustawiony, gdzie hasło może wygrać i żaden kandydat tokena nie może wygrać), kontrole rozbieżności tokena pomijają rozwiązywanie tokena konfiguracji.

gateway probe

gateway probe to polecenie „debuguj wszystko”. Zawsze sonduje:

  • skonfigurowany zdalny Gateway (jeśli ustawiony), oraz
  • localhost (local loopback) nawet jeśli zdalny cel jest skonfigurowany.

Jeśli przekażesz --url, ten jawny cel zostanie dodany przed obydwoma. Wyjście czytelne dla człowieka etykietuje cele jako:

  • URL (explicit)
  • Remote (configured) lub Remote (configured, inactive)
  • Local loopback
openclaw gateway probe
openclaw gateway probe --json
Interpretacja
  • Reachable: yes oznacza, że co najmniej jeden cel zaakceptował połączenie WebSocket.
  • Capability: read-only|write-capable|admin-capable|pairing-pending|connect-only zgłasza, co sonda mogła potwierdzić o uwierzytelnianiu. Jest to oddzielne od osiągalności.
  • Read probe: ok oznacza, że szczegółowe wywołania RPC z zakresem odczytu (health/status/system-presence/config.get) także się powiodły.
  • Read probe: limited - missing scope: operator.read oznacza, że połączenie się powiodło, ale RPC z zakresem odczytu jest ograniczone. Jest to zgłaszane jako zdegradowana osiągalność, a nie pełna awaria.
  • Read probe: failed po Connect: ok oznacza, że Gateway zaakceptował połączenie WebSocket, ale dalsza diagnostyka odczytu przekroczyła limit czasu lub się nie powiodła. To także zdegradowana osiągalność, a nie nieosiągalny Gateway.
  • Podobnie jak gateway status, sonda ponownie używa istniejącego buforowanego uwierzytelniania urządzenia, ale nie tworzy pierwszorazowej tożsamości urządzenia ani stanu parowania.
  • Kod zakończenia jest niezerowy tylko wtedy, gdy żaden sondowany cel nie jest osiągalny.
Wyjście JSON

Poziom główny:

  • ok: co najmniej jeden cel jest osiągalny.
  • degraded: co najmniej jeden cel zaakceptował połączenie, ale nie ukończył pełnej szczegółowej diagnostyki RPC.
  • capability: najlepsza możliwość widziana wśród osiągalnych celów (read_only, write_capable, admin_capable, pairing_pending, connected_no_operator_scope lub unknown).
  • primaryTargetId: najlepszy cel do traktowania jako aktywnego zwycięzcę w tej kolejności: jawny URL, tunel SSH, skonfigurowany zdalny cel, następnie local loopback.
  • warnings[]: rekordy ostrzeżeń best-effort z code, message i opcjonalnym targetIds.
  • network: wskazówki URL dla local loopback/tailnet pochodzące z bieżącej konfiguracji i sieci hosta.
  • discovery.timeoutMs i discovery.count: rzeczywisty budżet wykrywania/liczba wyników użyte dla tego przebiegu sondy.

Dla celu (targets[].connect):

  • ok: osiągalność po klasyfikacji połączenia + degradacji.
  • rpcOk: pełny sukces szczegółowego RPC.
  • scopeLimited: szczegółowe RPC nie powiodło się z powodu brakującego zakresu operatora.

Dla celu (targets[].auth):

  • role: rola uwierzytelniania zgłoszona w hello-ok, gdy dostępna.
  • scopes: przyznane zakresy zgłoszone w hello-ok, gdy dostępne.
  • capability: ujawniona klasyfikacja możliwości uwierzytelniania dla tego celu.
Typowe kody ostrzeżeń
  • ssh_tunnel_failed: konfiguracja tunelu SSH nie powiodła się; polecenie wróciło do bezpośrednich sond.
  • multiple_gateways: osiągalny był więcej niż jeden cel; jest to nietypowe, chyba że celowo uruchamiasz izolowane profile, takie jak bot ratunkowy.
  • auth_secretref_unresolved: skonfigurowany SecretRef uwierzytelniania nie mógł zostać rozwiązany dla nieudanego celu.
  • probe_scope_limited: połączenie WebSocket się powiodło, ale sonda odczytu została ograniczona przez brakujący operator.read.

Zdalnie przez SSH (zgodność z aplikacją Mac)

Tryb aplikacji macOS „Remote over SSH” używa lokalnego przekierowania portu, aby zdalny Gateway (który może być związany tylko z loopback) stał się osiągalny pod ws://127.0.0.1:<port>.

Odpowiednik CLI:

openclaw gateway probe --ssh user@gateway-host

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tc3NoIDx0YXJnZXQ " type="string"> user@host lub user@host:port (port domyślnie 22).

--ssh-autoboolean

Wybierz pierwszy wykryty host Gateway jako cel SSH z rozwiązanego punktu końcowego wykrywania (local. plus skonfigurowana domena rozległa, jeśli istnieje). Wskazówki tylko TXT są ignorowane.

Konfiguracja (opcjonalna, używana jako wartości domyślne):

  • gateway.remote.sshTarget
  • gateway.remote.sshIdentity

gateway call <method>

Niskopoziomowy pomocnik RPC.

openclaw gateway call status
openclaw gateway call logs.tail --params '{"sinceMs": 60000}'
"--params
"--url
"--token
"--password
"--timeout
--expect-finalboolean

Głównie dla RPC w stylu agenta, które strumieniują zdarzenia pośrednie przed końcowym ładunkiem.

--jsonboolean

Wyjście JSON czytelne maszynowo.

Zarządzaj usługą Gateway

openclaw gateway install
openclaw gateway start
openclaw gateway stop
openclaw gateway restart
openclaw gateway uninstall

Instalacja z wrapperem

Użyj --wrapper, gdy zarządzana usługa musi startować przez inny plik wykonywalny, na przykład podkładkę menedżera sekretów lub pomocnika uruchamiania jako inny użytkownik. Wrapper otrzymuje normalne argumenty Gateway i odpowiada za ostateczne wykonanie openclaw albo Node z tymi argumentami.

cat > ~/.local/bin/openclaw-doppler <<'EOF'
#!/usr/bin/env bash
set -euo pipefail
exec doppler run --project my-project --config production -- openclaw "$@"
EOF
chmod +x ~/.local/bin/openclaw-doppler

openclaw gateway install --wrapper ~/.local/bin/openclaw-doppler --force
openclaw gateway restart

Możesz także ustawić wrapper przez środowisko. gateway install sprawdza, czy ścieżka jest plikiem wykonywalnym, zapisuje wrapper do ProgramArguments usługi i utrwala OPENCLAW_WRAPPER w środowisku usługi na potrzeby późniejszych wymuszonych reinstalacji, aktualizacji i napraw doctor.

OPENCLAW_WRAPPER="$HOME/.local/bin/openclaw-doppler" openclaw gateway install --force
openclaw doctor

Aby usunąć utrwalony wrapper, wyczyść OPENCLAW_WRAPPER podczas reinstalacji:

OPENCLAW_WRAPPER= openclaw gateway install --force
openclaw gateway restart
Opcje poleceń
  • gateway status: --url, --token, --password, --timeout, --no-probe, --require-rpc, --deep, --json
  • gateway install: --port, --runtime <node|bun>, --token, --wrapper <path>, --force, --json
  • gateway restart: --safe, --force, --wait <duration>, --json
  • gateway uninstall|start|stop: --json
Zachowanie cyklu życia
  • Użyj gateway restart, aby zrestartować zarządzaną usługę. Nie łącz gateway stop i gateway start jako zamiennika restartu; w macOS gateway stop celowo wyłącza LaunchAgent przed zatrzymaniem go.
  • gateway restart --safe prosi działający Gateway o wstępne sprawdzenie aktywnej pracy OpenClaw i odroczenie restartu do czasu opróżnienia dostarczania odpowiedzi, osadzonych uruchomień i uruchomień zadań. --safe nie można łączyć z --force ani --wait.
  • gateway restart --wait 30s zastępuje skonfigurowany budżet opróżniania restartu dla tego restartu. Same liczby oznaczają milisekundy; akceptowane są jednostki takie jak s, m i h. --wait 0 czeka bezterminowo.
  • gateway restart --force pomija opróżnianie aktywnej pracy i restartuje natychmiast. Użyj tego, gdy operator sprawdził już wymienione blokery zadań i chce natychmiast przywrócić gateway.
  • Polecenia cyklu życia akceptują --json do skryptowania.
Uwierzytelnianie i SecretRefs podczas instalacji
  • Gdy uwierzytelnianie tokenem wymaga tokena, a gateway.auth.token jest zarządzany przez SecretRef, gateway install sprawdza, czy SecretRef można rozwiązać, ale nie zapisuje rozwiązanego tokena w metadanych środowiska usługi.
  • Jeśli uwierzytelnianie tokenem wymaga tokena, a skonfigurowany SecretRef tokena pozostaje nierozwiązany, instalacja kończy się niepowodzeniem w trybie zamkniętym zamiast zapisywać awaryjny tekst jawny.
  • W przypadku uwierzytelniania hasłem w gateway run preferuj OPENCLAW_GATEWAY_PASSWORD, --password-file albo gateway.auth.password oparty na SecretRef zamiast wbudowanego --password.
  • W wywnioskowanym trybie uwierzytelniania dostępne tylko w powłoce OPENCLAW_GATEWAY_PASSWORD nie łagodzi wymagań dotyczących tokena instalacyjnego; podczas instalowania zarządzanej usługi użyj trwałej konfiguracji (gateway.auth.password lub konfiguracji env).
  • Jeśli skonfigurowano zarówno gateway.auth.token, jak i gateway.auth.password, a gateway.auth.mode nie jest ustawiony, instalacja jest blokowana do czasu jawnego ustawienia trybu.

Wykrywanie Gateway (Bonjour)

gateway discover skanuje w poszukiwaniu sygnałów nawigacyjnych Gateway (_openclaw-gw._tcp).

  • Multicast DNS-SD: local.
  • Unicast DNS-SD (Wide-Area Bonjour): wybierz domenę (przykład: openclaw.internal.) i skonfiguruj split DNS + serwer DNS; zobacz Bonjour.

Tylko Gateway z włączonym wykrywaniem Bonjour (domyślnie) ogłaszają sygnał nawigacyjny.

Rekordy wykrywania Wide-Area zawierają (TXT):

  • role (wskazówka roli Gateway)
  • transport (wskazówka transportu, np. gateway)
  • gatewayPort (port WebSocket, zwykle 18789)
  • sshPort (opcjonalnie; gdy go nie ma, klienci domyślnie ustawiają cele SSH na 22)
  • tailnetDns (nazwa hosta MagicDNS, gdy jest dostępna)
  • gatewayTls / gatewayTlsSha256 (TLS włączony + odcisk certyfikatu)
  • cliPath (wskazówka instalacji zdalnej zapisywana w strefie Wide-Area)

gateway discover

openclaw gateway discover
"--timeout
--jsonboolean

Dane wyjściowe czytelne maszynowo (wyłącza także stylizację/spinner).

Przykłady:

openclaw gateway discover --timeout 4000
openclaw gateway discover --json | jq '.beacons[].wsUrl'

Powiązane