akitaonrails/ai-memory
Solution for long term memory for agent coding CLIs and to facilitate handoff between different agent vendors
概述
ai‑memory 是一个基于 Rust 的独立长期记忆服务,专为 AI 驱动的编码助手(如 Claude Code、OpenAI Codex / Command-Code …)设计。它记录编码代理在开发会话期间发生的所有内容——提示词和工具调用——通过生命周期钩子自动进行,并将数据存储为 git 后端的 wiki 中的普通 Markdown 文件。
- 跨代理 – 一个共享记忆,任何受支持的代理都可以读写,因此您可以从 Claude Code 切换到 Codex,而无需重新解释项目。
- 跨项目和跨机器 – 一个小型用户配置文件会跟随您到每个仓库;记忆服务器可以在任何机器(笔记本、家庭实验室、Docker 等)上运行,并可被多位用户访问。
- 默认零 LLM – 完全离线进行捕获、搜索和交接;可选的 LLM 驱动“梦境”整合是选择加入的。
- 纯文本真相来源 – 所有笔记都以 Markdown 文件形式存在,可以使用 grep 搜索、在 Obsidian 中编辑、使用 git 进行版本控制,并可恢复。
- 老化与去重 – 记忆按可配置的时间表衰减,具有基于使用情况的强化、自动压缩、重复合并和矛盾标记——全部无需外部 API。
- 团队就绪 – 内置多用户认证、个人归因、审计日志和项目共享。
运作方式
- 捕获 – 代理通过生命周期钩子发出消毒后的观察结果。
- 整合 – 在会话结束时,观察结果转换为 Markdown 页面(可选 LLM 编写)。
- 回忆 – 任何后续会话都可以搜索 wiki(全文、实体、链接、可选向量嵌入)并接收简短的交接。
- 交接 – 下一个代理认领交接(类型化协议,仅认领一次)并继续工作。
该服务以单一二进制文件(ai‑memory)运行,托管一个小型 HTTP/MCP 服务器和一个用于快速检索的派生索引。
主要功能
| 功能 | 作用 |
|---|---|
| 多代理集成 | 通过第一方钩子和 MCP 注册支持超过 20 种代理(Claude Code、Codex、Cursor、Gemini CLI、OpenCode、Grok、Devin、Kimi、Kiro 等)。 |
| 跨项目配置文件 | 存储每个用户的配置文件(包管理器、测试布局、架构习惯),自动应用于新仓库。 |
| 跨机器服务器 | 在本地、Docker/Podman、systemd 服务或 macOS 菜单栏应用程序中运行服务器。 |
| Git 后端 Markdown wiki | 所有记忆都以 .md 文件形式存在;索引可以随时从仓库重建。 |
| 零 LLM 默认路径 | 捕获、搜索和交接仅使用全文搜索;无需 API 密钥。 |
| 可选 LLM“梦境” | 后台处理将冷集群重写为连贯页面(需要 LLM 提供商)。 |
| 老化与衰减 | 可配置的分层衰减曲线;使用过的页面衰减较慢;自动压缩、去重、矛盾标记。 |
| 审计与认证 | 多用户认证、个人归因、所有变更的不可变审计日志。 |
| 自包含二进制文件 | 单一可执行文件;通过 AUR、RPM、Docker、macOS 应用程序或原生 zip 安装。 |
| 可扩展搜索 | 全文、实体提取、图形边缘;可选向量嵌入(通过 OpenAI/Anthropic 等)。 |
开始使用
- 安装 – 使用您平台的原生包管理器(AUR、RPM)、Docker 或 macOS
.app。二进制文件附带 systemd/launchd 单元,用于后台服务。 - 初始化 – 创建数据目录并启动服务:
ai-memory --data-dir ~/.local/share/ai-memory init systemctl --user enable --now ai-memory.service - 连接代理 – 为您使用的代理安装 MCP 客户端和钩子:
对其他代理(codex、cursor 等)重复此操作。ai-memory install-mcp --client claude-code --apply ai-memory install-hooks --agent claude-code --apply - 运行 – 通过包装器启动您的编码助手,以便自动捕获:
当您切换代理时,下一个代理会收到总结您进度的交接。ai-memory run claude # 启动 Claude Code 并附加钩子 ai-memory run codex --yolo
使用案例
| 情境 | 优势 |
|---|---|
| 切换工具 | 在任务中途从 Claude Code 切换到 Codex,而不会失去上下文。 |
| 团队协作 | 所有队友共享相同的项目级 wiki;个人笔记保持私有。 |
| 长期项目记忆 | 自动衰减保持常用知识活跃,而旧的未使用笔记被压缩。 |
| 离线工作 | 零 LLM 模式无需任何 API 密钥即可运作;您仍然可以搜索和交接。 |
| 审计与合规 | 不可变审计日志记录每次变更,适用于受监管的环境。 |
限制与考量
- “梦境”整合和向量排名需要外部 LLM/嵌入提供商和 API 密钥。
- 原生 Windows 支持仍处于实验阶段;Windows 用户通常通过 Docker 或 zip 安装运行。
- 记忆老化与压缩是可配置的;调整不当的曲线可能过快删除有用的笔记。
- 该服务假设受信任的环境——Markdown 文件是纯文本,可以手动编辑。
许可证与社区
ai‑memory 以 MIT 许可证 发布。开发使用 Rust(需要 1.95+)。欢迎通过 pull request 贡献;该项目为所有列出的代理维护支持矩阵和 CI。
以上所有信息直接取自仓库的 README。
相关
- 项目
- 项目
- 项目
- 项目
- 项目