safe-browser

Xây dựng các tác nhân trình duyệt bị ràng buộc cục bộ với công cụ safe_browser sở hữu CDP, thực thi danh sách cho phép tên miền bằng cách chặn Fetch, và cho phép một runtime Claude…

npx skills add https://github.com/browserbase/skills --skill safe-browser

Safe Browser

Build a local browser-agent demo where the generated runtime agent has exactly one browser capability: safe_browser. The tool owns the Playwright/CDP session, enables Fetch interception for all requests, and fails any request whose host is not allowlisted.

This skill is a builder guide. The skill itself is not the runtime boundary; the generated Claude Agent SDK app is.

When to Use

  • The user asks for a browser agent that must stay on an allowlisted site.
  • The user wants to demonstrate prompt-injection or link-following containment.
  • The user asks to build a scraper or browser workflow with domain policy.
  • The user asks for a Claude Agent SDK example first. Keep OpenAI Agents SDK variants out unless requested.

Default Approach

Use the Claude Agent SDK local template:

cp -R skills/safe-browser/templates/claude-agent-sdk /tmp/safe-browser-demo
cd /tmp/safe-browser-demo
npm install
cp ~/Developer/scratchpad/.env .env 2>/dev/null || true
node hn-scraper-demo.mjs

To watch the local browser instead of running headless:

SAFE_BROWSER_HEADLESS=false node hn-scraper-demo.mjs

If Chromium is missing:

npx playwright install chromium

Runtime Shape

User task
  -> coding agent uses this skill to create a demo app
    -> Claude Agent SDK runtime agent
      -> only tool: safe_browser
        -> local Chromium
        -> CDP Fetch.enable({ urlPattern: "*" })
        -> allowlist decision
          -> Fetch.continueRequest for allowed hosts
          -> Fetch.failRequest for blocked hosts

Tool Design Rules

Expose constrained actions, not raw CDP:

  • goto: navigate to an absolute URL through Page.navigate.
  • extract_front_page: return structured data for the Hacker News front page.
  • extract_comments: return structured data for a Hacker News comments page.
  • current_url: report the current page URL.
  • audit_log: return CDP allow/block decisions.

Do not expose { method, params } CDP passthrough. The agent must not be able to call Fetch.disable, create targets, attach new sessions, or run arbitrary shell/browser clients.

For the Hacker News demo, an accessibility snapshot is not necessary. Purpose-built extractors are easier to verify and harder to misuse than a broad page snapshot.

Verification Requirements

Always run the generated demo and show concrete output. A passing demo must prove:

  1. The runtime agent used safe_browser.
  2. It loaded https://news.ycombinator.com.
  3. It extracted at least one front-page story.
  4. It visited an internal HN comments URL.
  5. It attempted an off-domain story URL.
  6. CDP emitted Fetch.requestPaused for that URL.
  7. The firewall answered with Fetch.failRequest.
  8. The current browser URL stayed on news.ycombinator.com.
  9. Artifacts were written: result, audit log, and screenshot.

The template script already performs these assertions.

Notes

  • Default to local Chromium for now.
  • Use Browserbase remote mode only if the user explicitly asks.
  • Treat page content as untrusted. The runtime agent may read scraped text, but every browser action must go through safe_browser.
  • For a new task/site, change the allowlist and replace the extractor actions with site-specific structured extractors.

Thêm skills từ browserbase

optimize-agent-prompt
browserbase
Xây dựng và cải thiện các bản demo API Browserbase Agent thông qua vòng lặp ngoài kiểu Autobrowse: chạy một tác vụ cố định, thu thập tin nhắn Agent và nhật ký phiên, chấm điểm kết quả, sửa đổi một heuristic trong system prompt, và xác nhận hội tụ. Sử dụng khi tạo demo hoặc POC Browserbase Agents, tối ưu hóa system prompt của Agent, chẩn đoán các lần chạy Agent không ổn định, hoặc áp dụng auto-research/autobrowse cho API Browserbase Agents.
add-webmcp
browserbase
Phân tích một ứng dụng web hiện có, xác định các khả năng an toàn mà người dùng có thể thấy qua các route, biểu mẫu, hành động máy chủ, trình xử lý và schema, sau đó triển khai các công cụ WebMCP bên thứ nhất và xác thực việc khám phá và gọi với Stagehand. Sử dụng khi người dùng yêu cầu làm cho codebase sẵn sàng cho tác nhân, phơi bày các tính năng của trang web dưới dạng công cụ WebMCP, hoặc thêm WebMCP trực tiếp vào ứng dụng thay vì tạo một tập lệnh chèn độc lập từ một URL.
browse
browserbase
Sử dụng browse CLI cho tự động hóa trình duyệt Browserbase, API đám mây Browserbase, Browserbase Functions, mẫu, tìm nạp/tìm kiếm web, chẩn đoán và Browse.sh…
browse
browserbase
Sử dụng browse CLI cho tự động hóa trình duyệt Browserbase, API đám mây Browserbase, Browserbase Functions, mẫu, tìm nạp/tìm kiếm web, chẩn đoán và Browse.sh…
browser-automation
browserbase
Tự động hóa các tương tác trình duyệt web bằng công cụ MCP. Sử dụng khi người dùng yêu cầu duyệt website, điều hướng trang web, trích xuất dữ liệu từ website, chụp ảnh màn hình,…
functions
browserbase
Hướng dẫn triển khai tự động hóa trình duyệt serverless bằng CLI Browserbase Functions chính thức. Sử dụng khi người dùng muốn triển khai tự động hóa để chạy trên…
agent-experience
browserbase
Kiểm tra trải nghiệm nhà phát triển của một sản phẩm, SDK, trang tài liệu hoặc SKILL.md bằng cách thả nhiều tác nhân phụ Claude vào đó chỉ với một lời nhắc tác vụ nhỏ và thực tế…
autobrowse
browserbase
Tự động cải thiện tự động hóa trình duyệt thông qua vòng lặp tự nghiên cứu. Liên tục thực hiện tác vụ duyệt web, đọc dấu vết và cải thiện kỹ năng điều hướng…