REA: поручите ИИ-агенту разобраться в программе без исходного кода
Открытый проект REA (Reverse Engineer Anything) подключает инструменты реверс-инжиниринга к ИИ-агентам для программирования, таким как Claude Code, Codex и Cursor. Увидели полезную функцию в чужом приложении? Попросите агента разобрать программу, объяснить, как она реализована, привести доказательства и написать аналог в вашем проекте. Реверс-инжиниринг — это способ выяснить, как устроена скомпилированная программа, когда исходного кода у вас нет.
Сам REA — это MCP-сервис. MCP — универсальный интерфейс, через который ИИ-агенты обращаются к внешним инструментам. После подключения агент может вызывать функции анализа REA прямо в диалоге. Для установки достаточно выполнить одну команду: npx rea-agents setup. Она зарегистрирует REA в Claude Code, Codex, Cursor, Gemini CLI, Grok Build и других агентах. Перед изменением настроек программа создаст резервную копию и запросит подтверждение. Если вы не пользуетесь агентами, команды можно запускать непосредственно в терминале.
REA умеет анализировать самые разные программы. Для нативных приложений (программ, скомпилированных непосредственно в машинный код) понадобятся дизассемблеры Hopper, Ghidra или IDA: они преобразуют машинный код в ассемблер и псевдокод, похожий на C. Приложения Electron (настольные программы, созданные с помощью веб-технологий, например Notion) можно разбирать прямо из архива ASAR внутри установочного пакета: это позволяет изучить модули и взаимодействие между процессами без дополнительных инструментов. Кроме того, поддерживаются программы .NET, APK для Android, прошивки, сайты, записи сетевого трафика, байткод контрактов Ethereum, а также отслеживание поведения программ во время выполнения в Linux и macOS.
Анализ выполняется на вашем компьютере, и REA не загружает целевую программу. Однако результаты анализа передаются поставщику модели, на которой работает агент. Обработка данных зависит от политики каждого поставщика.
В проекте приведены три примера. Первый — классическая игра DX-Ball: начиная с вызова воспроизведения звукового эффекта, авторы отследили функцию, которая рассчитывает левый и правый аудиоканалы в зависимости от положения мяча, восстановили C-код по неполному псевдокоду и получили совпадение со всеми 3205 наборами тестов оригинала. Скомпилированные 63 байта также полностью совпали с оригиналом. Второй пример — настольная версия Notion: отслежена вся цепочка копирования и вставки — от интерфейса через скрипт предварительной загрузки и межпроцессное взаимодействие до основного процесса. Третий — игра «Тохо Гэнсокё» (TH04) для японского старого компьютера PC-98: по 16-битным инструкциям восстановлен алгоритм расчёта углов кольца пуль.
Для исследователей безопасности, разработчиков ремейков старых игр и специалистов по сохранению программ раньше это означало часами читать дизассемблированный код строка за строкой и шаг за шагом отслеживать вызовы. Теперь можно поручить эту работу агенту, а затем проверить приведённые им доказательства. У обычных разработчиков появился ещё один способ изучить, как конкуренты реализовали ту или иную функцию.
Согласно README, у проекта уже 50 тысяч звёзд на GitHub. Пакет npm впервые опубликовали в июле этого года, а последнюю версию 6.3.0 выпустили сегодня.
Перед использованием учтите два момента. Проект заявляет, что поддерживает только законные исследования методом реверс-инжиниринга; за наличие разрешения и соблюдение законодательства отвечает сам пользователь. Реверс-инжиниринг чужого программного обеспечения может нарушать пользовательское соглашение или законы об авторском праве. Также проект подчёркивает, что никогда не выпускал и не поддерживал никакую криптовалюту: токены, использующие название REA, к проекту отношения не имеют.
https://github.com/morluto/rea
Открытый проект REA (Reverse Engineer Anything) подключает инструменты реверс-инжиниринга к ИИ-агентам для программирования, таким как Claude Code, Codex и Cursor. Увидели полезную функцию в чужом приложении? Попросите агента разобрать программу, объяснить, как она реализована, привести доказательства и написать аналог в вашем проекте. Реверс-инжиниринг — это способ выяснить, как устроена скомпилированная программа, когда исходного кода у вас нет.
Сам REA — это MCP-сервис. MCP — универсальный интерфейс, через который ИИ-агенты обращаются к внешним инструментам. После подключения агент может вызывать функции анализа REA прямо в диалоге. Для установки достаточно выполнить одну команду: npx rea-agents setup. Она зарегистрирует REA в Claude Code, Codex, Cursor, Gemini CLI, Grok Build и других агентах. Перед изменением настроек программа создаст резервную копию и запросит подтверждение. Если вы не пользуетесь агентами, команды можно запускать непосредственно в терминале.
REA умеет анализировать самые разные программы. Для нативных приложений (программ, скомпилированных непосредственно в машинный код) понадобятся дизассемблеры Hopper, Ghidra или IDA: они преобразуют машинный код в ассемблер и псевдокод, похожий на C. Приложения Electron (настольные программы, созданные с помощью веб-технологий, например Notion) можно разбирать прямо из архива ASAR внутри установочного пакета: это позволяет изучить модули и взаимодействие между процессами без дополнительных инструментов. Кроме того, поддерживаются программы .NET, APK для Android, прошивки, сайты, записи сетевого трафика, байткод контрактов Ethereum, а также отслеживание поведения программ во время выполнения в Linux и macOS.
Анализ выполняется на вашем компьютере, и REA не загружает целевую программу. Однако результаты анализа передаются поставщику модели, на которой работает агент. Обработка данных зависит от политики каждого поставщика.
В проекте приведены три примера. Первый — классическая игра DX-Ball: начиная с вызова воспроизведения звукового эффекта, авторы отследили функцию, которая рассчитывает левый и правый аудиоканалы в зависимости от положения мяча, восстановили C-код по неполному псевдокоду и получили совпадение со всеми 3205 наборами тестов оригинала. Скомпилированные 63 байта также полностью совпали с оригиналом. Второй пример — настольная версия Notion: отслежена вся цепочка копирования и вставки — от интерфейса через скрипт предварительной загрузки и межпроцессное взаимодействие до основного процесса. Третий — игра «Тохо Гэнсокё» (TH04) для японского старого компьютера PC-98: по 16-битным инструкциям восстановлен алгоритм расчёта углов кольца пуль.
Для исследователей безопасности, разработчиков ремейков старых игр и специалистов по сохранению программ раньше это означало часами читать дизассемблированный код строка за строкой и шаг за шагом отслеживать вызовы. Теперь можно поручить эту работу агенту, а затем проверить приведённые им доказательства. У обычных разработчиков появился ещё один способ изучить, как конкуренты реализовали ту или иную функцию.
Согласно README, у проекта уже 50 тысяч звёзд на GitHub. Пакет npm впервые опубликовали в июле этого года, а последнюю версию 6.3.0 выпустили сегодня.
Перед использованием учтите два момента. Проект заявляет, что поддерживает только законные исследования методом реверс-инжиниринга; за наличие разрешения и соблюдение законодательства отвечает сам пользователь. Реверс-инжиниринг чужого программного обеспечения может нарушать пользовательское соглашение или законы об авторском праве. Также проект подчёркивает, что никогда не выпускал и не поддерживал никакую криптовалюту: токены, использующие название REA, к проекту отношения не имеют.
https://github.com/morluto/rea