browser-automation

Automates secure Playwright/Puppeteer browsing with URL allowlists and Zod schema validation for extraction and testing workflows.

3|1|Updated Dec 3, 2025
One-click install
npx skills add https://github.com/Probably-Group/Dev-AID --skill browser-automation-probably-group
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: browser-automation
Source: https://github.com/Probably-Group/Dev-AID/tree/main/.dev-aid/skills/expert/browser-automation
Command: npx skills add https://github.com/Probably-Group/Dev-AID --skill browser-automation-probably-group

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires playwright, puppeteer, zod, and includes references (resource) components.

What problem does it solve?

Browser automation saves time when you need to test web flows, scrape page data, or perform end-to-end interactions that are too repetitive or fragile to do manually.

Core Features & Use Cases

  • Secure browser automation patterns: Launch Playwright/Puppeteer-style sessions with hardened navigation, restricted permissions, and cleanup-safe execution.
  • Anti-hallucination and validation guardrails: Enforce URL allowlists, selector validation, schema-validated extraction (e.g., with Zod), and redirect checks after navigation.
  • Security-focused scraping and testing: Prevent common issues like XSS via unsafe page.evaluate usage, credential exposure in screenshots, SSRF-style navigation, and sensitive data leakage.

Use Case: Extract structured product details from multiple allowed-domain pages while validating the extracted fields and rejecting unsafe navigation or unsafe selector inputs.

Quick Start

Use the browser-automation skill to securely navigate to an allowlisted URL, extract structured page data using validated selectors and Zod schemas, and ensure browser sessions are closed even when errors occur.

Frequently Asked Questions about browser-automation

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent XSS and SSRF vulnerabilities during web scraping with Playwright?

Secure web scraping prevents XSS and SSRF by avoiding arbitrary code execution via page.evaluate and enforcing URL allowlists to restrict navigation. Sensitive data is also redacted from outputs to prevent unintended leakage.

How do I validate extracted web scraping data using a schema?

You validate extracted web scraping data by applying schema validation with Zod to the fields extracted from allowed-domain pages. This ensures the structured data conforms to expected types and formats before processing.

Can I use Puppeteer for end-to-end testing without exposing credentials in screenshots?

Yes, Puppeteer end-to-end testing supports credential-safe login flows that actively redact sensitive data from screenshots. The automation enforces restricted permissions and deterministic cleanup to ensure sessions close safely even when errors occur.

What is the best way to handle timeouts and retries in browser automation scripts?

Browser automation scripts handle timeouts and retries by implementing hardened navigation flows with configured retry limits and execution timeouts. This ensures deterministic cleanup of browser sessions and prevents indefinite hanging during page interactions.

Does browser automation support rate-limited scraping across multiple pages?

Yes, browser automation supports rate-limited scraping by controlling navigation and extraction flows across multiple allowed-domain pages. It validates selectors and enforces redirect checks to maintain structured and safe data extraction.

Why does page.evaluate pose a security risk in Puppeteer and Playwright?

page.evaluate poses a security risk because it allows arbitrary code execution within the page context, opening the door to XSS attacks. Secure automation patterns reject unsafe page.evaluate usage and enforce strict selector validation instead.