
简介
大概去年年末看到 Hermes Agent 这个项目,试了下。用了大半年,现在离不开了。今天聊聊我的用法。
Hermes 是什么,我是怎么装的
简单说,Hermes 是一个跑在本地的 AI 助手 CLI。你可以通过 Telegram 跟它聊天,它背后调大模型,然后直接操作你的电脑——读文件、写代码、查服务器、调 API。
和 ChatGPT 最大的区别:它能直接动手。 你说"帮我看看告警",它自己查 Grafana 分析 PromQL,然后把结果发你。不用你复制粘贴报错信息、不用你手动查文档。
安装简单,一条命令搞定:
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
装完直接 hermes 就可以聊了。如果要在后台长期跑(比如接 Telegram),装成 gateway 服务:
hermes gateway install # 装成后台服务
hermes gateway start # 启动
配置主要分三块:模型、通道、工具。
模型我试过 Claude Sonnet,效果是好但太慢了,查个告警要等 10 秒。后来换到了 deepseek-v4-flash,速度快了不止一倍,token 也不心疼。
通道我接的 Telegram——配置文件里填 bot token 加你的 Telegram ID,它就自动监听你的消息了。也可以不用 Telegram,直接 CLI。
工具这块算是 Hermes 的精髓。它自带几十个内置工具,分在多个工具集(toolsets)里——文件操作、终端命令、Web 搜索、浏览器自动化、代码执行,都直接可用。还能接 MCP 服务器扩展,比如我挂了 Grafana MCP 和一些数据库 MCP,查监控查库直接说就行。内置加 MCP,现在能用几十个工具,具体多少个我也没数过。
我每天用它做什么
1. 查告警
这是我用得最多的。每天到工位先来一句"看看告警",Hermes 直接去 alertmanager 拉活跃告警列表,输出大概是这样的:
高级告警 3 条
- ArgoCD Sync 失败 × 2 (production, staging)
- K8s Pod 不健康 × 1 (project-13-dev)
警告告警 27 条
- 容器内存超 90% × 8
- 主机磁盘快满 × 3
...
然后它分析哪些是之前的老问题,哪些是新冒出来的,排好优先级告诉我。省了每天早上开 Grafana 一个个翻。
2. 回飞书消息
飞书上经常有同事问问题。Hermes 通过本地 lark-cli(飞书官方开源的命令行工具)来操作飞书——它能发消息、搜聊天记录、查通讯录等等。
配置分两步:先初始化应用凭证,再登录授权。
lark-cli config init # 初始化(会生成授权链接,浏览器打开完成)
lark-cli auth login # 登录授权
典型用法就是直接说"帮我回一下XX的消息",它会:
- 去飞书拉最近几条对话
- 看懂对方在问什么
- 如果有现成的知识直接回答,需要确认的会先问我
- 把回复发出去
然后自动扫新消息,有需要的自动处理。技术问题它直接回,拿不准的转给我确认,基本不用我打字了。
不只回私聊——有些监控群我也让它定期做周复盘总结,从飞书群拉历史消息整理报告。
3. 盯行情
我加了一些定时任务,每天早上 6 点 Hermes 自动发一条"宁波晨报"到 Telegram:
- 天气(Open-Meteo)
- 黄金价格(上海金交所报价,¥/g)
- A 股大盘
- 浙江油价
- DeepSeek 账号余额
- Hermes 自身版本
看完这条消息,今天的状态基本就有数了。
4. 写代码和改代码
这是我没想到会那么好用的。遇到 bug 直接把错误丢给它,它翻代码、查逻辑、定位原因然后给修复方案。
印象最深的是有一次排查 SkyWalking OAP 启动失败的问题,它自己查了 Pod 日志、查了配置、查了 ArgoCD 的提交历史,最后定位到是配置文件格式问题,还顺带给出了修复命令。整个过程 5 分钟,我自己搞可能要半小时。
5. 写博客
没错,你现在看的就是它写的。我说"写一篇我用 Hermes 的博客",它去看了我博客的格式和以前文章的排版,然后写了这篇。
之前的 Ghostty 配置、俯卧撑健身记录、JVM 参数调优,也都是它写的初稿。我改润色一下就发了。
6. 管定时任务
目前挂了一堆 cron 在上面跑:
| 任务 | 时间 | 说明 |
|---|---|---|
| 宁波晨报 | 每天 06:00 | 天气+金价+大盘+油价+余额 |
| 飞书每日工作回顾 | 每天 17:45 | 飞书消息→总结→存进记忆 |
| 飞书聊天记录入库 | 每天 23:30 | 当天飞书聊天存进 OpenViking |
| Mac App 更新检查 | 每天 09:00 | 提醒有更新的 Homebrew app |
| Hermes 配置备份 | 每天 17:45 | 自动全量备份 Hermes 配置和状态 |
(飞书那俩的好处放后面"记忆系统"说)
Skills 系统
Hermes 有个 Skills 机制——可以把做过的复杂操作存成一份"技能说明书",下次遇到同类问题,它自动加载技能再执行。
举个例子,我写了一个「Grafana 告警检查」技能,记录了:
- Alertmanager 的 URL
- 告警分组的规则(按 alertname 分组 6 个 receiver)
- 我关心的告警类型(ArgoCD / 容器内存 / 主机 CPU / K8s Pod 健康)
- 分析偏好(区分新旧告警,按严重程度排序)
现在每次说"看看告警",它就加载这个技能,按我习惯的方式查和分析,不用重复描述。
Skills 这东西,知识越攒越厚。遇到新坑修完,顺手写个技能,下次自动就避开了。
记忆系统
Hermes 自带一套内置记忆(MEMORY.md + USER.md),每次对话开始会自动加载。也可以接外置记忆后端来强化,我现在用的是 OpenViking,一个自己部署在内网的记忆服务。
几种记忆方式:
- User Profile(用户画像) — 内置记忆存的一张速查卡:我叫什么、做什么工作、有什么偏好。每次对话自动加载,不用我重复。
- Memory(助手笔记) — 内置记忆存的备忘录:环境配置、工具用法。比如它知道我的 Grafana 地址、我的 wg-easy 架构。
- OpenViking — 外置记忆服务,跑在内网一台机器上。对话过程中它自动抽事实、实体、事件,建索引存起来,也能手动写结论。比内置记忆能装的东西多,我每天的飞书聊天记录也会定时导进去。
- 会话历史搜索 — Hermes 自带的
session_search,可以直接搜过去说过的话。比如我问"那个 JVM 参数的问题后来怎么解决的",它能从历史会话里翻出当时的讨论和结论。SQLite + FTS5,挺快的。
怎么配
内置记忆默认就开着。要换外置后端,跑一次:
hermes memory setup
选好后端就行,OpenViking 的话就是填一下服务地址。之后对话过程中它在后头默默建索引,你也可以主动写结论进去。
用下来,自动积累能覆盖七成场景,剩下三成要主动写:偏好修正、环境细节、做事习惯。花一两周调教完,后面基本不用再说第二遍。
工作回顾存进记忆的好处
前面说的飞书每日工作回顾,自动存进 OpenViking 之后,就是给每天的工作打了个标签。几周下来积累了一串"今天做了什么"的记录。
好处:
- 写周报不用回忆 — 到周五让它拉这几天的回顾汇总,一天干了什么都清楚,不用翻聊天记录。
- 查问题有迹可循 — “上周三那个告警最后怎么处理的”,回顾里大概率记过结论了,
session_search一搜就出来。 - 上下文不断层 — 之前排查半截的问题,第二天它还记得上下文,不用重新描述。
总归就是把运维日常的碎片信息,自动沉淀成可检索的知识库。短期看少敲几个字,长期看每个排查记录都不会丢。
踩过的坑
1. 模型不能只图快。 deepseek-v4-flash 日常够用,但碰到复杂推理(多步代码重构、长链路调用链分析)明显不如 Claude。现在我按场景切——日常查告警回消息用 flash,复杂任务临时切到更强的。没有完美的模型,只有合适的。
2. 脚本化比 agent 稳。 有些定时任务一开始让 agent 现场去搜,不稳定——模型抽风格式不对、API 超时。后来改成写 Python 脚本 + no_agent=True,数据采集走脚本,agent 只负责排版,稳如老狗。
总结
用 Hermes 半年最大的感受:AI 助手好不好用,不取决于模型多强,取决于它跟你的粘合度。 模型再强不能操作你电脑、不能看你数据库、不能替你在飞书上回消息,那就只是一个更聪明的聊天框。
Hermes 对我来说就是个"能动手的 AI"。早上醒来打开 Telegram,晨报已经躺那了。有问题直接说,它能自己搞定大部分。
但也不是万能的。需要强推理的长推理链它还不太行,工具调用多了也容易出岔子。但作为一个日常助手,已经远超我一开始的预期了。
欢迎关注我的博客 www.bboy.app
Have Fun
