
REA是一个面向智能体的逆向工程项目目标是通过统一的MCP服务和CLI,让智能体检查二进制文件、应用程序及其运行时行为。即使目标应用没有源代码,智能体也可以借助REA分析功能实现路径、解释工作机制、展示相关证据,并基于调查结果编写和测试相似实现。
REA将智能体连接到不同类型的分析工具,可以处理原生二进制文件、JavaScript与Electron应用、.NET程序集、网站、Android APK、固件、网络捕获和进程行为等对象。分析主要在本机运行,返回结果不仅包含分析发现,还包含支持结论的证据和相关限制。静态JavaScript和.NET检查只读取用户提供的文件,不会运行目标应用;运行时捕获则会以当前用户权限运行目标或与其交互。
在智能体工作流中,智能体通过MCP调用REA检查目标、追踪相关代码,REA返回调查发现及对应证据,智能体再据此继续提问、解释行为或编写实现。用户也可以直接通过终端调用相同的分析工作流。对于深入的原生程序分析,REA可以连接Hopper、Ghidra或IDA;JavaScript、Electron和.NET静态分析则不要求安装这些原生分析引擎。
1、REA 无需用户手动研读成千上万条汇编指令,你只需要用自然语言提出问题:哪个函数负责响应按钮点击?某一项计算是如何实现的?
2、AI 可以调用各类分析工具,提取反编译代码,查找交叉引用,并输出附带可核验技术细节的结论。
3、REA 支持原生可执行文件、程序库、JavaScript 应用以及 Electron 程序;借助专用功能,它还能分析网页应用的代码与运行行为。
安装与配置 REA
把这段话复制给编程助手:
使用 npx rea-agents@latest setup 安装 REA,并连接到这个编程助手。先展示安装计划,等我确认后再执行,然后验证安装结果。
也可以在终端运行:
npx rea-agents@latest setup
确认安装计划后,重启编程助手。
1. 准备电脑
在存放目标文件的电脑上操作。本地编程助手可以读取这些文件,并帮你运行分析工具。
怎么打开终端?
Windows:打开开始菜单,输入 PowerShell,按 Enter。
macOS:按 ⌘ Space,输入 Terminal,按 Enter。
Linux:多数桌面环境可以按 Ctrl Alt T。
用 Ctrl V 粘贴命令(macOS:⌘ V;Linux 终端:Ctrl Shift V),再按 Enter。
命令粘贴到终端;标着“你的编程助手”的提问粘贴到助手的聊天框。
需要 Node.js 22(22.19+)、24(24.11+)或 26+。npm 会随 Node.js 一起安装。
为编程助手建一个工作文件夹
在终端中为练习建一个文件夹,然后进入它:
Terminal
mkdir rea-work
cd rea-work
下一步继续使用这个终端。如果已经有工作文件夹,进入那个文件夹即可。
2. 选择编程助手
你和编程助手对话,它调用 REA 来分析软件。从下面选一个客户端;第一次使用就展开它的安装步骤。
Codex · 使用 ChatGPT 账号
Cursor、Windsurf 或 VS Code · 使用编辑器
Claude Code · 使用 Claude 账号
Claude Desktop · 使用桌面聊天应用
OpenCode · 选择 AI 模型
全部支持的客户端与 setup ID
3. 连接 REA
把这段话复制给编程助手:
使用 npx rea-agents@latest setup 安装 REA,并连接到这个编程助手。先展示安装计划,等我确认后再执行,然后验证安装结果。
也可以自己运行 setup
选择客户端,并查看配置计划。REA 会添加 MCP 连接和配套调查技能,同时备份已有配置。确认后才会应用更改。
MCP 让编程助手能够调用 REA;skill 则告诉它分析软件时该怎样使用这些工具。
第一次练习可以跳过可选的 Hopper 安装。setup 完成后,重启客户端。
如何重启客户端?
Terminal
npx -y rea-agents@latest doctor --client codex --json
把 codex 换成你客户端的 setup ID。检查通过时会显示 "healthy": true。然后问编程助手:
检查 REA 是否已连接,并告诉我你能使用哪些 REA 工具。
4. 开始第一次分析
示例是一个包含六个文件的 Electron 应用,带有Export notes(导出笔记)按钮。助手无需安装或启动 Electron 就能检查代码。
›下载 https://rea.tools/examples/notes-example.zip,放进一个新的示例文件夹并解压。用 REA 找出点击 Export notes 后发生了什么。展示 notes.csv 写到哪里、有哪些字段,以及相关文件和行号。
寻找带文件和行号的简短解释:
按钮发送 notes:export 消息。主进程把笔记转换为 CSV,并将 notes.csv 写到用户的下载文件夹。列名为 id 和 title。
跟着练习检查一个预测 →
自行下载示例,或使用自己的应用
分析其他类型的软件
按目标类型展开下面的步骤。Provider 指 REA 分析这类软件时使用的本地工具。
原生可执行文件和库 · Hopper、Ghidra 或 IDA
网站、Android、.NET、固件及其他目标
在终端中使用 REA
CLI 命令、全局安装与 curl