Hermes 功能详解 · 第34篇2026/8/9· Easy Understand Hermes Agent
第34篇:会话心跳——长任务不掉线
Hermes 功能详解第34篇:Session Heartbeats。长任务保持连接。
这篇讲的是 Hermes Agent 的 /heartbeat 功能:给当前对话设一个“定时闹钟”,让 AI 在空闲时自动帮你盯着某件事,不用你反复追问。
先打个比方:你让同事“盯着 CI 跑完告诉我”,他如果每 5 分钟发你一条“还没好”,你会疯。但如果他只在状态变化时汇报,平时安静干活,就舒服多了。/heartbeat 就是干这个的。
第1步:设置心跳
在对话里直接输入:
/heartbeat every 10m Check the deployment and report meaningful changes
意思是:每 10 分钟,如果对话空闲,就自动执行一次“检查部署并汇报变化”。间隔最短 60 秒,支持 90s、10m、2h、1d 这种写法。
第2步:查看状态
输入 /heartbeat 或 /heartbeat status,能看到当前心跳的内容、间隔、距下次触发还有多久。
第3步:暂停 / 恢复 / 清除
/heartbeat pause:暂停,但保留设置/heartbeat resume:恢复(注意:不会立刻补发,而是重新计时)/heartbeat clear:彻底删除
/hb 是快捷别名。CLI 和网关平台都能用,Slack 里要写 /hermes heartbeat …。
几个关键行为,务必记住:
- 只在空闲时触发。如果 AI 正在跑任务,心跳会排队等它干完,绝不打断。
- 错过就合并。如果中间忙了 30 分钟,心跳间隔 10 分钟,那只会补发一次,不会连发三条。
- 用户消息优先。你发的话永远排在心跳前面。
- 不污染上下文。心跳就是一条普通用户消息,不改系统提示、不动工具集。
- 状态持久化。存在
SessionDB里,/resume或压缩上下文后依然有效。但进程必须活着才能触发——想跨重启、跨天执行,用 cron 更合适。 - 防瞎忙。心跳消息自带“没变化就简短回复”的指令,不会没事找事。
一个完整例子:
你:/heartbeat every 15m Check whether the CI run for PR #1234 finished; summarize the result when it does
♥ Heartbeat set (every 15m): Check whether the CI run for PR #1234 finished; ...
[15分钟后,你还在同个会话里改代码]
Hermes: [Heartbeat — recurring instruction, fires every 15m]
💻 gh pr checks 1234 (1.2s)
CI is still running (14/37 checks complete). Nothing to report yet.
等 CI 跑完,它自然会汇报结果。不想盯了,/heartbeat clear 关掉就行。
小结:/heartbeat 适合“在这段对话里持续关注某件事”,而 hermes cron 适合“独立定时任务”。记住:要上下文,用心跳;要纯跑批,用 cron。
下篇预告:第35篇——「会话压缩:长对话不迷路」。当聊天记录太长时,Hermes 怎么帮你“划重点”继续聊?
📖 官方文档
本文根据 Hermes Agent 官方文档编写,原文见:官方文档 › user-guide/session-heartbeats