HermesAgent的会话系统自动保存每次对话为独立会话,支持持久化存储、跨会话恢复、全文搜索和后台并行任务,通过SQLite与日志文件双重备份,并提供命名、管理、压缩等操作,提升开发效率。
打开终端,关闭终端,辛辛苦苦调试半天的对话记录就这么消失了?再或者,面对堆积如山的聊天历史,想找回上周讨论的那个API设计方案,翻来翻去翻到眼花?这种痛,做过开发的基本都懂。Hermes Agent 的会话系统,说白了就是来治这个“健忘症”的。每次对话都会被自动保存成独立的会话,支持持久化存储、跨会话恢复、全文搜索,甚至还能后台并行跑任务。下面这套东西,从原理到实操,一次讲清楚。
什么是会话?
长期稳定更新的攒劲资源: >>>点此立即查看<<<
简单来说,会话就是 Hermes 对一次完整交互的封装。你问的问题、调用的工具、得到的回复、时间戳、模型配置……所有数据都打包在一起。不管是命令行(CLI)、飞书、钉钉,还是后台任务,每一次交互都被标记为一个独立的会话。一旦生成,永不丢失,随时可以捡回来继续聊。
数据是怎么存的?
所有会话数据统一安家在 `~/.hermes/` 目录,走的是“SQLite数据库 + 日志文件”双保险模式:

每个会话都带有一个唯一ID,格式像 `20250820_1430_abc123` 这样,同时你也可以给它取个自定义标题,方便一眼认出这是哪个项目。
恢复历史会话
这个操作是用的最多的。Hermes 给了三种恢复方式,不用从头再来:
恢复后,终端会自动显示会话摘要,把你最近10轮的对话先拉出来预览一下,帮你快速找回上下文。
给会话起个名
聊完第一次对话,Hermes 会用一个轻量模型自动帮你生成一个3到7个字的标题,比如“代码审查”或“数据报表生成”。如果它起的名字不合你心意,也可以手动改:在会话内敲 `/title 2025年8月产品需求评审`,或者直接在命令行里用 `hermes sessions rename 20250820_1430_abc123 "产品需求评审"`。标题最长100个字符,中英文、表情符号都支持,还会自动去重。
会话多了以后,光靠手动翻是不现实的。`hermes sessions` 这条命令系列,能把对话历史管得服服帖帖。
列出会话
`hermes sessions list` 默认列出最近20个。可以加 `--limit 50` 显示更多,或者加 `--source feishu` 只看飞书来源的会话。
导出会话
备份或迁移用 `hermes sessions export all-sessions.jsonl` 导出所有会话。单个会话导出加个ID:`hermes sessions export 20250820_1430_abc123 --output 需求会话.jsonl`。如果想转乘人类易读的格式,加个 `--format md`,直接导出Markdown。
删除会话
`hermes sessions delete 20250820_1430_abc123` 会先让你确认一下,加 `--yes` 就跳过确认直接删。
批量清理
默认情况下,`hermes sessions prune` 会干掉90天前已经结束的会话。如果想更激进一点,可以改成 `hermes sessions prune --older-than 30`,30天前的统统清理。同样可以用 `--yes` 跳过确认。
全文检索
基于FTS5引擎,搜东西非常快。比如 `hermes sessions browse --search "Python 爬虫"`,或者用布尔逻辑搜索 `hermes sessions browse --search "需求文档 OR 评审"`。毫秒级的响应,不用等。
查看统计
`hermes sessions stats` 会输出一个类似这样的面板:总会话、总消息数、不同平台的会话分布、数据库占用的存储空间,一目了然。
掌握了这些日常管理操作,接下来是真正能拉开效率差距的高级玩法——后台并行会话。
后台会话是个好东西。它允许你在主会话不被打断的情况下,并行执行多个耗时任务,比如数据处理、代码生成、网页爬取,任务完成后还能自动通知你。
如何启动一个后台会话?
基础用法是在命令行或消息平台上敲 `/background 分析 ~/data 目录下Excel文件,生成月度销售报表`。可以自定义名称方便追踪:`/background --name "月度报表" 分析 ~/data 目录下Excel文件,生成月度销售报表`。还能指定工具集,比如只用文件工具和终端工具:`/background --toolsets "file,terminal" 批量重命名图片文件`。
管理后台任务
后台会话的几个特性
典型场景
会话压缩
对话一长,模型上下文可能就会超限。Hermes 支持手动或自动压缩——保留关键摘要,精简掉那些无关紧要的历史消息。手动压缩在会话内敲 `/compress` 就行。自动压缩需要在配置里开启,默认是上下文超过50%时触发:
compression:
enabled: true
threshold: 0.5
跨会话搜索
对话过程中,如果突然想翻找以前聊过的内容,不需要退出去查。直接用自然语言调用 `session_search` 工具,比如:“搜索我们之前讨论的用户登录模块设计”。它会在所有历史会话里自动检索,支持关键词、短语和布尔逻辑,非常方便。
几点实践建议
需要注意的点
会话是 Hermes Agent 最核心的数据载体。从最基础的恢复和命名,到高级的后台并行执行和全文搜索,它把整个对话生命周期都管了起来。把会话这套机制用好,不仅能高效追溯历史交互,还能并行处理多任务,算是把 Hermes 的自进化能力真正释放出来了。后续结合技能沉淀和MCP集成,会话的价值还能再上一个台阶。
侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述