Hermes Agent 是什么?它能做什么,以及如何部署到飞书
摘要
Hermes Agent 是 Nous Research 开源的自主型 AI Agent。它不只是一个聊天机器人,也不只是一个代码补全工具,而是将大模型、工具调用、记忆、Skills、定时任务和多平台消息网关组合在一起的 Agent 运行环境。
本文先解释 Hermes Agent 的定位和核心组成,再介绍它如何通过飞书机器人接收消息、调用工具并返回结果,最后给出一套基于 WebSocket 的飞书接入思路。
说明:本文讨论的是 Nous Research 的 Hermes Agent,不是同名的 Hermes 模型或其他项目。示例配置和命令应以当前官方文档为准。
一、Hermes Agent 是什么
官方文档将 Hermes Agent 定义为具备自我改进能力的 AI Agent。它可以使用工具、保留跨会话记忆、创建和复用 Skills、运行定时任务,并通过多种聊天平台与用户交互。[2]
从工程角度看,可以把 Hermes 理解为:
大模型推理能力 + 工具执行能力 + 记忆系统 + Skills 工作流 + 消息网关 + 任务调度器。
普通聊天机器人通常只完成“用户提问—模型回答”这条链路,而 Hermes 的典型流程是:
- 接收用户目标;
- 分析任务并制定步骤;
- 选择合适的工具;
- 在本地或远程环境执行操作;
- 读取执行结果;
- 必要时继续调用工具;
- 汇总结果并回复用户;
- 将有价值的经验保存到记忆或 Skills 中。
因此,Hermes 更适合处理研究、自动化、文件处理、项目协作和周期性任务,而不是只回答一次性问题。
二、Hermes Agent 可以做什么
1. 对话式任务处理
用户可以通过命令行或聊天平台向 Hermes 描述目标,例如:
- 整理一批本地资料;
- 分析一个项目目录;
- 生成日报或周报;
- 查询资料并输出摘要;
- 检查代码和配置文件;
- 根据模板生成文档。
2. 调用工具完成实际操作
Hermes 支持工具和 Toolsets,可以扩展网页搜索、浏览器操作、文件读写、终端命令、代码执行以及外部服务调用等能力。官方文档还提供 MCP 集成,用于连接更多外部工具。[2]
需要注意:模型只能做出决策,真正的文件修改、命令执行和网络访问都依赖工具及其运行环境。因此,工具权限比单纯的模型参数更值得关注。
3. 跨会话记忆
Hermes 可以保存用户偏好、项目背景、历史经验和任务总结。这样用户下次继续工作时,不必重复提供所有上下文。
记忆系统并不等于“模型永久记住一切”。实际效果取决于记忆配置、保存策略、上下文检索和权限隔离。生产环境中还应避免把密码、Token 和其他敏感信息直接写入长期记忆。
4. Skills 工作流
Skills 可以看作可复用的任务说明和操作流程。例如,可以为 Hermes 配置:
- CSDN 技术博客写作 Skill;
- PDF 分析 Skill;
- GitHub Issue 处理 Skill;
- 每日资讯整理 Skill;
- 数据清洗和报告生成 Skill。
相比每次重新描述要求,Skills 更适合固化稳定流程。
5. 定时任务
Hermes 内置 Cron 能力,可以定期运行任务并将结果发送到指定平台。[2]
例如:
- 每天上午发送行业资讯摘要;
- 每周一生成项目进度报告;
- 每晚检查指定网页是否更新;
- 定期检查 GitHub 仓库并推送异常。
6. 多平台工作入口
Hermes 支持从命令行和多个消息平台使用。飞书接入后,用户可以直接在私聊或群聊中向 Agent 发起任务,并接收文本、图片、音频和文件等结果。[1]
三、Hermes Agent 的核心架构
组件说明
| 组件 | 主要职责 |
|---|---|
| Agent Runtime | 管理模型调用、任务循环和工具调用 |
| Model Provider | 提供大模型推理能力 |
| Tools | 执行搜索、文件、终端和外部服务操作 |
| Memory | 保存和检索跨会话信息 |
| Skills | 固化可复用的任务流程 |
| Terminal Backend | 决定任务在哪个环境执行 |
| Messaging Gateway | 连接飞书等聊天平台 |
| Cron Scheduler | 运行定时任务并发送结果 |
四、Hermes 接入飞书的工作流程
1. 私聊流程
文字流程如下:
- 用户在飞书私聊机器人;
- 飞书将消息事件发送给 Hermes;
- Hermes 检查用户身份和访问权限;
- Hermes 读取会话、记忆和 Skills;
- 大模型判断是否需要调用工具;
- Hermes 执行工具并获取结果;
- 模型根据结果生成最终回复;
- Hermes 通过飞书 API 将结果发回用户。
2. 群聊流程
官方飞书适配器的默认行为是:私聊中响应用户消息,群聊中通常只有机器人被 @ 时才响应;共享群聊还可以配置按用户隔离会话。[1]
群聊处理流程是:
- 用户在群聊中 @Hermes;
- 飞书发送群消息事件;
- Hermes 检查是否被 @;
- Hermes 检查发送者是否有权限;
- Hermes 执行任务并回复群聊。
五、部署前的准备工作
1. 运行环境
Hermes 可以运行在本地电脑、私有服务器或其他远程执行环境中。建议初次体验使用一台可以稳定运行 Python 环境的电脑或 Linux 服务器。
需要准备:
- 可运行 Hermes 的操作系统;
- Python 和依赖管理环境;
- 稳定的网络连接;
- 大模型服务的 API Key 或 Nous Portal 账号;
- 用于保存配置、记忆和日志的磁盘空间。
2. 飞书应用信息
需要在飞书开放平台创建企业自建应用,并准备:
- App ID;
- App Secret;
- 应用机器人能力;
- 消息接收权限;
- 消息事件订阅;
- 应用版本发布权限。
3. 飞书权限
官方接入文档列出的基础权限包括:
im:message:接收和读取消息;im:message:send_as_bot:以机器人身份发送消息;im:resource:访问图片、文件和音频资源;im:chat:访问群聊元数据;im:chat:readonly:读取群聊和成员信息。[1]
如果只做最小化文本对话,可以先配置基础权限,再根据图片、文件、文档或会议等功能逐步增加权限。
六、安装 Hermes Agent
官方文档提供了 Linux、macOS、WSL2、Android Termux 和 Windows 等安装路径。[2]
Linux、macOS 或 WSL2 可以参考:
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
Windows 原生 PowerShell 可以参考:
iex (irm https://hermes-agent.nousresearch.com/install.ps1)
示例未运行验证,请以官方安装文档为准。
安装后,先完成模型 Provider 配置,再进行基础对话测试。不要一开始就同时配置飞书、定时任务、MCP 和远程执行环境,否则出现问题时不容易判断故障位置。
七、创建飞书机器人应用
第一步:进入飞书开放平台
打开飞书开放平台,创建一个企业自建应用。
官方入口:
第二步:开启机器人能力
在应用能力设置中开启机器人能力,并记录应用的 App ID 和 App Secret。
App Secret 属于敏感凭证,不应提交到 Git 仓库,也不应直接写进公开博客或截图中。
第三步:配置权限
在权限管理中添加消息相关权限。最小文本对话可先配置:
im:message
im:message:send_as_bot
im:chat
im:chat:readonly
如果需要接收和发送图片、文件或音频,还需要根据官方文档配置资源相关权限。
第四步:订阅消息事件
在事件与回调设置中订阅:
im.message.receive_v1
使用 WebSocket 模式时,选择飞书开放平台提供的长连接方式;使用 Webhook 模式时,则需要配置可被飞书访问的 HTTP 地址。
第五步:发布应用
权限和事件配置完成后,需要发布一个新的应用版本。否则,新增权限和事件可能不会真正生效。[1]
八、使用 WebSocket 接入飞书
为什么推荐 WebSocket
WebSocket 模式的主要特点是:
- Hermes 主动连接飞书;
- 不需要准备公网域名;
- 不需要额外配置反向代理;
- 适合本地电脑和私有服务器;
- SDK 负责长连接和重连。
Webhook 模式适合已经拥有公网 HTTP 服务的场景,但需要额外处理:
- 公网地址;
- HTTPS;
- URL 验证;
- 加密 Key;
- Verification Token;
- 请求签名校验。
配置环境变量
在 Hermes 配置文件或环境变量中设置:
FEISHU_APP_ID=cli_xxx
FEISHU_APP_SECRET=secret_xxx
FEISHU_DOMAIN=feishu
FEISHU_CONNECTION_MODE=websocket
# 生产环境建议配置
FEISHU_ALLOWED_USERS=ou_xxx,ou_yyy
FEISHU_HOME_CHANNEL=oc_xxx
其中:
FEISHU_DOMAIN=feishu表示中国大陆飞书;FEISHU_DOMAIN=lark表示国际版 Lark;FEISHU_ALLOWED_USERS用于限制可调用机器人的用户;FEISHU_HOME_CHANNEL用于接收定时任务和通知结果。
启动 Gateway
官方文档给出的核心操作是先完成 Gateway 配置,再启动 Gateway:
hermes gateway setup
hermes gateway
示例未运行验证,请以当前版本的 CLI 帮助和官方文档为准。[1]
启动后,在飞书中私聊机器人,或在群聊中 @机器人进行测试。
九、安全配置建议
1. 设置用户白名单
如果不配置访问控制,能够接触到机器人的用户可能都可以向 Hermes 发起任务。生产环境建议设置:
FEISHU_ALLOWED_USERS=ou_user_1,ou_user_2
不要直接在生产环境使用“允许所有用户”的配置。
2. 群聊必须 @机器人
群聊中建议保持 @限制,避免 Hermes 读取和处理所有群消息,也可以降低误触发风险。
3. 保护 App Secret
不要把以下内容提交到公开仓库:
FEISHU_APP_SECRET;- 大模型 API Key;
- MCP 服务密钥;
- SSH 私钥;
- 数据库密码。
4. 限制终端权限
如果 Hermes 可以执行 Shell 命令,应优先使用:
- 最小权限用户;
- Docker 或其他隔离环境;
- 命令审批机制;
- 独立工作目录;
- 明确的文件访问范围。
5. Webhook 模式启用签名校验
如果使用 Webhook,建议配置 FEISHU_ENCRYPT_KEY 和 FEISHU_VERIFICATION_TOKEN,并按照官方适配器的校验方式保护入站请求。[1]
十、常见问题
问题一:机器人完全不回复
可以依次检查:
- App ID 和 App Secret 是否正确;
- 应用是否已经发布;
im.message.receive_v1是否已订阅;- Hermes Gateway 是否正在运行;
- 网络是否可以连接飞书;
- 当前使用的是飞书还是 Lark 域名配置。
问题二:私聊可以回复,群聊没有反应
重点检查:
- 是否在群聊中 @了机器人;
- 用户是否在
FEISHU_ALLOWED_USERS中; - 机器人是否已经被加入群聊;
- 群聊策略是否被设置为禁用。
问题三:权限配置后仍然报错
飞书权限通常需要发布新版本后才会生效。还应确认当前应用所在租户是否需要管理员审批。
问题四:为什么推荐 WebSocket 而不是 Webhook
因为 WebSocket 不要求公网 HTTP 地址,更适合本地部署和私有服务器。Webhook 更适合已有公网服务、反向代理和安全校验体系的团队。
问题五:Hermes 能否直接替代 IDE Agent
Hermes 更适合跨会话记忆、异步任务、定时任务、基础设施操作和聊天平台协作。深度的编辑器内联编程仍然可以使用 Cursor、Claude Code 或其他 IDE 工具。两类工具可以互补使用。
十一、典型应用场景
1. 飞书个人助理
用户通过私聊让 Hermes 查询资料、整理文件、生成计划或执行重复性任务。
2. 自动日报和周报
通过 Cron 定时收集信息,生成日报、周报并推送到指定飞书群。
3. 项目协作机器人
将项目文档、代码仓库和任务系统接入 Hermes,让团队成员在飞书中查询项目进度。
4. 文档辅助处理
根据权限配置,Hermes 可以参与飞书文档评论、资料读取和内容整理等流程。具体权限和事件需要以当前官方适配器文档为准。[1]
5. 研究和信息整理
让 Hermes 定期搜索资料、提取重点、形成结构化摘要,再发送到飞书。
十二、总结
Hermes Agent 的核心价值不在于“又一个聊天机器人”,而在于它把以下能力组合成了一个可持续运行的 Agent:
- 大模型推理;
- 工具调用;
- 跨会话记忆;
- Skills 工作流;
- 终端执行环境;
- 定时任务;
- 多平台消息接入。
部署到飞书时,可以采用以下最小路径:
- 安装 Hermes;
- 配置一个可用的大模型 Provider;
- 创建飞书企业自建应用;
- 开启机器人和消息权限;
- 订阅消息接收事件;
- 使用 WebSocket 连接模式;
- 配置 App ID 和 App Secret;
- 启动 Gateway;
- 完成私聊和群聊测试;
- 最后增加白名单、Skills、MCP 和定时任务。
对于初学者,建议先完成“飞书私聊问答”这一条最小闭环,再逐步增加文件处理、自动化任务和业务系统集成。
参考资料
[1] Hermes Agent Feishu / Lark Setup,发布日期:未标注,访问日期:2026-08-17。
https://github.com/NousResearch/hermes-agent/blob/main/website/docs/user-guide/messaging/feishu.md
[2] Hermes Agent Documentation,发布日期:未标注,访问日期:2026-08-17。
https://hermes-agent.nousresearch.com/docs
[3] NousResearch / hermes-agent,发布日期:未标注,访问日期:2026-08-17。
https://github.com/NousResearch/hermes-agent
[4] Hermes Agent Feishu Platform Adapter,发布日期:未标注,访问日期:2026-08-17。
https://github.com/NousResearch/hermes-agent/tree/main/plugins/platforms/feishu
[5] 飞书开放平台:机器人概述,发布日期:未标注,访问日期:2026-08-17。
https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/bot-v3/bot-overview
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)