第10篇:内置插件——开箱即用的增强包
Hermes 功能详解第10篇:内置插件。官方预装的高质量插件,每个都是实用小工具。
第10篇:内置插件——开箱即用的增强包
嘿,朋友们!今天咱们聊点轻松的——内置插件。你可能已经发现了,Hermes Agent 自带了不少好东西,不用额外装啥,开箱即用。这篇就把最实用的几个给你捋一捋,尤其是那个能让你“后悔药自由”的 Checkpoints / /rollback。
先说说 Checkpoints 是啥
简单讲,就是 Hermes 会在一些“危险操作”之前,自动给你的项目拍一张快照。万一 AI 改坏了,你一句 /rollback 就能回到操作之前的状态,像游戏存档一样。
不过注意,这功能在 v2 里是默认关闭的,得手动开。为啥?因为快照存多了也占地方,不是所有人都需要。
开启方式有两种:
临时开启(当前会话):
hermes chat --checkpoints
永久开启(改配置文件 ~/.hermes/config.yaml):
checkpoints:
enabled: true
什么时候会自动拍快照?
主要在两类操作前:
- 文件工具:比如
write_file、patch - 危险终端命令:
rm、mv、sed -i、git reset这类会改东西的命令
而且 Hermes 很聪明,每个目录每轮对话最多拍一次,不会疯狂刷屏。
怎么用?超简单
在会话里直接敲:
| 命令 | 作用 |
|---|---|
/rollback |
列出所有快照 |
/rollback 3 |
恢复到第 3 个快照(保留你手动改的东西) |
/rollback 3 --all |
完全恢复,连你手改的也覆盖 |
/rollback diff 3 |
看看当前和第 3 个快照差了多少 |
/rollback 3 config.py |
只恢复某个文件 |
快照存在哪?
放心,不会动你项目的 .git。Hermes 把所有快照都放在一个共享的隐藏仓库里:
~/.hermes/checkpoints/store/
所有项目共用这一个仓库,靠 git 的去重机制,省空间又高效。
命令行管理工具
不想进会话?直接在终端操作:
hermes checkpoints # 查看总大小、项目数
hermes checkpoints prune # 手动清理过期/孤儿快照
hermes checkpoints clear # 全部清空(会先问你)
配置项一览
在 config.yaml 里可以精细控制:
checkpoints:
enabled: false # 总开关
max_snapshots: 20 # 每个项目最多 20 个快照
max_total_size_mb: 500 # 总大小上限 500MB
max_file_size_mb: 10 # 超过 10MB 的文件不拍
auto_prune: true # 自动清理旧快照
retention_days: 7 # 保留 7 天
顺带一提:其他内置插件
除了 Checkpoints,仓库里还打包了几个插件,比如 disk-cleanup(自动清理临时文件)、security-guidance(写文件时给危险代码模式加安全警告)、observability/langfuse(把对话和工具调用上报到 Langfuse)等等。它们默认都是关着的,想用就 hermes plugins enable <名字> 开一下,或者去 hermes plugins 界面里勾选。
另外提一句:NeMo Relay 已经不再是内置插件了,别再去 enable 它。Hermes 核心现在自己接管了 Relay 的会话和工具生命周期,想接中间件或导出器的话,得自己写一个 plugins.toml,再用 HERMES_NEMO_RELAY_PLUGINS_TOML 指过去。老的 HERMES_NEMO_RELAY_ATOF_* / ATIF_* 变量已经不管用了,hermes update 会自动帮你把旧配置迁移成新的 relay-plugins.toml,不用手动折腾。
小结
Checkpoints 就是个安全网,让你敢让 AI 放手去改代码。虽然默认关着,但强烈建议你开起来——万一哪次 AI 手滑,你还能一键回到过去。
下篇咱们聊聊别的内置插件,敬请期待!
📖 官方文档
本文根据 Hermes Agent 官方文档编写,原文见:官方文档 › user-guide/features/built-in-plugins