Agent skill

Playwright Automation

by ArabelaTso in ArabelaTso/Skills-4-SE

Browser automation via Playwright for web testing, screenshots, form filling, scraping, and verification.

Apache-2.0Auto-check passedTesting & QA

Install Playwright Automation

skills CLI
$ npx skills add ArabelaTso/Skills-4-SE --skill playwright-automation -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ArabelaTso/Skills-4-SE playwright-automation --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ArabelaTso/Skills-4-SE.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/playwright-automation .claude/skills/playwright-automation && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
playwright-automation
GitHub stars
253
Token cost
~930 tokens
SKILL.md length
213 words
Files
1
Skills in repo
170
Repo updated
First seen
Licence
Apache-2.0

At a glance

Browser automation via Playwright for web testing, screenshots, form filling, scraping, and verification.

  • Works in 5 steps: Write a script to perform one action → Run it and observe the output → Evaluate — did it work? What's the… → …
  • Tasks require navigating websites
  • SKILL.md covers When to Use This Skill, Approach Selection, Core Workflow and Key Patterns, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Playwright Automation is an agent skill from ArabelaTso/Skills-4-SE. Browser automation via Playwright for web testing, screenshots, form filling, scraping, and verification. Use when tasks require navigating websites, interacting with web pages, or testing web applications.

Its SKILL.md is about 930 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Testing & QA, covering Browser testing, Web scraping and Browser automation. It works with Playwright. The repository describes itself as: A curated list of 180+ useful Claude Skills for Software Engineering and resources for customizing AI for SE workflows. The licence is Apache-2.0.

When your agent uses it

  • Tasks require navigating websites
  • Interacting with web pages
  • Testing web applications

Example prompts

  • “/playwright-automation”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Write a script to perform one action
  2. Run it and observe the output
  3. Evaluate — did it work? What's the current state?
  4. Decide — task complete or need another script?
  5. Repeat until done

What it can do on your machine

Read from SKILL.md and the folder at commit 4f38503. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are typescript).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Playwright Automation loads about 930 tokens when it runs. Until then it costs about 57 tokens; SKILL.md has 213 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~57
When it runs · the whole SKILL.md, loaded when a task matches
~930

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from ArabelaTso/Skills-4-SE at commit 4f38503, republished under its Apache-2.0 licence (© ArabelaTso). 213 words, ~930 tokens.

Download SKILL.mdSave it as .claude/skills/playwright-automation/SKILL.md (or your agent's skills folder).
name
playwright-automation
description
Browser automation via Playwright for web testing, screenshots, form filling, scraping, and verification. Use when tasks require navigating websites, interacting with web pages, or testing web applications.

Playwright Automation

Browser automation skill using Playwright for web testing, verification, data extraction, and interactive workflows. Maintains persistent page state across script executions.

When to Use This Skill

  • Testing web applications (navigation, forms, assertions)
  • Taking screenshots for visual verification
  • Scraping web content or extracting data
  • Automating browser workflows (login, form submission)
  • Verifying UI changes after code modifications

Approach Selection

  • Local/source-available sites: Read source code first to write selectors directly
  • Unknown page layouts: Use accessibility snapshots to discover elements
  • Visual feedback: Take screenshots to see what the user sees

Core Workflow

Write small, focused scripts — each does ONE thing:

typescript
import { chromium } from "playwright";

const browser = await chromium.launch();
const page = await browser.newPage();

// Navigate
await page.goto("https://example.com");

// Wait for page to be ready
await page.waitForLoadState("networkidle");

// Interact
await page.fill('input[name="email"]', "user@example.com");
await page.click('button[type="submit"]');

// Verify
await page.waitForURL("**/dashboard");
const title = await page.title();
console.log({ title, url: page.url() });

// Screenshot
await page.screenshot({ path: "screenshot.png" });

await browser.close();

Key Patterns

Element Discovery with Accessibility Snapshots
typescript
// Get accessibility tree to find interactive elements
const snapshot = await page.accessibility.snapshot();
console.log(JSON.stringify(snapshot, null, 2));
Waiting Strategies
typescript
await page.waitForLoadState("networkidle");     // Network idle
await page.waitForSelector(".results");          // Specific element
await page.waitForURL("**/success");             // URL pattern
await page.waitForFunction(() => window.ready);  // JS condition
Form Interaction
typescript
await page.fill('input[name="email"]', "user@example.com");
await page.fill('input[name="password"]', "secret");
await page.click('button[type="submit"]');
await page.waitForNavigation();
Screenshots and PDFs
typescript
await page.screenshot({ path: "page.png" });
await page.screenshot({ path: "full.png", fullPage: true });
await page.pdf({ path: "output.pdf" });
Network Interception
typescript
await page.route("**/api/**", (route) => {
  route.fulfill({ status: 200, body: JSON.stringify({ mock: true }) });
});
Device Emulation
typescript
const { devices } = require("playwright");
const iPhone = devices["iPhone 14"];
const context = await browser.newContext({ ...iPhone });

Workflow Loop

For complex tasks, follow this pattern:

  1. Write a script to perform one action
  2. Run it and observe the output
  3. Evaluate — did it work? What's the current state?
  4. Decide — task complete or need another script?
  5. Repeat until done

Tips

  • Use networkidle wait state after navigation for reliable page loads
  • Prefer semantic selectors (role, text, label) over CSS selectors
  • Take screenshots at key steps for debugging
  • Use page.evaluate() for browser-context JavaScript (plain JS only, no TypeScript)
  • For scraping large datasets, intercept network requests rather than scrolling DOM

Inspired by: oh-my-opencode dev-browser skill

© ArabelaTso, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/playwright-automation of ArabelaTso/Skills-4-SE.

Open the folder on GitHubat commit 4f38503

Compare with similar skills

Playwright Automation next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Playwright Automation compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Playwright Automation this skillArabelaTso/Skills-4-SE253—~930Automated safety check: PassApache-2.0
Browsing With Playwrightaiskillstore/marketplace430—~1.2kAutomated safety check: PassNone
Browser Useaiskillstore/marketplace430—~1.1kAutomated safety check: PassNone
C Browserdaxaur/openpaw174—~383Automated safety check: PassMIT
Agenttinyfish-io/tinyfish-cookbook2.2k—~1.1kAutomated safety check: PassMIT
Playwright SkillAratKruglik/claude-laravel15510 repos~3.5kAutomated safety check: PassNone

Similar skills

  • Browsing With Playwright

    aiskillstore/marketplace

    Browser automation using Playwright MCP. An agent skill from aiskillstore/marketplace.

    430 GitHub stars~1.2k tokensUpdated today
    Testing & QAAuto-check passed
  • Browser Use

    aiskillstore/marketplace

    Browser automation using Playwright MCP. An agent skill from aiskillstore/marketplace.

    430 GitHub stars~1.1k tokensUpdated today
    Productivity & AutomationAuto-check passed
  • C Browser

    daxaur/openpaw

    Headless browser automation — navigate pages, click elements, fill forms, take screenshots, scrape content using agent-browser or playwright-cli.

    174 GitHub stars~383 tokensUpdated 4 mo ago
    Productivity & AutomationAuto-check passed
  • Agent

    tinyfish-io/tinyfish-cookbook

    Default browser automation agent — click, fill forms, navigate, log in, and extract structured data from any website using a natural-language goal, or run the same task across multiple sites in…

    2.2k GitHub stars~1.1k tokensUpdated yesterday
    Testing & QAAuto-check passed
  • Playwright Skill

    AratKruglik/claude-laravel

    Complete browser automation with Playwright. An agent skill from AratKruglik/claude-laravel.

    155 GitHub starsUsed in 10 repos~3.5k tokens
    Testing & QAAuto-check passed
  • Anti Detect Browser

    antibrow/anti-detect-browser-skills

    Drive Chromium from standard Playwright APIs with a real-device fingerprint applied in the kernel, one persistent isolated profile per identity, and a per-profile proxy whose exit IP sets timezone…

    17 GitHub stars~9.8k tokensUpdated 1 mo ago
    Testing & QAAuto-check: warnings

More from ArabelaTso/Skills-4-SE

All 170 skills in this repo
  • Framework Migration Assistant

    ArabelaTso/Skills-4-SE

    Automatically migrate Python web applications between frameworks (Flask → FastAPI, Django → FastAPI).

    253 GitHub stars~1.9k tokensUpdated 1 mo ago
    Auto-check passed
  • Metamorphic Test Generator

    ArabelaTso/Skills-4-SE

    Generate test cases using metamorphic testing by applying transformations based on metamorphic properties.

    253 GitHub stars~798 tokensUpdated 1 mo ago
    Auto-check passed
  • Reproduction Trace Instrumenter

    ArabelaTso/Skills-4-SE

    Instruments programs to capture execution traces specifically for reproducing reported bugs, enabling consistent replay and diagnosis of failures.

    253 GitHub stars~2.4k tokensUpdated 1 mo ago
    Auto-check passed
  • Spring Mvc To Boot Migrator

    ArabelaTso/Skills-4-SE

    Automatically migrate Spring MVC applications to Spring Boot.

    253 GitHub stars~2.2k tokensUpdated 1 mo ago
    Auto-check passed
  • State Snapshot Instrumenter

    ArabelaTso/Skills-4-SE

    Instrument programs (Python, C/C++, Java) to capture snapshots of key program states at runtime, including variables, memory, and call stacks.

    253 GitHub stars~2.2k tokensUpdated 1 mo ago
    Auto-check passed

Works with

Questions about Playwright Automation

What does Playwright Automation do?

Browser automation via Playwright for web testing, screenshots, form filling, scraping, and verification. Playwright Automation is an agent skill from ArabelaTso/Skills-4-SE. Browser automation via Playwright for web testing, screenshots, form filling, scraping, and verification.

When should I use Playwright Automation?

Playwright Automation fits situations like: tasks require navigating websites; interacting with web pages; testing web applications.

How do I install Playwright Automation in Claude Code?

Run `npx skills add ArabelaTso/Skills-4-SE --skill playwright-automation -a claude-code`. Or copy the skill folder (skills/playwright-automation in ArabelaTso/Skills-4-SE) into .claude/skills/playwright-automation in your project. Claude Code loads it when a task matches its description.

How do I install Playwright Automation in Codex?

Run `npx skills add ArabelaTso/Skills-4-SE --skill playwright-automation -a codex`. Or copy the skill folder (skills/playwright-automation in ArabelaTso/Skills-4-SE) into .agents/skills/playwright-automation in your project. Codex loads it when a task matches its description.

Can I use Playwright Automation in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ArabelaTso/Skills-4-SE --skill playwright-automation -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/playwright-automation, .gemini/skills/playwright-automation, .github/skills/playwright-automation and .opencode/skills/playwright-automation in your project.

What does Playwright Automation need to run?

SKILL.md names no scripts, command-line tools or credentials: Playwright Automation is instructions for the agent only.

Does Playwright Automation access the network?

SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.

Is Playwright Automation safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Playwright Automation use?

Playwright Automation is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Playwright Automation use?

About 930 tokens (SKILL.md is roughly 3.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Playwright Automation?

Skills that share tags, products or a category with Playwright Automation: Browsing With Playwright (aiskillstore/marketplace, 430 stars), Browser Use (aiskillstore/marketplace, 430 stars), C Browser (daxaur/openpaw, 174 stars) and Agent (tinyfish-io/tinyfish-cookbook, 2.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Playwright Automation?

ArabelaTso (a GitHub user) maintains it in ArabelaTso/Skills-4-SE, which has 253 GitHub stars. The repository holds 170 skills in this directory. The repository was last updated on August 21, 2026.

Source: ArabelaTso/Skills-4-SE on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.