CLI commands
Gateway
El Gateway es el servidor WebSocket de OpenClaw (canales, nodos, sesiones, hooks). Los subcomandos de esta página están bajo openclaw gateway ….
Configuración local de mDNS + DNS-SD de área amplia.
Cómo OpenClaw anuncia y encuentra gateways.
Claves de configuración de gateway de nivel superior.
Ejecutar el Gateway
Ejecuta un proceso local de Gateway:
openclaw gatewayAlias en primer plano:
openclaw gateway runStartup behavior
- De forma predeterminada, el Gateway se niega a iniciar a menos que
gateway.mode=localesté definido en~/.openclaw/openclaw.json. Usa--allow-unconfiguredpara ejecuciones ad hoc/de desarrollo. - Se espera que
openclaw onboard --mode localyopenclaw setupescribangateway.mode=local. Si el archivo existe pero faltagateway.mode, trátalo como una configuración rota o sobrescrita y repárala en lugar de asumir implícitamente el modo local. - Si el archivo existe y falta
gateway.mode, el Gateway lo trata como daño sospechoso en la configuración y se niega a "adivinar local" por ti. - Se bloquea el enlace más allá de loopback sin autenticación (protección de seguridad).
lan,tailnetycustomactualmente se resuelven mediante rutas BYOH solo IPv4.- BYOH solo IPv6 no es compatible de forma nativa en esta ruta actualmente. Usa un sidecar o proxy IPv4 si el host en sí es solo IPv6.
SIGUSR1activa un reinicio en proceso cuando está autorizado (commands.restartestá habilitado de forma predeterminada; definecommands.restart: falsepara bloquear el reinicio manual, mientras que la aplicación/actualización de herramientas/configuración del gateway permanece permitida).- Los manejadores de
SIGINT/SIGTERMdetienen el proceso del gateway, pero no restauran ningún estado personalizado de la terminal. Si envuelves la CLI con una TUI o entrada en modo raw, restaura la terminal antes de salir.
Opciones
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA
" type="number">
Puerto WebSocket (el valor predeterminado viene de la configuración/env; normalmente 18789).
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tYmluZCA8bG9vcGJhY2t8bGFufHRhaWxuZXR8YXV0b3xjdXN0b20
" type="string">
Modo de enlace del listener. lan, tailnet y custom actualmente se resuelven mediante rutas solo IPv4.
"--authOPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdG9rZW4gPHRva2Vu
" type="string">
Sustitución del token (también define OPENCLAW_GATEWAY_TOKEN para el proceso).
"--password"--tailscale--tailscale-reset-on-exitbooleanRestablecer la configuración serve/funnel de Tailscale al apagar.
--bind custom + gateway.customBindHoststringActualmente espera una dirección IPv4. Para BYOH solo IPv6, coloca un sidecar o proxy IPv4 delante del Gateway y apunta OpenClaw a ese endpoint IPv4.
--allow-unconfiguredbooleanPermitir que el gateway inicie sin gateway.mode=local en la configuración. Omite la protección de inicio solo para arranques ad hoc/de desarrollo; no escribe ni repara el archivo de configuración.
--devbooleanCrear una configuración de desarrollo + workspace si faltan (omite BOOTSTRAP.md).
--resetbooleanRestablecer configuración de desarrollo + credenciales + sesiones + workspace (requiere --dev).
--forcebooleanTerminar cualquier listener existente en el puerto seleccionado antes de iniciar.
--verbosebooleanRegistros detallados.
--cli-backend-logsbooleanMostrar solo los registros del backend de la CLI en la consola (y habilitar stdout/stderr).
"--ws-log--compactbooleanAlias de --ws-log compact.
--raw-streambooleanRegistrar eventos sin procesar del flujo del modelo en jsonl.
Reiniciar el Gateway
openclaw gateway restartopenclaw gateway restart --safeopenclaw gateway restart --safe --skip-deferralopenclaw gateway restart --forceopenclaw gateway restart --safe pide al Gateway en ejecución que haga una comprobación previa del trabajo activo y programe un reinicio combinado después de que el trabajo activo se vacíe. El reinicio seguro predeterminado espera el trabajo activo hasta el gateway.reload.deferralTimeoutMs configurado (predeterminado 5 minutos); cuando ese presupuesto expira, el reinicio se fuerza. Define gateway.reload.deferralTimeoutMs en 0 para una espera segura indefinida que nunca fuerza. restart simple mantiene el comportamiento existente del gestor de servicios; --force sigue siendo la ruta de sustitución inmediata.
openclaw gateway restart --safe --skip-deferral ejecuta el mismo reinicio coordinado consciente de OpenClaw que --safe, pero omite la compuerta de aplazamiento por trabajo activo para que el Gateway emita el reinicio inmediatamente incluso cuando se informan bloqueadores. Úsalo como vía de escape del operador cuando un aplazamiento haya quedado fijado por una ejecución de tarea atascada y --safe por sí solo pueda estar limitado por gateway.reload.deferralTimeoutMs. --skip-deferral requiere --safe.
Perfilado del Gateway
- Define
OPENCLAW_GATEWAY_STARTUP_TRACE=1para registrar tiempos por fase durante el inicio del Gateway, incluido el retrasoeventLoopMaxpor fase y los tiempos de tablas de búsqueda de plugins para installed-index, registro de manifiestos, planificación de inicio y trabajo de owner-map. - Define
OPENCLAW_GATEWAY_RESTART_TRACE=1para registrar líneasrestart trace:con alcance de reinicio para el manejo de señales de reinicio, vaciado de trabajo activo, fases de apagado, siguiente inicio, tiempo hasta ready y métricas de memoria. - Define
OPENCLAW_DIAGNOSTICS=timelineconOPENCLAW_DIAGNOSTICS_TIMELINE_PATH=<path>para escribir una línea temporal de diagnóstico de inicio JSONL de mejor esfuerzo para arneses de QA externos. También puedes habilitar la marca condiagnostics.flags: ["timeline"]en la configuración; la ruta sigue proporcionándose por env. AñadeOPENCLAW_DIAGNOSTICS_EVENT_LOOP=1para incluir muestras del bucle de eventos. - Ejecuta primero
pnpm build, luegopnpm test:startup:gateway -- --runs 5 --warmup 1para comparar el inicio del Gateway contra la entrada de CLI compilada. El benchmark registra la primera salida del proceso,/healthz,/readyz, tiempos de traza de inicio, retraso del bucle de eventos y detalles de tiempos de tablas de búsqueda de plugins. - Ejecuta primero
pnpm build, luegopnpm test:restart:gateway -- --case skipChannels --runs 1 --restarts 5para comparar el reinicio en proceso del Gateway contra la entrada de CLI compilada en macOS o Linux. El benchmark de reinicio usa SIGUSR1, habilita trazas de inicio y reinicio en el proceso hijo, y registra el siguiente/healthz, el siguiente/readyz, tiempo de inactividad, tiempo hasta ready, CPU, RSS y métricas de traza de reinicio. - Trata
/healthzcomo disponibilidad del proceso y/readyzcomo preparación utilizable. Las líneas de traza y la salida del benchmark son para atribución de propietarios; no trates un tramo de traza o una muestra como una conclusión completa de rendimiento.
Consultar un Gateway en ejecución
Todos los comandos de consulta usan RPC por WebSocket.
Output modes
- Predeterminado: legible para humanos (con color en TTY).
--json: JSON legible por máquina (sin estilo/spinner).--no-color(oNO_COLOR=1): deshabilita ANSI mientras conserva el diseño humano.
Shared options
--url <url>: URL WebSocket del Gateway.--token <token>: token del Gateway.--password <password>: contraseña del Gateway.--timeout <ms>: tiempo de espera/presupuesto (varía según el comando).--expect-final: esperar una respuesta "final" (llamadas de agente).
gateway health
openclaw gateway health --url ws://127.0.0.1:18789openclaw gateway health --port 18789El endpoint HTTP /healthz es una sonda de disponibilidad: devuelve una respuesta cuando el servidor puede responder HTTP. El endpoint HTTP /readyz es más estricto y permanece en rojo mientras los sidecars de plugins de inicio, canales o hooks configurados todavía se están estabilizando. Las respuestas de preparación detalladas locales o autenticadas incluyen un bloque de diagnóstico eventLoop con retraso del bucle de eventos, utilización del bucle de eventos, proporción de núcleos de CPU y una marca degraded.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA
" type="number">
Apuntar a un Gateway local loopback en este puerto. Esto anula OPENCLAW_GATEWAY_URL y OPENCLAW_GATEWAY_PORT para la llamada de estado.
gateway usage-cost
Obtener resúmenes de coste de uso desde los registros de sesión.
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-agentsbooleanAgregar el resumen de costes entre todos los agentes configurados. No se puede combinar con --agent.
gateway stability
Obtener el registrador de estabilidad de diagnóstico reciente desde un Gateway en ejecución.
openclaw gateway stabilityopenclaw gateway stability --type payload.largeopenclaw gateway stability --bundle latestopenclaw gateway stability --bundle latest --exportopenclaw gateway stability --jsonOPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tbGltaXQgPGxpbWl0
" type="number" default="25">
Número máximo de eventos recientes que se incluirán (máx. 1000).
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tdHlwZSA8dHlwZQ
" type="string">
Filtrar por tipo de evento de diagnóstico, como payload.large o diagnostic.memory.pressure.
"--since-seq--bundle [path]stringLeer un paquete de estabilidad persistido en lugar de llamar al Gateway en ejecución. Usa --bundle latest (o solo --bundle) para el paquete más nuevo bajo el directorio de estado, o pasa directamente una ruta JSON de paquete.
--exportbooleanEscribir un zip de diagnósticos de soporte compartible en lugar de imprimir detalles de estabilidad.
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tb3V0cHV0IDxwYXRo
" type="string">
Ruta de salida para --export.
Privacy and bundle behavior
- Los registros conservan metadatos operativos: nombres de eventos, conteos, tamaños en bytes, lecturas de memoria, estado de colas/sesiones, ids de aprobación, nombres de canales/plugins y resúmenes de sesiones redactados. No conservan texto de chat, cuerpos de webhook, salidas de herramientas, cuerpos sin procesar de solicitudes o respuestas, tokens, cookies, valores secretos, nombres de host ni ids de sesión sin procesar. Define
diagnostics.enabled: falsepara deshabilitar el registrador por completo. - En salidas fatales del Gateway, tiempos de espera de apagado y fallos de inicio tras reinicio, OpenClaw escribe la misma instantánea de diagnóstico en
~/.openclaw/logs/stability/openclaw-stability-*.jsoncuando el registrador tiene eventos. Inspecciona el paquete más nuevo conopenclaw gateway stability --bundle latest;--limit,--typey--since-seqtambién se aplican a la salida del paquete.
gateway diagnostics export
Escribe un zip local de diagnósticos diseñado para adjuntarse a informes de errores. Para el modelo de privacidad y el contenido del paquete, consulta Exportación de diagnósticos.
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-bundlebooleanOmite la búsqueda del paquete de estabilidad persistido.
--jsonbooleanImprime la ruta escrita, el tamaño y el manifiesto como JSON.
La exportación contiene un manifiesto, un resumen en Markdown, la forma de la configuración, detalles de configuración sanitizados, resúmenes de registro sanitizados, instantáneas sanitizadas de estado/salud de Gateway y el paquete de estabilidad más reciente cuando existe uno.
Está pensada para compartirse. Conserva detalles operativos que ayudan con la depuración, como campos de registro seguros de OpenClaw, nombres de subsistemas, códigos de estado, duraciones, modos configurados, puertos, ids de plugins, ids de proveedores, ajustes de funciones no secretos y mensajes de registro operativos redactados. Omite o redacta texto de chat, cuerpos de webhook, salidas de herramientas, credenciales, cookies, identificadores de cuenta/mensaje, texto de prompts/instrucciones, nombres de host y valores secretos. Cuando un mensaje de tipo LogTape parece texto de carga de usuario/chat/herramienta, la exportación conserva solo que se omitió un mensaje y su conteo de bytes.
gateway status
gateway status muestra el servicio de Gateway (launchd/systemd/schtasks) más una comprobación opcional de conectividad/capacidad de autenticación.
openclaw gateway statusopenclaw gateway status --jsonopenclaw gateway status --require-rpc"--url"--token"--password"--timeout--no-probebooleanOmite la comprobación de conectividad (vista solo del servicio).
--deepbooleanTambién analiza servicios de nivel de sistema.
--require-rpcbooleanEleva la comprobación de conectividad predeterminada a una comprobación de lectura y sale con código distinto de cero cuando esa comprobación de lectura falla. No se puede combinar con --no-probe.
Semántica de estado
gateway statussigue disponible para diagnósticos incluso cuando la configuración local de CLI falta o no es válida.gateway statuspredeterminado prueba el estado del servicio, la conexión WebSocket y la capacidad de autenticación visible en el momento del handshake. No prueba operaciones de lectura/escritura/administración.- Las comprobaciones de diagnóstico no mutan la autenticación de dispositivos por primera vez: reutilizan un token de dispositivo en caché existente cuando existe uno, pero no crean una nueva identidad de dispositivo de CLI ni un registro de emparejamiento de dispositivo de solo lectura solo para comprobar el estado.
gateway statusresuelve SecretRefs de autenticación configuradas para la autenticación de la comprobación cuando es posible.- Si una SecretRef de autenticación requerida no se resuelve en esta ruta de comando,
gateway status --jsoninformarpc.authWarningcuando la conectividad/autenticación de la comprobación falla; pasa--token/--passwordexplícitamente o resuelve primero la fuente del secreto. - Si la comprobación tiene éxito, las advertencias de referencias de autenticación no resueltas se suprimen para evitar falsos positivos.
- Cuando la comprobación está habilitada, la salida JSON incluye
gateway.versioncuando el Gateway en ejecución la informa;--require-rpcpuede recurrir a la carga RPCstatus.runtimeVersionsi la comprobación de handshake de seguimiento no puede proporcionar metadatos de versión. - Usa
--require-rpcen scripts y automatización cuando un servicio en escucha no es suficiente y también necesitas que las llamadas RPC con alcance de lectura estén sanas. --deepañade un análisis de mejor esfuerzo para instalaciones adicionales de launchd/systemd/schtasks. Cuando se detectan varios servicios similares a gateway, la salida humana imprime sugerencias de limpieza y advierte que la mayoría de configuraciones deberían ejecutar un gateway por máquina.--deeptambién informa una delegación reciente de reinicio del supervisor de Gateway cuando el proceso del servicio salió limpiamente por un reinicio de supervisor externo.--deepejecuta validación de configuración en modo consciente de plugins (pluginValidation: "full") y muestra advertencias de manifiestos de plugins configurados (por ejemplo, metadatos de configuración de canal faltantes) para que las comprobaciones de instalación y actualización las detecten.gateway statuspredeterminado conserva la ruta rápida de solo lectura que omite la validación de plugins.- La salida humana incluye la ruta resuelta del archivo de registro más una instantánea de rutas/validez de configuración de CLI frente a servicio para ayudar a diagnosticar divergencias de perfil o directorio de estado.
Comprobaciones de deriva de autenticación de systemd en Linux
- En instalaciones systemd de Linux, las comprobaciones de deriva de autenticación del servicio leen valores
Environment=yEnvironmentFile=de la unidad (incluidos%h, rutas entre comillas, múltiples archivos y archivos opcionales-). - Las comprobaciones de deriva resuelven SecretRefs de
gateway.auth.tokenusando el entorno de ejecución fusionado (primero el entorno del comando de servicio y luego el entorno del proceso como respaldo). - Si la autenticación con token no está efectivamente activa (
gateway.auth.modeexplícito depassword/none/trusted-proxy, o modo no definido donde la contraseña puede prevalecer y ningún candidato de token puede prevalecer), las comprobaciones de deriva de token omiten la resolución del token de configuración.
gateway probe
gateway probe es el comando de "depurar todo". Siempre comprueba:
- tu gateway remoto configurado (si está definido), y
- localhost (local loopback) incluso si hay un remoto configurado.
Si pasas --url, ese destino explícito se añade antes de ambos. La salida humana etiqueta los destinos como:
URL (explícita)Remoto (configurado)oRemoto (configurado, inactivo)Local loopback
openclaw gateway probeopenclaw gateway probe --jsonopenclaw gateway probe --port 18789OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcG9ydCA8cG9ydA
" type="number">
Usa este puerto para el destino de comprobación local loopback y el puerto remoto del túnel SSH. Sin --url, esto selecciona el destino local loopback en lugar de la URL de entorno de gateway configurada, el puerto de entorno o los destinos remotos.
Interpretación
Reachable: yessignifica que al menos un destino aceptó una conexión WebSocket.Capability: read-only|write-capable|admin-capable|pairing-pending|connect-onlyinforma lo que la comprobación pudo probar sobre la autenticación. Es independiente de la alcanzabilidad.Read probe: oksignifica que las llamadas RPC de detalle con alcance de lectura (health/status/system-presence/config.get) también tuvieron éxito.Read probe: limited - missing scope: operator.readsignifica que la conexión tuvo éxito, pero la RPC con alcance de lectura está limitada. Esto se informa como alcanzabilidad degradada, no como fallo completo.Read probe: faileddespués deConnect: oksignifica que Gateway aceptó la conexión WebSocket, pero los diagnósticos de lectura de seguimiento agotaron el tiempo de espera o fallaron. Esto también es alcanzabilidad degradada, no un Gateway inalcanzable.- Al igual que
gateway status, la comprobación reutiliza la autenticación de dispositivo en caché existente, pero no crea identidad de dispositivo por primera vez ni estado de emparejamiento. - El código de salida es distinto de cero solo cuando ningún destino comprobado es alcanzable.
Salida JSON
Nivel superior:
ok: al menos un destino es alcanzable.degraded: al menos un destino aceptó una conexión, pero no completó todos los diagnósticos RPC detallados.capability: mejor capacidad observada entre los destinos alcanzables (read_only,write_capable,admin_capable,pairing_pending,connected_no_operator_scopeounknown).primaryTargetId: mejor destino para tratar como ganador activo en este orden: URL explícita, túnel SSH, remoto configurado y luego local loopback.warnings[]: registros de advertencia de mejor esfuerzo concode,messageytargetIdsopcionales.network: sugerencias de URL local loopback/tailnet derivadas de la configuración actual y la red del host.discovery.timeoutMsydiscovery.count: el presupuesto de descubrimiento y conteo de resultados reales usados para esta pasada de comprobación.
Por destino (targets[].connect):
ok: alcanzabilidad después de la clasificación de conexión + degradación.rpcOk: éxito completo de RPC detallada.scopeLimited: la RPC detallada falló por falta de alcance de operador.
Por destino (targets[].auth):
role: rol de autenticación informado enhello-okcuando está disponible.scopes: alcances concedidos informados enhello-okcuando están disponibles.capability: la clasificación de capacidad de autenticación expuesta para ese destino.
Códigos de advertencia comunes
ssh_tunnel_failed: falló la configuración del túnel SSH; el comando recurrió a comprobaciones directas.multiple_gateways: identidades de gateway distintas eran alcanzables, o OpenClaw no pudo probar que los destinos alcanzables son el mismo gateway. Un túnel SSH, una URL de proxy o una URL remota configurada hacia el mismo gateway no activa esta advertencia.auth_secretref_unresolved: no se pudo resolver una SecretRef de autenticación configurada para un destino fallido.probe_scope_limited: la conexión WebSocket tuvo éxito, pero la comprobación de lectura estuvo limitada por la falta deoperator.read.
Remoto por SSH (paridad con la app de Mac)
El modo "Remoto por SSH" de la app de macOS usa un reenvío de puerto local para que el gateway remoto (que puede estar enlazado solo a loopback) sea alcanzable en ws://127.0.0.1:<port>.
Equivalente de CLI:
openclaw gateway probe --ssh user@gateway-hostOPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tc3NoIDx0YXJnZXQ
" type="string">
user@host o user@host:port (el puerto predeterminado es 22).
--ssh-autobooleanElige el primer host de gateway descubierto como destino SSH desde el endpoint de descubrimiento resuelto (local. más el dominio de área amplia configurado, si existe). Se ignoran las sugerencias solo TXT.
Configuración (opcional, usada como valores predeterminados):
gateway.remote.sshTargetgateway.remote.sshIdentity
gateway call <method>
Ayudante RPC de bajo nivel.
openclaw gateway call statusopenclaw gateway call logs.tail --params '{"sinceMs": 60000}'"--params"--url"--token"--password"--timeout--expect-finalbooleanPrincipalmente para RPCs de estilo agente que transmiten eventos intermedios antes de una carga final.
--jsonbooleanSalida JSON legible por máquina.
Gestionar el servicio de Gateway
openclaw gateway installopenclaw gateway startopenclaw gateway stopopenclaw gateway restartopenclaw gateway uninstallInstalar con un contenedor
Usa --wrapper cuando el servicio administrado deba iniciarse mediante otro ejecutable, por ejemplo un
adaptador de gestor de secretos o un ayudante para ejecutar como otro usuario. El contenedor recibe los argumentos normales del Gateway y es
responsable de terminar ejecutando openclaw o Node con esos argumentos.
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 restartTambién puedes definir el contenedor mediante el entorno. gateway install valida que la ruta sea
un archivo ejecutable, escribe el contenedor en ProgramArguments del servicio y conserva
OPENCLAW_WRAPPER en el entorno del servicio para reinstalaciones forzadas, actualizaciones y reparaciones de doctor
posteriores.
OPENCLAW_WRAPPER="$HOME/.local/bin/openclaw-doppler" openclaw gateway install --forceopenclaw doctorPara quitar un contenedor conservado, vacía OPENCLAW_WRAPPER al reinstalar:
OPENCLAW_WRAPPER= openclaw gateway install --forceopenclaw gateway restartCommand options
gateway status:--url,--token,--password,--timeout,--no-probe,--require-rpc,--deep,--jsongateway install:--port,--runtime <node|bun>,--token,--wrapper <path>,--force,--jsongateway restart:--safe,--skip-deferral,--force,--wait <duration>,--jsongateway uninstall|start:--jsongateway stop:--disable,--json
Lifecycle behavior
- Usa
gateway restartpara reiniciar un servicio administrado. No encadenesgateway stopygateway startcomo sustituto de reinicio. - En macOS,
gateway stopusalaunchctl bootoutde forma predeterminada, lo que elimina el LaunchAgent de la sesión de arranque actual sin conservar una deshabilitación: la recuperación automática de KeepAlive permanece activa para futuros bloqueos ygateway startvuelve a habilitarlo limpiamente sin unlaunchctl enablemanual. Pasa--disablepara suprimir KeepAlive y RunAtLoad de forma persistente, de modo que el Gateway no se vuelva a iniciar hasta el siguientegateway startexplícito; usa esto cuando una detención manual deba sobrevivir a reinicios del equipo o del sistema. gateway restart --safepide al Gateway en ejecución que compruebe previamente el trabajo activo y programe un único reinicio combinado después de que el trabajo activo se vacíe. El reinicio seguro predeterminado espera el trabajo activo hasta elgateway.reload.deferralTimeoutMsconfigurado (5 minutos de forma predeterminada); cuando ese presupuesto expira, el reinicio se fuerza. Establecegateway.reload.deferralTimeoutMsen0para una espera segura indefinida que nunca fuerza.--safeno se puede combinar con--forceni--wait.gateway restart --wait 30sanula el presupuesto configurado de vaciado de reinicio para ese reinicio. Los números sin unidad son milisegundos; se aceptan unidades comos,myh.--wait 0espera indefinidamente.gateway restart --safe --skip-deferralejecuta el reinicio seguro compatible con OpenClaw, pero omite la puerta de aplazamiento para que el Gateway emita el reinicio de inmediato incluso cuando se informen bloqueadores. Es una vía de escape para operadores ante aplazamientos de ejecuciones de tareas atascadas; requiere--safe.gateway restart --forceomite el vaciado del trabajo activo y reinicia de inmediato. Úsalo cuando un operador ya haya inspeccionado los bloqueadores de tareas listados y quiera que el Gateway vuelva ahora.- Los comandos de ciclo de vida aceptan
--jsonpara scripts.
Auth and SecretRefs at install time
- Cuando la autenticación por token requiere un token y
gateway.auth.tokenestá administrado por SecretRef,gateway installvalida que el SecretRef se pueda resolver, pero no conserva el token resuelto en los metadatos de entorno del servicio. - Si la autenticación por token requiere un token y el SecretRef de token configurado no se resuelve, la instalación falla de forma cerrada en lugar de conservar texto sin formato de respaldo.
- Para autenticación por contraseña en
gateway run, prefiereOPENCLAW_GATEWAY_PASSWORD,--password-fileo ungateway.auth.passwordrespaldado por SecretRef antes que--passworden línea. - En modo de autenticación inferida,
OPENCLAW_GATEWAY_PASSWORDsolo de shell no relaja los requisitos de token de instalación; usa configuración duradera (gateway.auth.passwordoenvde configuración) al instalar un servicio administrado. - Si tanto
gateway.auth.tokencomogateway.auth.passwordestán configurados ygateway.auth.modeno está definido, la instalación se bloquea hasta que el modo se establezca explícitamente.
Descubrir Gateways (Bonjour)
gateway discover busca balizas de Gateway (_openclaw-gw._tcp).
- DNS-SD multicast:
local. - DNS-SD unicast (Bonjour de área amplia): elige un dominio (ejemplo:
openclaw.internal.) y configura DNS dividido + un servidor DNS; consulta Bonjour.
Solo los Gateways con descubrimiento Bonjour habilitado (predeterminado) anuncian la baliza.
Los registros de descubrimiento de área amplia pueden incluir estas sugerencias TXT:
role(sugerencia de rol del Gateway)transport(sugerencia de transporte, por ejemplogateway)gatewayPort(puerto WebSocket, normalmente18789)sshPort(solo en modo de descubrimiento completo; los clientes usan22como destino SSH predeterminado cuando no está presente)tailnetDns(nombre de host MagicDNS, cuando está disponible)gatewayTls/gatewayTlsSha256(TLS habilitado + huella digital del certificado)cliPath(solo en modo de descubrimiento completo)
gateway discover
openclaw gateway discover"--timeout--jsonbooleanSalida legible por máquina (también deshabilita estilos/indicador de carga).
Ejemplos:
openclaw gateway discover --timeout 4000openclaw gateway discover --json | jq '.beacons[].wsUrl'