🩞
Tutoriel

Routage multi-agents

Executez plusieurs agents isoles sur un seul Gateway pour separer travail/personnel, partage familial ou differentes personnalites IA.

Intermediaire20 min de lectureJanvier 2026

1.Qu'est-ce que le routage multi-agents ?

Le routage multi-agents vous permet d'executer plusieurs agents IA isoles sur un seul Gateway OpenClaw. Chaque agent a sa propre identite, memoire et configuration - mais partage la meme infrastructure.

Chaque agent dispose de :

Identite propre

Nom, personnalite et prompt systeme separes

Memoire isolee

Historique de conversation et contexte independants

Outils personnalises

Permissions d'outils differentes par agent

Liaisons de canaux

Routez des canaux specifiques vers des agents specifiques

Cas d'utilisation courants

đŸ’Œ

Separation travail/personnel

Gardez Slack professionnel separe de Telegram personnel. Differentes personnalites, differentes memoires.

đŸ‘šâ€đŸ‘©â€đŸ‘§

Partage familial

Chaque membre de la famille obtient son propre agent avec des reponses personnalisees et une memoire privee.

🎭

Differentes personnalites

Un assistant professionnel pour les emails, un ami decontracte pour Discord, un ecrivain creatif pour le brainstorming.

đŸ“±

Multi-comptes

Gerez plusieurs numeros WhatsApp ou comptes Telegram avec des agents isoles.

2.Concepts cles

Espaces de travail

Chaque agent vit dans un 'espace de travail' - un repertoire contenant sa configuration, sa memoire et ses fichiers.

~/openclaw/agents/work/
├── AGENTS.md    # Define sub-agents and their specialties
├── SOUL.md      # Agent personality and communication style
├── USER.md      # Information about the user
└── skills/      # Agent-specific skills
  • soul.md— Personnalite de l'agent et prompt systeme
  • user.md— Preferences utilisateur et contexte
  • memory/— Historique de conversation et faits
  • skills/— Competences personnalisees pour cet agent

Important

Les agents partagent le meme processus Gateway et les cles API. Pour une veritable isolation (cles API separees, processus separes), executez plusieurs instances Gateway.

  • - Les limites de debit sont partagees entre tous les agents
  • - Les couts API sont combines
  • - Un crash affecte tous les agents
Liaisons de canaux

Les liaisons routent les messages entrants vers le bon agent en fonction du canal, de l'utilisateur ou du groupe.

// Example: Route WhatsApp business account to work agent
{
  "bindings": [{
    "agent": "work",
    "channel": "whatsapp",
    "accountId": "business-account-id"
  }]
}

3.Configuration etape par etape

1

Creer un nouvel agent

Creez un repertoire d'espace de travail pour votre nouvel agent :

$
openclaw agents add work

Ceci cree un nouvel agent avec son propre repertoire d'espace de travail.

2

Configurer l'espace de travail

Creez les fichiers de personnalite et d'utilisateur de l'agent :

soul.md - Personnalite de l'agent :

# Work Assistant Soul

You are a professional work assistant. Be formal, concise,
and focused on productivity. Avoid casual language.

## Communication Style
- Use professional language
- Be direct and efficient
- Focus on actionable items
- Respect work-life boundaries

user.md - Contexte utilisateur :

# User Profile - Work Context

- Role: Software Engineer at Acme Corp
- Working hours: 9 AM - 6 PM PST
- Key projects: Project Alpha, Customer Portal
- Slack workspace: acme-corp.slack.com
3

Configurer les liaisons de canaux

Routez les canaux vers votre nouvel agent dans openclaw.json :

{
  "agents": {
    "default": {
      "workspace": "~/openclaw/agents/default",
      "agentDir": "~/openclaw/state/default"
    },
    "work": {
      "workspace": "~/openclaw/agents/work",
      "agentDir": "~/openclaw/state/work"
    }
  },
  "bindings": [
    {
      "agent": "work",
      "channel": "whatsapp",
      "accountId": "work-phone-id"
    },
    {
      "agent": "work",
      "channel": "slack",
      "teamId": "T123ACMECORP"
    }
  ],
  "defaultAgent": "default"
}

Les liaisons indiquent a OpenClaw quel agent doit gerer les messages de chaque canal.

4

Configurer la securite (Optionnel)

Definissez le mode sandbox et les restrictions d'outils pour l'agent :

{
  "agents": {
    "work": {
      "workspace": "~/openclaw/agents/work",
      "agentDir": "~/openclaw/state/work",
      "sandbox": "all",
      "tools": {
        "allow": ["calendar", "email", "notes"],
        "deny": ["shell", "browser"]
      }
    },
    "home": {
      "workspace": "~/openclaw/agents/home",
      "agentDir": "~/openclaw/state/home",
      "sandbox": "non-main",
      "tools": {
        "allow": ["*"],
        "deny": []
      }
    }
  }
}
5

Verifier la configuration

Redemarrez OpenClaw et testez votre configuration multi-agents :

$
openclaw agents list
$
openclaw agents test --channel whatsapp --from +1234567890

4.Exemples de configuration

đŸ“±Deux numeros WhatsApp

Routez differents numeros WhatsApp vers differents agents :

{
  "agents": {
    "personal": { "workspace": "~/.openclaw/personal" },
    "business": { "workspace": "~/.openclaw/business" }
  },
  "bindings": [
    { "channel": "whatsapp:+1234567890", "agent": "personal" },
    { "channel": "whatsapp:+0987654321", "agent": "business" }
  ]
}
đŸ€–Differents modeles par canal

Utilisez GPT-4 pour le travail, Claude pour le personnel :

{
  "agents": {
    "work": {
      "workspace": "~/.openclaw/work",
      "model": "gpt-4o"
    },
    "personal": {
      "workspace": "~/.openclaw/personal",
      "model": "claude-3-5-sonnet-20241022"
    }
  }
}
đŸ‘„Agents specifiques aux groupes

Differents agents pour differents serveurs Discord ou espaces de travail Slack :

{
  "bindings": [
    { "channel": "discord", "guild": "gaming-server-id", "agent": "gaming-buddy" },
    { "channel": "discord", "guild": "work-server-id", "agent": "work-assistant" },
    { "channel": "slack", "workspace": "company-workspace", "agent": "work-assistant" }
  ]
}
đŸ‘šâ€đŸ‘©â€đŸ‘§â€đŸ‘ŠPartage familial

Chaque membre de la famille obtient son propre agent via l'ID utilisateur Telegram :

{
  "agents": {
    "dad": { "workspace": "~/.openclaw/dad" },
    "mom": { "workspace": "~/.openclaw/mom" },
    "kids": { "workspace": "~/.openclaw/kids", "sandbox": "all" }
  },
  "bindings": [
    { "channel": "telegram", "userId": "123456", "agent": "dad" },
    { "channel": "telegram", "userId": "789012", "agent": "mom" },
    { "channel": "telegram", "userId": "345678", "agent": "kids" }
  ]
}

5.Priorite des liaisons

Lorsque plusieurs liaisons peuvent correspondre, OpenClaw utilise la plus specifique :

  1. 1

    Specifique a l'utilisateur

    Les liaisons avec userId correspondent en premier

    { "channel": "telegram", "userId": "123", "agent": "personal" }
  2. 2

    Specifique au groupe

    Les liaisons avec group/guild/workspace correspondent en second

    { "channel": "discord", "guild": "abc", "agent": "gaming" }
  3. 3

    Specifique au canal

    Les liaisons uniquement par canal correspondent en dernier

    { "channel": "telegram", "agent": "default" }

Exemple

Si vous avez des liaisons pour 'telegram' (par defaut) et 'telegram + userId:123' (personnel), les messages de l'utilisateur 123 vont vers 'personnel', tous les autres vers 'defaut'.

6.Securite et sandboxing

Controlez ce que chaque agent peut faire avec les modes sandbox et les politiques d'outils.

Modes sandbox

Limitez les capacites de l'agent en fonction du niveau de confiance :

"sandbox": "off"Acces complet

L'agent peut utiliser tous les outils. Utilisez pour les agents personnels de confiance.

"sandbox": "non-main"Limite

Restreindre l'acces fichiers/shell au repertoire de l'espace de travail uniquement.

"sandbox": "all"Strict

Pas d'acces au systeme de fichiers ou au shell. Chat et web uniquement.

Politique d'outils

Controle granulaire sur les outils qu'un agent peut utiliser :

{
  "agents": {
    "restricted": {
      "workspace": "~/openclaw/agents/restricted",
      "agentDir": "~/openclaw/state/restricted",
      "tools": {
        // Only allow these specific tools
        "allow": ["calendar", "notes", "reminders"],
        // Explicitly block dangerous tools
        "deny": ["shell", "filesystem", "browser", "email"]
      }
    },
    "trusted": {
      "workspace": "~/openclaw/agents/trusted",
      "agentDir": "~/openclaw/state/trusted",
      "tools": {
        // Allow everything except...
        "allow": ["*"],
        "deny": ["shell"]  // Still block shell for safety
      }
    }
  }
}
Acces a l'espace de travail

Par defaut, les agents ne peuvent acceder qu'aux fichiers dans leur repertoire d'espace de travail. Cela empeche un agent de lire la memoire ou les fichiers d'un autre.

{
  "agents": {
    "work": {
      "workspace": "~/openclaw/agents/work",
      "agentDir": "~/openclaw/state/work",
      "filesystem": {
        // Only allow access to these directories
        "allowedPaths": [
          "~/Documents/Work",
          "~/Projects",
          "/tmp"
        ],
        // Block access to sensitive areas
        "blockedPaths": [
          "~/.ssh",
          "~/.aws",
          "~/Documents/Personal"
        ]
      }
    }
  }
}

Multi-agents pret !

Vous avez maintenant des agents isoles pour differents cas d'utilisation.

Questions ? Rejoindre Discord ou Ouvrir une issue GitHub