逐步编码教程:实现GBrain——Y Combinator的Garry Tan为AI代理构建的自连线记忆层
GBrain是一个开源记忆层,由Y Combinator的Garry Tan构建,用于解决AI代理每次会话从零开始、无记忆的问题。它采用Markdown优先的知识图谱,通过正则表达式推理自动连线,无需LLM调用。本教程将指导你完成安装、创建脑仓库、混合搜索,以及通过MCP连接到Claude Code,全程约20分钟。
您的AI代理虽然智能,但健忘。每个新会话都从零开始——不记得您见过谁、读过什么、上周二的决定。GBrain是为此打造的开源解决方案,由Y Combinator总裁兼CEO Garry Tan构建,用于驱动他自己的OpenClaw和Hermes部署。它是一个Markdown优先、基于Postgres的知识层,能够摄入会议、邮件、推文和笔记,并在其上自动连线一个类型化知识图谱——图谱提取无需任何LLM调用。Garry实际代理背后的生产大脑目前包含146,646个页面、24,585个人、5,339家公司和66个自动定时任务。在它自己的基准测试BrainBench(240页丰富散文语料库)上,GBrain的P@5达到49.1%,R@5达到97.9%,相比同代码库禁用图谱层的版本,P@5领先31.4个百分点。
本教程是一份实操指南。您将本地安装GBrain,导入一个小型笔记文件夹,运行真实搜索,观察知识图谱自我连线,并通过MCP将其连接到Claude Code。全程约20分钟。以下终端输出均来自GBrain v0.38.2.0的实时安装。仓库(MIT许可)位于github.com/garrytan/gbrain。
构建内容
教程结束时,您将拥有:
- 一个本地~/.gbrain/brain.pglite数据库——嵌入式Postgres 17(通过WASM)和pgvector,零服务器配置。
- 一个包含人员、公司和概念Markdown笔记的小型“脑仓库”。
- 一个可工作的混合搜索CLI,结合向量+BM25关键词+倒数排名融合(RRF),默认带有ZeroEntropy重排序器。
- 一个类型化知识图谱(works_at、founded、invested_in、attended、advises、mentions),从笔记中自动提取。
- 一个暴露74个工具的MCP服务器,使Claude Code、Cursor和Windsurf可以直接读写大脑。
前提条件
- macOS或Linux(Windows用户请使用WSL2)。
- 代码编辑器。
- Bun ≥ 1.3.10(GBrain的运行环境)。第1步将安装它。
- 一个嵌入API密钥:ZeroEntropy(默认)、OpenAI或Voyage。没有的话仍可安装并运行关键词搜索,但混合搜索将无结果。
- 可选:Anthropic API密钥,用于搜索时的多查询扩展。
第1步:安装Bun和GBrain
GBrain用TypeScript编写,运行在Bun上。先安装Bun:
curl -fsSL https://bun.sh/install | bash
exec $SHELL
bun --version然后全局安装GBrain:
bun install -g github:garrytan/gbrain
gbrain --version第2步:初始化大脑
gbrain init --pglite会在~/.gbrain/中创建一个本地PGLite数据库。PGLite是完整Postgres编译到WASM——无需服务器,无需Docker,约两秒即可就绪。本教程中我们先推迟嵌入提供者配置,第6步再连接:
gbrain init --pglite --no-embedding第3步:创建小型脑仓库
脑仓库只是一个Markdown文件目录。每个文件遵循GBrain的“编译真理+时间线”模式:顶部为当前最佳理解部分,下方为仅追加的证据轨迹。注意:wikilinks必须使用完整路径(如[[people/alice-chen]]),否则图谱提取器无法解析。
mkdir -p ~/my-brain/people ~/my-brain/companies ~/my-brain/concepts
cd ~/my-brain创建人员页面、公司页面和概念页面。
第4步:导入并连线
gbrain import将整个脑仓库同步到数据库,运行Markdown解析器和正则表达式图谱提取器:
gbrain import --dir ~/my-brain实时输出显示自动链接提取过程。
第5步:探索知识图谱
使用gbrain graph-query和gbrain backlinks查看图谱。这就是向量搜索与结构化检索的区别。“谁在Acme AI工作?”现在是一个一跳类型化边遍历,而不是相似度分数。
第6步:运行搜索
GBrain提供两个搜索动词:gbrain search(仅关键词)和gbrain query(完整混合管道)。配置嵌入提供者并运行混合搜索:
export OPENAI_API_KEY=sk-...
gbrain config set embedding_model openai:text-embedding-3-large
gbrain embed --all
gbrain query "who works on small-model inference?"第7步:通过MCP连接到Claude Code
GBrain通过标准I/O暴露74个MCP工具。规范设置是单个命令:
claude mcp add gbrain -- gbrain serve然后Claude Code即可搜索大脑。Cursor和Windsurf也支持。若要远程访问,使用HTTP模式。
第8步:让大脑自我运行
GBrain配备自动导航循环。gbrain doctor --remediate计算依赖排序的修复计划并自动执行。或作为守护进程运行gbrain autopilot --install。健康大脑两次检查之间休眠60分钟。Minions队列处理壳作业和LLM子代理作业。
整体架构
Markdown仓库是记录系统,GBrain是检索+图谱层,代理通过两者读写,人类可直接编辑任何.md文件,gbrain sync会拾取变更。
下一步
gbrain capture快速记录想法。- 当大脑超出本地限制时迁移到Supabase。
- 摄入真实数据:语音、邮件、日历等。
- 运行基准测试。
- 编写自定义技能。
GBrain的深层理念是:瘦运行时、胖技能,优于胖代理背后的瘦技能。运行时保持小巧;智能存在于决策时代理读取的Markdown文件中。每次对脑仓库的提交都成为代理下次唤醒时的永久上下文。运行时间越长,它越聪明。