MemSearch 记忆层

为编码代理提供可跨平台检索的持久语义记忆。

Star 数
★ 2.8k
最近更新
2 天前
License
MIT
主语言
Python

30 秒速览

运行形态
Agent 插件 / 技能命令行工具代码库 / SDK
可在哪里用
通用 · 跨平台Codex · Claude Code · OpenAI API · Claude API
费用
软件免费,模型调用费用自付
上手难度
低 · 几分钟可跑通
开始前需要
Python >=3.10MilvusShell / 命令行网络访问本地文件系统
典型场景
使用 Claude Code 与 Codex CLI 的开发者,希望在切换工具后继续检索此前关于 Redis、部署或架构决策的讨论。
不适合
  • 不愿自行管理Markdown文件、索引与嵌入运行时的用户
  • 需要开箱即用多用户托管服务、不想配置Zilliz Cloud或自建Milvus的团队

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

MemSearch 是面向 AI 编码代理的持久化语义记忆层,支持 Claude Code、Codex CLI、OpenClaw 和 OpenCode 插件,并提供 CLI 与 Python API。它把对话摘要和其他记忆保存为可编辑、可版本控制的 Markdown 文件,再用 Milvus 建立可重建的影子索引。检索采用向量、BM25 稀疏检索和 RRF 重排序,并支持从命中块扩展到完整 Markdown 段落或原始会话记录。默认可使用本地单文件 Milvus Lite;也可配置 Zilliz Cloud 或自托管 Milvus。它适合希望在多个编码代理或自建应用之间保留项目上下文的团队,但需要接受本地文件存储、索引维护和嵌入模型的运行成本。

插件在会话结束后捕获对话轮次并生成摘要,追加到 .memsearch/memory/ 下按日期保存的 Markdown 文件;Claude Code 示例还会写入 <!-- session:UUID --> 锚点。memsearch index 对 Markdown 重新分块,使用 SHA-256 跳过未变化内容,为新内容生成嵌入并写入 Milvus。memsearch search 执行 BM25 与稠密向量混合检索,再以 RRF 重排序;memsearch expand <chunk_hash> 返回命中块附近的完整段落。需要更深上下文时,文档所示的第三层可通过 parse-transcript <session.jsonl> 读取原始对话;开发者也可用 MemSearch(paths=[...])、await mem.index() 和 await mem.search() 嵌入自己的 Python 代理。

  1. 使用 Claude Code 与 Codex CLI 的开发者,希望在切换工具后继续检索此前关于 Redis、部署或架构决策的讨论。
  2. 维护长期代码库的工程师,需要在修改模块前找回某个功能、配置或迁移方案的历史取舍。
  3. 构建 Python 自定义代理的开发者,需要通过 MemSearch 为 Markdown 知识库加入索引和语义检索。
  4. 使用本地 Markdown 工作日志的个人或团队,希望文件仍可人工编辑、提交版本库,并让索引随改动更新。
  5. 需要用 Zilliz Cloud 或自托管 Milvus 为多用户环境配置专用后端的团队。

如何安装或部署这个 Agent?

运行环境要求 Python >=3.10。作为 CLI 安装并使用默认本地 ONNX 嵌入:

uv tool install "memsearch[onnx]"

然后执行:

memsearch config init
memsearch index ./memory/

默认嵌入为本地 CPU 上运行的 ONNX bge-m3,首次启动会从 HuggingFace Hub 下载约 558 MB 模型,不需要 API 密钥。若改用 OpenAI 嵌入,执行 memsearch config set embedding.provider openai,并提供 OPENAI_API_KEY。Codex CLI 插件可按文档执行:

git clone --depth 1 https://github.com/zilliztech/memsearch.git
bash memsearch/plugins/codex/scripts/install.sh
codex --yolo

如何使用这个 Agent?

先把待检索 Markdown 放入目录并运行 memsearch index ./memory/。使用 memsearch search "Redis caching" 查询,或使用 memsearch search "auth flow" --top-k 10 --json-output 获取可供脚本处理的结果;对命中项运行 memsearch expand <chunk_hash> 查看完整段落。需要持续同步时运行 memsearch watch ./memory/。在 Python 中可创建 mem = MemSearch(paths=["./memory"]),调用 await mem.index(),再调用 await mem.search("Redis config", top_k=3)。安装 Codex CLI 插件后,可用 $memory-recall what did we discuss about deployment? 召回记忆。

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

优点
  • Markdown 是事实来源,内容可人工编辑和版本控制;Milvus 索引可重建。
  • 同一后端覆盖 Claude Code、Codex CLI、OpenClaw 和 OpenCode,并且提供 CLI 与 Python MemSearch API。
  • 混合 BM25、稠密向量与 RRF 重排序,且支持 search → expand → transcript 的渐进式召回。
  • SHA-256 内容哈希和文件监控可避免对未变更内容重复嵌入,并自动同步改动。
局限
  • 默认 ONNX bge-m3 首次使用需通过网络下载约 558 MB 模型。
  • 默认 Milvus Lite 是单文件模式;多用户或团队专用实例需要配置 Zilliz Cloud 或 Docker 自托管 Milvus。
  • 自动捕获依赖各平台插件及其 hooks;Codex CLI 文档要求以 codex --yolo 启动以允许 ONNX 模型网络访问。
  • 高级 PROJECT.md、USER.md 维护和从记忆生成技能默认关闭,启用后还涉及模型、提供商和执行间隔配置。

这个 Agent 与同类方案有什么区别?

存储设计上,MemSearch 将 Markdown 作为可编辑的事实来源,将 Milvus 定位为可重建的影子索引;这不同于只把记忆保存在向量数据库中的方案。嵌入可选本地 ONNX、OpenAI、Ollama 等提供商,Milvus 后端可在 Milvus Lite、Zilliz Cloud 与自托管 Milvus 之间切换。

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
MemSearch 记忆层 当前 69 · 存在缺口 Agent 插件 / 技能免费 + 模型费 ★ 2.8k 2 天前 Python Codex · Claude Code · OpenAI API · Claude API
funes 智能体记忆库 81 · 表现良好 命令行工具免费 ★ 589 2 天前 Rust Codex · Claude Code
deja-vu 76 · 表现良好 命令行工具免费 ★ 1.4k 今天 Go Codex · Claude Code
Compartment 73 · 存在缺口 命令行工具免费 ★ 569 今天 Python Codex · Claude Code

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
存在缺口
69/ 100 五分制 3.5 / 5
信任安全 18/29
可靠稳定 8/14
适用触发 14/18
规范维护 14/18
有效结果 10/13
证据核验 5/8
查看各维度的扣分理由
信任安全18 / 29 · 3.1/5

文档说明 Markdown 是可读、可编辑且可重建索引的事实来源,并明确指出远程重排会把查询和检索到的文本发送给 TypeSafe;项目级配置限制也阻止本地配置启用远程提供方。技能要求在启用付费或外部提供方、改变输出路径、重建索引、删除状态或扩大索引范围前询问用户,且技能候选需经人工安装。扣分原因:自动捕获会记录对话,敏感内容处理策略和保留期限未在材料中明确;依赖安全仅有版本下限,材料没有依赖审计或漏洞处置证据;外部调用与状态变更的用户确认主要由配置技能规定,非所有运行路径皆有说明。Markdown 可恢复索引,但索引重置仍需显式确认的证据不完整。发布者身份未验证,仓库内容仅显示 Zilliz 名称和支持邮箱,无法确认身份或维护渠道。

可靠稳定8 / 14 · 2.9/5

文档、配置和代码共同描述 Markdown 到 Milvus 的索引及渐进式检索流程,并说明错误状态、兼容性检查和一些恢复办法。扣分原因:材料对默认 embedding 提供方存在差异描述(Python API 和 CLI 默认 OpenAI,插件默认 ONNX),且仓库版本、Marketplace 插件版本分别列示,读者需理解不同组件版本;可用性依赖 Milvus、embedding 服务或本地模型下载,材料未证明这些依赖持续可用;错误消息和故障指南覆盖若干常见情形,但不是全面错误目录。

适用触发14 / 18 · 3.9/5

产品面向跨平台 Agent 用户和构建自定义 Agent 的开发者,列出多种使用场景、平台、提供方和存储后端,并区分 episodic、semantic 与 procedural memory。扣分原因:技能触发规则虽给出适用与跳过场景,但部分触发依赖宿主模型判断;能力说明未在所给材料中完整界定所有平台和数据边界;Windows Lite 被标为 best-effort,其他环境差异也可能影响实际适配。

规范维护14 / 18 · 3.9/5

仓库提供 README、配置、入门、FAQ、故障排查、平台技能、许可证及多组件版本信息。安装说明和操作示例覆盖 CLI、Python、插件及可选提供方;FAQ 说明 Windows Lite、数据库格式迁移和索引重建限制。扣分原因:样本中的文档内容较长且存在重复入口;版本分散在多个组件,Codex 插件没有版本管理;虽有发布流程说明,但维护责任和更新承诺没有明确到个人或团队流程。MIT 许可证文本完整。

有效结果10 / 13 · 3.8/5

产品把跨会话、跨 Agent 的 Markdown 记忆与搜索、上下文扩展、原始对话追溯结合,并提供共享 CLI/API 和可选技能蒸馏,具备清晰的增量价值。扣分原因:自动摘要、索引、模型下载及可选远程服务会带来计算、延迟或费用;首次本地模型下载约 558 MB,冷索引可能耗时较长;搜索结果仍需 Agent 判断相关性,效果没有在本次静态审查中验证。

证据核验5 / 8 · 3.1/5

不少主张能对应到配置文档、CLI 实现、插件代码或依赖声明;文档也区分默认值、可选功能和若干已知限制。扣分原因:README 与文档中的架构和质量描述多为项目自身陈述,所给材料没有独立评估证据;代码样本只覆盖部分 CLI 和插件,无法对每项产品主张交叉核对;安装示例和说明中的事实与预期效果有时并列呈现,且材料不足以验证实际运行结果。

风险与缓解建议
  • 自动捕获会将对话摘要写入 Markdown 记忆;启用前应检查存储位置和记录范围,并留意机密内容。
  • 默认行为因接口和插件而异;核对当前 embedding、Milvus 和摘要配置,尤其是远程提供方会发送查询及检索文本。
  • 重建或重置索引前保留 Markdown 源文件;Milvus Lite 旧版数据库可能无法原地迁移。
证据充分度:低 评估于 2026年11月8日 审查版本 369ae1da48b7
查看完整评分方法 →
你是这个项目的维护者?把 FARS 徽章加到 README

徽章显示当前的评审分数和结论,点击回到本页。重新评审后约一小时内更新。

FARS

[![FARS 评测](https://followagents.com/badge/memsearch.svg?lang=zh)](https://followagents.com/zh/agents/memsearch)
<a href="https://followagents.com/zh/agents/memsearch"><img src="https://followagents.com/badge/memsearch.svg?lang=zh" alt="FARS 评测"></a>

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v0.4.23
    发布说明摘录
    This release includes five merged fixes: - DSH supports Windows command launchers, UTF-8 summary input and reliable child-process handoffs (#819). - Codex capture uses unique temporary files on macOS (#820). - DSH memory Web routes honor the host authentication and request-origin checks (#822). - memsearch expand --no-section returns only the chunk's source range (#816). - DSH provides a recall hint and lets the agent search when needed; recall skills use the calling workspace's collection (#823). …
    在 GitHub 查看 ↗
  2. v0.4.22
    发布说明摘录
    MemSearch 0.4.22 includes memory reliability fixes across the CLI and agent integrations. - Memory expansion begins at the retrieved chunk’s own section, Unix socket Milvus addresses use server connection handling, and compacted memory headings include a timestamp. - Claude Code hooks select a working Python 3 interpreter, locate the bundled summary prompt reliably, reject native summarizer error responses, and deliver recall hints to the model. - New DSH configurations use local ONNX embeddings. Existing embedding configurations remain unchanged. …
    在 GitHub 查看 ↗
  3. v0.4.21
    发布说明摘录
    What's Changed - release: prepare v0.4.21 (#765) - Use the stable Jev alias and relocate evaluation docs (#761) - Add optional Jev reranking and bilingual evaluation (#758) - fix: prevent read paths from creating missing collections (#760) - fix: search growing rows on Milvus Server (#757) - fix(codex): filter composite host instruction envelopes (#754) - fix(codex): parse response-item rollout messages safely (#751) - fix(openclaw): update prompt hook compatibility (#744)
    在 GitHub 查看 ↗

常见问题

必须使用 Zilliz Cloud 吗?
不必。默认是零配置的本地单文件 Milvus Lite;也可以配置 Zilliz Cloud,或使用 Docker 部署的自托管 Milvus Server。
默认方案是否有 API 费用?
默认 ONNX bge-m3 在本地 CPU 运行,不需要 API 密钥;首次需要下载约 558 MB 模型。选择 OpenAI 等嵌入提供商时,则需要相应凭据。
记忆数据存在哪里,能否人工修改?
记忆以 Markdown 文件保存,插件默认使用 .memsearch/memory/;Milvus 是派生索引。修改文件后可运行 memsearch index 或 memsearch watch 更新索引。
哪些客户端有直接插件支持?
文档明确列出 Claude Code、Codex CLI、OpenClaw 和 OpenCode。它们共享 MemSearch 后端,但各自的安装和捕获方式不同。
这页内容对你有帮助吗?
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。