资讯动态

1 个目录、2 个文件、0 条遗忘:Hermes Agent 持久化记忆是怎么做到的

发布时间:2026/8/28 9:43:58 来源:尧图企业网站定制
1 个目录、2 个文件、0 条遗忘Hermes Agent 持久化记忆是怎么做到的【免费下载链接】hermes-agentThe agent that grows with you项目地址: https://gitcode.com/GitHub_Trending/he/hermes-agent你上周告诉 AI 用 pnpm 别用 npm今天新开会话它又开始 npm install你说回复短一点下一次它又长篇大论。传统助手的上下文只活在一次对话里关窗口即失忆你的每次纠正都是重复劳动。Hermes Agent 的持久化记忆就是为此而生两个本地文件、一个目录让 AI 记住用户偏好跨会话生效不依赖任何云端服务。Hermes Agent 的解法2 个文件、2 类记忆记忆没有做成一个大杂烩而是严格劈成两半各管一摊都放在~/.hermes/memories目录下随时可以用编辑器打开看MEMORY.mdUSER.md角色代理侧笔记用户侧画像记什么环境事实、项目约定、工具特性、踩坑学到的知识你的偏好、沟通风格、期望、工作流习惯容量上限2200 字符1375 字符上限按字符而非 token 计——换个模型预算依然成立跨模型兼容性是设计出来的不是碰运气的。一条记忆的完整生命周期从注入到生效理解跨会话记忆只需盯住一条记忆的三段旅程。第 1 步开场拍快照然后锁死初始化阶段见 agent/agent_init.py会把两个文件读进内存拍一张快照整个会话期间不再动。为什么锁死因为开场前缀稳定前缀缓存才划算——这是提示稳定性优先的取舍不是 bug。第 2 步会话中实时改盘AI 通过记忆工具增、删、改条目每次操作即时落盘工具返回的结果永远反映最新状态。换句话说开场看到的是冻结快照磁盘上跑的是实时账本两层各司其职。第 3 步下一次会话新快照接管你下次打开 Hermes Agent上一轮写入的条目会被读成新的快照。你的偏好从这一刻起变成默认行为无需复述。原子写入为什么记忆落盘不能直接写记忆文件是高频小写操作普通写文件有个风险写到一半断电文件就废了。Hermes Agent 的做法是临时文件加重命名fd, tmp_path tempfile.mkstemp( dirstr(path.parent), suffix.tmp, prefix.mem_ ) try: with os.fdopen(fd, w, encodingutf-8) as f: f.write(content) f.flush() os.fsync(f.fileno()) os.replace(tmp_path, str(path)) # 同一文件系统内原子重命名 except BaseException: os.unlink(tmp_path) raise先写同目录临时文件并强制刷盘再用os.replace一步换掉正式文件。重命名在同一文件系统上是原子操作磁盘上永远只有完整的旧版本或完整的新版本不存在中间态。条目之间用§分隔天然支持多行。记忆会进系统提示所以先防注入一个容易被忽略的点记忆内容最终会出现在系统提示里它本身就是注入攻击面。Hermes Agent 对每条写入都过安检拦截不可见字符零宽空格之类堵住肉眼看不见的夹带通道扫描威胁模式提示注入、角色劫持、秘密窃取类文本直接拒收收紧写权限只有记忆工具能碰这两个文件普通写文件路径够不着防的不是记错而是被记脏。怎么管理记忆文件5 条操作建议⚡ 先存高价值信息姓名角色、时区、编码风格、工具链以及 AI 被你纠正过的约定分对文件关于你的进 USER.md关于环境的进 MEMORY.md存结论不存过程别倒日志原文提炼成一句事实盯容量水位接近上限就合并同类项、删掉过时条目 定期体检两个文件都是纯 Markdown直接打开删改即可这是最低成本的记忆文件管理方式现在就能动手告诉 Hermes Agent记住我的工作流然后打开~/.hermes/memories亲眼看看这条记忆落盘的瞬间。【免费下载链接】hermes-agentThe agent that grows with you项目地址: https://gitcode.com/GitHub_Trending/he/hermes-agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价