playwright-cli
playwright-cli — навык GitHub для управления браузером из командной строки и проверки веб-страниц или Playwright-тестов. Исходный SKILL.md задаёт рабочий цикл через снимок страницы и ссылки на элементы. Сессию можно открыть командой playwright-cli open, сразу перейти на адрес через open https://example.com, а для последующих переходов использовать goto. После snapshot команда возвращает refs элементов, которые затем применяются в click, dblclick, type, fill, press и других действиях. Такой способ связывает действие с конкретным состоянием страницы: сначала получают актуальный snapshot, затем используют ref нужного элемента, а после изменения при необходимости делают новый snapshot. Базовые операции покрывают обычные формы и интерфейсные проверки: type и fill вводят текст, флаг --submit отправляет заполненное поле клавишей Enter, click и dblclick вызывают действие, hover показывает состояние наведения, select выбирает option, upload передаёт документ, а check и uncheck меняют состояние checkbox. Для drag-and-drop предусмотрены drop с локальным путём или данными, для диалогов — dialog-accept и dialog-dismiss, для размеров окна — resize. eval позволяет получить title, textContent, id или другой атрибут элемента, а также выполнить выражение на странице. Навык включает отдельные команды навигации назад, вперёд и reload, клавиатурные press, keydown и keyup, мышиные move, down, up и wheel. Результат можно сохранять для проверки: screenshot делает изображение страницы или элемента, pdf сохраняет PDF, а snapshot поддерживает имя файла, ограничение глубины, refs и bounding boxes. Для нескольких сценариев доступны tab-list, tab-new, tab-close и tab-select. Состояние браузера можно сохранить и восстановить через state-save и state-load; отдельно доступны cookie-, localStorage- и sessionStorage-команды для просмотра, чтения, записи и удаления значений. Эти операции позволяют воспроизводить шаги, но требуют осторожности с выбранным профилем и данными сессии: сам навык предоставляет команды для управления состоянием, а не изолирует пользователя от их последствий. Для тестовой диагностики предусмотрены сетевые маршруты route, route-list и unroute, включая ответ с заданным статусом или телом. Команды console, requests и request помогают посмотреть сообщения и сетевые запросы; run-code выполняет код страницы или файл, tracing-start/stop собирает trace, video-start/stop записывает видео, а show --annotate открывает панель для визуальной разметки. generate-locator помогает получить locator, highlight временно подсвечивает элемент. Глобальный --raw убирает служебные секции и оставляет значение, поэтому вывод удобно передавать в jq; --json оборачивает ответы в структурированный формат. Запуск можно привязать к Chrome, Firefox, WebKit или Edge, открыть persistent-профиль, подключиться к расширению или CDP, передать config и удалить данные профиля. Практический сценарий — открыть страницу, снять snapshot, выполнить несколько действий по refs, проверить текст или запросы через eval и requests, затем сохранить screenshot или trace и закрыть браузер. Ограничение подхода следует из самой модели refs: после динамического изменения интерфейса старый ref нельзя считать постоянным, поэтому состояние нужно перечитывать. Навык также не подменяет assertions конкретного тестового проекта: он даёт CLI-инструменты навигации, взаимодействия, диагностики и сохранения артефактов, а критерии проверки задаются сценарием пользователя.
Для чего подходит
- Проверка пользовательских сценариев в браузере
- Исследование веб-страниц через snapshots
- Запуск browser automation в agentic workflows
Установка
Сначала прочитайте SKILL.md и scripts в исходном репозитории. Затем выполните команду в каталоге проекта:
npx skills add https://github.com/github/gh-aw/tree/main/.claude/skills/playwright-cli