Lum1104/Understand-Anything
GitHub: Lum1104/Understand-Anything
将任意代码库转化为可探索的交互式知识图谱,帮助开发者快速理解项目架构和代码关系。
Stars: 5036 | Forks: 391
理解万物
将任何代码库转化为可探索、可搜索、可提问的交互式知识图谱。
English | 中文 | 日本語
**你刚加入一个新团队。代码库有 20 万行代码。你该从哪里开始?**
Understand Anything 是一个 [Claude Code](https://docs.anthropic.com/en/docs/claude-code) 插件,它通过多智能体 pipeline 分析你的项目,构建包含每个文件、函数、类和依赖项的知识图谱,然后提供一个交互式仪表板让你可视化地探索这一切。停止盲目阅读代码。开始看清全局。
## 🤔 为什么?
阅读代码很难。理解整个代码库更难。文档总是过时的,入职需要数周时间,每个新功能都感觉像是在做考古挖掘。
Understand Anything 通过将 **LLM 智能**与**静态分析**相结合来解决这个问题,为你的项目生成一张动态的、可探索的地图——并为所有内容提供通俗易懂的解释。
## 🎯 这是给谁用的?
👩💻 初级开发者
不再淹没在不熟悉的代码中。获取引导式导览,逐步带你了解架构,每个函数和类都有通俗易懂的解释。
|
📋 产品经理 & 设计师
无需阅读代码即可最终理解系统实际是如何工作的。提出诸如“身份验证是如何工作的?”之类的问题,并基于真实代码库获得清晰的答案。
|
🤖 AI 辅助开发者
为你的 AI 工具提供关于项目的深度上下文。在代码审查前使用 /understand-diff,使用 /understand-explain 深入任何模块,或使用 /understand-chat 探讨架构。
|
## 🚀 快速开始
### 1. 安装插件
```
/plugin marketplace add Lum1104/Understand-Anything
/plugin install understand-anything
```
### 2. 分析你的代码库
```
/understand
```
一个多智能体 pipeline 会扫描你的项目,提取每个文件、函数、类和依赖项,然后构建一个保存到 `.understand-anything/knowledge-graph.json` 的知识图谱。
### 3. 探索仪表板
```
/understand-dashboard
```
一个交互式 Web 仪表板随即打开,你的代码库被可视化为图谱——按架构层进行颜色编码,可搜索且可点击。选择任何节点即可查看其代码、关系和通俗解释。
### 4. 持续学习
```
# 询问关于代码库的任何问题
/understand-chat How does the payment flow work?
# 分析当前更改的影响
/understand-diff
# 深入探究特定文件或函数
/understand-explain src/auth/login.ts
# 为新团队成员生成入职指南
/understand-onboard
```
## 🌐 多平台安装
Understand-Anything 可在多个 AI 编码平台上运行。
### Claude Code (原生)
```
/plugin marketplace add Lum1104/Understand-Anything
/plugin install understand-anything
```
### Codex
告诉 Codex:
```
Fetch and follow instructions from https://raw.githubusercontent.com/Lum1104/Understand-Anything/refs/heads/main/.codex/INSTALL.md
```
### OpenCode
添加到你的 `opencode.json`:
```
{
"plugin": ["understand-anything@git+https://github.com/Lum1104/Understand-Anything.git"]
}
```
### OpenClaw
告诉 OpenClaw:
```
Fetch and follow instructions from https://raw.githubusercontent.com/Lum1104/Understand-Anything/refs/heads/main/.openclaw/INSTALL.md
```
### Cursor
当此仓库被克隆时,Cursor 会通过 `.cursor-plugin/plugin.json` 自动发现插件。无需手动安装——只需克隆并在 Cursor 中打开即可。
### Antigravity
告诉 Antigravity:
```
Fetch and follow instructions from https://raw.githubusercontent.com/Lum1104/Understand-Anything/refs/heads/main/.antigravity/INSTALL.md
```
### 平台兼容性
| 平台 | 状态 | 安装方法 |
|----------|--------|----------------|
| Claude Code | ✅ 原生 | 插件市场 |
| Codex | ✅ 支持 | AI 驱动安装 |
| OpenCode | ✅ 支持 | 插件配置 |
| OpenClaw | ✅ 支持 | AI 驱动安装 |
| Cursor | ✅ 支持 | 自动发现 |
| Antigravity | ✅ 支持 | AI 驱动安装 |
## ✨ 功能特性
🗺️ 交互式知识图谱
使用 React Flow 可视化文件、函数、类及其关系。点击任何节点查看其代码和连接。
|
💬 通俗易懂的摘要
每个节点都由 LLM 描述,因此任何人——无论技术背景如何——都能理解它的作用以及存在的原因。
|
🧭 引导式导览
自动生成的架构演示,按依赖关系排序。以正确的顺序学习代码库。
|
🔍 模糊与语义搜索
按名称或含义查找任何内容。搜索“哪些部分处理身份验证?”并在图谱中获得相关结果。
|
📊 差异影响分析
在提交之前查看你的更改会影响系统的哪些部分。了解代码库中的连锁反应。
|
🎭 角色自适应 UI
仪表板根据你的身份——初级开发人员、产品经理或高级用户——调整其详细程度。
|
🏗️ 分层可视化
按架构层自动分组——API、Service、Data、UI、Utility——并带有颜色编码的图例。
|
📚 语言概念
12 种编程模式(泛型、闭包、装饰器等)在出现的地方结合上下文进行解释。
|
## 🔧 内部原理
### 多智能体 Pipeline
`/understand` 命令编排了 5 个专门的智能体:
| Agent | 角色 |
|-------|------|
| `project-scanner` | 发现文件,检测语言和框架 |
| `file-analyzer` | 提取函数、类、导入;生成图谱节点和边 |
| `architecture-analyzer` | 识别架构层 |
| `tour-builder` | 生成引导式学习导览 |
| `graph-reviewer` | 验证图谱完整性和引用完整性 |
文件分析器并行运行(最多 3 个并发)。支持增量更新——仅重新分析自上次运行以来发生变化的文件。
### 项目结构
```
understand-anything-plugin/
.claude-plugin/ — Plugin manifest
agents/ — Specialized AI agents
skills/ — Skill definitions (/understand, /understand-chat, etc.)
src/ — TypeScript source (context-builder, diff-analyzer, etc.)
packages/
core/ — Analysis engine (types, persistence, tree-sitter, search, schema, tours)
dashboard/ — React + TypeScript web dashboard
```
### 技术栈
TypeScript, pnpm workspaces, React 18, Vite, TailwindCSS v4, React Flow, Zustand, web-tree-sitter, Fuse.js, Zod, Dagre
### 开发命令
| 命令 | 描述 |
|---------|-------------|
| `pnpm install` | 安装所有依赖 |
| `pnpm --filter @understand-anything/core build` | 构建 core 包 |
| `pnpm --filter @understand-anything/core test` | 运行 core 测试 |
| `pnpm --filter @understand-anything/skill build` | 构建 plugin 包 |
| `pnpm --filter @understand-anything/skill test` | 运行 plugin 测试 |
| `pnpm --filter @understand-anything/dashboard build` | 构建 dashboard |
| `pnpm dev:dashboard` | 启动 dashboard 开发服务器 |
## Star 历史
MIT License © Lum1104
标签:AI编程助手, Claude Code, Waymore结果处理, WebSocket, 云安全监控, 交互式仪表盘, 人工智能, 代码分析, 代码可视化, 代码地图, 代码库文档生成, 代码搜索, 代码理解, 依赖分析, 凭证管理, 反向工程, 多智能体, 威胁情报, 开发者工具, 技术绘图, 用户模式Hook绕过, 自动化攻击, 跨平台支持, 静态分析