Use this skill whenever a task needs a real browser under OpenClaw control.
This skill is for:
This skill is not for:
When real browser automation is needed, prefer the OpenClaw-managed browser flow.
Do not default to:
Prefer the highest-level OpenClaw browser surface available in the current environment:
browser tool when the runtime exposes itopenclaw browser CLI when the CLI is availableOfficial CLI form:
openclaw browser --browser-profile <profile> <subcommand> ...
The rule is not "use this exact shell string at all costs". The real rule is:
The OpenClaw browser system is backed by a loopback control service. For normal work, use the browser tool or CLI first. Raw HTTP access is mainly for local debugging/integration, not the default operator workflow.
If the runtime exposes the OpenClaw browser tool, prefer it over shelling out.
Use the tool's browser operations with an explicit profile whenever possible.
Typical operation sequence is the same:
The same profile rules in this skill still apply when using the built-in tool.
Always choose an explicit browser profile when possible:
--browser-profile <profile>
openclaw as the safe fallbackopenclaw.user only when the task truly needs the user's signed-in browser session and the user is present to approve attach prompts.If the environment already supports multiple configured profiles, prefer names that identify ownership or scope, for example:
agent-mainagent-researchshopify-opssession-fooBut do not invent and rely on a new profile name unless it is actually configured.
OpenClaw browser is a managed browser system with:
The browser is controlled through OpenClaw's local browser control service. The service is loopback-only and its port family is derived from gateway.port. Profile CDP ports are also managed by OpenClaw. Normally, do not hardcode raw ports for normal work; use the OpenClaw browser CLI/tool surface first.
openclaw browser --browser-profile <profile> status
openclaw browser --browser-profile <profile> start
openclaw browser --browser-profile <profile> open <url>
openclaw browser --browser-profile <profile> snapshot
For dense pages, prefer interactive snapshots:
openclaw browser --browser-profile <profile> snapshot --interactive
Examples:
openclaw browser --browser-profile <profile> click <ref>
openclaw browser --browser-profile <profile> type <ref> "hello" --submit
openclaw browser --browser-profile <profile> wait --text "Done"
Refs are not stable across navigations. If an action fails or the page changed, take a fresh snapshot and use the new refs.
openclaw browser --browser-profile <profile> tabs
openclaw browser --browser-profile <profile> tab
openclaw browser --browser-profile <profile> focus <targetId>
openclaw browser --browser-profile <profile> close <targetId>
openclaw browser --browser-profile <profile> snapshot --interactive
openclaw browser --browser-profile <profile> screenshot
openclaw browser --browser-profile <profile> console --level error
openclaw browser --browser-profile <profile> errors
openclaw browser --browser-profile <profile> requests --filter api
openclaw browser --browser-profile <profile> navigate <url>
openclaw browser --browser-profile <profile> click <ref>
openclaw browser --browser-profile <profile> type <ref> "text"
openclaw browser --browser-profile <profile> hover <ref>
openclaw browser --browser-profile <profile> select <ref> <value>
openclaw browser --browser-profile <profile> press Enter
openclaw browser --browser-profile <profile> wait "#main" --url "**/dashboard" --load networkidle
user profile only whenFirst try the OpenClaw browser flow properly: status → start → open → snapshot → act → re-snapshot.
If something fails:
highlight or screenshot.errors and requests.Useful commands:
openclaw browser --browser-profile <profile> highlight <ref>
openclaw browser --browser-profile <profile> screenshot --full-page
openclaw browser --browser-profile <profile> errors --clear
openclaw browser --browser-profile <profile> requests --filter api --clear
Avoid these unless the user explicitly asks:
PROFILE=<configured-profile-or-openclaw>
openclaw browser --browser-profile "$PROFILE" status
openclaw browser --browser-profile "$PROFILE" start
openclaw browser --browser-profile "$PROFILE" open https://example.com
openclaw browser --browser-profile "$PROFILE" snapshot --interactive
A correct OpenClaw browser workflow should usually show all of the following:
If these are true, the page is being controlled through the proper OpenClaw browser path.
共 1 个版本