safe-browser

作者: browserbase

使用擁有CDP的safe_browser工具,建立本地受限瀏覽器代理,透過Fetch攔截強制執行網域允許清單,並讓執行中的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.

來自 browserbase 的更多技能

browse
browserbase
Use the browse CLI for Browserbase browser automation, Browserbase cloud APIs, Browserbase Functions, templates, web fetch/search, diagnostics, and Browse.sh…
official
browser-automation
browserbase
Automate web browser interactions using MCP tools. Use when the user asks to browse websites, navigate web pages, extract data from websites, take screenshots,…
official
functions
browserbase
使用官方 Browserbase Functions CLI 引導無伺服器瀏覽器自動化的部署。當使用者想要部署自動化以在…上執行時使用。
official
agent-experience
browserbase
審核產品、SDK、文檔網站或 SKILL.md 的開發者體驗,方法是投放多個 Claude 子代理,僅附上極簡任務提示和真實…
official
autobrowse
browserbase
透過自動研究循環實現自我改進的瀏覽器自動化。反覆執行瀏覽任務、讀取追蹤記錄,並持續提升導航技能…
official
browse
browserbase
使用 browse CLI 建立和部署瀏覽器自動化功能的完整指南
official
browser
browserbase
使用本地Chrome或遠端Browserbase進行瀏覽器自動化,適用於受保護網站、機器人偵測及CAPTCHA驗證。兩種模式:本地Chrome(預設,無需設定)或遠端Browserbase(反機器人隱蔽、自動CAPTCHA解鎖、住宅代理、會話持久化)。核心指令涵蓋導航、頁面檢查、互動(點擊、輸入、填寫、選擇、拖曳)及透過CLI進行會話管理。使用瀏覽快照讀取無障礙樹並取得元素參考以實現可靠互動;保留...
official
Browser Automation
browserbase
透過CLI指令使用自然語言自動化網頁瀏覽器操作。當使用者要求瀏覽網站、導覽網頁、從中提取資料時使用…
official