2.8k★by tezatezaz
clawbrowser – OpenClaw Skill
clawbrowser is an OpenClaw Skills integration for coding workflows. Use when the agent needs to drive a browser through the Microsoft Playwright CLI (`playwright-cli`) for navigation, form interactions, screenshots, recordings, data extraction, session management, or debugging without loading a full MCP browser. It trains the agent on the CLI commands, snapshots, and session/config habits that make Playwright CLI reliable for scripted browsing.
Skill Snapshot
| name | clawbrowser |
| description | Use when the agent needs to drive a browser through the Microsoft Playwright CLI (`playwright-cli`) for navigation, form interactions, screenshots, recordings, data extraction, session management, or debugging without loading a full MCP browser. It trains the agent on the CLI commands, snapshots, and session/config habits that make Playwright CLI reliable for scripted browsing. OpenClaw Skills integration. |
| owner | tezatezaz |
| repository | tezatezaz/clawbrowser |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @tezatezaz/clawbrowser |
| last updated | Feb 7, 2026 |
Maintainer

name: clawbrowser
description: Use when the agent needs to drive a browser through the Microsoft Playwright CLI (playwright-cli) for navigation, form interactions, screenshots, recordings, data extraction, session management, or debugging without loading a full MCP browser. It trains the agent on the CLI commands, snapshots, and session/config habits that make Playwright CLI reliable for scripted browsing.
allowed-tools: Bash(playwright-cli:*)
Clawbrowser – browser control via Playwright CLI
Setup & orientation
- Install the CLI and verify availability:
The CLI is headless by default; addnpm install -g @playwright/cli@latest playwright-cli --help--headedtoopenor setbrowser.launchOptions.headlesstofalseinplaywright-cli.jsonwhen you need to see the UI. - The CLI reads
playwright-cli.jsonby default or whatever file you pass with--config. Use the config to tune browser name, launch/context options, viewport, timeouts, output directories, and recording settings without changing every command. - Keep
playwright-cli --helpterminal-accessible; the script self-documents the latest commands and options so you can refresh your memory before trying a new action.
Core interaction loop
- Start with
playwright-cli open <url>to load the page (add--session=nameif you want isolation up front). - Run
playwright-cli snapshotto generate element refs (e1,e2, …) before any interaction. Always re-snapshot after DOM changes or navigation to avoid stale refs. - Use refs for actions:
click,dblclick,hover,drag,check,uncheck,select,fill,type,upload,eval- Append
[button],[value], or JS snippets as needed (e.g.,playwright-cli click e4 right).
- Capture output evidence with
screenshot [ref],pdf,console [level], ornetworkto prove the flow or inspect errors. - Example flow:
playwright-cli open https://example.com/login playwright-cli snapshot playwright-cli fill e1 "user@example.com" playwright-cli fill e2 "supersecret" playwright-cli click e3 playwright-cli snapshot playwright-cli screenshot
Sessions & persistence
- Use
--session=<name>to keep cookies, storage, and tabs isolated per workflow. Sessions behave like persistent profiles: they remember auth state, history, and tabs between commands. - Export
PLAYWRIGHT_CLI_SESSION=mysessionif you are running many commands in the same session — the CLI will default to that session without needing--sessioneach time. - Manage sessions explicitly:
playwright-cli session-list playwright-cli session-stop <name> playwright-cli session-stop-all playwright-cli session-restart <name> playwright-cli session-delete <name> - Use
playwright-cli --isolated open ...for ephemeral contexts that do not persist to disk. - Whenever you change browser settings for a session (launch args, headless toggle, browser selection), rerun
playwright-cli configfor that session and thensession-restartto apply the new config.
Tabs, navigation, and devtools
- Tab helpers:
tab-list,tab-new [url],tab-close <index>,tab-select <index>. - Navigation shortcuts:
go-back,go-forward,reload. - Keyboard and mouse control:
press <key>,keydown,keyup,mousemove <x> <y>,mousedown [button],mouseup [button],mousewheel <dx> <dy>. - Devtools-style introspection:
Use these to check console logs, inspect network requests, or inject helper scripts.playwright-cli console [level] playwright-cli network playwright-cli run-code "async page => await page.context().grantPermissions(['clipboard-read'])"
Recording, tracing, and exports
- Record traces and videos around delicate interactions so you can replay what the agent did later:
playwright-cli tracing-start # perform steps playwright-cli tracing-stop playwright-cli video-start # perform steps playwright-cli video-stop video.webm - Save evidence to disk with
screenshot,pdf, orsnapshot(which dumps element refs). Recorded files honor theoutputDirfrom your config.
Config, state, and housekeeping
- Use
playwright-cli configto tweak runtime flags without reinstalling. Examples:
Changeplaywright-cli config --headed --browser=firefox playwright-cli --session=auth config --config=playwright-cli.jsonbrowser,contextOptions,launchOptions, or recording settings in the config and restart the session to apply them. - Running
playwright-cli installrefreshes browser binaries if the environment is new or you receive errors about missing binaries. - Clean up sessions when finished to avoid stale state:
playwright-cli session-stop <name> playwright-cli session-delete <name>
Troubleshooting & reminders
- If a command fails, rerun
playwright-cli snapshotto confirm refs are still valid. Snapshots provide the current DOM context forclick/typeoperations. playwright-cli --helpalways shows the latest command set, so consult it before trying a rarely used flag.- When the agent needs to replicate a recorded manual flow, capture a screenshot, note the session name, and mention which refs and tabs were in use.
- If targeting a visible browser is required (e.g., manual inspection), reconfigure with
--headed, or runplaywright-cli open --headed <url>for that session only.
No README available.
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
Requirements
- OpenClaw CLI installed and configured.
- Language: Markdown
- License: MIT
- Topics:
Configuration
- Use `playwright-cli config` to tweak runtime flags without reinstalling. Examples: ```bash playwright-cli config --headed --browser=firefox playwright-cli --session=auth config --config=playwright-cli.json ``` Change `browser`, `contextOptions`, `launchOptions`, or recording settings in the config and restart the session to apply them. - Running `playwright-cli install` refreshes browser binaries if the environment is new or you receive errors about missing binaries. - Clean up sessions when finished to avoid stale state: ```bash playwright-cli session-stop <name> playwright-cli session-delete <name> ```
FAQ
How do I install clawbrowser?
Run openclaw add @tezatezaz/clawbrowser in your terminal. This installs clawbrowser into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/tezatezaz/clawbrowser. Review commits and README documentation before installing.
