Browser Automation
SkillWeb & browsingBrowser automation powers web testing, scraping, and AI agent interactions. The difference between a flaky script and a reliable system comes down to understanding selectors, waiting strategies, and anti-detection patterns. This skill covers Playwright (recommended) and Puppeteer, with patterns for
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Browser Automation skill
What this skill tells your AI
The instructions your AI receives, as published by agent-skills-hub/agent-skills-hub in skills/browser-automation/SKILL.md and read by ahel’s review.
Use a real browser only when rendered behavior matters: UI state, navigation, forms, auth, screenshots, recordings, accessibility, visual checks, or end-to-end flows.
Keep automation temporary unless the user asks for permanent tests. Do not use a browser for plain HTTP API checks or pure logic tests.
Runtime Selection
- Prefer a platform built-in browser tool when available in the active tool
list. See
references/platform-browser-tools.md. - Use the project's configured browser runner when it exists.
- Use
playwright-skillonly as the bundled fallback/runtime reference. - If no runtime is available, report blocked with the missing tool/package.
Use the cheapest runtime that proves the claim.
Workflow
- Define the goal: explore, validate, screenshot, record, debug, or test.
- Read needed local context: start scripts, browser config, routes, fixtures, seed/reset docs, and auth notes.
- Detect or start the dev server. Reuse a reachable server.
- Use deterministic data: seeded users, fixed dates, stable IDs, reset state, and mocked external services.
- Drive with semantic targets first: role, label, text, test id; CSS last.
- Capture artifacts needed to support the result: screenshot, trace, console errors, network failures, accessibility snapshot, manifest, or report.
- Prefer screenshot/manifest evidence for visual checks in headless harnesses.
- Report pass, fail, or blocked. Do not imply success if the check did not run.
Playwright Fallback
Use Playwright when no built-in browser tool exists, the project already uses Playwright, or a repeatable script/test is the best artifact.
If using the bundled helper, load playwright-skill for exact setup and
invocation. Use its turnkey screenshot helpers before writing custom batch
scripts:
node scripts/screenshot-url.js --url <url> --selector <ready-selector> --json
node scripts/screenshot-sequence.js --url-template '<url/{n}>' --from 1 --to 10 --json
Do not write generated files into the helper directory or project unless creating permanent tests was requested.
Script and Test Rules
- Write temporary scripts to
/tmp/playwright-<name>.jsor/tmp/playwright-<name>.spec.tswhen using the Playwright fallback. - Never use fixed sleep delays.
- Wait or assert on visible state, URL, selector, network state, or accessibility snapshot.
- Prefer headed mode only when the platform exposes a usable visible browser. In Pi or other headless harnesses, use headless screenshots plus manifests as visual evidence.
- Keep credentials, production data, and destructive actions out of browser automation unless the user explicitly approves.
Failure Handling
- No target URL: detect a local dev server; ask if none is found.
- Multiple reachable servers: ask which target to use.
- Missing auth or fixture data: ask for safe test credentials or report blocked.
- Runtime unavailable: report the missing tool/package and required enablement.
- Fix or re-run only when fixing is in scope.
- Failure after two scoped attempts: save evidence, quote the failing line or UI state, and stop.
Output Contract
## Browser Automation Result
Target: <page, feature, or flow>
Runtime: <built-in browser | project runner | playwright-skill | blocked>
Actions: <commands or browser action summary>
Result: <pass | fail | blocked>
Evidence: <screenshot/trace/output path or key observation>
Next Fix: <only when failing or blocked>
Signals
- GitHub stars
- 96
- Forks
- 35
- Last commit
- Aug 2026
Others that do the same job
Advanced
- Catalog kind
- skill
- Gateway key
browser-automation- Source
- github.com/agent-skills-hub/agent-skills-hub