REA: take apart an app you like and bring the feature to your project
There is a feature you like in an app, but no source code. REA is an open source (MIT) tool that connects reverse engineering tools to your AI agent through MCP and the CLI. The agent does not look at source code, it reads the binary directly; it works out how the feature works, with evidence, and rebuilds it for your project. Below: setup, a first prompt, what it can analyze and the spots where you will get stuck.
The tool itself
REA is free and runs locally; it does not upload the app anywhere. It sets up with one command for Claude Code, Codex, Cursor and Gemini CLI.
What is extra below: why you need to restart your agent after setup, which targets need extra tools (native binaries need Hopper, Ghidra or IDA, Electron apps need none of them), what to watch out for on Windows and what to type to your agent.
How it works
From feature to code
- 1
Question
You tell the agent which feature of which app you are curious about
- 2
Inspect
REA opens the target: pseudocode, assembly, modules, calls
- 3
Trace
It follows the code path behind the feature and collects evidence
- 4
Explain
The agent explains how it works and what it could not confirm
- 5
Rebuild
It writes it from scratch for your project and tests it
The key point: REA does not copy code. It hands the agent the feature's logic with evidence, and the agent rewrites that logic in your project's language and structure. Every result comes with the evidence behind it and what remains uncertain, so you can see when the agent is guessing.
Setup
You need Node.js and npm. The version matters: Node 22.19 or later, 24.11 or later, or 26+. Check with node -v.
npx rea-agents setupThe command asks which agents to set up, shows the changes it will make and waits for approval. Once approved it adds the MCP server and the workflow instructions, and backs up your existing config. When it is done, fully restart your agent; otherwise REA's tools do not show up.
Installing only the skill is not enough
REA also has a skill on skills.sh, but that is only instructions telling the agent how to investigate. The MCP server that does the actual work comes with the setup command. Install the skill alone and the agent knows what to do but has no tools to do it with.
What to type to your agent
Understand how search works in the Notes app, show me the evidence, and build a similar feature for my project.Replace Notes with your target app and search with the feature you are curious about. Keep the "show me the evidence" part; it is how you tell what the agent actually found from what it guessed.
What it can analyze
What each target needs
- Target
- Electron / JavaScript app
- What you get
- Modules, imports, IPC, routes
- Extra requirement
- None, just Node
- Target
- Native binary
- What you get
- Pseudocode, assembly, calls
- Extra requirement
- Hopper, Ghidra or IDA
- Target
- Website
- What you get
- Page structure, scripts, network traffic
- Extra requirement
- A Chrome-family browser
- Target
- .NET assembly
- What you get
- Metadata, CIL instructions
- Extra requirement
- None
- Target
- Android APK
- What you get
- Manifest, classes, methods
- Extra requirement
- JADX and a JDK
| Target | What you get | Extra requirement |
|---|---|---|
| Electron / JavaScript app | Modules, imports, IPC, routes | None, just Node |
| Native binary | Pseudocode, assembly, calls | Hopper, Ghidra or IDA |
| Website | Page structure, scripts, network traffic | A Chrome-family browser |
| .NET assembly | Metadata, CIL instructions | None |
| Android APK | Manifest, classes, methods | JADX and a JDK |
The easiest target to start with is Electron apps: many desktop apps like Notion, Slack, VS Code and Discord are Electron, and they need no extra tools. You can also look from the terminal:
npx -y rea-agents@latest analyze-javascript-application "/absolute/path/to/app" --jsonThe path must be absolute and point to the extracted app folder or its .asar file.
If you get stuck
Symptom and fix
Setup finished but the agent does not see REA
Fully close and reopen the agent. MCP servers only load at startup
An analysis engine error on a desktop app
Native analysis needs Hopper, Ghidra or IDA. Setup can install Hopper with your approval; Ghidra support on Windows is still experimental
Something that worked yesterday fails today
REA updates very often. Refresh with npx rea-agents@latest setup and restart the agent
Mind what you take apart
Understanding the logic of an idea and rewriting it in your own code is one thing; lifting someone else's code or design as is, is another. Some apps' licences explicitly forbid reverse engineering; if you are building something commercial, check the licence first.
DOA: Yapay Zeka ve Otomasyon
Installing these tools on your own is one thing; actually building with them is another. The community has people using these daily and people building systems from scratch.
If you want a system that actually runs in your business, let's talk for 10 minutes; I'll look at what you're trying to build and tell you which path fits. Free, and not a sales pitch.
Book a 10-minute callIf you'd rather learn this alongside people doing the same work instead of on your own, the community is always open:
Join the communityThis is an affiliate link.