hwatu MCP

Безголовый браузер на WebKit проверяет страницы одним вызовом за 35 мс, сравнивает вид по пикселям и передает сессию человеку.

  • 118 ★ репозитория
  • Последний коммит
MCP-сервер

Расширенный доступ

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

  • Агент открывает страницы, выполняет в них JavaScript и вводит данные в формы: доступ к сессиям и локальным сайтам.
  • Установщик запускается через `curl | bash`.
Все причины и проверки

hongnoul/hwatu

Установка

Ручная установка

curl -fsSL https://raw.githubusercontent.com/hongnoul/hwatu/main/scripts/install.sh | bash

Первый вариант установки из README ставит один статический бинарник. Нужен также пакет `webkitgtk-6.0`. В Arch есть `yay -S hwatu`.

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

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

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Агент открывает страницы, выполняет в них JavaScript и вводит данные в формы: доступ к сессиям и локальным сайтам.
  • Установщик запускается через `curl | bash`.

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

Что делает

Демон держит прогретый движок WebKit, а агент обращается к нему по MCP, через CLI или строкой JSON в Unix-сокет. Одна команда `hwatu check` открывает страницу, выполняет выражение, делает снимок и возвращает консоль и время загрузки. `hwatu diff` дает процент совпадения двух страниц с тепловой картой, а `motion` описывает анимации числами: длительность, кривую, скорость. Окна по умолчанию невидимы и не забирают фокус. Когда проверке нужен человек, например при CAPTCHA, `hwatu focus <id>` превращает ту же сессию в обычное окно. Функция `challenge` только обнаруживает защиту и ждет, решать ее она не умеет.

Для кого. Разработчики на Linux, у которых агент правит интерфейс и должен сам проверять результат в браузере без Chromium и Node.

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

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

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

  • Нужна проверка в Chromium: hwatu рисует страницы на WebKit, для движковых ошибок держите отдельный набор Playwright.
  • Вы работаете на macOS или Windows: поддерживается только Linux.
  • Нужны Widevine или passkeys: WebKitGTK их не поддерживает.

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

Открой localhost:3000 через hwatu, проверь, что после сохранения имени на /settings появляется сообщение об успехе, перезагрузи страницу и сообщи об ошибках консоли.

MCP

Транспорт
stdio
Авторизация
не нужна

Ограничения

Только Linux, нужен пакет `webkitgtk-6.0` из дистрибутива. Установщик запускается как `curl ... | bash`: перед запуском прочитайте скрипт `scripts/install.sh`. Цифры автора (35 мс на проверку, девятикратный отрыв от Playwright) получены на его замерах и описаны в `docs/benchmarks.md`. Подключения мало: без инструкции в `AGENTS.md`, `CLAUDE.md` или правилах Cursor агент может не вызывать проверки. Widevine и passkeys в WebKitGTK нет. Все ключевые сценарии рассчитаны на Linux.

Как отключить. Остановите демон, удалите запись `hwatu` из конфигурации MCP и выполните `hwatu setup --undo` для отката настройки агента.

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

Как подключить hwatu к Claude Code?

Выполните `hwatu setup --client claude --scope project`. Предварительный просмотр дает флаг `--dry-run`, откат делает `--undo`. Вручную добавляется запись `{"command": "hwatu", "args": ["mcp"]}`.

Чем hwatu отличается от Playwright?

Он возвращает измерения вместо сырых снимков: процент совпадения, числа анимаций, результат проверки `expect`. Проверка страницы занимает один вызов вместо пяти.

Решает ли hwatu CAPTCHA?

Нет. `challenge` только находит защиту и ждет. Решает человек в окне, которое открывает `hwatu focus <id>`.

На каких системах работает hwatu?

Только на Linux с WebKitGTK 6. На Arch ставится через `yay -S hwatu`, из исходников собирается командой `cargo build --release`.

Что нужно, чтобы агент пользовался hwatu?

Подключения мало. Добавьте в `AGENTS.md`, `CLAUDE.md` или правила Cursor инструкцию проверять результат после изменений интерфейса через `expect`.

Обсуждение

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

MCP-серверы
Нужен VPN

MCP-сервер, который запускает несколько браузерных агентов и проверяет сайт на битые ссылки, ошибки интерфейса и доступность

MCP-серверРасширенный доступ835Звезды репозитория

Интерактивный HTTP-клиент позволяет проверить запрос из браузера, изменить его параметры и изучить ответ в терминале.

CLIРасширенный доступ10,7 тыс.Звезды репозитория
Официальный

kogiQA MCP дает агенту браузер, который находит элементы страницы без селекторов, для отладки веб-приложений и e2e-тестов

MCP-серверРасширенный доступ88Звезды репозитория

Скилл проверки кода агента в настоящем браузере: читает ваши изменения, составляет план теста и прогоняет его через Playwright с вашими куки

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

Один бинарник для автоматизации браузера агентом: CLI со скиллами browser и check, MCP-сервер и клиенты для JS, Python и Java

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

websocat подключается к WebSocket из терминала, передает текстовые и бинарные сообщения и помогает проверять сетевые сервисы.

CLIРасширенный доступ8,7 тыс.Звезды репозитория

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

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

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
hwatu (эта карточка)нетне нужна118
Playwright MCPдане нужна39 261управляет браузером Chromium и отдает снимки; hwatu на WebKit возвращает измерения, процент совпадения и числа анимаций
Chrome DevTools MCPдане нужна54 879подключается к вашему Chrome с его вкладками; hwatu держит собственный невидимый движок и не занимает фокус

Коротко о README

Цикл проверки в README устроен так: эталон и правки сравниваются командой `diff`, правки повторяются до нужного процента. Автор довел копию лендинга Stripe с 85,1 до 98,8 процента совпадения.

Бейдж для README

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

Foxx AIhwatu
Foxx AI

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