项目地址:https://github.com/morluto/rea
作者:morluto | License:MIT | Stars:33万+

最近发现一个非常火的开源项目——REA(Reverse Engineer Anything),Star 数已经突破 33 万。它的定位很有意思:给 AI Agent 接上逆向工程能力,让 Agent 能够"看懂"没有源码的软件,从应用行为一直深挖到二进制层面。

rea-hopper-analysis-hnnmKihzEHOEpFUGREmfpDhkrOdVteuq.png

项目简介

REA 本质上是一个 MCP Server,把各种逆向分析工具封装成 MCP 工具,供 Claude Code、Codex、Cursor、Gemini CLI 等 AI Agent 调用。你可以这样跟 Agent 说:

"帮我搞清楚 Notes 应用的搜索功能是怎么实现的,给出证据,再给我的项目做一个类似的。"

Agent 就会通过 REA 去检查目标程序、追踪相关代码,最后给出带证据的结论,甚至直接帮你写出实现。整个分析过程在本地运行,结果会附带证据和结论的可信度说明。

能分析什么

REA 支持的目标类型非常广:

  • 原生二进制:反汇编、伪代码、字符串、符号、调用关系(需 Hopper / Ghidra / IDA)
  • JavaScript / Electron 应用:模块、导入关系、路由、IPC、原生插件关联
  • .NET 程序集:元数据、CIL 指令、依赖分析(纯静态,无需运行)
  • Android APK:Manifest、类、反编译方法、资源解码(需 JADX + JDK)
  • 网站:页面结构、脚本、网络请求观察、截图
  • 其他:WASM、EVM 字节码、固件、SQLite 数据库、抓包文件(HAR/pcap)等

快速上手

环境要求:Node.js 22+,npm。

  1. 注册到你的 Agent:
npx rea-agents setup

按提示选择你用的 Agent(支持 Claude Code、Codex、Cursor、Gemini CLI 等),确认配置变更后重启 Agent 即可。

  1. 直接问 Agent:
Understand how search works in the Notes app, show me the evidence, and build a
similar feature for my project.
  1. 终端直接用(不经过 Agent):
# 分析一个 Electron 应用目录
npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json

# 全局安装 rea 命令
npm install --global rea-agents
rea --help

工作原理

流程很清晰:Agent 通过 MCP 调用 REA → REA 用对应的分析工具检查目标、追踪代码 → 返回带证据的发现 → Agent 基于这些做追问、解释、写代码、测试。CLI 命令走的是同一套工作流。

适用场景

  • 看到某个 App 的功能想"抄"到自己产品里,但没有源码可参考
  • 想理解某个开源/闭源软件的内部实现细节
  • 安全研究、恶意软件分析、兼容性逆向
  • 学习:把"这个功能是怎么做的"变成可验证的学习过程

注意事项

  1. 逆向他人软件请遵守法律法规和软件许可协议,仅用于学习研究、安全测试等合法目的
  2. 原生二进制分析需要本机装有 Hopper、Ghidra 或 IDA(setup 可选装 Hopper)
  3. 项目迭代很快,建议保持更新:rea update
  4. 认准官方渠道:morluto/rea、rea.tools、npm 的 rea-agents 包,谨防仿冒仓库

官方文档和案例写得很全,感兴趣的可以直接去看:

👉 morluto/rea | rea.tools

如果觉得有用,别忘了给原作者点个 Star ⭐