2026-05-13 OpenClaw sur Mac mini loué sans interface : checklist SSH avant launchd, MCP et agents nocturnes
Les équipes qui louent un Mac mini Apple Silicon chez ProxyMac avec des nœuds à Hong Kong, au Japon, en Corée du Sud, à Singapour et aux États-Unis se connectent souvent d’abord en SSH—sans Finder ni partage d’écran—et veulent enchaîner OpenClaw sous launchd. L’omission la plus coûteuse est leprévol premier boot : les timeouts MCP sont attribués au réseau alors que lapression disque est ignorée ; « clé API manquante » passe pour un bug produit alors que leshell non-login n’hérite pas les variables. Cet article fournit (1) le public et la définition du terminé, (2) trois signaux quantifiables avant installation, (3) unematrice prévol à cinq colonnes, (4) unrunbook SSH en sept étapes prêt pour Confluence, (5) un tableau symptôme → remède, avec liens vers installation et déploiement, environnement MCP et launchd, jeton passerelle JSON et récupération launchctl. Pour cliquer les dialogues macOS : VNC. Spécifications : tarifs. Chemins : aide.
Public et définition de « terminé »
Pour le platform engineering et les responsables automatisation qui utilisent le mini comme passerelle OpenClaw permanente avec outils MCP et observabilité JSONL. « Terminé » signifie : après redémarrage à froid, reconnexion SSH en moins de 90 secondes, LaunchAgent démarré sans session ssh tenue à la main, etjournaux structurés prouvant les health checks modèle et outils. Si chaque reboot exige encore export, ce n’est pas terminé—c’est une dette d’environnement qui explosera avec les agents parallèles.
- Cibles chiffrées : volume APFS pour JSONL et cache modèle avec au moins 25 % libre ; seulement brièvement sous 15 % pendant une fenêtre de maintenance planifiée.
- Réalité latence : noter le RTT du portable d’exploitation vers la région ; si l’API control plane est sur un autre continent, prévoir mentalement 120–220 ms d’aller-retour pour les timeouts MCP.
- Budget parallélisme : modéliser le pic avec quatre handshakes MCP simultanés pour les descripteurs de fichiers avant de dire « le réseau est bon ».
Trois signaux avant tout script d’installation
Capturer df -h et diskutil apfs listSnapshots /—les journaux append OpenClaw et les instantanés APFS laissés par les outils de migration se marchent souvent dessus. Afficher sysctl hw.optional.arm64 et uname -m pour confirmer arm64 Apple Silicon (éviter le mélange Rosetta/Node). Troisièmement comparer ssh host 'command -v openclaw' et ssh -t host zsh -lic 'command -v openclaw' ; en cas d’écart vous tournez dans le même cercle launchd que l’article environnement MCP. Collez les trois sorties au ticket—la relève hérite des faits, pas du bouche-à-oreille.
launchctl kickstart à froid (squelette passerelle sur M4 idéalement sous 12 secondes).
Matrice prévol : livrable, propriétaire, vérification, rollback, rayon d’explosion si sauté
| Livrable | Compte propriétaire | Vérification | Rollback | Si on saute |
|---|---|---|---|---|
| Répertoire de travail | même UID que LaunchAgent | audit ACL ls -le |
archiver puis install -d -o |
demi-écritures silencieuses à l’installation d’outils |
| Chemin JSONL | utilisateur rôle ex. _openclaw |
quota + politique de rotation | backup, tronquer, resserrer la rotation | pics d’écriture nocturne remplissent le volume |
| plist ProgramArguments | domaine LaunchAgent non root | plutil -lint + git diff |
launchctl bootout puis plist d’origine |
boucles de démarrage consomment le quota CPU |
| Secrets fournisseur modèle | Trousseau ou fichier mode 600 |
sonde non interactive avec timeout | rotation des clés, purge cache | fuites cross-tenant dans un lab partagé |
| Liste services MCP | SHA figée dans le dépôt | checksum + sous-ensemble openclaw doctor |
checkout SHA précédente | drift de schéma casse les agents |
Runbook SSH en sept étapes (prêt pour Confluence)
- Baseline stockage : moins de 25 % libre → pas d’installation ; nettoyer ou monter de gamme—voir tarifs.
- Alignement horaire : NTP sain ; annoter
date -uet l’intention région (HK / JP / KR / SG / US) à côté de la config pour corréler les logs multi-régions. - Installer/mettre à jour OpenClaw : suivre le guide d’installation uniquement après snapshot PATH validé.
- Écrire le plist avec PATH figé : inclure
/opt/homebrew/binet les gestionnaires de runtime nécessaires—pas d’héritage implicite. - Double fumée : passerelle en premier plan SSH, puis mêmes arguments avec
launchctl kickstart; comparer les lignes de jeton de démarrage JSONL. - Brancher le diagnostic : activer JSONL et vérifier la rotation selon le guide journaux ; pas de croissance infinie en 48 heures.
- Passation : propriétaire reboot et gravité d’alerte ; lien vers l’article de récupération ; hash plist dans le ticket.
chmod 600, supprimé en sécurité après validation plist.
Symptôme → cause probable → premier remède (toujours SSH)
| Symptôme | Cause probable | Premier remède |
|---|---|---|
| code sortie MCP 127 | PATH tronqué sous launchd | chemins absolus ou script wrapper fin dans plist |
| CPU passerelle au repos 95 % | boucle serrée ou écriture journal bloquante | latence volume JSONL ; rotation selon le guide journaux |
| erreurs d’auth seulement après reboot | jeton uniquement dans le profile shell | déplacer vers EnvironmentVariables du plist ou trousseau—voir article jetons |
| handshake bloqué ~40 s | DNS ou limitation de débit imite la perte de paquets | baisser la parallélisation ; tests de résolution explicites sur le mini |
Passer de SSH à VNC (et le garder rare)
Les cas TCC réglables par profils, droits et plist restent sur SSH. Ouvrir VNC pour cliquer « Enregistrement de l’écran », observer une automatisation UI GPU, ou aider un designer qui ne lit pas le JSONL. Sessions courtes : réduire la profondeur de couleur, suspendre les gros scp, combiner avec le réglage latence inter-régions pour garder la souris utilisable. Beaucoup de grappes OpenClaw en HK / JP / KR / SG / US n’ont besoin de VNC qu’une fois par génération matérielle, pas chaque semaine.
FAQ
Homebrew est-il obligatoire ? Non—mais si la doc le suppose implicitement, documentez l’hypothèse PATH dans la matrice sinon les incidents se répètent.
Toujours un compte admin personnel ? OK pour une démo ; en prod : comptes rôle, sudo restreint, propriétaires de journaux explicites.
Proxy HTTP d’entreprise ? Si SSH utilise ProxyCommand, l’egress MCP peut aussi—alignez d’abord les articles réseau avant de blâmer OpenClaw.
Pourquoi le Mac mini ProxyMac convient au OpenClaw headless
Le Mac mini M4 loué associe macOS natif et CPU single-tenant prévisible—idéal quand OpenClaw orchestre uniquement la chaîne Apple pendant que l’exploitation reste sur des portables Linux. Placer la passerelle en HK / JP / KR / SG / US rapproche la control plane des régions API sans monter cinq baies vous-mêmes. Après la checklist, vous conservez le même modèle économique métal qu’en CI : comparez les tarifs, répétez le SSH d’urgence via le centre d’aide, gardez VNC en secours, pas sur le chemin critique.
OpenClaw headless avec chaîne de preuve
Checklist · launchd · HK / JP / KR / SG / US