REA
Usa REA cuando una afirmación dependa de un binario o paquete distribuido, descompilación, evidencias de tiempo de ejecución de aplicaciones pasivas, o comparación con comportamiento no establecido por el código fuente disponible. Para el análisis ordinario de un repositorio de código fuente completo, usa las herramientas normales del repositorio y no ejecutes comandos de preparación o proveedor de REA.
Conecta solo cuando sea necesario
Instalar esta habilidad proporciona instrucciones; no registra el servidor MCP de REA, instala motores de análisis, ni añade herramientas a un agente ya en ejecución.
Si las herramientas de REA están disponibles y no se sabe que su registro esté obsoleto, procede directamente al objetivo. No ejecutes diagnósticos ni configuración antes de cada investigación. Usa la lista de herramientas reales y esquemas de entrada del servidor conectado; una habilidad instalada desde el repositorio principal puede describir capacidades ausentes en una versión npm más antigua. Mantén evidencia completa en línea cuando ese servidor no anuncie referencias retenidas.
Si las herramientas están ausentes, una llamada está bloqueada por el cliente, o un proveedor requerido no está disponible, lee conexión y recuperación. Diagnostica el bloqueador observado, continúa con trabajo útil compatible y reanuda la tarea original después de la reparación. La aprobación del cliente, la variable PATH del shell, el registro y la disponibilidad del motor tienen diferentes soluciones; evita repetir la configuración para todos.
- Diagnostica sin cambiar la configuración de REA o del cliente.
npxpuede descargar el paquete y escribir en el caché de npm. Para Codex, ejecutanpx -y rea-agents@latest doctor --client codex --json. Sustituye con el cliente compatible actual:claude_code,claude_desktop,codex,cursor,gemini_cli,windsurf,devin,opencode,antigravity,copilot_cli,commandcode,vscode,grok_build,omp, ogrok_bot.grok_botno tiene un registro de archivo local: doctor informa el paso de chat de Grok Bot, y la configuración no escribemcp.json. Si el cliente es desconocido, usadoctor --jsone inspecciona sus resultados de registro antes de elegir un ámbito de configuración. - Distingue la razón. Un registro faltante, malformado u obsoleto necesita una reparación de configuración con ámbito. Un registro alineado sin herramientas en la sesión activa necesita un reinicio/reconexión; doctor no puede probar que el agente actual se ha conectado. Un proveedor faltante afecta solo las tareas que requieren ese proveedor: la inspección estática de JavaScript no necesita ni Hopper ni Ghidra, y la inspección de Android tiene requisitos separados de JADX/Java que debes proporcionar tú mismo.
- Para una reparación de configuración, prepara el plan de solo lectura:
npx -y rea-agents@latest setup --client codex --dry-run --json. Usa el ID del cliente actual, muestra sus rutas exactas propuestas, copias de seguridad y cambios, y obtén aprobación antes de que la configuración escriba en la configuración o instale Hopper. La configuración normalmente también instala la habilidad empaquetada correspondiente; incluye ese reemplazo en el plan revisado. Después de la aprobación, aplica el mismo ámbito connpx -y rea-agents@latest setup --client codex --yes. Añade--install-hoppersolo si esa instalación separada era necesaria y fue explícitamente aprobada. - Reinicia/reconecta el agente afectado. Verifica que las herramientas de REA realmente aparecen en la sesión, luego reanuda la investigación original. Si aún están ausentes, inspecciona el error de lanzamiento MCP del cliente en lugar de repetir la configuración.
La configuración de REA nunca instala ni actualiza Node.js, npm, Homebrew, Java, Ghidra, IDA,
JADX, Binwalk, o Unblob. Usa los requisitos previos existentes; no instales software no relacionado
para reparar el registro MCP. Para un cliente no compatible, usa el registro manual stdio
con un paquete rea-agents de versión fija o continúa a través de la CLI.
Una alternativa CLI concreta para un árbol JavaScript o ASAR proporcionado por el operador es:
npx -y rea-agents@latest analyze-javascript-application /ruta/absoluta/hacia/app --json
No se requiere registro MCP ni motor nativo. Lee la Evidencia, el gráfico, las limitaciones y las incógnitas devueltas con el mismo cuidado que un resultado MCP; la CLI devuelve el registro de Evidencia directamente. Esta alternativa no establece que MCP esté configurado. Las tareas nativas de CLI aún requieren su motor seleccionado. Prefiere una CLI rea existente. Cuando no haya ninguna instalada y la adquisición del paquete REA esté dentro del ámbito autorizado, usa npx -y rea-agents@latest en su lugar. La reparación de configuración comienza con un plan de configuración de solo lectura; muestra rutas, copias de seguridad y reemplazo de habilidades antes de aplicar cambios autorizados. Preserva los límites de aprobación y ejecución de destino existentes. La configuración de REA nunca instala ni actualiza software no relacionado, incluyendo Node.js, npm, Homebrew, Java, Ghidra, IDA, JADX, Binwalk o Unblob.
Enruta el objetivo primero
Elige la primera herramienta del objetivo que el usuario proporcionó. Usa open_binary para
flujos de trabajo nativos o de archivos de objetivo activo; las herramientas sin objetivo toman su propia
ruta explícita o punto final y no lo necesitan.
- Árbol ASAR o JavaScript/Electron extraído:
analyze_javascript_application. - Inventario de miembros de archivo/paquete (ZIP/APK/IPA/MSIX/AppX o DMG):
open_binarycon la ruta local proporcionada; usainspect_artifactcuando su gráfico y hallazgos ayuden a responder la pregunta. - Código Android APK, clases, métodos, o referencias entrantes:
inspect_android_package, luego herramientas Android enfocadas cuando se anuncien. El inventario de miembros del archivo aún usa la ruta de archivo anterior. - Ensamblado PE/CLI administrado:
inspect_managed_artifact. - Imagen de firmware:
inspect_firmware_regionscuando se anuncie. Usaextract_firmwarecuando se solicite la extracción, con un nuevo directorio de salida absoluto seleccionado por la persona que llama. Estas herramientas usan Binwalk/Unblox proporcionados por la persona que llama en Linux; consulta la guía de firmware. - .NET NativeAOT PE/ELF: análisis nativo de Ghidra. El código nativo puede producir pseudocódigo;
consulta el flujo de trabajo NativeAOT en
references/native-and-artifacts.mdpara la recuperación opcional de metadatos y su límite de host/diseño compatible. - Página de navegador propiedad del usuario ya abierta:
list_browser_targets. - Acción de navegador que el agente debe realizar (clic, escribir, navegar):
capture_browser_scenariocon acciones declaradas. Consulta observación de tiempo de ejecución para conectar/iniciar y las herramientas de navegador de seguimiento enfocadas. - Tráfico de Fiddler Everywhere o una captura nativa
.saz: lee el flujo de trabajo de Fiddler. Inspecciona SAZ guardado coninspect_web_network_captureyformat: "saz"; conecta el servidor MCP separado de Everywhere para tráfico en vivo. - Capturas HAR/SAZ/mitmproxy nativas/aioquic qlog retenidas:
inspect_web_network_capture. Selecciona ordinales de registro originales cuando sea útil; inspecciona los campos del productor y los acompañamientos de byte/número sin obtener las URL registradas ni reclamar atribución en vivo. Consulta capturas históricas para el perfil ascendente exacto y las exclusiones de credenciales. El soporte de Qlog comienza con aioquic 1.5.0 JSON 0.3; la cobertura de flujo y las declaraciones de pérdida de punto final no recuperan cuerpos ni establecen pérdida de red. Prefiere resumen detallado, luego páginas de traza/flujo de tipo qlog; selecciona una traza, ID de flujo y dirección para páginas de contribución/rango. Los hechos retienen el alcance de todos-los-eventos-registrados-antes-de-la-selección. Otros diseños de qlog y la correlación PCAP no son compatibles. - Tiempo de ejecución de Electron propiedad del usuario ya abierto:
list_electron_targets. Antes de un intento de Inspector de electron-main, verifica los fusibles empaquetados coninspect_electron_fuses;EnableNodeCliInspectArgumentsdeshabilitado significa que la aplicación ignora--inspect. - Descubrimiento de campos de paquetes:
inspect_packet_fieldsbusca protocolos instalados y nombres/tipos de campo antes de elegir campos parainspect_packet_capture. Consulta/pagina los registros relevantes; los registros no establecen tráfico observado. - Capturas de paquetes grabadas:
inspect_packet_capturecon campos TShark seleccionados, filtros de visualización y reglas de decodificación como. Requiere Linux, util-linux prlimit yREA_TSHARK_COMMAND; consulta guía de captura. Los límites de paquetes cuentan los paquetes de entrada antes del filtrado. La salida por defecto es de 50 tramas coincidentes; usamatch_offset/match_limitpara páginas posteriores, o un límite nulo explícito para la salida de coincidencia completa. Preserva el resumen de origen entre páginas. Esto no realiza captura en vivo. Para resúmenes de dirección/DNS/SNI/protocolo usainspect_pcap_capturecon MCP resumen detallado, luego páginas de pcap de tipo retenido. Requiere Wireshark 4.x tshark y capinfos, con Linux prlimit o Windows Job Objects; consulta resúmenes de paquetes. Selecciona una pregunta DNS exacta para páginas de dirección; el agotamiento de la página no prueba la integridad de la red. Esto lee grabaciones y no adquiere tráfico. - Descubrimiento de decodificador:
inspect_signal_decodersbusca IDs de decodificador instalados o ayuda de decodificador seleccionado, incluyendo canales y opciones. Consulta y pagina los detalles relevantes antes de elegir configuraciones; esto no escanea hardware. - Trazas de señal/lógica grabadas:
decode_signal_recordingcon decodificador explícito, configuración de canal y protocolo. En Linux con util-linux prlimit, proporciona sigrok-cli 0.7.2 a través deREA_SIGROK_COMMAND; consulta guía de grabación. La salida por defecto es de 50 líneas literales; selecciona clases de anotación y pagina conline_offset/line_limit, o nulo explícito para toda la salida restante. Los recuentos de ventana son líneas de visualización, no anotaciones o muestras. Preserva los resúmenes de origen entre páginas. Esto lee archivos existentes; no adquiere señales de hardware. - Artefacto WebAssembly local explícito:
inspect_wasm_artifact. Proporciona WABT 1.0.42 a través deREA_WABT_BIN_DIRECTORY; retén la identidad exacta de byte/herramienta y WAT decodificado. Selecciona el código de unión JavaScript y las rutas candidatas explícitamente y preserva la ambigüedad de URL/ruta. Sin obtención implícita ni ejecución de objetivo; WAT no es código fuente original. Consulta la guía WASM. - Portador de bytecode EVM local explícito:
inspect_evm_interfacecon codificaciónrawohexseleccionada por la persona que llama. Preserva los resúmenes de portador/decodificado y trata los selectores, cadenas de argumento y mutabilidad como candidatos inferidos; esto no realiza búsqueda en cadena ni ejecución de objetivo. Para la interfaz inferida completa sin hex o stdout duplicado, descubre soporte y seleccionadetail: "summary"; la Evidencia completa permanece retenida bajo su identidad original. Usa elparent_evidence_iddevuelto para una función exacta o páginas debytecode_hex/stdout/stderr. La cobertura del candidato no establece la integridad de la interfaz. Consulta la guía de bytecode EVM. - Metadatos de compilador, módulo o configuración de compilación Go incrustados:
inspect_go_binarycon el archivo local explícito. Esta inspección incorporada sin objetivo no requiere instalación de Go ni desensamblador. Preserva los bytes de módulo sin procesar y los rangos de origen; los metadatos ausentes no prueban que un binario no sea Go, y los registros de texto no analizados permanecen explícitos. Consulta la guía de binarios Go. - Metadatos de dependencia Rust cargo-auditable incrustados:
inspect_rust_binarycon el archivo ELF, PE o Mach-O fino local explícito. Esta inspección incorporada sin objetivo no requiere instalación de Rust ni desensamblador. Preserva el orden de los paquetes, los índices de dependencia y el rango de archivos de la sección. Una sección.dep-v0faltante son metadatos nulos, no prueba de que el binario no tenga dependencias. Un hash de commit de rustc es una inferencia de una ruta de solo lectura/rustc/<40-hex>/. Consulta la guía de binarios Rust. - Instantánea de base de datos SQLite local explícita:
inspect_sqlite_database. Inspecciona con Node.js 24.x >=24.15 o 26+ proporcionando límites nativos de SQLite. Lee el esquema primero (inventario compacto por defecto), o selecciona una tabla ordinaria exacta ycolumnscuando se necesiten filas. Los valores predeterminados son el esquema de la tabla seleccionada y 20 filas; solicitaschema_scope: "database"para el esquema almacenado completo. Preserva tanto la base de datos como la identidad WAL existente; las muestras de filas informan truncamiento y tienen un orden no especificado. Usa una instantánea inactiva en lugar de asumir que un par base de datos/WAL en vivo se copió atómicamente. Consulta la guía SQLite. - Archivo ELF Linux explícito para diseño fuera de línea, símbolos, reubicaciones o evidencia de mitigación
estática:
inspect_binary_layout. Esta operación sin objetivo usa pwntools proporcionado por la persona que llama sin abrir una base de datos de desensamblador. Preserva sus ubicaciones sin procesar y límites de inferencia/cobertura; consulta la guía de binarios fuera de línea. - Core ELF x86-64 Linux proporcionado:
inspect_recorded_crash. Lee cada hilo grabado, nota sin procesar y registro vinculado al origen sin abrir un objetivo en vivo. Los PID históricos no seleccionan procesos en vivo. Solicitainclude_debugger_contextsolo cuando los candidatos de mapeo solo de núcleo ayuden; consulta la guía de fallos grabados. - Árboles de tipo/nombre/idioma de recursos PE y referencias de grupo de iconos estáticos:
inspect_pe_resourcescon una ruta explícita. Esta operación portátil requiere ningún objetivo o motor activo; las cargas útiles opacas retienen rangos de archivo y SHA-256. - Ejecutable, biblioteca o base de datos de análisis nativo:
open_binary, luego usa las herramientas de análisis enfocadas directamente; llama abinary_overviewcuando los metadatos o el contexto de inventario sean útiles y estén disponibles desde el proveedor seleccionado.
Para una configuración MCP de IDA existente, usa open_binary con el binario de entrada original
y provider_id: "ida"; no pases una base de datos .idb o .i64.
El perfil adjunto heredado vincula la entrada GUI ya abierta por SHA-256 y
deja su base de datos abierta. El manejo moderno...