Gateway
CLI de OpenClaw Gateway (openclaw gateway) — ejecuta, inspecciona y descubre gateways.
Gateway es el servidor WebSocket de OpenClaw (canales, nodos, sesiones, hooks).
Los subcomandos en esta página están bajo ''openclaw gateway …''.
Docs relacionados:
Ejecutar gateway
Ejecuta un proceso de gateway local:
openclaw gateway
Alias en primer plano:
openclaw gateway run
Notas:
- Por defecto, el gateway se niega a iniciar a menos que ''gateway.mode=local'' esté establecido en ''~/.openclaw/openclaw.json''. Usa ''--allow-unconfigured'' para ejecuciones temporales/dev.
- Vincular fuera de loopback sin autorización está bloqueado (salvaguardas de seguridad).
- ''SIGUSR1'' dispara reinicio en-proceso cuando está autorizado (habilita ''commands.restart'' o usa herramienta de gateway/config apply/update).
- Los manejadores ''SIGINT''/''SIGTERM'' detienen el proceso del gateway, pero no restauran ningún estado de terminal personalizado. Si usas TUI o wrappers de entrada raw mode para CLI, restaura el terminal antes de salir.
### Opciones
- ''--port <port>'': Puerto WebSocket (predeterminado desde config/env; típicamente ''18789'').
- ''--bind <loopback|lan|tailnet|auto|custom>'': Modo de vinculación del listener.
- ''--auth <token|password>'': Anulación de modo de auth.
- ''--token <token>'': Anulación de token (también establece ''OPENCLAW_GATEWAY_TOKEN'' para el proceso).
- ''--password <password>'': Anulación de password (también establece ''OPENCLAW_GATEWAY_PASSWORD'' para el proceso).
- ''--tailscale <off|serve|funnel>'': Expone gateway vía Tailscale.
- ''--tailscale-reset-on-exit'': Resetea la config de servicio/funnel de Tailscale al apagar.
- ''--allow-unconfigured'': Permite que el gateway inicie sin ''gateway.mode=local'' en config.
- ''--dev'': Crea una config+workspace de dev si falta (salta BOOTSTRAP.md).
- ''--reset'': Resetea config+credentials+sessions+workspace de dev (requiere ''--dev'').
- ''--force'': Mata cualquier listener existente en el puerto seleccionado antes de iniciar.
- ''--verbose'': Logging verboso.
- ''--claude-cli-logs'': Muestra logs de claude-cli solo en consola (y habilita su stdout/stderr).
- ''--ws-log <auto|full|compact>'': estilo de log websocket (predeterminado ''auto'').
Consultar gateway en ejecución
Todos los comandos de consulta usan WebSocket RPC.
Modos de salida:
- Predeterminado: Legible por humanos (coloreado en TTY).
- ''--json'': JSON legible por máquina (sin estilo/spinners).
- ''--no-color'' (o ''NO_COLOR=1''): Deshabilita ANSI manteniendo layout humano.
Opciones compartidas (si soportadas):
- ''--url <url>'': URL WebSocket del Gateway.
- ''--token <token>'': Token del Gateway.
- ''--password <password>'': Password del Gateway.
- ''--timeout <ms>'': Timeout/presupuesto (varía por comando).
#
`gateway health`
openclaw gateway health --url ws://127.0.0.1:18789
#
`gateway status`
''gateway status'' muestra el servicio del gateway (launchd/systemd/schtasks) y probe RPC opcional.
openclaw gateway status openclaw gateway status --json
Opciones:
- ''--url <url>'': Anula URL de probe.
- ''--token <token>'': Auth de token para probe.
- ''--password <password>'': Auth de password para probe.
- ''--timeout <ms>'': Timeout de probe (predeterminado ''10000'').
- ''--no-probe'': Salta probe RPC (solo vista de servicio).
- ''--deep'': También escanea servicios a nivel de sistema.
#
`gateway probe`
''gateway probe'' es el comando "depura todo". Siempre hace probe:
- Tu gateway remoto configurado (si está establecido), y
- Localhost (loopback) incluso si remote está configurado.
openclaw gateway probe openclaw gateway probe --json
##
Remoto vía SSH (paridad con app Mac)
macOS app "Remote via SSH" mode uses local port forwarding, so remote gateway is accessible at ''ws://127.0.0.1:<port>'' (may only bind to loopback).
CLI equivalent:
openclaw gateway probe --ssh user@gateway-host
Options:
- ''--ssh <target>'': ''user@host'' or ''user@host:port'' (port defaults to ''22'').
- ''--ssh-identity <path>'': Identity file.
- ''--ssh-auto'': Pick first discovered gateway host as SSH target (LAN/WAB only).
Config (optional, used as defaults):
- ''gateway.remote.sshTarget''
- ''gateway.remote.sshIdentity''
#
`gateway call <method>`
Low-level RPC helper.
openclaw gateway call status
openclaw gateway call logs.tail --params '{"sinceMs": 60000}'Gestionar servicio de gateway
openclaw gateway install openclaw gateway start openclaw gateway stop openclaw gateway restart openclaw gateway uninstall
- ''gateway install'' supports ''--port'', ''--runtime'', ''--token'', ''--force'', ''--json''.
- Lifecycle commands accept ''--json'' for scripting.
Discover gateways (Bonjour)
''gateway discover'' scans for gateway beacons (''_openclaw-gw._tcp'').
- Multicast DNS-SD: ''local.''
- Unicast DNS-SD (Wide-Area Bonjour): Pick a domain (e.g., ''openclaw.internal.'') and set split DNS + DNS server; see ''/gateway/bonjour''
Only gateways with Bonjour discovery enabled (default) advertise beacons.
Wide-area discovery records include (TXT):
- ''role'' (gateway role hint)
- ''transport'' (transport hint, e.g., ''gateway'')
- ''gatewayPort'' (WebSocket port, typically ''18789'')
- ''sshPort'' (SSH port; defaults to ''22'' if absent)
- ''tailnetDns'' (MagicDNS hostname, if available)
- ''gatewayTls'' / ''gatewayTlsSha256'' (TLS enabled + cert fingerprint)
- ''cliPath'' (optional hint for remote install)
##
#
`gateway discover`
openclaw gateway discover
Options:
- ''--timeout <ms>'': Per-command timeout (browse/resolve); default ''2000''.
- ''--json'': Machine-readable output (also disables styling/spinners).
Examples:
openclaw gateway discover --timeout 4000 openclaw gateway discover --json | jq '.beacons[].wsUrl'