Cycle de vie de la gateway sur macOS
L’application macOS gère la gateway via launchd par défaut et ne lance pas la gateway comme processus enfant. Elle essaie d’abord de se rattacher à une gateway déjà en cours d’exécution sur le port configuré ; si aucune n’est joignable, elle active le service launchd via la CLI externeopenclaw (sans runtime intégré). Cela vous offre un
démarrage automatique fiable à la connexion et un redémarrage en cas de plantage.
Le mode processus enfant (gateway lancée directement par l’application) n’est pas utilisé aujourd’hui.
Si vous avez besoin d’un couplage plus étroit avec l’interface, exécutez la gateway manuellement dans un terminal.
Comportement par défaut (launchd)
- L’application installe un LaunchAgent par utilisateur étiqueté
ai.openclaw.gateway(ouai.openclaw.<profile>lors de l’utilisation de--profile/OPENCLAW_PROFILE; l’anciencom.openclaw.*est pris en charge). - Lorsque le mode local est activé, l’application s’assure que le LaunchAgent est chargé et démarre la gateway si nécessaire.
- Les journaux sont écrits dans le chemin de journal gateway launchd (visible dans Debug Settings).
ai.openclaw.<profile> lorsque vous exécutez un profil nommé.
Builds de développement non signées
scripts/restart-mac.sh --no-sign sert aux builds locales rapides lorsque vous n’avez pas de
clés de signature. Pour empêcher launchd de pointer vers un binaire de relais non signé, il :
- Écrit
~/.openclaw/disable-launchagent.
scripts/restart-mac.sh effacent ce remplacement si le marqueur est
présent. Pour réinitialiser manuellement :
Mode attachement uniquement
Pour forcer l’application macOS à ne jamais installer ni gérer launchd, lancez-la avec--attach-only (ou --no-launchd). Cela définit ~/.openclaw/disable-launchagent,
de sorte que l’application se contente de se rattacher à une gateway déjà en cours d’exécution. Vous pouvez activer le même
comportement dans Debug Settings.
Mode distant
Le mode distant ne démarre jamais de gateway locale. L’application utilise un tunnel SSH vers l’hôte distant et se connecte via ce tunnel.Pourquoi nous préférons launchd
- Démarrage automatique à la connexion.
- Sémantique intégrée de redémarrage/KeepAlive.
- Journaux et supervision prévisibles.