1. Prepara il computer
Usa il computer su cui si trovano i file da analizzare. Un agente di programmazione locale può leggere quei file ed eseguire strumenti per te.
Come faccio ad aprire un terminale?
- Windows : aprire il menu Start, digitare PowerShell e premere Invio.
- macOS: premi ⌘ Space, digita Terminal e premi Enter.
- Linux : premere Ctrl Alt T sulla maggior parte dei desktop.
Incolla un comando con Ctrl V ( macOS : ⌘ V; Terminali Linux: Ctrl Shift V), quindi premere Invio.
I comandi vanno nel terminale. I prompt con l'etichetta “Il tuo agente di programmazione” vanno nella chat dell'agente.
Avrai bisogno di Node.js 22 (22.19+), 24 (24.11+) o 26+. npm viene fornito con Node.js.
Non ho Node.js, o non sicuro?
Aprire un terminale e controllare:
node -v
npm -v
Se node -v mostra v22.19+, v24.11+ o v26+, sei pronto. Se mostra una versione precedente o "not recognized" / "command not found", installa Node.js 24 LTS:
Windows (PowerShell)
winget install --exact --id OpenJS.NodeJS.LTS
Digitare Y se viene chiesto di accettare i termini. Chiudere PowerShell, aprirlo di nuovo, quindi eseguire node -v.
Scarica il programma di installazione di Node.js se winget non è disponibile.
Se in seguito PowerShell mostra "running scripts is disabled on this system" quando esegui npx, usa invece npx.cmd. Per npm, usa npm.cmd:
npx.cmd rea-agents@latest setup
macOS
Per la prima installazione, scarica il programma di installazione di Node.js 24 LTS per macOS (.pkg), aprilo e segui le istruzioni. Poi riapri Terminal.
Usi già Homebrew?
brew install node
Linux
Installa prima curl e unzip se mancano. Su Debian o Ubuntu, esegui sudo apt install curl unzip; su altre distribuzioni, usa il gestore di pacchetti.
curl -fsSL https://fnm.vercel.app/install | bash
Chiudi il terminale, riaprilo, poi:
fnm install 24
fnm use 24
fnm default 24
La tua distribuzione nodejs il pacchetto è spesso più vecchio di 22.19, quindi controlla node -v se invece lo usi.
Preferisci un normale installatore? Scarica la versione LTS da nodejs.org.
Crea una cartella di lavoro per l'agente
Nel terminale, crea una cartella per l'esercizio e poi entra nella cartella:
mkdir rea-work
cd rea-work
Lascia aperto questo terminale per il passaggio successivo. Se hai già una cartella di lavoro, apri quella.
2. Scegli un agente di programmazione
Il tuo agente è l'IA con cui parli. REA gli fornisce gli strumenti di analisi. Scegli una delle applicazioni qui sotto; apri le istruzioni se non l'hai mai usata.
Codex · usa il tuo account ChatGPT
Installa Codex con il comando per il tuo sistema operativo:
powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex"
curl -fsSL https://chatgpt.com/codex/install.sh | sh
Dopo l'installazione, riapri il terminale e torna nella cartella di lavoro. Poi avvia Codex:
codex
Scegli “Sign in with ChatGPT”, completa l'accesso nel browser e poi torna al terminale. Quando appare il campo per i messaggi, continua al passaggio 3.
Cursor, Windsurf o VS Code · usa un editor
- Installa l'editor per il tuo sistema operativo e accedi.
- Apri la cartella rea-work creata al passaggio 1.
- Apri la chat IA e scegli la modalità Agent. In Windsurf o Devin Desktop, apri la chat dell'agente; in VS Code, configura prima GitHub Copilot.
Configurazione di Cursor · Configurazione di Windsurf / Devin Desktop · Configurazione di VS Code e Copilot
Claude Code · usa il tuo account Claude
Installa con il comando per il tuo sistema operativo:
irm https://claude.ai/install.ps1 | iex
curl -fsSL https://claude.ai/install.sh | bash
Riapri il terminale, torna nella cartella di lavoro ed esegui claude. Segui le istruzioni per l'accesso. L'accesso richiede un abbonamento Claude idoneo o un account API configurato.
Claude Desktop · usa una chat desktop
Installa Claude Desktop su Windows o macOS e accedi. Chiudilo completamente, poi esegui questo comando in un terminale aperto al di fuori di Claude:
npx rea-agents@latest setup --client claude_desktop
Controlla e approva il piano, riapri Claude, poi verifica la connessione al passaggio 3.
Scarica Claude Desktop · Dettagli della connessione di Claude Desktop
OpenCode · scegli un modello IA
npm install --global opencode-ai
Esegui opencode nella cartella di lavoro. Usa /connect nella sua chat per collegare l'account del modello, quindi scegli un modello.
Tutte le applicazioni supportate e i relativi ID di configurazione
La versione npm 6.4.0 supporta le applicazioni qui sotto. Usa l'ID con --client quando scegli esplicitamente un'applicazione.
| Applicazione | ID di configurazione |
|---|---|
| Claude Code | claude_code |
| Claude Desktop | claude_desktop |
| Codex | codex |
| Cursor | cursor |
| Gemini CLI | gemini_cli |
| Windsurf | windsurf |
| Devin | devin |
| OpenCode | opencode |
| Antigravity | antigravity |
| GitHub Copilot CLI | copilot_cli |
| Command Code | commandcode |
| Qwen Code | qwen_code |
| VS Code | vscode |
| Grok Build | grok_build |
| OMP | omp |
| Pi | pi |
| Hermes | hermes |
Qoder (qoder), Factory Droid (droid), Trae (trae), ZCode (zcode) e DeepSeek Harness (dsh) sono disponibili nel ramo main del repository; usa una build dai sorgenti o una versione che includa queste integrazioni.
Configurazione delle applicazioni e risoluzione dei problemi · Disponibilità nelle versioni
Grok Bot · collegalo sul computer che lo ospita
Nella chat di Grok Bot, chiedigli di aggiungere un server MCP personalizzato chiamato rea usando questo comando sul computer del Bot:
npx -y rea-agents@6.4.0 mcp
3. Collega REA
Copia questo prompt nel tuo agente di programmazione:
Installa REA e collegalo a questo agente di programmazione usando npx rea-agents@latest setup. Mostrami prima le modifiche previste e attendi la mia approvazione. Poi verifica l’installazione.
O eseguire l'installazione da soli
npx rea-agents@latest setup
Per un'applicazione specifica, aggiungi il suo ID di configurazione:
npx rea-agents@latest setup --client codex
Se npm chiede di scaricare il pacchetto, digita y e premi Enter. Nell'elenco delle applicazioni di REA, usa le frecce per spostarti, Space per selezionare la tua applicazione ed Enter per continuare.
Scegli l'applicazione dell'agente e controlla il piano di configurazione. REA aggiunge la connessione MCP e la skill di analisi corrispondente, conservando una copia della configurazione esistente. Chiede conferma prima di applicare le modifiche.
MCP è la connessione che permette all'agente di chiamare REA. La skill gli fornisce un flusso di lavoro per analizzare il software.
Per il primo esercizio puoi saltare l'installazione facoltativa di Hopper. Riavvia l'applicazione dell'agente al termine della configurazione.
Come riavvio l'applicazione dell'agente?
Applicazioni desktop (Claude Desktop, Cursor , Windsurf , VS Code ): esci completamente dall'app, quindi aprila di nuovo. Chiudere la finestra non basta. Su macOS premere ⌘ Q; su Windows, esci anche dall'icona del vassoio se ce n'è uno.
Agenti terminali (Claude Code , Codex , Gemini CLI ): uscire dalla sessione e riavviarla.
npx -y rea-agents@latest doctor --client codex --json
Sostituisci codex con l'ID di configurazione della tua applicazione. Un controllo riuscito restituisce "healthy": true. Poi chiedi all'agente:
Verifica che REA sia collegato e mostrami quali strumenti REA puoi usare.
4. Prova la tua prima analisi
L'esempio è un'app Electron a sei file con un Note di esportazione pulsante. L'agente può ispezionare il codice senza installare o avviare Electron .
Scaricare https://rea.tools/examples/notes-example.zip in una nuova cartella di esempio e decomprimerla. Utilizzare REA per trovare ciò che accade quando faccio clic su Esporta note. Mostra dove notes.csv è scritto, quali campi contiene e i file e le linee pertinenti.
Cerca una breve spiegazione con riferimenti a file e righe:
Il pulsante invia un
notes:exportmessaggio. Il processo principale formatta le note come CSV e scrivenotes.csvnella cartella Download dell'utente. Le colonne sonoidetitle.
Verifica una previsione nell'esercizio guidato →
Scarica l'esempio da solo o usa la tua app
Se il tuo agente non riesce a scaricare i file, decomprimi tu stesso questo archivio. Dare il percorso per il notes-example cartella e la stessa domanda di esportazione.
Usa REA per analizzare l'app in
/absolute/path/to/app. Trova come esporta i dati e mostra i file e le righe pertinenti.
Come ottengo il percorso completo di una cartella?
- Windows : in Esplora file, fare clic con il pulsante destro del mouse sulla cartella e scegliere Copia come percorso. Su Windows 10, tenere premuto Maiusc mentre si fa clic con il pulsante destro del mouse.
- macOS : nel Finder, fare clic destro sulla cartella, tenere premuto Opzione e scegliere Copia " ... " come percorso.
- Qualsiasi sistema: trascinare la cartella in una finestra di terminale e il suo percorso appare.
In un terminale, metti le virgolette attorno a un percorso che contiene spazi.
Analizza un altro tipo di software
Scegli la sezione per ciò che vuoi analizzare. Un provider è lo strumento di analisi locale che REA usa per quel tipo di software.
Eseguibili e librerie native · Hopper, Ghidra o IDA
Installa uno strumento di analisi sul computer che esegue REA. L'host è il tuo sistema operativo; il target è il programma che vuoi analizzare.
| Strumento di analisi | Windows | macOS | Linux |
|---|---|---|---|
| Hopper | Non disponibile | 12+ | Distribuzioni supportate |
| Ghidra | x64 · sperimentale | x64 / arm64 | x64 / arm64 |
| IDA | Profili verificati | Profilo senza interfaccia grafica verificato | Consulta la guida del provider |
Hopper · lascia che la configurazione lo installi o lo colleghi
Collegare Hopper su macOS o Linux . Eseguire il comando setup sopra; rileva un'installazione esistente o offre un piano di installazione per l'approvazione.
Scegli Hopper durante la configurazione e controlla il suo piano di installazione separato. Su macOS, scegli la modalità demo o attiva la licenza al primo avvio di Hopper. Su Linux, la configurazione prepara la demo supportata e il suo display privato.
Host Linux: Ubuntu 24.04+, Fedora 41+, Nobara 44+, Arch Linux, CachyOS o Omarchy. Hopper è un software commerciale; la demo ha limiti definiti dal produttore.
npx -y rea-agents@latest doctor --provider hopper --json
Se macOS chiede il permesso Automation, autorizza l'app che avvia REA in System Settings → Privacy & Security → Automation, poi riprova.
Ghidra · installa lo strumento di analisi gratuito e Java
- Installa un JDK a 64 bit, versione 21 o successiva, incluso il compilatore Java. Scegli il pacchetto adatto all'architettura del tuo computer.
-
Scarica Ghidra 12.1.4 dall'elenco Assets della versione ed estrai l'archivio
ghidra_…_PUBLIC_….zip. Scegli l'archivio della versione, non “Source code”. -
Trova la cartella estratta che contiene
ghidraRunoghidraRun.bat. Usa quella cartella perGHIDRA_INSTALL_DIR.
Scarica un JDK · Scarica Ghidra 12.1.4
Controlla Java. Il primo comando stampa java.home; usa quella cartella per JAVA_HOME. Il secondo conferma che il compilatore è installato:
java -XshowSettings:properties -version
javac -version
Collegare Ghidra su Windows
Windows x64 offre supporto sperimentale di sola lettura per applicazioni e DLL native x86 e x64 in formato PE su unità NTFS locali fisse. Usa un'installazione esistente di Ghidra 12.1.x e un JDK a 64 bit, versione 21 o successiva:
$env:GHIDRA_INSTALL_DIR = "C:/tools/ghidra_12.1.4_PUBLIC"
$env:JAVA_HOME = "C:/tools/jdk-21"
npx -y rea-agents@latest doctor --provider ghidra --json
npx rea-agents@latest setup
Sostituire i due percorsi con le installazioni, quindi rivedere il piano di installazione.
Collegare l'installazione Ghidra
export GHIDRA_INSTALL_DIR="/absolute/path/to/ghidra_12.1.4_PUBLIC"
export JAVA_HOME="/absolute/path/to/jdk-21"
Sostituisci entrambi i percorsi con quelli delle installazioni esistenti. Per una nuova installazione su macOS o Linux arm64, compila il decompilatore nativo per il tuo computer prima di continuare.
Compila il decompilatore nativo di Ghidra
Su macOS, la compilazione richiede Xcode Command Line Tools, make e bison. Usa la guida per il tuo computer:
Poi controlla Ghidra e salva i suoi percorsi per l'applicazione:
npx -y rea-agents@latest doctor --provider ghidra --json
npx rea-agents@latest setup
Esegui questi comandi nella stessa sessione del terminale. Rilancia la configurazione dopo aver impostato i percorsi, approva la configurazione aggiornata dell'applicazione e poi riavvia l'agente.
Configurazione di Ghidra e requisiti di architettura · Guida a Ghidra su Windows
IDA · collega un'installazione esistente
Usa la guida al provider IDA per preparare una registrazione MCP del server upstream. Scegli una GUI collegata con il binario originale aperto, oppure un supervisore senza interfaccia grafica che apre un database privato.
I profili verificati includono la GUI legacy e il supervisore senza interfaccia grafica su Windows, oltre a un supervisore senza interfaccia grafica su macOS arm64 con IDA Professional 9.1. Il bridge nativo facoltativo per la GUI ha requisiti propri di versione e piattaforma.
Il profilo senza interfaccia di macOS e il bridge GUI nativo richiedono una compilazione di REA dai sorgenti o una versione che includa queste modifiche. npm 6.4.0 non le include.
Dalla directory dei sorgenti già compilati, esegui node scripts/rea.mjs doctor --provider ida --json e node scripts/rea.mjs setup al posto dei comandi npx qui sotto.
Prepara il file di registrazione IDA
Installa e configura il server upstream usando la guida IDA qui sotto. Poi salva la registrazione funzionante come ida-mcp.json in un editor di testo. Su Windows, scegli “All files” quando salvi in Notepad, così non aggiunge .txt.
Per un supervisore senza interfaccia grafica che offre idb_open, idb_list e idb_close, il file può avere questo aspetto:
{
"command": "idalib-mcp",
"args": ["--stdio", "--max-workers", "1"],
"mode": "headless"
}
Per un server GUI legacy 1.4.0 collegato, copia nel file i valori funzionanti di command, args e l'eventuale env. Apri il binario originale in IDA e avvia il suo plugin upstream prima di chiedere a REA di analizzarlo.
$env:REA_IDA_MCP_CONFIG = "C:/analysis/ida-mcp.json"
$env:REA_ANALYSIS_PROVIDER = "ida"
npx -y rea-agents@latest doctor --provider ida --json
npx rea-agents@latest setup
export REA_IDA_MCP_CONFIG="/absolute/path/to/ida-mcp.json"
export REA_ANALYSIS_PROVIDER="ida"
npx -y rea-agents@latest doctor --provider ida --json
npx rea-agents@latest setup
Usa il file di registrazione JSON preparato con la guida del provider, poi rilancia la configurazione e riavvia l'agente.
Profili IDA, esempi di registrazione e piattaforme verificate
Una volta collegato, fornisci all'agente il percorso completo dell'eseguibile originale e indica il provider:
Usa REA con il provider che ho configurato per analizzare
/absolute/path/to/program. Elenca le funzioni e le stringhe, poi spiega la parte che gestisce l'input dell'utente con riferimenti al codice.
Siti web, Android, .NET, firmware e altri obiettivi
Apri la guida per ciò che vuoi analizzare. Ogni guida indica gli strumenti aggiuntivi, gli host supportati e il primo comando.
| Target | Strumenti da preparare | Guida |
|---|---|---|
| JavaScript / Electron | Node.js + npm | Apri la guida |
| Sito web | Chrome / Chromium / Edge | Apri la guida |
| .NET / Flutter / pacchetti | Node.js + npm | Apri la guida |
| APK Android | JADX + JDK 17+ | Apri la guida |
| Dispositivo Android | adb | Apri la guida |
| Risorse Android | Apktool + Java | Apri la guida |
| Progetto JEB | JEB + MCP | Apri la guida |
| Firmware | Binwalk / Unblob · Linux | Apri la guida |
| WASM | WABT | Apri la guida |
| Database SQLite | Node.js 24.15+ / 26+ | Apri la guida |
| Bytecode EVM | Node.js · Linux x64 | Apri la guida |
| ELF / crash di Linux | pwntools / GDB / pwndbg | Apri la guida |
| HAR / SAZ / mitmproxy | Node.js / mitmdump | Apri la guida |
| PCAP / PCAPNG | TShark / capinfos · Linux | Apri la guida |
| Segnali logici | sigrok-cli · Linux | Apri la guida |
| Comportamento dei processi | PTY · Linux / macOS | Apri la guida |
Guida Flutter · Pacchetti e risorse · Bytecode EVM · Tutte le guide di analisi
Usa REA dal terminale
Comandi CLI, installazione globale e curl
Analizzare una cartella dell'applicazione JavaScript o Electron o un archivio ASAR senza eseguire l'app:
npx -y rea-agents@latest analyze-javascript-application "/absolute/path/to/app" --json
Sostituire il percorso con la directory dell'app estratta o .asar file. Su Windows, un percorso come "D:/apps/example" funziona qui.
Dove trovo il file .asar di un'app?
Electron apps di solito tenerlo in un resources cartella:
-
Windows :
C:\Users\<you>\AppData\Local\Programs\<App>\resources\app.asar -
macOS:
/Applications/<App>.app/Contents/Resources/app.asar(fai clic destro sull'app e scegli Mostra contenuto pacchetto) -
Linux : spesso
/opt/<App>/resources/app.asar
Alcune app si installano altrove. Cerca nella cartella dell'app per app.asar.
Il risultato identifica l'app, mostra le connessioni tra i moduli e fornisce le loro posizioni di origine. Le connessioni che REA non può risolvere sono contrassegnate nel risultato.
Se vuoi un permanente rea comando nella tua shell:
npm install --global rea-agents
Continuare con la guida all'applicazione JavaScript
npx -y rea-agents@latest function "/absolute/path/to/program" main --provider ghidra --json
Sostituisci main con il nome o l'indirizzo di una funzione dall'elenco delle funzioni del target. Ghidra deve essere già configurato.
Su macOS o Linux puoi anche usare il programma di installazione curl dopo aver preparato Node.js:
curl -fsSL https://raw.githubusercontent.com/morluto/rea/main/install.sh | bash
Segui le indicazioni di configurazione per collegare il tuo agente. Se non compaiono, esegui rea setup.
Se la shell non trova rea, usa il percorso dell'eseguibile mostrato dal programma di installazione. Su Linux, il comando di configurazione predefinito è "$HOME/.local/bin/rea" setup.
Ottenere aiuto
Se il tuo agente non vede REA
Riavviare o ricollegare il client dopo l'installazione. Controlla la sua connessione REA con doctor; per Codex :
Usa il controllo dell'applicazione al passaggio 3 con il tuo ID di configurazione. Negli editor, abilita REA nelle impostazioni MCP e consenti i suoi strumenti nella chat dell'agente.
Se un fornitore ha bisogno di attenzione
Controlla il provider che stai utilizzando. Per Ghidra :
npx -y rea-agents@latest doctor --provider ghidra --json
Il rapporto fornisce il controllo non riuscito e un passo successivo suggerito.
Windows, WSL e percorsi con spazi
Usa Windows PowerShell per le applicazioni e gli strumenti di analisi Windows. Se l'agente viene eseguito in WSL, installa Node.js e REA in quell'ambiente Linux e usa lì i percorsi Linux. I provider senza interfaccia grafica vengono eseguiti sullo stesso host di REA.
In un terminale, metti le virgolette attorno a un percorso che contiene spazi.
Comando di configurazione per Windows:
npx.cmd rea-agents@latest setup
Aggiorna o rimuovi REA
Per aggiornare la connessione dell'agente, esegui di nuovo il comando di configurazione della versione più recente, controlla il piano e riavvia l'applicazione.
npx rea-agents@latest setup
Se hai installato la CLI globale, aggiornala con rea update. Usa npx rea-agents@latest uninstall per rimuovere la configurazione delle applicazioni e la skill di REA.
- Domande FREQUENTI SU REARisposte rapide su aggiornamenti, agenti e analisi.
- Scegli una guida all'indagineEsempi funzionanti per un binario, un'app Electron e un browser.
- Problemi GitHubSegnalare un problema con il comando e la diagnostica.
- Comunità READomande, indagini e lavori in corso.
