REA može da mapira lokalnu JavaScript ili Electron aplikaciju iz datoteka koje imate pravo da pregledate, čak i bez izvornog stabla. Koristan rezultat je trag dokaza za jedno ponašanje: koji modul ga izlaže, gde poziv prelazi granicu procesa i koje delove treba posebno proveriti. Ovaj vodič koristi aktuelnu dokumentaciju projekta REA, proverenu 14. oktobra 2026. BIG CHANGE nije pokrenuo REA nad aplikacijom.

Velika promena

  • Šta se promenilo: REA daje programerskom agentu strukturisanu mapu modula, uvoza, izvornih mapa, ruta i Electron IPC-a iz dostavljenog direktorijuma aplikacije ili ASAR datoteke. Svaki nalaz može da pokaže datoteke iz kojih potiče.
  • Zašto je važno: Programer koji istražuje jednu funkciju može da prati imenovani API ili IPC kanal kroz zapakovanu aplikaciju pre nego što odluči šta ručno da proveri. Tako pitanje postaje uže, a dokaze je lakše proveriti.
  • Na šta obratiti pažnju: Statičke putanje koda su kandidati, a ne dokaz da ih aplikacija koristi tokom rada. Tvrdnja o konkretnom ponašanju i dalje zahteva nezavisno opažanje ili test na ovlašćenom cilju.

Pre nego što počnete

Ovaj postupak je namenjen programeru koji poseduje lokalnu JavaScript ili Electron aplikaciju ili ima dozvolu da je pregleda. Potreban vam je direktorijum izdvojene aplikacije ili njena app.asar datoteka i njena apsolutna putanja. REA-ov manifest paketa navodi rea-agents verziju 6.4.0 i zahteva Node.js 22.19 ili noviji u liniji 22.x, 24.11 ili noviji u liniji 24.x, ili verziju 26 i noviju. Potreban je i npm. Na Linuxu, statička JavaScript/Electron analiza pomoću REA zahteva proces kompatibilan sa procps-om ps na REA PATH za proveru vlasništva procesa, kako objašnjava REA-ov vodič za instalaciju. To su zahtevi računara koji pokreće REA, odvojeni od zahteva ciljne aplikacije.

Statički JavaScript postupak ne zahteva Hopper, Ghidra, IDA, pregledač ni pokrenut Electron proces. Ti alati pripadaju drugim REA postupcima. Proverite pravo na pregled cilja i sačuvajte kopiju izvornih datoteka kako biste utvrdili tačno koji je artefakt dao rezultat. Za instalaciju koristite zvanični morluto/rea repozitorijum ili npm paket na koji on vodi; repozitorijum sličnog imena ne dokazuje poreklo.

1. Podesite REA ili koristite jednokratni CLI

Za povezani programerski agent, dokumentovana komanda za podešavanje glasi:

Terminal
npx rea-agents setup

Pregledajte izmene koje predlaže za konfiguraciju agenta, odobrite željene izmene i zatim ponovo pokrenite agenta. Ako vam je potreban samo pregled u terminalu, dokumentovana komanda ispod pokreće paket za taj poziv. @latest bira izdanje koje je aktuelno u trenutku izvršavanja; zabeležite utvrđenu verziju uz dokaze jer se detalji izlaza mogu promeniti. Verzija 6.4.0 iznad navedena je u manifestu projekta pri proveri ovog članka 14. oktobra.

2. Analizirajte dostavljene datoteke

Zamenite primer putanje apsolutnom putanjom do ovlašćenog direktorijuma aplikacije ili ASAR datoteke:

Terminal
npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json > app-evidence.json

Vodič za CLI upozorava da potpuni Evidence može biti veoma velik. Sačuvajte ga kao datoteku, a zatim pročitajte sažetak ili prikaz izabranog modula. Nemojte lepiti ceo rezultat u prompt. Ako komanda ne uspe, sačuvajte grešku i ciljnu putanju radi dijagnostike; nulti izlazni status i dalje može da prati delimična pokrivenost, upozorenja ili nerešeni nalazi. README za Windows prikazuje putanju kao što je "D:/apps/example".

Referenca za rekonstrukciju artefakata kaže da ova operacija čita izabrane datoteke kao podatke, bez pokretanja aplikacije. Popisuje putanje i sažetke artefakata, analizira dostupni JavaScript i TypeScript i prijavljuje moguće ulazne tačke, uvoze, izvorne mape, rute, mrežne krajnje tačke, veze Electron preload-a i renderer-a, contextBridge API-je, IPC pozive i obrađivače, kao i zahteve za nativne dodatke. Očekivani rezultat je Evidence zapis sa grafom, statičkim Electron sažetkom, pokrivenošću i ograničenjima. Prijavljena .node veza je odnos koji treba ispitati, a ne dekodiranje tog nativnog modula.

3. Pratite jednu usko određenu funkciju

Izaberite funkciju koju možete da pronađete, kao što je akcija menija ili izloženi API metod. Zabeležite njen naziv vidljiv korisniku i u REA rezultatu potražite odgovarajući modul, doslovni IPC kanal ili rutu. Pratite prijavljene lokacije izvora redom: poziv iz renderer-a ili stranice, preload most, IPC prenos, odgovarajući obrađivač glavnog procesa, pa operacija nad datotekom ili uslugom koju obrađivač poziva. REA-ov Electron CSV primer prikazuje ovaj obrazac pomoću notes.exportCsv(), kanala notes:export i upisivača u glavnom procesu. Ti nazivi pripadaju primeru aplikacije; vaša meta će imati druge nazive.

Za svaku vezu zabeležite sažetak artefakta, putanju datoteke, lokaciju i ono što kod zaista pokazuje. Razlikujte doslovni kanal povezan sa jednim obrađivačem od izračunatog kanala ili nejasne veze. Pre nego što zaključite da modul ili obrađivač ne postoji, proverite polja pokrivenosti i ograničenja. REA navodi da neispravne ili nedostupne datoteke, nedostajući prateći bajtovi ASAR-a, nerešeni izrazi i ograničena analiza mogu ostaviti odnose nepoznatim. Izvorna mapa može otkriti izvorna imena, ali alat ne obećava izvorno stablo.

4. Nezavisno proverite ponašanje

Napišite jednu opovrgljivu tvrdnju na osnovu statičkog traga, na primer: „ova akcija poziva ovaj kanal, a obrađivač upisuje ovu vrstu datoteke“. Zatim u odobrenom testnom okruženju izvedite samo tu akciju i neposredno posmatrajte rezultat: napravljenu datoteku, promenjeno stanje ili trag prikupljen u okviru sopstvenih ovlašćenja. Zabeležite verziju aplikacije, sažetak artefakta, korake testa i opaženi rezultat. Ako niste ovlašćeni da pokrenete aplikaciju, zadržite tvrdnju na nivou statičke putanje koda. REA-ov primer izričito kaže da se izvedena putanja može proveriti snimanjem tokom rada; samo statički graf ne pokazuje koja je grana izvršena.

Uspeh znači da drugi programer može da pronađe iste lokacije izvora, vidi ograničenja statičke veze i ponovi vašu usku proveru. Uspešna analiza sama po sebi ne potvrđuje ponašanje tokom rada niti verno ponovno ostvarenje aplikacije.

Ako je rezultat nepotpun

Najpre proverite da li putanja vodi do potpunog izdvojenog direktorijuma ili ASAR datoteke i da li su potrebne .asar.unpacked prateće datoteke prisutne. Pregledajte pokrivenost i dijagnostiku alata REA; izvor koji nedostaje ili čije čitanje nije uspelo znači da je stanje nepoznato, a ne da je nalaz negativan. Za veliku aplikaciju, referenca dokumentuje tačne izbore --source-path; neizabrane datoteke ipak ostaju van obima analize. Ako je doslovno IPC poklapanje nejasno ili se kanal izračunava, pregledajte navedene datoteke i suzite pitanje. Zadržite nejasnoću u završnim napomenama ako ostane nerešena.

REA kod je pod MIT licencom, ali ciljni softver i eventualni spoljni mehanizam analize imaju sopstvene licence i uslove. Statička analiza obrađuje ciljne datoteke lokalno. Ako nalaze REA prosledite programerskom agentu, dobavljač tog modela ima sopstvenu politiku podataka; nemojte slati tajne ili vlasnički izlaz dok organizacija to ne odobri. Proverite uslove i troškove agenta i opcionog mehanizma pre upotrebe. Postupak i verzija paketa provereni su 14. oktobra 2026. i zasnovani su na dokumentaciji.