Guide · Agent skill
How to use the Reverse Engineer Anything agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The reverse-engineer-anything skill teaches an AI agent to examine software that has already been shipped, such as compiled native programs, Android APKs, Electron or JavaScript apps, .NET assemblies, firmware images and browser targets, using the REA reverse-engineering toolkit. This guide explains what the skill changes, how to install it, how to ask for it in plain language, what it needs and where the safety limits are. By the end you will know how to set it up, when it is the right tool, and how to read the evidence it returns.
Quick start
- 1Download and unzip the skill. Download the ZIP from this page and unzip it. Place the folder in ~/.claude/skills/ for personal use or in a project's .claude/skills/ folder.
- 2Or upload it in the Claude apps. In the Claude apps, open Settings, go to Capabilities, then Skills, and upload the skill.
- 3Make REA tools available. Install the REA MCP server or the rea-agents npm package (Node.js and npm required) and register it with your MCP-capable client.
- 4Install the engine your target needs. Install Ghidra, IDA, JADX or Kuna for native and Android work, or Binwalk or Unblob on Linux for firmware. REA setup will not install these for you.
- 5Ask in plain language. Describe the software, give the agent the local path to the file or folder, and state the question you want answered.
- 6Read the evidence critically. Check the evidence, limitations and unknowns the agent reports, and separate what is established from what is still unknown.
What the skill makes the agent do
An agent skill is a folder of instructions that an AI agent reads when a task matches the skill's description. This one tells the agent when and how to use REA, a reverse-engineering toolkit, to answer questions about software whose source code you do not have.
The agent is told to pick the REA tool that fits the target, read the returned evidence carefully, and report what is actually established versus what remains unknown. It also covers recovering from connection problems with the REA server and building web application environment bundles (AgentEnv bundles) from a live instance or a recorded capture.
- Explain how a shipped program, mobile app or Electron app behaves
- Compare behavior between versions of a packaged application
- Decompile code or guide a reconstruction
- Build an agent environment from a web application's live instance or a capture
Install the skill (ZIP or Claude apps upload)
Download the ZIP of the skill from this page and unzip it. For a personal install, place the unzipped skill folder in ~/.claude/skills/. For a single project, place it in that project's .claude/skills/ folder instead.
If you use the Claude apps rather than Claude Code, upload the skill under Settings, then Capabilities, then Skills.
Installing the skill only adds instructions. The source states that it does not register the REA MCP server, install analysis engines, or add tools to an already-running agent. Those are separate steps, covered below.
Set up the REA server and engines
The skill needs REA tools to be available to your agent. You can get them from the REA MCP server or from the rea-agents npm package, which requires Node.js and npm. Claude Code, Codex or another MCP-capable client is needed to register the server.
Analysis depends on the target. The source names Ghidra, IDA, JADX and Kuna as native analysis engines, and says firmware extraction on Linux uses Binwalk or Unblob. REA setup does not install Node.js, npm, Homebrew, Java, Ghidra, IDA, JADX, Kuna, Binwalk or Unblob, so you must install whichever ones your target needs yourself.
If REA tools are already available to your agent, the skill proceeds directly to the target without running setup. Do not run diagnostics before every investigation.
- REA MCP server, or the rea-agents npm package (Node.js and npm)
- A native engine such as Ghidra, IDA, JADX or Kuna, depending on the target
- Binwalk or Unblob on Linux for firmware extraction
- Claude Code, Codex or another MCP-capable client
Trigger the skill with a natural request
You do not need special syntax. Describe the software and the question in plain language, and say what you are looking at. The skill's description covers shipped-artifact or requested runtime evidence, feature explanations, version comparisons, decompilation and reconstruction.
The agent routes by the kind of target you supply. An ASAR or extracted JavaScript tree goes to the JavaScript analysis tool, an APK goes to the Android tools, a .NET managed assembly goes to the managed-artifact tool, and a firmware image goes to the firmware tools. Give the agent the local path to the file or folder.
- Ask what a feature in a shipped app does, and provide the APK, binary or app folder
- Ask how two versions of a packaged application differ in behavior
- Ask for a decompiled view of a specific function or class from a provided file
- Ask for an agent environment from a web application you have a capture of
Run a quick JavaScript or ASAR analysis from the command line
For an operator-supplied JavaScript tree or ASAR, the source gives a CLI fallback that needs no MCP registration and no native engine. Replace the path with the absolute path to your app. The CLI returns the evidence record directly, and it does not establish that MCP is configured.
Read the returned evidence, graph, limitations and unknowns with the same care as an MCP result.
npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --jsonBuild an agent environment from a web application
For a web application, the workflow records the application once with capture_browser_scenario, checks what the environment would serve, and then writes the bundle with export_environment_bundle. The result is a folder that agent-env deploys, whose MCP tools answer from what that recording observed.
For a HAR file you already have, skip the recording step and use inspect_web_network_capture, or run rea environment-build with the capture file and an output directory.
Before recording, the source says to use only an instance the user states is disposable or seeded for this purpose, because every write step creates, edits or deletes data. If that has not been stated, the agent should ask first.
- Use only disposable or seeded instances for recording write steps
- Ask before any scenario that changes data if the user has not said it is safe
rea environment-build <capture.har> <dir>Safety, scripts and network use
This skill runs scripts and uses the network. Decompiling or probing a target can breach licences or the law, so use it only on software you are authorized to inspect. The skill is also designed to avoid unnecessary actions: it says not to run REA for ordinary analysis of a complete source repository, and not to run setup before every investigation.
Live-target work has distinct launch, attach, mutation and cleanup effects. Runtime tools are not required to have a preliminary static session, but you should understand what each one does to the target before allowing it.
- Use only on software you have authorization to inspect
- Do not use it to analyse a full source repository; normal repository tools are better
- Check approval prompts from your client before allowing runtime or mutating actions
What people use it for
- Explaining how a compiled desktop program handles a feature when no source code is available
- Inspecting an Android APK's classes and methods, or finding incoming references to a method
- Comparing a packaged Electron app across two versions to see what behavior changed
- Inspecting a .NET managed assembly or a firmware image's regions
- Building an agent environment from a recorded web application session
Frequently asked questions
What are the requirements for the reverse-engineer-anything skill?
You need the REA MCP server or the rea-agents npm package, which requires Node.js and npm, plus an MCP-capable client such as Claude Code or Codex. Depending on the target you also need an engine such as Ghidra, IDA, JADX or Kuna, and Binwalk or Unblob on Linux for firmware. The skill runs scripts and uses the network.
Is the reverse-engineer-anything skill free to use?
The project is released under the MIT licence. The source does not describe pricing, so check the licence terms for the exact permissions that apply to your use.
Does the skill work out of the box after I install it?
No. Installing the skill only adds instructions. The source says it does not register the REA MCP server, install analysis engines, or add tools to an already-running agent, so you must set those up separately.
Why won't my agent see the REA tools after installing?
If the tools are missing, the source says to diagnose the observed blocker. For setup-owned registrations, run rea doctor when REA could not start or tools stay missing, then restart your MCP client. For a plugin install, follow the plugin recovery section of the connection guide. Do not repeat the same failing call without a change.
Can I use this skill to analyse an entire source repository?
No. The skill says to skip REA for ordinary analysis of a complete source repository and to use normal repository tools instead.
What is the difference between the skill and the REA tools?
The skill is a set of instructions that tells the agent how and when to use REA. The REA tools, served by the MCP server or the CLI, are what actually inspect the target and return evidence.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
This skill suits developers and security researchers who need evidence-backed explanations of shipped software, such as compiled programs, mobile apps, Electron apps, .NET assemblies or firmware, and who are authorized to inspect them. It is a poor fit for analysing a full source repository, and for anyone expecting it to work without installing the REA server and the engines their target requires.
Download the skill