mini-browser CLI
Консольный браузер mb для агентов: переход по адресу, снимок страницы, клики, формы, скриншоты и запись экрана
- 185 ★ репозитория
- Последний коммит
Расширенный доступ
Почему такой уровень
- `mb js` выполняет произвольный JavaScript на открытой странице, а клики и ввод в формы агент делает от имени открытого сеанса Chrome.
- Отладочный Chrome слушает локальный порт 9222: любая программа на машине может к нему подключиться.
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add cli/mini-browserОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- `mb js` выполняет произвольный JavaScript на открытой странице, а клики и ввод в формы агент делает от имени открытого сеанса Chrome.
- Отладочный Chrome слушает локальный порт 9222: любая программа на машине может к нему подключиться.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
mini-browser — консольный браузер `mb` для агентов: каждая команда делает одно действие и пишет результат в stdout, поэтому команды соединяют пайпами и через `&&`. Под капотом puppeteer-core подключается к Chrome по протоколу CDP на порту 9222. Команда `mb go <url>` открывает страницу и ждет, пока утихнет сетевая активность, `mb text` отдает видимый текст, `mb shot` сохраняет скриншот. Для работы с интерфейсом `mb snap` перечисляет интерактивные элементы текущего окна из дерева доступности: роль, имя, координаты центра и состояние. По этим координатам агент вызывает `mb click`, `mb type`, `mb drag` или `mb scroll`, а `mb fill` заполняет поля по подписи, placeholder или селектору. Отдельные команды запускают JavaScript на странице (`mb js`), записывают экран в `.webm`, `.mp4` или `.gif` и печатают дизайн-аудит: палитру, шрифты, контраст, SEO и доступность. Скилл `mini-browser` объясняет агенту, как проверить готовность (`which mb`, ответ Chrome на порту 9222) и в каком порядке вызывать команды. Скрипты `mb-start-chrome` и `mb-restart-chrome` поднимают отладочный Chrome с окном 1024×768.
Для кого. Разработчикам, которые просят Claude Code, Codex или Cursor открыть сайт, снять скриншот верстки или пройти форму без собственных скриптов на Playwright.
Подходит, если
- Агент забирает текст страницы с сайта и кладет результат в файл через пайп.
- Вы проверяете верстку: агент открывает адрес и снимает скриншот нужной ширины флагами `--width` и `--height`.
- Форма регистрации падает на втором шаге, и агент проходит ее командами `mb fill` и `mb click`, сверяясь с `mb snap`.
- Для баг-репорта нужна запись сценария в `.gif` или `.mp4`, ее делает `mb record`.
- Страница сыплет ошибками в консоль, и `mb logs` выводит их потоком.
Не подходит, если
- Нужны тесты для CI с проверками и отчетами: `mb` отдает команды, но тестового раннера в нем нет.
- Работа идет в сессии вашего аккаунта: `mb-start-chrome` создает новый профиль при каждом запуске, и входить на сайты придется заново.
- На машине нет ни Chrome, ни Chromium: скрипты запуска ищут только эти браузеры.
Пример запроса к агенту
Открой https://example.com, сними скриншот шириной 1280 пикселей и перечисли интерактивные элементы первого экрана.Ограничения
Нужны Node.js для установки через npm и Chrome или Chromium на машине. `mb snap` возвращает только элементы в текущем окне, поэтому на длинной странице прокрутите ее и вызовите команду снова. `mb text` берет первое совпадение селектора и на шумных страницах отдает пустую строку, лучше указать `main` или `#content`. На тяжелых одностраничных сайтах после `mb go` добавьте `mb wait` с селектором нужного блока.
Как отключить. Удалите пакет командой `npm uninstall -g @runablehq/mini-browser`. Скилл, поставленный через `npx skills`, уберите тем же CLI или вручную из каталога скиллов агента. Окно отладочного Chrome закройте как обычное.
Частые вопросы
Как поменять порт или путь к Chrome?
Задайте переменные окружения `CHROME_PORT` и `CHROME_BIN` перед запуском `mb-start-chrome`. Каталог профиля и файл с PID меняют `CHROME_USER_DATA_DIR` и `CHROME_PID_FILE`.
Как сделать скриншот другой ширины?
Добавьте к `mb shot` флаги `--width` и `--height`: окно на время снимка меняет размер, потом возвращается к прежнему.
Как получить вывод mb в JSON?
Добавьте `--json` к `mb snap`, `mb tab list`, `mb logs` или `mb audit`. Остальные команды печатают обычный текст.
Чем mb отличается от скриптов на Playwright?
В `mb` набор коротких команд: каждая печатает результат в stdout, сценарий собирается пайпами и `&&`. Библиотеки для скриптов и тестового раннера в нем нет.
Как записать экран?
`mb record start demo.gif` начинает запись, `mb record stop` сохраняет файл, `mb record status` показывает состояние. Частоту кадров задает `--fps`, масштаб — `--scale`.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыБыстрый CLI на Rust для автоматизации браузера агентами: снимки доступности со ссылками на элементы, MCP-сервер и скиллы
CLI, скилл и MCP для управления Chrome короткими скриптами Puppeteer, вкладки сохраняют состояние между вызовами
Управление Chrome для ИИ-агентов: локальный HTTP-сервер на Go с CLI, MCP, профилями и скиллом для Claude Code
Скилл для Amp, Claude Code и Cursor: агент управляет вашим живым Chrome с открытыми вкладками и входами в аккаунты через один переключатель отладки
Локальная платформа автоматизации браузера: MCP-сервер, CLI и скиллы, чтобы агент управлял Chrome, заполнял формы и доставал данные со страниц
CLI и MCP-сервер, через которые агент управляет вашим настоящим Chrome с сохраненными входами: 103 команды к 36 сайтам и автоматизация браузера
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| mini-browser (эта карточка) | нет | 185 | |
| agent-browser-cli | нет | 649 | подключает агента к вашему Chrome через расширение; здесь отдельный отладочный Chrome и команды в духе Unix |
| Browser Harness | нет | 19 048 | управляет вашим настоящим Chrome и сам дописывает недостающие функции; здесь фиксированный набор команд в новом профиле |
Коротко о README
README ставит скилл первым способом, глобальный CLI вторым и показывает демо-гифку с установкой и первым визитом на страницу. Отдельный раздел описывает нюансы: `type` с координатами сначала выделяет поле тройным кликом, а `fill` ищет поле по имени доступности, aria-label, placeholder, атрибутам name и id и тексту подписи. Попробовать утилиту без установки можно на сайте runable.com.