L'Agent doit agir, mais dans un cadre
Cursor, Claude Code et similaires ne se contentent plus de compléter du code — ils modifient des fichiers, lancent le terminal, tirent des dépendances. Le problème est le modèle de permissions : par défaut, l'Agent partage les droits système de votre session. Une erreur peut toucher ~/.ssh, supprimer des artefacts de build ou ouvrir des connexions sortantes inaperçues.
Sous macOS, l'isolation est plus délicate : Docker tourne sur noyau Linux, codesign, simulateur Xcode et Apple Neural Engine sont indisponibles en conteneur ; une VM macOS ajoute une perte de performance notable. OpenClaw trace des limites opérationnelles par tâche sur un macOS physique réel, via les capacités natives du système, plutôt que d'enfermer l'Agent dans une cage inutilisable.
Matériel : Mac mini M4 · CPU 10 cœurs · 16 GB mémoire unifiée · SSD 256 GB · bande passante 1 Gbps dédiée (nœud SpinMac Singapour).
Système : macOS Sequoia 15.3 · OpenClaw 1.4.2. Commandes et captures reproduites sur cette machine physique dédiée.
Trois couches d'isolation : fichiers, appels système, réseau
Avant de configurer, comprenez comment OpenClaw réunit « capacités macOS complètes » et « périmètre contrôlé ». Trois mécanismes superposés, pas une simple liste noire :
Espace de noms fichiers : chaque session crée un workspace isolé sous un répertoire donné ; lectures/écritures redirigées par défaut ; accès aux chemins système via readonly_mounts et liste deny.
Filtrage des appels système : macOS Endpoint Security intercepte exec, ptrace, setuid, etc. ; modèles prédéfinis (agent, dev) pour démarrer vite.
Contrôle d'accès réseau : trafic sortant autorisé par domaine ou IP en liste blanche ; le reste est silencieusement rejeté et journalisé, pour éviter que l'Agent tente de contourner en détectant un « mur ».
Activer un nœud SpinMac (prérequis)
OpenClaw est intégré à chaque Mac mini M4 SpinMac, sans option payante. Si vous n'avez pas encore d'instance :
-
01
Choisir nœud et durée
Rendez-vous sur la page de configuration : Singapour, Japon (Tokyo), Corée (Séoul), Hong Kong ou US Est. Disque de base 256 GB suffisant pour les tâches AI Agent, location à la journée dès $21.2.
-
02
Attendre la livraison automatique après paiement
Paiement USDT-TRC20 ou carte Stripe. Attribution en 1–5 minutes après confirmation, identifiants SSH et VNC envoyés par e-mail.
-
03
Se connecter à la console pour vérifier
VNC navigateur sans client ; SSH exemple :
ssh admin@<IP publique> -p <port>. Vérifiez bureau macOS ou shell, puis continuez.
Activer OpenClaw dans la console
Dans la console SpinMac, ouvrez la commande puis l'onglet « OpenClaw ». Première utilisation : initialisation zero trust — paire de clés Ed25519 liée à l'instance, service com.spinmac.openclaw.daemon, répertoire d'audit /var/log/openclaw/.
Vérifier le démon et la CLI en terminal :
# Check daemon
launchctl list | grep openclaw
# Expected: 0 com.spinmac.openclaw.daemon
# Install CLI if not present
curl -fsSL https://cdn.spinmac.com/openclaw/install.sh | bash
claw --version
# openclaw 1.4.2 (darwin/arm64)
claw status
# daemon: running | auth: valid
claw status affiche daemon: running et un token de session valide : vous pouvez configurer les permissions. Si l'init bloque, lancez claw doctor pour l'autorisation Endpoint Security.
Définir les permissions Agent en YAML
OpenClaw décrit chaque session sandbox en YAML. Pour un AI Agent, exportez le modèle agent puis ajustez :
claw template list
# readonly | dev | agent
claw template export agent > ~/openclaw-agent.yaml
Champs clés (extrait) :
filesystem:
workspace: "~/agent-workspace"
readonly_mounts:
- /Applications
- /usr/local/bin
deny:
- ~/.ssh
- ~/Library/Keychains
network:
allow_domains:
- "api.openai.com"
- "api.anthropic.com"
- "*.github.com"
block_all_others: true
L'Agent n'écrit que dans ~/agent-workspace ; peut lire apps installées et chemins Homebrew ; clés SSH et trousseau refusés ; réseau sortant limité aux domaines en liste blanche.
Lors de la première config, /usr/local/bin n'était pas en montage lecture seule : tous les appels git et python3 échouaient. OpenClaw résout la cible réelle des symlinks — si l'outil pointe vers Cellar, ajoutez aussi ce chemin dans readonly_mounts, sinon les logs afficheront une série de BLOCK exec.
Exécuter la première tâche isolée
Fichier de politique prêt : démarrez une session et lancez l'Agent dans le sandbox :
claw run --config ~/openclaw-agent.yaml --attach
# Prompt becomes: (claw:my-agent-session) admin@mac-xxx:~$
# Run agent inside sandbox (example: Claude Code)
claude --dangerously-skip-permissions
--attach ouvre directement un shell contrôlé ; les processus lancés ensuite sont sous surveillance OpenClaw. Le « skip permission » de Claude Code reste limité par le YAML — écriture hors périmètre ou réseau interdit sera bloquée.
Dans un autre terminal, suivez le flux d'audit en temps réel :
claw audit tail my-agent-session --follow
# [10:23:41] ALLOW exec /usr/local/bin/git clone ...
# [10:23:45] BLOCK network outbound → 142.250.x.x — policy: block_all_others
Journaux d'audit et zero trust : ce que cela change
La requête sortante bloquée venait d'un ping d'init d'une dépendance — invisible en environnement classique, mais entièrement tracée dans OpenClaw. Le zero trust ne signifie pas « ne pas faire confiance à l'Agent », mais ne pas supposer que chaque étape est conforme, avec des logs exportables pour répondre à « qu'a-t-il fait exactement ? ».
Pour la conformité, exportez les logs en JSON pour revue sécurité :
claw audit export my-agent-session \
--format json \
--output audit-report-$(date +%Y%m%d).json
Pour collaboration multi-utilisateurs, intégration CI et dépannage en production, voir le guide complet OpenClaw.
Politiques rapides par scénario
| Scénario | Preset syscall | Points clés réseau | Attention |
|---|---|---|---|
| Génération / refactor de code | agent |
Autoriser registres npm / pip | Domaines des gestionnaires de paquets en liste blanche |
| Compilation Xcode | dev |
Autoriser Apple CDN | Monter Xcode et DerivedData |
| Analyse en lecture seule de données sensibles | readonly |
Tout bloquer | Isolation maximale |
| Revue automatisée CI | dev |
GitHub + AI API | Session dédiée par pipeline |
Créez une session par tâche distincte, audit isolé par tâche ; YAML calibré en modèle nommé, réutilisable via claw run --template xcode-build. Pour les équipes qui itèrent souvent, versionnez les modèles dans .openclaw/ du dépôt — chaque merge request trace les limites effectives, sans description orale pour la revue sécurité.
Pourquoi pas Docker ou VM imbriquée ?
Docker Desktop sur macOS est une VM Linux — pas de chaîne Apple complète, Neural Engine non direct. Une VM macOS imbriquée peut faire tourner Xcode, mais les 38 TOPS du M4 chutent fortement en virtualisation, sans audit opérationnel intégré.
OpenClaw intercepte sur machine physique via Endpoint Security (~3 % CPU) ; l'Agent garde codesign, simulateur et Core ML réels — les limites sont dans le YAML. Par rapport à l'Agent nu sur portable ou VM + scripts de monitoring, le chemin ops est plus court : pas d'images, snapshots ni agent de logs ; console SpinMac et CLI claw couvrent activation, politique et audit.
Si un MacBook 8 GB swap souvent avec l'Agent, ou si l'équipe veut un nœud partagé auditable, le M4 physique SpinMac dès $21.2/jour offre 16 GB dédiés et sandbox prêt à l'emploi — plus rapide qu'un bricolage temporaire et aligné sur l'attente « périmètre prouvable » des équipes sécurité.
Exécutez un AI Agent auditable sur Mac physique
Nœud Mac mini M4 SpinMac dédié : sandbox OpenClaw, accès zero trust, audit complet des opérations, 16 GB mémoire unifiée et Neural Engine 38 TOPS en direct, dès $21.2/jour.