Aller au contenu

Gateway sur macOS

OpenClaw.app n’inclut plus Node/Bun ni le runtime Gateway. L’application macOS s’attend à une installation externe de la OpenClawBunGatewaymacOSopenclawCLIGatewayGatewayGateway CLI, ne lance pas le Gateway en tant que processus enfant, et gère un service launchd par utilisateur pour maintenir le Gateway en cours d’exécution (ou se connecte à un Gateway local existant si un est déjà en cours d’exécution).

Node 24 est le runtime par défaut sur Mac. Node 22 LTS, actuellement 22.19+, fonctionne toujours pour la compatibilité. Installez ensuite openclaw globalement :

Fenêtre de terminal
npm install -g openclaw@<version>

Le bouton Installer la CLI de l’application macOS exécute le même flux d’installation globale que l’application utilise en interne : il privilégie d’abord npm, puis pnpm, puis bun si c’est le seul gestionnaire de paquets détecté. Node reste le runtime recommandé pour le Gateway.

Label :

  • ai.openclaw.gateway (ou ai.openclaw.<profile> ; l’ancien com.openclaw.* peut rester)

Emplacement du plist (par utilisateur) :

  • ~/Library/LaunchAgents/ai.openclaw.gateway.plist (ou ~/Library/LaunchAgents/ai.openclaw.<profile>.plist)

Gestionnaire :

  • L’application macOS gère l’installation/mise à jour du LaunchAgent en mode Local.
  • Le CLI peut également l’installer : openclaw gateway install.

Comportement :

  • “OpenClaw Actif” active/désactive le LaunchAgent.
  • La fermeture de l’application n’arrête pas le gateway (launchd le maintient en vie).
  • Si un Gateway est déjà en cours d’exécution sur le port configuré, l’application s’y connecte au lieu d’en démarrer un nouveau.

Journalisation :

  • launchd stdout : ~/Library/Logs/openclaw/gateway.log (les profils utilisent gateway-<profile>.log)
  • launchd stderr : supprimé

L’application macOS vérifie la version du gateway par rapport à sa propre version. Si elles sont incompatibles, mettez à jour le CLI global pour qu’il corresponde à la version de l’application.

Fenêtre de terminal
openclaw --version
OPENCLAW_SKIP_CHANNELS=1 \
OPENCLAW_SKIP_CANVAS_HOST=1 \
openclaw gateway --port 18999 --bind loopback

Ensuite :

Fenêtre de terminal
openclaw gateway call health --url ws://127.0.0.1:18999 --timeout 3000