王健俊
全部项目

Agent 共享记忆总线

让多个编码智能体共享项目决策,并能回查事实来源。

本地优先的 MCP 服务以事件保留历史,用索引检索,再生成可读的 Markdown 视图。

查看结构示意图(可左右滑动)
ONE MEMORY. MANY AGENTS.Shared Memory BusCodexCoding contextClaude CodeProject knowledgeMCP clientsShared factsMemory busLocal-first · MCPJSONLEventsIndexBM25 + vectorsMarkdownDerived view项目结构示意WJ / SELECTED WORK
独立开发2026年1月 – 9月GitHub
MCPJavaScriptBM25+2

关键成果

  • 支持多个 MCP 客户端访问同一份项目记忆
  • 五层记忆生命周期与本地检索,支持按需配置远程 embedding

要解决的问题

在多个编码智能体之间切换时,项目决策、约束和上下文容易散落在独立会话中。共享记忆总线把记忆读写作为统一服务,减少反复整理上下文的操作,并保留事实来自哪里。

记忆如何进入与离开系统

流程拆解

让多个 AI 工具读写同一份项目记忆

通过 MCP 连接客户端,写入与查询分别路由;原始事件、检索索引与可阅读视图各自承担明确职责。

上下文返回客户端写入查询01AI 客户端CODEX / CLAUDE / MCP02服务路由RETRIEVAL / BRIDGE / MGMT03持久化事件JSONL / LOCAL STORE04混合检索BM25 / EMBEDDINGS05生命周期WORKING → ARCHIVE06上下文返回CONTEXT / MARKDOWN
01 / 06

AI 客户端

Codex、Claude Code 与其他 MCP 客户端通过共享工具接口读取项目事实和经验。

输入
当前任务与检索请求
输出
MCP 工具调用

默认本地检索;配置远程 embedding 时,文本会发送到对应服务。

三种数据形态

数据形态职责使用方式
JSONL 事件持久记录记忆变化追踪来源和变更历史
本地索引为记忆提供检索入口BM25 与本地向量混合查找
Markdown可阅读的派生视图在编辑器或 Obsidian 中回看

Obsidian 是可选的阅读入口。检索、桥接、整理和管理分别由对应服务承担,客户端通过 MCP 访问所需能力。

五层记忆生命周期

Working、Session、Project、Shared、Archive 分别承载工作上下文、会话记忆、项目知识、跨项目共享与归档。整理过程需要保留事实来源,避免把临时假设提升为长期确定结论。

本地与远程的边界

默认检索结合 BM25 与本地哈希 embedding。配置远程 embedding 后,相应文本会发送给所选服务,因此部署时需要明确处理范围与数据边界。

项目作为开源技术资产保留,功能、部署与远程 embedding 配置见 公开仓库。