开放大脑
图形结构的MCP存储器。 LongMemEval基线为37.2% --大多数内存系统不会发布基准测试。
用于MCP客户端(Claude、ChatGPT、任何讲MCP的助手)的自托管内存服务器。思想从电报、管道或直接捕获中流入,并落在纽曼IDF加权实体图中,而不是平面文档存储中。一个自动化的Dream循环在后台运行:重复数据删除、跟踪主题漂移、跨集群综合见解以及归档过时内容。17个MCP工具。PostgreSQL+pgvector。你拥有自己的数据。
运作原理
flowchart LR
TG[Telegram Message] --> TGBot[telegram-bot\nEdge Function]
MCP[AI Client\nClaude/ChatGPT] --> MCPServer[open-brain-mcp\nEdge Function]
Pipeline[RSS/HF Papers/\nEmergent Mind] --> RunPipeline[run-pipeline\nEdge Function]
TGBot --> OR1[OpenRouter\nEmbedding + Metadata]
MCPServer --> OR2[OpenRouter\nEmbedding + Search]
RunPipeline --> OR3[OpenRouter\nTriage + Embed]
OR1 --> DB[(Postgres\n+ pgvector)]
OR2 --> DB
OR3 --> DB
MCPServer --> DB
TGBot --> TGReply[Telegram Reply\nwith Metadata]捕获路径
当你向Telegram机器人发送消息时 电报机器人 边缘功能通过webhook获取它。它并行地将消息发送到OpenRouter,用于两件事:生成向量嵌入(意义的数字表示)和提取元数据,如主题、提到的人、动作项、主题、质量分数和命名实体。该想法会被检查是否存在语义重复,并存储在您的数据库中,与相关想法自动链接连接,机器人会回复它捕获的内容摘要。
管道路径
这 运行管道 Edge功能会自动从RSS提要(人工智能通讯)、Hugging Face日报和Emergent Mind(热门arXiv论文)中获取想法。对每个项目进行相关性分类、嵌入、重复数据消除和存储。通过GitHub Actions(Supabase部署)或内置的cron容器(Docker部署)按计划运行。
检索路径
任何通过MCP(模型上下文协议)连接的AI客户端都可以使用语义搜索按意义搜索你的想法,按过滤器(类型、主题、人、时间)浏览,获取汇总统计数据,或请求每周对主题进行审查。这 开放脑mcp 边缘功能处理这些请求,并使用您的个人访问密钥进行身份验证。
知识图谱
每一个想法都会通过向量相似性自动链接到相关的想法。相似度超过0.80的连接被LLM分类为类型关系(扩展、矛盾、证明、取代)。命名实体(人员、工具、项目、组织)被提取并解析为共享实体图。共现边缘跟踪随着时间的推移哪些想法被一起检索,加强基于实际使用模式的联系。
存储
一切都存在于Postgres中,使用pgvector进行快速相似性搜索。思想与其嵌入(1536维向量)、元数据、类型化连接和实体引用一起存储。您可以使用Docker Compose在Supabase(托管主机)或自主机上进行部署。
部署选项
选择你想如何运行Open Brain:
| Supabase(托管) | Docker Compose(自托管) | |
|---|---|---|
| 设置 | 链接项目+运行脚本 | cp .env.example .env + ./start.sh |
| 基础设施 | 由Supabase管理 | 在您的计算机/服务器上运行 |
| 调度 | GitHub操作 | 内置cron容器 |
| 成本 | Supabase免费套餐+OpenRouter | 仅限OpenRouter |
| 指南 | 继续下面 |
Supabase部署
先决条件
- Supabase账户 --Supabase是一个托管的Postgres数据库,具有内置API、身份验证和边缘函数(无服务器代码)。在以下网址创建免费帐户 网站 supabase.com.创建一个新项目--您将需要 项目Url (看起来像
https://abcdef.supabase.co)以及 服务角色密钥 (在“设置”>“API”下找到一个长字符串)。
- Supabase命令行界面 --用于管理Supabase项目的命令行工具(应用数据库迁移、部署函数、设置机密)。
npm install -g supabase- OpenRouter帐户 --OpenRouter将请求路由到AI模型。它在这里用于生成嵌入(思想的矢量表示)和提取元数据。在以下网址创建帐户 openrouter.ai 并从仪表板生成API密钥。
- 电报机器人 (推荐)——在旅途中捕捉想法的主要方式。通过以下方式创建机器人 @植物学家 在Telegram上运行安装脚本(见下文)。如果您只想访问MCP,可以跳过此步骤。
快速开始
1.克隆存储库
git clone https://github.com/YOUR_USERNAME/open_brain.git
cd open_brain2.链接您的Supabase项目
cd supabase
supabase link --project-ref YOUR_PROJECT_REF
cd ..提示: 您的项目参考是您的Supabase URL中的子域。如果您的URL是https://abcdef.supabase.co,您的项目参考号为abcdef.
3.运行引导程序
./scripts/bootstrap.shBootstrap引导您设置环境。它提示每个秘密(Subabase URL、服务角色密钥、OpenRouter API密钥、Telegram令牌等),自动生成加密MCP访问密钥,并将所有内容写入 .env.local如果你已经有了 .env.local,它将显示您现有的值,并允许您更新特定的值。
4.运行部署
./scripts/deploy.shDeploy应用数据库模式(创建带有向量搜索索引的思想表),将您的秘密上传到Supabase,并部署所有边缘功能。它显示了每个操作完成时的分步检查表。最后,它会打印您的MCP连接URL和一个准备粘贴的Claude Code命令。
5.运行验证
./scripts/validate.shValidate对您的实时部署运行8次检查,以确认一切正常:数据库访问、RPC功能、边缘功能可达性、身份验证、思想捕获、语义搜索和思想列表。它打印了一份检查表,其中包含每次检查的通过/失败以及最终总结。
设置Telegram机器人(可选)
通过以下方式创建机器人 @植物学家 在Telegram上,然后运行安装脚本:
./scripts/setup-telegram.sh YOUR_BOT_TOKEN该脚本验证您的令牌,注册webhook,设置命令自动补全,并打印要配置的env变量和机密。按照打印的说明完成设置。
连接您的AI客户端
部署后,连接您的AI客户端以开始使用Open Brain。您需要两个值:
- MCP端点URL:
https://YOUR_REF.supabase.co/functions/v1/open-brain-mcp/mcp(Supabase)或http://localhost:80/functions/v1/open-brain-mcp(Docker) - MCP访问密钥: 设置过程中生成的密钥(存储在
.env.local或Docker.env)
提示: 部署脚本(Supabase)或启动脚本(Docker)会打印出与您填写的值完全一致的连接命令。
克劳德代码(CLI——推荐)
claude mcp add --transport http --header "x-brain-key: YOUR_MCP_KEY" open-brain https://YOUR_REF.supabase.co/functions/v1/open-brain-mcp/mcp这将Open Brain注册为MCP服务器,Claude Code可以在任何对话中使用。替换 YOUR_MCP_KEY 和 YOUR_REF 与你的实际价值观。
克劳德代码(project.mcp.json)
将此添加到 .mcp.json 在项目根目录中创建文件,与团队共享连接:
{
"mcpServers": {
"open-brain": {
"type": "http",
"url": "https://YOUR_REF.supabase.co/functions/v1/open-brain-mcp/mcp",
"headers": {
"x-brain-key": "${MCP_ACCESS_KEY}"
}
}
}
}注: 这${MCP_ACCESS_KEY}语法使用环境变量扩展,因此您的键不受版本控制。设置MCP_ACCESS_KEY使用此配置的每台机器上的环境变量。
克劳德桌面版
Claude Desktop不支持通过配置文件远程MCP服务器。相反:
- 打开 克劳德桌面版 > 设置 > 连接器
- 点击 添加新连接器
- 输入MCP端点URL:
https://YOUR_REF.supabase.co/functions/v1/open-brain-mcp/mcp - 配置
x-brain-key带有MCP访问密钥的身份验证标头
ChatGPT(专业版/团队版/企业版/教育版)
- 首选 设置 > 连接器 > 高级 > 开发者模式
- 添加MCP服务器URL:
https://YOUR_REF.supabase.co/functions/v1/open-brain-mcp/mcp - 配置
x-brain-key带有MCP访问密钥的身份验证标头
使用示例
电报捕获
向您的机器人发送任何消息,Open Brain会自动处理:
You: Just had a great meeting with Sarah about the Q3 product roadmap.
She wants to prioritize the mobile app redesign.
Bot: Captured!
Type: meeting_note
Theme: personal
Topics: q3-roadmap, mobile-app-redesign
Quality: 0.7
People: Sarah
Action items: Prioritize mobile app redesign
Why: Records a product strategy decision with clear ownership
Related: "Product planning session notes..." (82% similar)每条消息都被嵌入为一个向量,用提取的元数据进行丰富,检查重复项,自动链接到相关想法,并将实体解析为知识图。
语义搜索
让任何连接的AI客户端搜索你的大脑:
You: Search my brain for anything about product roadmap discussions
Claude: I found 3 relevant thoughts:
1. (0.89 similarity) Meeting with Sarah about Q3 product roadmap...
2. (0.82 similarity) Product planning session notes...
3. (0.76 similarity) Quarterly goals discussion...语义搜索通过意义找到想法——即使你使用了不同的单词。询问“产品规划”会发现关于“路线图讨论”的想法,因为它们的含义是相似的。
每周回顾
获取人工智能生成的您最近思考的摘要:
You: Give me a weekly review of my recent thoughts
Claude: Here's your weekly review:
Themes: Product planning, team meetings, technical architecture
Open loops: Mobile redesign decision pending, API migration timeline
Connections: Sarah mentioned in 3 meetings this week, all about mobile每周回顾分析过去7天的想法,并综合主题、开放循环、想法之间的联系以及你思维中的差距。
可用工具
| 工具 | 说明 |
|---|---|
search_thoughts | 语义搜索,可选图扩展(1步遍历) |
list_thoughts | 浏览按类型、主题、人物、主题、质量、时间筛选的想法 |
thought_stats | 汇总统计数据:计数、类型/主题细分、热门话题/人数 |
capture_thought | 从任何AI客户端保存新想法(具有自动嵌入功能) |
get_connections | 从思想中遍历图(类型化链接:扩展、矛盾等) |
list_entities | 按频率浏览提取的实体(人员、工具、项目、组织) |
weekly_review | AI生成的主题、开放循环和下一步的摘要 |
analyze | 图形分析:中心、密度、来源、共现、主题 |
dedup_review | 具有相似区域直方图的重复候选 |
refresh_salience | 重新计算所有显著性得分 |
update_thought | 重写内容(重新嵌入、重新提取元数据) |
delete_thought | 永久删除(级联连接) |
serendipity_digest | 重拾被遗忘的高质量思想 |
pipeline | 管道监控:运行状况、运行历史、合并审核 |
review_stale | 审查过时的候选人并采取行动 |
migration_guide | 从其他平台导入内存的说明 |
看 docs/cookbook.md 详细的使用模式、工具组合和不明显的行为。
技能(Claude代码工作流)
开放大脑包括 克劳德代码 技能——结构化的多阶段工作流程,将上述MCP工具组合成更高层次的分析。技能是自动发现的 .claude/skills/ 并作为斜线命令调用。
| 技能 | 它做什么 |
|---|---|
/discover | 在最近的想法中逐步发现模式。基于之前的报告(进化/新/阶段分类),派遣并行研究代理,与项目优先级相关。 |
/pulse | 管道和数据健康报告。9个并行MCP调用,量规评分(绿色/黄色/红色),用于随时间跟踪结果的交叉运行记忆,6个交叉度量模式检测器。 |
/brain-health | 知识图谱健康报告。12个并行MCP调用,涵盖主题关注、图形密度、中心健康、共现对齐、去重压力、合成输出和实体景观。 |
看 docs/skills/README.md 详细说明和用法。
自动化维护
Open Brain运行后台维护以保持知识图谱的健康。这些作业会自动运行——通过GitHub Actions(Supabase部署)或内置的cron容器(Docker部署)。
| 工作 | 频率 | 目的 |
|---|---|---|
| RSS/HF论文/紧急思维摄入 | 每天2次 | 从配置的资源中吸收想法 |
| 管道监测 | 每天2次 | 通过Telegram进行健康检查,并在故障时发出警报 |
| 梦想破灭 | 每天2次 | 合并几乎重复的想法(自动合并相似度>0.92,确认0.85-0.92 LLM) |
| 图形分析缓存 | 每日 | 预计算中心、密度和共现分析 |
| 梦想主题 | 每周 | 跟踪主题速度、生命周期转换(新兴/活跃/衰退)、质心漂移 |
| 梦想破灭 | 每周 | 通过分层评分+LLM确认存档陈旧的想法 |
| 梦想合成 | 每周 | 从思想集群中生成跨领域的见解 |
| 共现衰变 | 每周 | 衰减未使用的共生边缘 |
GitHub Actions工作流文件包含在 docs/workflows/ 作为定制时间表的参考。
项目结构
open-brain-server/
supabase/
migrations/ # Database migrations (applied with supabase db push)
functions/
_shared/ # Shared modules (supabase-client, openrouter, types, errors, auto-link, entities, dream-*)
telegram-bot/ # Telegram capture (primary capture path)
open-brain-mcp/ # MCP server (17 tools)
tools/ # Individual tool implementations
run-pipeline/ # Automated RSS/HF Papers/Emergent Mind ingestion
monitor-pipeline/ # Pipeline health monitoring with Telegram alerts
refresh-graph-analysis/ # Graph analysis cache computation
docker/ # Docker Compose self-hosting (6 services)
pipeline/ # Python-based local pipeline (Reddit, RSS, briefing)
scripts/ # Setup and deployment automation
tests/ # Integration tests
docs/
cookbook.md # MCP tool usage patterns and compositions
skills/ # Skill documentation
workflows/ # GitHub Actions reference (scheduling)
writing-a-source.md # Guide for adding pipeline sources
.claude/
skills/ # Claude Code skills (auto-discovered)
discover/ # Incremental pattern discovery
pulse/ # Pipeline health report
brain-health/ # Knowledge graph health report许可证
麻省理工学院
