← 返回首页

如何在飞书群中调用多个 Agent

详解 OpenClaw 多 Agent 配置方案,实现群聊路由绑定和智能体间协作调用

2026年3月19日
OpenClaw飞书多 Agent配置教程高级用法

如何在飞书群中调用多个 Agent

💡 本文适合人群:已经部署 OpenClaw 并接入飞书,需要在一个工作区管理多个 Agent,实现不同场景下调用不同智能体的开发者。

📋 前言

在实际工作中,我们经常需要不同的 AI 助手处理不同类型的任务:

  • 🛠️ 技术助手 - 解答编程问题、代码审查
  • ✍️ 文案助手 - 撰写文档、润色文章
  • 📊 数据助手 - 数据分析、报表生成
  • 💬 客服助手 - 回答常见问题、用户支持

如何在飞书群中灵活调用这些不同的 Agent?本文将详细介绍两种主流方案。


🎯 方案对比与选择

方案实现方式适用场景复杂度
群聊路由绑定不同飞书群绑定不同 Agent角色职责明确、团队分工清晰⭐ 低
智能体间协作调用同一群内通过指令动态调用需要灵活切换、任务拆解协作⭐⭐ 中

📌 方案一:群聊路由绑定(推荐)

这是最常见、最稳定的方式:为每个角色创建独立的飞书群,每个群绑定一个专属 Agent

第一步:创建多个 Agent

为不同职责创建独立的 Agent 工作区:

# 创建技术助手
openclaw agents add tech-assistant --workspace ~/.openclaw/workspace-tech

# 创建文案助手
openclaw agents add writer-assistant --workspace ~/.openclaw/workspace-writer

# 创建数据助手
openclaw agents add data-assistant --workspace ~/.openclaw/workspace-data

说明

  • 每个 Agent 有独立的工作区和配置文件
  • 可以为每个 Agent 配置不同的模型、工具权限
  • 工作区之间相互隔离,互不影响

第二步:获取飞书群 ID

在需要绑定的飞书群里@你的机器人发送任意消息,然后查看 OpenClaw 日志:

tail -f ~/.openclaw/logs/gateway.log | grep "peer"

你会看到类似输出:

peer: { kind: 'group', id: 'oc_xxxxxxxxxx' }

记录下这个 id,格式为 oc_xxxxxxxxxx

或者,在飞书群中点击右上角菜单 → 群设置,也可以查看群 ID。

第三步:配置路由绑定

修改 ~/.openclaw/openclaw.json,在 bindings 数组中添加规则:

{
  "bindings": [
    {
      "agentId": "tech-assistant",
      "match": {
        "channel": "feishu",
        "peer": {
          "kind": "group",
          "id": "oc_tech_group_id"
        }
      }
    },
    {
      "agentId": "writer-assistant",
      "match": {
        "channel": "feishu",
        "peer": {
          "kind": "group",
          "id": "oc_writer_group_id"
        }
      }
    },
    {
      "agentId": "data-assistant",
      "match": {
        "channel": "feishu",
        "peer": {
          "kind": "group",
          "id": "oc_data_group_id"
        }
      }
    }
  ]
}

⚠️ 关键原则

  • 必须使用 peer.kind + peer.id 的标准格式
  • kind 可以是 group(群聊)或 user(私聊)
  • 不可随意添加未知字段,否则配置会失效

第四步:重启网关

openclaw gateway restart

验证配置

  1. 查看路由绑定
    openclaw config get bindings
    
  2. 在飞书群中测试
    • 技术群@机器人:"如何优化这段 Python 代码?"
    • 文案群@机器人:"帮我润色这篇文章"
    • 数据群@机器人:"分析这个销售数据"
  3. 查看日志确认
    tail -f ~/.openclaw/logs/gateway.log
    

🔄 方案二:智能体间协作调用(高级玩法)

如果你希望在同一个群内动态切换不同角色,可以配置 Agent 之间的相互调用。

第一步:创建专业 Agent

# 创建代码专家
openclaw agents add code-expert --workspace ~/.openclaw/workspace-code

# 创建数据专家
openclaw agents add data-expert --workspace ~/.openclaw/workspace-data

# 创建主 Agent(协调者)
openclaw agents add main-assistant --workspace ~/.openclaw/workspace-main

第二步:配置主 Agent 的调用权限

~/.openclaw/openclaw.json 中为主 Agent 启用 sessions_send 工具:

{
  "agents": {
    "list": [
      {
        "id": "main",
        "workspace": "~/.openclaw/workspace-main",
        "tools": {
          "profile": "messaging"
        }
      },
      {
        "id": "code-expert",
        "workspace": "~/.openclaw/workspace-code",
        "tools": {
          "profile": "coding"
        }
      },
      {
        "id": "data-expert",
        "workspace": "~/.openclaw/workspace-data",
        "tools": {
          "profile": "analysis"
        }
      }
    ]
  }
}

工具权限说明

  • messaging - 包含 sessions_send 等通信工具
  • coding - 包含代码执行、文件读写等工具
  • analysis - 包含数据分析、图表生成等工具

第三步:在对话中触发调用

在飞书群里@主 Agent,用自然语言指令让它调用其他 Agent:

示例 1:调用代码专家

@main 我需要写一个 Python 爬虫,让 code-expert 来写,完成后直接发给我。

示例 2:调用数据专家

@main 分析上季度的销售数据,让 data-expert 生成报告。

工作流程

  1. 主 Agent 收到用户请求
  2. 内部调用 sessions_send 工具,将任务转发给专业 Agent
  3. 专业 Agent 处理任务并返回结果
  4. 主 Agent 将结果返回给用户

整个过程对用户透明,用户只需要和主 Agent 对话即可。


📝 飞书插件的高级配置

如果你需要更精细的控制,飞书官方插件支持以下高级特性。

多账号支持

为不同的飞书账号配置独立的应用凭证:

{
  "channels": {
    "feishu": {
      "enabled": true,
      "domain": "feishu",
      "accounts": {
        "main": {
          "appId": "cli_main_xxx",
          "appSecret": "secret1"
        },
        "support": {
          "appId": "cli_support_xxx",
          "appSecretFile": "~/.secrets/support.txt"
        }
      }
    }
  }
}

适用场景

  • 企业多部门独立使用
  • 个人账号和工作账号分离
  • 不同业务线独立运营

群组权限控制

为不同群组设置不同的工具权限:

{
  "channels": {
    "feishu": {
      "groups": {
        "oc_xxx": {
          "requireMention": true,
          "toolsBySender": {
            "张三": {
              "deny": ["shell", "exec"]
            },
            "李四": {
              "allow": ["web_search", "web_fetch"]
            },
            "*": {
              "allow": ["web_search"]
            }
          }
        }
      }
    }
  }
}

配置说明

  • requireMention - 是否需要@机器人才响应
  • toolsBySender - 按用户设置工具权限
    • deny - 禁止使用的工具
    • allow - 允许使用的工具
    • * - 默认规则(适用于其他所有用户)

智能回复模式

配置自动回复规则,减少不必要的响应:

{
  "channels": {
    "feishu": {
      "autoReply": {
        "enabled": true,
        "minMessages": 5,
        "debounceMs": 3000
      }
    }
  }
}

配置说明

  • enabled - 是否启用自动回复
  • minMessages - 群消息达到多少条后才响应
  • debounceMs - 响应延迟(毫秒),避免频繁回复

🎯 配置验证

配置完成后,可以用以下命令检查状态:

查看所有 Agent

openclaw agents list

输出示例

✅ tech-assistant (~/.openclaw/workspace-tech)
✅ writer-assistant (~/.openclaw/workspace-writer)
✅ data-assistant (~/.openclaw/workspace-data)

查看飞书渠道状态

openclaw config get channels.feishu

查看路由绑定

openclaw config get bindings

测试消息路由

在飞书群里@对应的机器人测试,观察日志确认消息是否正确路由到指定 Agent:

tail -f ~/.openclaw/logs/gateway.log | grep "agent"

💡 选型建议

你的场景推荐方案理由
技术群、产品群、闲聊群各自独立群聊路由绑定(方案一)配置简单、职责清晰、易于管理
同一群内需要处理不同类型任务智能体间调用(方案二)灵活切换、用户无需切换群聊
企业级多部门使用多账号 + 路由绑定账号隔离、权限独立、安全可控
需要精细权限控制群组 toolsBySender 配置按用户设置权限、细粒度控制

🔧 常见问题

问题 1:配置后不生效

可能原因

  • 配置文件语法错误
  • 网关未重启
  • 群 ID 填写错误

解决方法

# 检查配置文件语法
cat ~/.openclaw/openclaw.json | python -m json.tool

# 重启网关
openclaw gateway restart

# 查看日志确认
openclaw gateway logs

问题 2:Agent 无法相互调用

可能原因

  • 工具权限未配置
  • sessions_send 工具未启用

解决方法

{
  "agents": {
    "list": [
      {
        "id": "main",
        "tools": {
          "profile": "messaging"
        }
      }
    ]
  }
}

问题 3:群消息无响应

可能原因

  • groupPolicy 配置为 allowlist
  • 群 ID 不在白名单中

解决方法

# 临时改为开放模式
openclaw config set channels.feishu.groupPolicy open

# 或添加群 ID 到白名单
openclaw config set channels.feishu.groupAllowFrom '["oc_xxx"]'

📚 相关资源


🎯 总结

通过本文,你学习了两种在飞书群中调用多个 Agent 的方案:

群聊路由绑定 - 简单稳定,适合职责明确的场景
智能体间协作调用 - 灵活强大,适合复杂协作场景
高级配置 - 多账号、权限控制、智能回复

选择建议

  • 初学者从方案一开始,配置简单易懂
  • 需要灵活协作用方案二,实现智能体间调用
  • 企业级使用结合两种方案,实现最佳效果

如果需要具体的配置文件示例或遇到报错,欢迎在评论区留言或联系 OpenClaw 社区获取帮助!


祝你使用愉快! 🎉