用 Understand Anything 把任何代码库变成可交互知识图谱
摘要
Understand Anything 是一款支持 Claude Code、Cursor、Copilot、Codex、Gemini CLI 等主流 AI 编程工具的插件,能将任意代码库、知识库或文档自动构建为可交互的知识图谱。它采用 Tree-sitter 静态分析 + 多 Agent LLM 流水线的混合架构,让你在几分钟内看懂一个陌生的大型项目全貌,而不是在代码文件间盲目跳转。
核心优势
不只是可视化,而是真正可学习的图谱。 很多代码可视化工具生成漂亮但无法交互的关系图,Understand Anything 的目标不同——图谱中的每个节点都附有自然语言摘要、架构层级标注和依赖关系,你可以模糊搜索、语义搜索(“哪些部分处理支付流程?”),还能点击节点查看代码并触发 AI 解释。
Tree-sitter + LLM 混合,兼顾准确与洞察。 结构侧(imports、函数定义、调用关系、继承)由 Tree-sitter 确定性解析,保证相同代码产生相同的图结构。语义侧(文件用途、架构层分配、业务领域映射)由 LLM 补充,覆盖纯解析器无法捕获的意图信息。
增量更新,首次之后几乎无额外成本。 初次分析整个代码库后,后续只重新分析变更文件,token 消耗大幅下降;也可以开启 --auto-update 在每次 commit 后自动增量更新图谱。
图谱即文档,可提交到 Git。 .understand-anything/knowledge-graph.json 是标准 JSON,提交一次后新队友克隆即可直接使用,无需重跑分析流水线——对于 onboarding 和 PR review 场景尤其实用。
多平台全覆盖。 同一套插件通过一条 install.sh 命令即可安装到 Codex、Gemini CLI、VS Code Copilot、Trae、Kiro 等 17 个平台,不锁定任何单一 AI 工具。
面向人群
- 刚加入新团队的工程师:面对 20 万行代码不知从何下手,用知识图谱看清整体结构再深入局部。
- 做代码审查的 Tech Lead:用
/understand-diff在 commit 前看清改动的波及范围,避免隐性副作用。 - 需要快速理解遗留系统的架构师:通过业务领域视图(
/understand-domain)把代码映射到真实业务流程。 - 维护 LLM wiki 知识库的研究者:用
/understand-knowledge分析 Karpathy 式 wiki,自动构建实体关系图。 - 技术 PM:在 persona-adaptive 仪表盘中以非开发者视角浏览系统结构,理解各模块的业务含义。
快速上手
1. 安装插件
Claude Code(原生支持):
/plugin marketplace add Egonex-AI/Understand-Anything
/plugin install understand-anything
其他平台(一行命令,macOS/Linux):
# 通用安装,会提示选择平台
curl -fsSL https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.sh | bash
# 指定平台跳过提示,例如 Codex
curl -fsSL https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.sh | bash -s codex
支持的平台参数:gemini、codex、opencode、vscode、trae、kiro 等 14 个。
Windows(PowerShell):
iwr -useb https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.ps1 | iex
2. 分析代码库
/understand
多 Agent 流水线启动,扫描项目中所有文件、函数、类和依赖,构建知识图谱并保存到 .understand-anything/knowledge-graph.json。
中文输出: 加上
--language zh参数,节点描述、Dashboard UI 和导览说明均以中文生成。
/understand --language zh
3. 打开交互仪表盘
/understand-dashboard
浏览器中弹出交互式图谱:节点按架构层颜色区分(API / Service / Data / UI / Utility),支持缩放、平移、模糊搜索和语义搜索。点击任意节点可查看源码、依赖关系和 AI 生成的自然语言解释。
进阶用法
# 向图谱提问——比直接问 AI 更精准,因为已有结构化上下文
/understand-chat 支付流程是如何实现的?
# 查看当前改动影响哪些模块(提交前必用)
/understand-diff
# 深入分析某个文件或函数
/understand-explain src/auth/login.ts
# 生成新人 onboarding 指南
/understand-onboard
# 提取业务领域知识(domains、flows、steps)
/understand-domain
# 分析 Karpathy 式 LLM wiki,构建知识关系图
/understand-knowledge ~/path/to/wiki
# 只分析 monorepo 中的某个子目录
/understand src/frontend
# 每次 commit 后自动增量更新图谱
/understand --auto-update
大型图谱(10 MB 以上)建议配合 git-lfs:
git lfs install
git lfs track ".understand-anything/*.json"
git add .gitattributes .understand-anything/
七个 Agent 分工协作
/understand 在底层编排 5 个专用 Agent,/understand-domain 再加入第 6 个,/understand-knowledge 加入第 7 个:
| Agent | 职责 |
|---|---|
project-scanner |
发现文件、识别语言和框架 |
file-analyzer |
提取函数/类/imports,生成节点和边(最多 5 路并行,每批 20-30 个文件) |
architecture-analyzer |
识别架构层级 |
tour-builder |
生成按依赖顺序排列的导览路径 |
graph-reviewer |
验证图的完整性和引用完整性 |
domain-analyzer |
提取业务领域、流程和步骤 |
article-analyzer |
从 wiki 文章中提取实体、关联和隐式关系 |
更多推荐


所有评论(0)