@vibetechnologies/chrome-sync
v0.6.0
Published
Sync browser cookies and sessions from your local Chrome to OpenClaw cloud browser
Downloads
871
Maintainers
Readme
@vibetechnologies/chrome-sync
Sync browser cookies and sessions from your local Chrome to your OpenClaw cloud browser.
Why
Cloud browsers can't log into Google, GitHub, or other sites that detect automation. Instead of fighting detection, bring your existing authenticated session to the cloud.
Install
npx @vibetechnologies/chrome-sync loginOr install globally:
npm install -g @vibetechnologies/chrome-syncUsage
1. Authenticate
# Opens browser for authentication
chrome-sync login
# Or use a direct token (CI/automation)
chrome-sync login --token <your-api-token>2. Push cookies to cloud browser
# Sync all cookies
chrome-sync push
# Sync specific domains
chrome-sync push --domains google.com,gmail.com
# Use a specific Chrome profile
chrome-sync push --domains google.com --profile "Profile 1"
# Dry run — see what would be synced
chrome-sync push --dry-run3. List Chrome profiles
chrome-sync profilesHow it works
- Reads and decrypts cookies from your local Chrome cookie database
- Sends them (encrypted in transit) to the OpenClaw API
- Server injects cookies into your tenant's cloud Chrome via CDP
Network.setCookies - Your cloud browser now has your authenticated sessions
Supported platforms
| OS | Cookie decryption |
|----|-------------------|
| macOS | Keychain → AES-128-CBC |
| Linux | libsecret / fallback → AES-128-CBC |
| Windows | DPAPI → AES-256-GCM (requires win-dpapi) |
Security
- Cookies are only sent to your authenticated tenant
- Transport uses HTTPS
- Local auth token stored with 0600 permissions at
~/.config/chrome-sync/auth.json - No cookies are stored server-side — they're injected directly into the browser process
Programmatic API
import { extractStorageState, pushCookies, loginWithToken } from "@vibetechnologies/chrome-sync";
// Extract Google cookies from local Chrome
const state = await extractStorageState([".google.com", ".gmail.com"]);
// Push to cloud
await loginWithToken("https://console.openclaw.vibebrowser.app", "your-token");
await pushCookies(state);