REA:看懂一个功能,做出自己的版本

morluto/rea

让 Claude Code 或 Codex 分析应用的一个功能,拿到代码证据,再规划自己的实现。

最近更新于:

查看 GitHub 项目
npx rea-agents@latest setup
453,913Stars111,553Forks仓库最近推送

先拿到一个有用的结果

先选一个可供分析的 JavaScript 或 Electron 应用,只研究其中一个功能。静态分析无需 Hopper、Ghidra 或 IDA。准备好 Node.js 22.19+(22.x)、24.11+(24.x)或 26+ 与 npm。

  1. 连接 Agent,然后重启会话

    从有权检查的 JavaScript 或 Electron 应用中的一个功能开始。静态 JavaScript 分析不需要原生分析引擎;支持的 Node.js 版本以当前上游安装说明为准。

    npx rea-agents@latest setup
  2. 复制提示词,只选一个功能

    替换 [应用路径] 和 [具体功能],例如搜索、剪贴板格式或快捷键。第一步只做分析和小范围实现计划。

    使用 REA 分析 [应用路径],解释 [具体功能] 如何工作。先读概览,再仅追踪相关模块或函数。每项发现都注明文件、符号或地址,并区分观测与推断。输出简短原理说明、对应证据、仍未知的部分,以及在我项目中实现类似功能的最小计划。
  3. 先检查证据,再开始实现

    一个有用的初步结果应包含清楚的原理说明、来源位置和小范围实现计划。打开一处引用核对,再让 Agent 只实现这个功能,用同样输入比较行为。

官方 READMESkill 入口与工作流安装、客户端与依赖

大家用 REA 做了什么

下面直接嵌入两条 X 上使用者本人的分享,可查看原始演示。结果由分享者报告,可从其中一个具体功能开始自己的尝试。

带字幕的视频编辑器 — @Mehal_Kay

分享者称使用 REA 与 Claude Code 分析 CapCut,并发布了自己编辑器的视频,展示字幕、转场、动画和文字。可以先研究一个小问题:一条字幕如何定位和渲染。

SwiftUI 风扇控制应用 — @zou_chris

分享者公开了使用 REA 分析 Mac Fan Control、再以 SwiftUI 实现的提示词和两张截图。可以先研究一个小问题:一项风扇转速读数如何呈现在界面中。

观看 REA 上手演示

Eric Tech 介绍 REA 的 Skill 与 MCP 工具,演示配合 Hopper 的安装配置,并展示带快捷键、笔记和本地转录功能的 Wispr Flow 风格应用。

视频为英语讲解,02:06 开始安装配置,05:01 开始应用演示。

Eric Tech — REA 安装与应用重建视频教程

Eric Tech:REA 使用视频教程(YouTube)

关于这个 Skill

REA 将编程 Agent 连接到分析工具,用于研究已发布应用及其行为。它针对原生二进制、应用包、Electron 和 JavaScript 等目标选择对应工作流,帮助回答某个功能如何实现。对于完整源码仓库的普通分析,当前说明建议使用常规源码工具。

为什么推荐

先选一个能验证的小功能:搜索交互、剪贴板行为或快捷键。REA 提供分析工具,Agent 解释发现,再帮助你实现和测试自己的版本。

适合用来做什么

  • 希望理解已发布应用中某个具体功能实现方式的开发者。
  • 需要比较应用版本、检查打包资源或追踪二进制函数的分析人员。
  • 希望依据自有软件的分析证据规划重建或兼容实现的团队。

按目标选择分析流程

原生二进制与安装包

通过受支持的分析引擎查看函数、字符串、符号、伪代码和引用;安装包检查可整理 ZIP、APK、IPA 等产物的文件清单。

JavaScript 与 Electron

分析解包目录或 ASAR 文件中的模块、导入、source map、路由、preload/IPC 边界及原生扩展关系。

.NET 与 Android

静态检查 .NET 元数据与 CIL;Android 代码和资源流程需使用文档指定的外部工具。

网页与运行时行为

检查指定的浏览器或 Electron 目标、已保存的网络记录,或明确请求的进程行为。运行时采集会与所选目标交互。

官方 READMESkill 入口与工作流

安装指引与连接 REA 工具

skills CLI 安装 reverse-engineer-anything 及参考文件,不会注册 MCP 服务、安装分析引擎,也不会给已经运行的 Agent 会话添加工具。

完整集成可运行 REA setup,选择要配置的客户端,检查其变更后重启 Agent。setup 默认安装匹配的工作流指引。若工具已正常连接,可直接使用;仅在连接或引擎缺失时做对应诊断。

此处展示的 Agent 来自 SkillHey 共用目录与上游已记录的 setup/手动集成客户端的交集。其他支持 MCP 的客户端可参考上游手动注册说明。

命令用途与使用时机
npx skills add morluto/rea --skill reverse-engineer-anything仅安装 Agent Skill 与参考资料。
npx rea-agents setup为选定客户端配置 MCP 服务与匹配 Skill,并检查拟应用的变更。
npx rea-agents@latest doctor --client codex --json连接缺失时检查 Codex 注册状态;使用其他客户端时替换 client ID。
npx rea-agents@latest setup --client codex --dry-run --json预览针对单个客户端的修复计划,不应用配置变更。

Skill 入口与工作流安装、客户端与依赖

从具体问题到有证据的解释

命令用途与使用时机
npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json可选:通过 CLI 直接检查已解包的 JavaScript/Electron 应用,不需要 MCP 连接或原生分析引擎。
  1. 提供明确目标与问题

    提供本地应用、二进制、ASAR、安装包或浏览器目标,并说明要理解的功能或行为。

  2. 检查概览并沿相关路径追踪

    选择适合目标的工具;较大产物先读取摘要,再追踪选定函数、模块、导入或 IPC 边界。

  3. 保留证据与未知项

    为每项发现保留 Evidence ID 和限制;结果过大时读取已保留的较小视图,或导出证据。

  4. 解释或重建所请求的功能

    利用发现解释行为,或指导独立实现与测试,并明确区分已观测行为和实现中的设计选择。

官方 READMESkill 入口与工作流产物与 JavaScript 重建指南

输出、版本兼容与分析边界

原生分析返回伪代码和汇编,JavaScript 分析整理模块及其关系。这些属于分析结果,并不保证精确恢复原始源码。

静态检查读取提供的产物,不执行应用。运行时流程可能启动或操作所选目标。REA 在本地分析;模型服务处理工具结果时遵循你使用的 Agent 服务条款。

仓库 main 中的指引可能描述旧版 npm 发布包尚不具备的能力。使用已连接服务的实际工具列表与输入格式选择功能;升级后需刷新注册并重启客户端。

使用你有权检查的目标。原生格式和系统支持因分析引擎而异,应参考对应上游指南确认。

官方 READMESkill 入口与工作流安装、客户端与依赖MIT 许可证

什么时候使用 REA,需要准备什么

当问题依赖已发布程序、分析工具或明确要求观察运行时行为时,可考虑 REA。如果已有完整源码,先用常规代码搜索和调用链分析。

只安装 Skill 指令不会安装分析引擎,也不会自动为所有客户端配置工具。上游说明中,插件安装有单独的注册方式;应以实际宿主和可用工具为准。伪代码与恢复模块是有局限的分析证据,不保证等于原始源码。

安装、客户端与依赖已核对的上游 Skill

使用前需要了解

  • 需要能够调用 REA MCP 工具的本地 Agent,或通过终端使用 REA CLI。单独的 Skill 只提供指引与参考资料。
  • Node.js 22.x(22.19+)、24.x(24.11+)或 26+,以及 npm。支持的客户端和系统要求见上游安装指南。
  • 深入原生二进制分析需要受支持的 Hopper、Ghidra 或 IDA。JavaScript/Electron 与 .NET 的静态检查不依赖原生分析引擎。
  • 其他目标有各自依赖,例如网页检查使用 Chrome 系浏览器,Android 代码分析使用 JADX 与 JDK,固件分析在 Linux 上使用 Binwalk/Unblob。
  • REA 采用 MIT 许可。AI 服务和独立分析工具可能有各自费用;Hopper、IDA 的许可与本 Skill 分开。

支持的 Agent

Claude CodeCodex CLICursorGitHub CopilotDeepSeek HarnessGemini CLIGrok BuildHermes AgentOpenCodePiGoogle Antigravity

常见问题

REA 是 Skill 还是 MCP 工具?

仓库同时包含两者。reverse-engineer-anything 是提供指引和参考文件的标准 Agent Skill;REA 还提供实际执行分析的本地 MCP 服务与 CLI。

安装 Skill 会自动注册 REA 吗?

不会。skills CLI 只安装指引;要配置选定客户端的 MCP 注册和匹配指引,应运行 npx rea-agents setup,之后重启客户端。

一定需要 Hopper、Ghidra 或 IDA 吗?

深入原生二进制分析需要受支持的引擎。JavaScript/Electron 与 .NET 静态检查可不依赖它们;其他目标遵循各自文档中的依赖要求。

能精确恢复原始源码吗?

没有此类保证。原生输出包括伪代码与汇编;Agent 可据此解释行为或测试重建实现,同时保留证据和未知项。

资料与来源

原始资料见下方链接;文中的上手建议由 SkillHey 编辑整理。