工具推荐
1780026308更新
0
你刚加入一个新团队。
代码库有20万行。
你是下午两点入职的。
到五点下班的时候,你可能还在想:这个user-service.ts到底是干嘛的?我要不要动它?动了会不会把登录搞挂?
反正我当时就是这么懵的。
三年前刚入行那会儿,leader丢给我一个GitHub链接,说:喏,这是我们的主项目,你先熟悉熟悉。
我打开一看,200多个文件夹。
然后我对着那个目录结构发了半小时呆。
我不知道从哪里开始。
哪个是入口?哪个是核心业务?哪个是可以随便改的,哪个是一动就要写遗嘱的?
没人告诉我。
当时我就想,要是有一个东西能跟我说:这个项目大概是这样的,有多少个模块,模块之间什么关系,核心流程是什么,就好了。
现在,这个东西,就真的出现了。
它叫Understand Anything, 就是字面意思:理解任何东西。
准确地说,是理解任何代码库。
这个工具是GitHub上的一个开源项目,MIT协议,可以免费用。
github.com/Lum1104/Understand-Anything

它支持挺多AI编程工具的,包括Claude Code、Cursor、VS Code Copilot、Gemini CLI、Trae等等。不同的工具安装方式不太一样,但都不复杂。
装完之后,你会得到一系列新的命令。
最核心的是/understand。
你在项目目录里输这个命令,它就会开始分析你的代码。
分析完之后,你得到的是一个知识图谱。
这个图谱里有什么呢?
所有文件,所有函数,所有类,所有依赖关系。
还带解释。
比如一个函数,它会告诉你:这个函数是干嘛的,它依赖什么,它被谁调用。
不再是裸奔的代码了。
是一个你可以点击、可以搜索、可以探索的交互式地图。
你可能会想:这玩意怎么知道代码是干嘛的?
好问题。
它用了两套东西。
第一套叫Tree-sitter。这是一个代码解析器,可以理解各种编程语言的语法。它负责提取那些"死的"信息——import了什么、export了什么、函数在哪、类在哪、继承了什么关系。这些东西不管谁来读都是一样的。
第二套是AI大模型。它负责读那些"活的"信息——这个函数是干嘛的,为什么这样设计,有什么业务含义。
为什么会这么分?
因为,纯AI读代码效率低,而且贵。纯解析器又只能看到结构,看不懂意图。
两个加一起,就是又快又准。
它能分析主流的编程语言。同时,它还能解释12种编程模式,会在上下文里给你解释清楚。
我拿到这个项目的时候,第一反应是:它是怎么把代码变成图的?
看了下文档,大概是这样。
它有一个多代理管道。5个AI agent各司其职,像流水线一样干活。
第一个叫project-scanner,负责扫描项目,发现有哪些文件,用了什么语言和框架。
第二个叫file-analyzer,负责分析每个文件,提取函数、类、import关系,生成图谱的节点和边。
第三个叫architecture-analyzer,负责识别架构层级——哪些是入口,哪些是API层,哪些是数据层,哪些是工具函数。
第四个叫tour-builder,负责生成学习路线。就是告诉你,应该按什么顺序来理解这个项目。
第五个叫graph-reviewer,负责验证图谱的完整性,确保没有遗漏的依赖或错误的引用。
另外还有一个article-analyzer,专门用于分析知识库——当你用/understand-knowledge命令分析一个文档库的时候,它会用这个agent。

说实话,功能挺多的,我挑几个我觉得有意思的说。
导游路线。
就是你刚接手一个项目,不知道从哪开始,它会给你生成一个学习顺序。
告诉你:先看这个入口文件,再看这个核心模块,最后看这个周边工具。按这个顺序走一遍,你对这个项目就有个大概的框架了。
对于我这种刚入行的时候对着目录结构发呆的人来说,这个功能太实用了。
改动影响分析。
你改了一个函数,想知道会不会影响其他地方。运行/understand-diff,它会告诉你:这个函数被哪些地方调用,改了之后哪些地方会受影响。
不是说让你不改,而是让你知道风险在哪。
语义搜索。
支持模糊搜索和语义搜索。不只是按名字搜,还能按意思搜。比如你搜"哪些部分处理身份验证",它会找到所有跟认证相关的代码,哪怕文件名里没有"auth"这个词。
这个在接手新项目的时候特别有用。你不需要知道代码里用什么词来描述这个功能,你只需要说清楚你想找什么。
多语言支持。
可以用中文输出。
运行的时候加个--language zh,生成的图谱描述就是中文的。Dashboard的界面也可以切中文。
对于英文不太好的同学,这个挺贴心的。
怎么安装使用?
不同的AI编程工具,安装方式不一样,我分开说。
Claude Code:
在命令行里输这两行:
/plugin marketplace add Lum1104/Understand-Anything/plugin install understand-anythingCursor等:
直接克隆项目到本地,它会自动发现插件。克隆地址:github.com/Lum1104/Understand-Anything
Windows PowerShell等:
一行命令搞定:
iwr -useb https://raw.githubusercontent.com/Lum1104/Understand-Anything/main/install.ps1 | iex装完之后,在项目目录里运行/understand,然后运行/understand-dashboard,就会打开一个网页,展示交互式知识图谱。
你可以放大缩小,搜索,点击节点看详情。
挺酷的。
写在最后。
三年前我对着那200个文件夹发呆的时候,要是有这个东西,我能少走很多弯路。
当然,不是说没有工具就一定不行。慢慢读,慢慢摸,总能搞懂的。
但问题是时间。
如果能花5分钟搞清楚架构,花10分钟搞清楚核心流程,剩下的时候就可以用来真正写代码,而不是用来发呆和焦虑了。
工具的意义就是这个。
不是替代你思考,而是让你思考的时候有个地图,不至于在迷宫里转圈。
就像这个项目的slogan说的:Stop reading code blind. Start seeing the big picture.
翻译过来就是:别再盲目读代码了,开始看清大局吧。
共勉。
相关链接
项目地址:github.com/Lum1104/Understand-Anything
官方Demo:understand-anything.com/demo/
(可以先点进去看看效果,不用装,直接在浏览器里体验)
豫公网安备41010702003375号