REA
Wszystkie poradniki

Jak korzystać z REA z agentami programistycznymi: pierwsza analiza

reverseengineeranything.tools

Zainstaluj REA, podłącz agenta programistycznego, zbadaj lokalną aplikację JavaScript i sprawdź ustalenie na podstawie dowodów, zanim odtworzysz funkcję.

Co nowego na tej stronie

  • — Opublikowano przykłady społeczności poparte źródłami, praktyczne poradniki i jasno opisane ograniczenia dowodów.

Aby korzystać z REA z agentem programistycznym, uruchom npx rea-agents@latest setup, zatwierdź zmiany konfiguracji wybranego klienta i uruchom go ponownie. Następnie wskaż agentowi lokalne oprogramowanie i jedno konkretne zachowanie do zbadania; poproś o odpowiedni kod, lokalizacje w kodzie źródłowym i ograniczenia, zanim zlecisz mu cokolwiek zbudować.

REA to narzędzie CLI i serwer MCP o otwartym kodzie źródłowym. Ten artykuł jest niezależnym poradnikiem społeczności; rea.tools i repozytorium morluto/rea to oficjalne źródła projektu.

Czego potrzebujesz przed instalacją REA?

REA wymaga Node.js 22.x od wersji 22.19, Node.js 24.x od wersji 24.11 lub Node.js 26 i nowszych oraz npm. Node.js 23, 25 i wersje przedpremierowe nie należą do udokumentowanego zakresu obsługi. Podczas konfiguracji nowego komputera sprawdź oficjalny poradnik instalacji.

Wybierz obiekt analizy, który należy do Ciebie lub który masz pozwolenie badać. Rozpakowana aplikacja JavaScript lub archiwum Electron ASAR to dobry pierwszy wybór, ponieważ statyczna analiza aplikacji w REA nie wymaga Hopper, Ghidra ani IDA. Dogłębna analiza natywnych plików binarnych korzysta z jednego z tych silników i ma dodatkowe wymagania dotyczące platformy oraz wersji. README REA wymienia obsługiwane grupy obiektów analizy i wymagania wstępne.

Co chcesz zrobić? Zalecany punkt wyjścia Dane wejściowe Wynik
Poprosić agenta o wyjaśnienie funkcji Konfiguracja MCP REA Lokalna ścieżka do obiektu analizy i konkretne pytanie Ustalenia, dowody i dalsza analiza
Zbadać aplikację bez agenta CLI REA Katalog rozpakowanej aplikacji JavaScript lub ASAR Ustrukturyzowane dowody dotyczące aplikacji
Ręcznie zbadać układ strony lub wstrzymać wykonanie JavaScript Chrome DevTools Strona otwarta w Chrome Bezpośrednia edycja DOM/CSS i sterowanie punktami przerwania
Samodzielnie poznawać funkcje i grafy pliku binarnego Ghidra Obsługiwany plik wykonywalny lub biblioteka Interaktywna dezasemblacja, dekompilacja i projekt analizy

Chrome DevTools i Ghidra zapewniają rozbudowane interfejsy do bezpośredniego badania. REA przydaje się, gdy chcesz, aby agent pomagał prowadzić analizę i przekształcał wybrane ustalenia w wyjaśnienie lub implementację. Zobacz nasze porównanie z Ghidra i porównanie z Chrome DevTools.

Jak połączyć REA z agentem programistycznym?

Uruchom oficjalne polecenie konfiguracji w terminalu:

npx rea-agents@latest setup

Wybierz właściwego klienta, sprawdź dokładną konfigurację oraz ścieżki umiejętności i zatwierdź plan. Konfiguracja rejestruje lokalny serwer MCP REA i instaluje odpowiednie instrukcje prowadzenia analizy. Uruchom ponownie klienta wskazanego w komunikacie o zakończeniu, aby działający agent mógł wykryć połączenie. Oficjalna dokumentacja konfiguracji wyjaśnia podgląd zmian, kopie zapasowe i kontrolę zakresu.

Aby sprawdzić rejestrację dla Codex, użyj:

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

W razie potrzeby zastąp codex identyfikatorem obsługiwanego klienta. Prawidłowy wynik doctor potwierdza sprawdzenie plików rejestracji i wymagań wstępnych; nie dowodzi, że bieżąca sesja agenta nawiązała połączenie ponownie. Jeśli agent nadal nie widzi REA, uruchom go ponownie lub połącz jeszcze raz i zbadaj błąd połączenia MCP. Instalacja samej umiejętności z skills.sh dostarcza instrukcje, a nie połączenie MCP. Oficjalne wskazówki rozwiązywania problemów omawiają te różnice.

O co poprosić REA w pierwszym prompcie?

Wybierz jedno obserwowalne zachowanie zamiast prosić o odtworzenie całej aplikacji. W przypadku aplikacji, którą masz prawo badać, konkretny prompt może wyglądać tak:

Użyj REA do zbadania /absolute/path/to/my-notes-app.
Wyjaśnij, jak aplikacja eksportuje notatki do CSV.
Pokaż odpowiednie moduły, lokalizacje w kodzie źródłowym i dowody.
Oddziel potwierdzone zachowanie od wszystkiego, czego nie możesz ustalić.

Zastąp ścieżkę rzeczywistym obiektem analizy. REA dostarcza wyniki analizy; agent programistyczny je interpretuje. Zanim zaakceptujesz odpowiedź, sprawdź, czy wynik wskazuje pliki badanego obiektu, odpowiedni kod i wszelkie luki w zakresie analizy. Wiarygodnie brzmiące wyjaśnienie bez lokalizacji, która je potwierdza, jest hipotezą do dalszego zbadania.

Jeśli MCP jest niedostępne, statyczną analizę JavaScript można również uruchomić bezpośrednio:

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

Polecenie przyjmuje katalog rozpakowanej aplikacji lub ASAR i zwraca rekord Evidence. Błędy dostawców silników natywnych wykryte podczas audytu nie uniemożliwiają automatycznie tego odrębnego sposobu analizy JavaScript. Wskazówki REA dotyczące sprawdzania gotowości w określonym zakresie zalecają sprawdzenie zadania, którego rzeczywiście potrzebujesz.

Jak sprawdzić wynik przed odtworzeniem funkcji?

Przekształć wyjaśnienie w proste przewidywanie. W przypadku eksportu CSV porównaj zwykłą notatkę z notatką zawierającą przecinek, cudzysłów lub znak nowego wiersza. Zapytaj agenta, która gałąź kodu obsługuje te znaki i jak przewidywany wynik odpowiada zaobserwowanemu eksportowi z oryginalnej aplikacji. Oddziel zaobserwowany wynik od proponowanego przez agenta kodu zastępczego.

Oficjalna analiza Notes wykorzystuje eksport CSV do nauki tego procesu. Oficjalny przykład z dinozaurem ilustruje inny obiekt analizy: REA odczytuje załadowany skrypt gry przeglądarkowej, agent identyfikuje regułę przyspieszania, a niewielka rekonstrukcja umożliwia regulację prędkości. Są to przykłady z opisanym przebiegiem prac, opracowane przez projekt, a nie niezależne relacje użytkowników.

Jakie są ograniczenia dotyczące wydań i prywatności?

Gałąź main repozytorium może opisywać funkcje nowsze niż opublikowany pakiet npm. @latest wskazuje bieżące wydanie npm; trwałe rejestracje MCP są przypięte do dokładnej wersji, która przeprowadziła konfigurację. Przy aktualizacji ponów konfigurację i uruchom agenta ponownie. Wybieraj funkcje na podstawie rzeczywistej listy narzędzi i schematów podłączonego serwera, zamiast zakładać, że zainstalowano każdą funkcję z gałęzi main. Oficjalny opis różnic między wydaniem a gałęzią main wyjaśnia to rozróżnienie.

REA analizuje obiekty na Twoim komputerze. Wyniki narzędzi są wysyłane do agenta programistycznego, którego dostawca modelu ma własną politykę dotyczącą danych. Przed udostępnieniem wyniku sprawdź jego zawartość, zwłaszcza fragmenty kodu źródłowego, lokalne ścieżki, przechwycone żądania lub dane aplikacji. Oficjalne FAQ opisuje tę granicę między lokalną analizą a dostawcą modelu.

Jakie pytania pojawiają się po pierwszej analizie?

Czy mogę używać REA bez Hopper, Ghidra lub IDA?

Tak. Statyczna analiza JavaScript/Electron i .NET nie wymaga silnika analizy natywnej. Dogłębna analiza kodu natywnego go wymaga. Dobieraj wymagania do obiektu analizy zamiast traktować każdego opcjonalnego dostawcę silnika jako obowiązkowego.

Czy REA odzyskuje oryginalny kod źródłowy?

Analiza natywna zwraca kod asemblerowy i pseudokod wraz z ustaleniami, które je wspierają. Pseudokod jest reprezentacją na potrzeby analizy, a nie obietnicą odtworzenia oryginalnego kodu źródłowego. Agent może wykorzystać ustalenia do napisania nowej implementacji i jej przetestowania.

Czy mogę uruchomić REA bez subskrypcji AI?

CLI REA może bezpośrednio uruchamiać procesy analizy. Korzystanie z agenta programistycznego wiąże się z wymaganiami dostępu danego klienta i warunkami dostawcy modelu. Licencja MIT REA nie zapewnia dostępu do modelu ani licencji na komercyjny silnik analityczny.

Co zrobić, gdy polecenie kończy się błędem?

Najpierw sprawdź udokumentowane wymagania wstępne i zaktualizuj REA. W przypadku globalnie zainstalowanego CLI polecenie rea update aktualizuje instalację, do której ono należy; w przypadku konfiguracji agenta opartej na npx uruchom ponownie npx rea-agents@latest setup i zrestartuj klienta. Jeśli błąd nadal występuje, zgłoś wersję REA, system operacyjny, typ obiektu analizy, dostawcę silnika, wykonane kroki i komunikaty błędu przez oficjalny system zgłaszania problemów.