Reverse engineering · MCP tooling

REA morluto/rea: Reverse Engineer Anything With an Agent

morluto/rea — REA for short — is an MIT-licensed reverse-engineering workbench that your coding agent drives over MCP. Point it at a native binary, an Electron app, an Android APK or a live website, and it answers with pseudocode, module graphs, decoded manifests and the evidence behind every finding.

What is REA (morluto/rea)?

REA is a TypeScript project by morluto that turns the slow, manual parts of reverse engineering into tool calls an agent can make. Instead of one decompiler window it exposes a catalogue of inspections: native analysis through Hopper, Ghidra or IDA, WASM validation, EVM bytecode dispatch, .NET metadata, APK decompilation, firmware extraction, HAR captures and live process capture.

The repository passed 105.8k stars in October 2026 and ships on npm as rea-agents (6.4.0) under the MIT licence. What separates it from a script library is provenance: every result returns the code it found, the references it followed and the unknowns it could not resolve, so the agent can show its work instead of guessing. The model is not asked to recognise a binary — it is asked to ask the next question.

How REA works with your agent

Your agent talks to REA over MCP, the same local-server protocol it already uses for shells, browsers and editors. The loop is short: the agent asks REA to inspect or trace a target, REA answers with findings and their evidence, and the agent uses them to explain the behaviour, ask a follow-up question, or write and test a replacement implementation.

The CLI runs the same workflows, so anything you can do inside an agent session you can also script: npx -y rea-agents@latest analyze-javascript-application /path --json prints structured results that drop straight into a pipeline.

What you can reverse engineer with REA

Static JavaScript and .NET inspection reads files without running anything. Runtime capture does execute or interact with the target, using your own user permissions; each guide spells out the effects first.

Install and first run

REA needs Node.js 22.x (>= 22.19), 24.x (>= 24.11) or 26+, plus npm. Registering the MCP server with your agent is one command:

Deep native analysis needs Hopper, Ghidra or IDA; REA drives whichever you already have and can start Hopper itself when an operation asks for it. Static JavaScript and .NET inspection needs no native engine at all. On very large binaries you can raise the provider startup deadline with REA_GHIDRA_STARTUP_TIMEOUT_MS or REA_HOPPER_STARTUP_TIMEOUT_MS.

Three things people have already taken apart

The longer write-ups for each showcase live at rea.tools, and the guides there cover each supported target type end to end.

FAQ

Which agents can use REA? Any agent that supports local MCP servers. Setup configures the ones it knows about — Claude Code, Codex, Cursor, Gemini CLI and Grok Build — and other clients can register the server manually.

Do I need Hopper, Ghidra or IDA? Only for deep native analysis. JavaScript, .NET and several other targets are inspected statically, with no native engine installed.

Does REA upload my application? No. Analysis runs on your machine and the results stay there. Whether the agent shares its findings with a model provider is a separate policy you control.

What can it do that a plain decompiler cannot? It answers questions across file types and returns the evidence for each answer, which is what lets an agent explain a behaviour, reproduce it, and then implement and test a replacement.

Where to go next

If this is the kind of tooling you follow, the other boards here track it: AI agent skills trending on GitHub, today's trending board and the trending history archive. The repository itself is at github.com/morluto/rea, the package is rea-agents on npm, and the project site with the guides is rea.tools.

More GitHub Trending Boards