ИИ агенты управляют Chrome через accessibility API
Google Docs, Trello, CRM, почта: всё залогинено в вашем Chrome, но ни один ИИ-агент не мог туда попасть без отдельного профиля и ручной авторизации, пока не появился открытый мост между расширением браузера и терминалом.
Открытый проект «Chrome Bridge» впервые даёт любому ИИ-агенту (Claude Code, Cursor, Codex, локальные модели) доступ к вашему настоящему браузеру с действующими сессиями, без облака, подписок и привязки к конкретному вендору.
До сих пор подключить агента к Chrome можно было тремя путями, и каждый упирался в стену. Playwright и Selenium запускают чистый профиль: ни одной сессии, сразу логин и капча. Режим удалённой отладки (remote debugging) требует перезапуска браузера с флагом и ломает обычную работу. Вендорские расширения Anthropic и OpenAI решают задачу, но только внутри своей экосистемы и за подписку.
Автор проекта «Chrome Bridge» Иван Сиропкин предложил другой путь: расширение для Chrome плюс CLI (интерфейс командной строки) на Node.js без единой внешней зависимости. Код открыт под лицензией MIT, данные не покидают машину. Проект опубликован на GitHub и доступен в Chrome Web Store.
Как работает мост между агентом и браузером?
Архитектура минимальна: расширение (один файл background.js) соединяется по WebSocket с локальным Node-сервером, а тот отдаёт команды через CLI. Облака нет, аккаунтов нет.
Ключевая идея: вместо скриншотов агент получает дерево доступности (accessibility tree), компактное текстовое описание всех элементов страницы со ссылками вида @eN. Это и есть то, как мультимодальность влияет на развитие ИИ-агентов на практике: вместо «разглядывания» картинки модель читает структуру и кликает по конкретному элементу.
Замер автора на реальной странице: дерево доступности занимает 2,4 КБ, скриншот той же страницы, 16 КБ. Экономия контекстного окна на порядок при каждом шаге.
CLI работает из обычного терминала, поэтому подключается любой агент, умеющий запускать shell-команды: Claude Code, Cursor, Codex, а также открытые модели (GLM, Kimi, Qwen, DeepSeek и локальные).
Что понадобится
- Chrome (обычный, с вашими залогиненными сессиями)
- Node.js (версия 18 и выше)
- Расширение Chrome Bridge из Chrome Web Store или из репозитория на GitHub
- Терминал и любой ИИ-агент, умеющий вызывать shell-команды
- Время на настройку: 5 минут до первой команды
Пошаговая инструкция
-
Установите расширение. Откройте Chrome Web Store, найдите «Chrome Bridge» или перейдите по прямой ссылке из репозитория. Нажмите «Установить». Расширение запросит разрешения
<all_urls>иdebugger, это необходимо для доступа к дереву страниц и доверенных кликов. -
Клонируйте репозиторий и запустите сервер.
git clone https://github.com/siropkin/chrome-bridge.git
cd chrome-bridge
node server.mjs
Сервер стартует на 127.0.0.1, принимает только локальные подключения.
- Сделайте первый снимок страницы (получите дерево доступности вместо скриншота).
node cli.mjs snap habr.com
В ответ придёт текстовое дерево, где каждый элемент помечен ссылкой @eN:
table "Hacker News new | past | comments | ask | show | jobs | submit" @e1
link "Hacker News" @e5
link "new" @e6
link "submit" @e12
link "login" @e13
- Выполните действие: клик, ввод текста или скриншот.
node cli.mjs click habr.com @e14
node cli.mjs fill habr.com @e12 "поисковый запрос"
node cli.mjs shot habr.com out.png --max 800
Команда fill вводит текст в поле, shot делает скриншот, когда визуальный контекст всё же нужен.
- Включите режим доверенных событий, если приложение игнорирует синтетические клики.
node cli.mjs click habr.com @e14 --trusted
Флаг --trusted отправляет клик через DevTools Input с меткой isTrusted=true. Страница при этом видит подключённый отладчик, никакого скрытного режима в проекте намеренно нет.
-
Передайте CLI вашему агенту. В настройках Claude Code, Cursor или другого агента укажите, что он может вызывать
node cli.mjsкак shell-команду. Агент будет делатьsnap, читать дерево, решать, куда кликнуть, и вызыватьclickилиfill. -
Используйте журнал и реплей. Сервер ведёт кольцевой журнал всех команд со статусами
ok/fail.
node cli.mjs history --batch out
Команда экспортирует журнал как скрипт: упавшие строки закомментированы с текстом ошибки, секретные значения (ввод текста, пароли) вырезаны. Реплей не идемпотентен (повторный клик сделается ещё раз), хвост скрипта правится вручную.
Что агент получает после каждого действия?
После выполнения команды агент получает не тишину, а один из четырёх вердиктов:
- succeeded: действие выполнено
- needs_human: стена логина или капча, нужен человек
- blocked: сработал лимит запросов
- uncertain: событие ушло, но ничего визуально не изменилось, стоит проверить иначе (например, скриншотом)
На Excalidraw (онлайн-доска для рисования) автор тестировал клик в канвас. Обычный клик вернул uncertain, скриншот подтвердил, что ничего не случилось. Клик с флагом --trusted и двойным нажатием создал текстовый элемент, который тут же появился в дереве доступности. Агент увидел результат без повторного скриншота.
- Забыли запустить сервер перед командой CLI. Расширение без сервера не отвечает, агент получит таймаут.
- Используете
--trustedна сайтах с антибот-защитой. Команды через CDP (Chrome DevTools Protocol) детектируются: антибот-система увидит подключённый отладчик и может заблокировать сессию. - Пытаетесь автоматизировать canvas-приложения одним деревом. Канвас-элементы в дереве доступности почти не видны, там придётся работать скриншотами (
shot). - Запускаете реплей без проверки. Журнал не идемпотентен: если половина команд уже прошла, повторный запуск выполнит их заново. Проверяйте скрипт перед повтором.
- Доверяете машине, к которой есть чужой доступ. Сервер слушает
127.0.0.1, но любой локальный процесс может к нему подключиться. Инструмент рассчитан на вашу личную машину.
Что это даёт автору Дзена, маркетологу и предпринимателю?
Автору Дзена. Агент может открыть вашу залогиненную панель Дзена, проверить статистику, собрать заголовки конкурентов из поисковой выдачи, заполнить черновик, и всё это без ручного копирования между вкладками. Дерево доступности экономит токены: один шаг стоит в разы меньше, чем при работе через скриншоты.
Маркетологу. Рутинные сценарии вроде проверки рекламных кабинетов, сбора данных из CRM или мониторинга цен автоматизируются через один CLI. Не нужно покупать подписку на вендорский агент и не нужно передавать логины в облако.
Предпринимателю в РФ и СНГ. Проект не зависит от API закрытых моделей: работает с любым агентом, включая локальные модели на своём железе. Это практическая альтернатива решениям Claude и OpenAI для тех, кому важно держать данные внутри контура. Код открыт, можно провести аудит перед использованием.
Я вижу в «Chrome Bridge» ровно ту штуку, которую давно ждали практики: не «ещё один MCP-сервер», а минимальный мост, который не заставляет менять привычки. Экономия контекста на порядок за счёт дерева доступности вместо скриншотов, это именно то, как мультимодальность влияет на развитие ИИ-агентов в сторону эффективности, а не прожорливости. Но честная оговорка: расширение просит максимальные разрешения (<all_urls> и debugger). Код открыт и читается за вечер, один background.js и манифест. Прежде чем пускать агента в рабочий браузер с банковскими сессиями, прочитайте этот файл сами. Доверяй, но проверяй, особенно когда речь о вашем залогиненном Chrome.
Кнопка «⏏» в расширении возвращает контроль над браузером одним нажатием, и это, пожалуй, самая важная деталь: автоматизация, из которой можно выйти за секунду, единственная автоматизация, которой стоит доверять.
Научите ИИ-агента работать на вас
Разберитесь, как подключить агента к своим задачам, на практических гайдах dzen.guru
Смотреть гайды
Основатель dzen.guru. Эксперт по монетизации и продвижению на Дзен. Автор курса «Старт на Дзен 2026».
Читайте также

pgvector превращает PostgreSQL в векторную базу: 5 команд вернулись с Pinecone и сэкономили месяцы
PostgreSQL 17 июня 2025 года получил обновлённое расширение pgvector, и разработчики RAG-систем (систем, где ИИ ищет ответ по вашим документам) массово…
Junie от JetBrains: аналог Cursor для России с оплатой в рублях
Российская компания JetBrains выпустила Junie, встроенного ИИ-агента для среды разработки, который работает прямо внутри редактора кода и решает задачи от…

Генерация ТЗ с помощью ИИ: как собрать требования из всех каналов за 1–3 дня
Составление технического задания вручную, когда требования разбросаны по почте, мессенджерам, комментариям в Jira и файлам, отнимает у системного аналитика…
Комментарии