{"id":"2ae16977-0661-4f11-ab1f-22accf78c06a","entityType":"agent","slug":"clawhub-fuzzyb33s-fuzzy-browser-automation","name":"Browser Automation","canonicalUrl":"https://www.xpersona.co/agent/clawhub-fuzzyb33s-fuzzy-browser-automation","canonicalPath":"/agent/clawhub-fuzzyb33s-fuzzy-browser-automation","generatedAt":"2026-10-11T07:41:56.197Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-11T05:16:08.986Z","emptyReason":null},"description":"Automate any web browser task with OpenClaw's built-in Playwright browser control. Use when: (1) scraping dynamic pages, (2) filling forms and submitting, (3... Skill: Browser Automation Owner: fuzzyb33s Summary: Automate any web browser task with OpenClaw's built-in Playwright browser control. Use when: (1) scraping dynamic pages, (2) filling forms and submitting, (3... Tags: latest:1.0.0 Version history: v1.0.0 | 2026-04-24T21:52:21.656Z | auto Initial release providing robust browser automation capabilities: - Automate web browser tasks such as page navigation, clicking,","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.1K downloads reported by the source. Last updated 10/11/2026.","installCommand":"clawhub skill install s171y86qx1dr1xnbf5etrq3ke984dt9a:fuzzy-browser-automation","sourceUrl":"https://clawhub.ai/fuzzyb33s/fuzzy-browser-automation","homepage":"https://clawhub.ai/fuzzyb33s/skills/fuzzy-browser-automation","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/fuzzyb33s/fuzzy-browser-automation","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/fuzzyb33s/skills/fuzzy-browser-automation","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":61,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Automate any web browser task with OpenClaw's built-in Playwright browser control. Use when: (1) scraping dynamic pages, (2) filling forms and submitting, (3..."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-11T05:16:08.986Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T05:16:08.986Z","emptyReason":null},"stars":null,"forks":null,"downloads":1149,"packageName":null,"latestVersion":"1.0.0","tractionLabel":"1.1K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T05:16:08.924Z","emptyReason":null},"lastUpdatedAt":"2026-10-11T05:16:08.986Z","lastCrawledAt":"2026-10-11T05:16:08.924Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-12T05:16:08.925Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.0","createdAt":"2026-04-24T21:52:21.656Z","changelog":"Initial release providing robust browser automation capabilities: - Automate web browser tasks such as page navigation, clicking, typing, screenshots, PDF generation, and data extraction. - Supports both sandboxed and logged-in (user) browsers, with clear instructions for selecting browser targets and profiles. - Detailed action and locator references allow fine-grained control over web interactions (click, type, hover, select, wait, evaluate, etc.). - Includes practical recipes for scraping, form filling, login, multi-tab workflows, monitoring content, and file downloads. - Simple JSON-based API for consistent and scriptable automation flows.","fileCount":3,"zipByteSize":4950}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s171y86qx1dr1xnbf5etrq3ke984dt9a:fuzzy-browser-automation","setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-fuzzyb33s-fuzzy-browser-automation/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-fuzzyb33s-fuzzy-browser-automation/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-fuzzyb33s-fuzzy-browser-automation/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-fuzzyb33s-fuzzy-browser-automation/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-fuzzyb33s-fuzzy-browser-automation/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-fuzzyb33s-fuzzy-browser-automation/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-11T07:41:56.197Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-fuzzyb33s-fuzzy-browser-automation/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-fuzzyb33s-fuzzy-browser-automation/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-fuzzyb33s-fuzzy-browser-automation/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-fuzzyb33s-fuzzy-browser-automation/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-11T05:16:08.986Z","emptyReason":null},"readme":"Skill: Browser Automation\n\nOwner: fuzzyb33s\n\nSummary: Automate any web browser task with OpenClaw's built-in Playwright browser control. Use when: (1) scraping dynamic pages, (2) filling forms and submitting, (3...\n\nTags: latest:1.0.0\n\nVersion history:\n\nv1.0.0 | 2026-04-24T21:52:21.656Z | auto\n\nInitial release providing robust browser automation capabilities:\n\n- Automate web browser tasks such as page navigation, clicking, typing, screenshots, PDF generation, and data extraction.\n- Supports both sandboxed and logged-in (user) browsers, with clear instructions for selecting browser targets and profiles.\n- Detailed action and locator references allow fine-grained control over web interactions (click, type, hover, select, wait, evaluate, etc.).\n- Includes practical recipes for scraping, form filling, login, multi-tab workflows, monitoring content, and file downloads.\n- Simple JSON-based API for consistent and scriptable automation flows.\n\nArchive index:\n\nArchive v1.0.0: 3 files, 4950 bytes\n\nFiles: skill-card.md (2337b), skill.md (9560b), _meta.json (143b)\n\nFile v1.0.0:skill.md\n\n---\nname: browser-automation\ndescription: \"Automate any web browser task with OpenClaw's built-in Playwright browser control. Use when: (1) scraping dynamic pages, (2) filling forms and submitting, (3) taking screenshots or PDFs, (4) clicking through multi-step flows, (5) monitoring changing web content, (6) automating logins. Triggers on phrases like browse this, scrape, automate web, fill form, take screenshot, click this button, browser control, open webpage.\"\n---\n\n# Browser Automation\n\nControl a Chromium browser directly from OpenClaw — navigate, click, type, snapshot, screenshot, extract data. Works with both the sandboxed OpenClaw-managed browser and your logged-in user browser (with profile=\"user\").\n\n## Browser Selection\n\n| Target | When to Use |\n|--------|-------------|\n| `sandbox` (default) | OpenClaw's clean browser — no cookies, no login state |\n| `host` | Browser running on the host machine |\n| `node` | Browser on a paired remote node |\n\n| Profile | When to Use |\n|---------|-------------|\n| (omit) | Clean OpenClaw-managed browser |\n| `profile=\"user\"` | Your own browser with active logins (requires you present) |\n\n## Core Actions\n\n### `snapshot` — Inspect the Page\n\n```json\nbrowser(action=\"snapshot\", target=\"sandbox\")\n```\n\nReturns the full page DOM as a structured tree. Use refs=\"aria\" for screen-reader-friendly selectors, refs=\"role\" (default) for role+name based refs.\n\n```json\nbrowser(\n  action=\"snapshot\",\n  target=\"sandbox\",\n  refs=\"aria\"\n)\n```\n\n### `screenshot` — Capture the Page\n\n```json\nbrowser(action=\"screenshot\", target=\"sandbox\")\n```\n\nFor full-page screenshots:\n```json\nbrowser(\n  action=\"screenshot\",\n  target=\"sandbox\",\n  fullPage=true\n)\n```\n\n### `navigate` — Open a URL\n\n```json\nbrowser(action=\"navigate\", target=\"sandbox\", url=\"https://news.ycombinator.com\")\n```\n\n### `act` — Interact with Elements\n\nThe `act` action is the workhorse. It combines `ref` (what to target) + `kind` (action type) + `request` (action details).\n\n**Click:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"aria:Submit\",\n  request={\"kind\": \"click\"}\n)\n```\n\n**Type:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"id:search-box\",\n  request={\"kind\": \"type\", \"text\": \"openclaw browser automation\"}\n)\n```\n\n**Press a key:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"id:search-box\",\n  request={\"kind\": \"press\", \"key\": \"Enter\"}\n)\n```\n\n**Hover:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"css:.dropdown-menu\",\n  request={\"kind\": \"hover\"}\n)\n```\n\n**Select from dropdown:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"id:country-select\",\n  request={\"kind\": \"select\", \"values\": [\"South Africa\"]}\n)\n```\n\n**Wait for element:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"aria:Loading\",\n  request={\"kind\": \"wait\", \"timeMs\": 5000}\n)\n```\n\n## Locator Reference (ref types)\n\n| Prefix | Example | Best For |\n|--------|---------|----------|\n| `aria:` | `aria:Submit` | Accessible labels, buttons with text |\n| `id:` | `id:email-input` | Unique element IDs |\n| `css:` | `css:.card:nth-child(2)` | Complex CSS selectors |\n| `role:` | `role:button[name=\"Submit\"]` | Semantic role selectors |\n| `text:` | `text:Get Started` | Visible text content |\n| `xpath:` | `xpath://button[@class=\"btn\"]` | Fallback for complex paths |\n\nFor stable refs across calls, prefer `refs=\"aria\"` in snapshots — these use ARIA labels that rarely change.\n\n## Recipes\n\n### Recipe 1: Scrape a Dynamic Page\n\n```json\n// 1. Navigate\nbrowser(action=\"navigate\", target=\"sandbox\", url=\"https://news.ycombinator.com/news\")\n\n// 2. Wait for content to load\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  loadState=\"networkidle\",\n  ref=\"css:.itemlist\",\n  request={\"kind\": \"wait\", \"timeMs\": 3000}\n)\n\n// 3. Snapshot to extract structured data\nbrowser(action=\"snapshot\", target=\"sandbox\", refs=\"aria\")\n```\n\n### Recipe 2: Fill and Submit a Form\n\n```json\n// 1. Navigate to form\nbrowser(action=\"navigate\", target=\"sandbox\", url=\"https://example.com/contact\")\n\n// 2. Fill inputs\nbrowser(action=\"act\", target=\"sandbox\", ref=\"id:name\",    request={\"kind\": \"fill\", \"text\": \"Alice Smith\"})\nbrowser(action=\"act\", target=\"sandbox\", ref=\"id:email\",   request={\"kind\": \"fill\", \"text\": \"alice@example.com\"})\nbrowser(action=\"act\", target=\"sandbox\", ref=\"id:message\", request={\"kind\": \"fill\", \"text\": \"Hi, I'd like to know more...\"})\n\n// 3. Click submit\nbrowser(action=\"act\", target=\"sandbox\", ref=\"aria:Submit\", request={\"kind\": \"click\"})\n\n// 4. Wait for confirmation\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"aria:Thank you\",\n  request={\"kind\": \"wait\", \"timeMs\": 2000}\n)\n```\n\n### Recipe 3: Login to a Service (User Browser)\n\n```json\n// Requires you to be present at the machine — uses your actual browser session\nbrowser(action=\"navigate\", target=\"host\", url=\"https://github.com/login\")\n\nbrowser(action=\"act\", target=\"host\", ref=\"id:login_field\", request={\"kind\": \"fill\", \"text\": \"myuser\"})\nbrowser(action=\"act\", target=\"host\", ref=\"id:password\",    request={\"kind\": \"fill\", \"text\": \"mypassword\"})\nbrowser(action=\"act\", target=\"host\", ref=\"css:[type=submit]\", request={\"kind\": \"click\"})\n```\n\n### Recipe 4: Monitor Price / Availability\n\n```json\n// Navigate and wait for price to update\nbrowser(action=\"navigate\", target=\"sandbox\", url=\"https://example.com/product/123\")\n\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"css:.price\",\n  request={\"kind\": \"wait\", \"timeMs\": 10000}\n)\n\n// Capture screenshot\nbrowser(action=\"screenshot\", target=\"sandbox\")\n\n// Evaluate for price text\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  request={\n    \"kind\": \"evaluate\",\n    \"fn\": \"() => document.querySelector('.price').innerText\"\n  }\n)\n```\n\n### Recipe 5: Multi-Tab Workflow\n\n```json\n// Open new tab\nbrowser(action=\"navigate\", target=\"sandbox\", url=\"https://mail.google.com\")\n\n// Switch tabs\nbrowser(action=\"act\", target=\"sandbox\", request={\"kind\": \"press\", \"key\": \"Control+Tab\"})\n\n// Close current tab\nbrowser(action=\"act\", target=\"sandbox\", request={\"kind\": \"press\", \"key\": \"Control+W\"})\n```\n\n### Recipe 6: Scroll and Load Lazy Content\n\n```json\n// Scroll by a pixel amount\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  request={\n    \"kind\": \"evaluate\",\n    \"fn\": \"() => window.scrollBy(0, 800)\"\n  }\n)\n\n// Scroll to bottom (infinite scroll pages)\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  request={\n    \"kind\": \"evaluate\",\n    \"fn\": \"() => window.scrollTo(0, document.body.scrollHeight)\"\n  }\n)\n```\n\n### Recipe 7: Extract Table Data\n\n```json\nbrowser(action=\"navigate\", target=\"sandbox\", url=\"https://example.com/sales-report\")\n\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"css:table\",\n  request={\"kind\": \"wait\", \"timeMs\": 2000}\n)\n\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  request={\n    \"kind\": \"evaluate\",\n    \"fn\": \"() => Array.from(document.querySelectorAll('table tr')).map(row => Array.from(row.querySelectorAll('td')).map(cell => cell.innerText))\"\n  }\n)\n```\n\n### Recipe 8: Download a File\n\n```json\nbrowser(action=\"navigate\", target=\"sandbox\", url=\"https://example.com/export.csv\")\n\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  request={\n    \"kind\": \"evaluate\",\n    \"fn\": \"() => { const link = document.querySelector('a[href$=\\\".csv\\\"]'); return link ? link.href : null; }\"\n  }\n)\n```\n\n## Action Reference\n\n| Action | What It Does |\n|--------|-------------|\n| `snapshot` | Get structured page DOM |\n| `screenshot` | Capture page as PNG/JPEG |\n| `navigate` | Open a URL |\n| `act` | Click, type, press, hover, select, wait, evaluate |\n| `pdf` | Generate PDF of the page |\n| `console` | Read browser console logs |\n| `open` | Open a new tab |\n| `close` | Close current tab |\n\n## act `kind` Reference\n\n| Kind | Parameters |\n|------|-----------|\n| `click` | — |\n| `type` | `text` |\n| `fill` | `text` |\n| `press` | `key` (e.g. \"Enter\", \"Escape\", \"Control+Tab\") |\n| `hover` | — |\n| `select` | `values` (array) |\n| `wait` | `timeMs` |\n| `evaluate` | `fn` (JavaScript string) |\n| `drag` | `startRef`, `endRef` |\n| `resize` | `width`, `height` |\n| `close` | — |\n\n## Anti-Patterns\n\n- **Don't click before the page loads** — always `navigate` then wait for `loadState=\"networkidle\"` or an explicit element wait\n- **Don't use hard pixel waits** — prefer waiting for a specific element or `networkidle` state\n- **Don't scrape without rate limiting** — add `timeMs` waits between actions to avoid IP blocks\n- **Don't use `profile=\"user\"` for automated workflows** — it's meant for attended use; automated flows should use the sandbox browser\n- **Don't use xpath unless nothing else works** — xpath selectors break easily when the page changes\n\n## Troubleshooting\n\n| Symptom | Fix |\n|---------|-----|\n| \"Target closed\" error | Browser timed out — navigate again |\n| Element not found | Page may be JS-rendered — add `loadState=\"networkidle\"` or explicit wait |\n| Click missed the button | Use `ref=\"aria:Button Text\"` instead of CSS — more robust |\n| Stale element reference | Element was replaced by a DOM update — re-snapshot and retry |\n| Form submits twice | Wait for navigation after submit before continuing |\n| Screenshot is blank | Page still loading — add `loadState=\"networkidle\"` |\n| `profile=\"user\"` not working | The logged-in browser must already be running; start it manually first |\n\n## See Also\n\n- `webhook-automation` skill — combining browser-extracted data with outgoing webhooks\n- `rss-aggregator` skill — using browser scraping as a fallback when feeds aren't available\n- `cron-scheduler` skill — scheduling browser-based monitoring tasks\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn78v9vcsgcmj5bahnfp6qevy980y405\",\n  \"slug\": \"fuzzy-browser-automation\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1777067541656\n}\n\nFile v1.0.0:skill-card.md\n\n## Description:\n\nAutomate browser tasks with OpenClaw's Playwright browser control for navigation, interaction, screenshots, PDFs, data extraction, form workflows, monitoring, downloads, and attended login automation.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[fuzzyb33s](https://clawhub.ai/user/fuzzyb33s)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and agents use this skill to control a Chromium browser for dynamic scraping, form filling, screenshots, PDF generation, multi-step web flows, content monitoring, downloads, and attended login workflows.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill can automate actions in a real logged-in browser session, including account-changing clicks and credential entry.\n\nMitigation: Use the sandbox browser for routine automation and allow host or user-profile browser access only for attended, explicitly approved tasks.\n\nRisk: Arbitrary page JavaScript evaluation can expose page data or perform unintended actions in the browser context.\n\nMitigation: Review each evaluate function before execution and restrict it to narrow read-only extraction unless a trusted operator approves otherwise.\n\nRisk: Form submission and login flows can affect external accounts or services.\n\nMitigation: Require human presence and explicit confirmation before login automation, credential entry, purchases, submissions, or other state-changing actions.\n\n## Reference(s):\n\n- [Source artifact: skill.md](artifact/skill.md)\n- [ClawHub skill page](https://clawhub.ai/fuzzyb33s/skills/fuzzy-browser-automation)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Code, Shell commands, Configuration, Guidance]\n\n**Output Format:** [Markdown guidance with JSON-style browser tool examples]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May produce browser action sequences, locator guidance, screenshots, PDFs, extracted page data, and troubleshooting recommendations.]\n\n## Skill Version(s):\n\n1.0.0 (source: release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.","readmeExcerpt":"Skill: Browser Automation Owner: fuzzyb33s Summary: Automate any web browser task with OpenClaw's built-in Playwright browser control. Use when: (1) scraping dynamic pages, (2) filling forms and submitting, (3... Tags: latest:1.0.0 Version history: v1.0.0 | 2026-04-24T21:52:21.656Z | auto Initial release providing robust browser automation capabilities: - Automate web browser tasks such as page navigation, clicking, ","codeSnippets":[],"executableExamples":[{"language":"json","snippet":"browser(action=\"snapshot\", target=\"sandbox\")"},{"language":"json","snippet":"browser(\n  action=\"snapshot\",\n  target=\"sandbox\",\n  refs=\"aria\"\n)"},{"language":"json","snippet":"browser(action=\"screenshot\", target=\"sandbox\")"},{"language":"json","snippet":"browser(\n  action=\"screenshot\",\n  target=\"sandbox\",\n  fullPage=true\n)"},{"language":"json","snippet":"browser(action=\"navigate\", target=\"sandbox\", url=\"https://news.ycombinator.com\")"},{"language":"json","snippet":"browser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"aria:Submit\",\n  request={\"kind\": \"click\"}\n)"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"skill.md","content":"---\nname: browser-automation\ndescription: \"Automate any web browser task with OpenClaw's built-in Playwright browser control. Use when: (1) scraping dynamic pages, (2) filling forms and submitting, (3) taking screenshots or PDFs, (4) clicking through multi-step flows, (5) monitoring changing web content, (6) automating logins. Triggers on phrases like browse this, scrape, automate web, fill form, take screenshot, click this button, browser control, open webpage.\"\n---\n\n# Browser Automation\n\nControl a Chromium browser directly from OpenClaw — navigate, click, type, snapshot, screenshot, extract data. Works with both the sandboxed OpenClaw-managed browser and your logged-in user browser (with profile=\"user\").\n\n## Browser Selection\n\n| Target | When to Use |\n|--------|-------------|\n| `sandbox` (default) | OpenClaw's clean browser — no cookies, no login state |\n| `host` | Browser running on the host machine |\n| `node` | Browser on a paired remote node |\n\n| Profile | When to Use |\n|---------|-------------|\n| (omit) | Clean OpenClaw-managed browser |\n| `profile=\"user\"` | Your own browser with active logins (requires you present) |\n\n## Core Actions\n\n### `snapshot` — Inspect the Page\n\n```json\nbrowser(action=\"snapshot\", target=\"sandbox\")\n```\n\nReturns the full page DOM as a structured tree. Use refs=\"aria\" for screen-reader-friendly selectors, refs=\"role\" (default) for role+name based refs.\n\n```json\nbrowser(\n  action=\"snapshot\",\n  target=\"sandbox\",\n  refs=\"aria\"\n)\n```\n\n### `screenshot` — Capture the Page\n\n```json\nbrowser(action=\"screenshot\", target=\"sandbox\")\n```\n\nFor full-page screenshots:\n```json\nbrowser(\n  action=\"screenshot\",\n  target=\"sandbox\",\n  fullPage=true\n)\n```\n\n### `navigate` — Open a URL\n\n```json\nbrowser(action=\"navigate\", target=\"sandbox\", url=\"https://news.ycombinator.com\")\n```\n\n### `act` — Interact with Elements\n\nThe `act` action is the workhorse. It combines `ref` (what to target) + `kind` (action type) + `request` (action details).\n\n**Click:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"aria:Submit\",\n  request={\"kind\": \"click\"}\n)\n```\n\n**Type:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"id:search-box\",\n  request={\"kind\": \"type\", \"text\": \"openclaw browser automation\"}\n)\n```\n\n**Press a key:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"id:search-box\",\n  request={\"kind\": \"press\", \"key\": \"Enter\"}\n)\n```\n\n**Hover:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"css:.dropdown-menu\",\n  request={\"kind\": \"hover\"}\n)\n```\n\n**Select from dropdown:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"id:country-select\",\n  request={\"kind\": \"select\", \"values\": [\"South Africa\"]}\n)\n```\n\n**Wait for element:**\n```json\nbrowser(\n  action=\"act\",\n  target=\"sandbox\",\n  ref=\"aria:Loading\",\n  request={\"kind\": \"wait\", \"timeMs\": 5000}\n)\n```\n\n## Locator Reference (ref types)\n\n| Prefix | Example | Best For |\n|--------|---------|----------|\n| `aria:` | `aria:Submit` | Accessible labels, buttons with te"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn78v9vcsgcmj5bahnfp6qevy980y405\",\n  \"slug\": \"fuzzy-browser-automation\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1777067541656\n}"},{"path":"skill-card.md","content":"## Description:\n\nAutomate browser tasks with OpenClaw's Playwright browser control for navigation, interaction, screenshots, PDFs, data extraction, form workflows, monitoring, downloads, and attended login automation.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[fuzzyb33s](https://clawhub.ai/user/fuzzyb33s)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and agents use this skill to control a Chromium browser for dynamic scraping, form filling, screenshots, PDF generation, multi-step web flows, content monitoring, downloads, and attended login workflows.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill can automate actions in a real logged-in browser session, including account-changing clicks and credential entry.\n\nMitigation: Use the sandbox browser for routine automation and allow host or user-profile browser access only for attended, explicitly approved tasks.\n\nRisk: Arbitrary page JavaScript evaluation can expose page data or perform unintended actions in the browser context.\n\nMitigation: Review each evaluate function before execution and restrict it to narrow read-only extraction unless a trusted operator approves otherwise.\n\nRisk: Form submission and login flows can affect external accounts or services.\n\nMitigation: Require human presence and explicit confirmation before login automation, credential entry, purchases, submissions, or other state-changing actions.\n\n## Reference(s):\n\n- [Source artifact: skill.md](artifact/skill.md)\n- [ClawHub skill page](https://clawhub.ai/fuzzyb33s/skills/fuzzy-browser-automation)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Code, Shell commands, Configuration, Guidance]\n\n**Output Format:** [Markdown guidance with JSON-style browser tool examples]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May produce browser action sequences, locator guidance, screenshots, PDFs, extracted page data, and troubleshooting recommendations.]\n\n## Skill Version(s):\n\n1.0.0 (source: release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"Automate any web browser task with OpenClaw's built-in Playwright browser control. Use when: (1) scraping dynamic pages, (2) filling forms and submitting, (3... Skill: Browser Automation Owner: fuzzyb33s Summary: Automate any web browser task with OpenClaw's built-in Playwright browser control. Use when: (1) scraping dynamic pages, (2) filling forms and submitting, (3... Tags: latest:1.0.0 Version history: v1.0.0 | 2026-04-24T21:52:21.656Z | auto Initial release providing robust browser automation capabilities: - Automate web browser tasks such as page navigation, clicking,","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":985,"uniquenessScore":55,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-11T05:16:08.986Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-11T05:16:08.986Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-11T07:41:56.197Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}