Ir al contenido

Ciclo de vida del Gateway en macOS

De forma predeterminada, la aplicación de macOS gestiona el Gateway a través de launchd y no genera el Gateway como un proceso secundario. Primero intenta conectarse a un Gateway que ya se esté ejecutando en el puerto configurado; si no es accesible, habilita el servicio launchd a través de la CLI externa openclaw (sin tiempo de ejecución integrado). Esto le ofrece un inicio de sesión automático confiable y un reinicio en caso de bloqueos.

El modo de proceso secundario (Gateway generado directamente por la aplicación) no está en uso en la actualidad. Si necesita una integración más estrecha con la interfaz de usuario, ejecute el Gateway manualmente en una terminal.

  • La aplicación instala un LaunchAgent por usuario etiquetado como ai.openclaw.gateway (o ai.openclaw.<profile> al usar --profile/OPENCLAW_PROFILE; se admite el com.openclaw.* heredado).
  • Cuando el modo Local está habilitado, la aplicación asegura que el LaunchAgent esté cargado e inicia el Gateway si es necesario.
  • Los registros se escriben en la ruta del registro del gateway de launchd (visible en Configuración de depuración).

Comandos comunes:

Ventana de terminal
launchctl kickstart -k gui/$UID/ai.openclaw.gateway
launchctl bootout gui/$UID/ai.openclaw.gateway

Reemplace la etiqueta con ai.openclaw.<profile> cuando ejecute un perfil con nombre.

scripts/restart-mac.sh --no-sign es para compilaciones locales rápidas cuando no tiene claves de firma. Para evitar que launchd apunte a un binario de relé sin firmar, hace lo siguiente:

  • Escribe ~/.openclaw/disable-launchagent.

Las ejecuciones firmadas de scripts/restart-mac.sh borran esta anulación si el marcador está presente. Para restablecer manualmente:

Ventana de terminal
rm ~/.openclaw/disable-launchagent

Para forzar que la aplicación de macOS nunca instale ni gestione launchd, iníciela con --attach-only (o --no-launchd). Esto establece ~/.openclaw/disable-launchagent, por lo que la aplicación solo se adjunta a un Gateway que ya se está ejecutando. Puede alternar el mismo comportamiento en Configuración de depuración.

El modo remoto nunca inicia un Gateway local. La aplicación utiliza un túnel SSH al host remoto y se conecta a través de ese túnel.

  • Inicio automático al iniciar sesión.
  • Semántica integrada de reinicio/KeepAlive.
  • Registros y supervisión predecibles.

Si alguna vez se vuelve a necesitar un modo de proceso secundario real, debe documentarse como un modo separado y explícito solo para desarrolladores.