REA Troubleshooting and FAQ: Common Errors, Token Cost, Privacy and Staying Legal (2026)
Fix common REA errors (setup, Ghidra timeouts, Hopper, providers), cut token cost with the compact profile, protect privacy, sandbox malware and understand legal limits.
Short version: most REA problems come down to (1) an old version, so run rea update or npx rea-agents@latest setup and restart the agent; (2) a backend that isn't ready, so run rea doctor --provider ghidra --json; or (3) large binaries hitting timeouts, so raise REA_GHIDRA_STARTUP_TIMEOUT_MS. Below are the common errors from REA's docs and GitHub issues, plus answers on token cost, privacy, malware sandboxing and the legal side.
Setup guides: install · Ghidra/IDA/Hopper · walkthrough · alternatives. Background: What is REA?
Troubleshooting: step zero
The README's own bug advice, in order:
- Update:
rea update(global npm/Bun install) ornpx rea-agents@latest setup(npx users). Review the plan and restart the agent. - Retry the same task.
- Still broken? Open a GitHub issue with your REA version, target type, steps to reproduce and error output.
Diagnose one thing at a time. A plain rea doctor audits everything and can report healthy: false even when your workflow is fine.
rea doctor --client cursor --json # one agent registration
rea doctor --provider ghidra --json # one engine (or hopper / ida)
rea doctor --skill --json # installed workflow instructions
Common errors and fixes
| Symptom | Likely cause | Fix (from REA docs) |
|---|---|---|
| REA tools don't appear in the agent | Agent not restarted, or the registration is stale | Restart/reconnect. doctor checks files, not the live connection |
rea: command not found |
Installed without --global |
npm install --global rea-agents, or use npx -y rea-agents@latest ... |
| Node version error | Node 23/25 or too old | Use Node 22.19+, 24.11+ or 26+ |
capability_unavailable with ambiguous |
Several engines fit the target | Pick one: --provider ghidra or provider_id |
provider_unavailable |
Engine misconfigured | rea doctor --provider ID --json and follow the remediation |
| Ghidra times out on a big binary | Import plus auto-analysis exceeds the 330 s default | Raise REA_GHIDRA_STARTUP_TIMEOUT_MS. Also raise the client's tool timeout |
| Ghidra stalls on Swift/ObjC arm64 Mach-O (issue #1783) | Objective-C analyzer | REA_GHIDRA_DISABLED_ANALYZERS="Objective-C Message Analyzer" |
native_decompiler missing (macOS) |
Ghidra archive lacks the mac decompiler binary | Build it with the make ghidra_opt recipe in the install docs |
| Java/Ghidra out of memory | 2G default heap | GHIDRA_HEADLESS_MAXMEM=4G in the server's environment |
Cannot launch Hopper! Connection is invalid. |
Pending demo/license/loader dialog | Complete the dialog in Hopper and retry |
| macOS denies Apple Events (Hopper) | Automation permission | System Settings → Privacy & Security → Automation |
| Hopper not detected on Linux (issue #2270, open) | Non-default path | export HOPPER_LAUNCHER_PATH=/absolute/path/to/Hopper |
cleanup_incomplete |
Shutdown couldn't be verified | Retry close_binary on the same connection, per the docs |
| Huge, slow output on Electron apps | Full evidence can be hundreds of MB | Save to a file and use rea inspect-analysis-view summaries |
--client dsh unsupported |
DeepSeek Harness is main-only after 6.4.0 | Wait for the next release |
Issue numbers refer to github.com/morluto/rea/issues, checked Oct 13, 2026.
Token cost: why REA can eat your context
From REA's client-configuration docs: on main, with 172 tools, the full tool definitions were about 496 KB (~120k tokens), or about 290 KB (~68k tokens) with the compact profile. Claude Code normally defers tool definitions through tool search. But if ANTHROPIC_BASE_URL points to a third-party endpoint, tool search turns off and every definition is sent with every request, which can cause "autocompact thrashing" (issue #2019). Fixes from the docs:
- Add
"REA_MCP_INPUT_SCHEMA_PROFILE": "compact"to theenvof themcpServers.reaentry (for Claude Code, in~/.claude.json), then restart. - For non-default models, set
CLAUDE_CODE_MAX_CONTEXT_TOKENSto the provider's real window. - Ask narrow questions. An open issue (#2473) notes that
inspect_machocan return 80k–230k tokens for ordinary apps.
Using your own API key? Big targets plus broad prompts can cost real money. Start small.
Privacy: does REA upload my binary?
From the README FAQ: "REA analyzes targets locally. Your agent receives the tool results, and its model provider has its own data policy." So the file stays on your machine, but pseudocode, strings and other results go to whatever model your agent uses. In practice:
- Don't analyze confidential company binaries with a cloud model unless your org's data policy allows it. Consider a model or plan with no-training/zero-retention terms.
- Results can include secrets embedded in the binary (API keys, URLs). The disclaimer says you're responsible for protecting credentials and captured data.
- IDA Free's cloud decompiler needs network access. The
ida-free-mcp1.1.2 plugin binds0.0.0.0, so firewall it.
Malware analysis: sandbox it
The disclaimer lists malware and incident analysis as legitimate, but notes that some workflows execute or observe programs and that "local operation does not establish authorization or guarantee that executed targets and third-party tools have no external effects". Static workflows (Ghidra headless, .NET metadata, static JS) don't run the target. For live samples:
- Use a dedicated, isolated VM with networking off or controlled. Never use your daily machine.
- Stick to static workflows. Don't let the agent run process-capture tools on samples outside the sandbox.
- Review agent-generated plans and scripts before approving them. The disclaimer makes you responsible for what your agent does.
Is using REA legal?
REA itself is a legal MIT-licensed tool. What you point it at is what matters. Not legal advice.
- Allowed by the project: security research, malware analysis, CTFs, education, interoperability, preservation, and software you own or are authorized to examine.
- Refused by the project: circumventing DRM, license checks or anti-cheat; game cheats; bypassing access controls; copying proprietary code or assets; reselling AI accounts.
- EULAs: many commercial licenses (Adobe's included) forbid reverse engineering, and "possession of a file ... does not by itself establish permission," as REA's disclaimer puts it.
- Interoperability exceptions: the EU Software Directive (Art. 6) and US DMCA §1201(f) give narrow room for reverse engineering to achieve interoperability, under conditions. They don't cover cloning a product.
- Commercial tools: IDA Pro, Hopper and JEB must be legally licensed. Trials carry their own restrictions.
More detail: What is REA? (legal stakes section) and Is reverse engineering games legal?
Quick FAQ
Do I need Ghidra/IDA/Hopper? Only for native binaries. See backend guide.
Which agents work? Any agent with local MCP support. Setup covers Claude Code, Codex, Cursor, Gemini CLI and more. See install guide.
Does REA give me the original source code? No. It gives pseudocode, assembly and module graphs as evidence.
Can it clone an app? The README says it doesn't claim to "automatically clone an application", and the project refuses to help copy proprietary code.
How do I remove it? rea uninstall (add --purge-data to also clear ~/.rea).
Facts and commands in this guide come from REA's official README and docs on GitHub (repository morluto/rea, npm release 6.4.0 checked by the project on 2026-10-11) and rea.tools. REA changes quickly. If something here doesn't match what you see, trust the current docs.
More in this REA series
- Background: What is REA? Timeline, the Adobe/Excel clone confusion and legal stakes
- How to Install REA and Connect It to Claude Code, Codex or Cursor (Step-by-Step, 2026)
- REA with Ghidra, IDA or Hopper: Which Backend to Pick and How to Set It Up (2026)
- REA Tutorial: Analyze an Electron App, .NET DLL or Android APK You Own With Your AI Agent (2026)
- REA vs GhidraMCP vs IDA Pro MCP vs Binary Ninja MCP: AI Reverse-Engineering Tools Compared (2026)
- Legal context: Is reverse engineering games legal?
← Back to all posts