2026-05-13 OpenClaw multi-agents agents.json : séparation des rôles sur Mac cloud Apple Silicon loué sans tête (HK / JP / KR / SG / US)
Une passerelle, une personnalité, une anecdote de suppression accidentelle — jusqu à ce que vous fractionniez OpenClaw en profils multi-agents explicites. Sur des Mac mini M4 loués à Hong Kong, Tokyo, Séoul, Singapour et aux États-Unis, le même UID héberge souvent des voies xcodebuild, des arbres de signature et un assistant Slack. Ce guide du 2026-05-13 traite agents.json comme un contrat d exploitation : quelles racines sont autorisées, quel OPENCLAW_STATE_DIR détient les checkpoints, comment chaque événement entrant se mappe à une identité d agent unique. Il enchaîne les listes autorisées d espace de travail, les checkpoints de session et le redémarrage passerelle, et l onboard et le triage doctor pour une séparation dev vs ops reproductible après redémarrages launchd.
Pourquoi le multi-agent compte sur des builders loués partagés
Un assistant capable de lire des dépôts n est pas interchangeable avec une automatisation qui redémarre des démons ou fait tourner des jetons. Partager un répertoire d état mélange caches de déduplication, manifestes plugin et JSON partiellement écrits sous webhooks en rafale — surtout après mises à jour npm ou tempêtes launchctl kickstart. Le design multi-agent vise le blast radius : surfaces d outils étroites par rôle, préfixes de logs distincts, revue humaine avant toute extension. Traitez agents.json comme du code d infra : revue par les pairs, checksum dans les bundles, canari par région.
Anatomie de agents.json face au modèle de processus passerelle
Trois couches : transport (HTTP, Slack, Telegram), passerelle (routage, auth, limites), runtime agent (outils, appels modèle, politique fichiers). agents.json appartient au runtime : agents nommés, modèles par défaut, paquets de compétences, paramètres de politique. La passerelle lit au démarrage ; modifier sans redémarrage contrôlé laisse des politiques mi-vie en mémoire. Documentez les champs rechargeables à chaud pour votre build OpenClaw et les séquences stop-start alignées sur le guide checkpoint.
- Identité —
idstables pour routeurs et métriques. - Périmètre — racines alignées sur les garde-fous monorepo.
- Outils — listes allow/deny explicites ; la persona ops peut inclure le contrôle de services que la persona dev n hérite pas.
Personas dev et ops : ce qu elles ne doivent pas se transmettre
L assistant développement privilégie la navigation quasi lecture seule, des edits compatibles diff et des commandes de test bornées au checkout CI. L automatisation ops peut élargir l introspection hôte mais évite invites interactives et shell illimité. Aucune invite inline ne transporte de secrets — chargez depuis trousseau macOS ou fichiers d environnement scellés référencés par plist. Flouter la frontière « temporairement » mène à des fils d assistant qui héritent d outils ops et touchent des plists launchd alors que l humain croit encore à une exploration lecture seule.
Isolation de OPENCLAW_STATE_DIR par agent sur une seule machine
Préfixes prévisibles, par ex. ~/Library/Application Support/OpenClaw/state-dev et .../state-ops, ou sous-répertoires par tenant si plusieurs lignes de produit partagent la location. Ne symlink pas un arbre d état dans l autre ; firmlinks APFS et sauvegardes peuvent effacer la distinction. TMPDIR par agent pour éviter courses de suppression sur uploads partiels. Après déplacement, exécutez les vérifications décrites dans le triage doctor pour confirmer les chemins sous shell non interactif.
# Exemple wrapper launchd
#!/bin/bash
set -euo pipefail
export OPENCLAW_STATE_DIR="$HOME/.openclaw-state/ops"
exec /usr/local/bin/openclaw gateway --config "$HOME/.openclaw/ops-gateway.json"
Routage passerelle : clés de corrélation, canaux, collisions
Les webhooks doivent porter des identifiants stables — nom complet de dépôt + id de livraison, équipe Slack + canal + ts de fil, ou jeton de job interne signé. Chaque motif mappe vers un seul id ; évitez le repli regex qui envoie du trafic ops vers l assistant par défaut. Avec deux passerelles, réutilisez l idée d étiquettes amont mais gardez le routage persona orthogonal au split A/B. Logguez les décisions en info pendant le rollout, puis baissez le niveau une fois le budget d erreur stable.
Matrice : un agent vs agents.json scindés vs passerelles scindées
| Signal | Favoriser un seul agent | Favoriser agents.json scindés | Favoriser passerelles scindées |
|---|---|---|---|
| Chevauchement des outils | Fort, même classe de risque | Faible, même domaine d auth passerelle | Domaines d auth ou certificats TLS distincts |
| Cadence de release | Ajustements hebdo de prompts seulement | Équipes distinctes sur fichiers JSON | SLO ou fenêtres de maintenance indépendantes |
| Contention d état | Peu d écritures, petits caches | Checkpoints ou IO plugin lourds | Audit conformité exige isolation dure |
| Coût opérationnel | Minimum de pièces mobiles | Moyen : plus de répertoires et tests de route | Élevé : double launchd et sondes de santé |
Huit étapes pour déployer OpenClaw multi-agents sur Apple Silicon loué
- Inventoriez chaque entrée humaine et automatique touchant la passerelle sur 30 jours.
- Rédigez
agents.jsonavec profils dev et ops ; racines selon le guide listes autorisées. - Créez des arbres frères
OPENCLAW_STATE_DIRavec quotas et propriétaires. - Implémentez des règles déterministes et des tests unitaires sur charges d exemple.
- Déployez plists ou wrappers par persona ; validez avec
launchctl kickstarten préprod. - Exécutez des jobs synthétiques qui doivent échouer si mal routés.
- Mesurez avant/après : tentatives d outils refusées et p95 passerelle.
- Documentez le rollback : tarball d état et ancien JSON tagué Git.
Signaux SLO pour passerelles multi-agents
| Signal | Seuil | Action |
|---|---|---|
| Taux d ambiguïté de routage | > 0,1 % des requêtes | Geler les changements de route ; ajouter des matchers explicites |
| Écritures croisées hors racines déclarées | Toute occurrence | Arrêter la passerelle ; restaurer depuis snapshot checkpoint |
| Dérive Git JSON vs fichiers hôte | Toute édition manuelle non déployée | Rollback hôte ; imposer flux PR uniquement |
FAQ
| Question | Réponse pratique (2026-05-13) |
|---|---|
| Dev et ops partagent-ils la même liste de modèles autorisés ? | Liste fournisseurs partageable si coût géré ensemble ; scindez les modèles interdits si l ops exige des endpoints moins chers ou hors ligne. |
Puis-je éditer agents.json à chaud en SSH pendant un incident ? |
Seulement avec plan de redémarrage apparié et commit Git tagué ; sinon préférez des feature flags côté routeur à plus court rayon. |
Pourquoi la location de Mac mini M4 simplifie OpenClaw multi-agents
NVMe rapide et mémoire unifiée généreuse permettent plusieurs arbres d état, caches modèle parallèles et healthchecks simultanés sans saturer le swap — utile quand vous répétez des changements de routage pendant que la CI compile encore. Comparez les régions sur la page tarifs et orientez les équipes vers les guides SSH/VNC avant d élargir les outils.
Louez des builders où la politique multi-agents tient sur disque
HK / JP / KR / SG / US · SSH / VNC optionnel