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. Advanced stealth mode node .claude/skills/cookie-sync/scripts/cookie-sync.mjs --stealth Enables Browserbase's advanced stealth mode to reduce bot detection. 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 --stealth --proxy "San Francisco,CA,US" Browsing Authenticated Sites After syncing, use the browse CLI with the context ID: browse open https://mail.google.com --context-id < ctx-id
--persist The --persist flag saves any new cookies or state changes back to the context, 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
browse
open
https://x.com/messages --context-id ctx_abc123
--persist
browse snapshot
browse screenshot
browse stop
Reusing Contexts for Scheduled Jobs
Contexts persist across sessions, making them ideal for scheduled/recurring tasks:
Once (laptop open):
Run cookie-sync → get a context ID
Scheduled jobs:
Use
browse open