Última actualización:
Reverse Engineer Anything (REA): la guía completa
Reverse Engineer Anything (REA) es un servidor MCP y una herramienta de línea de comandos de código abierto que permite a agentes de programación con IA como Claude Code, Cursor y Codex inspeccionar binarios nativos, apps de Electron y sitios web sin tener su código fuente. Haces una pregunta en lenguaje natural, REA maneja las herramientas de análisis de tu máquina y tu agente recibe código, referencias y evidencias que puede explicar o aprovechar.
¿Qué es Reverse Engineer Anything (REA)?
REA, abreviatura de Reverse Engineer Anything, es un proyecto de morluto en GitHub. Su lema es “One MCP for reverse engineering across binaries, applications, and runtime behavior” (un único MCP para ingeniería inversa de binarios, aplicaciones y comportamiento en tiempo de ejecución). En la práctica, le da a tu agente de programación un conjunto de herramientas de ingeniería inversa, para que puedas señalarle una app en la que ves una función y preguntarle cómo funciona. La versión actual en npm, rea-agents 6.4.0, tiene licencia MIT y el análisis se ejecuta en local, en tu máquina.
- Inspección sin código fuente. Los binarios nativos se devuelven como pseudocódigo, ensamblador, cadenas, símbolos y referencias de llamadas. Las apps de JavaScript y Electron se devuelven como módulos, imports, source maps, rutas e IPC.
- Evidencias en cada respuesta. Cada hallazgo indica de dónde sale y qué sigue sin saberse, para que tanto el agente como tú puedan comprobar una afirmación antes de confiar en ella.
- Una herramienta, muchos objetivos. Además de binarios y Electron, REA lee sitios web, capturas de red HAR guardadas, ensamblados .NET, APKs de Android, binarios de Go, WASM, firmware y más, a través del mismo MCP y la misma CLI.
Fuente: GitHub: morluto/rea (README)
Fuente: rea.tools: sitio oficial
Cómo funciona REA AI: agentes, MCP, Ghidra y Hopper
REA en sí no es un desensamblador. Es un servidor MCP (Model Context Protocol) que se sitúa entre tu agente y los motores de análisis reales. Cuando le preguntas a Claude Code o a Cursor por un binario, el agente llama a las herramientas de REA; REA arranca Hopper, Ghidra o IDA (o su propio analizador de JavaScript, o un navegador de la familia Chrome para sitios web), ejecuta el análisis y devuelve resultados estructurados. El comando de terminal rea usa los mismos flujos de trabajo.
- Le haces a tu agente (Claude Code, Cursor, Codex) una pregunta sobre una app o un archivo de tu máquina.
- El agente llama a las herramientas de REA a través de MCP.
- REA ejecuta en local el motor adecuado: Hopper, Ghidra o IDA para código nativo, su analizador JS para Electron, un navegador para sitios web.
- REA devuelve código, referencias, evidencias e incógnitas.
- El agente explica el comportamiento, o escribe y prueba una versión para tu proyecto.
El proveedor del modelo de tu agente sigue viendo los resultados de las herramientas que recibe, según su propia política de datos. REA no sube tu objetivo a ningún sitio.
Fuente: GitHub: morluto/rea (README)
Fuente: Documentación de REA: instalación y configuración
Guía de instalación desde REA GitHub: requisitos y comandos
- Node.js 22.x (22.19 o posterior), 24.x (24.11 o posterior) o 26+, además de npm.
- Para binarios nativos: Hopper, Ghidra o IDA. El setup puede instalarte Hopper si lo apruebas; Ghidra e IDA tienen que estar ya instalados.
- Para sitios web: un navegador de la familia Chrome. Para JavaScript, Electron y .NET: nada más.
- Base para el host nativo: macOS 12+ o un Linux reciente (Ubuntu 24.04+, Fedora 41+, Arch y algunos otros). El soporte de Ghidra en Windows es experimental.
- Ejecuta npx rea-agents setup.
- Elige tus agentes en la lista, revisa las rutas de configuración exactas que va a modificar y aprueba. Antes se hace una copia de seguridad de las configuraciones existentes.
- Reinicia tu agente para que cargue el nuevo servidor MCP.
- Si quieres, instala el comando rea de forma global para usarlo en la terminal y ejecuta rea update de vez en cuando: el proyecto publica correcciones a menudo.
# 1) Register REA with your agents (Claude Code, Codex, Cursor, Gemini CLI ...)
npx rea-agents setup
# 2) Optional: install the rea command for regular terminal use
npm install --global rea-agents
rea --help
# 3) Keep it current (global install / npx setup)
rea update
npx rea-agents@latest setupComandos copiados del README de github.com/morluto/rea. Si usas Bun, utiliza bunx rea-agents@latest en lugar de npx rea-agents@latest.
Fuente: GitHub: morluto/rea (README)
Fuente: Documentación de REA: instalación y configuración
Fuente: npm: rea-agents
Cómo usar REA con Claude Code, Cursor y Codex
El setup registra el mismo servidor MCP en cada agente e instala junto a él las instrucciones de flujo de trabajo de REA (la skill “reverse-engineer-anything”). Tras reiniciar, basta con preguntar en lenguaje natural. El primer prompt es el ejemplo del propio README; los demás son nuestros, uno por agente.
- Claude Code. Selecciona Claude Code en el setup (client ID claude_code), reinicia y pregunta en la sesión de terminal. Claude Code se maneja bien con trazas largas de varios pasos, así que pídele que muestre evidencias en cada salto.
- Cursor. Selecciona Cursor (cursor). REA aparece entre las herramientas MCP de Cursor; usa el modo Agent para que pueda llamarlas y luego editar tu proyecto.
- Codex. Selecciona Codex (codex). Codex funciona bien en tareas de tipo “encuéntralo y luego reimpleméntalo”, en las que el resultado es un parche para tu propio repo.
Understand how search works in the Notes app, show me the evidence, and build a
similar feature for my project.Usa REA en /Applications/Example.app. Averigua cómo funciona el comando “copy as Markdown”: empieza por el renderer, síguelo a través de preload e IPC hasta el proceso principal y muestra el archivo y la función en cada paso. Enumera todo lo que no hayas podido confirmar.Usa REA para inspeccionar ./vendor/libexample.dylib. Encuentra la función que parsea el archivo de configuración, dame su pseudocódigo y las cadenas a las que hace referencia, y después escribe un parser equivalente en TypeScript en src/config/ con tests unitarios.He perdido el código fuente de ./legacy/report.exe (una app mía, de 2014). Usa REA con Ghidra para encontrar dónde formatea las fechas en la exportación CSV y explica por qué escribe los años con 2 dígitos.Fuente: GitHub: morluto/rea (README)
Fuente: Documentación de REA: instalación y configuración
Prueba REA primero desde la terminal
Puedes probar REA sin ningún agente. Este comando inspecciona el directorio extraído de una app JavaScript/Electron o un ASAR y muestra los módulos, imports y límites de Electron que ha encontrado, con sus evidencias. No hace falta ningún motor nativo.
npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --jsonSustituye la ruta por la de tu objetivo, por ejemplo "D:/apps/example" en Windows.
Fuente: GitHub: morluto/rea (README)
Casos de uso de REA: ingeniería inversa de todo, desde apps de Electron hasta malware
- Ingeniería inversa de apps de Electron. Las apps de Electron incluyen su JavaScript dentro de un archivo ASAR. REA recupera módulos, rutas y canales IPC; así es como su caso práctico de Notion rastrea el puente del portapapeles desde el renderer hasta el proceso principal.
- Analizar APIs de código cerrado (“API anything”). Carga una captura HAR guardada o deja que REA observe un sitio web en un navegador, y te listará peticiones, respuestas y payloads junto con los scripts que los envían. Es la forma más rápida de documentar una API sin documentación que tengas permiso para usar y escribir un cliente para ella.
- Análisis de malware e incidentes. La política de uso responsable de REA incluye el análisis de malware e incidentes y la investigación de seguridad entre sus usos previstos. Trabaja en una VM aislada: la inspección estática lee los archivos sin ejecutarlos, pero la captura en tiempo de ejecución sí ejecuta el objetivo.
- Depurar tus propios programas antiguos. ¿Has perdido el código fuente de algo que escribiste, o necesitas saber por qué una build antigua se comporta de otra manera? El caso práctico de DX-Ball reconstruye en C una función que reproduce los 63 bytes compilados del original.
Fuente: Casos prácticos de REA (DX-Ball, Notion, TH04)
Fuente: REA: aviso de uso responsable
Videotutoriales de REA
Dos recorridos por Reverse Engineer Anything de creadores de YouTube (no los ha hecho el proyecto REA ni nosotros). Los videos se cargan desde YouTube solo cuando haces clic en reproducir.


REA vs Ghidra vs Hopper
En realidad no compiten entre sí. Ghidra y Hopper son los motores que desensamblan y descompilan. Reverse Engineer Anything es la capa de agente que va encima, los maneja y convierte su salida en evidencias que tu agente puede usar.
| REA | Ghidra | Hopper | |
|---|---|---|---|
| Qué es | Servidor MCP + CLI que conecta agentes de IA con herramientas de análisis | Suite de ingeniería inversa de la NSA | Desensamblador y descompilador |
| Quién lo maneja | Tu agente de IA, o tú en la terminal | Tú, en su GUI o con scripts | Tú, en su GUI o con scripts |
| Precio | Gratis, licencia MIT | Gratis, Apache 2.0 | Comercial, con una demo gratuita limitada |
| Plataformas | macOS, Linux; Windows para agentes, JS/.NET y Ghidra experimental | Windows, macOS, Linux (requiere un JDK) | macOS, Linux |
| Objetivos | Nativo, Electron/JS, sitios web, HAR, .NET, Android, firmware y más | Binarios nativos para muchas CPUs | Binarios nativos (Mach-O, ELF, PE) |
| Ideal para | Hacer preguntas y obtener respuestas con evidencias | Análisis manual a fondo, scripting | Análisis manual rápido en Mac |
IDA es un tercer motor compatible. Los motores comerciales necesitan tu propia licencia válida; REA no la proporciona.
Fuente: GitHub: morluto/rea (README)
Fuente: GitHub: NationalSecurityAgency/ghidra
Fuente: Hopper Disassembler
¿Es legal la ingeniería inversa?
A menudo sí, pero depende de dónde estés, de qué analices y de la licencia que hayas aceptado. Muchos países la permiten para interoperabilidad, investigación de seguridad, educación y para arreglar software que es tuyo; la DMCA de EE. UU. tiene una excepción por interoperabilidad y la Directiva europea sobre programas de ordenador permite la descompilación con fines de interoperabilidad bajo ciertas condiciones. Aun así, una licencia de software o unos términos de servicio pueden prohibirla.
El propio descargo de responsabilidad de REA dice que está pensado para investigación legítima, educación, interoperabilidad, preservación de software y análisis de software que sea tuyo o que tengas autorización para examinar. El proyecto no ayudará a saltarse DRM, comprobaciones de licencia o sistemas anti-cheat, a crear trampas para juegos, a eludir la autenticación de sistemas que no estés autorizado a probar ni a copiar código y recursos propietarios.
Esto es información general, no asesoramiento legal. Si piensas publicar hallazgos o distribuir código basado en software de otra persona, consulta antes con un abogado.
Fuente: REA: aviso de uso responsable
Preguntas frecuentes
¿REA es gratis?
Sí. REA es de código abierto con licencia MIT y el paquete de npm rea-agents es gratuito. Solo pagas lo que lo rodea: el plan o el uso de API de tu agente de IA, y una licencia de Hopper o IDA si usas esos motores. Ghidra es gratuito.
¿Qué es la REA skill?
La skill reverse-engineer-anything es un conjunto de instrucciones que le indica a tu agente cuándo y cómo usar REA. npx rea-agents setup la instala junto con el servidor MCP. También puedes instalar solo la skill con npx skills add morluto/rea --skill reverse-engineer-anything, pero eso no registra las herramientas MCP.
¿REA funciona en Mac/Windows?
macOS 12+ y las distribuciones Linux recientes son los hosts compatibles principales, con Hopper, Ghidra o IDA para el análisis nativo. En Windows, el setup puede configurar tus agentes y funciona el análisis estático de JavaScript, Electron y .NET; el soporte de Ghidra es experimental y Hopper no está disponible.
¿Qué es REA AI?
Se usa “REA AI” para referirse a REA (Reverse Engineer Anything), la herramienta que da a los agentes de programación con IA capacidades de ingeniería inversa. REA no tiene modelo propio: la IA es tu agente (Claude, GPT, Gemini, etc.) y REA aporta las herramientas y las evidencias.
¿REA o servidores MCP?
REA es un servidor MCP. Frente a los servidores MCP de una sola herramienta, como un puente solo para Ghidra, agrupa varios motores (Hopper, Ghidra, IDA, un navegador y analizadores de JS, .NET y Android) bajo una única instalación, devuelve evidencias con cada resultado e incluye las instrucciones correspondientes para el agente.
¿Dónde está el repositorio de GitHub de Reverse Engineer Anything?
En github.com/morluto/rea. El paquete de npm que instala el README es rea-agents, y las guías y los casos prácticos están en rea.tools.
Guía independiente, sin relación con el proyecto REA, morluto, Anthropic, Cursor, OpenAI, la NSA ni Hopper. Los datos proceden del README de morluto/rea, de la documentación de instalación y del aviso legal (versión 6.4.0), comprobados el 12 de octubre de 2026. REA cambia rápido; revisa el README antes de instalarlo.