非官方指南,与 Meta 无关联。

最后更新:

Reverse Engineer Anything (REA):完整指南

Reverse Engineer Anything(REA)是一个开源的 MCP 服务器和命令行工具,让 Claude Code、Cursor、Codex 这类 AI 编程代理在没有源码的情况下检查原生二进制、Electron 应用和网站。你用自然语言提问,REA 在本机调用分析工具,代理拿回代码、引用和证据,再给你解释或照着实现。

一句话: REA 免费(MIT 协议),一条命令 npx rea-agents setup 就能装好。JavaScript、Electron 和 .NET 的静态分析开箱即用;原生二进制需要 Hopper、Ghidra 或 IDA 作为底层引擎。它是让代理使用这些工具的一层,不是替代品。

Reverse Engineer Anything (REA) 是什么

REA 全称 Reverse Engineer Anything,是 GitHub 用户 morluto 的开源项目,口号是“一个 MCP 搞定二进制、应用和运行时行为的逆向工程”。简单说,它给你的编程代理装上一套逆向工具:看到别的应用里有个功能不错,直接让代理去查它是怎么实现的。目前 npm 最新版是 rea-agents 6.4.0,MIT 协议,分析全部在你自己的电脑上跑。

来源: GitHub:morluto/rea(README)

来源: rea.tools 官网

REA AI 的工作原理:代理、MCP、Ghidra 和 Hopper

REA 本身不是反汇编器,而是一个 MCP(Model Context Protocol)服务器,夹在代理和真正的分析引擎之间。你在 Claude Code 或 Cursor 里问一个二进制的问题,代理就去调用 REA 的工具;REA 启动 Hopper、Ghidra 或 IDA(或者它自带的 JavaScript 分析器、分析网站用的 Chrome 系浏览器),跑完分析后返回结构化结果。终端里的 rea 命令走的是同一套流程。

  1. 你向代理(Claude Code、Cursor、Codex)提问,对象是你电脑上的某个应用或文件。
  2. 代理通过 MCP 调用 REA 的工具。
  3. REA 在本机调用合适的引擎:原生代码用 Hopper、Ghidra 或 IDA,Electron 用 JS 分析器,网站用浏览器。
  4. REA 返回代码、引用、证据和未确认的部分。
  5. 代理解释原理,或者在你的项目里写出一个类似实现并测试。

REA 不会上传你的目标文件,但代理收到的工具结果会发给它所用的模型服务商,按服务商自己的数据政策处理。

来源: GitHub:morluto/rea(README)

来源: REA 文档:安装和配置

REA GitHub 安装教程:环境要求和命令

  1. 运行 npx rea-agents setup。
  2. 在列表里勾选你用的代理,检查它要改的配置文件路径,确认后执行。原有配置会先自动备份。
  3. 重启代理,让它加载新的 MCP 服务器。
  4. 如果常在终端用,可以全局安装 rea 命令,并时不时跑一下 rea update:项目更新很频繁。
# 1) Register REA with your agents (Claude Code, Codex, Cursor, Gemini CLI ...)
npx rea-agents setup

# 2) Optional: install the rea command for regular terminal use
npm install --global rea-agents
rea --help

# 3) Keep it current (global install / npx setup)
rea update
npx rea-agents@latest setup

以上命令照抄自 github.com/morluto/rea 的 README。用 Bun 的话,把 npx rea-agents@latest 换成 bunx rea-agents@latest。

来源: GitHub:morluto/rea(README)

来源: REA 文档:安装和配置

来源: npm:rea-agents

在 Claude Code、Cursor 和 Codex 里使用 REA

安装向导会在每个代理里注册同一个 MCP 服务器,同时装上 REA 的工作流说明(也就是 reverse-engineer-anything 这个 skill)。重启后直接用自然语言提问就行。下面第一条是 README 自带的示例,其余三条是我们按代理分别写的。

README 示例(任何代理)
Understand how search works in the Notes app, show me the evidence, and build a
similar feature for my project.
Claude Code:追踪 Electron 功能
用 REA 分析 /Applications/Example.app,找出“复制为 Markdown”命令是怎么实现的:从渲染进程开始,经过 preload 和 IPC 一直追到主进程,每一步给出文件和函数名。列出你无法确认的部分。
Cursor:参考闭源库
用 REA 检查 ./vendor/libexample.dylib,找到解析配置文件的函数,给出它的伪代码和引用的字符串,然后在 src/config/ 里写一个等价的 TypeScript 解析器并附上单元测试。
Codex:调试旧程序
我丢了 ./legacy/report.exe 的源码(我自己 2014 年写的程序)。用 REA 配合 Ghidra 找到 CSV 导出里格式化日期的地方,解释它为什么写出两位数年份。

来源: GitHub:morluto/rea(README)

来源: REA 文档:安装和配置

先在终端里试一下 REA

不接代理也能先试。下面这条命令分析一个解包后的 JavaScript/Electron 应用目录或 ASAR 文件,输出它找到的模块、导入和 Electron 边界,并附上证据,不需要任何原生引擎。

npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json

把路径换成你的目标,Windows 上可以写成 "D:/apps/example"。

来源: GitHub:morluto/rea(README)

REA 应用场景:从 Electron 应用到恶意软件,逆向分析几乎一切(reverse engineering anything)

来源: REA 官方案例(DX-Ball、Notion、TH04)

来源: REA 使用声明(DISCLAIMER)

REA 视频教程

两个 YouTube 创作者做的 Reverse Engineer Anything 实操视频(英文,非 REA 官方,也不是我们做的)。点击播放后才会从 YouTube 加载。

Reverse Engineer Any App using REA (41k Stars)
Reverse Engineer Any App using REA (41k Stars) · Prompt Engineer 48
How To Use REA To Clone Any Software In Minutes
How To Use REA To Clone Any Software In Minutes · Eric Tech

REA、Ghidra 和 Hopper 对比

它们其实不是竞争关系。Ghidra 和 Hopper 是负责反汇编、反编译的引擎;Reverse Engineer Anything 是架在上面的代理层,负责驱动它们,并把输出整理成代理能用的证据。

REAGhidraHopper
是什么把 AI 代理连到分析工具的 MCP 服务器 + CLI美国国家安全局(NSA)开源的逆向工程套件反汇编和反编译工具
谁来操作你的 AI 代理,或你在终端里你,用图形界面或脚本你,用图形界面或脚本
价格免费,MIT 协议免费,Apache 2.0商业软件,有功能受限的免费试用
系统macOS、Linux;Windows 支持代理配置、JS/.NET 分析和实验性 GhidraWindows、macOS、Linux(需要 JDK)macOS、Linux
分析对象原生程序、Electron/JS、网站、HAR、.NET、Android、固件等多种 CPU 架构的原生二进制原生二进制(Mach-O、ELF、PE)
适合直接提问,拿到带证据的答案深度手工分析、写脚本在 Mac 上快速手工分析

IDA 是第三个可选引擎。商业引擎需要你自己的合法授权,REA 不提供。

来源: GitHub:morluto/rea(README)

来源: GitHub:NationalSecurityAgency/ghidra

来源: Hopper Disassembler 官网

很多情况下合法,但取决于你所在的地区、分析的对象和你同意过的许可协议。不少地方允许为了互操作、安全研究、教学和修复自己拥有的软件而逆向;美国 DMCA 有互操作豁免,欧盟软件指令也允许在一定条件下为互操作而反编译。但软件许可或服务条款仍可能明确禁止。

REA 自己的声明写明,它只用于合法研究、教学、互操作、软件保存,以及分析你拥有或获得授权的软件。项目不会帮助绕过 DRM、授权校验或反作弊,不会帮助做游戏外挂、绕过未获授权系统的身份验证,也不会帮助复制他人的专有代码和素材。

以上只是一般信息,不构成法律意见。如果你打算公开分析结果,或基于别人的软件发布代码,请先咨询律师。

来源: REA 使用声明(DISCLAIMER)

常见问题

REA 免费吗?

免费。REA 以 MIT 协议开源,npm 包 rea-agents 不收费。你只需要为周边付费:AI 代理的订阅或 API 用量,以及如果用 Hopper 或 IDA,需要它们的授权。Ghidra 免费。

REA skill 是什么?

reverse-engineer-anything 这个 skill 是一套说明,告诉代理什么时候、怎样使用 REA。npx rea-agents setup 会把它和 MCP 服务器一起装好。也可以用 npx skills add morluto/rea --skill reverse-engineer-anything 只装 skill,但这样不会注册 MCP 工具。

REA 支持 Mac 和 Windows 吗?

主要支持 macOS 12+ 和较新的 Linux 发行版,原生分析用 Hopper、Ghidra 或 IDA。Windows 上可以配置代理,JavaScript、Electron 和 .NET 静态分析也能用;Ghidra 支持是实验性的,Hopper 不支持 Windows。

REA AI 是什么?

大家说的“REA AI”就是 REA(Reverse Engineer Anything),一个给 AI 编程代理加上逆向能力的工具。REA 自己没有模型:AI 是你的代理(Claude、GPT、Gemini 等),REA 提供工具和证据。

REA 和其他 MCP 服务器有什么区别?

REA 本身就是一个 MCP 服务器。和只包一个工具的 MCP(比如只接 Ghidra 的桥接)相比,它把多个引擎(Hopper、Ghidra、IDA、浏览器、JS、.NET 和 Android 分析器)放在一次安装里,每个结果都带证据,还附带配套的代理说明。

Reverse Engineer Anything 的 GitHub 地址是什么?

github.com/morluto/rea。README 里安装的 npm 包叫 rea-agents,教程和案例在 rea.tools。

独立指南,与 REA 项目、morluto、Anthropic、Cursor、OpenAI、NSA 和 Hopper 均无关联。内容来自 morluto/rea 的 README、安装文档和使用声明(6.4.0 版),核对于 2026 年 10 月 12 日。REA 更新很快,安装前请以 README 为准。