# Dev Browser

> Drive a real browser (navigate, click, fill, screenshot, full Playwright API) via sandboxed JS using the open-source dev-browser CLI. For scripted Playwright-style automation, not lightweight one-off page reads.

- Skill: `l3ad3r1/dev-browser` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add l3ad3r1/dev-browser`
- Raw SKILL.md: https://api.skillmd.com/api/skills/l3ad3r1/dev-browser/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- License: MIT
- Author: l3ad3r1 (https://skillmd.com/u/l3ad3r1)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/l3ad3r1/dev-browser

---


# Dev Browser

Control a real browser with sandboxed JavaScript scripts, powered by the
open-source [`dev-browser`](https://github.com/SawyerHood/dev-browser) CLI
(a thin, safe wrapper over the full Playwright API).

## When to Use

- Open a URL and read / screenshot it.
- Scrape or extract data from a page (especially JS-rendered sites).
- Fill in and submit a web form, or click through a flow.
- End-to-end test a web app in a real browser.
- Anything a plain HTTP fetch can't do (logins, dynamic SPA content).

## Prerequisites

```bash
npm install -g dev-browser
dev-browser install     # installs Playwright + Chromium
```

Requires Node.js. On Windows the installer pulls the native
`dev-browser-windows-x64.exe` automatically.

## Usage

Pipe a JavaScript snippet into `dev-browser`. Scripts run in a QuickJS WASM
sandbox (no host filesystem access); a `browser` object is provided, and pages
persist across invocations.

```bash
dev-browser --headless <<'EOF'
const page = await browser.getPage("main");
await page.goto("https://example.com", { waitUntil: "domcontentloaded" });
console.log(await page.title());
EOF
```

Windows PowerShell uses a here-string:

```powershell
@"
const page = await browser.getPage("main");
await page.goto("https://example.com", { waitUntil: "domcontentloaded" });
console.log(await page.title());
"@ | dev-browser --headless
```

Run `dev-browser --help` for the full LLM usage guide and API reference
(`goto`, `click`, `fill`, locators, `evaluate`, `screenshot`, …).

## Notes & Limits

- Needs Node.js and a one-time `dev-browser install` for Chromium.
- Sandboxed scripts can't touch the host FS — pass data via stdin, read results
  from stdout (`console.log`).
- `--connect` attaches to a running Chrome (start it with
  `--remote-debugging-port=9222`); `--headless` launches fresh Chromium.

## Credits

Wraps the open-source **[dev-browser](https://github.com/SawyerHood/dev-browser)**
CLI by **Sawyer Hood** (MIT), brought to you by [Do Browser](https://dobrowser.io).
All credit for the engine belongs to its authors; this skill only adds usage
guidance. Packaged by Rinu (l3ad3r1) with Claude (Anthropic).

