ARTICLE · 1253194
37 万星:一句话,让 AI 拆开任何软件
10 月 6 日,这个仓库还不到一万星。
10 月 25 日,它 37.9 万。
每天两万星。

REA 的星标曲线。四月到九月一直贴着地面,十月第一个星期开始垂直拉升。
项目叫 REA,Reverse Engineer Anything 的缩写,中文圈一般翻成"逆向一切"。
94,802 个 fork,1,029 个待处理的 issue,今天凌晨还在提交代码。README 有 23 种语言版本,从英语一路排到罗马尼亚语和罗马乌尔都语。
但它自己,不做反编译。
一、它做的事,其实是"转发"
REA 是一个 MCP 服务。MCP 是模型上下文协议,作用很简单:让 AI 助手能调用外部工具。
它把 Ghidra、Hopper、IDA Pro、JADX 这些真正的逆向工具包起来,变成一个 AI 能调用的接口。
所以这套东西的价值,不在于它自己有多聪明,而在于它让 AI 知道该按什么顺序干。
装起来就一行:
npx rea-agents setup
跑完重启你的 AI 助手,Claude Code、Codex、Cursor、Gemini CLI 都在支持列表里。
然后你说话就行了。README 给的例子是这样的:
帮我搞清楚 Notes 这个 App 的搜索是怎么实现的,把证据给我看,然后在我项目里做一个类似的。
四步:你问,它查,它把证据交给你,你的助手拿去解释或者写代码。
关键在第三步。它交出来的不是一句结论,是带证据的结论——支撑这个结论的代码和引用、置信度、以及哪些地方它没查清、哪些地方确定不了。
README 里还写了两条原则,我觉得比功能清单重要。
一条是遇到歧义不替你拍板。多个引擎都能处理同一个目标时,它不选,把选择权抛回来。
另一条是分析全程在本机做,不上传你的文件。
一条是克制,一条是隐私。这两条决定了它是不是个能放心用的工具。
二、它能拆的东西,比软件宽得多
README 里有一张表,43 行。
挑几个不像"软件"的看:
Unity 游戏,不用装 Unity,直接读 global-metadata.dat,把类型名和方法名解出来;Godot 游戏,读 PCK 包,格式 2、3、4 都认;Go 和 Rust 编出来的二进制,能读出版本、依赖和构建选项;CUDA 内核,能留下 PTX 文本;大模型的权重文件,GGUF 和 safetensors,读元数据和张量声明;以太坊字节码,拆出函数选择器和参数。
再往下还有固件、抓包、SQLite 数据库、逻辑分析仪录下来的波形——最后这个靠 sigrok 来读。
从 1990 年代的 DOS 游戏,到 2026 年的大模型权重;从浏览器里跑的 WASM,到插在 USB 口上的逻辑分析仪。
只要是别人做好的东西,它都想拆开看看。
三、三个案例,一个比一个硬

从左到右:DX-Ball 的左右声道、Notion 的剪贴板桥、TH04 的子弹环。
README 的 showcase 里放了三个,都不是演示,是真做完了的。
第一个是 DX-Ball,1996 年的打砖块。任务是搞清楚音效的左右声道怎么随球的位置变化。顺着一次播放调用追到位置转声像的辅助函数,把反汇编出来的不完整伪代码补成能编译的 C。
补完的版本跑了 3,205 个原始 x86 用例,全过。最后编译出来,和原版那个函数的 63 个字节完全一致。
63 个字节全对。这说明它不是"理解了个大概",是逐字节还原。
第二个是 Notion。追剪贴板:从渲染进程的 clipboard API,穿过 preload 脚本,进 IPC,到主进程,看它怎么处理富文本格式。
第三个是 TH04,东方 Project 第四作,1997 年的 PC-98 游戏。读 16 位指令,把固定角度和瞄准角度的计算公式恢复出来,再拿重建的 C++ 和当年编译器吐出来的机器码对比。
三个案例有一个共同点:没有一个是冲着"抄一个"去的。
一个是为了搞懂三十年前的程序员,在没有浮点协处理器的机器上怎么算角度。一个是为了搞懂剪贴板为什么偶尔丢格式。
这是"逆向"这个词本来的意思。不是破解,是理解。
四、为什么是它,不是别人
2025 年就有 GhidraMCP 和 IDA Pro MCP 了。Hex-Rays 官方也出过 MCP 服务。安全圈的人早就用这类工具打比赛、做题。
那为什么火的是 REA。
三个原因。
第一,装起来太简单。前面那一行 npx,装完重启就能用。不用配 Python 环境,不用手改 MCP 配置文件,不用去查 Ghidra 的 headless 参数怎么拼。
第二,它替 AI 想好了流程。别的 MCP 是把工具的原始命令透传出去,AI 得自己知道先干什么后干什么。REA 暴露的是按调查任务组织过的工具:查文件结构、反编译函数、追调用关系、搜字符串、看运行时行为。AI 不用猜。
第三,它克制。给证据、给置信度、说清哪里没查明白、歧义不替你做主。这三点看着像产品细节,实际上决定了 AI 会不会一本正经地胡说。
36 氪的报道里有人算了笔账:用 Cursor 配 Claude Opus,逆一个 APK 大概 30 分钟,花费不到 5 美元。逆一个 Unity 游戏花了 4000 万 token,约 27 美元。
他说了一句话,我认为是整件事里最有价值的:
那时我才意识到,我才是 AI 的限制器。
以前觉得 AI 办不到的事,其实是不敢让它去试。
五、门开了,但门框还在
写到这儿得把边界说清楚,否则这篇就成了软文。
REA 的 README 里有一段作者自己划的线:
REA 用于合法的研究、教育、互操作性、软件保存,以及分析你拥有或者获得授权的软件。
License 后面还有一段更硬的:你得合法获得并且有权使用商业工具,包括 IDA Pro、Hopper、JEB。REA 不提供任何工具授权、密钥或激活。盗版、盗来的密钥、未授权的密钥共享、绕过许可限制,都不在授权范围内。
翻译一下:这工具不帮你绕过任何一道法律的门。
技术上也有天花板。
真正值钱的逻辑在服务器上。客户端逆向只能看到安装包和客户端与服务器之间的请求响应,看不到云端的业务。
加固、混淆、反调试会大幅提高难度。
还有很现实的一条:1,029 个待处理 issue。这项目还在高速迭代期,坑不少,别指望它什么都能拆。
不过我翻了翻最新的那批 issue,标题是这些:修复 Markdown 标题里的字面量键名;保留 IPS 崩溃报告里的镜像名和帧符号偏移;给 ELF32 的 i386、ARM、MIPS 增加布局档案。
全是工程细节。几乎看不到"帮我破解某个 App"。
这说明一件事:真正在用的人,是开发者,不是想抄东西的人。
六、真正的变化是什么
Replit 的 CEO Amjad Masad 说过一句话:AI 驱动的逆向工程和反编译,很快会让所有软件事实上变成开源软件。
听着吓人,但我觉得他说的是另一件事。
软件从来都可以被拆开。汇编器、调试器、十六进制编辑器,这些工具存在了几十年。真正挡人的从来不是代码,是门槛——你得先花十年学会看机器码。
REA 干的事,是把这道门槛削成了一句话。
门槛没了之后,会同时发生两件事。
一件是坏事:抄的速度变快了。做个小工具,上线两周,有人花三十分钟拆完,照着做一个,还比你便宜。
另一件是好事:理解的速度也变快了。想知道一个产品为什么这么设计,一个老游戏当年怎么在低配上跑起来,一个协议为什么长成这样——不用再找人问,不用再等谁写博客。
有意思的是,REA 自己的护城河,恰好不在代码里。
它是 TypeScript 写的,MIT 协议,全部公开。它能做的一切,你 clone 下来都能看。但它还是拿到了 37 万星。
写这个项目的人叫 morluto。账号 2020 年注册,259 个公开仓库,一万多关注者。简介那一栏写的是 "member of technically staff",所在地那一栏填的是 Sinsai。
四月建仓的时候,他大概没想到今天。
README 里有一行字,是三十万星那天加的:「300,000 GitHub stars,thank you!」
没有庆祝视频,没有发布会,没有融资消息。就一行字,放在星标曲线上面。
因为值钱的从来不是"我知道怎么做",而是"我做出来了,而且做得让人愿意用"。
这大概是这个项目最讽刺,也最诚实的地方。















































































