cookie-sync

Synchronise les cookies depuis Chrome local vers un contexte persistant Browserbase afin que le CLI `browse` puisse accéder aux sites authentifiés. À utiliser lorsque l'utilisateur souhaite naviguer en son nom, synchroniser des cookies, ou se connecter à des sites via Browserbase.

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

Cookie Sync — Local Chrome → Browserbase Context

Exporte les cookies de votre Chrome local et les enregistre dans un contexte persistant Browserbase. Après synchronisation, utilisez la CLI browse pour ouvrir des sessions authentifiées avec ce contexte.

Supporte le filtrage par domaine (synchroniser uniquement les cookies nécessaires) et la réutilisation de contexte (rafraîchir les cookies sans créer un nouveau contexte).

Prérequis

  • Chrome (ou Chromium, Brave, Edge) avec le débogage à distance activé
  • Si votre build de navigateur expose chrome://flags/#allow-remote-debugging, activez-le et redémarrez le navigateur
  • Sinon, lancez avec --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-debug et définissez CDP_URL=ws://127.0.0.1:9222
  • Au moins un onglet ouvert dans Chrome
  • Node.js 22+
  • Variable d'environnement : BROWSERBASE_API_KEY

Installation

Installez les dépendances avant la première utilisation :

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

Utilisation

Basique — synchroniser tous les cookies

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

Crée un contexte persistant avec tous vos cookies Chrome. Retourne un ID de contexte.

Filtrer par domaine — synchroniser uniquement des sites spécifiques

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

Correspond au domaine et à tous ses sous-domaines (ex. google.com correspond à accounts.google.com, mail.google.com, etc.)

Rafraîchir les cookies dans un contexte existant

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

Réinjecte les cookies frais dans un contexte précédemment créé. À utiliser quand les cookies ont expiré.

Mode furtif avancé

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

Active le mode furtif avancé de Browserbase pour réduire la détection de bot. Recommandé pour les sites comme Google qui font l'empreinte des navigateurs.

Proxy résidentiel avec géolocalisation

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

Route par un proxy résidentiel dans la localisation spécifiée. Format : "City,ST,Country" (le code d'état est sur 2 lettres). Aide à faire correspondre la géolocalisation de votre IP locale pour que les cookies d'authentification ne soient pas rejetés.

Combiner les drapeaux

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

Navigation sur des sites authentifiés

Après synchronisation, utilisez la CLI browse avec l'ID de contexte :

browse open https://mail.google.com --context-id <ctx-id> --persist

Le drapeau --persist enregistre tout nouveau cookie ou changement d'état dans le contexte, gardant la session fraîche pour la prochaine fois.

Exemple de workflow complet :

# Étape 1 : Synchroniser les cookies pour Twitter
node .claude/skills/cookie-sync/scripts/cookie-sync.mjs --domains x.com,twitter.com
# Output: Context ID: ctx_abc123

# Étape 2 : Naviguer sur Twitter authentifiée
browse open https://x.com/messages --context-id ctx_abc123 --persist
browse snapshot
browse screenshot
browse stop

Réutiliser les contextes pour les tâches planifiées

Les contextes persistent entre les sessions, ce qui les rend idéaux pour les tâches planifiées/récurrentes :

  1. Une fois (ordinateur portable ouvert) : Exécutez cookie-sync → obtenez un ID de contexte
  2. Tâches planifiées : Utilisez browse open <url> --context-id <ctx-id> --persist — aucun Chrome local nécessaire
  3. Re-synchroniser selon les besoins : Quand les cookies expirent, exécutez cookie-sync à nouveau avec --context <ctx-id> pour rafraîchir

Dépannage

  • "No DevToolsActivePort found" → Activez chrome://flags/#allow-remote-debugging si votre build de navigateur l'expose, ou lancez avec --remote-debugging-port=9222 et définissez CDP_URL=ws://127.0.0.1:9222
  • "No open page targets found" → Ouvrez au moins un onglet dans Chrome
  • "WebSocket error" → Chrome peut être bloqué ; forcez la fermeture et rouvrez-le
  • Cookies expirés dans le contexte → Réexécutez cookie-sync avec --context <id> pour rafraîchir
  • Authentification rejetée par le site → Essayez d'ajouter --stealth et/ou --proxy avec une localisation près de vous

Skills similaires