🦞
Tutorial

Roteamento Multi-Agente

Execute multiplos agentes isolados em um unico Gateway para separacao trabalho/casa, compartilhamento familiar ou diferentes personalidades de IA.

Intermediario20 min de leituraJaneiro 2026

1.O que e Roteamento Multi-Agente?

O roteamento multi-agente permite executar multiplos agentes de IA isolados em um unico OpenClaw Gateway. Cada agente tem sua propria identidade, memoria e configuracao - mas compartilha a mesma infraestrutura.

Cada agente tem:

Identidade Propria

Nome, personalidade e prompt de sistema separados

Memoria Isolada

Historico de conversas e contexto independentes

Ferramentas Personalizadas

Permissoes de ferramentas diferentes por agente

Bindings de Canal

Direcione canais especificos para agentes especificos

Casos de Uso Comuns

πŸ’Ό

Separacao Trabalho/Casa

Mantenha o Slack de trabalho separado do Telegram pessoal. Personalidades diferentes, memorias diferentes.

πŸ‘¨β€πŸ‘©β€πŸ‘§

Compartilhamento Familiar

Cada membro da familia recebe seu proprio agente com respostas personalizadas e memoria privada.

🎭

Personalidades Diferentes

Um assistente profissional para email, um amigo casual para Discord, um escritor criativo para brainstorming.

πŸ“±

Multi-Conta

Gerencie multiplos numeros de WhatsApp ou contas de Telegram com agentes isolados.

2.Conceitos Chave

Workspaces

Cada agente vive em um 'workspace' - um diretorio contendo sua configuracao, memoria e arquivos.

~/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β€” Personalidade do agente e prompt de sistema
  • user.mdβ€” Preferencias e contexto do usuario
  • memory/β€” Historico de conversas e fatos
  • skills/β€” Skills personalizadas para este agente

Importante

Agentes compartilham o mesmo processo Gateway e chaves de API. Para isolamento verdadeiro (chaves de API separadas, processos separados), execute multiplas instancias de Gateway.

  • - Limites de taxa sao compartilhados entre todos os agentes
  • - Custos de API sao combinados
  • - Uma falha afeta todos os agentes
Bindings de Canal

Bindings direcionam mensagens recebidas para o agente correto baseado em canal, usuario ou grupo.

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

3.Configuracao Passo a Passo

1

Criar um Novo Agente

Crie um diretorio de workspace para seu novo agente:

$
openclaw agents add work

Isso cria um novo agente com seu proprio diretorio de workspace.

2

Configurar o Workspace

Crie os arquivos de personalidade e usuario do agente:

soul.md - Personalidade do agente:

# 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 - Contexto do usuario:

# 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

Configurar Bindings de Canal

Direcione canais para seu novo agente no 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"
}

Os bindings informam ao OpenClaw qual agente deve lidar com mensagens de cada canal.

4

Configurar Seguranca (Opcional)

Defina modo sandbox e restricoes de ferramentas para o agente:

{
  "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

Verificar Configuracao

Reinicie o OpenClaw e teste sua configuracao multi-agente:

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

4.Exemplos de Configuracao

πŸ“±Dois Numeros de WhatsApp

Direcione diferentes numeros de WhatsApp para diferentes agentes:

{
  "agents": {
    "personal": { "workspace": "~/.openclaw/personal" },
    "business": { "workspace": "~/.openclaw/business" }
  },
  "bindings": [
    { "channel": "whatsapp:+1234567890", "agent": "personal" },
    { "channel": "whatsapp:+0987654321", "agent": "business" }
  ]
}
πŸ€–Modelos Diferentes por Canal

Use GPT-4 para trabalho, Claude para pessoal:

{
  "agents": {
    "work": {
      "workspace": "~/.openclaw/work",
      "model": "gpt-4o"
    },
    "personal": {
      "workspace": "~/.openclaw/personal",
      "model": "claude-3-5-sonnet-20241022"
    }
  }
}
πŸ‘₯Agentes Especificos por Grupo

Agentes diferentes para diferentes servidores Discord ou workspaces 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" }
  ]
}
πŸ‘¨β€πŸ‘©β€πŸ‘§β€πŸ‘¦Compartilhamento Familiar

Cada membro da familia recebe seu proprio agente via ID de usuario do 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.Prioridade de Binding

Quando multiplos bindings podem corresponder, o OpenClaw usa o mais especifico:

  1. 1

    Especifico por Usuario

    Bindings com userId correspondem primeiro

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

    Especifico por Grupo

    Bindings com group/guild/workspace correspondem em segundo

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

    Especifico por Canal

    Bindings apenas de canal correspondem por ultimo

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

Exemplo

Se voce tem bindings para 'telegram' (padrao) e 'telegram + userId:123' (pessoal), mensagens do usuario 123 vao para 'pessoal', todas as outras vao para 'padrao'.

6.Seguranca e Sandboxing

Controle o que cada agente pode fazer com modos sandbox e politicas de ferramentas.

Modos Sandbox

Limite as capacidades do agente baseado no nivel de confianca:

"sandbox": "off"Acesso Total

Agente pode usar todas as ferramentas. Use para agentes pessoais confiaveis.

"sandbox": "non-main"Limitado

Restringe acesso a arquivos/shell apenas ao diretorio do workspace.

"sandbox": "all"Restrito

Sem acesso a sistema de arquivos ou shell. Apenas chat e web.

Politica de Ferramentas

Controle detalhado sobre quais ferramentas um agente pode usar:

{
  "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
      }
    }
  }
}
Acesso ao Workspace

Por padrao, agentes podem acessar apenas arquivos dentro do seu diretorio de workspace. Isso previne um agente de ler a memoria ou arquivos de outro.

{
  "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-Agente Pronto!

Voce agora tem agentes isolados para diferentes casos de uso.

Duvidas? Entre no Discord ou Abrir Issue no GitHub