ProjectBrain 是一个本地项目认知层,帮助 AI 编程智能体在修改代码前理解项目背景。
它将代码结构事实与人工经验转化为任务范围的制品,供 AI 智能体使用:
- Context Pack:与当前任务相关的文件、符号、流程、风险和人工注释。
- Impact Analysis:某次变更可能影响的文件、符号、调用链、依赖、测试和审查风险。
- Git Diff Impact:基于 Git 变更文件的本地变更影响分析。
- Project Brain:从 Codex 会话中自动提取知识单元,支持人工确认与检索。
ProjectBrain 不是代码搜索 UI,不是通用 RAG 聊天机器人,也不会自动修改代码。
状态
原型 / 本地 MVP。
当前能力:
- CodeGraph SQLite 适配器
- ProjectBrain JSON Schema 模型与校验
- Context Pack 构建器
- Impact Analysis 构建器
- 基于 Git 变更文件的 Git diff 影响分析
- 智能体友好的紧凑输出格式
- 本地经验声明(claim)创作
- JSON 文件本地运行时
- 本地 stdio MCP 服务器
- Project Brain 知识单元存储与管理
- 可选 FastAPI API 与暗色系 Brain Explorer UI
- 合成公开演示数据
examples/payment-mini/
快速上手
使用 Homebrew 安装:
brew tap yinshaojun001/projectbrain https://github.com/yinshaojun001/projectbrain
brew trust yinshaojun001/projectbrain
brew install projectbrain
projectbrain doctor
codex-brain --help
或从源码安装:
python3 -m venv .venv
.venv/bin/python -m pip install -e .
.venv/bin/projectbrain doctor
运行测试:
python3 -m unittest discover -s tests
与自己的项目配合使用
一条命令初始化项目:
projectbrain --store-root ~/.projectbrain-work setup /path/to/my/project \
--id my_project
setup 会运行 CodeGraph 索引、导入 ProjectBrain 事实、执行 Context Pack 冒烟测试,并提示安装 MCP 服务器到 Codex CLI、Claude Code、Cursor、Trae 等支持的智能体。
生成 Context Pack:
projectbrain context my_project "解释结算入口" --format agent
生成 Impact Analysis:
projectbrain impact my_project "修改结算合约" \
--changed-file src/settlement/SettlementService.java
projectbrain impact-diff my_project "审查暂存变更" --staged --format agent
添加人工经验声明:
projectbrain claim add my_project \
--id exp_checkout \
--applies-to checkout \
--risk high \
--review-state approved \
--claim-type HUMAN_CONFIRMED \
--statement "结账校验变更需要兼容性审查。"
Brain Explorer(知识管理)
启动本地 API 服务后,在浏览器打开:
http://127.0.0.1:8000/ui/projects/<project_id>/brain
可以:
- 浏览已确认的知识单元(按类型分组)
- 审核待确认的 AI 提取候选知识
- 手动添加知识
- 搜索项目知识库
通过 CLI 管理知识:
projectbrain brain propose /path/to/my/project --type constraint --statement "退款手续费需单独入账。"
projectbrain brain candidates /path/to/my/project
projectbrain brain confirm-candidate /path/to/my/project <candidate_id>
codex-brain:带项目记忆的 Codex
codex-brain 以显式子进程方式启动 Codex CLI,并初始化项目本地 Brain 存储:
cd /path/to/my/project
codex-brain
# 冒烟测试:
codex-brain --project . --no-ui --no-extract --codex-command "true"
项目本地 Brain 数据存储在:
<project>/.projectbrain/brain/
knowledge_units.jsonl
memory_candidates.jsonl
conversations.jsonl
可选 FastAPI 服务器
python3 -m venv .venv
.venv/bin/python -m pip install -e '.[api]'
PYTHONPATH=apps/api:packages/adapters:packages/runtime:packages/schema \
.venv/bin/uvicorn projectbrain_api.main:app --reload
访问 http://127.0.0.1:8000/ui/projects 打开暗色系 Brain Explorer UI。
JSON API 路由:
GET /health
POST /api/v1/projects/import
GET /api/v1/projects
POST /api/v1/projects/{project_id}/context-pack
POST /api/v1/projects/{project_id}/impact-analysis
POST /api/v1/projects/{project_id}/impact-analysis/git-diff
GET /api/v1/projects/{project_id}/policy
本地 MCP 服务器
projectbrain --store-root /absolute/path/to/.projectbrain mcp serve
本地 stdio 子进程,不开放网络端口,不上传源码。详见 MCP 使用说明。
在 MCP 工具调用中使用 output_format: "agent" 获取紧凑的智能体友好输出。
本地输出控制,在项目根目录添加 .projectbrain-policy.json:
{
"deny_paths": ["private/**"],
"output_limits": { "max_items_per_section": 8 },
"include_source_snippets": false
}
仓库结构
apps/
api/projectbrain_api/ 可选 FastAPI API 与 UI
packages/
adapters/ CodeGraph 适配器与制品构建器
runtime/ 本地 JSON 运行时与仓库抽象
schema/ 数据类 Schema 与校验
examples/payment-mini/ 合成公开演示数据
tests/ 单元与 API 测试
docs/ 设计与实现文档
设计文档
| 文档 | 说明 |
|---|---|
| 设计文档 | 产品定位、架构、组件、API 与路线图 |
| 域模型 | 项目认知域模型与界限上下文 |
| MVP 架构 | 本地 MVP 架构、服务边界与验收标准 |
| MCP 使用说明 | 本地 stdio MCP 服务器使用与隐私边界 |
| 中文快速上手 | 本地安装、演示、MCP、声明与策略的中文教程 |
路线图
- 增加类型化 API 请求/响应模型
- 增加 OpenAPI 快照测试
- 增加更丰富的 Git diff 符号匹配
- 增加数据库后端仓库实现
- 增加更多语言适配器
许可证
MIT
No comments yet
Be the first to share your take.