REA
Tous les guides

Utiliser REA avec des agents de programmation : votre première enquête

reverseengineeranything.tools

Installez REA, connectez votre agent de programmation, examinez une application JavaScript locale et vérifiez une conclusion à partir des preuves avant de reconstruire une fonction.

Nouveautés de cette page

  • — Publication de cas communautaires sourcés, de guides pratiques et de limites explicites des éléments de preuve.

Pour utiliser REA avec un agent de programmation, exécutez npx rea-agents@latest setup, approuvez les modifications de configuration pour le client choisi et redémarrez ce client. Donnez ensuite à l’agent une cible logicielle locale et un comportement précis à examiner ; demandez le code pertinent, ses emplacements et les limites avant de lui demander de construire quoi que ce soit.

REA est une CLI et un serveur MCP open source. Cet article est un guide communautaire indépendant ; rea.tools et le dépôt morluto/rea sont les sources officielles du projet.

De quoi avez-vous besoin avant d’installer REA ?

REA nécessite Node.js 22.x à partir de 22.19, Node.js 24.x à partir de 24.11 ou Node.js 26 et ultérieur, ainsi que npm. Node.js 23, 25 et les préversions ne font pas partie des versions documentées comme prises en charge. Consultez le guide d’installation officiel lors de la configuration d’une nouvelle machine.

Choisissez une cible qui vous appartient ou que vous avez l’autorisation d’examiner. Une application JavaScript extraite ou une archive ASAR d’Electron constitue une première cible utile, car l’analyse statique d’applications de REA ne nécessite pas Hopper, Ghidra ou IDA. L’analyse approfondie de binaires natifs utilise l’un de ces moteurs et impose des exigences supplémentaires de plateforme et de version. Le README de REA liste les familles de cibles prises en charge et les prérequis.

Que voulez-vous faire ? Point de départ recommandé Entrée Résultat
Demander à un agent d’expliquer une fonction Configuration MCP de REA Chemin local de la cible et question précise Conclusions, preuves et poursuite de l’enquête
Examiner une application sans agent CLI de REA Répertoire d’application JavaScript extraite ou ASAR Preuves structurées sur l’application
Examiner manuellement une mise en page web ou interrompre JavaScript Chrome DevTools Page ouverte dans Chrome Modification directe du DOM/CSS et contrôle des points d’arrêt
Explorer vous-même les fonctions et graphes d’un binaire Ghidra Exécutable ou bibliothèque pris en charge Désassemblage interactif, décompilation et projet d’analyse

Chrome DevTools et Ghidra offrent des interfaces puissantes d’examen direct. REA est utile si vous souhaitez que votre agent vous aide à mener une enquête et transforme certaines conclusions en explication ou en implémentation. Consultez notre comparaison avec Ghidra et notre comparaison avec Chrome DevTools.

Comment relier REA à un agent de programmation ?

Exécutez la commande officielle de configuration dans un terminal :

npx rea-agents@latest setup

Sélectionnez le client voulu, examinez les chemins exacts de configuration et de skill, puis approuvez le plan. La configuration enregistre le serveur MCP local de REA et installe les instructions d’investigation correspondantes. Redémarrez le client indiqué dans le message de fin afin que l’agent en cours d’exécution découvre la connexion. La documentation officielle de configuration explique l’aperçu, les sauvegardes et les contrôles de périmètre.

Pour vérifier l’enregistrement dans Codex, utilisez :

npx -y rea-agents@latest doctor --client codex --json

Remplacez codex par l’identifiant de votre client pris en charge si nécessaire. Un résultat doctor sain vérifie les fichiers d’enregistrement et les prérequis ; il ne prouve pas que la session actuelle de l’agent s’est reconnectée. Si l’agent ne voit toujours pas REA, redémarrez-le ou reconnectez-le et examinez son erreur de connexion MCP. Installer uniquement le skill de skills.sh fournit des instructions, pas la connexion MCP. Le dépannage officiel explique ces différences.

Que doit demander votre première consigne à REA ?

Choisissez un comportement observable plutôt que la reconstruction d’une application entière. Pour une application que vous êtes autorisé à examiner, voici une consigne précise :

Utilise REA pour examiner /absolute/path/to/my-notes-app.
Explique comment l’application exporte les notes au format CSV.
Montre les modules pertinents, leurs emplacements et les preuves.
Distingue les comportements confirmés de ce que tu ne peux pas déterminer.

Remplacez le chemin par votre véritable cible. REA fournit des résultats d’enquête ; l’agent de programmation les interprète. Avant d’accepter la réponse, vérifiez qu’elle identifie les fichiers cibles, le code pertinent et les éventuelles lacunes de couverture. Une explication plausible sans emplacement justificatif reste une hypothèse à approfondir.

Si MCP n’est pas disponible, l’examen statique de JavaScript peut aussi s’exécuter directement :

npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/my-notes-app --json

La commande accepte un répertoire d’application extraite ou un ASAR et renvoie un enregistrement Evidence. Les échecs de moteurs natifs lors d’un audit n’empêchent pas automatiquement cette méthode JavaScript distincte. Les conseils de REA sur la vérification ciblée des prérequis recommandent de vérifier la tâche dont vous avez réellement besoin.

Comment vérifier un résultat avant de reconstruire une fonction ?

Transformez l’explication en une petite prédiction. Pour un export CSV, comparez une note normale à une note contenant une virgule, un guillemet ou un saut de ligne. Demandez à l’agent quelle branche traite ces caractères et comment la sortie prédite correspond à l’export observé de l’application originale. Distinguez la sortie observée du code de remplacement proposé par l’agent.

L’enquête officielle sur Notes enseigne cette démarche à partir d’un export CSV. L’exemple officiel du dinosaure illustre une autre cible : REA lit le script chargé du jeu de navigateur, l’agent identifie sa règle d’accélération et une petite reconstruction rend la vitesse réglable. Il s’agit d’exemples détaillés produits par le projet, et non de témoignages indépendants d’utilisateurs.

Quelles sont les limites liées aux versions et à la confidentialité ?

La branche main du dépôt peut documenter des fonctions plus récentes que le paquet npm publié. @latest demande la version npm actuelle ; les enregistrements MCP persistants sont fixés à la version exacte qui a effectué la configuration. Actualisez la configuration et redémarrez l’agent lors d’une mise à jour. Choisissez les fonctions dans la liste d’outils et les schémas réels du serveur connecté plutôt que de supposer que toutes les fonctions de main sont installées. L’explication officielle de la frontière entre versions précise cette distinction.

REA analyse les cibles sur votre machine. Les résultats des outils sont envoyés à votre agent de programmation, dont le fournisseur de modèle a sa propre politique de données. Examinez le contenu d’un résultat avant de le partager, notamment les extraits de code source, chemins locaux, requêtes capturées ou données d’application. La FAQ officielle décrit cette frontière entre analyse locale et fournisseur de modèle.

Quelles questions se posent après la première enquête ?

Puis-je utiliser REA sans Hopper, Ghidra ou IDA ?

Oui. L’examen statique de JavaScript/Electron et de .NET ne nécessite pas de moteur d’analyse native. L’analyse native approfondie en nécessite un. Choisissez les prérequis adaptés à la cible plutôt que de considérer chaque moteur facultatif comme obligatoire.

REA retrouve-t-il le code source original ?

L’analyse native renvoie de l’assembleur et du pseudocode avec des conclusions justificatives. Le pseudocode est une représentation d’analyse, pas la promesse de reproduire le code source original. L’agent peut utiliser les conclusions pour écrire et tester une nouvelle implémentation.

Puis-je exécuter REA sans abonnement à une IA ?

La CLI de REA peut exécuter directement les méthodes d’analyse. Utiliser un agent de programmation implique les conditions d’accès de ce client et celles de son fournisseur de modèle. La licence MIT de REA ne fournit ni accès à un modèle ni licence de moteur d’analyse commercial.

Que faire lorsqu’une commande échoue ?

Vérifiez d’abord les prérequis documentés et mettez REA à jour. Pour une CLI installée globalement, rea update met à jour l’installation à laquelle elle appartient ; pour une configuration d’agent via npx, relancez npx rea-agents@latest setup et redémarrez le client. Si l’échec persiste, signalez la version de REA, le système d’exploitation, le type de cible, le moteur, les étapes et la sortie d’erreur via le suivi officiel des problèmes.