joshuadavidthomas/opencode-agent-memory

Memory blocks for OpenCode, inspired by Letta.

解决的问题

它为 OpenCode 代理提供了一个持久、可自我编辑的长期记忆系统。这能防止代理在不同会话或对话上下文被压缩时遗忘关键信息,使它们能够保持一致的角色设定,并记住用户偏好和项目特定知识。

工作原理

该插件实现了一个记忆块系统——存储在磁盘上的结构化 Markdown 文件——这些块会被注入到代理的系统提示词中。这些块被分类为全局(跨所有项目共享)或项目特定。代理使用专用工具与此记忆交互,以列出、创建、更新或替换这些块中的内容。此外,它还具有一个可选日志,用于仅追加的条目,代理可以使用本地嵌入 (all-MiniLM-L6-v2) 对其进行语义搜索。

适用人群

使用 OpenCode 的开发者,希望其 AI 代理具备长期记忆、一致的身份,并能够在多次编码会话中记录和检索见解。

亮点

  • 可自我编辑的记忆:代理可以使用专用工具主动读取和修改其记忆块。
  • 持久存储:信息存储在 Markdown 文件中,可在会话重启和上下文限制中保留。
  • 共享范围:支持用于一般偏好的全局记忆和用于代码库架构的项目级记忆。
  • 语义日志:一个可选的日志,允许代理捕获并对发现和决策进行语义搜索。
  • 本地隐私:日志的语义搜索完全使用本地嵌入在本地机器上执行。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目