REA AI Reverse Engineering Open Source Project
发布时间:2026-10-12 | 浏览:1
REA is an open-source, agent-first reverse engineering platform and MCP server bridging application behaviors down to native binary disassembly. Seamlessly integrating Hopper and Ghidra, it equips AI coding agents like Claude Code and Cursor to inspect closed-source targets locally, recover algorithms with verifiable evidence, and reconstruct production-ready features directly for your own codebase.
REA is an open-source, agent-first reverse engineering platform, MCP server, and skill catalog that enables AI coding assistants to investigate software from top-level application behaviors down to native binary disassembly. In software development, teams frequently encounter refined engineering patterns, undocumented protocols, or optimized algorithms embedded within closed-source applications or legacy systems. Without access to source repositories, manual decompilation and dynamic debugging typically demand weeks of specialized human effort, stalling technical adoption and cleanroom reimplementation.
REA eliminates this reverse engineering barrier by introducing a standardized Model Context Protocol interface between autonomous agents and local analysis toolchains. Covering GUI interactions, network traffic traces, Electron IPC boundaries, and native machine instructions, REA allows developers to explore targets using natural language. When equipped with Claude Code, Cursor, Codex, or Gemini CLI, agents autonomously orchestrate decompilation engines, extract cross-references, verify behavioral evidence, and reconstruct production-grade implementations directly for your own codebase.
Core Features #
Multi-Engine Native Binary Analysis Bridge
REA implements an engine-agnostic binary analysis abstraction layer that dynamically orchestrates industrial decompilers including Hopper, Ghidra, and IDA Pro based on host availability. When an agent requests binary inspection, the system initiates a background analysis daemon to parse symbol tables, cross-reference strings, and construct control flow graphs. To handle massive binary libraries without hanging the host, REA incorporates adaptive timeout negotiation and streaming result delivery, shielding the model from unresponsive workers. Instead of flooding LLMs with raw assembly dumps, the bridge translates raw machine instructions into structured pseudocode and semantic summaries that agents can immediately reason about.
JavaScript and Electron Application Deconstruction
For modern desktop and web applications, REA delivers native-engine-free static deconstruction. The pipeline unpacks ASAR resource bundles, unrolls bundle topologies, and reconstructs modular dependency graphs from minified code. Specifically tailored for Electron architectures, REA traces process boundaries by isolating preload bridge channels, bidirectional IPC messaging contracts, and native C++ addon bindings. AI agents can seamlessly follow user interface events, such as rich-text clipboard transfers or custom protocol handlers, through renderer processes down to main process scheduling routines, revealing exact application mechanisms without running target code.
Evidence-Chain Driven Reconstruction Loop
To prevent large language models from hallucinating decompiled algorithms, REA enforces an evidence-backed verification loop. Every analytical conclusion returned by the agent must link directly to tangible evidence, such as specific memory offsets, byte sequences, symbol names, or extracted resource trees. During algorithmic reconstruction, REA guides agents through structured hypothesis generation, targeted inspection, evidence correlation, and test suite generation. Once the decompiler logic is understood, the agent derives edge-case inputs and synthesizes unit tests, ensuring the reconstructed code matches original system behaviors down to the byte level.
Multi-Modal Architecture Analysis Matrix
Beyond standard C and C++ native binaries, REA incorporates a broad reverse engineering matrix spanning varied architectures and runtimes. The managed code analyzer inspects .NET assemblies to unpack metadata tables and Common Intermediate Language instructions. For mobile applications, headless JADX integration decompiles Android APK packages to reveal manifest declarations and obfuscated class hierarchies. In embedded and security contexts, REA pairs with Binwalk and Unblob to segment firmware regions. The platform also decodes EVM bytecode selectors and analyzes Linux core crash dumps, providing agents with an all-in-one investigation toolkit.
Getting Started #
Global Installation and Agent Configuration
Before configuring REA, verify that your environment includes Node.js (version 22.19, 24.11, or 26+) and npm. Run the interactive setup wizard to detect agents, back up configurations, and register the MCP server:
To install the standalone command-line suite for routine terminal usage:
Terminal Static Application Analysis
Inspect extracted JavaScript or Electron application bundles without configuring native decompiler engines:
Manual Agent MCP Server Registration
To register the REA server manually within a project .cursor/mcp.json manifest, add the following configuration block:
For Claude Code users, execute the global registration command in your terminal:
Frequently Asked Questions #
Do I need to install Hopper or Ghidra before using REA
Deep inspection of native C and C++ binaries requires an installation of Hopper, Ghidra, or IDA Pro. However, static analysis of JavaScript bundles, Electron packages, and .NET assemblies works out of the box without any native analysis engine. During initial configuration, the setup wizard can install Hopper with user consent on supported systems, while existing Ghidra or IDA installations are detected automatically.
How do I resolve Ghidra startup timeouts on large binaries
Because Ghidra runs on the Java Virtual Machine, symbol indexing and decompiler initialization on large dynamic libraries can exceed default response limits. When encountering timeout errors, export the startup timeout environment variable in your terminal to extend the wait period to two minutes or more. Ensure your local Java runtime matches Ghidra prerequisites and terminate unneeded virtual machines to free system memory before launching large analysis tasks.
Why does JavaScript analysis fail to locate modules in Electron apps
Module detection errors generally occur when the specified path points to a symbolic link or a wrapper directory rather than the physical folder housing application assets. Ensure that your path targets the concrete directory containing package files or points directly to the internal ASAR archive. If the target application employs custom encryption or proprietary binary packers, static parsing cannot recover the source tree directly, requiring dynamic process capture or hook-based memory extraction instead.
Does REA upload application binaries or extracted code to the cloud
All file extraction, binary decompilation, and code analysis routines execute entirely on your local machine. REA never transmits analyzed binaries, memory dumps, or unpacked assets to external cloud servers. The only data leaving your workstation is the structured text snippets, pseudocode summaries, and call stacks forwarded by your coding agent to its configured model provider, strictly governed by your existing provider privacy terms.
Recommended Projects
openGym is an open-source, self-hosted workout and body-weight tracking platform that puts personal fitness data strictly on your own hardware. Featuring WebAuthn passkey authentication, offline-capable field-level synchronization, and an interactive muscle recovery heatmap over 5,600 exercises, it uniquely provides a read-only MCP server and self-hosted AI coaching across leading LLM providers.
OpenSEO is an open-source SEO suite and analytics platform crafted as a cost-effective alternative to Semrush and Ahrefs. Equipping teams with keyword research, rank tracking, competitor intelligence, backlink auditing, and AI brand visibility, it provides a native MCP server and composable agent skills to let autonomous AI agents execute end-to-end search optimization workflows.
Huashu Art Motion
Huashu Art Motion is an open-source animation skill for AI coding agents that renders programmatic art animations. Featuring thirty-five authentic art style recipes and nine explainer motion grammars, it coordinates procedural Canvas brush strokes, long-scroll multi-world transitions, AI character sprite synthesis, and BPM-synchronized audio tracks to turn static masterpieces into fluid, dynamic cinematic stories.