Hermes Agent如何清除会话?Hermes Agent彻底清除飞书会话操作指南
适用对象:用 Hermes Agent(Nous Research)接入飞书后,想清除飞书平台的全部会话历史。

一、背景
Hermes 把所有会话都存在一个 SQLite 数据库里:
- 数据库路径:
~/.hermes/state.db(WAL 模式,旁边还有state.db-wal、state.db-shm两个伴随文件) sessions表:会话元数据,每条会话用source字段标记来源平台(如cli、telegram、discord、飞书等)messages表:每个会话的完整消息历史messages_fts等:FTS5 全文索引虚拟表,靠触发器自动跟随messages表变化,无需手动维护
所以「清除飞书所有会话」本质就是:删掉 source 为飞书的那批 session 及其 messages。
两个一定要先知道的限制:
source值要先确认,大概率是feishu,也可能是lark,删之前务必核对,别删错平台。- CLI 的
prune只会删「已结束」的会话,正在进行/未正常结束的会话它不动。要彻底清,要么先停 gateway 让会话结束,要么用 SQL 直接删。
另外注意:会话(session)≠ 记忆(memory)。本指南只清对话历史,不影响 Hermes 沉淀在 ~/.hermes/memory/ 下的长期记忆(MEMORY.md / USER.md 等)。
二、操作前必做
1. 停掉 gateway
避免运行中改库产生锁冲突,也让在跑的飞书会话结束:
hermes gateway stop
2. 备份数据库(三个文件一起拷)
cp ~/.hermes/state.db ~/.hermes/state.db.bakcp ~/.hermes/state.db-wal ~/.hermes/state.db-wal.bak 2>/dev/nullcp ~/.hermes/state.db-shm ~/.hermes/state.db-shm.bak 2>/dev/null
也可以用 hermes backup --quick 做一次快照式备份。
三、第一步:确认飞书的 source 值
sqlite3 ~/.hermes/state.db "SELECT source, COUNT(*) FROM sessions GROUP BY source;"
看清楚飞书那行的 source 字段值和条数。下文命令里凡是出现 feishu 的地方,都替换成你实际看到的值。
四、第二步:选一种清理方式
方式 A:CLI 命令(推荐,最简单)
hermes sessions prune 支持按平台过滤。注意 --older-than 默认是 90 天,只删 90 天前的;要清全部飞书会话(含今天的),必须设成 0。
先不加 --yes,让它显示「将删除 N 条」再核对:
hermes sessions prune --source feishu --older-than 0
条数和 source 都确认无误后,正式执行:
hermes sessions prune --source feishu --older-than 0 --yes
prune 命令参数说明:
| 参数 | 含义 |
|---|---|
--source SOURCE | 只清理该来源的会话 |
--older-than N | 删除 N 天前的会话(默认 90;填 0 表示包含今天,即全部) |
--yes / -y | 跳过确认 |
局限:只能删「已结束」的会话。若有残留未结束会话,改用方式 B。
方式 B:直接 SQL(最彻底,能删未结束的会话)
注意删除顺序:先删 messages,再删 sessions(messages 引用 sessions)。FTS 索引会随 messages 删除自动清理,不用管。
sqlite3 ~/.hermes/state.db <<'SQL'DELETE FROM messages WHERE session_id IN (SELECT id FROM sessions WHERE source='feishu');DELETE FROM sessions WHERE source='feishu';SQL
五、第三步:重启 gateway
hermes gateway start
六、完整流程速查(推荐路径)
# 0. 停网关 + 备份hermes gateway stopcp ~/.hermes/state.db ~/.hermes/state.db.bak# 1. 确认飞书 source 值与条数sqlite3 ~/.hermes/state.db "SELECT source, COUNT(*) FROM sessions GROUP BY source;"# 2. 预览将删除多少条(先不加 --yes)hermes sessions prune --source feishu --older-than 0# 3. 条数无误后正式删除hermes sessions prune --source feishu --older-than 0 --yes# 4.(可选)若有未结束会话残留,用 SQL 彻底清sqlite3 ~/.hermes/state.db <<'SQL'DELETE FROM messages WHERE session_id IN (SELECT id FROM sessions WHERE source='feishu');DELETE FROM sessions WHERE source='feishu';SQL# 5. 重启网关hermes gateway start
七、附:其他相关命令
hermes sessions list # 列出最近会话hermes sessions browse # 交互式选择器,可搜索、手动挑删hermes sessions delete# 删单个会话hermes sessions stats # 会话存储统计hermes dashboard # 网页版管理界面,可视化管理会话
特殊情况:如果飞书是这台机器上唯一接入的平台、且想彻底重置,最省事的是直接删掉整个 state.db(连 -wal、-shm),下次启动 Hermes 会自动重建空库。但这会清掉所有平台的会话,确认没有其他平台数据要保留时才这么做。
hermes gateway stoprm ~/.hermes/state.db ~/.hermes/state.db-wal ~/.hermes/state.db-shmhermes gateway start
八、误删恢复
如果删错了,用之前备份的文件还原即可:
hermes gateway stopcp ~/.hermes/state.db.bak ~/.hermes/state.dbrm -f ~/.hermes/state.db-wal ~/.hermes/state.db-shm # 清掉可能不一致的伴随文件hermes gateway start
-
08.05
轮回之兽处决机制详细说明 轮回之兽怪物怎么处决
-
08.05
荒野大镖客救赎手游中文设置操作步骤
-
08.05
轮回之兽火盆点燃顺序攻略 火盆点燃解谜如何过关
-
08.05
bazaar应用商店如何改语言
-
08.05
轮回之兽群战打法攻略 轮回之兽群体战斗如何打
-
08.05
洛克王国世界古卷匣魔像命定花种怎么打 古卷匣魔像命定花种打法详细说明
-
- 人鱼面具控制室电表谜题解法攻略分享
- 08.05
-
-
- 详细说明Codex打不开的一种解决办法
- 08.05
-
-
-
- 新三国荣耀再起关羽猛攻枪阵容搭配推荐
- 08.05
-
-
下载
- |
-
-
下载
- 《行尸走肉第一章》免安装中文汉化硬盘版下载
- 单机|436 MB
- 一款以动作冒险为主题的游戏
-
-
下载
- 《街头霸王X铁拳》免安装中文汉化硬盘版下载
- 单机|111MB
- 一款非常好玩的格斗游戏
-
-
下载
- |
-
-
下载
- 《暗黑破坏神3》免安装繁体中文正式版下载
- 单机|7630 MB
- 一款以角色扮演为主题的游戏
-
-
下载
- 《马克思佩恩3》免安装硬盘版下载
- 单机|27033 MB
- 一款以第三人称射击为主题的游戏