OpenClaw多智能体路由实战:飞书多机器人配置指南

文章目录

目前我已经完成了OpenClaw的基本安装,但是在对话框只有一个,机器人也只绑定到主会话,一次只能处理一个消息。很多时候我在聊天窗口,说A任务,然后做了一半,又发了关于B任务的指令。一是每次发完消息,如果OpenClaw还在处理,剩下的消息要么进入队列、要么看不到(实际还在队列)。两个任务切来切去,感觉体验很不好。

要彻底解决这个问题,实现网上演示的那种对各Agent、每个对话机器人对应一个Agent,就需要用到多智能体路由技术。
实现的步骤如下:

  • 在飞书创建一个新的机器人
  • 通过控制台创建新的智能体
  • 按照指引将飞书配置上去
  • 根据需要创建多个Agent和机器人,并对应配置上去(略)

飞书重新安装问题

明明我已经安装好了飞书,系统还是会提示我安装,否则就跳过了添加飞书这步。应该是系统Bug。这次安装的飞书位置在~/.openclaw/extensions/feishu,其实和~/.npm-global/lib/node_modules/openclaw/extensions/feishu/是一样的,安装的方法不同而已。建议把.npm-global的删除。

请添加图片描述

第二次配置的时候,会把第一次飞书Channel给覆盖掉,具体看channels.feishu下面的配置。因为我们要实现每个Agent对应一个机器人,就必须要有多个feishu的机器人配置,而这里只有一个。

请添加图片描述


以下为OpenClaw自己配置的:

请添加图片描述

正确的如下,将多个机器人配置放在了channels.feishu.accounts下面,没办法只能手工改:

 "channels": { "feishu": { "enabled": true, "domain": "feishu", "groupPolicy": "allowlist", "accounts": { "main": { "appId": "cli_1", "appSecret": "appSecret1", "botName": "主助手", "groupAllowFrom": [ "ou_id1" ] }, "feishu-work": { "appId": "cli_2", "appSecret": "appSecret2", "botName": "工作助手", "groupAllowFrom": [ "ou_id2" ] }, }, "dmPolicy": "pairing" } }, "bindings": [ { "agentId": "main", "match": { "channel": "feishu", "accountId": "main" } }, { "agentId": "work", "match": { "channel": "feishu", "accountId": "feishu-work" #要与前面配置对应 } } ], 

注意事项:

  • 名称一定要对应,agentId对应,accountId也要对应
  • ou_id可以是相同(同一个人名下建立多个机器人),也可以不同(我就是这么干的)
请添加图片描述

效果就是这样。

请添加图片描述

回到Gateway的聊天窗口,就可以切换聊天的对象,我这有2个。(应该也有相关的配置的,找到之后更新)

请添加图片描述

批量增加机器人

一次性申请了6个机器人,确定好Agent的名称,让OpenClaw帮我完成配置。

  • BandBusiness,业务Agent
  • BandProjectMgr,项目经理Agent
  • BandProductMgr,产品经理Agent
  • BandSysDesign,系统设计Agent
  • BandCoder,系统开发Agent,严格来说,还可以继续拆分为前端、后端、安卓、iOS、鸿蒙等

BandTester,系统测试Agent
检查了一下,配置是对的,Agent的职责还做了扩展。重启openclaw gateway restart没问题。接下来需要给每个机器人添加事件,添加配对。

请添加图片描述


请添加图片描述

提示应用未建立长链接。原因是手工修改openclaw.json增加飞书渠道,并没有通过openclaw channels add增加。
发现在~/.openclaw/feishu/dedup少了些内容,但这并没有什么影响。
实测的总结是:必须在控制台完成对飞书机器人添加,才能起作用。而OpenClaw生成的openclaw.json还是对的,能让我的新机器人与Agent对应上。加上之后,还需要调整一下openclaw.json,删除错误的配置。
于是放心把其他的机器人都通过控制台添加上去,任务完美完成。

接下来我就可以创建一批智能体和机器人,并且让他们协同起来了。

缺点

飞书创建机器人的过程比较复杂,流程繁琐。好在我操作一遍之后,就可以按照之前的路径一直这样做下去。

多个飞书机器人名称包含大小写的问题

多个飞书账号时,名称中如果包含大小写,会遇到无法找到的问题。原因时飞书在处理的时候都改成了小写。为了避免类似问题,我将所有飞书的accountId改为小写。

多个Agent名称包含大小写的问题

当多个Agent相互调用的时候,我发现第一个Agent调用第二个Agent失败,仔细看聊天记录,发现OpenClaw把Agent的id全改为了小写。同样,为了规避此类问题,建议所有的Agent名称都时小写。
还可以在Agent的workspace名称发现一些端倪。
比如我的Agent名称为BandBusiness,系统自动分配的workspace名称为~/.openclaw/bandbusiness,全改为小写了。

关键词:OpenClaw 多智能体路由,飞书多机器人配置,OpenClaw bindings 绑定

Read more

【每日一技】:GitHub 精确查询

【每日一技】:GitHub 精确查询

🔍GitHub 精确查询 ❝ 想在 GitHub 上快速、精准找到优质项目? 其实,你只需要掌握几条「高级搜索语法」,代码、教程、实战项目统统一网打尽。❞ 💡 01. 为什么要用 GitHub 精确查询? 在 GitHub 上随便搜索“spring boot”“微服务”,得到的结果往往数量庞大且质量参差不齐。 而 GitHub 内置的高级搜索语法,可以帮助你: * 精准锁定特定语言的项目 * 查找描述中包含关键词的仓库 * 筛选高 Star / 高 Fork 的高质量项目 * 限定更新时间、最近活跃度等指标 * 在 README、名字、描述中进行定向搜索 学会后,你能比 95% 的用户更快找到真正有价值的代码资源。 🔎 02. 最常用的 GitHub 精准搜索语法 以下示例全部经过检查和整理,每条都可直接复制使用。

By Ne0inhk

嵌入式开发中的 Git CI/CD

嵌入式开发中的 Git CI/CD 一、CI/CD 概述 1.1 什么是 CI/CD? 持续集成 (Continuous Integration, CI) * 开发人员频繁地将代码集成到主分支 * 每次集成都通过自动化构建和测试来验证 * 及早发现集成错误,降低修复成本 持续交付/部署 (Continuous Delivery/Deployment, CD) * 确保代码随时处于可发布状态 * 自动化部署到测试/生产环境 * 快速、可靠地交付软件更新 1.2 嵌入式开发中的特殊挑战 * 硬件依赖: 需要特定的开发板或模拟器 * 交叉编译: 目标平台与开发平台不同 * 资源限制: 内存、存储空间有限 * 实时性要求: 严格的时序要求 * 安全性: 代码质量直接影响系统稳定性 二、GitHub Actions Workflow

By Ne0inhk

手把手github多模态大模型项目复现流程(小白可用)

写在前面:大家复现项目时可以把readme 丢给GPT 先了解整体需要做的流程框架,在复现项目之前先仔细阅读readme、分析项目框架,以下是我复现项目的相关流程以及遇到的问题 1. autodl租用 这里建议直接在autodl上租一个GPU进行环境配置  进行学生认证 刚开始使用无卡启动 先搭好环境后再直接开机 Autodl使用教程:AutoDL使用教程:1)创建实例 2)配置环境+上传数据 3)PyCharm2021.3专业版下载安装与远程连接完整步骤 4)实时查看tensorboard曲线情况 这里,我选择基础镜像--miniconda 3.10版本 pycharm镜像是官方已经把 PyTorch、CUDA、cuDNN 等常用深度学习工具都安装并配置好了,版本也是互相匹配的;复现论文代码时候我们一般选择miniconda,里面只有一个最小化的 Conda 环境管理器,其他所有东西都需要自己从头安装。 配置好之后和pycharm/vscode进行远程连接,教程见PyCharm专业版连接AutoDl详细教程(手把手教程!!) 以及一些操作小知识(重点),和再开机连接教程!

By Ne0inhk

STM32CubeMX、MDK(Keil MDK)、git、vscode等工具中统一编码设置(UTF-8),确保中文支持,避免乱码问题

STM32CubeMX、MDK(Keil MDK)、git、vscode等工具中统一编码设置(UTF-8),确保中文支持,避免乱码问题 * STM32CubeMX、MDK(Keil MDK)、git、vscode等工具中统一编码设置(UTF-8),确保中文支持,避免乱码问题 * 一、STM32CubeMX 编码设置 * 二、Keil MDK 编码设置 * 三、Git 编码设置 * 四、VS Code设置UTF-8编码 * 五、统一工作流建议 * MDK编码格式为UTF-8,stm32的printf中文输出到串口调试软件,中文显示乱码 * SecureCRT: * Xshell: * Putty: * MobaXterm: * 串口调试助手(如SSCOM、AccessPort等): * 如果串口调试软件不支持UTF-8编码: STM32CubeMX、MDK(Keil MDK)、git、vscode等工具中统一编码设置(

By Ne0inhk