ReAgent CLI

Восстанавливает функции C и C++ из скомпилированных программ через Ghidra: одна модель пишет код, другая проверяет.

  • 2 434 ★ репозитория
  • Последний коммит
  • MIT
CLI

Широкий доступ

Почему такой уровень

  • Двойное назначение: восстановление исходников из бинарных файлов годится и для анализа чужого закрытого кода, а лицензии часто запрещают дизассемблирование.
  • Команды сборки и тестов из конфигурации выполняются на машине с правами пользователя, поэтому запускать можно только проверенные.
  • Код и данные из бинарного файла уходят выбранному провайдеру модели и расходуют платные вызовы.
Все причины и проверки

dryxio/reagent

Установка

Работает в

В терминале, через SkillFoxx CLI

npx skillfoxx add cli/reagent

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Двойное назначение: восстановление исходников из бинарных файлов годится и для анализа чужого закрытого кода, а лицензии часто запрещают дизассемблирование.
  • Команды сборки и тестов из конфигурации выполняются на машине с правами пользователя, поэтому запускать можно только проверенные.
  • Код и данные из бинарного файла уходят выбранному провайдеру модели и расходуют платные вызовы.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

ReAgent — командная утилита `re-agent`, которая по скомпилированной программе восстанавливает исходный код функций на C и C++. Данные берутся из Ghidra через отдельный мост `ghidra-bridge`: декомпиляция, перекрестные ссылки, структуры, таблицы виртуальных функций, строки и граф потока управления. Одна модель пишет вариант функции, вторая проверяет его, число раундов правок ограничено. Затем структурный верификатор сверяет код с ассемблером, а настроенные сборка и тесты идут в копии проекта. Каждая функция получает метку паритета GREEN, YELLOW или RED. Исходное дерево утилита не трогает: результат лежит в оверлее и отчетах. В роли моделей выступают Claude, Codex или любой OpenAI-совместимый API.

Для кого. Реверс-инженерам и авторам декомпиляционных проектов, которые восстанавливают исходники собственной или легально изучаемой программы.

Подходит, если

  • Декомпиляционный проект ведет сотни функций класса, и порядок работы задают их зависимости.
  • Черновик функции по адресу из Ghidra пишет одна модель, а другая сверяет его с ассемблером.
  • Перед прогоном всего класса стоит попробовать одну функцию и ограничить число вызовов модели.
  • Команде нужны отчеты и пакеты доказательств, чтобы вручную проверить спорные места.
  • Восстановленный код надо прогнать через сборку и тесты в изолированной копии проекта.

Не подходит, если

  • Лицензия на программу запрещает дизассемблирование, а прав на изучение нет.
  • Нужно математическое доказательство эквивалентности: проверки здесь консервативные.
  • Ghidra и экспорт проекта еще не готовы, и времени на мост нет.
  • Цель — обойти защиту, античит или проверку лицензии: утилита восстанавливает код, а не взламывает.

Пример запроса к агенту

Настрой re-agent для этого проекта, запусти `re-agent doctor` и восстанови одну функцию по адресу 0x401000 с малым лимитом вызовов модели.

Ограничения

Нужны Python 3.10 и новее, Ghidra с настроенным `ghidra-bridge` и хотя бы одна модель: ключ Claude или OpenAI-совместимого API либо авторизованные `claude` и `codex`. Каждая функция тратит много вызовов модели, а стоимость зависит от выбранных моделей и числа раундов, поэтому в README советуют задать лимит. Структурные и паритетные проверки ловят расхождения, но эквивалентность бинарного кода не доказывают. Команды сборки и тестов из конфигурации запускаются на машине пользователя, поэтому доверять можно только своим.

Как отключить. Удалите пакет командой `python3 -m pip uninstall auto-re-agent` и файл `re-agent.yaml` из проекта. Отчеты лежат в `reports/re-agent`: удалите каталог отдельно, если он не нужен.

Частые вопросы

Какие модели можно подключить?

Claude по API или через локальный `claude`, Codex CLI и любой OpenAI-совместимый API. Для автора и проверяющего можно выбрать разные модели в блоке `agents` файла `re-agent.yaml`.

Что считается успешным результатом?

Все четыре условия сразу: проверяющая модель вернула `PASS`, верификатор не нашел сильных расхождений, сборка и тесты прошли, паритет не заблокирован уровнем RED или YELLOW.

Меняет ли утилита исходники проекта?

Нет. Кандидат пишется в оверлей, а проверки идут во временной копии. Коммитов и push утилита не делает.

С чего начать?

Команда `re-agent doctor` покажет, чего не хватает. Затем `re-agent reverse --address 0x401000` восстановит одну функцию, после чего можно запускать класс целиком.

Сколько стоит прогон?

Цена зависит от моделей, объема доказательств и сложности цели. В README советуют задать малый лимит вызовов и начать с одной функции; команда `re-agent estimate` помогает прикинуть расход.

Обсуждение

Вопросов и отзывов пока нет.

MCP-сервер для Ghidra: агент декомпилирует, переименовывает переменные, строит перекрестные ссылки и разбирает бинарные файлы через набор мелких инструментов

MCP-серверШирокий доступ958Звезды репозитория

CLI на Rust для Ghidra: импорт бинарников, декомпиляция, перекрестные ссылки и правка типов с выводом в JSON для агента

CLIШирокий доступ267Звезды репозитория

MCP-сервер и CLI для реверс-инжиниринга: агент разбирает бинарные файлы, JavaScript-приложения, APK и сайты на вашей машине и приводит доказательства

MCP-серверШирокий доступ454,8 тыс.Звезды репозитория

MCP-сервер и плагин для Ghidra: агент декомпилирует бинарники, смотрит перекрестные ссылки и переименовывает функции в открытом проекте

MCP-серверРасширенный доступ11,9 тыс.Звезды репозитория

Защитный слой для готовых сборок против ИИ-агентов, которые их реверсят: ловушки, перегрузка анализатора, сохранение поведения

CLIШирокий доступ5,4 тыс.Звезды репозитория

RE-MCP открывает агенту IDA Pro и Ghidra в безголовом режиме: функции, декомпилятор, перекрестные ссылки, типы и патчинг.

MCP-серверШирокий доступ179Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
ReAgent (эта карточка)нет2 434
Ghidra MCP Serverнетне нужна6 207дает агенту доступ к Ghidra через MCP; ReAgent сам ведет цикл восстановления и проверки функций
Ghidra CLIнет267командная оболочка над Ghidra; ReAgent добавляет модели, верификатор и паритет

Коротко о README

В README есть готовый промпт для агента-установщика, быстрый старт, настройка провайдеров моделей, описание 11 встроенных сигналов паритета и миграция команд проверки на массивы аргументов.

Бейдж для README

Сообщить о проблеме