mcpField
R
RCLL

RCLL

本地服务
rcll.ai记忆与知识09 周前更新

关于 RCLL

RCLL 是面向 AI Agent 团队的可自托管共享记忆系统,在基于 Hindsight 的存储上加入主题房间和分层记忆。记忆读取路径不会调用大模型;项目包含独立 MCP 服务,但尚无打包发布版本。

主要功能

  1. 01按主题划分房间并为知识分类
  2. 02四级记忆优先层级
  3. 03无需大模型的关键词分类
  4. 04带来源指针的压缩摘要
  5. 05跨存储区记忆桥接

适用场景

  1. 01按项目主题隔离 Agent 记忆
  2. 02仅检索高优先级或指定类型的记忆
  3. 03将累积事实压缩为摘要
  4. 04在不同 Agent 存储区间共享相关记忆

MCP 相关

独立的 stdio MCP 服务提供五种工具,用于保存、读取、反思、压缩和桥接记忆。`memory_recall` 工具不会调用模型。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"ai-rcll-fleet-memory": {
"command": "npx",
"args": [
"-y",
"fleet-memory-mcp"
],
"env": {
"FLEET_URL": "<FLEET_URL>",
"FLEET_BANK": "<FLEET_BANK>"
}
}
}
}
启动命令npx -y fleet-memory-mcp
需要配置的环境变量
FLEET_URLBase URL of the fleet-memory backend (self-hosted). Defaults to http://127.0.0.1:5100. The pre-rebrand name HINDSIGHT_URL is still read as a fallback.
FLEET_BANKDefault memory bank ID for retain/recall. The pre-rebrand variable MEMPALACE_BANK is still read as a fallback. Migrating from hindsight-mempalace-mcp? Set this to mempalace-main to keep reading your existing bank; see mcp-server/README.md.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmfleet-memory-mcp0.1.0

工具

5

收录的工具列表 · 更新于 2 周前

参数类型必填说明
hallenum否知识类型(省略时自动分类)fact | event | decision | preference | discovery | procedure | warning
roomstring否主题房间(省略时自动分类)
tagsarray否用于分类的标签
textstring是要记忆的文本——事实、观察或文档内容
layerenum否优先级层级(默认:L2)L0 | L1 | L2 | L3
bank_idstring否记忆库 ID(默认值:fleet-main)
contextstring否上下文标签(例如 "meeting notes"、"client call")
document_idstring否用于归组相关事实的文档 ID

详细介绍

RCLL

为一组 AI Agent 提供可自托管的共享记忆。一个系统,兼具存储与结构。

RCLL — 面向 Agent 集群的团队记忆。基于 Hindsight(github.com/vectorize-io/hindsight,MIT)构建。

重要

你正在查看一个只读镜像。 权威仓库位于 godcrm.ai/git/holetron-lab/fleet-memory — 可自托管、公开,且无需链路上任何环节的账号即可匿名克隆。这里的所有内容 都从那里推送过来,因此在 GitHub 上执行的合并会在下一次同步时被覆盖,通常在一小时内。 问题和星标归属于这里,并会在这里查看。也欢迎在这里提交拉取请求 — 它会在权威仓库一侧合并,并在下一次 同步时回到这里。

RCLL 是 vectorize-io/hindsight(MIT)的分支。它保留了 Hindsight 的存储引擎,并添加了房间 — 在一个共享存储上按主题划分范围,这强调的是选择性,而非隔离 — 以及分层深度模型(L0–L3)。房间/大厅/层级这套分类法是分层记忆领域的既有成果;这里的实现则由我们自行开发。

RCLL 是 recall 去掉元音后的写法 — 这是集群中的每个 Agent 在执行任何其他操作前都会进行的操作。该工具的名称就是 memory_recall;产品也因此操作而得名。

值得记住的一项结构特性是:读取路径永远不会调用大模型。 一次召回消耗 CPU,但不消耗任何模型令牌 — 详见架构。

状态

源代码公开,采用 MIT 许可证。目前尚无打包发行版:fleet-memory-mcp 尚未发布到 npm,也没有推送容器镜像。如今运行 RCLL 需要基于此代码树构建,下面的快速入门便是如此。请不要将安装命令说成可用,除非 rcll.ai 已经提供了相关命令。

网站、实测数据rcll.ai · 基准测试
为 AI Agent 而非人类撰写rcll.ai/agents.md
我们从上游分支的位置,以及如何获取下一个版本FORK.md
架构规范RCLL.md

工作原理

┌──────────────────────────────────────────────────────┐
│                         RCLL                         │
│                                                      │
│  ┌─── Room: auth ───┐  ┌─── Room: pipeline ──┐       │
│  │ Hall: facts      │  │ Hall: decisions     │       │
│  │ Hall: procedures │  │ Hall: events        │       │
│  │ Hall: warnings   │  │ Hall: facts         │       │
│  │                  │  │                     │       │
│  │  L0 ████ always  │  │  L0 ████ always     │       │
│  │  L1 ███░ warm    │  │  L1 ███░ warm       │       │
│  │  L2 ██░░ cold    │  │  L2 ██░░ cold       │       │
│  │  L3 █░░░ archive │  │  L3 █░░░ archive    │       │
│  └──────────────────┘  └─────────────────────┘       │
│           │                      │                   │
│           └──── Tunnel ──────────┘                   │
│                (cross-bank bridge)                   │
│                                                      │
│  Closets: compressed summaries + source pointers     │
└──────────────────────┬───────────────────────────────┘
                       │
              Hindsight vector store
              (embeddings + semantic search)

房间 — 按主题隔离。认证、流水线、基础设施、架构 — 每个主题各自拥有一个房间。搜索认证信息的 Agent 不必在 500 条部署记忆中翻找。

大厅 — 在房间内对知识进行类型划分。事实、事件、决策、流程、警告。系统在读取前就知道自己要查看什么 — 就像记忆的 Content-Type。

L0–L3 层级 — 四个优先级层级。L0(核心)始终加载。L3(归档)仅通过深度搜索访问。类似 CPU 缓存层级:L1 快速且容量小,RAM 较慢但能容纳所有内容。

储藏室 — 由 AI 压缩的摘要,并附带来源指针。在知识层面进行去重:10 条相关事实 → 1 段文字 + 引用。

隧道 — Agent 之间跨存储区的桥梁。Agent A 发现一条见解 — Agent B 通过隧道即可看到,无需重复数据。

此分支新增内容

以下列出的是相较于我们的分支起点新增的内容(d054b884,2026 年 4 月),并非声称上游 Hindsight 当前的功能。自我们分支以来,上游已发布约 1,700 次提交和 4 个小版本;请假设下文提到的所有内容在上游都已有对应方案,只是我们尚未评估。将此处内容视为对比之前,请先阅读 FORK.md。

此处新增内容
Rooms每次写入和读取都进行主题范围限定——用于筛选,而非隔离
Halls在 room 内对知识进行类型标注(事实、事件、决策、流程、警告)
Layers L0–L3持久性层级;始终召回 L0,仅通过深度搜索查找 L3
Classification基于关键词,耗时不到 1 毫秒,不调用大模型——分类体系不消耗任何 token
Closets按 room + hall 生成压缩摘要,并附带指向来源的指针
Tunnels跨存储库桥接
MCP server独立服务,通过 MCP 暴露 5 个工具

所有新增内容都是增量式的:截至我们的分支起点,上游 /retain 和 /recall 的契约仍可原样使用,所有新增参数都是可选的。

测量结果

我们在公开的 LoCoMo 数据集上使用自有模型评估了检索质量,采用的是第三方测试工具,而非我们自己编写的工具。完整的方法、表现较差的方案和注意事项见:rcll.ai/docs/benchmarks/。

配置nDCG@10相较 BM25
BM250.3885基线
vector0.4244+0.036
hybrid fusion0.4722+0.084
hybrid fusion + reranker(默认)0.5862+0.198

这是检索质量,不是答案准确率。 它无法与“LoCoMo 上达到 77%”这类数据相比较;后者是在存储库之上使用阅读器和评判器进行测量的。我们没有公布准确率数据,因为我们尚未运行阅读器和评判器。

基准测试页面也列出了对我们不利的两项结果,并未将其隐去:对于多跳问题,我们的默认融合方案不如 vector-plus-reranker;对于单跳问题,单独使用 BM25 优于稠密检索。

无 GPU 时的 CPU 延迟:搜索约 0.29 秒;包括交叉编码器重排序器时约 3.0 秒。重排序器占用 85% 的时间,也是我们能测得的单项最大质量提升来源。

快速开始

git clone https://github.com/holetron-lab/fleet-memory.git
cd rcll
cp .env.example .env
# edit .env with your config
docker compose -f docker-compose.rcll.yml up -d

此操作会根据此代码树构建镜像——目前没有已发布的镜像可供拉取,因此首次运行会进行编译,速度较慢。随后 API 会在 http://localhost:5100 上监听。

针对截至我们的分支起点的上游 Hindsight API 编写的客户端仍可继续使用——新增参数均为可选参数。但它不能直接替代当前的上游 Hindsight;上游已领先此分支好几个版本。

嵌入

内置 BAAI/bge-small-en-v1.5(384 维)——速度快,适合 CPU,且已打包到镜像中,因此首次运行无需从网络下载。该模型针对英语进行了优化;用于其他语言时,召回质量会下降。

对于多语言记忆(例如俄语、多文字体系),请改用多语言模型:

HINDSIGHT_API_EMBEDDINGS_LOCAL_MODEL=BAAI/bge-m3   # 1024-dim, multilingual

维度会自动检测。⚠️ 切换模型会改变向量维度——请在空的记忆存储库中进行切换,或先清空并重新嵌入,因为不同维度的现有向量无法混用。

不使用 LLM 密钥运行

LLM_PROVIDER=none 是受支持的配置,但这会提供功能更精简的产品,并非免费获得相同功能:retain 会降级为分块模式——整块存储并嵌入,不进行事实提取、实体解析或因果链接,同时关闭整合和反思功能。你会得到一个混合向量与词法的分块存储库。读取不受影响,因为读取本来就不会调用模型。请有意选择此配置,或将提取功能指向本地模型——不要因为某个字段留空而意外进入此模式。

MCP 服务

mcp-server/ 目录包含一个通过 stdio 运行的独立 MCP 服务。

截至 2026-08-24,针对实时后端实际验证的内容:协议版本 2025-06-18;initialize、tools/list 和 tools/call 均可完成往返;memory_recall 会返回真实结果。这是在 stdio 上直接运行的协议级检查,不代表逐个客户端的兼容性矩阵。

因此,任何支持通过 stdio 使用 MCP 的客户端都应该可以运行,但我们并未逐一测试。 下方列出的是我们自己使用的配置(Claude Code),除此之外没有其他配置。如果你成功在 其他客户端上运行,欢迎通过 PR 补充本节。

工具
工具描述
memory_retain保存记忆,并自动分类到房间/大厅
memory_recall按房间/大厅/层级筛选的范围语义搜索
memory_reflect深度推理——综合事实、发现模式并给出带引用的回答
memory_compress根据累积的事实创建壁橱摘要
memory_bridge在相关记忆之间创建跨库隧道

在这五个工具中,只有 memory_recall 不会调用模型。memory_reflect 是一个会重复调用大模型的 Agent 循环——如果要将此服务开放给不可信对象,请仅开放 memory_recall。

在规划上下文用量前,值得了解一点:后端将 recall 中的 limit 视为检索提示,而非结果上限——它会返回自身令牌预算内的全部内容,大约 110 条事实。MCP 层会在返回结果时执行你的 limit,因此 limit: 2 的 recall 大约消耗 1 KB,而不是 43 KB。Recall 不会消耗模型调用,但会占用上下文。

设置
cd mcp-server
npm install
FLEET_URL=http://localhost:5100 node server.js
Claude Code 配置

添加到 ~/.claude/mcp.json:

{
  "mcpServers": {
    "rcll": {
      "command": "node",
      "args": ["/path/to/mcp-server/server.js"],
      "env": {
        "FLEET_URL": "http://localhost:5100",
        "FLEET_BANK": "my-agent-bank"
      }
    }
  }
}

从旧包名升级?HINDSIGHT_URL 和旧版 bank 变量仍会作为回退选项读取,因此现有配置仍可正常使用——启动时只会显示弃用通知。

完整文档和环境变量请参阅 mcp-server/README.md。

上游 API 变更

在我们的分支点,上游基础 /retain 和 /recall 端点保持向后兼容。新增参数均为可选。

新增参数
端点参数类型描述
/retainroomstring主题房间(省略时自动分类)
/retainhallstring知识类型(省略时自动分类)
/retainlayerint优先级 0-3(默认值:2)
/recallroomstring将 recall 筛选到特定房间
/recallhallstring将 recall 筛选到特定大厅
/recallmax_layerint搜索的最大层级深度
新增端点
方法端点描述
POST/bridge创建跨库记忆桥接
GET/tunnels列出现有隧道
POST/tunnels在不同库之间创建隧道
GET/closets列出压缩后的记忆摘要
POST/closets将 L3 记忆压缩到壁橱中

房间/大厅分类体系

房间(主题)

auth · pipeline · infrastructure · deployment · schema · api · ui · tax · hr · legal · compliance · monitoring · agent · general

大厅(知识类型)

warning · decision · procedure · event · preference · discovery · fact

层级
层级名称行为
L0关键始终召回
L1重要默认召回
L2普通标准(新记忆的默认层级)
L3归档仅深度搜索时使用,压缩到壁橱中

自动分类

RCLL 包含一个基于关键词的分类器(room_hall_classifier.py),在未提供房间和大厅时会自动分配。无需调用大模型——分类即时完成且免费。

可扩展:向 ROOM_KEYWORDS / HALL_KEYWORDS 字典中添加关键词。

示例

存储一条记忆
curl -X POST http://localhost:5100/retain \
  -H "Content-Type: application/json" \
  -d '{
    "bank": "project-alpha",
    "text": "Never restart PROD without confirming staging works first.",
    "room": "deployment",
    "hall": "warning",
    "layer": 0
  }'
限定范围的回忆
curl -X POST http://localhost:5100/recall \
  -H "Content-Type: application/json" \
  -d '{
    "bank": "project-alpha",
    "query": "deployment safety rules",
    "room": "deployment",
    "hall": "warning",
    "max_layer": 1
  }'
跨知识库桥接
curl -X POST http://localhost:5100/bridge \
  -H "Content-Type: application/json" \
  -d '{
    "source_bank": "project-alpha",
    "target_bank": "project-beta",
    "room": "infrastructure",
    "hall": "procedure"
  }'

已知限制

如实列出这些限制,并保留在此处,而不只放在网站上:

  • 目前还无法导出你的记忆。 上游的 export 命令会生成知识库 模板——配置、心智模型、指令——但不包含任何已存储内容。完整导出应包含房间、大厅、层级和链接图谱,这是我们的首要事项,因为对于可自托管的存储,缺少这一功能不可接受。
  • 没有准确率基准测试。 检索质量有衡量并公开,但尚未进行读取与判定测试。
  • 对抗性问题/无法回答的问题——正确答案应为“我不知道”——不在我们报告的检索指标覆盖范围内,而且这类问题最可能让我们难堪。
  • 之后切换 MEMORY_MODE 不会迁移你已经存储的内容。 请在积累内容之前做好选择。

我们做了哪些改动

在 Hindsight 的向量存储之上添加了分类体系层,并加入独立的 MCP 服务。

主要新增内容:

  • room_hall_classifier.py — 基于关键词的分类体系引擎(新增)
  • aa1_add_room_hall_to_memory_units.py — 数据库迁移:从扁平结构转为层级结构,添加 room/hall 和 layer 列(新增)
  • mcp-server/ — 包含 5 个工具的独立 MCP 服务(新增)
  • 存储层 — 每次写入都会添加 room/hall/layer 元数据
  • 检索 — 按房间范围搜索,并按大厅筛选
  • 压缩 — 生成带有来源链接的壁橱
  • 隧道 — 跨知识库记忆共享协议

完整架构规范:RCLL.md。分提交记录的分支说明:FORK.md。

上游

此分支基于 d054b884,其改动以一系列易读的提交叠加在该提交之上,因此引入新的上游版本时只需变基,无需费力挖掘:

git remote add upstream https://github.com/vectorize-io/hindsight.git
git fetch upstream --tags
git rebase --onto <upstream-tag> d054b884 main

预计会遇到实际冲突:房间相关改动涉及上游改写最多的相同引擎文件。FORK.md 列出了相关文件及原因。

致谢

  • vectorize-io 开发的 Hindsight — 记忆存储引擎
  • Holetron — 分支维护者、MCP 服务和集成

许可证

MIT — 与上游 Hindsight 相同。请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。