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

用飞算JavaAI轻松完成高校宿舍管理系统

用飞算JavaAI轻松完成高校宿舍管理系统

今天我们使用飞算来完成高校宿舍管理系统。 一、需求分析与规划 1.1 功能需求与核心模块 高校宿舍管理系统主要服务于宿舍管理员、学生和学校管理部门,实现宿舍资源的数字化管理。系统核心功能包括:用户管理(登录认证、角色权限分配)、宿舍管理(楼栋房间信息、床位分配状态)、学生住宿管理(入住登记、宿舍分配调换、退宿处理)、日常管理(考勤记录、访客登记、违纪管理、卫生检查)、维修管理(故障申报、工单派发、进度跟踪)以及统计报表(入住率、费用统计、数据分析)等功能模块。 系统采用分层架构设计,包含八个核心模块:用户认证授权模块负责JWT令牌管理和权限控制;用户管理模块处理用户CRUD和角色分配;宿舍管理模块管理楼栋房间和床位状态;学生住宿模块处理入住分配和调宿业务;日常管理模块记录考勤访客和违纪信息;维修管理模块处理维修申请和工单流转;统计报表模块提供数据分析和图表展示;系统管理模块负责配置管理和日志监控。 1.2 技术选型 后端采用Spring Boot 2.

By Ne0inhk
【JAVA 进阶】Spring Boot自动配置详解

【JAVA 进阶】Spring Boot自动配置详解

文章目录 * 一、Spring Boot 与自动配置初相识 * 1.1 Spring Boot 简介 * 1.2 自动配置的概念 * 1.3 自动配置的重要性 * 二、Spring Boot 自动配置核心原理 * 2.1 核心注解 @EnableAutoConfiguration * 2.2 AutoConfigurationImportSelector * 2.3 Spring Factories 机制 * 三、自动配置实战演练 * 3.1 创建 Spring Boot 项目 * 3.2 配置文件详解 * 3.3 自定义自动配置 * 四、自动配置高级应用与问题解决 * 4.1

By Ne0inhk
JAVA 动态代理:从原理剖析到实战应用

JAVA 动态代理:从原理剖析到实战应用

JAVA 动态代理:从原理剖析到实战应用 1.1 本章学习目标与重点 💡 掌握动态代理的核心概念与分类,理解动态代理在 Java 开发中的核心价值。 💡 熟练掌握 JDK 动态代理的实现流程与核心 API,能够独立编写 JDK 动态代理代码。 💡 了解 CGLIB 动态代理的实现原理与适用场景,对比 JDK 动态代理与 CGLIB 动态代理的差异。 💡 结合实际业务场景,掌握动态代理在 AOP 编程、权限控制、日志记录等场景中的实战应用。 ⚠️ 本章重点是 JDK 动态代理的核心实现 和 动态代理在 AOP 中的实战应用,这是 Java 高级开发与框架设计的必备技能。 1.2 动态代理的核心概念与价值 1.2.1 什么是动态代理 💡 动态代理 是

By Ne0inhk
【JAVA探索之路】简单聊聊Kafka

【JAVA探索之路】简单聊聊Kafka

目录 一、Kafka核心概念与架构 核心概念解析 集群架构一览 二、Kafka核心特性与工作原理 顺序I/O与零拷贝 生产者可靠性保证 精确一次语义 三、Kafka关键API与生态系统 四、Kafka运维管理 五、Kafka典型应用场景 一、Kafka核心概念与架构 要掌握 Kafka,必须从理解其精心设计的基本模型开始。 核心概念解析 * 消息与批次:Kafka 的基本数据单元称为“记录”,包含键、值和时间戳。为提高效率,多条记录会组合成“批次”进行传输。 * 主题与分区:消息按“主题”进行分类,类似于数据库的表。每个主题可被分割为多个“分区”,这是 Kafka 实现并行处理和横向扩展的基石。消息在分区内按追加顺序存储,并分配一个单调递增的偏移量,从而保证了消息的顺序性。 * 生产与消费:生产者将消息发布到指定主题的特定分区;消费者则以“拉”

By Ne0inhk