cookie-sync

作者: browserbase

将本地Chrome的cookies同步到Browserbase持久化上下文中,以便browse CLI能够访问已认证的站点。当用户希望以…身份浏览时使用。

npx skills add https://github.com/browserbase/skills --skill cookie-sync

Cookie Sync — Local Chrome → Browserbase Context

Exports cookies from your local Chrome and saves them into a Browserbase persistent context. After syncing, use the browse CLI to open authenticated sessions with that context.

Supports domain filtering (only sync cookies you need) and context reuse (refresh cookies without creating a new context).

Prerequisites

  • Chrome (or Chromium, Brave, Edge) with remote debugging enabled
  • If your browser build exposes chrome://flags/#allow-remote-debugging, enable it and restart the browser
  • Otherwise, launch with --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-debug and set CDP_URL=ws://127.0.0.1:9222
  • At least one tab open in Chrome
  • Node.js 22+
  • Environment variable: BROWSERBASE_API_KEY

Setup

Install dependencies before first use:

cd .claude/skills/cookie-sync && npm install

Usage

Basic — sync all cookies

node .claude/skills/cookie-sync/scripts/cookie-sync.mjs

Creates a persistent context with all your Chrome cookies. Outputs a context ID.

Filter by domain — only sync specific sites

node .claude/skills/cookie-sync/scripts/cookie-sync.mjs --domains google.com,github.com

Matches the domain and all subdomains (e.g. google.com matches accounts.google.com, mail.google.com, etc.)

Refresh cookies in an existing context

node .claude/skills/cookie-sync/scripts/cookie-sync.mjs --context ctx_abc123

Re-injects fresh cookies into a previously created context. Use this when cookies have expired.

Verified browser mode

node .claude/skills/cookie-sync/scripts/cookie-sync.mjs --verified

Enables Browserbase Identity with a Verified browser to improve access on protected sites. Recommended for sites like Google that fingerprint browsers.

Residential proxy with geolocation

node .claude/skills/cookie-sync/scripts/cookie-sync.mjs --proxy "San Francisco,CA,US"

Routes through a residential proxy in the specified location. Format: "City,ST,Country" (state is 2-letter code). Helps match your local IP's geolocation so auth cookies aren't rejected.

Combine flags

node .claude/skills/cookie-sync/scripts/cookie-sync.mjs --domains github.com,google.com --verified --proxy "San Francisco,CA,US"

Browsing Authenticated Sites

After syncing, use the browse CLI with the context ID:

SESSION_JSON="$(browse cloud sessions create --context-id <ctx-id> --persist --keep-alive)"
SESSION_ID="$(echo "$SESSION_JSON" | jq -r .id)"
CONNECT_URL="$(echo "$SESSION_JSON" | jq -r .connectUrl)"

browse open https://mail.google.com --cdp "$CONNECT_URL"

The --persist flag on browse cloud sessions create saves any new cookies or state changes back to the context when the cloud session is released, keeping the session fresh for next time.

Full workflow example:

# Step 1: Sync cookies for Twitter
node .claude/skills/cookie-sync/scripts/cookie-sync.mjs --domains x.com,twitter.com
# Output: Context ID: ctx_abc123

# Step 2: Browse authenticated Twitter
SESSION_JSON="$(browse cloud sessions create --context-id ctx_abc123 --persist --keep-alive)"
SESSION_ID="$(echo "$SESSION_JSON" | jq -r .id)"
CONNECT_URL="$(echo "$SESSION_JSON" | jq -r .connectUrl)"

browse open https://x.com/messages --cdp "$CONNECT_URL"
browse snapshot
browse screenshot
browse stop
browse cloud sessions update "$SESSION_ID" --status REQUEST_RELEASE

Reusing Contexts for Scheduled Jobs

Contexts persist across sessions, making them ideal for scheduled/recurring tasks:

  1. Once (laptop open): Run cookie-sync → get a context ID
  2. Scheduled jobs: Create a Browserbase session with browse cloud sessions create --context-id <ctx-id> --persist --keep-alive, then attach with browse open <url> --cdp <connectUrl> — no local Chrome needed
  3. Re-sync as needed: When cookies expire, run cookie-sync again with --context <ctx-id> to refresh

Troubleshooting

  • "No DevToolsActivePort found" → Enable chrome://flags/#allow-remote-debugging if your browser build exposes it, or launch with --remote-debugging-port=9222 and set CDP_URL=ws://127.0.0.1:9222
  • "No open page targets found" → Open at least one tab in Chrome
  • "WebSocket error" → Chrome may be hung; force quit and reopen it
  • Cookies expired in context → Re-run cookie-sync with --context <id> to refresh
  • Auth rejected by site → Try adding --verified and/or --proxy with a location near you

来自 browserbase 的更多技能

optimize-agent-prompt
browserbase
通过Autobrowse式外层循环构建并改进Browserbase Agent API演示:运行固定任务,收集Agent消息和会话日志,对结果评分,修订一条系统提示启发式规则,并确认收敛。适用于创建Browserbase Agents演示或概念验证、优化Agent系统提示、诊断Agent运行不稳定,或将自动研究/自动浏览应用于Browserbase Agents API时。
add-webmcp
browserbase
分析现有Web应用,识别路由、表单、服务器操作、处理器和模式中安全且用户可见的功能,然后实现第一方WebMCP工具,并使用Stagehand验证发现和调用。当用户要求使代码库具备代理就绪性、将网站功能暴露为WebMCP工具,或直接将WebMCP添加到应用而非从URL生成独立注入脚本时使用。
browse
browserbase
使用browse CLI进行Browserbase浏览器自动化、Browserbase云API、Browserbase Functions、模板、网页抓取/搜索、诊断以及Browse.sh…
browse
browserbase
使用 browse CLI 进行 Browserbase 浏览器自动化、Browserbase 云 API、Browserbase Functions、模板、网页抓取/搜索、诊断以及 Browse.sh…
browser-automation
browserbase
使用MCP工具自动化网页浏览器交互。当用户要求浏览网站、导航网页、从网站提取数据、截图时使用,……
functions
browserbase
引导使用官方 Browserbase Functions CLI 进行无服务器浏览器自动化的部署。当用户想要部署自动化以在……上运行时使用。
agent-experience
browserbase
通过仅使用一个简短的任务提示和真实的……,投放多个Claude子代理来审计产品、SDK、文档站点或SKILL.md的开发者体验。
autobrowse
browserbase
通过自动研究循环实现自我改进的浏览器自动化。迭代执行浏览任务、读取追踪记录并优化导航技能…