ARTICLE · 1162297
REA一天涨2.5万星:让AI看懂没源码的软件,附实测
你在别人的 App 里看到一个好用的功能,想知道它是怎么做的,以前得会逆向工程。现在 GitHub 上一个叫 REA 的开源工具,号称让 AI 编程助手替你去查,而且结论都附证据。按我们 10 月 12 日 11:14 的实测,它排在 GitHub 当日热榜第 1,当天新增 25,599 个星标,约 2.5 万。
先看最实用的五条:
- 它是什么
:REA 全称 Reverse Engineer Anything(逆向一切),是一个给 AI 编程助手用的 MCP 工具,也能在终端直接用。MIT 开源,免费。 - 能查什么
:JS/Electron 桌面应用、网站、.NET 程序、安卓 APK,以及原生二进制程序。分析在本机进行。 - 要什么条件
:Node.js 22.19 以上和 npm。查原生程序还要装 Hopper、Ghidra 或 IDA 其中一个,Ghidra 免费,另两个是商业软件。 - 我们实测了什么
:在本机装好 REA 6.4.0,用它分析了一个本文自己写的小应用,不用模型、不用 API key,几秒出结果。接入 AI 助手和分析原生程序这两步没有实测。 - 先说红线
:只分析自己有权分析的软件。拿它破解付费软件、游戏,可能违反用户协议和著作权法。
下面先讲它是什么、为什么火,再看实测。

图:REA 官方 README 图片(REA 在 Hopper 里分析一个原生程序)
逆向工程,简单说就是在拿不到源代码的情况下,从安装包、程序文件里倒推出它是怎么工作的。这活以前要人一行行看汇编、翻代码,门槛很高。
REA 的思路是把这些专业工具接给 AI。官方 README 的说法是:看到某个应用里你想要的功能,让 AI 助手用 REA 去调查,它能在没有源码的情况下查看应用、解释功能怎么实现、给出证据,再在你的项目里做一个类似的版本。
它不是一个独立的 AI 模型,本身不会“思考”。动脑子的是你接入的 AI 编程助手,REA 负责调用分析工具查看程序,把找到的东西连同出处交回去。

图:根据 GitHub 接口与 Trending 页实测数据整理
按我们 10 月 12 日 11:14(北京时间)的实测,REA 仓库有 111,183 个星标、24,749 个复刻,在 GitHub 当日热榜排第 1,当天新增 25,599 个星标,第 2 名是 3,952 个。仓库创建于今年 4 月 14 日,最新版本是 6.4.0。
它在海外 AI 圈也刷屏了。科技博主 Matthew Berman 10 月 9 日在 X 上发帖介绍它,只写了一句“Software is done”(软件行业完了),这条帖子的浏览量超过 300 万。
火的另一面是争议。网上有人晒出把它用在付费软件和游戏上的帖子。这类用法很可能违反软件的用户协议,也可能触犯著作权法,本文不介绍、也不建议。REA 官方 README 也写明:它是为合法的逆向研究、分析和重建提供工具,使用者自己负责取得授权、遵守法律。

图:据 REA 官方 README 整理绘制
REA 的工作方式是:你向 AI 助手提问,助手通过 MCP 调用 REA,REA 在本机调用各种分析工具,再把结果和证据交回去。官方说,每条结论都会附上证据和局限。
按官方 README,它能分析的对象包括:
- JS/Electron 应用
:还原模块、引用关系、路由和进程间通信,只要 Node.js 和 npm; - 网站
:页面结构、脚本、网络请求,需要一个 Chrome 系浏览器; - .NET 程序和安卓 APK
:.NET 只做静态分析、不需要额外工具,APK 需要 JADX 和完整的 JDK; - 原生二进制程序
:给出伪代码、汇编、字符串和调用关系,需要 Hopper、Ghidra 或 IDA。这一项本文没有实测。
官方也说明,REA 本身在本地分析,不会上传你的应用;但分析结果会交给你用的 AI 助手,助手背后的模型服务商有自己的数据政策。

图:本文实测终端截图
安装只要一行:npm install -g rea-agents。装好后 rea --version 显示 6.4.0。
这里踩了一个坑:我们机器上原本是 Node.js 20,REA 的自检直接报“版本不够”。官方要求 Node.js 22.19 以上、24.11 以上或 26 以上,换成 22.23.3 后才正常。

图:本文实测终端截图(rea --help 前 16 行)
rea --help 能看到它的命令非常多,光是 inspect 和 compare 开头的就有 44 个,大多对应上面说的各类分析对象。

图:本文实测终端截图(rea doctor 前 18 行)
rea doctor 是自检命令。截图里,Node.js 版本这项已经通过,但系统这项不通过:测试机是 Debian 13,不在官方支持列表里,官方支持 macOS 12 以上、Ubuntu 24.04 以上、Fedora 41 以上等。完整输出里还报了没有装 Hopper、Ghidra、IDA,也没有接入任何 AI 助手。这些不影响下面的 JS 静态分析。

图:本文实测终端截图
为了合规,我们自己写了一个只有 6 个文件的 Electron 小笔记应用 mini-notes,作为分析对象。它有搜索笔记和添加笔记两个功能,界面通过 preload 脚本把这两个功能暴露出来。

图:本文实测终端截图(进度输出节选)
运行 rea analyze-javascript-application 加上应用目录,全程不用模型,也不需要 API key。在我们的测试机上,整个命令约 2 秒跑完(审稿时复跑一次,结果相同),依次完成读取文件、解析代码、搭建应用关系图、生成证据。

图:本文实测终端截图
结果摘要和我们写的代码对得上:1 个窗口、1 个 preload 入口、1 个对外暴露的接口(含 2 个方法),2 个进程间通信频道,preload 发出的 2 次调用都找到了主进程里对应的处理函数。完整结果里,每一项都标了在哪个文件、第几行第几列,以及可信程度。

图:本文实测终端截图
统计数字:读了 6 个相关文件,解析了 4 个 JS 文件,遍历了 280 个语法节点,得出 20 条发现,没有解析失败。
REA 在结果里也写明了局限:它只把代码当静态文本解析,不运行程序;“没找到”不代表不存在,运行时才发生的事它证明不了。
官方推荐的用法,是运行 npx rea-agents setup,选择要接入的 AI 助手,确认改动后重启助手。官方列出的支持对象包括 Claude Code、Codex、Cursor、Gemini CLI 等。接好后,就可以直接用自然语言让助手去调查某个应用的某个功能。
这一步需要登录 AI 助手的账号,通常还涉及付费订阅或 API key,所以本文没有实测,以上只是 README 里的做法。实际效果取决于你接入的模型。
- 只分析自己有权分析的软件
:自己写的、开源许可证允许的,或者拿到授权的。破解、绕过付费、搬运别人的代码,都可能违反用户协议和著作权法; - 系统要求
:要 Node.js 22.19 以上,官方支持列表里没有 Debian 等部分 Linux 发行版; - 原生程序要额外工具
:Hopper 和 IDA 是商业软件,Ghidra 免费但体积较大;这部分本文没有实测; - 数据去向
:REA 本地分析,但接入 AI 助手后,结果会发给模型服务商; - 更新很快
:我们写稿时是 6.4.0,命令和输出以后可能变化。
文中时间如无特别说明,均为北京时间;GitHub 数据为 2026 年 10 月 12 日 11:14 实测。
#REA #GitHub #开源 #AI编程 #逆向工程
算力过载
AI 热点 × AI 精华|每天 5 分钟,跟上 AI 最重要的变化