摘要:
最近openClaw很火。看了一些文章想自己写一个最基本的通过飞书对话访问的agent。 想法很简单,就是通过飞书发送消息到agent。agent返回消息到飞书。 主要思路就是通过飞书机器人功能得到飞书消息,通过机器人反馈消息
知识储备:
会配置飞书机器人,并且通过配置回调事件可以接收机器人消息。具体过程可以查看飞书文档
会使用阿里的spring ai搭建agent工程。spring ai也可以。
以上两个都可以查看官方文档学习。
前置准备:
有飞书账号
创建企业自建应用:进入应用有appId和密钥
应用里面加入机器人。注意是应用机器人。
应用机器人加入到飞书群里(在飞书客户端创建群,然后【设置】里面【群机器人】创建的应用机器人加入)
开通权限:飞书应用里面的权限管理开通。可以开通所有权限,然后发布应用
配置事件与回调:事件配置选择长链接方式。添加事件。添加所有事件。然后发布应用
发送消息需要chat_id.飞书客户端找到群配置的最下面是群id
代码说明:
由于仅仅是一个实验项目,没有规范的配置,都是在代码里面写死。没有规范的工程目录。 代码总量就几百行。主要是帮助大家了解如何通信、如何访问大模型、如何增加skills等能力。 skills是通过spring ai提供的。在官方文档有详细说明。
localAgent
一个接入飞书对话可以操作远程或者本地PC的agent
代码结构:
config/
AgentConfig: 配置模型的agent
FeiShuConfig: 配置接收飞书消息的长链接
feishu/
SendMessage: 用来给飞书发送消息的客户端
tools/
ControlPCTool:一个ssh链接的agentTool
resource/
skills是skill包。openClaw的skill都可以放在下面来使用
配置项:
application 里面配置千问的模型apikey
AgentConfig 里面配置千问的模型apikey
FeiShuConfig 配置appId, appSecret
SendMessage 配置appId, appSecret
ControlPCTool 配置ssh密码
飞书官方说明文档:open.feishu.cn/document/co…
飞书开发平台:open.feishu.cn/app?lang=zh…
阿里云百炼平台 bailian.console.aliyun.com/cn-beijing/… 创建apiKey
代码地址: gitee.com/yeohx/local…