Testagent Browser Setup
One-time installation and initialization of Chromium, system dependencies, Chinese fonts, and the CDP launcher script in a fresh openclaw environment — no ro... Skill: Testagent Browser Setup Owner: wangyin717 Summary: One-time installation and initialization of Chromium, system dependencies, Chinese fonts, and the CDP launcher script in a fresh openclaw environment — no ro... Tags: latest:1.0.10 Version history: v1.0.10 | 2026-07-23T09:56:19.919Z | auto - Version bump to 1.0.10 with no file changes detected. - No updates or modifications to the skill code or documentation i
Rank
62
Safety
84
Downloads
1.1k
Updated
Oct 11, 2026
Version
1.0.10
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1.1K downloads reported by the source. Last updated 10/11/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 11, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 11, 2026
- Adoption signal
- 1.1K downloadsadoption · observed Oct 11, 2026
- Latest release
- 1.0.10release · observed Jul 23, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s176q06axk4qmw488jvzbydn7188v9dd:testagent-browser-setup- Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.
- 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: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-wangyin717-testagent-browser-setup/snapshot"
Documentation
CLAWHUB
95,377 characters of source documentation, loaded on request.
Extracted files
4 files captured from the source.
SKILL.md
---
name: testagent-browser-setup
version: 2.2.0
description: One-time installation and initialization of Chromium, system dependencies, Chinese fonts, and the CDP launcher script in a fresh openclaw environment — no root required. Triggered when the user says "initialize test environment", "install browser tools", "setup browser", or when deploying a test agent to a new machine for the first time.
---
# Browser Setup
One-time environment initialization, run on a fresh openclaw container. No root required.
## Notes
The openclaw environment ships with Chromium pre-installed by default; `setup.sh` prefers it and only falls back to downloading via Playwright if it's not found.
**The primary path for screenshots and browser actions is: Chrome + direct CDP.**
setup.sh creates a `~/.local/bin/chrome-cdp` launcher script.
**`mcp doctor --probe` gives false positives.**
It returning ok only means the MCP server process started — not that Chromium can actually run. The only reliable check is: `playwright__browser_navigate` actually returning page content.
## Execution order
### Step 1: Run the core setup script
```bash
bash scripts/setup.sh
```
The script does three things:
1. **Chromium detection**: prefers the system-preinstalled Chromium, falling back to a Playwright download if not found
2. **`chrome-cdp` launcher script**: `~/.local/bin/chrome-cdp`, wrapping the `--headless=new --no-sandbox --remote-allow-origins=*` flags
3. **Chinese fonts**: downloads WenQuanYi Micro Hei from GitHub into `~/.local/share/fonts/`
### Step 2: Try configuring the built-in browser (optional, often ineffective)
Edit `~/.openclaw/openclaw.json` (`config.patch` refuses to modify protected paths, so the file must be written by hand):
```json
{
"browser": {
"noSandbox": true,
"ssrfPolicy": {
"allowedHostnames": [
"your target product domain (e.g. app.example.com)",
"the corresponding login domain (e.g. xxx.us.auth0.com)"
]
}
}
}
```
After editing: `browser stop → gateway restart → wait 15s → browser start`
> ⚠️ **The SSRF allowlist often doesn't take effect** (the gateway has a runtime cache and doesn't always pick up the file).
> If `browser navigate` still reports `blocked by policy`, **immediately abandon the built-in browser and switch to direct CDP (see TOOLS.md)** rather than continuing to restart-and-retry.
### Step 4: Initialize TOOLS.md
```bash
cp "$(dirname "$0")/../TOOLS.md" ./TOOLS.md
```
### Step 6 (optional): Install browser-use
```bash
bash scripts/setup-optional.sh
```
### Step 7: Smoke test
```bash
# Start Chrome CDP
chrome-cdp &
sleep 2
# Verify CDP is reachable
curl -s http://localhost:9223/json | python3 -m json.tool | head -20
# Verify with a screenshot (see the CDP screenshot flow in REFERENCE.md)
```
Acceptance criteria: CDP `/json` returns a target list, and Chinese text in screenshots renders cleanly with no mojibake._meta.json
{
"ownerId": "kn727a13c3vqvhag3n56qpqva588v5sx",
"slug": "testagent-browser-setup",
"version": "1.0.10",
"publishedAt": 1784800579919
}skill-card.md
## Description: One-time installation and initialization of Chromium, browser dependencies, Chinese fonts, and a Chrome CDP launcher in a fresh OpenClaw environment without root access. This skill is ready for commercial/non-commercial use. ## Publisher: [wangyin717](https://clawhub.ai/user/wangyin717) ### License/Terms of Use: MIT-0 ## Use Case: Developers and test engineers use this skill to initialize browser automation support in a fresh OpenClaw environment, including Chromium/CDP setup, Chinese font support, Playwright MCP registration, and optional browser-use tooling. ### Deployment Geography for Use: Global ## Known Risks and Mitigations: Risk: The skill weakens browser and network safeguards through no-sandbox CDP launch options and SSRF allowlist guidance. Mitigation: Use only in an isolated test container and require explicit authorization before direct CDP is used to work around network policy. Risk: The setup scripts install mutable third-party tooling and assets from external URLs. Mitigation: Review, pin, and verify third-party installers and downloads before deployment. Risk: The optional browser-use workflow can reuse local Chrome profiles or real credentials. Mitigation: Do not reuse personal browser profiles or production credentials; use disposable test accounts and isolated browser state. Risk: Security evidence marks the release suspicious and recommends review before use. Mitigation: Perform security review and scanner review before installing or running the skill. ## Reference(s): - [ClawHub skill page](https://clawhub.ai/wangyin717/skills/testagent-browser-setup) - [browser-use repository](https://github.com/browser-use/browser-use) - [WenQuanYi Micro Hei font source](https://github.com/anthonyfok/fonts-wqy-microhei/raw/master/wqy-microhei.ttc) - [browser-use CLI installer](https://browser-use.com/cli/install.sh) ## Skill Output: **Output Type(s):** [Shell commands, Configuration, Guidance, Code] **Output Format:** [Markdown guidance with shell commands, JSON configuration snippets, and JavaScript CDP examples] **Output Parameters:** [1D] **Other Properties Related to Output:** [Produces setup and testing guidance for an agent; setup scripts may install browser tooling and create local configuration files.] ## Skill Version(s): 1.0.10 (source: server release metadata; artifact frontmatter reports 2.2.0) ## Ethical Considerations: Users 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.
TOOLS.md
# TOOLS.md — Browser Tools Guide ## Comparison of the three browser tools | | OpenClaw built-in browser | Playwright MCP | browser-use CLI | |---|---|---|---| | **Invocation** | `browser` tool (snapshot/act/screenshot) | `playwright__browser_*` tool family | `exec` calling the `browser-use` command | | **Browser engine** | Local Chromium | Local Chromium | Local Chromium / cloud browser | | **State retrieval** | accessibility snapshot (text tree) | snapshot (text tree) | `state` (indexed element list) | | **Element targeting** | ref (e.g. e36) | ref + selector | numeric index (e.g. click 5) | | **Screenshot output** | AI analysis text (❌ not shareable) | PNG file (✅ shareable) | saved path (✅ shareable) | | **JS execution** | ✅ evaluate | ✅ evaluate | ✅ eval | | **Keyboard events** | ⚠️ doesn't work on React controlled components | ✅ works well | ✅ `keys "Enter"` | | **Cloud browser** | ❌ | ❌ | ✅ `cloud connect` | | **Reuse login session** | ❌ | ❌ | ✅ `--profile "Default"` | | **Anti-bot/CAPTCHA** | ❌ | ❌ | ✅ built into the cloud browser | | **Residential proxy** | ❌ | ❌ | ✅ 195+ countries | | **Internal network tunnel** | ❌ | ❌ | ✅ `tunnel <port>` | | **Parallel multi-session** | limited (tabs) | limited (tabs) | ✅ `--session NAME` | | **Command chaining** | not supported | not supported | ✅ chainable with `&&` | | **Persisted login state** | ✅ persists within the same tab | ✅ persists within the same page | ✅ kept alive by a daemon, persists across commands | ## Choosing a tool for the task ### → Use the OpenClaw built-in browser (default choice) - Routine functional testing and page interaction - Actions within an already-logged-in session - When screenshots don't need to be shared with the user - **Advantage**: tightly integrated tooling, gets things done in one step ### → Use Playwright MCP - Need to share a screenshot with the user (bug screenshots, state confirmation) - Precise interaction with React/Vue controlled components (good keyboard event support) - Need precise selector-based element targeting - **Advantage**: most precise element targeting, screenshots are usable ### → Use browser-use CLI - Need a cloud browser (anti-bot, CAPTCHA, residential proxy) - Need to reuse the user's local Chrome login session - Internal services need to be reached via a tunnel (`tunnel <port>`) - Fast exploration of a new product (efficient with `&&` command chains) - Parallel testing across multiple products (`--session` multi-session) - **Advantage**: strongest browser capabilities, full coverage across cloud + local + tunnel ## Typical testing workflow 1. **First-time exploration of a new product** → browser-use CLI (cloud browser + command chains for a quick survey) 2. **Regression testing on a familiar product** → OpenClaw built-in (fast) or Playwright MCP (precise) 3. **Need a screenshot to document a bug** → Playwright MCP or browser-use CLI 4. **Sites with restricted login sessions** → browser-use CLI (`--profile` to reuse login) 5. **Si
AionUi
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!
activepieces
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
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/wangyin717/skills/testagent-browser-setup",
"sourceUrl": "https://clawhub.ai/wangyin717/skills/testagent-browser-setup",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T10:45:28.101Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-wangyin717-testagent-browser-setup/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-wangyin717-testagent-browser-setup/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-11T10:45:28.101Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1.1K downloads",
"href": "https://clawhub.ai/wangyin717/testagent-browser-setup",
"sourceUrl": "https://clawhub.ai/wangyin717/testagent-browser-setup",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T10:45:28.101Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "1.0.10",
"href": "https://clawhub.ai/wangyin717/testagent-browser-setup",
"sourceUrl": "https://clawhub.ai/wangyin717/testagent-browser-setup",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-07-23T09:56:19.919Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-wangyin717-testagent-browser-setup/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-wangyin717-testagent-browser-setup/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 1.0.10",
"description": "- Version bump to 1.0.10 with no file changes detected. - No updates or modifications to the skill code or documentation in this release.",
"href": "https://clawhub.ai/wangyin717/testagent-browser-setup",
"sourceUrl": "https://clawhub.ai/wangyin717/testagent-browser-setup",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-07-23T09:56:19.919Z",
"isPublic": true
}
]
}Record generated Oct 11, 2026.
