Understand Anything:AI 时代,程序员更需要看懂项目
先说结论
最近看到一个很有意思的开源项目:Understand Anything。
它做的事情很简单:把一个代码库、文档库或者知识库,变成一张可以探索的知识图谱。
说人话就是:
以前你接手一个项目,只能一层层翻目录、看 README、找入口、问老同事。
现在它试图先帮你生成一张“项目地图”。你可以在图里看文件、函数、类、依赖关系,也可以搜索和提问。
我觉得这个方向很值得关注。因为 AI 编程时代,问题不只是“怎么更快写代码”,更重要的是:怎么更快看懂一个复杂系统。
现在的问题
现在 AI 写代码越来越快。
Cursor、Claude Code、Codex 这些工具,已经能帮我们生成大量代码、改 bug、补测试、重构模块。
但另一个问题也越来越明显:
代码变多了,理解变慢了。
尤其是接手老项目时,你经常会遇到这些问题:
- 入口在哪里?
- 哪些模块最核心?
- 这个函数到底谁在调用?
- 改这个文件会影响哪些业务?
- 代码里的业务流程到底是什么?
- 哪些地方是历史包袱,不能随便动?
这些东西,README 里通常写不清楚。代码注释也不一定完整。
很多时候,真正的“项目地图”在老同事脑子里。
Understand Anything 想做的,就是把这张脑子里的地图,变成一张可以看的图。
它做了什么
Understand Anything 可以分析你的项目,然后生成一个知识图谱。
图里的节点可以是:
- 文件
- 函数
- 类
- 模块
- 依赖关系
- 业务流程
- 知识库里的概念、实体和观点
然后它提供一个 Dashboard,你可以在里面搜索、点击节点、查看解释、看关系。
它支持 Claude Code、Codex、Cursor、Copilot、Gemini CLI 等 AI 编程工具。
它的核心不是“画一张很酷的图”。
更准确地说,它想回答一个问题:
我应该按照什么顺序理解这个项目?
这点很关键。
很多可视化工具的问题是:图很复杂,看起来很厉害,但看完之后你还是不知道从哪里开始。
Understand Anything 更像是帮你建立阅读路径:先看哪些模块,再看哪些依赖,最后再看具体实现。
为什么有价值
我觉得它最有价值的地方有三个。
第一,它能帮你快速建立全局感
工程师最怕的不是代码多,而是没有全局感。
你不知道哪些地方重要,哪些地方只是边缘逻辑。
有了知识图谱,至少可以先看到项目的大致结构:
哪些模块在中心,哪些模块依赖最多,哪些模块只是工具层。
这对新人 onboarding 很有用。
以前新人进来,可能要花几天甚至几周才能摸清楚项目结构。
如果团队提前生成一份图谱,新人可以先看地图,再进代码。
第二,它能把代码和业务连起来
这点我特别喜欢。
很多时候,我们看代码不是为了看语法,而是为了理解业务。
比如一个交易系统,你真正关心的是:
用户下单后发生了什么? 库存什么时候扣? 优惠券什么时候锁定? 支付成功后哪些状态会变化? 退款会影响哪些模块?
代码只是实现,业务流程才是核心。
Understand Anything 里面有 Domain View,可以把代码映射到业务域、流程和步骤上。
这对工程师很重要。
因为一个工程师的成长,不只是会写代码,而是能看懂业务系统。
第三,它适合 AI 编程前的“上下文准备”
现在很多人直接让 AI 改代码。
但如果 AI 没有理解项目结构,它很容易只改局部,不懂整体。
这就会出现一种情况:
表面上改好了,实际上破坏了别的逻辑。
所以我觉得更好的流程应该是:
先理解项目,再让 AI 改代码。
Understand Anything 就适合放在这个前面。
先生成项目图谱,让 AI 和人都知道系统结构,再进入具体修改。
这样 AI 不容易瞎改,人也更容易判断 AI 改得对不对。
怎么用
如果你用 Claude Code,可以这样安装:
/plugin marketplace add Lum1104/Understand-Anything
/plugin install understand-anything
然后在项目里运行:
/understand
它会扫描项目,生成知识图谱文件:
.understand-anything/knowledge-graph.json
再运行:
/understand-dashboard
就可以打开 Dashboard,看项目结构。
如果想生成中文内容,可以用:
/understand --language zh
除了代码项目,它还可以分析知识库,比如 Karpathy 那种 LLM Wiki。
所以它不只是代码工具,也有点像“知识库地图工具”。
我的判断
我觉得 Understand Anything 代表了 AI 编程工具的一个新方向。
过去大家关注的是:
AI 怎么帮我写代码。
接下来更重要的问题可能是:
AI 怎么帮我理解系统。
因为写代码会越来越便宜,但理解复杂系统依然很贵。
对程序员来说,真正稀缺的能力不是把一个函数写出来,而是:
- 看懂复杂项目
- 理解业务流程
- 判断模块边界
- 知道改动影响范围
- 能把隐性经验沉淀成团队资产
Understand Anything 不一定能替代你读代码。
但它可以让你读代码不再那么盲。
对前端工程师、全栈工程师、AI 应用工程师来说,这类工具都值得试试。
尤其是你经常接手陌生项目,或者已经开始大量使用 Cursor、Claude Code、Codex。
未来程序员的竞争力,可能不只是“谁写得更快”。
而是谁能更快看懂复杂系统,并且知道怎么让 AI 在正确的上下文里工作。
这就是我觉得 Understand Anything 值得关注的原因。
Be the first to know when I post cool stuff
Subscribe to get my latest posts by email.
Thanks for signing up! Check your email to confirm your subscription.
Whoops, we weren't able to process your signup.