Reverse API Engineer CLI
CLI, который записывает трафик сайта в HAR и по нему пишет готовый клиент API на Python, TypeScript, Go и семи других языках
- 2 062 ★ репозитория
- Последний коммит
- MIT
Широкий доступ
Почему такой уровень
- Управляет браузером, а с провайдером `chrome-mcp` работает в вашем настоящем Chrome с сохраненными сессиями и куки
- Пишет клиент моделью и запускает его на вашей машине, а при необходимости ставит глобально `agent-browser` через npm
- Отправляет записанный трафик, в котором могут быть токены и персональные данные, поставщику выбранной модели
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add cli/reverse-api-engineerОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Управляет браузером, а с провайдером `chrome-mcp` работает в вашем настоящем Chrome с сохраненными сессиями и куки
- Пишет клиент моделью и запускает его на вашей машине, а при необходимости ставит глобально `agent-browser` через npm
- Отправляет записанный трафик, в котором могут быть токены и персональные данные, поставщику выбранной модели
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Reverse API Engineer ставится пакетом из PyPI и запускается командой `reverse-api-engineer`. Вы пишете цель обычной фразой, например «fetch all apple jobs from their careers page». Открывается браузер, и весь сетевой трафик страницы сохраняется в файл HAR. Модель читает этот файл, находит запросы, которыми сайт сам получает данные, и пишет клиент для них. В папку `./scripts/<имя>/` попадают `api_client.py`, описание и пример вызова. Режимы переключаются клавишами Shift+Tab. В `manual` браузер ведете вы, в `agent` страницы открывает ИИ-агент через Playwright MCP, Chrome MCP или CLI agent-browser от Vercel. Режим `engineer` повторно генерирует клиент по уже записанному запуску, а `collector` собирает структурированные данные в JSON и CSV через веб-поиск и загрузку страниц. Язык клиента выбирается в настройках: Python, JavaScript, TypeScript, Go, Java, C#, PHP, Ruby, C или PowerShell. Для скриптов есть подкоманды `agent`, `list`, `show` и `run`. С флагами `--no-interactive` и `--json` они не задают вопросов и печатают один JSON-документ с идентификатором запуска, путями к HAR и клиенту и расходом токенов. Постоянная копия запуска лежит в `~/.reverse-api/runs/scripts/`.
Для кого. Для разработчиков и аналитиков, которым нужен программный доступ к данным сайта без публичного API: вакансии, объявления, каталоги. Подходит тем, кто работает в Claude Code, Cursor, OpenCode или Copilot и готов проверять сгенерированный код.
Подходит, если
- Нужно выгрузить вакансии, объявления или товары с сайта, у которого есть внутренние запросы к серверу, но нет документированного API
- Вы собираете клиент для собственного сайта или аккаунта и не хотите вручную копировать запросы из DevTools
- Один и тот же клиент нужен на Python для скрипта и на TypeScript для приложения: язык меняется в настройках
- Надо встроить генерацию клиентов в свой конвейер: `reverse-api-engineer agent --prompt ... --url ... --json` печатает результат в одном JSON
- Нужна таблица данных с нескольких страниц сразу, и режим `collector` собирает ее в `items.json` и `items.csv`
Не подходит, если
- Сайт или данные чужие, и условия сайта или закон запрещают автоматический сбор: права на данные инструмент не проверяет
- У сервиса есть официальный API с документацией: проще и стабильнее использовать его
- Вы работаете на Intel macOS или 32-разрядной Windows: поддержку этих платформ убрала зависимость cryptography
- Нужен клиент для мобильного приложения: инструмент записывает трафик браузера, а APK для этого разбирает отдельный скилл `android-reverse-engineering-api-extraction`
Пример запроса к агенту
Открой страницу вакансий на нашем сайте, запиши запросы к серверу и напиши клиент на Python, который выгружает все вакансии с фильтром по городуОграничения
Проект в бета-стадии, Python 3.11 или новее. Сгенерированный клиент запускается на вашей машине, поэтому код нужно прочитать до запуска.
Сайты с сильной защитой от ботов могут блокировать запись трафика или требовать ручных шагов. Применять инструмент можно только к сайтам и данным, на которые у вас есть разрешение.
Для режима `agent` нужен ключ API выбранного SDK (`claude`, `opencode`, `cursor` или `copilot`). API Anthropic из России недоступен, поэтому доступность зависит от выбранного поставщика модели. Режим `manual` требует дополнительный пакет `[manual]` и команду `playwright install chromium`.
Клиенты на C требуют компилятор и заголовки libcurl, клиенты на PowerShell требуют `pwsh` 7 или новее. Провайдер `chrome-mcp` требует Chrome версии 146 или новее и Node.js 20.19 или новее.
Как отключить. Удалите пакет командой `uv tool uninstall reverse-api-engineer` (или `pip uninstall reverse-api-engineer`). Настройки лежат в `~/.reverse-api/config.json`, сохраненные запуски и клиенты в `~/.reverse-api/runs/`: эти папки удаляются вручную. Глобальный пакет `agent-browser`, если инструмент поставил его сам, снимается командой `npm uninstall -g agent-browser`.
Частые вопросы
Как сделать API-клиент из трафика сайта?
Запустите `reverse-api-engineer` и опишите цель, например «выгрузить все вакансии». Браузер откроется, трафик запишется в HAR, а модель напишет клиент в папку `./scripts/<имя>/`. Если нужен только результат без вопросов, используйте `reverse-api-engineer agent --prompt ... --url ... --json`.
На каких языках Reverse API Engineer пишет клиент?
На Python, JavaScript, TypeScript, Go, Java, C#, PHP, Ruby, C и PowerShell. Язык задается параметром `output_language` в `~/.reverse-api/config.json` или командой `/settings` внутри CLI.
Чем режим agent отличается от manual?
В `manual` вы сами ходите по сайту в локальном браузере Playwright, а модель потом читает записанный трафик. В `agent` браузером управляет ИИ-агент: через Playwright MCP, через ваш настоящий Chrome (`chrome-mcp`, с вашими куки и сессиями) или через CLI agent-browser.
Можно ли обойтись без платного ключа Anthropic?
Да. Если выбрать SDK `opencode`, инструмент сам поднимает OpenCode через `npx`, а у новой конфигурации по умолчанию стоит бесплатная модель `opencode/big-pickle`. Локальные модели можно подключить через Ollama и OpenCode, тогда нужны установленные модели с вызовом инструментов и контекстом от 64 тысяч токенов.
Как запустить Reverse API Engineer из скрипта или конвейера?
Подкоманды `agent`, `list`, `show` и `run` с флагами `--no-interactive` и `--json` не задают вопросов. Они печатают один JSON-документ, логи идут в stderr. Код выхода 0 означает успех; 1 означает ошибку выполнения; 2 означает нехватку обязательного аргумента.
Где искать результат прошлых запусков?
Читаемая копия лежит в `./scripts/<имя>/`, постоянная в `~/.reverse-api/runs/scripts/<run_id>/`. Список запусков со временем и стоимостью показывает `/history` в CLI или `reverse-api-engineer list --json`, а повторную генерацию по записанному трафику запускает `engineer <run_id>`.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыEmpryo — кодинг-агент для рабочего стола, терминала и CI: строит карту репозитория, правит код по имени символа и сам гоняет проверки
Одиннадцать скиллов Claude Code, которые воссоздают функции приложения с нуля: разведка, сборка, тесты, разбор отзывов, ребрендинг и выкладка
Плагин Claude Code извлекает из кодовой базы поведенческие спецификации, тестовые векторы и критерии приемки с журналом источников
Терминальный кодинг-агент на Python в манере Claude Code: читает репозиторий, правит файлы, запускает команды, с памятью, подагентами и MCP
Shep запускает кодинг-агентов параллельно, каждого в своем git worktree, и доводит задачу до черновика запроса на слияние
Скилл автономной итерации для агента: правка, проверка, откат неудачных изменений и повтор цикла к заданной метрике
Сравнение с похожими
Записи с тем же главным запросом: чем они отличаются.
| Запись | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| Reverse API Engineer (эта запись) | нет | 2 062 | ||
| Реверс-инжиниринг Android и извлечение API | нет | 8 347 | скилл разбирает APK и находит эндпоинты мобильного приложения, трафик сайта не записывает | |
| Chrome DevTools MCP | да | не нужна | 54 368 | официальный MCP-сервер дает агенту читать сеть и консоль живого Chrome, готовый клиент API не пишет |
Коротко о README
В репозитории есть пакет на Python с модулями для каждого режима и SDK, папка с подсказками для моделей по языкам, тесты и скрипт проверки генерации. Каталог `examples` показывает готовые клиенты для сайтов Apple, Uber, IKEA, AutoScout24, Ashby и Mintlify. Описание на главной странице проходит путь от установки к быстрому старту, настройкам, подкомандам, схеме JSON и кодам выхода. Отдельно лежат файлы с историей изменений и правилами выпуска версий.