乐于分享
好东西不私藏

Hermes正在用“自进化”颠覆AI Agent生态!这份Hermes实战笔记帮你省下3小时踩坑时间

Hermes正在用“自进化”颠覆AI Agent生态!这份Hermes实战笔记帮你省下3小时踩坑时间
这不是官方文档的翻译,而是我熬夜部署、踩了十几个坑之后,从日志里扒出来的血泪笔记。如果你纠结“有了OpenClaw为什么还要有Hermes”,这篇文章就是答案。

数据来源说明:本文所有GitHub数据查询于2026年4月10日;安全数据参考Snyk《Toxic Skills》报告(2026-02-05)及CVE官方数据库;其他安全评估来自公开安全机构报告。

先看结论:Hermesvs OpenClaw
特性
Hermes
OpenClaw
自创建技能
技能改进
消息平台
15+
50+
GitHub Stars
44k
346k
安全记录
存在1-2个低严重性CVE
公开CVE较多
学习曲线
中等
简单

选择建议

  • 需要自改进能力→Hermes
  • 注重长期安全性→ 两者各有侧重
一、Hermes到底是什么?

简单说,Hermes是个能自己写代码、能托管在服务器上、能用各种聊天软件控制的AI助手

几个关键点:

  • 开源免费(MIT协议)
  • 能自己学(做完复杂任务自动写技能文档)
  • 不挑模型(支持400+模型,阿里云/智谱/Kimi都能用)
  • 多平台统一(飞书/钉钉/Telegram从一个网关发消息)
  • 真正24小时运行(本地电脑或现有服务器就能跑)

GitHub上有44.1k星,250+贡献者,最新版本v0.8.0(2026-04-08)。

二、有了OpenClaw,为什么还要Hermes?

这是我最开始的疑问,也是最应该先说清楚的事。

结论前置:OpenClaw是“工具箱”,Hermes是“会成长的助手”。

OpenClaw做得最好的地方是“多”和“快”——接入了50+消息平台,生态庞大,装个技能就能干活。但它的问题是:技能需要你手动写,记忆需要你手动配,出了安全问题只能等官方修。

Hermes走了一条截然不同的路:它不追求功能数量,而是追求“越用越聪明”。它的技能是自己生成的,它的记忆是自动沉淀的,它的安全设计更偏向底层防御。

用社区里一个很形象的说法:“OpenClaw做的是初级工作,Hermes做的是高级工作。”

三、架构:多Agent编排 vs 单Agent学习循环

OpenClaw围绕多Agent编排来设计,通过一个中央网关来路由和调度。好处是能同时调度多个Agent干活,坏处是复杂——每个会话都要经过网关、路由、多个Agent的来回调用,出了bug很难定位。

Hermes回归了单Agent架构,运行在一个持久循环中:输入→推理→工具使用→记忆→输出。它真正的区别在于任务结束之后——它会评估这次处理过程是否值得保留,提炼成可重用的skill文档。

用人话说:OpenClaw像包工头,同时管好几个工人,但每个工人干完活就不管了。Hermes像学徒,每次干完活会总结经验,下次干得更快。

四、技能:手写vs自进化

这是两者最核心的区别。

OpenClaw的skill是用户手写的Markdown文件,通过ClawHub分发。问题在于:你得自己写、自己维护,而且安全全靠自觉。根据Snyk安全团队2026年2月发布的《Toxic Skills》报告,ClawHub上1,467个skill存在安全问题,其中76个被确认为恶意,包括凭证窃取、持久后门等。单个恶意skill的最高安装量超过3.5万次。

Hermes的skill是Agent自己生成的。完成一个复杂任务(通常涉及5次以上工具调用)后,Hermes会自动把执行经验提炼成可重用的skill文档,遵循agentskills.io开放标准存储为结构化Markdown。后续遇到类似任务时,Agent会自动调用并优化这些skill。每15个任务自动触发一次反思循环,评估哪些skill有效、哪些需要改进。

用人话说:OpenClaw的skill靠你喂,Hermes的skill自己长。

五、记忆:被动存储vs分层持久化

OpenClaw依赖三个纯文本文件来管理记忆(SOUL.md、MEMORY.md、USER.md),跨会话记忆需要用户手动配置。如果你忘了配或者配错了,它就不记得。

Hermes内建了分层持久化架构:持久笔记层、FTS5全文检索等。它会在每次对话中自动积累你的偏好、工作习惯,用久了比你自己还了解你的代码库。社区里有人评价:“爱马仕无论怎么重开,过多久都能记住,太香了!”

用人话说:OpenClaw的记忆需要你帮它记,Hermes自己会记。

六、安全:各自有坑,思路不同

安全是绕不开的话题。

OpenClaw在2026年初经历了一段安全漏洞高发期,多个远程代码执行漏洞被公开(如CVE-2026-25253等)。2月份曾有超过42,000个OpenClaw实例暴露在公网上,其中大部分没有开启网关认证,导致攻击者可通过WebSocket通道窃取令牌。不过官方已陆续发布补丁,目前版本已修复大部分已知问题。

Hermes在安全设计上更偏向“默认拒绝”,内置了prompt注入扫描、上下文过滤和容器加固(只读根文件系统+能力丢弃)。但它也并非没有漏洞,根据CVE数据库记录,Hermes存在1-2个低严重性CVE(如CVE-2026-22798),主要涉及特定配置下的信息泄露,官方已修复。

用人话说:OpenClaw的安全问题来得猛,修得也快;Hermes从一开始就焊了不少防护,但也不是铜墙铁壁。两者都需要用户自己做好配置和定期更新。

七、那Hermes到底该怎么用?

Hermes支持六种部署方式:本地、Docker、SSH、Daytona、Singularity和Modal,可以跑在自己的电脑上,也可以跑在GPU集群上。

它接入了14个消息平台:Telegram、Discord、Slack、WhatsApp、Signal、飞书、企业微信等,通过一个统一的网关进程就能全部连起来。

模型选择上不锁定任何提供商,支持Nous Portal、OpenRouter(200+模型)、MiniMax、OpenAI等,通过hermes model随时切换。

八、安装过程(Windows +WSL2)

强烈建议:用AI辅助安装(我一开始手动安装的,然后碰到各种坑,后来让opencode安装的)

手动配置的坑:环境变量配错了找不到原因、权限问题折腾半天、配置冲突不知道咋解决。

正确姿势:用OpenCode或其他AI工具,通过对话方式配置。

Code

# 在你的项目目录中打开AI助手opencode

然后直接说:

帮我安装Hermes

AI会:自动检测你的环境、一步步引导安装、遇到问题立即解决、配置完直接测试。

如果坚持手动安装,继续往下看。

环境信息:

  • 操作系统:Windows 11 +WSL2(Ubuntu 24.04)
  • Python: 3.11+(安装程序会自动装)
  • Node.js: v22+(安装程序会自动装)

实际安装步骤:

第1步:安装WSL2

WindowsPowerShell(管理员)执行:

Code

wsl --install -d Ubuntu

安装完成后重启电脑,打开Ubuntu应用设置用户名密码。

第2步:安装Hermes

Ubuntu终端执行:

Code

curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bashsource ~/.bashrc

第3步:验证安装

Code

hermes version# 输出:Hermes Agent v0.8.0 (2026.4.8)

踩坑记录:

1.GitHub连接失败

这是最折腾人的问题。我明明在Windows上已经科学上网,但WSL2里的Ubuntu死活连不上GitHub,curl命令一直超时。查了半天发现WSL2默认不继承Windows的代理设置。尝试了配置代理、换镜像站都不太稳定。最后我干脆手动从GitHub下载了hermes-agent的源码包(.zip),放到Windows本机目录下(比如D:\downloads\hermes-agent.zip),然后用OpenCode让它自动处理:我告诉它“源码包在D盘,帮我解压并继续安装”。OpenCode自己通过WSL2路径映射(/mnt/d/downloads/)找到了文件,完成了解压、复制和后续安装。如果你也遇到网络问题,这个办法最省心。

2. Python版本不对

安装程序会自动装Python 3.11,不用自己管。

3. 权限问题

确保WSL2用户有sudo权限。

九、LLM配置(阿里云百炼Coding Plan)

强烈建议:用AI辅助配置

编辑配置文件容易出错,建议用AI工具:

Code

opencode

然后说:

帮我配置阿里云百炼Coding Plan,我的APIKey是sk-xxxxx

AI会自动:创建正确的配置文件、设置APIKey、测试连接、有问题立即修复。

为什么选阿里云百炼Coding Plan

  • 国内访问快
  • 常用模型基本覆盖,效果已经使用了1个多月还不错,日常绝对够用
  • 按次收费,比较划算(40元/月)

实际配置:

第1步:获取APIKey

访问阿里云百炼平台:https://bailian.console.aliyun.com/cn-beijing?tab=coding-plan#/efm/coding-plan-detail

  • 登录阿里云
  • 进入「Coding Plan」页面
  • 付费购买(目前40元/月)
  • 购买后获取APIKey(以sk-开头)

⚠️ 注意:不是dashscope控制台,是百炼平台的Coding Plan!

第2步:配置Hermes(让opencode给你配,不然又是坑)

编辑~/.hermes/config.yaml

Code

model:  provider: custom  base_url: https://coding.dashscope.aliyuncs.com/v1  default: qwen3.5-plus

第3步:配置APIKey

编辑~/.hermes/.env

Code

DASHSCOPE_API_KEY=sk-your-api-key-here

第4步:测试

Code

hermes chat -q "你好"
十、飞书集成完整流程

强烈建议:用AI辅助配置

飞书配置步骤多,容易漏:权限配置不对、事件订阅没启用、配对认证跳过导致无法使用。

用AI配置:

Code

opencode

然后说:

帮我配置飞书集成,我的App ID是cli_xxx,App Secret是xxx

AI会逐步引导完成所有配置。

10.1飞书后台配置

第1步:创建应用

访问https://open.feishu.cn/app

  • 创建应用→选择“企业自建”
  • 填写应用名称(如:HermesAgent)
  • 在「凭证与基础信息」复制:
  • App ID:cli_xxxxx
  • App Secret:xxxxx

第2步:启用Bot

在「应用能力」中启用Bot能力。

第3步:配置权限

在「权限管理」添加:

  • im:message
    ⭐必需
  • im:resource
    ⭐必需
  • admin:app.info:readonly
    ⭐推荐(自动检测机器人身份)
  • application:application:self_manage
    ⭐推荐

第4步:事件订阅

在「事件订阅」添加:

  • im.message.receive_v1
    ⭐必需

订阅方式选择:

  • 长连接(WebSocket)— 推荐,无需公网IP
  • Webhook
    — 需要公网URL

第5步:发布应用

在「版本与发布」创建版本并发布。

10.2Hermes配置

第1步:编辑环境变量(推荐使用opencode配置,手动配有坑)

编辑~/.hermes/.env

Code

FEISHU_APP_ID=cli_a95d06c6e9f85bd7FEISHU_APP_SECRET=zM4MUb1VH6QQV0O2q6cryhBylThHPNoNFEISHU_CONNECTION_MODE=websocketFEISHU_DOMAIN=feishuFEISHU_ALLOWED_USERS=ou_28a1fd8d1cf62453d379de7cfdb698bcGATEWAY_ALLOW_ALL_USERS=true

第2步:启动网关

Code

hermes gateway

成功日志:

Code

[Feishu] Connected in websocket mode (feishu)✓ feishu connected[Lark] [INFO] connected to wss://msg-frontier.feishu.cn/ws/v2...

第3步:配对认证

飞书机器人会返回配对码:

Code

Hi~ I don't recognize you yet!Here's your pairing code: XX57LN5E

在terminal执行(这个可以自己手动来):

Code

hermes pairing approve feishu XX57LN5E

成功提示:

Code

Approved! User XXX (ou_xxxxx) on feishu can now use the bot~
10.3 测试

在飞书群里:

  • @机器人发送“你好”
  • 观察机器人是否回复
  • 查看网关日志tail -f /tmp/hermes-gateway.log
十一、高级配置
11.1群组访问控制

编辑~/.hermes/config.yaml

Code

"oc_group_chat_id_1":          policy: "allowlist"          allowlist:            - "ou_user_open_id_1"

群组策略说明:

  • open
    — 任何人@都响应
  • allowlist
    — 仅白名单用户
  • admin_only
    — 仅管理员
  • disabled
    — 忽略所有群消息
11.2 WebSocket调优

Code

platforms:  feishu:    extra:      ws_reconnect_interval: 120  # 重连间隔(秒)      ws_ping_interval: 30        # 心跳间隔(秒)
11.3 性能优化

Code

# 文本批处理HERMES_FEISHU_TEXT_BATCH_DELAY_SECONDS=0.6HERMES_FEISHU_TEXT_BATCH_MAX_MESSAGES=8HERMES_FEISHU_TEXT_BATCH_MAX_CHARS=4000# 媒体批处理HERMES_FEISHU_MEDIA_BATCH_DELAY_SECONDS=0.8# 去重缓存HERMES_FEISHU_DEDUP_CACHE_SIZE=2048

十二、故障排查

最佳策略:有问题问AI

遇到问题别自己折腾,直接用AI工具:

Code

opencode

然后粘贴错误信息:

飞书收不到消息,网关日志显示xxx错误

AI会:分析日志、检查配置、给出解决方案、直接修复。

问题1:网关启动失败

Code

# 检查端口是否被占用ps aux | grep hermespkill -f hermes# 重启hermes gateway

问题2:飞书收不到消息

检查项:

  • 应用是否已发布
  • 事件订阅是否启用
  • FEISHUALLOWEDUSERS
    配置是否正确
  • 是否已执行hermes pairing approve

问题3:网关日志报错

查看日志:

Code

tail -f /tmp/hermes-gateway.log

常见错误:

  • lark-oapi not installed
    pip install lark-oapi
  • websockets not installed
    pip install websockets
  • Another gateway is using this app_id
    → 停止重复进程
十三、实际使用场景
13.1 定时任务

配置Cron:

Code

# 每天早上9点发天气hermes cron add "每天早上9点发送天气到飞书"

查看任务:

Code

hermes cron list
13.2 代码开发

直接在飞书@机器人:

Code

@hermes 帮我写个Python排序算法@hermes 检查这个文件的语法错误@hermes 运行tests/目录下的所有测试
13.3 服务器监控

配置SSH后端:

Code

terminal:  backend: ssh  ssh_host: your-server.com  ssh_user: ubuntu  ssh_key: ~/.ssh/id_rsa

然后:

Code

@hermes 查看服务器负载@hermes 检查Docker容器状态@hermes 重启nginx服务
十四、最佳实践
14.1 安全配置
  • 设置用户白名单:

Code

FEISHU_ALLOWED_USERS=ou_xxx,ou_yyy
  • 群组策略

Code

FEISHU_GROUP_POLICY=allowlist  # 生产环境推荐
  • Webhook加密(如果用Webhook模式):

Code

FEISHU_ENCRYPT_KEY=your-encrypt-keyFEISHU_VERIFICATION_TOKEN=your-token
14.2 备份

Code

tar -czf hermes-backup-$(date +%Y%m%d).tar.gz \  --exclude='hermes-agent' \  --exclude='node' \  --exclude='venv' \  ~/.hermes/

14.3 日志管理

Code

# 查看日志hermes logs -f# 清理旧日志find ~/.hermes/logs -name "*.log" -mtime +7 -delete
十五、常用命令速查

CLI命令:

Code

hermes                    # 启动交互式会话hermes gateway            # 启动网关hermes model              # 切换模型hermes tools              # 配置工具hermes cron list          # 查看定时任务hermes update             # 更新版本hermes doctor             # 诊断问题

飞书命令(在聊天中):

Code

/new                      # 新对话/model qwen3.5-plus       # 切换模型/retry                    # 重试/stop                     # 停止当前任务/help                     # 帮助
资源链接
  • 官方文档:https://hermes-agent.nousresearch.com/docs/
  • GitHub:https://github.com/NousResearch/hermes-agent
  • 阿里云百炼Coding Plan控制台:https://bailian.console.aliyun.com/cn-beijing?tab=coding-plan
写在最后

这篇文档基于实际部署经验——不是翻译官方文档,而是我熬了一晚上、踩了十几个坑之后,从日志和报错里扒出来的。所有命令都已验证,所有配置都是实际可用的。

核心建议

  • 用AI辅助配置——别自己手动折腾,有问题问AI第一
  • 优先用WebSocket模式,无需公网IP
  • 飞书权限一定要给admin:app.info:readonly
  • 配对认证是必须的,不要跳过
  • 生产环境一定要设用户白名单
  • 定期备份配置

遇到问题先看日志,90%的问题都能在日志里找到原因。如果日志看不懂,直接问AI。

精选文章回顾