夜雨聆风学习资料网

ARTICLE · 1135209

【GitHub趋势】REA:让 AI 助手带着证据分析应用功能

【GitHub趋势】REA:让 AI 助手带着证据分析应用功能

项目简介

字段
内容
项目名称
morluto/rea
项目地址
https://github.com/morluto/rea
Star 数
8437
Fork 数
918

缺少源码时,如何弄清一个应用的功能实现?REA(Reverse Engineer Anything)通过 MCP 把分析工具接入 AI 助手,也提供命令行入口,覆盖原生二进制、JavaScript/Electron 应用等对象。分析在本地进行,结果附带证据与限制,方便继续追查具体功能。官方 README

核心特性

  • 终端与助手共用能力:可直接运行分析命令,也能让助手在会话中调用工具、保留调查上下文。项目说明
  • 静态梳理应用结构:JavaScript/Electron 分析可恢复模块、导入、路由和 IPC 等线索,无需执行目标应用。官方 README
  • 沿功能线索追踪:从字符串、路由或模块等入口查找可达关系,并保留匹配依据;静态关系不等于实际执行过的路径。功能追踪文档
  • 比较版本并保留疑点:对两份应用图谱分类标注变化,覆盖不足时保留未知,不把未观察到的项目直接判为删除。版本比较文档

快速开始

先按官方安装说明准备 Node.js 与 npm:支持 Node.js 22.x(至少 22.19)、24.x(至少 24.11)或 26+。静态 JavaScript 分析只需这些运行时;原生分析还要满足对应引擎的系统要求。下面采用官方提供的 npm 全局安装方式,再配置助手:

npm install --global rea-agentsrea setup

在交互流程中选择需要接入的助手,核对配置修改;完成后重启相应助手。Hopper 是独立可选项,单纯做静态 JavaScript 分析无需安装它。配置流程

准备好解包后的 JavaScript/Electron 应用目录或 ASAR 文件,把下面的示例路径换成目标的真实绝对路径,再执行 README 支持的分析命令:

rea analyze-javascript-application /absolute/path/to/releases/app.asar --json

输出包含分析结果与证据上下文。遇到环境问题时,可以运行只读诊断,查看依赖和配置状态:命令依据

rea doctor --json

为什么火了

从功能与需求看,REA 可能吸引两类关注:想用自然语言调查应用的开发者,以及希望让分析结果更容易复核的工程师。把线索检索、结构追踪和证据交给同一个工作流程,更容易减少手工搬运上下文的负担。这是基于产品设计的判断,不能据此推断实际使用规模或传播增速。

适合谁

适合需要理解缺少源码的应用、整理接口线索,或比较 Electron 应用版本差异的开发者。要注意,动态调用和模糊关系可能仍是未知,静态追踪不能证明运行时行为。分析边界

若要深入分析原生二进制,还需配置 Hopper、Ghidra 或 IDA 等工具;Hopper 有独立许可及演示版限制。REA 不承诺恢复原始源码,也不承诺自动复制完整应用。官方说明

相关学习资料