工作原理
brain update-truth 原子性地重写 compiled_truth,并追加一条 timeline 记录。brain/,一上来就已经掌握全部背景。↺ 下一个任务本身就是一次新对话——它会先读大脑,让循环重新开始。
为什么是 BRAIN.md
README.md 面向人类。
AGENTS.md 告诉 AI 如何在仓库里干活。
但两者都不记录你 为什么 这样决策——
那正是项目大脑的职责:把那些你每次开新对话都要重新解释一遍的决策,一次性存下来。
项目大脑存储的是决策级知识——
经过审查、结构化,权威到足以指导后续推理和代码生成的结论。
它住在 brain/ 文件夹里,随仓库一起交付。
项目根目录的 BRAIN.md 是协议入口:
任何读到它的编码代理都知道怎么使用这个项目大脑。
不需要运行时服务,也不需要 MCP 服务器——只有普通文件约定加一个零依赖 CLI。
| 文件 | 读者 | 用途 |
|---|---|---|
| README.md | 人类 | 快速开始、贡献指南 |
| AGENTS.md | AI 编码代理 | 如何在这个代码库中工作 |
| BRAIN.md | 任何编码代理 | 协议入口:如何读写项目大脑 |
| brain/ | AI 推理代理 + 人类 | 决策、权衡和理由,可直接服务后续代理 |
结构
六个固定根页面覆盖项目级视角:背景、架构、
流程、思维导图、技术栈和路线图。它们只会被更新,不会被重复创建,
也不携带 timeline——历史由 git 负责。可以用
mermaid 图让内容更直观。
pages/*.md 是细粒度、可安全追加的知识单元,
归属于五类之一:decision、
concept、project、
person、reference。
每个页面同时记录当前最佳理解(compiled_truth)
和完整证据链(timeline)。
页面格式
pages/ 中的每个页面都有两个部分。
compiled_truth 是当前的权威答案——
随着认知演进,可以自由重写。
timeline 是只追加的证据记录。
当结论改变时,update-truth
会原子地重写 compiled_truth,并追加一条
decision 记录。旧结论仍保留在历史中。
Timeline 条目类型包括:decision、
evidence、
reversal、
note。重写 compiled_truth
和追加对应的 decision 条目在一次原子写入中完成;
两件事不能只做其中一件。
交叉引用使用 wiki-link 语法
[[page-id]],
其中 page-id 必须与 frontmatter 的 id 字段完全匹配。
运行 brain lint-links 可验证每个链接都能解析。
特性
# 零运行时依赖
$ npm i -g @mindmux/brain-md
精简 CLI — 纯 Node,无依赖
brain CLI 零运行时依赖——无需服务、无需 MCP 服务器、无需守护进程。项目大脑本身就是仓库里的普通 Markdown。↳ 重写 compiled_truth
↳ 追加 timeline 条目
在一次原子写入中完成
brain CLI。格式错误的 frontmatter 和无追踪记录的 truth 重写在结构上不可发生——根本不需要跑验证器。a3f1c4b decision: chose postgres
8d22e01 reversal: dropped redis
f90b3aa evidence: p99 spike
…
[[db-choice]]
[[auth-strategy]]
$ brain lint-links ✓
[[page-id]] 语法互相链接。ID 与 frontmatter 完全匹配,lint-links 会确认每个引用都能解析。Use PostgreSQL. ✓ reviewed
不是原始笔记堆砌
不是向量索引
只存权威决策
Pi · OpenCode
4 个可安装技能,
跨代理共享
BRAIN.md 使用项目大脑。没有厂商锁定。开始使用
安装一次、初始化项目,然后继续写代码。Agent 会读 BRAIN.md,并通过 brain CLI 读写项目大脑——你不需要手改这些文件。
brain-bootstrap 技能 — 不是 shell 命令。已有仓库 → 从代码 / 文档 /
git log 起草空项目 → 通过访谈收集
$ brain update-root architecture
$ brain create-page --id config-as-markdown --category decision …
✓ 根页面与关键决策已写入
我们选了 Markdown,方便 diff、零迁移。这是当初的决定和权衡…
常见问题
BRAIN.md 是什么?
BRAIN.md 是一种在仓库中存储项目知识的普通文件约定。它为代理和人类提供一个可预测的位置,用来查找决策、理由、约束和当前项目上下文。
BRAIN.md 与 README.md 或 AGENTS.md 有什么不同?
README.md 通常说明如何理解或使用一个项目。AGENTS.md 通常告诉编码代理如何在仓库中工作。BRAIN.md 指向项目大脑:关于决策原因、当前事实和未来工作上下文的结构化知识。
BRAIN.md 与 MCP 有什么不同?
MCP 是把工具和上下文提供方连接到 AI 应用的协议集成层。BRAIN.md 不是运行时协议,而是仓库本地的 Markdown 约定加一个小型 CLI,让项目知识保持可读、可审查,并由 git 版本化。
为什么要分离 compiled_truth 和 timeline?
compiled_truth 记录某个主题当前最可靠的理解。timeline 记录形成该理解的证据、决策、反转和备注。二者分离后,代理可以快速读取当前答案,同时在需要审计时保留推理历史。
目前支持哪些 Agent 平台?
技能可安装到 Claude Code、Codex、Cursor、Pi 和 OpenCode。任何能读取文件的代理都可以通过 BRAIN.md 使用项目大脑。
setup 或 init 会装上 Claude Code 的 SessionStart hook 吗?
不会。brain setup 和 brain init 都不会写入 .claude/settings.json。init 之后可在项目根目录可选执行 brain install-hooks,仅作用于当前项目:SessionStart 时注入一份精简的 brain list-pages。撤销用 brain uninstall-hooks。