article
README
🚀 Arbor
代码库的图原生智能工具
Arbor 是一个用于大型代码库的本地优先影响分析引擎,它能将项目解析成语义依赖图,让你追踪真实执行路径,提前了解代码更改的后果,避免盲目修改导致的问题。
🚀 快速开始
- 安装 Arbor(命令行界面 + 图形用户界面):
或者使用一键安装程序(无需 Rust 工具链):cargo install arbor-graph-cli- macOS/Linux:
curl -fsSL https://raw.githubusercontent.com/Anandb71/arbor/main/scripts/install.sh | bash - Windows(PowerShell):
irm https://raw.githubusercontent.com/Anandb71/arbor/main/scripts/install.ps1 | iex有关版本固定和手动资源的信息,请参阅安装指南。
- macOS/Linux:
- 一次性设置 + 首次索引:
cd your-project arbor setup - 运行影响分析:
对于支持 Git 的工作流:arbor refactor <symbol-name>arbor diff arbor check --max-blast-radius 30 arbor open <symbol> - 启动图形用户界面:
你可以从任何嵌套子目录运行 Arbor,它会自动解析到项目根目录。 📘 有关高级工作流,请参阅快速入门指南。arbor gui
✨ 主要特性
- 精确的令牌计数 — 使用 tiktoken(cl100k_base)替代启发式估计,以精确计算大语言模型的上下文预算。
- 模糊符号建议 — 具备 Jaro - Winkler 匹配的拼写容错功能,例如
arbor refactor autth会提示 “Did you mean:auth?”。 - 增强的 MCP/AI 集成 — 为 Claude/Cursor 提供包含置信度、角色和边缘解释的丰富 JSON 输出。
- 支持 Git 的风险工作流 — 提供
arbor diff、arbor check和arbor open命令,增强重构的信心。 - 增量刷新 — 使用
arbor index --changed-only命令,在活跃分支上更快地重新索引。 - 更优的 Python 用户体验 — 静默处理空的
__init__.py文件(无错误警告)。
💻 使用示例
基础用法
在重构 detect_language 之前,检查其实际影响:
$ arbor refactor detect_language
Analyzing detect_language...
Confidence: High | Role: Core Logic
• 15 callers, 3 dependencies
• Well-connected with manageable impact
> 18 nodes affected (4 direct, 14 transitive)
Immediate Impact:
• parse_file (function)
• get_parser (function)
Recommendation: Proceed with caution. Verify affected callers.
这是基于执行的分析,而非文本匹配。
高级用法
启动图形用户界面进行交互式影响分析:
arbor gui

图形用户界面功能
- 符号搜索 – 即时定位函数、类和方法。
- 影响可视化 – 探索直接和传递依赖关系。
- 隐私安全 – 默认隐藏文件路径,便于生成干净的截图。
- 导出 – 将结果复制为 Markdown 格式,用于拉取请求和设计文档。
命令行界面和图形用户界面使用相同的分析引擎,无功能差异。
📚 详细文档
状态(2026 年 3 月)
- 稳定版本线:
release/v1.5 - 当前功能版本线:
release/v1.6 - 主要开发主干:
mainArbor 目前正在对 v1.6 版本线进行最后的打磨。
发布渠道与分支
为了保持维护和功能开发的清晰性:
main→ 正在进行的开发工作。release/v1.5→ 仅对 1.5.x 版本进行维护性修复。release/v1.6→ 进行 1.6 版本的功能交付和稳定化工作。 这样可以避免将新功能引入旧的维护分支,并使反向移植操作更加明确。
MCP 目录列表
Arbor 已列入 Glama MCP 目录:
- Glama:https://glama.ai/mcp/servers/@Anandb71/arbor
贡献者
感谢以下贡献者:
Scan to join WeChat group