playwright-browser — скилл
Скилл дает Claude Code фоновый браузер: скриншоты на трех экранах, проверка фронтенда, сравнение до и после, сценарии с входом.
- 50 ★ репозитория
- Последний коммит
Расширенный доступ
Почему такой уровень
- Скилл запускает браузер, ходит по сайтам и хранит сессии с состоянием входа в `~/.claude/playwright/`.
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add skills/playwright-browserОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Скилл запускает браузер, ходит по сайтам и хранит сессии с состоянием входа в `~/.claude/playwright/`.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Скилл запускает браузер в фоне и не трогает ваш открытый. Вы просите обычными словами: сделать скриншот главной на мобильном, найти, почему кнопка «Отправить» не работает, проверить страницу оплаты. Claude открывает страницу, кликает, делает снимки и возвращает файлы PNG, JSON и Markdown. Возможности: скриншоты для desktop, tablet и mobile целой страницы или одного элемента, пакетом по всем страницам меню; проверка фронтенда с ошибками консоли, неудачными запросами 4xx и 5xx, битыми картинками и ссылками, переполнением на мобильном, доступностью через axe и показателями LCP и CLS; сравнение с эталоном и картинка различий красным; пользовательские сценарии; превращение сценария в тест Playwright Test для CI. Среда выполнения лежит в папке скилла и общая для проектов.
Для кого. Фронтенд-разработчикам и тестировщикам, которым нужен воспроизводимый фоновый браузер для снимков, проверок и сценариев, не открывая окон.
Подходит, если
- Клиент жалуется, что сайт на iPhone едет вбок, и нужен слишком широкий элемент
- Перед релизом страницу оплаты проверяют на ошибки консоли, запросы и доступность
- После правки CSS шапки сравнивают вид страницы до и после
- Снимки каждой страницы админки нужны в одну папку
- Сценарий входа и перехода по меню оформляют как автотест Playwright
Не подходит, если
- Нужна ваша открытая вкладка с входом: для этого лучше Claude in Chrome
- Хочется наблюдать работу браузера глазами: скилл работает в фоне
- Нужен не Claude Code: скилл рассчитан на него
Пример запроса к агенту
Сделай скриншоты главной на localhost:5173 для мобильного и десктопного размера и найди элемент, который вызывает горизонтальную прокрутку.Ограничения
Нужны Claude Code, Node.js 18 или новее и около 150 МБ диска под Chromium. При первом использовании скилл сам ставит среду. Для сайтов с входом вы входите вручную один раз, и скилл переиспользует сохраненную сессию в `~/.claude/playwright/`, поэтому не держите эти файлы на общих машинах. Пароль не сохраняется. В Windows Git Bash меняет аргументы, начинающиеся с `/`, скилл сам исправляет собственные параметры. Для удаления кеша браузера выполните `npx playwright uninstall --all` перед удалением папки.
Как отключить. Удалите папку скилла `~/.claude/skills/playwright-browser` и каталог `~/.claude/playwright/` с сессиями. Кеш браузера очистите командой `npx playwright uninstall --all` до удаления папки.
Частые вопросы
Как установить скилл?
Склонируйте в `~/.claude/skills/playwright-browser` для всех проектов или в `<проект>/.claude/skills/playwright-browser` для одного. Папка должна называться `playwright-browser`.
Чем он отличается от Claude in Chrome?
Claude in Chrome работает в вашей открытой вкладке с вашим входом, и вы видите работу. Этот скилл работает в фоне, не трогает ваш браузер и подходит для повторяемых проверок и тестов.
Как работать с сайтом за входом?
Один раз войдите сами командой вида `node "$PW" login --session admin --url ... --until-url dashboard`. Скилл сохранит сессию после перехода на нужный адрес и будет использовать ее дальше. Пароль он не хранит.
Какие проверки входят в аудит?
Ошибки консоли, неудачные запросы 4xx и 5xx, битые картинки и ссылки, переполнение на мобильном с указанием элемента, доступность через axe и показатели LCP и CLS. Отчет пишется в `report.md`.
Как обновить скилл?
Выполните `git pull` в папке скилла. Если изменился `package.json`, запустите `node scripts/setup.mjs` повторно.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
СкиллыСкилл, с которым агент пишет и запускает скрипты Playwright: тесты страниц, формы, скриншоты, проверки ссылок
Playwright CLI
playwright-cli
Официальный CLI Playwright со скиллом для агентов: управление браузером короткими командами без тяжелых MCP-схем
show-your-work
claude-show-your-work
Плагин показывает в терминале Claude Code картинки и видео, записывает проверки Playwright и сравнивает версии до и после
Скилл Claude Code для работы в веб-клиенте 1С через Playwright MCP: сеансы, навигация, справочники, документы и тестовые данные
MCP-сервер на Playwright от сообщества: браузерная автоматизация, скриншоты, эмуляция устройств и генерация тестового кода
57 справочных файлов по тестам Playwright на TypeScript: агент берет из них нужный по задаче, от локаторов до шардирования в CI
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| playwright-browser (эта карточка) | нет | 50 | |
| Playwright Skill | нет | 3 287 | скилл для написания и запуска скриптов Playwright; этот добавляет готовые команды снимков, аудита и сравнения |
| Playwright CLI | да | 15 133 | официальный CLI Playwright для управления браузером короткими командами; здесь отчеты и фоновые сессии |
Коротко о README
README на английском и традиционном китайском показывает возможности в таблице, примеры запросов, сравнение с Claude in Chrome, установку, команды запуска, обновление и удаление, структуру репозитория.
Бейдж для README
Исходный SKILL.md
--- name: playwright-browser description: Headless, reproducible browser automation with Playwright for any project — screenshots of web pages or local dev servers (desktop/tablet/mobile, full page or one element, single page or every page/menu of an app in one batch), frontend audits (console errors, failed requests, broken images/links, responsive overflow, axe accessibility, LCP/CLS performance), before/after visual comparison, scripted E2E flows (log in, click, fill, page through, assert), and logged-in pages via saved sessions. Use this whenever the user wants to screenshot or visually check a site, find frontend bugs, see how a page looks on mobile, compare the UI before and after a CSS/code change, reproduce a bug from an issue or ticket and capture evidence images for it, verify a UI flow works, or run/write a browser test — even if they never say "Playwright" or "browser". If Claude in Chrome could also do the job, briefly ask which to use (with a recommendation) instead of silently picking. --- # Playwright Browser Background browser automation that runs locally and produces files (PNG, JSON, Markdown) the user can keep or reuse. The runtime lives in this skill directory and is shared by every project; per-project scripts, sessions and baselines are kept separate. Respond in the user's language. **Paths.** `<skill-dir>` means the directory that contains this SKILL.md — Claude Code reports it as the skill's base directory when the skill loads. It may be `~/.claude/skills/playwright-browser`, a project's `.claude/skills/…`, or a plugin folder, so never assume a fixed location. Call the CLI as `node "<skill-dir>/scripts/pw.mjs" <command> …` with the real absolute path substituted; that form works in zsh, bash, PowerShell and cmd (forward slashes are fine on Windows). Below, `pw` is shorthand for exactly that. ## 0. Choose the tool first This skill does not replace Claude in Chrome. They overlap, so decide deliberately: | Prefer **Claude in Chrome** | Prefer **Playwright (this skill)** | |---|---| | Needs the user's real, already-logged-in browser (SSO, 2FA, extensions) | Runs in the background without touching the user's browser | | User wants to watch or step in while it operates | Must be reproducible (same script, same result) | | One quick look at a page | Several viewports / pages in one batch | | Interacting with something open in a tab right now | Tests, audits, reports, before/after visual diff | If the request clearly fits one column, just proceed. If both fit (e.g. "take a screenshot of our site"), ask one short question naming both options and recommending one with a reason — e.g. "Use Playwright (background, can do desktop+mobile in one go) or Chrome (your logged-in tab)? I'd suggest Playwright." Don't ask again for follow-up tasks in the same thread unless the situation changes. ## Match the output to the request Do what was asked, at the size it was asked. "Screenshot the pricing page" → take the shot, check it looks right, hand it over; no audit, no improvement list. "Why does the save button do nothing?" → reproduce and diagnose that button, fix it if you're in the project; don't append unrelated findings from a full audit. Only run `audit` and give a prioritized list of recommendations when the user asks for a review, a health check, or "find problems". If you happen to notice something serious outside the request (a crash, a security issue), mention it in one line — nothing more. ## 1. Make sure the runtime exists ```bash node "<skill-dir>/scripts/pw.mjs" clean # cheap check; prints JSON ``` If it returns an `error` with a `hint` about setup, the runtime isn't installed on this machine yet (normal right after someone shares or clones the skill). Tell the user it's a one-time download (~150 MB for Chromium, needs Node.js 18+), then run `node "<skill-dir>/scripts/setup.mjs"`. For other engines: `node "<skill-dir>/scripts/setup.mjs" firefox webkit`. Setup installs npm packages into the skill directory and browsers into Playwright's shared per-user cache, so it never touches the user's projects. ## 2. Commands Every command prints one compact JSON object on stdout (progress goes to stderr, so use `2>/dev/null` when parsing); long lists are trimmed to 20 items plus a `truncated` count, and `audit` keeps the full data in `report.json`. Output files go to a fresh temp run dir (`$TMPDIR/claude-playwright/<timestamp>_<cmd>/`) unless `--out <dir>` is given — `--out` dirs are yours and are never auto-deleted. ```bash # pw = node "<skill-dir>/scripts/pw.mjs" pw inspect --url <url> [--click "<visible text>" ...] [--shot] pw shot --url <url> [--viewport desktop,mobile|all|1366x768] [--full] [--selector "<css>"] [--name <label>]