A Claude Skill to give your agent the ability to use a web browser
Dev Browser is a Claude Code skill that gives AI agents full browser automation capabilities through the Playwright API, running scripts in a sandboxed QuickJS WASM environment so that executed code has no access to the host filesystem or network. Installed via npm as a global CLI tool, it works with Claude Code either as a plugin or by simply letting the agent call the `dev-browser` command directly from bash, with optional pre-approval via `.claude/settings.json` to skip per-command permission prompts. The tool supports both headless Chromium and connections to a running Chrome instance via remote debugging, and maintains named persistent pages across multiple script executions. A standout detail is the dual computer-use API: `page.cua.*` for pixel-coordinate interaction backed by JPEG screenshots, and `page.domCua.*` for DOM-node-id interaction using snapshots of visible interactive elements. Developers building web scraping, automated testing, or agentic workflows that require real browser control are the primary audience.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Healthy fork ratio
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
git clone https://github.com/SawyerHood/dev-browser ~/.claude/skills/dev-browser1 items en este repositorio
Browser automation with persistent page state. Use when users ask to navigate websites, fill forms, take screenshots, extract web data, test web apps, or automate browser workflows. Trigger phrases include "go to [url]", "click on", "fill out the form", "take a screenshot", "scrape", "automate", "test the website", "log into", or any browser interaction request.
Resumen de Skills
<p align="center">
<img src="assets/header.png" alt="Dev Browser - Browser automation for Claude Code" width="100%">
</p>
Brought to you by [Do Browser](https://dobrowser.io).
A browser automation tool that lets AI agents and developers control browsers with sandboxed JavaScript scripts.
**Key features:**
- **Sandboxed execution** - Scripts run in a QuickJS WASM sandbox with no host access
- **Persistent pages** - Navigate once, interact across multiple scripts
- **Auto-connect** - Connect to your running Chrome or launch a fresh Chromium
- **Full Playwright API** - goto, click, fill, locators, evaluate, screenshots, and more
## Demo
https://github.com/user-attachments/assets/c6cf7fb9-b1dc-46ed-93b9-6e7240990c53
## CLI Installation
```bash
npm install -g dev-browser
dev-browser install # installs Playwright + Chromium
```
### Quick start
```bash
# Launch a headless browser and run a script
dev-browser --headless <<'EOF'
const page = await browser.getPage("main");
await page.goto("https://example.com", { waitUntil: "domcontentloaded" });
console.log(await page.title());
EOF
# Connect to your running Chrome (enable at chrome://inspect/#remote-debugging)
dev-browser --connect <<'EOF'
const tabs = await browser.listPages();
console.log(JSON.stringify(tabs, null, 2));
EOF
```
### PowerShell (Windows)
```powershell
@"
const page = await browser.getPage("main");
await page.goto("https://example.com", { waitUntil: "domcontentloaded" });
console.log(await page.title());
"@ | dev-browser
```
With `--connect`:
```powershell
@"
const page = await browser.getPage("main");
console.log(await page.title());
"@ | dev-browser --connect
```
### Windows notes
PowerShell install:
```powershell
npm install -g dev-browser
dev-browser install
```
To attach to a running Chrome instance on Windows:
```powershell
chrome.exe --remote-debugging-port=9222
dev-browser --connect
```
Windows npm installs download the native `dev-browser-windows-x64.exe` release asset during `postinstall`, and the generated npm shims invoke that executable directly.
### Using with AI agents
After installing, just tell your agent to run `dev-browser --help` — the help output includes a full LLM usage guide with examples and API reference. No plugin or skill installation needed.
<details>
<summary>Allowing dev-browser in Claude Code without permission prompts</summary>
By default, Claude Code asks for approval each time it runs a bash command. You can pre-approve `dev-browser` so it runs without permission checks by adding it to the `allow` list in your settings.
**Per-project** — add to `.claude/settings.json` in your project root:
```json
{
"permissions": {
"allow": [
"Bash(dev-browser *)"
]
}
}
```
**Per-user (global)** — add to `~/.claude/settings.json`:
```json
{
"permissions": {
"allow": [
"Bash(dev-browser *)"
]
}
}
```
The pattern `Bash(dev-browser *)` matches any command starting with `dev-browser ` followed by arguments (e.g. `dev-browser --headless`, `dev-browser --connect`). This is safe because dev-browser scripts run in a sandboxed QuickJS WASM environment with no host filesystem or network access.
You can also allow related commands in the same list:
```json
{
"permissions": {
"allow": [
"Bash(dev-browser *)",
"Bash(npx dev-browser *)"
]
}
}
```
> **Tip:** If you've already been prompted and clicked "Always allow", Claude Code adds the specific command pattern automatically. The settings file approach lets you pre-approve it before the first run.
</details>
<details>
<summary>Legacy plugin installation (Claude Code / Amp / Codex)</summary>
### Claude Code
```
/plugin marketplace add sawyerhood/dev-browser
/plugin install dev-browser@sawyerhood/dev-browser
```
Restart Claude Code after installation.
### Amp / Codex
Copy the skill to your skills directory:
```bash
# For Amp: ~/.claude/skills | For Codex: ~/.codex/skills
SKILLS_DIR=~/.claude/skills # or ~/.codex/skills
mkdir -p $SKILLS_DIR
git clone https://github.com/sawyerhood/dev-browser /tmp/dev-browser-skill
cp -r /tmp/dev-browser-skill/skills/dev-browser $SKILLS_DIR/dev-browser
rm -rf /tmp/dev-browser-skill
```
</details>
## Script API
Scripts run in a sandboxed QuickJS runtime (not Node.js). Available globals:
```javascript
// Browser control
browser.getPage(nameOrId) // Get/create named page, or connect to tab by targetId
browser.newPage() // Create anonymous page (cleaned up after script)
browser.listPages() // List all tabs: [{id, url, title, name}]
browser.closePage(name) // Close a named page
// File I/O (restricted to ~/.dev-browser/tmp/)
await saveScreenshot(buf, name) // Save screenshot buffer, returns path
await writeFile(name, data) // Write file, returns path
await readFile(name) // Read file, returns content
// Output
console.log/warn/error/info // Routed to CLI stdout/stderr
```
Pages are full [Playwright Page objects](https://playwright.dev/docs/api/class-page) — `goto`, `click`, `fill`, `locator`, `evaluate`, `screenshot`, and everything else, including `page.snapshotForAI({ track?, depth?, timeout? })`, which returns `{ full, incremental? }` for AI-friendly page snapshots.
Every page also exposes two computer-use toolsets:
- `page.cua.*` — pixel/vision tier: `screenshot()` saves a JPEG whose pixels map 1:1 onto CSS coordinates at any DPR and returns `{ path, width, height }`; `click`, `doubleClick`, `drag`, `move`, `scroll`, `keypress`, and `type` act at those coordinates.
- `page.domCua.*` — DOM-id tier: `getVisibleDom()` snapshots visible interactive elements as pseudo-HTML lines with `node_id=N`; `click`, `doubleClick`, and `scroll` act by node id (ids are only valid against the latest snapshot of the current document), plus `type` and `keypress` for the focused element.
## Benchmarks
| Method | Time | Cost | Turns | Success |
| ----------------------- | ------- | ----- | ----- | ------- |
| **Dev Browser** | 3m 53s | $0.88 | 29 | 100% |
| Playwright MCP | 4m 31s | $1.45 | 51 | 100% |
| Playwright Skill | 8m 07s | $1.45 | 38 | 67% |
| Claude Chrome Extension | 12m 54s | $2.81 | 80 | 100% |
_See [dev-browser-eval](https://github.com/SawyerHood/dev-browser-eval) for methodology._
## License
MIT
## Author
[Sawyer Hood](https://github.com/sawyerhood)
Lo que la gente pregunta sobre dev-browser
¿Qué es SawyerHood/dev-browser?
+
SawyerHood/dev-browser es skills para el ecosistema de Claude AI. A Claude Skill to give your agent the ability to use a web browser Tiene 6.2k estrellas en GitHub y se actualizó por última vez 7d ago.
¿Cómo se instala dev-browser?
+
Puedes instalar dev-browser clonando el repositorio (https://github.com/SawyerHood/dev-browser) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.
¿Es seguro usar SawyerHood/dev-browser?
+
Nuestro agente de seguridad ha analizado SawyerHood/dev-browser y le ha asignado un Trust Score de 100/100 (tier: Verified). Revisa el desglose completo de comprobaciones superadas y flags en esta página.
¿Quién mantiene SawyerHood/dev-browser?
+
SawyerHood/dev-browser es mantenido por SawyerHood. La última actividad registrada en GitHub es de 7d ago, con 6 issues abiertos.
¿Hay alternativas a dev-browser?
+
Sí. En ClaudeWave puedes explorar skills similares en /categories/skills, ordenados por popularidad o actividad reciente.
Despliega dev-browser en tu cloud
Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.
¿Mantienes este repo? Añade un badge a tu README
Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.
[](https://claudewave.com/repo/sawyerhood-dev-browser)<a href="https://claudewave.com/repo/sawyerhood-dev-browser"><img src="https://claudewave.com/api/badge/sawyerhood-dev-browser" alt="Featured on ClaudeWave: SawyerHood/dev-browser" width="320" height="64" /></a>Más Skills
A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Gemini CLI & Hermes Agent. Only official website: ccswitch.io
omo/lazycodex: The coding agent for tokenmaxxers;the one and only agent harness for complex codebases. For your Codex, for your OpenCode
Graphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.
Turn any AI agent into an AI Scientist. The #1 Agent Skills library for science, used by 160,000+ scientists worldwide. 140 ready-to-use skills plus 100+ scientific databases covering biology, chemistry, medicine, and drug discovery. Compatible with Cursor, Claude Code, Codex, Antigravity, and the open Agent Skills standard.
A curated collection of 1000+ agent skills from official dev teams and the community, compatible with Claude Code, Codex, Gemini CLI, Cursor, and more.
No description provided.