← Back to Skills Marketplace
canbirlik

Claw Browser

by Can Birlik · GitHub ↗ · v1.0.2
cross-platform ⚠ suspicious
899
Downloads
0
Stars
3
Active Installs
3
Versions
Install in OpenClaw
/install claw-browser
Description
A visual, human-like web browser for OpenClaw agents.Supports reading,screenshots, and visible mode.
README (SKILL.md)

\r \r

🌐 Claw Browser Skill\r

\r This skill gives the agent "Eyes" to browse the web using a real\r Chromium browser.\r \r Unlike simple HTTP requests, claw-browser:\r \r

  • Renders JavaScript\r
  • Handles dynamic content\r
  • Loads SPA applications\r
  • Takes real screenshots\r
  • Can run in visible (non-headless) mode\r \r ------------------------------------------------------------------------\r \r

🛠️ Installation & Setup (READ FIRST)\r

\r ⚠️ Before using this tool, the agent MUST set up the Python\r environment and download browser binaries.\r \r If venv does not exist, run this setup command block automatically:\r \r

# 1. Create virtual environment\r
python3 -m venv venv\r
\r
# 2. Activate it\r
source venv/bin/activate\r
\r
# 3. Install dependencies\r
pip install -r requirements.txt\r
\r
# 4. Download Chromium binaries (CRITICAL STEP)\r
playwright install chromium\r
```\r
\r
> ⚠️ The `playwright install chromium` step is **CRITICAL**.\\r
> Without it, the browser will NOT launch.\r
\r
------------------------------------------------------------------------\r
\r
# 🔧 Tools & Usage\r
\r
## `browser.py`\r
\r
### Arguments\r
\r
  -----------------------------------------------------------------------\r
  Argument                            Description\r
  ----------------------------------- -----------------------------------\r
  `--url`                             The website to visit (**Required**)\r
\r
  `--action`                          Action to perform: `read` or\r
                                      `screenshot`\r
\r
  `--visible`                         (Optional) Runs the browser in\r
                                      visible mode (NOT headless). Use if\r
                                      the user wants to *see* the\r
                                      browser.\r
  -----------------------------------------------------------------------\r
\r
------------------------------------------------------------------------\r
\r
# 🚀 Execution Examples\r
\r
⚠️ Always activate the virtual environment first.\r
\r
------------------------------------------------------------------------\r
\r
## 1️⃣ Read a Page (Headless - Default)\r
\r
``` bash\r
source venv/bin/activate && python browser.py --url "https://github.com/trending" --action read\r
```\r
\r
------------------------------------------------------------------------\r
\r
## 2️⃣ Take a Screenshot of a News Site\r
\r
``` bash\r
source venv/bin/activate && python browser.py --url "https://news.ycombinator.com" --action screenshot\r
```\r
\r
This saves:\r
\r
    evidence.png\r
\r
------------------------------------------------------------------------\r
\r
## 3️⃣ Visible Mode (Shows Browser UI - Great for Demos)\r
\r
``` bash\r
source venv/bin/activate && python browser.py --url "https://google.com" --action read --visible\r
```\r
\r
This will launch a real Chromium window on screen.\r
\r
------------------------------------------------------------------------\r
\r
## 4️⃣ Visible Mode (WSL / Linux Fix) ⭐️\r
\r
**Use this if you get "Missing X server" or "Display not found" errors:**\r
\r
```bash\r
export DISPLAY=:0 && source venv/bin/activate && python browser.py --url "[https://google.com](https://google.com)" --action read --visible\r
```\r
This sets the `DISPLAY` variable so the browser can open on your screen.\r
\r
------------------------------------------------------------------------\r
\r
# 🧠 When Should the Agent Use This Skill?\r
\r
Use `claw-browser` when:\r
\r
-   The page requires JavaScript rendering\r
-   The site is dynamic (React, Vue, Angular, etc.)\r
-   Screenshots are required\r
-   The user explicitly asks to "open" or "see" a website\r
-   Traditional HTTP requests fail\r
\r
------------------------------------------------------------------------\r
\r
# ⚡ Summary\r
\r
`claw-browser` transforms your OpenClaw agent from a simple API caller\r
into a **real browser-powered assistant** with visual capabilities.\r
\r
It enables:\r
\r
-   Dynamic page interaction\r
-   Visual verification\r
-   Demo-ready browsing\r
-   Real-world automation\r
\r
------------------------------------------------------------------------\r
\r
Made with ❤️ by @canbirlik\r
Usage Guidance
This skill is coherent and implements a standard Playwright-based browser. Before installing, consider: 1) Playwright will download Chromium binaries from the network — ensure your environment/network policy permits that. 2) The skill will access any URL it's given (including internal IPs, metadata endpoints, or file:// paths) and will print page text and save a screenshot (evidence.png) to the working directory — avoid letting it visit sensitive internal services or files. 3) If you are concerned about autonomous browsing, restrict invocation to user-only or run the skill in a sandboxed/container environment with limited network access. 4) Review and run the included browser.py yourself if you want to validate behavior; it is small and straightforward. If you want extra safety, add URL whitelisting or input validation before allowing agent-driven calls.
Capability Analysis
Type: OpenClaw Skill Name: claw-browser Version: 1.0.2 The skill provides a web browsing capability using Playwright, which inherently grants significant power. The `SKILL.md` instructs the agent to execute shell commands (`playwright install chromium`) for setup, involving downloading and installing binaries. The `browser.py` script can visit arbitrary URLs (user-controlled), execute JavaScript on those pages, and save files (screenshots) to the local filesystem. While these capabilities are plausibly needed for a browser tool, they represent high-risk actions (shell execution, network access, file write, JavaScript execution) that could be leveraged for unintended purposes if the agent is compromised or instructed maliciously, without clear evidence of intentional malicious design within the skill itself.
Capability Assessment
Purpose & Capability
The name/description (visual browser) match the included code and SKILL.md. The skill uses Playwright to render pages, handle JS, take screenshots, and support visible/headless modes — exactly what a browser skill needs.
Instruction Scope
Instructions are specific: create a venv, pip install requirements, run 'playwright install chromium', then execute browser.py with --url and --action. The script navigates to the provided URL, extracts document.body.innerText (first ~5000 chars) and title, and optionally saves a screenshot. There is no attempt to read other system files or environment secrets. Caveat: the skill accepts arbitrary URLs (including internal network and file:// URLs) and will return page text/screenshots — this is expected for a browser but is a potential data-exposure vector if the agent is allowed to fetch internal or sensitive endpoints.
Install Mechanism
There is no packaged install spec; installation is done by running the provided shell steps which use pip and 'playwright install chromium'. These are standard, well-known mechanisms; the Playwright step will download browser binaries from Playwright's upstream — expected for browser automation.
Credentials
The skill does not request any secrets or external credentials. It suggests setting DISPLAY for visible mode (a non-secret OS variable). No environment variables or config paths are required, which is proportionate to its purpose.
Persistence & Privilege
always is false and the skill is user-invocable; model invocation is enabled (platform default). The skill does not request persistent system-wide privileges or modify other skills/configs.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install claw-browser
  3. After installation, invoke the skill by name or use /claw-browser
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.2
- Added a new section for running in visible mode on WSL/Linux, including DISPLAY environment variable guidance. - No other changes; functionality and examples remain the same.
v1.0.1
- Fixed minor formatting issues in the description field of SKILL.md. - No changes to functionality or source code. - Documentation content remains unchanged except for formatting.
v1.0.0
- Initial release of claw-browser skill for OpenClaw agents. - Enables web browsing via a real Chromium browser, supporting JavaScript, dynamic content, and single-page applications. - Provides both reading and screenshot capabilities. - Supports visible (non-headless) mode for live browser interaction. - Requires separate installation of Playwright and Chromium for setup. - Works across darwin, linux, and win32 platforms.
Metadata
Slug claw-browser
Version 1.0.2
License
All-time Installs 5
Active Installs 3
Total Versions 3
Frequently Asked Questions

What is Claw Browser?

A visual, human-like web browser for OpenClaw agents.Supports reading,screenshots, and visible mode. It is an AI Agent Skill for Claude Code / OpenClaw, with 899 downloads so far.

How do I install Claw Browser?

Run "/install claw-browser" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Claw Browser free?

Yes, Claw Browser is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Claw Browser support?

Claw Browser is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Claw Browser?

It is built and maintained by Can Birlik (@canbirlik); the current version is v1.0.2.

💬 Comments