REA (Reverse Engineering for Agents) es una herramienta de middleware que equipa a los agentes de codificación con la capacidad de inspeccionar y explicar cómo funciona el software. Como se indica en el sitio web del proyecto, 'REA le proporciona a su agente las herramientas para inspeccionar un programa y explicar qué hace,' con el objetivo de comprender las características lo suficientemente bien como para explicarlas, cambiarlas o reconstruirlas. La herramienta admite análisis en múltiples dominios, incluidos binarios nativos, aplicaciones JavaScript/Electron y sitios web, como se detalla en su repositorio de GitHub, que lo describe como 'Un MCP para ingeniería inversa en binarios, aplicaciones y comportamiento en tiempo de ejecución.' Este flujo se ilustra en el diagrama IMG-001.

Diagrama que muestra el flujo de investigación de REA donde un agente de codificación hace una pregunta, REA analiza el objetivo usando herramientas y el agente recibe hallazgos basados en evidencia
Flujo de investigación de REA: el agente consulta a REA, que inspecciona el objetivo y devuelve código, rastros y desconocidos para que el agente los usegithub.com

Este diagrama ilustra cómo REA opera mediante una conexión de protocolo de modelo-contexto, permitiendo a los agentes inspeccionar software y recibir hallazgos basados en evidencia sobre su comportamiento

REA opera mediante una conexión de protocolo de modelo-contexto donde los agentes realizan solicitudes en lenguaje sencillo y reciben hallazgos basados en evidencia. Al investigar por qué la Calculadora de Windows devuelve 220 para 200 + 10%, REA examinó el DLL de la Calculadora y mostró que el manejador de porcentaje se ramifica según la operación actual: para multiplicación o división trata el valor del porcentaje como una fracción simple (current / 100), mientras que para adición o sustracción calcula un porcentaje del primer operando (current × previous / 100). Esto explica el resultado: el 10% de 200 equivale a 20, así que 200 + 20 = 220. En otro caso, REA inspeccionó un juego de dinosaurio basado en Chromium y extrajo la lógica de actualización `if (this.currentSpeed < this.config.MAX_SPEED) { this.currentSpeed += this.config.ACCELERATION; }`, revelando que el juego comienza a 6 unidades y acelera en 0.001 cada cuadro hasta alcanzar un límite de 13, lo que permitió al agente reconstruir una réplica comparable con velocidad ajustable. Este proceso se muestra en la captura de pantalla IMG-002.

Captura de pantalla que muestra el puente de análisis de REA ejecutándose dentro del desensamblador Hopper mientras examina un ejecutable binario nativo
REA lanzando su puente de análisis dentro de Hopper para inspeccionar y rastrear el código de máquina y las funciones de un binario nativogithub.com

Esta imagen muestra la implementación técnica de REA donde se integra con herramientas de ingeniería inversa como Hopper para analizar binarios nativos, similar a cómo examinó el DLL de la Calculadora de Windows

Para activar REA, los agentes ejecutan `npx rea-agents setup`, lo que registra el servidor MCP e instala cualquier backend de análisis requerido después de la aprobación del usuario. La configuración admite varios agentes, incluidos Claude Code, Codex, Cursor, Gemini CLI y Grok Build. Una vez configurados, los agentes pueden investigar cualquier objetivo formulando preguntas en lenguaje natural, con REA devolviendo no solo fragmentos de código sino también la evidencia detrás de las conclusiones, como instrucciones de ensamblaje específicas, rastros de funciones y valores de constantes. Este enfoque basado en evidencia permite a los agentes verificar su comprensión y construir reconstrucciones precisas, representando un avance significativo en la forma en que los agentes de IA pueden interactuar y aprender de software existente sin necesidad de acceder al código fuente. Estas aplicaciones se muestran en el collage IMG-003.

Collage de showcases de REA que incluye la modificación de panoramización de sonido de DX-Ball, la integración de puente de portapapeles de Notion y el análisis del anillo de bala de TH04
Showcases de REA que demuestran aplicaciones prácticas: panoramización de sonido de DX-Ball, puente de portapapeles de Notion y modificaciones del anillo de bala de TH04github.com

Estos showcases ilustran ejemplos del mundo real de las capacidades de REA, similares a los ejemplos de la Calculadora de Windows y el juego de dinosaurio descritos en el artículo