开发与工程 persistent-memorysqlitefts5mcp-servergo-binarycodexcli

Engram 持久记忆协议

为 AI 编程代理提供跨会话、跨压缩的持久记忆,自动保存决策与发现。

FollowSkills 评估 · FSRS-2.0
谨慎使用
68/ 100 五分制 3.4 / 5
1 2 3 4 5 6
1信任安全18 / 25 · 3.6/5

该技能要求代理主动保存记忆并在会话结束时强制执行,但没有明确请求用户确认,也没有明确禁止将敏感信息保存到记忆存储。技能本身没有权限过度扩张;MCP工具列表和HTTP服务器的数据流可见,但默认情况下HTTP服务器可能因未启用令牌而在本地开放,可能暴露数据。已提供安装和设置信息,来源可追溯。扣分:缺乏用户确认或敏感数据的透明度。

2可靠稳定11 / 20 · 2.8/5

技能描述了一系列强制动作(主动保存、会话结束协议)以及备选方案(重新运行engram setup)。README中提到了测试(go test ./...)和CI工作流,提供了一定证据,但未提供详细的错误处理或异常输入指导。技能依赖外部engram二进制和MCP服务器的可用性;未描述失败反馈。由于是静态审查,可靠性评分上限为10,但CI存在,因此评分略高。扣分:缺少错误信息或测试证据不足。

3适用触发13 / 15 · 4.3/5

技能针对AI编码代理的持久记忆需求,场景描述清晰,定义触发条件和禁止情形,并提供替代方案。它可以用中文和英文工作,并可在本地运行(不依赖互联网服务)。边界和触发条件明确,但由于缺少超越默认场景的证据,扣分。

4规范维护14 / 15 · 4.7/5

技能文档结构合理,具备分层文档(README、DOCS、安装指南等),包含LICENSE(MIT),但缺少版本信息或变更日志。熟练度:文档全面,但缺少变更日志和明确的版本化。扣分:缺少变更日志或版本历史。

5有效结果7 / 15 · 2.3/5

该技能清晰地定义目标(持久记忆),并提供具体指令和工具。它可能直接可用,但安全性未证实;在静态审查中,有效性评分上限为7。扣分:没有实际执行证据或输出验证。

6证据核验5 / 10 · 2.5/5

存在CI工作流和go test ./...执行,为该技能的核心部分提供了一些可验证性。但静态审查意味着没有实际执行,且CI覆盖范围可能仅限于部分技能功能。扣分:没有独立执行的证据。

证据充分度: 评估于 2026年8月7日 审查版本 509e6762fdd9
上游仓库在本次评估后已有新提交;当前评分仍对应所示审查版本,可能尚未覆盖最新改动。
使用前请注意
  • 该技能被设计为始终激活,并强制进行记忆保存和会话结束协议;管理员应确保用户了解这一行为,并根据需要配置权限。
  • 默认的HTTP服务器未启用令牌,可能暴露本地数据;建议设置ENGRAM_HTTP_TOKEN以保护敏感信息。
  • 技能未明确禁止保存敏感信息;应确保用户数据不会被存储到记忆库中,除非明确同意。
  • 该技能过度依赖外部engram二进制和MCP服务器;确保这些组件保持更新和可用,以避免中断。
  • 该技能包含β特性,使用时应保持隔离测试环境,避免影响生产环境。
评估证据 [1][2][3][4][5][6][7]
查看完整评分方法 →

这个 Skill 能做什么,适合哪些场景?

这是一个强制始终启用的记忆协议,要求代理主动将架构决策、缺陷修复、用户偏好和发现保存到 Engram 的 SQLite 数据库中。依赖 MCP 服务器提供 mem_save 等工具,并包含会话结束时的总结流程,保证下一次会话能接续上下文。安装需运行 `engram setup codex` 并重启 Codex,工具由 UserPromptSubmit 钩子自动加载。

在每次相关事件(如决策、完成工作、发现、用户确认或拒绝)后立即调用 mem_save,将结构化记忆(标题、类型、What/Why/Where/Learned)写入 SQLite。提供 mem_contextmem_search 用于检索历史记忆,mem_session_summary 在会话结束时生成总结,并在压缩后立即调用以恢复上下文。所有操作均通过 MCP 服务器执行。

  1. 开发者解决了一个棘手的 bug,希望下次会话能记住根因。
  2. 团队确立了编码规范,需要让代理依据规范持续执行。
  3. 用户表达了对某工具或框架的偏好,期望后续自动遵循。
  4. 在上下文压缩后,需要快速恢复会话上下文。
  5. 新会话开始,用户询问之前的工作,代理自动检索相关记忆。

这个 Skill 有哪些优点和局限?

优点
  • 强制主动保存,减少遗忘
  • 跨会话、跨压缩保存上下文
  • 结构化记忆,含主题键和 upsert
  • 自动工具加载,无需手动搜索
  • 支持项目级和个人级作用域
局限
  • 依赖外部的 engram 二进制和 MCP 配置,setup 失败会导致工具缺失
  • 需要代理主动遵守协议,否则记忆可能不完整
  • 仅支持 MCP 客户端,不支持 HTTP 或 Docker 网络连接
  • 未提供测试用例或验证文档,难以评估稳定性

如何安装这个 Skill?

  1. 安装 Engram:brew install gentleman-programming/tap/engram(其他平台见文档)。2. 运行 engram setup codex 并重启 Codex。3. 确保 MCP 工具可用;若缺失,重跑 setup 并重启。

如何使用这个 Skill?

无需手动操作,协议自动激活。当代理遇到需要记忆的事件时,自动调用 mem_save;会话结束时自动调用 mem_session_summary。用户可提示“记得上次我们怎么解决这个问题吗?”来触发搜索。

常见问题

Engram 需要付费吗?
开源项目,MIT 许可证,无费用。
记忆存储在哪里?
本地 SQLite 文件(默认 ~/.engram/engram.db),可选云复制。
如果 MCP 工具不可用怎么办?
重跑 `engram setup codex` 并重启 Codex 修复配置。

同仓库的其他 Skills

均来自 Gentleman-Programming/engram

相关 Skills