Les limites réelles de REA : taille des sorties, coût, couverture
Le 11 octobre 2026, l'analyse statique d'une application Electron de 100 Mo par REA 6.4.0 a pris 52,2 secondes et produit un fichier JSON de 59,2 Mo. L'outil va vite. Son point faible se mesure en octets : volume des sorties, poids du catalogue d'outils dans le contexte de l'agent, et angles morts qu'aucun compteur ne signale.
Des sorties énormes
Ishank Choudhary a mesuré chaque étape de son test, publié sur HackerNoon le 14 octobre1. Sur l'application PI-Desktop v0.16.1, REA a parcouru 421 fichiers JavaScript et 3 114 427 nœuds d'arbre syntaxique, sans un seul échec de parsing, pour écrire 59,2 Mo de résultats. Un unique appel MCP de résumé a duré 60,5 secondes et renvoyé 1 350 868 octets, dont 672 Ko de texte. Un modèle de langage qui reçoit 1,35 Mo pour un « résumé » sature sa fenêtre de contexte avant d'avoir posé sa deuxième question.
Le volume grossit avec la cible. Javier Cañete Arroyo (Jacar Systems) a passé Hyper 3.4.1 à REA 6.7.0 : un app.asar de 14 Mo, 2 236 fichiers, 18 canaux IPC, et un JSON de preuves de 253 Mo2. Connor Turland a obtenu 158 Mo sur Slack 4.52.1713. Ces fichiers servent d'archive de preuves. L'agent, lui, doit interroger REA par petites questions ciblées, faute de quoi il noie sa propre fenêtre.
Un catalogue d'outils qui pèse avant la première action
En 6.4.0, REA exposait 170 outils MCP. La liste de leurs définitions (tools/list) pesait 1 954 704 octets, soit selon l'estimation de Choudhary, à quatre caractères par token, « roughly half a million tokens » avant toute action1. Le profil compact de l'époque ne la réduisait qu'à 1 772 775 octets, environ 9 % de moins. Un petit modèle local ne pouvait pas charger cette liste.
Mise à jour du 20 octobre 2026. Le constat a changé avec la version 6.7.0, publiée sur npm le 18 octobre4. Selon le test de Javier Cañete Arroyo du 19 octobre, REA expose désormais 207 outils, 6 prompts et 153 commandes en ligne de commande ; la liste complète pèse 3 158 352 octets, et le profil compact la ramène à 219 211 octets2. Le profil compact divise donc le poids du catalogue par plus de quatorze. Activez-le par défaut si votre client MCP le prend en charge, et mesurez vous-même : REA publie des versions presque chaque jour, et ces chiffres datent d'une version précise.
L'installation a aussi un coût : 222 Mo et 158 dépendances dans le test de Jacar Systems.
Une couverture partielle, pas toujours signalée
REA dit beaucoup de ce qu'il ignore : 744 limitations explicites sur l'application de 100 Mo, dont 365 liées au budget de résultat. Il rate aussi des choses sans le dire. Sur la même application, il a annoncé zéro script preload alors que le code en chargeait deux, construits à l'exécution par un helper, et ce zéro a vidé le comptage des API exposées1. Sur une application jouet, il a manqué un contrôle d'expéditeur caché derrière un helper. Les comptages simples (fenêtres, contextBridge, gestionnaires IPC) concordaient avec grep. Plus le code passe par des indirections, plus la couverture baisse.
Le code natif ajoute une dépendance. Sans Ghidra, Hopper ou IDA installé, l'appel d'analyse a renvoyé provider_unavailable sur un binaire Rust de 20 Mo, et REA s'en est tenu à l'identification du format. Sur Linux arm64, Javier Cañete Arroyo a dû compiler lui-même le décompilateur natif de Ghidra (gradlew buildNatives) avant que REA ne décompile un binaire C sans symboles et en retrouve les constantes.
Quand REA vaut son coût
Le test de Jacar Systems donne un critère net. Si vous ne faites que décompiler des binaires et que vous utilisez déjà IDA ou Ghidra, un pont vers un seul moteur ajoute moins de surface. REA prend l'avantage quand la question traverse les couches, par exemple pour suivre une fonction depuis le renderer d'une application Electron jusqu'à un add-on natif. Notre comparatif REA, GhidraMCP ou ida-pro-mcp détaille ce choix, et déployer REA en entreprise traite l'épinglage des versions.
Avant tout essai sur un binaire inconnu, rappelez-vous que REA ne confine rien : voir REA n'est pas un sandbox. Et pour relire les résultats sans confondre déduit et prouvé : lire une sortie REA.
Pour l'architecture de l'outil et son installation, voir REA expliqué en trois schémas.
Questions fréquentes
REA est-il lent ?
Non : 52 secondes pour l'analyse statique de 100 Mo dans le test de HackerNoon, 52 secondes pour Slack chez Cyrus. Le volume de sortie pèse davantage que le temps de calcul.
Faut-il un gros modèle ?
Avec le catalogue complet, oui. Le profil compact de la version 6.7.0 divise l'empreinte par plus de quatorze dans le test de Jacar Systems ; testez-le sur votre client MCP avant de conclure.
REA voit-il tout le code ?
Non. Les chemins construits à l'exécution, les helpers et le code chargé depuis un serveur lui échappent souvent. Un zéro dans un comptage se vérifie toujours à la main.
Mesurer avant de généraliser
Dans AI Cyber, nous cadrons chaque essai de rétro-ingénierie par agents avec un budget de tokens, une version épinglée et une liste de constats à vérifier à la main. C'est la condition pour savoir ce que l'outil a couvert et ce qu'il a laissé de côté.
Sources
- Ishank Choudhary, I Tested REA, GitHub's Viral Reverse Engineering Tool, on a Real Electron App, hackernoon.com, 14 octobre 2026 (tests du 11 octobre, REA 6.4.0).
- Javier Cañete Arroyo (Jacar Systems), REA: ingeniería inversa con tu agente de código, probada con Ghidra y Electron, jacar.es, 19 octobre 2026 (rea-agents 6.7.0).
- Connor Turland, What is REA (Reverse Engineer Anything)? I ran it on Slack to find out, atcyrus.com, 20 octobre 2026.
- npm, paquet rea-agents, historique des versions, npmjs.com, consulté le 20 octobre 2026.
Cadrer un essai de rétro-ingénierie par agents avec un budget et une couverture mesurés
Découvrir AI CyberArticles similaires
Lire une sortie REA : preuves, pseudocode et hallucinations
Une sortie REA mêle preuves localisées, déductions et inconnues. Méthode de revue en trois états, illustrée par les tests publics d'octobre 2026 (744 limitations sur une app Electron, 43 004 inconnues sur Slack), et passage au golden master.
Ce qu'une analyse REA révèle d'une application Electron
Fenêtres, preloads, contextBridge, canaux IPC, add-ons natifs : ce que REA reconstruit d'une application Electron sans la lancer, ce qu'il rate, et ce que les tests publics d'octobre 2026 (100 Mo, Slack 4.52.171, Hyper 3.4.1) mesurent vraiment.
REA, GhidraMCP ou ida-pro-mcp : quel MCP de rétro-ingénierie choisir
REA orchestre plusieurs moteurs et formats, GhidraMCP et ida-pro-mcp branchent un agent sur un seul décompilateur. Critères de choix en entreprise : couverture, coût des moteurs (IDA Pro Essential à partir de 1 099 €/an au 23/10/2026), droits d'écriture et poids dans le contexte.
Déployer REA en entreprise : versions, profils, conteneurs
REA a publié une dizaine de versions en deux semaines d'octobre 2026 et expose 207 outils à l'agent en 6.7.0 (18 octobre). L'usage en entreprise demande une politique : version épinglée, profil séparé, conteneur pour les cibles inconnues, modèle choisi selon la sensibilité.