Impostare REA .

Prepara il computer e l'agente di programmazione, collega REA e poi analizza una piccola app.

È la prima volta? Segui i quattro passaggi qui sotto. Hai già un agente? Vai direttamente a Collega REA.

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:

Terminale
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)
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:

Windows PowerShell
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?
macOS · 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.

Linux
curl -fsSL https://fnm.vercel.app/install | bash

Chiudi il terminale, riaprilo, poi:

Linux
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:

Terminal
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:

Windows PowerShell
powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex"
macOS / Linux
curl -fsSL https://chatgpt.com/codex/install.sh | sh

Dopo l'installazione, riapri il terminale e torna nella cartella di lavoro. Poi avvia Codex:

Terminal
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.

Installazione di Codex e accesso

Cursor, Windsurf o VS Code · usa un editor
  1. Installa l'editor per il tuo sistema operativo e accedi.
  2. Apri la cartella rea-work creata al passaggio 1.
  3. 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:

Windows PowerShell
irm https://claude.ai/install.ps1 | iex
macOS / Linux
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.

Installazione di Claude Code e opzioni dell'account

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:

Terminal
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
Terminal
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.

Installazione di OpenCode e configurazione del 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:

Grok Bot
npx -y rea-agents@6.4.0 mcp

Istruzioni per il connettore di Grok Bot

3. Collega REA

Copia questo prompt nel tuo agente di programmazione:

Il 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
Terminal
npx rea-agents@latest setup

Per un'applicazione specifica, aggiungi il suo ID di configurazione:

Terminal
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.

Terminal
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 .

Il tuo agente di programmazione

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:export messaggio. Il processo principale formatta le note come CSV e scrive notes.csv nella cartella Download dell'utente. Le colonne sono id e title.

Verifica una previsione nell'esercizio guidato →

Scarica l'esempio da solo o usa la tua app

Scarica esempio ZIP

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.

Terminal
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.

Configurazione di Hopper e risoluzione dei problemi

Ghidra · installa lo strumento di analisi gratuito e Java
  1. Installa un JDK a 64 bit, versione 21 o successiva, incluso il compilatore Java. Scegli il pacchetto adatto all'architettura del tuo computer.
  2. 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”.
  3. Trova la cartella estratta che contiene ghidraRun o ghidraRun.bat. Usa quella cartella per GHIDRA_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:

Terminal
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:

Windows PowerShell
$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
macOS / Linux
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:

macOS / Linux
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:

ida-mcp.json
{
  "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.

Windows PowerShell
$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
macOS / Linux
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.

Segui un esempio di analisi nativa

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:

Analisi statica delle applicazioni
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:

Installare il CLI
npm install --global rea-agents

Continuare con la guida all'applicazione JavaScript

Terminal
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:

macOS / Linux
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 :

Controllare un provider
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:

Windows PowerShell
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.

Terminal
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.

Dettagli di aggiornamento e disinstallazione

Cima