Morfiade
Русский
Попробовать

CDP, протокол Chrome DevTools

CDP (Chrome DevTools Protocol) — набор команд, которыми программа управляет браузером: открыть адрес, нажать на кнопку, ввести текст, выполнить скрипт на странице, снять снимок экрана. Тем же языком пользуются встроенные инструменты разработчика, Playwright и Puppeteer.

Команды выглядят понятно: Page.navigate, Runtime.evaluate, Page.captureScreenshot.

Как программа подключается: три пути

ПутьКак это выглядитПодвох
Портбраузер запускается с --remote-debugging-port, программа стучится на негопорт открыт, и к нему может подключиться не только хозяин
Пайпканал между программой и браузером, без сетевого портаснаружи не подключиться — этим он и лучше
Через расширениекоманды идёт отдавать расширение изнутри браузераотладочных ключей в командной строке нет вовсе

Разница не косметическая. Открытый отладочный порт — это полный доступ к браузеру: через него читаются все куки профиля целиком, включая недоступные скриптам на странице. Именно поэтому Chrome 136 запретил отладку на папке профиля по умолчанию.

Замер, который стоит знать заранее

Вход в аккаунт Google не проходит, если у браузера есть отладочный канал — любой. Мы проверяли отдельно: и порт, и пайп, и даже когда канал просто открыт, а команд по нему не отправляется. Результат один — войти не удаётся.

Это не лечится подменой отпечатка: проверяется не то, как браузер выглядит, а сам факт, что им можно управлять снаружи.

Следствие практическое: автоматизация и вход в Google — выбор, а не сочетание. Профиль, которым управляют по отладочному каналу, для входа в Google не годится; профиль, в который нужно войти под Google, автоматизируют другим способом — через расширение изнутри.

Зачем это обычному человеку

Напрямую — незачем. Косвенно — затем, что на CDP держатся скрипты, автоматизация и управление браузером из ИИ-агента. А ещё затем, что открытый отладочный порт на вашей машине — настоящая дыра: если программа предлагает «просто включить отладку» на основном браузере, это повод спросить зачем.