Understand-Anything

🧠 代码库智能可视化分析引擎

深度代码库分析工具,自动生成交互式知识图谱,可视化项目架构、组件关系与分层结构,支持增量更新与智能导览。

收藏
3.8k
安装
1.5k
版本
1.1.0
CLS 安全性认证2026-07-13
点击查看完整报告 >

使用说明

核心用法

/understand 是一个多阶段代码库分析引擎,通过七个结构化阶段将源代码转化为可交互的知识图谱:

1. 预检阶段 — 智能检测是全量重建还是增量更新,基于 Git commit hash 比对避免重复分析
2. 扫描阶段 — 子代理遍历项目,识别语言、框架、文件清单与复杂度估算

3. 分析阶段 — 并行子代理批量处理文件(5-10个/批,最多3并发),提取函数、类、模块等节点及18种关系边

4. 组装阶段 — 合并批次结果,清理悬空引用与重复节点

5. 架构阶段 — 识别分层结构(UI/API/Service/Data等),支持 React、Express、Django、Go 等框架专属规则

6. 导览阶段 — 基于 README 和入口文件生成学习路径,将文档叙事映射为代码探索路线

7. 审核阶段 — 交叉验证完整性,自动修复缺失字段,最终输出标准化 JSON

输出产物 knowledge-graph.json 包含:项目元数据、节点(file/function/class/module/concept)、边(18种类型含权重)、分层定义、学习导览。配套 /understand-dashboard 可启动可视化界面。

显著优点

  • 智能增量更新:Git 感知机制避免全量重分析,大型项目秒级响应
  • 框架原生理解:内置 React/Next.js、Express、Django、Go 等目录语义,自动推断架构分层
  • 并行可扩展:批量+并发设计支持大型代码库,200+文件时主动提示范围限定
  • 防御性工程:多重降级策略——子代理失败重试、部分结果保存、自动修复、警告透传
  • 标准化输出:严格 Schema 约束,支持下游工具链集成

潜在局限

  • 资源消耗:多阶段子代理调用对 token 消耗较大,超大型项目需分目录分析
  • 框架覆盖有限:当前仅硬编码 4 种框架规则,小众框架依赖通用启发式
  • 黑盒分析:基于静态代码扫描,运行时行为(动态路由、依赖注入等)可能遗漏
  • 审核自动化边界approved: false 时自动修复能力有限,复杂结构问题需人工介入

适合人群

  • 新成员快速熟悉陌生代码库
  • 技术负责人进行架构审计与债务评估
  • 开源项目维护者生成可视化文档
  • 需要进行代码迁移或重构前的影响面分析

常规风险

| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 数据泄露 | 分析过程读取完整源代码 | 本地执行,输出隔离在 `.understand-anything/` 目录 |
| 不完整图谱 | 子代理超时或失败导致节点缺失 | 失败重试+部分保存+审核报告 |
| 架构误判 | 非标准目录结构导致分层错误 | 支持 `--full` 强制重建与目录范围限定修正 |
| 存储膨胀 | 中间文件累积 | Phase 7 自动清理 `intermediate/` 目录 |

安全等级 S(本地分析、无外部调用、自动清理临时文件),来源可信度 T1(官方工具链原生技能)。

安全解读

核心功能

/understand 是一款基于子Agent协作的代码库分析工具,旨在通过自动化扫描、分析和分层,生成交互式的知识图谱。其核心工作流程分为7个阶段:

  • Phase 0 预检:判断全量分析或增量更新
  • Phase 1 扫描:子Agent发现项目结构、语言和框架
  • Phase 2 分析:并行批量分析文件,提取函数、类、导入关系
  • Phase 3 组装:合并结果,清理无效引用
  • Phase 4 架构:识别分层(UI/API/数据/服务等)
  • Phase 5 导览:生成按逻辑顺序的学习路径
  • Phase 6-7 验证与保存:质量检查并输出最终图谱

显著优点

1. 智能增量更新:通过Git commit hash比对,仅分析变更文件,大幅提升重复分析效率
2. 框架感知:内置React/Next.js、Express、Django、Go等框架的目录语义理解

3. 并行处理:支持3个子Agent并发分析,平衡速度与资源

4. 分层可视化:自动识别架构分层,生成可交互的层级视图

5. 学习导览:基于项目README生成连贯的学习路径,降低新成员上手成本

6. 质量验证:内置图谱审核机制,自动修复常见问题

潜在局限

  • 文件规模限制:>200文件需用户确认或限定子目录
  • 依赖子Agent可靠性:复杂项目的分析质量受子Agent能力影响
  • 隐私暴露风险:完整捕获源代码结构,不适合分析含敏感凭证的仓库
  • T3来源可信度:个人开发者作品,无开源社区审计背书

适合人群

  • 技术交接:新成员快速理解大型代码库
  • 架构审查:可视化现有项目的模块依赖
  • 遗留系统:为缺乏文档的老项目补全知识图谱
  • 开源贡献者:理解不熟悉的项目结构

常规风险

| 风险项 | 等级 | 说明 |
|--------|------|------|
| 临时脚本执行 | 低 | 子Agent生成并执行临时Node.js/bash脚本,限于本地文件读取 |
| 架构信息泄露 | 低 | 生成的JSON文件包含完整代码结构,分享项目前需清理 |
| 权限要求 | 信息级 | 需要读写被分析项目的文件系统权限 |

建议:在容器/虚拟机中分析不受信任的项目,定期清理.understand-anything/目录。

Understand-Anything 内容

手动下载zip · 30.0 kB
architecture-analyzer-prompt.mdtext/markdown
请选择文件