养虾日记[特殊字符]:OpenClaw 多 Agent 与飞书对接实战

养虾日记🦞:OpenClaw 多 Agent 与飞书对接实战

背景

最近在玩 OpenClaw,发现它支持 多Agent 模式------每个 Agent 可以有自己独立的身份、工具和上下文。这意味着我们可以让不同的 Agent 擅长不同的任务。

既然有 多Agent,那怎么和他们各自交互呢?这就需要 对接通讯渠道 ,随时随地给 agent 下任务。这次实验我选择了 飞书 :用两个飞书 Bot 分别绑定两个 openclaw Agent,看看效果如何。

我把 openclaw 部署在 国内阿里云上了,同时使用了国内的大模型。如果对接 telegram,discord 等,就会遇到网络的问题💩,所以 国内龙虾还是对应国内飞书比较好😬


准备工作

环境要求

  • OpenClaw 版本:2026.02.09
  • 两个飞书应用(Bot),自行准备

架构图

ascii 复制代码
┌──────────────┐    ┌─────────────────────┐    ┌──────────────┐
│  🤖 飞书 Bot1 │───▶│  OpenClaw Channel   │───▶│  🤖 Agent 01 │
└──────────────┘    │     (feishu)        │    └──────────────┘
                    │    botX → agent_0X  │
┌──────────────┐    └─────────────────────┘    ┌──────────────┐
│  🤖 飞书 Bot2 │─────────────────────────────▶│  🤖 Agent 02 │
└──────────────┘                                └──────────────┘

Openclaw 创建多 Agent

shell 复制代码
# openclaw terminal
openclaw agents add "agent_01" --workspace "/home/admin/.openclaw/workspace-agent_01"
openclaw agents add "agent_02" --workspace "/home/admin/.openclaw/workspace-agent_02"

💊 每个 Agent 都有独立的 workspace,互不干扰。

飞书 添加 Bot

在 飞书开放平台 创建两个机器人应用( bot1, bot2),获取 App ID 和 App Secret,记录下来,一会儿用上。

Openclaw 绑定 Agent 与飞书账号

添加下面的配置到 ~/.openclaw/openclaw.json 文件的 channels 和 bindings 节点那里。

json 复制代码
"channels": {
  "feishu": {
    "enabled": true,
    "domain": "feishu",
    "groupPolicy": "open",
    "accounts": {
      "bot1": {
        "appId": "YOUR_APP_ID_1",
        "appSecret": "YOUR_APP_SECRET_1",
        "name": "bot1",
        "enabled": true
      },
      "bot2": {
        "appId": "YOUR_APP_ID_2",
        "appSecret": "YOUR_APP_SECRET_2",
        "name": "bot2",
        "enabled": true
      }
    }
  }
},
"bindings": [
  {
    "agentId": "agent_01",
    "match": {
      "channel": "feishu",
      "accountId": "bot1"
    }
  },
  {
    "agentId": "agent_02",
    "match": {
      "channel": "feishu",
      "accountId": "bot2"
    }
  }
]
shell 复制代码
openclaw gateway restart 

作用:

  1. 添加 channels
  2. 绑定 channel 和 agent 的关系

绑定规则很简单:feishu 渠道的消息,如果来自 bot1,就交给 agent_01 处理;来自 bot2,就交给 agent_02 处理。

⚠️⚠️ 这是最关键的一步。注意 channels.feishu.accounts 是一个 object,不是 array。 最最关键的位置。在这里踩了很久才出来。


飞书 配置 Bot 权限

回到飞书开放平台,添加权限管理

json 复制代码
{
  "scopes": {
    "tenant": [
      "cardkit:card:write",
      "contact:contact.base:readonly",
      "im:message",
      "im:message.group_at_msg:readonly",
      "im:message.p2p_msg:readonly",
      "im:message:send_as_bot",
      "im:resource"
    ],
    "user": []
  }
}

添加事件和回调

添加事件订阅方式 长链接 和 im.message.receive_v1 事件

⚠️⚠️ 点击 长链接 ,必须等 openclaw 的 feishu channel 配置好后,长链接才没有报错。

后面就点击 飞书的发布 Bot 版本。

验证配置

shell 复制代码
[admin@iZ7xvfpn7tqsu7r9k86um7Z .openclaw]$ openclaw channels list
03:50:32 [plugins] feishu_doc: Registered feishu_doc, feishu_app_scopes
03:50:32 [plugins] feishu_wiki: Registered feishu_wiki tool
03:50:32 [plugins] feishu_drive: Registered feishu_drive tool

🦞 OpenClaw 2026.2.9 (unknown) --- Greetings, Professor Falken

Chat channels:
- Feishu bot1 (bot1): configured, enabled
- Feishu bot2 (bot2): configured, enabled

Auth providers (OAuth + API keys):
- alibaba-cloud:default (api_key)

│
◇  
Usage: no provider usage available.

Docs: gateway/configuration
[admin@iZ7xvfpn7tqsu7r9k86um7Z .openclaw]$ openclaw agents list --bindings

🦞 OpenClaw 2026.2.9 (unknown) --- I'm not saying your workflow is chaotic... I'm just bringing a linter and a helmet.

Agents:
- main (default)
  Workspace: ~/.openclaw/workspace
  Agent dir: ~/.openclaw/agents/main/agent
  Model: alibaba-cloud/qwen3-max-2026-01-23
  Routing rules: 0
  Routing: default (no explicit rules)
- agent_01
  Workspace: ~/.openclaw/workspace-agent_01
  Agent dir: ~/.openclaw/agents/agent_01/agent
  Model: alibaba-cloud/qwen3-max-2026-01-23
  Routing rules: 1
  Routing rules:
    - feishu accountId=bot1
- agent_02
  Workspace: ~/.openclaw/workspace-agent_02
  Agent dir: ~/.openclaw/agents/agent_02/agent
  Model: alibaba-cloud/qwen3-max-2026-01-23
  Routing rules: 1
  Routing rules:
    - feishu accountId=bot2

Routing rules map channel/account/peer to an agent. Use --bindings for full rules.
Channel status reflects local config/creds. For live health: openclaw channels status --probe.

正常情况下会看到每个 Agent 都有对应的路由规则,说明绑定成功。

检查验证

从飞书的 bot 点击进去,问问 他是什么 agent,如果回答你是 agent01/agent02,那么就是配置完成了 🎉

排错指南

shell 复制代码
# 实时日志能帮助定位大多数配置问题。
openclaw logs --follow

# 检查问题的命令
openclaw channels list
openclaw agents list --bindings

总结

❓ 为什么不使用 openclaw 自行去修复和配置呢?

感觉 模型自身 和 网上没有对 飞书 多渠道配置的很多信息,所以他只能盲目的试错,没有办法直接找到问题的根源。

通过以上步骤,我们成功在 OpenClaw 中实现了多 Agent 与飞书 Bot 的对接。每个 Agent 有了独立的身份和上下文,可以分别处理不同的任务。这种方式扩展了 OpenClaw 的能力边界,也为自动化工作流提供了更多可能性,后续只需对不同的 agent 定义好他的角色和责任就可以了。


#AI #Agent #OpenClaw #飞书 #阿里云


欢迎添加公_主_号 ,小兵张咔咔 ,xiaobinzhangkaka,我们沟通讨论。

相关推荐
不像程序员的程序媛8 小时前
检测网络的命令mtr详解
网络
天启HTTP9 小时前
爬虫防封核心原理:IP轮换机制与风控规避逻辑
linux·服务器·网络·爬虫·tcp/ip
运维行者_9 小时前
网络性能监控怎么做?从自动发现到根因分析的4个环节
运维·服务器·网络·人工智能·支持向量机
hz5678911 小时前
涉密视频会议设备配置指南:终端、音视频采集与配套设施选型
服务器·网络·数据库·安全·实时音视频·信息与通信·智能硬件
优橙教育11 小时前
零基础学AI应用开发要多久?3个月能到什么水平
服务器·开发语言·网络·php
AIgorithmGEEK12 小时前
[Linux]从手写报头到内核套路:序列化、反序列化与自定义协议全链路
linux·运维·服务器·网络·序列化·反序列化
物联网软硬件开发-轨物科技15 小时前
【轨物洞见】什么是产品碳足迹(PCF)?ISO 14067 计算方法与应用场景深度解读
大数据·网络·人工智能
姜鱼问生18 小时前
docker exec 排查容器问题:从日志到进程
运维·网络·数据库·docker·容器
qq_5434478218 小时前
DNS解析怎么排查?故障处理与运维实用手册
运维·服务器·网络·php