44.1K ·GitHub
Что это такое?
agent-browser — это CLI-инструмент для автоматизации браузера, созданный специально для ИИ-агентов. Он поставляется как быстрый нативный бинарный файл на Rust и управляет Chrome для скриптового или агентного взаимодействия с веб-сайтами.
Это библиотека, которую я импортирую, или самостоятельный CLI/MCP-инструмент?
Это самостоятельный бинарный файл командной строки (а не библиотека для кода), который вы запускаете напрямую или подключаете как MCP-инструмент для агентов. Он управляет запущенным Chrome через фоновый демон.
Как мне установить и начать пользоваться?
Установите нативный бинарный файл глобально (рекомендуется), через Homebrew на macOS, через Cargo или соберите из исходников. Затем выполните его команду install, чтобы загрузить Chrome for Testing, и только после этого используйте CLI-команды вроде click, fill или navigate.
Нужно ли сначала установить Chrome, Node или Rust?
Нужен Chrome: его можно автоматически скачать командой 'agent-browser install', или инструмент найдет уже установленный Chrome, Brave, Playwright или Puppeteer. Node.js 24+/pnpm 11+ и Rust нужны только в том случае, если собирать из исходников.
Есть ли подводные камни с ожиданием или проверками доступности?
Условие ожидания networkidle может не сработать на страницах, которые используют SSE, WebSockets, опрос (polling) или long-polling. Аудиты доступности недоступны в сессиях Safari или iOS WebDriver и работают только в Chrome на основе CDP.
Одинаково ли это работает на macOS, Windows и Linux?
Да, работает на macOS, Windows и Linux, но на Linux нужно установить дополнительные системные библиотеки, чтобы Chrome запускался корректно.
Что такое WebMCP и зачем это здесь?
WebMCP — экспериментальная функция, включенная по умолчанию. Она позволяет agent-browser находить инструменты, которые предоставляет сама страница, и автоматически показывать их в ответах CLI/MCP, чтобы агент мог вызывать встроенные действия страницы.
Можно ли проверять доступность страницы?
Да, в инструмент встроен движок axe-core для полных аудитов доступности без подключения к сети. Он возвращает нарушения с уровнем влияния, идентификатором правила, селекторами и рекомендациями по исправлению, либо структурированный JSON для автоматизации.
Есть ли что-то специально для React-приложений?
Да, запуск с --enable react-devtools встраивает хук React DevTools, чтобы можно было изучать состояние компонентов React. Метрики Web Vitals работают для любого приложения, независимо от фреймворка.
Можно ли выполнить несколько действий в браузере одним вызовом?
Да, пакетное выполнение позволяет передать несколько команд как аргументы в кавычках или как JSON через stdin. Это избавляет от накладных расходов на запуск процесса для каждой команды в многошаговых сценариях.
What are similar projects?
bb-browser, oc, playwright, agent-desktop, XActions, gemini-notebook-mcp-cli, Agent-Reach, playwright-cli
Which topics is it in?
chrome, accessibility, web-scraping, homebrew, browser-automation, model-context-protocol, cli-tool, testing, command-line, ai-agent, rust, react