每个 AI 智能体在每次会话开始时都处于失忆状态。昨天的架构决策、上周的调试突破、三个 sprint 前团队商定的命名约定 — 全部消失。您要么重新解释一遍,要么智能体会搞错。
BHGBrain 解决了这个问题。 它是一个开源的 MCP 服务器,为您的 AI 智能体提供持久、可检索、共享的记忆,可跨会话、工具和团队持久存在。
工作原理
BHGBrain 位于您的 AI 智能体与持久存储层之间。任何兼容 MCP 的客户端 — Claude Code、Codex、OpenClaw、Gemini — 都可连接到 BHGBrain 并访问共享知识库。
AI Agents (Claude / Codex / OpenClaw / Gemini)
→ MCP transport (stdio or HTTP)
→ BHGBrain server
→ Qdrant (semantic vector search)
→ SQLite (metadata, fulltext index, audit log, archive)
当智能体存储一段记忆时,BHGBrain 会通过一条智能流水线处理它:
- 归一化 — 输入在哈希之前会被清理和标准化,提升对改写或重新格式化内容的去重准确性
- 去重 — 使用 SHA-256 内容哈希和余弦相似度(阈值:0.92)与现有记忆进行比对,并提供分层调整的阈值以精确控制
- 决策 — 决定是添加新知识、更新现有条目,还是丢弃重复内容
- 保留分配 — 根据类型、重要性和调用方指定的偏好,将记忆分配至相应保留层级 (T0–T3)
- 存储 — 对已接受的记忆进行嵌入、索引和持久化,并附带影响未来检索排名的重要性分数
当智能体需要上下文时,BHGBrain 通过混合 RRF 检索交付 — 结合语义相似度 (70%) 和全文匹配 (30%),采用 Reciprocal Rank Fusion,权重可配置。智能体获得的是相关记忆,而非整个知识库。
核心能力
- 分层保留 (T0–T3) — 记忆在有价值期间持续存在。T0(基础层)永不过期。T1(机构层)持续一年。T2(运营层)持续 90 天。T3(临时层)持续 30 天。每个层级都有可配置的容量预算 (T1: 100K,T2: 200K,T3: 200K 条目)。
- 滑动窗口 TTL — 每次访问都会重置过期计时。持续被使用的记忆会自动保持存活。
- 自动晋升 — 被访问 5 次以上的记忆会自动晋升至更高一级的保留层级。高价值知识会自我筛选以获得持久性。
- 过期前预警 — 记忆在过期前 7 天被标记,让智能体和操作员有时间在知识丢失前采取行动。
- 删除前归档 — 过期记忆在删除前会被写入归档表。没有任何内容会在没有可恢复记录的情况下被永久清除。
- 混合 RRF 检索 — Reciprocal Rank Fusion 将语义 (70%) 和全文 (30%) 结果合并为单一排名列表。权重可按查询配置。
- 语义去重 — 0.92 阈值的余弦相似度可捕获近似重复。SHA-256 校验和可捕获完全重复。内容归一化在哈希之前运行,因此改写的输入可正确去重。
- 重要性评分 — 每条记忆携带一个 0–1 的重要性分数,直接影响检索结果排名。高重要性记忆优先呈现。
- 分类 / 持久策略槽 — 命名的策略分类(例如
architecture-decisions、coding-standards、security-policies)为应始终可用的机构知识提供持久槽位,不受 TTL 影响。 - 跨智能体共享记忆 — Claude Code 学到您的 API 约定;Codex 在下一次会话中自动获取这些约定。一份记忆,所有智能体,零漂移。
- 记忆分类 — 记忆会自动被分类为情景记忆(事件)、语义记忆(事实)或程序记忆(工作流)。
- 命名空间隔离 — 分离项目、团队或客户,避免交叉污染。全局命名空间用于跨领域的通用标准。
- 集合 — 在命名空间内对相关记忆进行分组(例如
api-design、infrastructure、security)。 - 上下文注入 — 一种特殊的 MCP 资源会在会话开始时交付一个有预算限制的上下文块,使智能体无需手动提示即可基于相关知识开始工作。
- 完整 CLI — 列出、检索、管理分类、运行垃圾回收、创建备份 — 全部可从命令行完成。
默认即企业级就绪
BHGBrain 不是原型。它从第一天起就是为生产环境使用而构建的。
| 能力 | 详情 |
|---|---|
| 身份认证 | 非回环 HTTP 需要 Bearer 令牌。采用失败关闭策略 — 在外部绑定上没有凭据时服务器拒绝启动。 |
| 审计日志 | 每次写入和删除都会记录时间戳、命名空间、客户端 ID 和操作类型。 |
| 密钥扫描 | 记忆在存储前会检查凭据模式。疑似密钥将被拒绝。 |
| 速率限制 | 默认每分钟每客户端 100 个请求。 |
| 优雅降级 | 如果 Qdrant 宕机,读取会回退至 SQLite 全文检索。如果嵌入不可用,服务器会进入降级模式而非崩溃。 |
| 备份与恢复 | 完整的 SQLite + Qdrant 快照,带完整性校验。 |
| 容量预算 | 每层级条目上限 (T1: 100K,T2: 200K,T3: 200K) 防止无限制增长并使存储可预测。 |
| 过期前预警 | 记忆在 TTL 过期前 7 天被标记,以便审查或重新晋升。 |
| 删除前归档 | 过期条目在删除前写入归档表 — 不会静默丢失数据。 |
适用对象
- 运行多智能体工作流的团队 — 当 Claude Code、Codex 和 OpenClaw 都需要共享同一项目知识而不产生漂移时。
- 企业 IT 部门 — 需要 AI 记忆的审计轨迹、身份认证和自托管基础设施的组织。
- 顾问与代理商 — 命名空间隔离可让客户知识保持独立,同时在各项目之间共享内部标准。
- 独立开发者 — 任何 AI 记忆需求已超出单个
MEMORY.md文件承载范围的人。
5 分钟快速开始
1. 启动 Qdrant
docker run -d --name qdrant -p 6333:6333 qdrant/qdrant
2. 安装 BHGBrain
git clone https://github.com/Big-Hat-Group-Inc/BHGBrain.git
cd BHGBrain && npm install && npm run build
3. 设置 API 密钥并运行
export OPENAI_API_KEY=sk-...
node dist/index.js
4. 连接您的智能体
将 BHGBrain 添加到您的 MCP 客户端配置中 — Claude Desktop、OpenClaw 或任何兼容 MCP 的工具。您的智能体现在可以跨会话 remember 和 recall。
有关详细设置、配置选项和引导式访谈提示,请参阅 GitHub 上的完整文档。
多语言文档
BHGBrain 附带五种语言的完整文档:
| 语言 | README |
|---|---|
| English | github.com/Big-Hat-Group-Inc/BHGBrain |
| 中文 (Mandarin) | README.zh-CN.md |
| Deutsch | README.de.md |
| Français | README.fr.md |
| Español | README.es.md |
📦 GitHub: github.com/Big-Hat-Group-Inc/BHGBrain
📖 深度解读: BHGBrain:为您的 AI 智能体提供共享、持久记忆