一、核心概念

1.1 什么是多智能体

默认单网关下仅运行 main 主智能体,所有消息统一处理。多智能体 可在同一 Gateway 中创建多个独立 “大脑”,各自拥有:

  • 独立人设、提示词(SOUL.md/AGENTS.md
  • 独立对话会话、历史记忆
  • 独立工具权限、沙箱安全策略

所有智能体共享网关进程、模型、渠道,资源复用,仅业务逻辑与数据隔离。

1.2 适用场景

  • 区分工作 / 闲聊 / 生活场景
  • 不同好友 / 群组 / 客户对应专属智能体
  • 区分对外服务、内部运维、自动化任务
  • 不同聊天渠道(Telegram / 微信 / Discord)使用不同人设

1.3 单智能体默认目录

默认主智能体 main 路径:

plaintext

~/.openclaw/
├── workspace/   # 主智能体工作区(人设、规则)
└── sessions/    # 主智能体对话会话

查看当前智能体列表:

bash

运行

openclaw agents list

二、创建与管理多智能体

2.1 交互式创建新智能体

执行交互式向导,一步步新建:

bash

运行

openclaw agents

流程说明:

  1. 输入智能体 ID(小写 + 连字符,如 workfamilycustomer-a
  2. 选择模板:空白 / 复制已有智能体配置
  3. 自动生成独立目录结构

2.2 多智能体目录结构

新建 work 智能体后,目录如下:

plaintext

~/.openclaw/
├── workspace/                # main 工作区
├── sessions/                 # main 会话
└── agents/
    └── work/                 # 新智能体 work
        ├── workspace/        # work 独立人设、规则
        │   ├── AGENTS.md
        │   ├── SOUL.md
        │   └── MEMORY.md
        └── sessions/         # work 独立对话记录

2.3 编辑独立人设

每个智能体可单独定义性格、回答风格:

bash

运行

# 编辑主智能体人设
nano ~/.openclaw/workspace/SOUL.md

# 编辑 work 工作智能体人设
nano ~/.openclaw/agents/work/workspace/SOUL.md

2.4 常用管理命令

bash

运行

# 列出全部智能体
openclaw agents list

# 查看指定智能体运行状态
openclaw agents status work

# 删除指定智能体(谨慎操作,会话与配置会清空)
openclaw agents remove work

三、路由规则 Bindings(核心)

Bindings 是消息分发规则,写在主配置 ~/.openclaw/openclaw.json 中,决定哪条消息交给哪个智能体

3.1 匹配优先级(由高到低)

规则越精细,优先级越高:

  1. peer + channel + accountId(精准联系人 + 渠道,最高)
  2. peer + channel(指定群组 / 联系人 + 渠道)
  3. channel(整个渠道统一路由)
  4. 默认规则(无任何限定,兜底路由,最低)

3.2 配置字段说明

表格

字段作用示例
agentId目标智能体 ID(必填)"work""family"
channel聊天渠道标识"telegram""whatsapp""discord"
peer联系人 / 群组 / 用户标识手机号、群名、用户 ID
accountId多账号区分同渠道多个账号时使用
comment备注(仅注释,不生效)说明规则用途

3.3 基础完整配置模板

json

{
  "bindings": [
    {
      "agentId": "family",
      "channel": "whatsapp",
      "peer": "家庭群",
      "comment": "WhatsApp 家庭群 → 家庭智能体"
    },
    {
      "agentId": "work",
      "channel": "telegram",
      "comment": "整个 Telegram 渠道 → 工作智能体"
    },
    {
      "agentId": "main",
      "comment": "其余所有消息 → 默认主智能体"
    }
  ]
}

必写兜底规则:数组最后保留一条无限定条件的规则,作为默认路由。


四、典型业务场景配置

场景 1:按渠道分流(最常用)

不同聊天软件使用不同人设智能体

json

{
  "bindings": [
    {
      "agentId": "tg-bot",
      "channel": "telegram",
      "comment": "Telegram 专用"
    },
    {
      "agentId": "dc-bot",
      "channel": "discord",
      "comment": "Discord 专用"
    },
    {
      "agentId": "main",
      "comment": "其他渠道默认"
    }
  ]
}

场景 2:按联系人 / 群组精准路由

同一渠道下,不同好友 / 群分配独立智能体(客户、家人、同事隔离)

json

{
  "bindings": [
    {
      "agentId": "client1",
      "channel": "whatsapp",
      "peer": "+8613800138001",
      "comment": "客户1专属"
    },
    {
      "agentId": "client2",
      "channel": "whatsapp",
      "peer": "+8613900139001",
      "comment": "客户2专属"
    },
    {
      "agentId": "family",
      "channel": "whatsapp",
      "peer": "亲友闲聊群",
      "comment": "家庭群专用"
    },
    {
      "agentId": "main"
    }
  ]
}

场景 3:群聊专用智能体

指定单个群组使用独立人设,闲聊、公告、问答风格区分

json

{
  "bindings": [
    {
      "agentId": "group-assist",
      "channel": "wechat",
      "peer": "技术交流群",
      "comment": "技术群专属助手"
    },
    {
      "agentId": "main"
    }
  ]
}

五、按智能体隔离权限与沙箱

多智能体支持独立安全策略,对外 / 对内、可信 / 不可信场景做权限隔离。

5.1 沙箱隔离配置

沙箱用于隔离高危执行操作,两种模式:

  • off:关闭沙箱,直接在宿主机运行(默认,本地可信环境)
  • docker:Docker 容器沙箱,完全隔离(对外服务、陌生用户推荐开启)

json

{
  "agents": {
    "main": {
      "sandbox": {
        "mode": "off"
      }
    },
    "external": {
      "sandbox": {
        "mode": "docker",
        "image": "openclawai/sandbox:latest"
      }
    }
  }
}

5.2 工具黑白名单

为不同智能体限制可用工具,防止越权操作(执行命令、读写文件、浏览器等)。

json

{
  "agents": {
    "main": {
      "tools": {
        "allow": ["*"],
        "deny": []
      }
    },
    "guest": {
      "tools": {
        "allow": ["web_search", "memory_search", "read"],
        "deny": ["exec", "write", "browser", "file_operate"]
      }
    }
  }
}
  • allow: ["*"]:允许所有工具
  • deny:禁用指定高危工具

权限配置建议

  1. 本地自用智能体:沙箱关闭,全开工具
  2. 对外访客 / 客户智能体:Docker 沙箱 + 严格工具白名单
  3. 自动化任务智能体:仅开放任务必需工具

六、路径与运维速查

6.1 核心路径汇总

表格

路径说明
~/.openclaw/openclaw.json网关主配置(Bindings、智能体权限)
~/.openclaw/workspace/main 主智能体工作区
~/.openclaw/sessions/main 主智能体会话
~/.openclaw/agents/{agentId}/workspace/自定义智能体工作区
~/.openclaw/agents/{agentId}/sessions/自定义智能体会话

6.2 配置生效说明

修改 openclaw.json 路由、权限配置后:

  • 开启热重载:自动生效
  • 未开启热重载:重启网关生效

bash

运行

openclaw gateway restart

七、注意事项

  1. 命名规范:智能体 ID 仅使用小写字母、数字、连字符,不要用中文、空格、特殊符号。
  2. 路由兜底bindings 数组必须保留一条无 channel/peer 的默认规则,避免消息路由失败。
  3. 会话隔离:各智能体对话历史、记忆完全独立,互不互通。
  4. 资源开销:多智能体共享网关进程,CPU / 内存增长极小,可放心多开。
  5. 对外安全:面向外部用户的智能体,务必开启 Docker 沙箱 + 限制高危工具。

八、总结

  1. 多智能体实现单网关多业务隔离,一套部署满足闲聊、工作、客户、群聊等不同场景。
  2. 核心依靠 Bindings 路由规则,遵循「越精细优先级越高」的匹配逻辑。
  3. 每个智能体独立人设、独立会话、独立权限,安全与业务彻底隔离。
  4. 可结合沙箱、工具黑白名单,区分可信 / 不可信访问,提升整体安全性。
  5. 管理命令简单,目录结构清晰,维护成本低。