JuliusBrussee/cavemem
Cross-agent persistent memory for coding assistants. Stored compressed. Retrieved fast. Local by default.
What it solves
cavemem 提供持久、跨代理的记忆给编码助手。它防止代理在不同会话或不同 IDE 之间忘记上下文,让它们能够在不依赖云端记忆系统的情况下,回忆之前的观察和交互。
How it works
系统使用在会话边界触发的 hook 来捕获观察。这些观察使用确定性的 “caveman grammar” 进行压缩(将文字代币减少约 75%,同时完整保留代码和路径),并存储在具备 FTS5 关键字搜索的本地 SQLite 数据库中。
代理通过 Model Context Protocol (MCP) 服务器获取此记忆,服务器提供 search、timeline、get_observations 等工具。本地后台工作者负责生成嵌入向量,并提供只读的网页查看器供人类浏览会话。
Who it’s for
使用 AI 编码助手(如 Claude Code、Cursor、GitHub Copilot、OpenCode、Codex、Augment Code、Gemini CLI、Antigravity 或 IBM Bob)的开发者,想要一个本地、注重隐私的持久记忆层。
Highlights
- Cross-IDE Support:捕获多个 IDE 的数据,并允许其他(仅查询)用户搜索共享记忆。
- Local-First:数据存储在本地 SQLite DB,无需网络调用;嵌入向量可以本地或远程生成。
- Compressed Storage:使用专门的文法在静止时节省空间,同时仍可供人类扩展阅读。
- Hybrid Search:结合 SQLite FTS5 关键字搜索、本地向量索引与可调节的排序器。
- Privacy Controls:支持路径 glob 排除,并自动剥除
<private>标签内的内容。 - Web Viewer:内置受 token 保护的本地 UI,用于浏览已捕获的会话。