Reverse Engineer Anything

Reverse Engineer Anything

Reverse Engineer Anything: REA Gives Your AI Agent X-Ray Vision

Ever spotted a slick feature in an app and wondered how it actually works under the hood? REA (Reverse Engineer Anything) is an open-source, MIT-licensed project that lets your AI agent find out, no source code required.

How it works

REA is an MCP server, a standard way for AI agents to call outside tools. Once it's set up, agents like Claude Code, Codex, Cursor, and Gemini CLI can use it directly. You ask a plain question, such as "How does search work in the Notes app? Show me the evidence and build something similar for my project." The agent then uses REA to inspect the target, trace the relevant code, and return findings along with the evidence behind them and any open unknowns. From there it can explain the behavior, ask follow-up questions, or write and test its own implementation.

What it can analyze

The range is wide: native binaries (using Hopper, Ghidra, or IDA), JavaScript and Electron apps, .NET assemblies, websites, Go and Rust binaries, WebAssembly, EVM smart-contract bytecode, and SQLite databases. Static JavaScript and .NET inspection don't need a native analysis engine at all. Analysis runs locally, so your target app is never uploaded.

Real results

The showcases are the best proof. In one, REA helped rebuild a sound-panning routine from the classic game DX-Ball in C; the reconstruction passes 3,205 test cases against the original x86 code and reproduces all 63 compiled bytes. Another traces how Notion's clipboard data travels from the app's interface through its Electron layers. A third recovers bullet-pattern math from a 16-bit PC-98 game.

Getting started

With Node.js 22 or later installed, setup takes one command:

npx rea-agents setup

It registers REA with your agent, installs matching workflow instructions, and backs up your existing configuration. Prefer the terminal? A CLI exposes the same workflows.

REA is meant for lawful research, education, interoperability, software preservation, and analysis of software you own or are authorized to examine.

GitHub · rea.tools