CLI commands

Gateway

De Gateway is de WebSocket-server van OpenClaw (kanalen, nodes, sessies, hooks). Subopdrachten op deze pagina staan onder openclaw gateway ….

De Gateway uitvoeren

Voer een lokaal Gateway-proces uit:

bash
openclaw gateway

Voorgrondalias:

bash
openclaw gateway run
Opstartgedrag
  • Standaard weigert de Gateway te starten tenzij gateway.mode=local is ingesteld in ~/.openclaw/openclaw.json. Gebruik --allow-unconfigured voor ad-hoc-/dev-uitvoeringen.
  • Van openclaw onboard --mode local en openclaw setup wordt verwacht dat ze gateway.mode=local schrijven. Als het bestand bestaat maar gateway.mode ontbreekt, behandel dat dan als een defecte of overschreven configuratie en herstel die in plaats van impliciet lokale modus aan te nemen.
  • Als het bestand bestaat en gateway.mode ontbreekt, behandelt de Gateway dat als verdachte configuratieschade en weigert hij voor jou "lokaal te raden".
  • Binding buiten loopback zonder auth wordt geblokkeerd (veiligheidsvangrail).
  • lan, tailnet en custom worden momenteel via IPv4-only BYOH-paden opgelost.
  • IPv6-only BYOH wordt vandaag niet native ondersteund op dit pad. Gebruik een IPv4-sidecar of proxy als de host zelf IPv6-only is.
  • SIGUSR1 triggert een herstart binnen het proces wanneer geautoriseerd (commands.restart is standaard ingeschakeld; stel commands.restart: false in om handmatige herstart te blokkeren, terwijl gateway-tool/config apply/update toegestaan blijven).
  • SIGINT/SIGTERM-handlers stoppen het gateway-proces, maar herstellen geen aangepaste terminalstatus. Als je de CLI met een TUI of raw-mode-invoer omwikkelt, herstel de terminal dan vóór afsluiten.

Opties

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA " type="number"> WebSocket-poort (standaard komt uit config/env; meestal 18789).

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tYmluZCA8bG9vcGJhY2t8bGFufHRhaWxuZXR8YXV0b3xjdXN0b20 " type="string"> Bindmodus van de listener. lan, tailnet en custom worden momenteel via IPv4-only-paden opgelost.

"--auth

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdG9rZW4gPHRva2Vu " type="string"> Tokenoverschrijving (stelt ook OPENCLAW_GATEWAY_TOKEN in voor het proces).

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

Reset de Tailscale serve/funnel-configuratie bij afsluiten.

--bind custom + gateway.customBindHoststring

Verwacht vandaag een IPv4-adres. Voor IPv6-only BYOH plaats je een IPv4-sidecar of proxy vóór de Gateway en wijs je OpenClaw naar dat IPv4-eindpunt.

--allow-unconfiguredboolean

Sta toe dat de gateway start zonder gateway.mode=local in de configuratie. Omzeilt de opstartvangrail alleen voor ad-hoc-/dev-bootstrap; schrijft of herstelt het configuratiebestand niet.

--devboolean

Maak een dev-configuratie + workspace aan als die ontbreken (slaat BOOTSTRAP.md over).

--resetboolean

Reset dev-configuratie + referenties + sessies + workspace (vereist --dev).

--forceboolean

Beëindig elke bestaande listener op de geselecteerde poort vóór het starten.

--verboseboolean

Uitgebreide logs.

--cli-backend-logsboolean

Toon alleen CLI-backendlogs in de console (en schakel stdout/stderr in).

"--ws-log
--compactboolean

Alias voor --ws-log compact.

--raw-streamboolean

Log ruwe modelstreamgebeurtenissen naar jsonl.

De Gateway herstarten

bash
openclaw gateway restartopenclaw gateway restart --safeopenclaw gateway restart --safe --skip-deferralopenclaw gateway restart --force

openclaw gateway restart --safe vraagt de draaiende Gateway om actief werk vooraf te controleren en één samengevoegde herstart te plannen nadat actief werk is verwerkt. De standaard veilige herstart wacht op actief werk tot de geconfigureerde gateway.reload.deferralTimeoutMs (standaard 5 minuten); wanneer dat budget verloopt, wordt de herstart geforceerd. Stel gateway.reload.deferralTimeoutMs in op 0 voor een onbeperkte veilige wachttijd die nooit forceert. Gewoon restart behoudt het bestaande service-managergedrag; --force blijft het directe overschrijvingspad.

openclaw gateway restart --safe --skip-deferral voert dezelfde OpenClaw-bewuste gecoördineerde herstart uit als --safe, maar omzeilt de uitsteltrechter voor actief werk zodat de Gateway de herstart onmiddellijk uitzendt, ook wanneer blockers worden gerapporteerd. Gebruik dit als uitweg voor operators wanneer een uitstel is vastgezet door een vastgelopen taakrun en --safe alleen mogelijk begrensd wordt door gateway.reload.deferralTimeoutMs. --skip-deferral vereist --safe.

Gateway-profilering

  • Stel OPENCLAW_GATEWAY_STARTUP_TRACE=1 in om fasetimings tijdens het opstarten van de Gateway te loggen, inclusief per-fase eventLoopMax-vertraging en plug-in-lookup-table-timings voor geïnstalleerde index, manifestregister, opstartplanning en owner-map-werk.
  • Stel OPENCLAW_GATEWAY_RESTART_TRACE=1 in om restart-scoped restart trace:-regels te loggen voor afhandeling van herstartsignalen, draining van actief werk, afsluitfasen, volgende start, ready-timing en geheugenmetrics.
  • Stel OPENCLAW_DIAGNOSTICS=timeline in met OPENCLAW_DIAGNOSTICS_TIMELINE_PATH=<path> om een best-effort JSONL-opstartdiagnosetijdlijn te schrijven voor externe QA-harnassen. Je kunt de vlag ook inschakelen met diagnostics.flags: ["timeline"] in de configuratie; het pad wordt nog steeds via env geleverd. Voeg OPENCLAW_DIAGNOSTICS_EVENT_LOOP=1 toe om event-loop-samples op te nemen.
  • Voer eerst pnpm build uit en daarna pnpm test:startup:gateway -- --runs 5 --warmup 1 om het opstarten van de Gateway te benchmarken tegen de gebouwde CLI-entry. De benchmark registreert eerste procesuitvoer, /healthz, /readyz, opstarttracetimings, event-loop-vertraging en timingdetails van de plug-in-lookup-table.
  • Voer eerst pnpm build uit en daarna pnpm test:restart:gateway -- --case skipChannels --runs 1 --restarts 5 om een herstart binnen het Gateway-proces te benchmarken tegen de gebouwde CLI-entry op macOS of Linux. De herstartbenchmark gebruikt SIGUSR1, schakelt zowel opstart- als herstarttraces in het childproces in, en registreert volgende /healthz, volgende /readyz, downtime, ready-timing, CPU, RSS en herstarttracemetrics.
  • Behandel /healthz als liveness en /readyz als bruikbare readiness. Traceregels en benchmarkuitvoer zijn voor eigenaartoewijzing; behandel één tracespan of één sample niet als een volledige prestatieconclusie.

Een draaiende Gateway opvragen

Alle queryopdrachten gebruiken WebSocket RPC.

Uitvoermodi

  • Standaard: leesbaar voor mensen (gekleurd in TTY).
  • --json: machineleesbare JSON (geen styling/spinner).
  • --no-color (of NO_COLOR=1): schakel ANSI uit terwijl de menselijke lay-out behouden blijft.

Gedeelde opties

  • --url <url>: Gateway-WebSocket-URL.
  • --token <token>: Gateway-token.
  • --password <password>: Gateway-wachtwoord.
  • --timeout <ms>: timeout/budget (verschilt per opdracht).
  • --expect-final: wacht op een "final"-respons (agentaanroepen).

gateway health

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

Het HTTP-eindpunt /healthz is een liveness-probe: het retourneert zodra de server HTTP kan beantwoorden. Het HTTP-eindpunt /readyz is strenger en blijft rood terwijl opstartende plug-in-sidecars, kanalen of geconfigureerde hooks nog aan het stabiliseren zijn. Lokale of geauthenticeerde gedetailleerde readiness-responsen bevatten een eventLoop-diagnoseblok met event-loop-vertraging, event-loop-gebruik, CPU-kernratio en een degraded-vlag.

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA " type="number"> Richt je op een lokale local loopback Gateway op deze poort. Dit overschrijft OPENCLAW_GATEWAY_URL en OPENCLAW_GATEWAY_PORT voor de health-aanroep.

gateway usage-cost

Haal usage-cost-samenvattingen op uit sessielogs.

bash
openclaw gateway usage-costopenclaw gateway usage-cost --days 7openclaw gateway usage-cost --agent work --jsonopenclaw gateway usage-cost --all-agentsopenclaw gateway usage-cost --json
"--days
"--agent
--all-agentsboolean

Aggregeer de kostensamenvatting over alle geconfigureerde agents. Kan niet worden gecombineerd met --agent.

gateway stability

Haal de recente diagnostische stabiliteitsrecorder op uit een draaiende Gateway.

bash
openclaw gateway stabilityopenclaw gateway stability --type payload.largeopenclaw gateway stability --bundle latestopenclaw gateway stability --bundle latest --exportopenclaw gateway stability --json

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tbGltaXQgPGxpbWl0 " type="number" default="25"> Maximaal aantal recente gebeurtenissen om op te nemen (max. 1000).

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdHlwZSA8dHlwZQ " type="string"> Filter op diagnostisch gebeurtenistype, zoals payload.large of diagnostic.memory.pressure.

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

Lees een bewaarde stabiliteitsbundel in plaats van de draaiende Gateway aan te roepen. Gebruik --bundle latest (of gewoon --bundle) voor de nieuwste bundel onder de state-directory, of geef direct een bundel-JSON-pad door.

--exportboolean

Schrijf een deelbare supportdiagnostiek-zip in plaats van stabiliteitsdetails af te drukken.

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tb3V0cHV0IDxwYXRo " type="string"> Uitvoerpad voor --export.

Privacy en bundelgedrag
  • Records bewaren operationele metadata: gebeurtenisnamen, aantallen, bytegroottes, geheugenmetingen, queue-/sessiestatus, approval-id's, kanaal-/plug-innamen en geredigeerde sessiesamenvattingen. Ze bewaren geen chattekst, webhook-bodies, tooluitvoer, ruwe request- of response-bodies, tokens, cookies, geheime waarden, hostnamen of ruwe sessie-id's. Stel diagnostics.enabled: false in om de recorder volledig uit te schakelen.
  • Bij fatale Gateway-afsluitingen, afsluit-timeouts en opstartherstartfouten schrijft OpenClaw dezelfde diagnostische snapshot naar ~/.openclaw/logs/stability/openclaw-stability-*.json wanneer de recorder gebeurtenissen heeft. Inspecteer de nieuwste bundel met openclaw gateway stability --bundle latest; --limit, --type en --since-seq zijn ook van toepassing op bundeluitvoer.

gateway diagnostics export

Schrijf een lokale diagnostiek-zip die is ontworpen om aan bugrapporten toe te voegen. Zie Diagnostiekexport voor het privacymodel en de bundelinhoud.

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

Sla het opzoeken van een opgeslagen stabiliteitsbundel over.

--jsonboolean

Druk het geschreven pad, de grootte en het manifest af als JSON.

De export bevat een manifest, een Markdown-samenvatting, configuratievorm, opgeschoonde configuratiedetails, opgeschoonde logsamenvattingen, opgeschoonde Gateway-status-/health-snapshots en de nieuwste stabiliteitsbundel wanneer die bestaat.

Deze is bedoeld om te delen. De export behoudt operationele details die helpen bij debugging, zoals veilige OpenClaw-logvelden, subsystemnamen, statuscodes, duurwaarden, geconfigureerde modi, poorten, plugin-id's, provider-id's, niet-geheime functie-instellingen en geredigeerde operationele logberichten. Chattekst, webhook-body's, tooluitvoer, inloggegevens, cookies, account-/bericht-ID's, prompt-/instructietekst, hostnamen en geheime waarden worden weggelaten of geredigeerd. Wanneer een LogTape-achtig bericht lijkt op payloadtekst van een gebruiker/chat/tool, bewaart de export alleen dat een bericht is weggelaten plus het aantal bytes ervan.

gateway status

gateway status toont de Gateway-service (launchd/systemd/schtasks) plus een optionele probe van connectiviteit/auth-mogelijkheid.

bash
openclaw gateway statusopenclaw gateway status --jsonopenclaw gateway status --require-rpc
"--url
"--token
"--password
"--timeout
--no-probeboolean

Sla de connectiviteitsprobe over (alleen serviceweergave).

--deepboolean

Scan ook services op systeemniveau.

--require-rpcboolean

Upgrade de standaard connectiviteitsprobe naar een leesprobe en sluit af met een niet-nulcode wanneer die leesprobe mislukt. Kan niet worden gecombineerd met --no-probe.

Status semantics
  • gateway status blijft beschikbaar voor diagnostiek, zelfs wanneer de lokale CLI-configuratie ontbreekt of ongeldig is.
  • Standaard bewijst gateway status de servicestatus, WebSocket-verbinding en de auth-mogelijkheid die zichtbaar is tijdens de handshake. Het bewijst geen lees-/schrijf-/adminbewerkingen.
  • Diagnostische probes wijzigen niets voor eerste apparaatauth: ze hergebruiken een bestaande gecachete apparaattoken wanneer die bestaat, maar maken geen nieuwe CLI-apparaatidentiteit of alleen-lezen apparaatkoppelingsrecord aan alleen om de status te controleren.
  • gateway status lost geconfigureerde auth-SecretRefs voor probe-auth op wanneer mogelijk.
  • Als een vereiste auth-SecretRef in dit opdrachtpad niet is opgelost, rapporteert gateway status --json rpc.authWarning wanneer probe-connectiviteit/auth mislukt; geef --token/--password expliciet door of los eerst de geheime bron op.
  • Als de probe slaagt, worden waarschuwingen over onopgeloste auth-verwijzingen onderdrukt om fout-positieven te vermijden.
  • Wanneer proben is ingeschakeld, bevat JSON-uitvoer gateway.version wanneer de actieve Gateway dit rapporteert; --require-rpc kan terugvallen op de RPC-payload status.runtimeVersion als de vervolghandshakeprobe geen versiemetadata kan leveren.
  • Gebruik --require-rpc in scripts en automatisering wanneer een luisterende service niet genoeg is en je ook gezonde RPC-aanroepen met leesbereik nodig hebt.
  • --deep voegt een best-effort scan toe voor extra launchd/systemd/schtasks-installaties. Wanneer meerdere gateway-achtige services worden gedetecteerd, drukt menselijke uitvoer opruimtips af en waarschuwt dat de meeste setups één gateway per machine zouden moeten draaien.
  • --deep rapporteert ook een recente Gateway-supervisor-herstartoverdracht wanneer het serviceproces netjes is afgesloten voor een externe supervisor-herstart.
  • --deep voert configuratievalidatie uit in plugin-bewuste modus (pluginValidation: "full") en toont geconfigureerde Plugin-manifestwaarschuwingen (bijvoorbeeld ontbrekende metadata voor kanaalconfiguratie), zodat smokechecks voor installatie en updates ze opvangen. Standaard gateway status houdt het snelle alleen-lezen pad dat Plugin-validatie overslaat.
  • Menselijke uitvoer bevat het opgeloste bestandslogpad plus de snapshot van CLI-versus-serviceconfiguratiepaden/-geldigheid om profiel- of state-dir-afwijking te helpen diagnosticeren.
Linux systemd auth-drift checks
  • Op Linux-systemd-installaties lezen controles op service-auth-afwijking zowel Environment=- als EnvironmentFile=-waarden uit de unit (inclusief %h, gequote paden, meerdere bestanden en optionele --bestanden).
  • Afwijkingscontroles lossen gateway.auth.token SecretRefs op met de samengevoegde runtime-env (eerst serviceopdracht-env, daarna process-env als fallback).
  • Als token-auth niet effectief actief is (expliciete gateway.auth.mode van password/none/trusted-proxy, of mode niet ingesteld waarbij wachtwoord kan winnen en geen tokenkandidaat kan winnen), slaan token-afwijkingscontroles het oplossen van de configuratietoken over.

gateway probe

gateway probe is de opdracht voor "alles debuggen". Deze probet altijd:

  • je geconfigureerde externe gateway (indien ingesteld), en
  • localhost (local loopback) zelfs als extern is geconfigureerd.

Als je --url doorgeeft, wordt dat expliciete doel vóór beide toegevoegd. Menselijke uitvoer labelt de doelen als:

  • URL (explicit)
  • Remote (configured) of Remote (configured, inactive)
  • Local loopback
bash
openclaw gateway probeopenclaw gateway probe --jsonopenclaw gateway probe --port 18789

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA " type="number"> Gebruik deze poort voor het lokale local loopback-probe-doel en de externe poort van de SSH-tunnel. Zonder --url selecteert dit het lokale local loopback-doel in plaats van de geconfigureerde gateway-omgevings-URL, omgevingspoort of externe doelen.

Interpretation
  • Reachable: yes betekent dat ten minste één doel een WebSocket-verbinding heeft geaccepteerd.
  • Capability: read-only|write-capable|admin-capable|pairing-pending|connect-only rapporteert wat de probe kon bewijzen over auth. Dit staat los van bereikbaarheid.
  • Read probe: ok betekent dat detail-RPC-aanroepen met leesbereik (health/status/system-presence/config.get) ook zijn geslaagd.
  • Read probe: limited - missing scope: operator.read betekent dat verbinden is geslaagd, maar RPC met leesbereik beperkt is. Dit wordt gerapporteerd als gedegradeerde bereikbaarheid, niet als volledige mislukking.
  • Read probe: failed na Connect: ok betekent dat de Gateway de WebSocket-verbinding heeft geaccepteerd, maar dat vervolgleesdiagnostiek is verlopen of mislukt. Dit is ook gedegradeerde bereikbaarheid, geen onbereikbare Gateway.
  • Net als gateway status hergebruikt probe bestaande gecachete apparaatauth, maar maakt geen eerste apparaatidentiteit of koppelingsstatus aan.
  • De afsluitcode is alleen niet-nul wanneer geen geprobed doel bereikbaar is.
JSON output

Bovenste niveau:

  • ok: ten minste één doel is bereikbaar.
  • degraded: ten minste één doel accepteerde een verbinding maar voltooide niet de volledige detail-RPC-diagnostiek.
  • capability: beste mogelijkheid gezien over bereikbare doelen (read_only, write_capable, admin_capable, pairing_pending, connected_no_operator_scope of unknown).
  • primaryTargetId: beste doel om als actieve winnaar te behandelen in deze volgorde: expliciete URL, SSH-tunnel, geconfigureerd extern doel, daarna local loopback.
  • warnings[]: best-effort waarschuwingsrecords met code, message en optioneel targetIds.
  • network: local loopback-/tailnet-URL-hints afgeleid van huidige configuratie en hostnetwerk.
  • discovery.timeoutMs en discovery.count: het werkelijke discovery-budget/resultaantal dat voor deze probe-pass is gebruikt.

Per doel (targets[].connect):

  • ok: bereikbaarheid na verbinden + gedegradeerde classificatie.
  • rpcOk: volledige detail-RPC gelukt.
  • scopeLimited: detail-RPC mislukt door ontbrekend operatorbereik.

Per doel (targets[].auth):

  • role: auth-rol gerapporteerd in hello-ok indien beschikbaar.
  • scopes: toegekende scopes gerapporteerd in hello-ok indien beschikbaar.
  • capability: de getoonde auth-mogelijkheidsclassificatie voor dat doel.
Common warning codes
  • ssh_tunnel_failed: instellen van SSH-tunnel mislukt; de opdracht viel terug op directe probes.
  • multiple_gateways: afzonderlijke gateway-identiteiten waren bereikbaar, of OpenClaw kon niet bewijzen dat bereikbare doelen dezelfde gateway zijn. Een SSH-tunnel, proxy-URL of geconfigureerde externe URL naar dezelfde gateway triggert deze waarschuwing niet.
  • auth_secretref_unresolved: een geconfigureerde auth-SecretRef kon niet worden opgelost voor een mislukt doel.
  • probe_scope_limited: WebSocket-verbinding is geslaagd, maar de leesprobe werd beperkt door ontbrekende operator.read.

Extern via SSH (pariteit met Mac-app)

De macOS-appmodus "Remote over SSH" gebruikt een lokale port-forward zodat de externe gateway (die mogelijk alleen aan loopback is gebonden) bereikbaar wordt op ws://127.0.0.1:<port>.

CLI-equivalent:

bash
openclaw gateway probe --ssh user@gateway-host

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tc3NoIDx0YXJnZXQ " type="string"> user@host of user@host:port (poort is standaard 22).

--ssh-autoboolean

Kies de eerste ontdekte gateway-host als SSH-doel uit het opgeloste discovery-eindpunt (local. plus het geconfigureerde wide-area domein, indien aanwezig). Hints die alleen TXT zijn, worden genegeerd.

Configuratie (optioneel, gebruikt als standaardwaarden):

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

gateway call <method>

Low-level RPC-helper.

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

Vooral voor agent-achtige RPC's die tussentijdse gebeurtenissen streamen vóór een definitieve payload.

--jsonboolean

Machineleesbare JSON-uitvoer.

De Gateway-service beheren

bash
openclaw gateway installopenclaw gateway startopenclaw gateway stopopenclaw gateway restartopenclaw gateway uninstall

Installeren met een wrapper

Gebruik --wrapper wanneer de beheerde service via een ander uitvoerbaar bestand moet starten, bijvoorbeeld een shim voor een geheimenbeheerder of een run-as-helper. De wrapper ontvangt de normale Gateway-argumenten en is verantwoordelijk om uiteindelijk openclaw of Node met die argumenten uit te voeren.

bash
cat > ~/.local/bin/openclaw-doppler <<'EOF'#!/usr/bin/env bashset -euo pipefailexec doppler run --project my-project --config production -- openclaw "$@"EOFchmod +x ~/.local/bin/openclaw-doppler openclaw gateway install --wrapper ~/.local/bin/openclaw-doppler --forceopenclaw gateway restart

Je kunt de wrapper ook via de omgeving instellen. gateway install valideert dat het pad een uitvoerbaar bestand is, schrijft de wrapper naar service ProgramArguments en bewaart OPENCLAW_WRAPPER in de serviceomgeving voor latere geforceerde herinstallaties, updates en doctor-reparaties.

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

Om een bewaarde wrapper te verwijderen, maak je OPENCLAW_WRAPPER leeg tijdens het herinstalleren:

bash
OPENCLAW_WRAPPER= openclaw gateway install --forceopenclaw gateway restart
Opdrachtopties
  • 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, --skip-deferral, --force, --wait <duration>, --json
  • gateway uninstall|start: --json
  • gateway stop: --disable, --json
Levenscyclusgedrag
  • Gebruik gateway restart om een beheerde service opnieuw te starten. Keten gateway stop en gateway start niet als vervanging voor een herstart.
  • Op macOS gebruikt gateway stop standaard launchctl bootout, waarmee de LaunchAgent uit de huidige bootsessie wordt verwijderd zonder een uitschakeling permanent te maken — automatisch herstel via KeepAlive blijft actief voor toekomstige crashes en gateway start schakelt weer schoon in zonder handmatige launchctl enable. Geef --disable door om KeepAlive en RunAtLoad permanent te onderdrukken, zodat de gateway niet opnieuw opstart tot de volgende expliciete gateway start; gebruik dit wanneer een handmatige stop herstarts of systeemherstarts moet overleven.
  • gateway restart --safe vraagt de actieve Gateway om actief werk vooraf te controleren en één samengevoegde herstart te plannen nadat actief werk is leeggemaakt. De standaard veilige herstart wacht op actief werk tot de geconfigureerde gateway.reload.deferralTimeoutMs (standaard 5 minuten); wanneer dat budget verloopt, wordt de herstart geforceerd. Stel gateway.reload.deferralTimeoutMs in op 0 voor onbeperkt veilig wachten dat nooit forceert. --safe kan niet worden gecombineerd met --force of --wait.
  • gateway restart --wait 30s overschrijft het geconfigureerde drainbudget voor die herstart. Losse getallen zijn milliseconden; eenheden zoals s, m en h worden geaccepteerd. --wait 0 wacht onbeperkt.
  • gateway restart --safe --skip-deferral voert de OpenClaw-bewuste veilige herstart uit, maar omzeilt de uitstelpoort zodat de Gateway de herstart onmiddellijk uitzendt, zelfs wanneer blokkades worden gemeld. Dit is een ontsnappingsroute voor operators bij vastgelopen uitstel van taakuitvoeringen; vereist --safe.
  • gateway restart --force slaat het leegmaken van actief werk over en herstart onmiddellijk. Gebruik dit wanneer een operator de vermelde taakblokkades al heeft geïnspecteerd en de gateway nu terug wil hebben.
  • Levenscyclusopdrachten accepteren --json voor scripting.
Authenticatie en SecretRefs tijdens installatie
  • Wanneer tokenauthenticatie een token vereist en gateway.auth.token door SecretRef wordt beheerd, valideert gateway install dat de SecretRef oplosbaar is, maar bewaart het opgeloste token niet in metadata van de serviceomgeving.
  • Als tokenauthenticatie een token vereist en de geconfigureerde token-SecretRef niet is opgelost, mislukt de installatie gesloten in plaats van terug te vallen op platte tekst.
  • Voor wachtwoordauthenticatie bij gateway run geef je de voorkeur aan OPENCLAW_GATEWAY_PASSWORD, --password-file of een door SecretRef ondersteunde gateway.auth.password boven inline --password.
  • In afgeleide authenticatiemodus versoepelt alleen-shell OPENCLAW_GATEWAY_PASSWORD de tokenvereisten voor installatie niet; gebruik duurzame configuratie (gateway.auth.password of config env) wanneer je een beheerde service installeert.
  • Als zowel gateway.auth.token als gateway.auth.password zijn geconfigureerd en gateway.auth.mode niet is ingesteld, wordt installatie geblokkeerd totdat de modus expliciet is ingesteld.

Gateways ontdekken (Bonjour)

gateway discover scant naar Gateway-beacons (_openclaw-gw._tcp).

  • Multicast DNS-SD: local.
  • Unicast DNS-SD (Wide-Area Bonjour): kies een domein (voorbeeld: openclaw.internal.) en stel split DNS + een DNS-server in; zie Bonjour.

Alleen gateways waarvoor Bonjour-discovery is ingeschakeld (standaard) adverteren de beacon.

Wide-area discovery-records kunnen deze TXT-hints bevatten:

  • role (hint voor gatewayrol)
  • transport (transporthint, bijv. gateway)
  • gatewayPort (WebSocket-poort, meestal 18789)
  • sshPort (alleen volledige discoverymodus; clients gebruiken standaard SSH-doelen op 22 wanneer deze ontbreekt)
  • tailnetDns (MagicDNS-hostnaam, indien beschikbaar)
  • gatewayTls / gatewayTlsSha256 (TLS ingeschakeld + certificaatvingerafdruk)
  • cliPath (alleen volledige discoverymodus)

gateway discover

bash
openclaw gateway discover
"--timeout
--jsonboolean

Machineleesbare uitvoer (schakelt ook styling/spinner uit).

Voorbeelden:

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

Gerelateerd

Was this useful?
On this page

On this page