- dev-browser của Sawyer Hood cho phép Claude mở Chrome, login, scrape rồi trả JSON sạch bằng Playwright code thật.
- Không screenshot, không selector brittle, không MCP loop.
- Benchmark: 3m53s, $0.88, 100% success — vượt Playwright MCP, Chrome Extension, và Playwright Skill cổ điển.
TL;DR
dev-browser là open-source Claude Skill + CLI (MIT, ~6k stars) do Sawyer Hood phát hành, cho phép AI agent điều khiển Chrome bằng Playwright code thật chạy trong QuickJS WASM sandbox. Không screenshot, không selector brittle, không MCP tool-schema overhead. Benchmark chính thức: 3m 53s, $0.88, 29 turns, 100% success cho task login + scrape + trả JSON — nhanh hơn Playwright MCP 15%, rẻ hơn 40%, và vượt xa Chrome Extension (12m 54s, $2.81).
What's new
Thay vì expose browser qua MCP (với JSON Schema tool definitions nặng), dev-browser là CLI thuần: agent đọc dev-browser --help, viết đoạn JavaScript, pipe vào stdin, nhận kết quả ra stdout. Script chạy trong QuickJS WASM — không phải Node.js — nên zero host filesystem access, zero network access ngoài browser. Điều này cho phép user pre-approve Bash(dev-browser *) trong ~/.claude/settings.json mà không lo rủi ro.
Agent có full Playwright Page API: goto, click, fill, locator, evaluate, screenshot, và một method custom page.snapshotForAI({ track, depth, timeout }) trả về DOM dạng compact + incremental — tối ưu cho LLM tiêu thụ.
Why it matters
MCP-based browser tools có một chi phí ẩn: tool definitions nạp vào context window từ đầu session. Playwright MCP ngốn ~13,700 tokens, Chrome DevTools MCP ~17,000 tokens — tương đương ~9% của 200K context window trước khi agent làm bất cứ gì. Một benchmark của Playwright team cho thấy task điển hình dùng ~114k tokens với MCP vs ~27k với CLI — giảm 4×.
Với workflow dài nhiều bước (fill form, điều hướng nhiều tab, extract data), context overflow là bottleneck thật. dev-browser bypass bằng cách là CLI thuần: không JSON Schema, không tool registration, zero token overhead cho tooling. Đồng thời sandbox giải quyết nỗi lo autonomy: agent được phép chạy browser tự do mà không chạm vào máy user.
Technical facts
| Property | Value |
|---|---|
| Runtime | QuickJS WASM (không phải Node.js) |
| Host access | 0 — no filesystem, no network |
| Browser API | Full Playwright Page |
| AI snapshot | page.snapshotForAI() — compact + incremental |
| Playwright version | 1.58.2 (pinned tránh protocol drift) |
| Platforms | macOS, Linux, Windows x64 (native .exe) |
| License | MIT |
| Version | v0.2.7 (tháng 4/2026) |
| GitHub stars | ~6,000 |
Comparison
Benchmark chính thức (task: login + scrape + return JSON), theo dev-browser-eval:
| 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% |
Đáng chú ý: Playwright Skill cổ điển chỉ đạt 67% success — cho thấy sandbox + persistent state của dev-browser không chỉ tăng tốc mà còn tăng độ tin cậy. So với Chrome Extension, dev-browser nhanh gấp 3.3× và rẻ gấp 3.2×.
Use cases
- Autonomous login + scrape:
--connectflag attach vào Chrome đang chạy → agent giữ được session cookie, login một lần, scrape nhiều trang protected. - Form filling multi-step: wizard dài, checkout flow, onboarding — dùng
page.fill()+page.locator()quen thuộc. - Data extraction → JSON:
page.evaluate()chạy JS custom extract DOM,console.log(JSON.stringify(...))→ orchestrator parse. - E2E test generation: Playwright thật nên test selectors và accessibility flows reuse được.
- Agentic research: agent đọc
dev-browser --helpđể học API → tự viết script → chạy → iterate. Không cần tool schema registration.
Ví dụ snippet:
dev-browser "
await page.goto('https://example.com/login');
await page.fill('#username', 'agent');
await page.click('#submit');
const data = await page.evaluate(() =>
Array.from(document.querySelectorAll('.item')).map(el => ({
title: el.querySelector('h3').innerText,
price: el.querySelector('.price').innerText,
}))
);
console.log(JSON.stringify(data));
"Limitations & pricing
- Không import được Node.js libs (fs, http, axios…) — QuickJS WASM, không phải Node runtime.
- Không access host filesystem trong script → phải pipe qua stdout rồi để orchestrator ghi file.
- Không call external API bên trong script → mọi IO qua browser page.
- Playwright pin 1.58.2 — không tự do upgrade.
- Giá: $0 (MIT license). Chỉ trả LLM token costs của agent khi dùng.
Install:
npm install -g dev-browserCho Claude Code, thêm vào ~/.claude/settings.json:
{ "permissions": { "allow": ["Bash(dev-browser *)"] } }What's next
dev-browser đang ở v0.2.7 (tháng 4/2026) với Windows x64 native support và npm packaging hoàn chỉnh. Roadmap tập trung vào enhanced snapshot tracking, more examples trong skills directory, và community scripts. Tool đang ở viral moment — bài X của Suryansh Tiwari ("Holy shit… someone gave Claude a real browser") và follow-up của Roundtable đã đẩy adoption tăng mạnh trong hệ sinh thái Claude Code.
Cùng thời điểm, Microsoft ra Playwright CLI (token-efficient alternative cho Playwright MCP, 4× giảm token), Vercel Labs ra agent-browser (CLI-first, zero tool definition overhead). Hướng đi chung đã rõ: CLI-first + sandbox thay cho MCP loops khi agent cần browser control lâu dài và rẻ.
Nguồn: GitHub SawyerHood/dev-browser, SkillsLLM, DEV Community.

