Egonex-AI/Understand-Anything
Graphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.
📚 Understand Anything – 将任意代码库、知识库或文档转换为交互式知识图谱
是什么 – 一种可在多种 AI 编码平台(Claude Code、Codex、Cursor、VS Code + Copilot、Gemini CLI 等)上运行的插件/CLI。它扫描项目,提取每个文件、函数、类和依赖项,然后构建一个 JSON 知识图谱。该图谱可在 Web 仪表板中探索,节点可搜索、可点击,并附带自然语言摘要、架构层级、业务领域映射和引导式导览。
🎯 核心功能
| 功能 | 你将获得 |
|---|---|
| 结构图谱 | 每个源文件、函数和类都成为节点;边表示导入、调用、继承等关系。 |
| 语义增强 | LLM 代理添加人类可读的描述、层级标签(API、Service、Data、UI、Utility)和业务逻辑映射。 |
| 引导式导览 | 自动生成的导览按依赖顺序组织代码,让你逐步学习架构。 |
| 模糊与语义搜索 | 询问“哪些部分处理认证?”系统将返回图谱中相关节点。 |
| 差异影响分析 | 变更后,工具会高亮显示图谱中受影响的部分。 |
| 角色自适应 UI | 仪表板可根据初级开发者、产品经理或高级用户的需求简化或扩展细节。 |
| 知识库模式 | 将工具指向一个 Markdown 知识库(如 Karpathy-pattern LLM 知识库),即可生成概念、实体和主张的力导向图。 |
| 增量更新 | 仅重新分析自上次运行以来更改的文件,节省 Token 和时间。 |
| 多语言 UI | 节点摘要和 UI 可生成为英文、简体中文、繁体中文、日文、韩文、俄文。 |
🛠️ 内部工作原理
- Tree-sitter 解析器 – 为每个文件确定性地构建语法树,提取导入、定义、调用点,并创建稳定的
importMap。 - LLM 代理 – 结合解析结构和原始源码,生成自然语言摘要、层级分配、领域映射和导览脚本。
- 多代理流水线 – 五个核心代理(项目扫描器、文件分析器、架构分析器、导览构建器、图谱审查器)并行运行(最多 5 个工作线程)。可选的领域分析器和文章分析器用于业务流程提取和 Wiki 解析。
- 输出 – 一个可复现的结构图谱(相同代码 → 相同边)加上语义注释,存储在
.ua/knowledge-graph.json中。
🚀 快速入门
# 1️⃣ 在你的平台上安装(以 Claude Code 为例)
/plugin marketplace add Egonex-AI/Understand-Anything
/plugin install understand-anything
# 2️⃣ 分析项目(首次运行可能消耗大量 LLM Token)
/understand # 创建 .ua/knowledge-graph.json
# 3️⃣ 打开交互式仪表板
/understand-dashboard
其他平台请使用通用安装器:
curl -fsSL https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.sh | bash -s <platform>
支持的 <platform> 值包括 codex、gemini、vscode、kiro、cursor 等。
💡 典型使用场景
- 入职培训 – 新员工运行
/understand,即可视觉化地立即探索整个代码库。 - PR 审查 – 提交生成的
.ua/*.json图谱;审阅者无需重新运行管道即可查看影响分析。 - 业务逻辑发现 –
/understand-domain从代码中提取高层次流程(如支付流程)。 - Wiki 文档化 – 将
/understand-knowledge指向一个 Markdown Wiki,获取内部知识库的概念图谱。 - 本地、隐私优先分析 – 通过
--model配置连接本地 LLM(如 Ollama),避免将源码发送到云端。
📦 共享图谱
图谱是纯 JSON 格式,因此可以提交(排除 intermediate/ 和 diff-overlay.json)。大型图谱可使用 git-LFS 存储。任何人都可通过运行以下命令在无 LLM 环境下查看仪表板:
npx https://github.com/Egonex-AI/Understand-Anything/releases/latest/download/understand-anything-viewer.tgz /path/to/project
这将在 http://127.0.0.1:5173 上本地提供图谱服务。
🤝 贡献与社区
- 使用
pnpm --filter @understand-anything/core test运行测试。 - 遵循常规的 fork → branch → PR 工作流。
- 欢迎社区视频;可通过开 issue 或 PR 申请展示。
📜 许可证
MIT – © Yuxiang Lin and Infinite Universe, Inc.
总结:Understand Anything 让你能够将任何大型代码库(或 Markdown 知识库)转化为由静态分析 + LLM 混合管道驱动的可搜索、可视化的知识图谱,支持多种 AI 编码助手,并提供注重隐私的本地仅运行模式。
相关
- 项目
- 项目
- 项目