我的工作过程中一直都没怎么接触过飞书,只是在偶尔参与某些产品内测的时候才会把它重新下载回来,在OpenClaw大火的时候看到人人都用飞书接入玩的飞起,那时也没有让我有接入的动力

上次发了一篇关于Hermes开启多个子Agent的教程,让我的Hermes分为了三个不同分工的Agent,一个负责写作,一个负责出PRD,一个负责编码,如果要想跟着这篇文章一起实现群组里面接入多个子Agent的话还是建议先看完我之前写的这篇文章:

当时看到有大佬将Hermes跟OpenClaw两个Agent扔到了某国外软件的群组里面,互相调用,互相督促,感觉还挺好玩的,于是我想尝试将Hermes的多个子Agent扔到同一个群组里面对话,但是死活不行,只有主Hermes能够回复我消息,子Agent就是不回消息,玩了玩没啥意思,于是就暂时搁置下来。

今天突然想到,既然某国外软件不行,那飞书是不可以,于是我又将飞书 APP 下载了回来

我想很多同学不管在玩OpenClaw还是在玩Hermes时,已经将飞书的接入流程玩的炉火纯青了,根本不用我的这篇教程来学习配置,所以我这篇文章也就当做我的一个记录吧~


接入教程

打开终端,执行命令:

hermes gateway setup

选择 Feishu / Lark 选项:

1776655461943_d

选择第一个扫码登录:

1776655480717_d

注意⚠️:扫码登录只有主Agent可以调起,子Agent不可以

1776655609863_d

扫码登录成功后继续后面的配置:

1776664947671_d

1776664967561_d

以上全部选择推荐配置即可

Home chat ID这里可以先不配置,直接回车,后续在机器人对话中发送 /setHome 就好了 1776655894899_d

按照流程操作完之后,这时候我们在飞牛APP中可以看到机器人了,进入对话随便发个消息,就可以收到配对命令:

1776671921577_d

将该命令粘贴到终端执行就可以了,党看到如图返回表示配对成功,就可以正常对话了:

1776671998528_d


以上为主Agent配置教程,虽然子Agent配置大相径庭,但是有部分细节不同,大家要仔细看以下内容:

现在假设你跟我一样也有了多个子Agent,比如写作助手叫writer,产品助手叫planner,编码助手叫coder,那么我以planner举例

在终端执行命令:

planner gateway setup

使用下面的命令也可以,跟上面的效果一样:

hermes -p planner gateway setup

你可以理解为planner 等于 hermes -p planner

然后跟配主 Agent 一样的步骤,选择 Feishu,在选择扫码跟填写 APP ID 这一步,你不管选哪一个都一样,因为子 Agent 无法调起二维码,最终都会让你手动输入 APP ID(如下图):

1776656200520_d

到这一步,先按下不表,跟我来创建 APP ID:

访问飞牛开发者平台:

https://open.feishu.cn/

登录后点击右上角 「开发者后台」

1776656265016_d

进来后我们可以看到创建飞牛智能体应用的入口,点击 「立即创建」

1776664733552_d

选择头像,输入名称:

1776664822517_d

创建成功后会获得 APP ID与 APP Secret:

1776664864423_d

将App ID跟 App Secret 粘贴到终端后剩下的操作继续按照推荐的来就行了。

创建完毕后我们通过飞书打开planner机器人的对话,随便发个消息,收到配对命令:

1776672897355_d

这里要注意一下,先别执行!!!

由于收到的命令是主Agent的,执行会失败,根据我下方的命令进行修改一下再执行:

你收到的:

hermes pairing approve feishu ZH7CVU7F

你真正执行的:

hermes -p planner pairing approve feishu ZH7CVU7F

相信你按照我的步骤来,到这里肯定已经成功了:

1776673057000_d

其他子Agent继续按照上面的流程创建即可。


然后在飞书创建一个群组(这里不用我教了吧~),然后将机器人们拉进来就可以了

点击群组右上角三个点 -> 设置 -> 群机器人,添加机器人,完成!

1776673215079_d

然后就可以同时跟多个Hermes Agent机器人对话了~

1776673405856_d


其实我想要的还不够,我想要的效果是我只负责跟Hermes主Agent对话,然后由主Agent去通知另外的子Agent去工作,达到真正的团队协作,只是~

无论我怎样让主Agent去@子Agent进行任务的下发,都无法实现:

1776673663484_d

由于飞书的@功能与直接输入@+名字不一样,经过多次尝试最终的效果依旧不尽人意,所以就只能换个思路了

让群组机器人获取群组中的所有消息

首先在开发者平台应用 -「事件与回调」中确保已经开通获取群组中所有消息:

1776668785788_d

不过好像Hermes 的飞书组件是没有这个功能的,就算开通了权限不@机器人的情况下它也没法接收/发送消息,于是,我让Hermes自己改代码:

1776674986584_d

1776675413543_d

config.yaml中增加了如下配置:

feishu:
  require_mention: true
  free_response_channels:
    - oc_xxxx

于是我将 require_mention 改为了 false,开启了魔幻之旅:

1776675567049_d

当我感觉一切美好的时候。。。。

1776675601615_d

1776675621515_d

1776675640111_d

1776675656983_d

彻底乱套了。。。

然后就让主 Agent 接着改代码,并且在配置中增加关键词识别:

feishu:
  require_mention: true
  free_response_channels:
    - oc_xxxx
  channel_required_keywords:
    oc_xxxx:
      - Hermes Planner

然后,越来越扯淡了~

1776676244337_d

告辞,不玩了👋👋

想问问大家对于这种多Agent放在同一个群聊里面是怎么玩的,是我的玩法不对吗?