REA(Reverse Engineer Anything)是 GitHub 上最近热度很高的一个开源工具。它的核心能力是:把一个原本需要多年经验、要啃汇编的「逆向工程」工作,变成你对自己的 AI Agent 说一句话就能开始的活——让它去分析某个软件的某个功能是怎么实现的,它把证据找出来、讲清原理,甚至帮你写一个类似的实现。
本教程覆盖 REA 是什么、环境要求、下载渠道、安装步骤、命令行用法、更新方式与使用注意事项,按「环境要求 → 下载 → 安装 → 使用 → 注意事项」的顺序,一步步带你跑起来。
本文更新于 2026 年 10 月。REA 迭代较快,具体细节请以官方最新文档为准。
一、REA 安装前的环境要求
REA 基于 Node.js 开发,安装前请先确认以下条件:
| 项目 | 要求 | 说明 |
|---|---|---|
| Node.js | 22.x(≥ 22.23.4)、24.x(≥ 24.22.1)或 26.12.1+ | 版本偏低会出现各种奇怪问题,先执行 node -v 核对 |
| npm | 必须已安装 | 随 Node.js 一起装即可 |
| 原生二进制深度分析 | Hopper / Ghidra / IDA 三者之一 | 可选;其中 Ghidra 免费,Hopper、IDA 为商业软件 |
| Linux 用户 | PATH 里需有 procps 兼容的 ps |
用于进程归属校验,涉及 Ghidra、JADX、固件工具及静态 JavaScript/Electron 分析,详见官方 docs/installation.md |
小提示:如果你只想分析 JavaScript/Electron 应用或 .NET 程序集,纯静态读取即可,不需要任何原生分析引擎,装好 Node.js 就能跑。
二、REA 下载:只认三个官方渠道
这类明星项目极易被仿冒,官方在 README 中专门强调:请只从以下三个官方来源获取:
- GitHub 仓库:https://github.com/morluto/rea
- 官方网站:https://rea.tools/
- npm 包:
rea-agents(https://www.npmjs.com/package/rea-agents)
官方原话是:一个相似的仓库名、或一份被复制的 README,都不能证明这个下载是官方的。
因此,凡是打着类似名字、内容却被改过的「搬运版」「国内加速版」「汉化整合包」,都要留个心眼——这个工具要执行本地分析、要接入你的 Agent,装错包的风险远高于普通软件。
三、REA 安装教程:两种方式
方式一:给 AI Agent 装上(推荐,主流用法)
装好 Node.js 和 npm 后,直接运行:
npx rea-agents setup
这条命令会:
- 把你选的 Agent 注册上 REA 的 MCP 服务;
- 安装配套的工作流指令;
- 为你现有配置做备份。
流程上会让你选择要接入的 Agent、审查改动、再由你确认。
官方已支持的 Agent 包括:
| Agent | 说明 |
|---|---|
| Claude Code | 官方支持 |
| Codex | 官方支持 |
| Cursor | 官方支持 |
| Gemini CLI | 官方支持 |
| Grok Build | 官方支持 |
其他支持本地 MCP 的客户端,可走手动 MCP 注册(见官方 docs/installation.md 的 mcp-registry 一节)。
装完后记得重启你的 Agent,否则新配置不生效。
方式二:装成全局命令行工具
习惯在终端直接使用的,可以全局安装:
npm install --global rea-agents
rea --help
装好后即可用 rea 命令。注意:npm 包名是 rea-agents,但命令名是 rea,两者不一样。
不想全局安装的,也可以用一次性调用跑单条命令:
npx rea-agents@latest <命令>
用 Bun 的话,把 npx rea-agents@latest 换成 bunx rea-agents@latest 即可。
四、REA 使用教程:两种姿势
姿势一:对你的 Agent 说话(核心用法)
装好并重启 Agent 后,直接用自然语言下令。官方示例:
Understand how search works in the Notes app, show me the evidence, and build a
similar feature for my project.
意思是:「搞清楚 Notes 应用里的搜索是怎么实现的,把证据给我看,然后给我的项目做一个类似的功能。」
把 Notes 换成你要研究的目标、把「搜索」换成你想搞懂的功能即可。你不需要自己啃汇编,让 Agent 去追问、要证据,最后给你一个能跑的实现。
姿势二:命令行直接分析
以分析一个解包出来的 JavaScript/Electron 应用目录或 ASAR 包为例:
npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json
返回结果包含模块、导入、Electron 边界及对应证据。路径换成你自己的目标(Windows 上形如 "D:/apps/example")。
原生二进制分析需先配置 provider(Hopper / Ghidra / IDA),命令细节见官方《CLI and Evidence》文档。
五、REA 如何更新到最新版本
官方明确说 「REA changes quickly」,新版本带频繁的 bug 修复,保持更新很重要。
-
全局安装的(
npm install --global或bun add --global):直接跑bashrea update
(
rea --update是其别名,效果一样。) -
用 npx 的 Agent 套装:跑
bashnpx rea-agents@latest setup
然后审查改动并重启 Agent。
两个小坑:
- 用 Bun 全局更新需要 Bun 1.2.17 或更高版本,低版本要先手动升级 Bun;
- 更新器对标准输出/错误输出有 4 MiB 上限(保护机制,不是错误)。
六、REA 使用注意事项
| 风险点 | 说明 |
|---|---|
| 来源仿冒 | 只从官方三个渠道获取;工具要执行本地分析、接入 Agent,装错包风险很大 |
| Node 版本 | 官方给的是区间最低版本号(22.x ≥ 22.23.4、24.x ≥ 24.22.1、26.12.1+),装前先 node -v 核对 |
| 商业引擎授权 | 深度分析原生二进制必须自购/授权商业工具,破解版与共享密钥不被授权 |
| 数据流向 | 分析在本地跑,但结果会交给你的 Agent,进而进入所用大模型服务 |
| 合法用途 | 仅面向合法研究、教育、互操作性、软件保存及你有权分析的软件 |
1. 来源认准,别装仿冒包
只从上面三个官方渠道获取。这个工具要执行本地分析、接入你的 Agent,装错包风险很大。
2. Node 版本卡准
官方给的是区间最低版本号(22.x ≥ 22.23.4、24.x ≥ 24.22.1、26.12.1+),装前先 node -v 核对。
3. 原生分析要配商业引擎
深度分析原生二进制必须有 Hopper、Ghidra 或 IDA 之一。其中 Hopper、IDA、JEB 是商业工具,需自行合法购买/授权,Ghidra 免费。REA 不附带任何工具授权、密钥或激活权利,破解版和共享密钥不被授权。
另外两个实操细节:
- 安装流程可在你同意的前提下可选帮你装 Hopper;
- Hopper 无需提前启动,REA 需要时会自己拉起——但 macOS 首次运行可能弹出「选试用还是激活」对话框,需在同一用户会话里先点掉,否则无人值守任务会卡住。
4. 本地分析,但结果会发给你的大模型
分析过程在本地跑,但工具结果会交给你的 Agent,而 Agent 背后的模型服务商有自己的数据政策。分析出的代码、字符串、结构信息会进入你所用的那个大模型服务。分析敏感目标前务必想清楚。
5. 只用于合法用途
REA 面向合法研究、教育、互操作性、软件保存,以及分析你自己拥有或获授权检查的软件。请遵守所在地法律法规,不要用于未授权的逆向、破解或绕过保护措施。
6. 遇到 bug 先更新
排查顺序为:rea update(或重跑 npx rea-agents@latest setup)→ 重启 Agent → 重试。仍不行再去仓库提 issue,记得带上 REA 版本号、目标类型、复现步骤和错误输出。
七、REA 常见问题(FAQ)
REA 是什么?和普通逆向工具的区别在哪?
REA(Reverse Engineer Anything)是一个面向逆向工程的开源工具,通过 MCP 接入你的 AI Agent。它和传统逆向工具的区别在于:你不用自己啃汇编,而是用自然语言让你的 Agent 调用它去分析,它返回结论、证据和局限,你再据此追问或复刻实现。
REA 支持哪些 AI Agent?
官方已支持 Claude Code、Codex、Cursor、Gemini CLI、Grok Build。其他支持本地 MCP 的客户端可以走手动 MCP 注册。
REA 收费吗?
REA 项目本身是 MIT 协议、免费开源。但它深度分析原生二进制时需要 Hopper、Ghidra 或 IDA 之一,其中 Hopper、IDA 为商业软件,需你自行合法购买授权,Ghidra 免费。
REA 必须装 IDA 才能用吗?
不需要。只分析 JavaScript/Electron 应用或 .NET 程序集时,纯静态读取即可,装好 Node.js 就能跑,无需任何原生分析引擎。只有深度分析原生二进制才需要配 Hopper / Ghidra / IDA。
REA 的分析数据会上传吗?
分析过程在本地运行,但工具产出的结果会交给你接入的 Agent,从而进入该 Agent 背后大模型服务商的数据流程。分析敏感目标前需要自行评估这一点。
REA 对系统有什么要求?
核心是 Node.js 版本(22.x ≥ 22.23.4、24.x ≥ 24.22.1 或 26.12.1+)和 npm。Linux 用户另需 PATH 中有 procps 兼容的 ps;macOS 上首次调用 Hopper 可能需手动处理激活对话框。
安装或使用报错怎么排查?
先 rea update(或重跑 npx rea-agents@latest setup)→ 重启 Agent → 重试同一任务;仍然不行,去官方仓库提 issue,附上版本号、目标类型、复现步骤和错误输出。
写在最后
REA 真正值得关注的,是它的产品思路:把专业门槛极高的技能,拆成「Agent 能一步步调用、且每步都给证据」的工作流。它没有假装消灭了复杂性,只是给了你一个能听懂人话的助手,替你把这些工具串起来用。
如果你手头有想搞懂原理的软件,可以去官网 rea.tools 看官方指南和实打实的案例(如游戏音效计算还原、Notion 的剪贴板桥接、DOS 老游戏的弹幕角度算法还原),比自己瞎摸索效率高得多。
项目地址:https://github.com/morluto/rea ,MIT 协议,免费开源。