
REA: keď sa AI pozrie programu pod kapotu
Používate program a napadne vám: ako vlastne robí túto jednu vec? Prečo kalkulačka počíta percentá práve takto? Ako stará hra rozhodne, z ktorého reproduktora zaznie náraz? Odpoveď sa často skrýva v samotnom programe. Projekt REA pomáha AI dostať sa k stopám, z ktorých ju možno poskladať.
Projekt nájdete tu: REA na GitHube — morluto/rea. Názov znamená Reverse Engineer Anything, teda približne „preskúmaj, ako čokoľvek funguje“. Je to ambiciózne pomenovanie; výsledok vždy závisí od konkrétneho programu a dostupných nástrojov.
Ako keď mechanik skúma hotový stroj
Pri vývoji vzniká z návrhu a zdrojového kódu hotová aplikácia. Reverzné inžinierstvo ide opačným smerom: skúma hotový výsledok a hľadá jeho vnútorné pravidlá. Podobá sa mechanikovi, ktorý sleduje súčiastky a ich prepojenia, aby pochopil pohyb stroja. Pri softvéri sú stopami súbory, funkcie, inštrukcie či správanie počas používania. Takto princíp vysvetľuje web REA.
Čo k tomu pridáva AI
REA poskytuje nástroje, cez ktoré si AI asistent môže vypýtať konkrétne údaje o skúmanom programe. Asistent potom spája zistenia, kladie ďalšie otázky a vysvetľuje výsledok. Spojenie zabezpečuje MCP: predstavte si ho ako spoločnú zásuvku medzi asistentom a jeho pracovnými nástrojmi. Dokumentácia opisuje aj používanie bez AI asistenta, cez terminál.
Najlepší začiatok je jedna presná otázka: „Čo sa stane po stlačení Exportovať?“ V pripravenom cvičení možno sledovať cestu od tlačidla až po vytvorenie CSV súboru s poznámkami. Z veľkej neprehľadnej aplikácie sa tým stane menší problém, ktorý sa dá krok po kroku preveriť. Autori ponúkajú úvodné cvičenie aj vysvetlenie analýzy JavaScriptu a Electronu.
Dva príklady, ktorým rozumie každý
Na webe projektu je príklad s kalkulačkou: pri zadaní 200 + 10 % sa desať percent vzťahuje na prvé číslo, takže pripočítame 20 a dostaneme 220. Pri násobení 200 × 10 % sa percentá zmenia na 0,1 a výsledok je 20. REA pomáha nájsť príslušnú vetvu programu a asistent z nej vysvetlí pravidlo. Pozrite si vysvetlenie autorov.
Druhý príklad pochádza z hry DX-Ball. Tím sledoval výpočet, ktorý mení vodorovnú polohu zásahu tehličky na polohu zvuku v stereu. Z inštrukcií a uložených čísel zrekonštruoval príslušnú funkciu. Podľa zverejnenej prípadovej štúdie ju porovnal s pôvodnou v 3 205 testovacích prípadoch a reprodukoval aj jej 63 skompilovaných bajtov. Ide o overenie jednej funkcie, nie o dôkaz automatickej obnovy celej hry. Zdroj: prípadová štúdia DX-Ball.

Kde môže byť užitočný
Pri staršom programe môže byť zaujímavé zistiť, ako spracúva súbor alebo prečo konkrétna funkcia vracia určitý výsledok. Na webe možno sledovať, akú požiadavku vyvolá kliknutie a ktorý skript pracuje s odpoveďou. Pri aplikáciách Electron zas možno mapovať komunikáciu medzi ich časťami. To sú konkrétne cesty k pochopeniu správania. Príklad skúmania webu a sledovanie schránky v Notione ukazujú rozdielne postupy.
Kúzelná obnova pôvodného kódu to nie je
Pri hotových natívnych programoch dostávame okrem iného inštrukcie a pseudokód — pokus analytického nástroja zapísať ich do čitateľnejšej podoby. Ten môže byť neúplný. V príklade DX-Ball prvý výstup časť výpočtu nezachytil a bolo treba pokračovať v skúmaní. Zistenie preto treba porovnať s ďalšími stopami a otestovať. Návod k natívnej analýze ukazuje tento postup.
Rozsah analýzy závisí aj od vybavenia. Hlbšie skúmanie natívnych programov využíva nástroje ako Ghidra, Hopper alebo IDA; podporované možnosti sa líšia podľa systému. REA vykonáva analýzu lokálne, ale výsledky dostáva AI asistent a vzťahujú sa na ne pravidlá jeho poskytovateľa. „Lokálne“ preto automaticky neznamená, že všetko zostane iba v počítači. Podrobnosti o nastavení a spracovaní údajov uvádzajú autori.
Čo si z toho odniesť
Na REA je zaujímavá možnosť premeniť zvedavú otázku na skúmanie konkrétnych dôkazov. Užitočné zadanie môže znieť: „Ukáž, ako táto funkcia pracuje, z čoho to vyplýva a ako to overíme.“ Projekt je určený na oprávnené skúmanie softvéru; licencia jeho vlastného kódu MIT nedáva práva na skúmaný program ani licenciu ku komerčným analytickým nástrojom. Licencie a podmienky projektu.
Redakčná poznámka: článok vychádza z verejnej dokumentácie a príkladov autorov, skontrolovaných 21. októbra 2026. REA sme pri príprave článku neinštalovali ani nezávisle netestovali. Obe tematické ilustrácie vznikli pomocou AI a nezobrazujú rozhranie REA.