REA(Reverse Engineering Agents) Skill 技能
**技能简介** REA(Reverse Engineering Agents)是一款面向 AI 编程助手与编码智能体
技能简介
REA(Reverse Engineering Agents)是一款面向 AI 编程助手与编码智能体的逆向工程技能模块,基于 Model Context Protocol(MCP)实现。它将原本高度专业的二进制分析、伪代码反编译、调用图追踪等能力封装成可被 AI 智能体直接调用的工具集,让 Claude Code、Cursor、Codex、Windsurf、Devin、VS Code 等主流编程助手能够在没有源代码的情况下,调查目标应用的功能实现,并据此重建或借鉴适合自己项目的版本。REA 把"逆向 + 理解 + 重建"三步流程统一在一个本地化、可审计的工作流之中,由 Hopper 与 Ghidra 等成熟的反编译引擎在本地完成全部分析,不上传任何二进制到云端。
核心能力
- 原生二进制分析:支持 macOS .app、Linux ELF、Windows PE 等原生目标,覆盖函数、伪代码、汇编、字符串、符号、调用、引用、字节读取、文件偏移等 41 项只读操作,可恢复过程、伪代码、汇编、字符串、段与元数据。
- 多格式应用分析:覆盖 JavaScript 与 Electron 应用、.NET 程序集与 CIL 指令、Swift 与 Objective-C 元数据、浏览器页面、APK 反编译、Linux 固件区域检查等场景,提供跨层功能追踪与构建版本对比。
- 本地 MCP 服务器:通过
npx -y rea-agents@latest mcp即可把 REA 注册为本地 MCP 服务器,配合 Claude Code、Cursor、Codex、Windsurf、Devin、OpenCode、Antigravity、GitHub Copilot CLI、Command Code、VS Code 等十余种智能体使用。 - 智能体专用 Skill 工作流:内置
reverse-engineer-anythingskill,提供从应用概览到批量反编译再到产品功能重建的六步引导(open_binary → search_strings → find_xrefs_to_name → get_call_graph → procedure_pseudo_code → 重建为产品代码),智能体可以自动沿着调用链、交叉引用和调用图定位关键代码。 - CLI + 智能体双形态:既可在终端用
rea analyze/rea doctor直接分析,也可在智能体中调用同一套能力。终端命令完成后会自动释放桥接会话,智能体可在长会话中保持上下文。 - 可审计与可回滚:Setup 在写入智能体配置前会展示所有变更、备份已有配置;每个桥会话使用随机能力令牌与仅限当前用户的 Unix 套接字,诊断日志会移除凭据与认证令牌。
安装配置
- 安装 Node.js 22.x 及以上版本和 npm,然后执行
curl -fsSL https://raw.githubusercontent.com/morluto/rea/main/install.sh | bash一键安装并启动 setup;也可先npm install --global rea-agents,再运行rea setup。 - 运行
npx rea-agents setup,按提示选择要接入的智能体(Claude Code、Cursor、Codex、Windsurf 等),并确认安装路径与变更。Setup 默认会安装 REA 工作流;如需 Hopper 反编译器,可单独批准安装(演示模式无需许可证)。 - 如使用 Ghidra,需先单独安装 Ghidra 12.1.4 与 64 位 JDK 21,再用 Setup 验证并保存路径。Linux x64 / macOS x64+arm64 完整支持,Windows x64 P0 为只读实验性边界。
- 为已有 AI 编程助手追加技能以获得更丰富的调查工作流:
npx skills add morluto/rea --skill reverse-engineer-anything。所有 MCP 客户端也可通过标准 MCP 配置接入。
使用步骤
- 描述目标:让智能体执行 REA 工作流,例如"用 REA 调查备忘录应用的搜索功能,展示证据并用 TypeScript + SQLite 为我的项目实现类似版本",或替换为任意你想了解的应用名。
- 打开二进制:REA 自动调用
open_binary与binary_overview打开目标应用,识别 Mach-O、ELF、PE 或 JavaScript/Electron 容器;如分析 JavaScript/Electron 已解包目录,可直接用npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json静态分析,无需 MCP 与原生引擎。 - 定位线索:智能体调用
search_strings、search_procedures、list_names搜索可疑关键词或函数名,并用find_xrefs_to_name、xrefs、procedure_callers把字符串与符号连接到实际可执行代码。 - 重建控制流:通过
get_call_graph、procedure_callees、procedure_info重建调用关系,再用procedure_pseudo_code、procedure_assembly、batch_decompile反编译相关函数为伪代码或汇编。 - 落地为产品:智能体使用其常规文件编辑与测试工具,把恢复出来的行为转换为适合你技术栈的代码、迁移说明、移植代码或互操作替代品;可随时在 Hopper 中追加注释与书签,让人类与智能体的分析互相增强。
适用场景
- 在没有源代码的情况下解释某个桌面或移动应用功能的实现方式,例如离线搜索、数据同步、加密、授权流程。
- 重建应用的身份验证、存储、更新、网络或反作弊流程,用于安全审计、漏洞研究或自研替代实现。
- 恢复未公开的文件格式、协议或接口,撰写迁移说明或文档,把私有协议转换为开放、可重用的格式。
- 在同一会话内跨版本对比两个应用(例如新旧版的"备忘录"应用),找出实现差异、性能回退或回归来源。
- 调查竞品的特色功能,为自己的产品构建量身定制的版本,全程使用本地二进制证据,避免猜测或凭印象模仿。
适用人群
- 逆向工程师与安全研究员:希望让 AI 智能体协助处理大批二进制与跨格式分析任务,但仍由 Hopper/Ghidra 提供本地可信的底层证据。
- 桌面 / 移动 / 跨平台应用开发者:希望在没有源代码的情况下借鉴某个特性,或把私有协议迁移到自有产品中。
- AI 编程助手重度用户(Claude Code、Cursor、Codex、Windsurf、Devin、Copilot CLI):希望把"逆向 + 理解 + 重建"作为一个标准 skill 注入到现有工作流。
- 安全审计与漏洞响应团队:在本地、可审计的环境中批量分析可疑二进制或第三方依赖,规避云端沙箱的数据外泄风险。
工作原理
REA 由 CLI 与本地 MCP 服务器两层组成。CLI 提供 setup、analyze、doctor、mcp、update、uninstall 等子命令;MCP 服务器以 npx -y rea-agents@latest mcp 启动,对智能体暴露一套统一的工具(原生检查、调查工作流、macOS 原生工具、产物图、托管 PE/CLI、固件、Android APK、浏览器观察、Electron 分析、JavaScript 运行时、应用工作流、工作区与观察,共 100 余项)。当智能体调用这些工具时,REA 通过本地 Unix 套接字把请求转发给 Hopper(macOS/Linux)或 Ghidra(多平台),由它们执行真实的反编译、字符串搜索、调用图分析等操作,再把结果以伪代码、汇编、调用关系等形式回传给智能体。整个流程在本机完成,二进制始终留在用户磁盘上,REA 不提供任何托管分析服务。
官方链接
评论与建议
登录 后参与评论或提建议