Browser Harness — скилл

Скилл и CLI от Browser Use: агент управляет вашим настоящим Chrome через DevTools Protocol, под вашей учетной записью, и сам дописывает недостающие функции

  • 18 586 ★ репозитория
  • Последний коммит
  • MIT
Скилл

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

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

  • Агент управляет вашим настоящим Chrome и видит все открытые вкладки, входы и куки, а не один сайт
  • Через CDP он выполняет произвольный код на страницах, нажимает кнопки, вводит текст и загружает файлы под вашей учетной записью
  • Включенные записи сохраняют на диск снимки экрана и трассы действий с содержимым страниц
Все причины и проверки

browser-use/browser-harness

Установка

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

npx skillfoxx add skills/browser-harness

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

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

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

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

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

  • Агент управляет вашим настоящим Chrome и видит все открытые вкладки, входы и куки, а не один сайт
  • Через CDP он выполняет произвольный код на страницах, нажимает кнопки, вводит текст и загружает файлы под вашей учетной записью
  • Включенные записи сохраняют на диск снимки экрана и трассы действий с содержимым страниц

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

Что делает

Browser Harness позволяет Claude Code, Codex или Cursor управлять браузером Chrome, в котором вы уже вошли в свои сервисы. Команда `browser-harness` подключается к работающему Chrome по протоколу DevTools (CDP) и принимает короткие скрипты на Python через стандартный ввод. В них заранее подключены функции для вкладок, кликов, ввода, прокрутки, снимков экрана, загрузки файлов и произвольного кода на странице. Если нужной функции нет, агент пишет ее сам в файл `agent-workspace/agent_helpers.py`, а каталог `src/browser_harness/` остается защищенным от правок. Рабочий порядок описан в `SKILL.md`. Простые публичные страницы агент берет через `curl`, а браузер включает, когда нужны клики, ваш сеанс, отрисовка JavaScript или обход защиты от ботов. Элементы он ищет по дереву доступности, а не по снимкам экрана, держит по одной вкладке на задачу и закрывает созданные им лишние вкладки. На экране входа агент останавливается и спрашивает вас: пароли и многофакторные коды вводите вы. При первом подключении Chrome просит разрешить удаленную отладку на странице `chrome://inspect/#remote-debugging`; на macOS помогает команда `browser-harness mac-approve`. Команда `browser-harness-mcp` показывает те же функции как MCP-инструменты с префиксом `browser_`: открыть вкладку, кликнуть, ввести текст, сделать снимок, выполнить код, загрузить файл, начать и закончить запись. Для параллельной работы в проект встроено подключение к облачным браузерам Browser Use, но им нужен ключ и оплата.

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

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

  • Агенту нужно сделать что-то в сервисе, куда вы уже вошли, и отдельный вход для робота не настроен
  • Страница отрисовывается JavaScript, и обычный запрос возвращает пустую оболочку
  • Нужно скачать набор файлов или записей из личного кабинета, где нет программного интерфейса
  • Нужна запись действий агента, чтобы потом разобрать, что он делал на странице: ее включает команда `browser-harness recordings enable`
  • Хочется подключить управление браузером к Claude Code, Cursor или другому клиенту как MCP-сервер

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

  • Нужно прочитать публичную страницу или обратиться к API: скилл сам советует `curl`, браузер здесь избыточен
  • В Chrome открыты сервисы с платежами, почтой или рабочими кабинетами, куда агенту нельзя: он получает доступ ко всему браузеру, а не к одному сайту
  • На машине нет Python 3.11 или новее: инструмент написан на Python
  • Нужна изоляция нескольких параллельных задач: в локальном Chrome вкладки общие, для изоляции автор предлагает облачные браузеры Browser Use
  • Агент должен работать на удаленной машине без экрана: без облачных браузеров потребуется локальный Chrome с разрешенной удаленной отладкой

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

Открой в моем Chrome личный кабинет магазина, найди последние десять заказов и сохрани их номера и суммы в таблицу

Ограничения

Проект на стадии `alpha`: в манифесте пакета версия 0.1.13 и пометка `Development Status :: 3 - Alpha`. Нужен Python 3.11 или новее, установщик из `install.md` берет `uv` и Python 3.12.

Локальное подключение работает только с Chrome или Chromium, где вы разрешили удаленную отладку. На macOS для каждого нового подключения Chrome показывает окно с кнопкой разрешения, а чтобы агент нажал ее сам, терминалу нужен доступ в разделе «Универсальный доступ» системных настроек. Один локальный демон держит одну текущую вкладку, поэтому два агента, переключающих вкладки одновременно, могут перепутать их.

Записи действий по умолчанию выключены. После включения командой `browser-harness recordings enable` на диск сохраняются снимки экрана и трассы действий, и в них может оказаться содержимое страниц. Описания сайтов в `agent-workspace/domain-skills` (151 файл Markdown) подключаются только с переменной `BH_DOMAIN_SKILLS=1`.

Облачные браузеры Browser Use требуют ключа `BROWSER_USE_API_KEY` или входа командой `browser-harness auth login` и тарифицируются, пока их не остановят. Лицензия MIT.

Как отключить. Удалите программу командой `uv tool uninstall browser-harness` и файл скилла `browser-harness` из папки скиллов агента. В Chrome снимите отметку разрешения на странице `chrome://inspect/#remote-debugging`. Записи выключаются командой `browser-harness recordings disable`, MCP-сервер убирается командой `claude mcp remove browser-harness`. Если запускали облачный браузер, остановите его вызовом `stop_remote_daemon(name)`.

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

Чем это отличается от запуска отдельного браузера для агента?

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

Что делает агент на странице входа?

Останавливается и спрашивает вас. Исключение одно: если Chrome уже вошел через единый вход, агент использует этот вход автоматически. Он не вводит пароли и многофакторные коды и не подтверждает согласия.

Какие инструменты дает MCP-сервер?

Двадцать три инструмента с префиксом `browser_`, среди них `browser_new_tab`, `browser_click`, `browser_type`, `browser_screenshot`, `browser_js`, `browser_cdp`, `browser_upload_file` и `browser_http_get`. Запуск через `uvx --from 'browser-harness[mcp]' browser-harness-mcp`.

Что такое описания сайтов?

Каталог `agent-workspace/domain-skills` с заметками по конкретным сайтам, например по Amazon, Booking и arXiv. Они выключены, пока не задана переменная `BH_DOMAIN_SKILLS=1`; после этого агент читает файлы нужного сайта перед работой.

Нужно ли платить?

Локальная работа бесплатна: пакет под лицензией MIT. Платными становятся только облачные браузеры Browser Use, которые нужны для параллельных задач и обхода защиты от ботов.

Обсуждение

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

Скиллы
Официальный

Скилл cdp: агент управляет вашим Chrome напрямую через протокол DevTools, 652 типизированных метода без готовых click и goto

СкиллШирокий доступ493Звезды репозитория
Выбор редакции

CLI, скилл и Python-библиотека для управления браузером: агент кликает, заполняет формы и читает страницы через CDP

CLIШирокий доступ119 тыс.Звезды репозитория
Официальный

Локальная платформа автоматизации браузера: MCP-сервер, CLI и скиллы, чтобы агент управлял Chrome, заполнял формы и доставал данные со страниц

MCP-серверШирокий доступ1,4 тыс.Звезды репозитория
Выбор редакции

Отдельный браузер для агентов со скиллом и MCP: Claude Code и Codex работают в ваших аккаунтах, каждый сеанс записывается и доступен для просмотра

СкиллШирокий доступ14,1 тыс.Звезды репозитория

Скилл для Amp, Claude Code и Cursor: агент управляет вашим живым Chrome с открытыми вкладками и входами в аккаунты через один переключатель отладки

СкиллШирокий доступ3,3 тыс.Звезды репозитория
Официальный

Быстрый CLI на Rust для автоматизации браузера агентами: снимки доступности со ссылками на элементы, MCP-сервер и скиллы

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

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

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

ЗаписьОфициальныйЗвезды репозиторияГлавное отличие
Browser Harness (эта запись)нет18 586
bb-browserнет6 249CLI и MCP-сервер, через которые агент управляет вашим настоящим Chrome с сохраненными входами
dev-browserнет6 694CLI, скилл и MCP для управления Chrome короткими скриптами Puppeteer, вкладки сохраняют состояние между запусками
BrowserOS neoнет14 072отдельный браузер для агентов со скиллом и MCP

Коротко о README

В репозитории лежат `SKILL.md` с рабочим порядком агента, `install.md` с быстрой установкой и ручной проверкой подключения, документ `docs/MCP.md` и каталог `interaction-skills` с приемами для типовых затруднений. Пакет Python с ядром находится в `src/browser_harness/`, а пользовательские функции агента лежат отдельно в `agent-workspace`, там же заметки по сайтам. В корне лежат файлы `AGENTS.md` и `CLAUDE.md` для разработки проекта, манифест плагина Claude Code и правила участия в проекте.

Бейдж для README

Исходный SKILL.md

---
name: browser-harness
description: "Control a real browser via CDP: clicking, typing, navigation, logged-in sessions, JS-rendered or bot-protected pages. Not for plain HTTP fetches of public content - use curl for those."
---

# browser-harness

Direct browser control via CDP. For task-specific edits, use `agent-workspace/agent_helpers.py`. For setup, install, or connection problems, read https://github.com/browser-use/browser-harness/blob/main/install.md.

## When Not to Use

A basic fetch of public information needs no browser. If a plain HTTP request can read it — a public page, an API, docs — use `curl` or your fetch tool, and leave the browser alone. Use browser-harness when the task needs interaction (click, type, navigate), the user's logged-in session, JS rendering, or a bot-protected page. If a direct fetch fails or returns a shell page, then escalate to the browser.

Domain skills are off by default. Set `BH_DOMAIN_SKILLS=1` to enable them; see the bottom section.

## Usage

```bash
browser-harness <<'PY'
print(page_info())
PY
```

- Invoke as `browser-harness`. Use heredocs for multi-line commands.
- Helpers are pre-imported. `run.py` calls `ensure_daemon()` before `exec`.
- First navigation for a task is `new_tab(url)`, not `goto_url(url)`.

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

Foxx AIBrowser Harness
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.