Переверните все программное обеспечение: REA поднимается на GitHub 58 000 Star, агент поворачивает назад в вопрос.
Недавно GitHub запустил новый проект – REA. Пользователь сказал, что это было «до 42 000 звезд», но на сегодняшний день (10 октября 2026 года) число увеличилось. 58 000 звезд, 11 000 вил.- Больше, чем говорят. И что он делает, так это то, что вы можете сказать то же самое: вы используете его, чтобы обратить вспять любое программное обеспечение, перекопать его из приложения в исходный двоичный код.
И. РЕА: В чем именно заключается проблема?
Традиционный реверс: «Человек сидит в компиляторе в течение нескольких дней, чтобы прочитать компиляцию». Идея REA заключается в том, чтобы настроить антициркулятор (оригинальный код с Hopper, Ghidra или IDA), а затем подключиться к статическому анализатору для JavaScript и IDA. Нет. Агент отвечает за допрос инструмента, сбор выводов и передачу доказательств.
Примером является весь пункт продажи: «Знайте, как работает поиск в приложении Notes, покажите мне доказательства и сделайте аналогичную функцию для моего проекта». У вас есть объяснение, местоположение кода и список того, чего вы не знаете.
Ключевой момент — проанализировать все локальные операции, а выводы будут сопровождаться доказательствами и ограничениями — не позволить модели составить для вас объяснение.
ii. Какие цели есть
REA имеет довольно широкую базу поддержки, которая по существу охватывает общие обратные объекты:
- Нативный бинарныйпсевдокоды, компиляции, строки, символы, вызовы и ссылки (требуется Hopper/Ghidra/IDA)
- Оффлайн ELF Layoutпараграфы, разделы, оригинальный символ/репозиция, статический кандидат на смягчение последствий
- JavaScript / Electronмодуль, импорт, исходная карта, маршрут, отношение IPC к первичному плагину (статический анализ без первичного движка);
- СайтСтруктура страницы, скрипты, веб-наблюдение и скриншот
- Коллекция программ .NETМетаданные, команды CIL, декларирование первоначальной зависимости от конструкции (чистая статика)
- Android APKЗаявление о списке, класс, метод обратного перевода и ссылка (необходим безголовый JADX + полный JDK)
- твердый: разделы, экстракции пересекаются с оригинальным анализом (нужны Binwalk / Unblob)
- Байты EVM, сбои входа в Linux, захват HAR, поведение процессаПодожди.
Экологические требования: Node.js 22.x (≥22.19), 24.x (≥24.11) или 26+, плюс npm. Поддерживаемые агенты включают Claude Code, Codex, Cursor, Gemini CLI, Grok Build и т. Д. - любые агенты, которые поддерживают локальные MCP-серверы, в основном функциональны. Установите заказ:npx rea-agents setup, он зарегистрирует MCP-сервер и напишет сопровождающее описание рабочего процесса, а затем перезапустит муравья.
Три публичных случая: что это может доказать?
Звёздные числа представляют тепло и результаты случая. Чиновник REA выставил три витрины из «что может» и «что не может».
Случай 1: Формула звукового поля для DX-Ball
Вопрос: Как DX-Ball в 1990-х годах преобразовал горизонтальное положение кирпичей в левое/правое звуковое поле? Контркомпилятор находится в 0x406400 Только один ненаблюдаемый вход был замечен. __ftol() Звонок; недостающие ссылки в команде [EBP+8]Я не знаю. Следуйте за звонящим 0x411f40 Формула координат найдена 20 + 30 × tile_xи прочитать три константы из памяти 1.5625, 500.0 и начального акустического масштабирования 1.0.
Правило, которое в итоге восстанавливается, таково: удвоить координату, умножить на 1,5625, минус 500,0, умножить на сохраненное акустическое поле и затем отрезать. Зум до 1 с левым краем -500, центр 0, правый край 500. Что действительно укрепляет уверенность, так это средства аутентификации: автор запускает 3205 примеров одновременно через оригинальную функцию x86 и новую версию C (охватывая 0-640 полных позиций, масштабируя 0/05/1/20-1), а под фиксированной цепочкой инструментов VC 4.0 байты сопоставляются с оригинальными 63 байтами. Весь отчет по проекту содержал 55 функций C, 45380 сравнений.
Это не доказывает.Переход на подключение звукового поля к заднему концу игры еще не завершен, а играбельный продукт неполный; работа привязана к фиксированной Hash на DX-Ball 1.07; компиляция «перепозиционированных и проверенных констант, опирающихся на ручной обзор» не полностью автоматическая.
Случай 2: Как копировать на Clip Board
Переход от бинарной системы 90-х годов к современному приложению Electron. Вопрос: Notion Desktop 7.6.1 Как писать текст и HTML в системный буфер обмена? Путь в четырех сегментах: сценарий предварительной загрузки, открытый для страницы clipboard.writeОбертка, зовущая на какой-то канал ipcRenderer.invokeОсновной процесс ipcMain.handle Прием; электрон отправителем clipboard.write Крушение. Одно и то же название канала с обеих сторон. notion:clipboard:writeЯ не знаю.
Стоит помнить о двух открытиях: главный обработчик процесса будет проверять, какая страница отправила запрос, и только Notion имеет свои собственные веб-наборы, чтобы добраться до буфера обмена для записи. Это правильная позиция, для которой должен применяться Electron; во-вторых, в копии скрыта часть данных, с комментарием в HTML, указывающим на Notion для настройки миметипов. text/_notion-blocks-v3-production Локально хранимые данные блока. Возвращает запись при вставке по ID и возвращает исходный текст +HTML, когда запись истекает.
Это не доказывает.REA 4.1.0 анализирует только предварительную загрузку метки, находит открытые API. invoke Звоните, обёртка понимает, что автор читает вручную и подключает Канал к получателю; вывод буфера обмена — из веб-ресурса и кэша вкладчика от 13 июля 2026 года, а не из сеансов живого рабочего стола.
Case 3: Playscreen для PC-98
16-битный код DOS. Программа GERA поддерживает 16 бит DOS-анализа. Автор восстанавливает фиксированные углы и углы прицеливания за кольцом бомбового занавеса, реконструирует их с помощью C++ и сравнивает с выводом исторического компилятора. Формы те же, что и у DX-Ball: восстановить небольшую часть вычисления, перестроить его и затем аутентифицировать оригинальным продуктом, вместо того, чтобы верить в это объяснение.
Четыре. Сложите три дела вместе.
- Он очень узкий.: акустическая формула, путь буфера обмена, кольцо занавески пули, и ни один случай не говорит «перестроить все приложение».
- Доказательства прилагаются.Адрес, константа, 3205 тестов, название канала, сохраненный зонд, сравнение компилятора.
- Все допущены к ручным шагам.Вручную просматривается перепозиционирование, вручную читается обертка, сопоставляется компилятор.
- Цели имеют фиксированные версии.DX-Ball 1.07 с Hash, Notion 7.6.1, оригинальная двоичная версия PC-98.
Это сегодняшняя честная граница:Агент является быстрым, неутомимым помощником для отслеживания индивидуального поведения и оказывается тестом, с которого вы можете бежать снова.
Ви. Что это значит для разработчиков
Если вы делаете активные приложения, REA представляет собой новый шаблон: вместо того, чтобы позволить модели «угадывать» непосредственно о том, как работает программа, вы помещаете модель на профессиональный обратный инструмент, чтобы заставить ее говорить о доказательствах. Его значение не «один ключ меняет все программное обеспечение», но он будет перемещать обратный порог от «компиляций чтения» к «вопрос + проверка».
Но будьте трезвыми два момента. Во-первых, локальный анализ — это не то же самое, что поток данных: ваш агент будет экспортировать инструменты для моделирования поставщиков. Во-вторых, качество доказательств зависело от цепочки сертификации, а доверие к делу было получено из 3205 сравнений и сопоставления байтов, а не из устной интерпретации модели.
Как это сделать?
- Окружающая среда: Node.js 22.x (≥22.19) / 24.x (≥24.11) / 26+, плюс npm
- Первая ключевая установка:
npx rea-agents setup, выберите своего арендатора, просмотрите и одобрите изменения и перезапустите арендатора - Глобальная установка:
npm install --global rea-agentsПозже доступноrea --help - Статический JS/электронный анализ:
npx -y rea-agents@latest analyze-javascript-application /abs/path --json - Первичный анализ: предварительная настройка провайдера (Hopper/Ghidra/IDA)
- Обновление:
rea updateИли снова бежать.npx rea-agents@latest setup
Обратный переход от «сборки чтения» к «вопрос + валидация» — инструмент понизил порог, но доказательства все равно должны быть проверены.