1,100· 102 forks· Python· MIT自托管

Memory OS:为 Hermes Agent 打造的 7 层持久化记忆系统

ClaudioDrews/memory-os

本地运行的 AI 记忆操作系统,通过向量数据库、结构化事实、自动维基和精准上下文注入,让 Hermes Agent 真正记住每次对话

成熟度维护活跃,4天前最新提交,4个 open issues,v0.2.0 刚发布并完成 20+ 系统性修复

项目体检

部署 · 提供一键安装脚本(curl + bash),需 Docker 运行 Qdrant/Redis/ARQ Worker 三个服务,默认端口未在配置中明确暴露

成本 · 需 Redis 密码(自生成)、Ollama 本地嵌入模型或 OpenRouter API Key(二选一)、多个本地路径配置(Vault/Wiki/Hermes Home),开箱需手动配置 .env

技术 · Python 3.11+ 后端,依赖 Qdrant 向量数据库、Redis 队列、SQLite FTS5 全文检索、ARQ 异步任务、FastEmbed 嵌入

许可 · MIT 协议,可自由商用无限制

活跃 · 4天前最新提交,5位贡献者,v0.2.0 版本刚完成 20+ 修复,活跃开发中

解决什么

重度使用 Hermes Agent 的开发者都遇到过同一个痛点:花几小时教会 AI 你的偏好、项目背景和决策逻辑,下次对话它却像初次见面一样从零开始。Memory OS 针对这个问题构建了一套 7 层记忆架构:从工作区文件(MEMORY.md/USER.md)的即时注入,到 SQLite 全文检索的会话历史,再到 Qdrant 向量库的语义搜索,以及自动维护的结构化事实库和 Wiki 知识库。最关键的第 7 层"Ground Truth Hierarchy"(SOUL.md/rulebook.md)明确告诉 Agent 注入的记忆是权威来源,避免 AI 反复调用工具重新查找已注入的上下文。

为何火

项目在 GitHub 上线两周即获 1100+ stars,核心吸引力在于解决了"记忆注入但不使用"的根本问题。许多 RAG 方案能检索上下文,但 LLM 仍会忽略注入内容去调用 API 重新验证,Memory OS 通过 Ground Truth 层强制 Agent 信任注入记忆,配合 4 级混合检索(Qdrant 混合搜索 → 稠密向量 → 词法匹配 → SQLite 兜底)和语义去重(余弦相似度 >0.92 自动合并),实现了"像和参与过每次会话的同事对话"的体验。v0.2.0 的一键安装脚本和 20+ 社区驱动修复进一步降低了部署门槛。

核心功能

7 层记忆架构:Layer 1 工作区文件每轮注入系统提示词;Layer 2 SQLite FTS5 全文检索历史会话;Layer 3 结构化事实库(带信任评分和实体解析);Layer 4 Icarus 插件提供 16 个跨会话工具(fabric_recall/fabric_write 等);Layer 5 Qdrant 向量库(4096 维余弦 + BM25 稀疏向量);Layer 6 自动维护的 Wiki 知识库;Layer 7 Ground Truth 明确记忆权威性。

精准上下文注入:pre_llm_call 钩子从四个来源(Fabric/Qdrant/Sessions/Facts)外科手术式召回相关记忆,按相关性阈值过滤,会话内去重,跳过寒暄类消息。post_llm_call 和 on_session_end 钩子自动提取学习内容并入库。

本地优先 + 提供商无关:全部记忆基础设施本地运行,支持 OpenRouter/OpenAI/Anthropic/Ollama 等任意 LLM 提供商,嵌入模型可选 Ollama 本地(零成本)或 OpenRouter 云端(Qwen3-Embedding-8B)。

安装

一键安装(推荐):

curl -sSL https://raw.githubusercontent.com/ClaudioDrews/memory-os/main/setup.sh | bash

脚本自动配置 Docker 服务(Qdrant/Redis/ARQ Worker)、SQLite 数据库、Icarus 插件和环境变量。

手动安装:需 Docker、Python 3.11+、Hermes Agent,依次启动 Qdrant/Redis 容器,配置 .env(需填 REDIS_PASSWORD、FABRIC_DIR、VAULT_PATH、嵌入模型 API Key 等),安装 Python 依赖(requests/qdrant-client/arq 等),初始化数据库。项目提供 smoke test 和 ingestion test 验证部署。

适合谁

重度 Hermes Agent 用户:需要 AI 记住长期项目背景、技术栈偏好和历史决策的开发者或研究者。

本地部署爱好者:不希望记忆数据上云,愿意自建 Docker 服务栈的用户。

LLM 提供商灵活切换者:同时使用多个 API 提供商或本地模型(Ollama)的场景。

不适合:纯云端用户(需本地 Docker)、轻度对话用户(基础 Hermes 已够用)、对 Python/Docker 完全陌生的新手(虽有一键脚本但排错需技术基础)。

社区评价

暂无足量社区公开讨论,以下为基于项目本身的中立评估:

项目在两周内获 1100 stars 和 5 位贡献者参与,v0.2.0 版本通过系统性审计完成 20+ 修复(包括提供商无关的 LLM 提取、O(1) 路径查找、FTS5 会话搜索、语义去重等),显示出较强的工程成熟度。README 详细阐述了"为何需要 Layer 7"的设计哲学,对比表格清晰展示与原生 Hermes 的差异。Issue 模板和 PR 检查清单表明项目已为外部贡献做好准备。不足之处在于文档偏技术向,缺少非开发者友好的快速上手视频或图形化配置界面。

选型对比

vs 原生 Hermes Agent:原生 Hermes 仅支持会话内记忆,Memory OS 增加跨会话持久化、向量语义搜索、结构化事实库和自动 Wiki,适合需要长期记忆的场景。

vs 商业 AI 记忆服务(如 Mem.ai/Rewind):Memory OS 完全本地运行无订阅费,数据隐私可控,但需自建基础设施(Docker/Qdrant)和手动配置;商业服务开箱即用但数据上云且按月付费。

vs 通用 RAG 框架(如 LangChain Memory):Memory OS 针对 Hermes Agent 深度定制,提供 7 层分层架构和 Ground Truth 强制信任机制,避免"注入但不用"问题;通用框架更灵活但需自行解决上下文权威性。

已知坑

配置复杂度:虽有一键脚本,但 .env 需手动填写多个绝对路径(FABRIC_DIR/VAULT_PATH/WIKI_ROOT 等),systemd 不支持 ~ 展开,新手易出错。

资源占用:Qdrant 向量库和 Redis 需持续运行,4096 维向量存储对磁盘和内存有一定要求,低配机器可能遇到 Docker 构建超时(README 提到已优化 UX 提示)。

嵌入模型依赖:必须配置 Ollama 本地模型或 OpenRouter API Key,中国大陆用户若选 OpenRouter 需注意网络可达性;Ollama 本地部署需额外下载 nomic-embed-text 模型。

语义去重阈值:余弦相似度 >0.92 自动合并可能误合并相似但不同的条目,项目未提供阈值可调参数。

文档技术门槛:README 假设用户熟悉 Docker/SQLite/向量数据库概念,缺少故障排查指南(如 Qdrant 连接失败、Redis 密码错误等常见问题)。

安装方式:docker + bash 脚本一键安装