Préparer le lancement

Connecter votre agent de code à votre Chrome

Deux façons de donner à votre agent un navigateur sous vos yeux : Chrome DevTools MCP en auto-connexion ou un profil CDP dédié sur le port 9222, puis le test.

Mis à jour

Le suivi ne touche jamais un navigateur. Remplir les formulaires d’annuaires est le travail de votre agent de code, et pour cela il lui faut une intégration qui pilote un Chrome que vous pouvez voir et surveiller. Le BROWSER-SETUP.md du kit décrit deux façons d’établir cette connexion ; ce guide résume les deux, les permissions macOS qui peuvent apparaître, et le test de fumée qui vous dit que la connexion est réelle. Le principe tout du long : un agent, un produit, un onglet attribué, une connexion durable par lot.

Mode A : connecter le Chrome que vous utilisez déjà

Ce mode exige Chrome 144 ou plus récent.

  1. Vérifiez chrome://version, puis ouvrez chrome://inspect/#remote-debugging dans l’instance Chrome que l’agent doit utiliser et activez-y le débogage à distance. Si ce réglage est absent, ne cherchez pas un flag caché — utilisez le mode B.
  2. Configurez l’intégration MCP de votre agent pour lancer Chrome DevTools MCP avec --autoConnect. Comme définition générique de serveur MCP, cela ressemble à ceci ; le fichier et le format de configuration de votre agent peuvent différer, suivez donc sa propre interface de configuration :
{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": ["-y", "chrome-devtools-mcp@latest", "--autoConnect", "--no-usage-statistics", "--no-performance-crux"]
    }
  }
}
  1. Déclenchez une action de navigateur anodine depuis l’agent et approuvez l’invite de connexion de Chrome dans la fenêtre voulue. Un processus MCP en cours ne prouve rien par lui-même ; un onglet visible qui bouge, si.

Si npx manque, installez Node.js. Le premier appel télécharge le paquet ; une fois que tout fonctionne, figez la version testée. Comme cette intégration contrôle un navigateur authentifié, fermez d’abord les onglets sensibles sans rapport, ne copiez jamais le profil sur une autre machine et ne commitez jamais de cookies. Si votre agent a déjà une intégration navigateur qui fonctionne, gardez-la.

Mode B : un profil CDP local dédié

Certaines intégrations veulent un point d’accès HTTP parlant le Chrome DevTools Protocol plutôt qu’une auto-connexion. Pour celles-là, lancez un Chrome séparé avec son propre répertoire de données utilisateur dans votre espace de travail privé. Sur macOS :

mkdir -p .browser/chrome
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \
  --remote-debugging-address=127.0.0.1 \
  --remote-debugging-port=9222 \
  --user-data-dir="$PWD/.browser/chrome" about:blank

Sous Windows (PowerShell), depuis votre espace de travail privé :

$chrome = Join-Path $env:ProgramFiles "Google/Chrome/Application/chrome.exe"
if (!(Test-Path $chrome)) { $chrome = Join-Path ${env:ProgramFiles(x86)} "Google/Chrome/Application/chrome.exe" }
if (!(Test-Path $chrome)) { $chrome = Join-Path $env:LOCALAPPDATA "Google/Chrome/Application/chrome.exe" }
$profile = Join-Path (Get-Location) ".browser/chrome"
& $chrome --remote-debugging-address=127.0.0.1 --remote-debugging-port=9222 "--user-data-dir=$profile" about:blank

Sur Linux, remplacez par le binaire Chrome installé. Connectez-vous vous-même, dans cette fenêtre, aux comptes annuaires, Google et messagerie dont vous avez besoin. Le répertoire séparé n’est pas optionnel : depuis Chrome 136, les anciens flags de débogage sont ignorés pour le profil par défaut. Dans la configuration MCP, remplacez --autoConnect par --browserUrl=http://127.0.0.1:9222 ; ne combinez jamais les deux modes.

Gardez le port local : ne l’exposez jamais, ne le tunnelisez pas, ne réutilisez pas le point d’accès de quelqu’un d’autre, et vérifiez que l’écouteur est lié à 127.0.0.1. Fermez ce Chrome à la fin de la session ; le profil conserve vos connexions pour la fois suivante. Si le port 9222 est pris, identifiez le programme qui l’occupe — ne tuez pas des navigateurs sans rapport et ne supprimez pas de verrous de profil pour forcer une connexion.

Permissions macOS, seulement là où c’est nécessaire

Une connexion CDP seule ne demande en général aucune permission supplémentaire. Si votre agent clique nativement ou utilise AppleScript, macOS demandera sous Réglages Système → Confidentialité et sécurité : Automatisation pour que l’application hôte contrôle Chrome, Accessibilité pour la saisie clavier et souris native, Enregistrement de l’écran seulement si l’intégration capture l’écran. Approuvez la véritable application hôte (terminal, éditeur ou application de l’agent), et attendez-vous à ce que l’approbation de débogage à distance propre à Chrome revienne après chaque reconnexion — c’est un contrôle distinct, et aucune configuration ne peut promettre « autoriser une fois pour toutes ».

Le test de fumée avant toute soumission

Avant que l’agent touche un vrai formulaire, demandez-lui d’ouvrir un nouvel onglet vide, de naviguer vers la page d’accueil publique d’un annuaire, de lire le titre principal et de vous dire quel onglet il a utilisé. Regardez la même fenêtre. Connectez-vous ensuite à un annuaire cible et faites inspecter par l’agent le menu du compte pour vérifier l’identité : terminer un OAuth ne prouve pas qu’on est connecté à destination. N’enregistrez que réussite/échec et une note non sensible dans onboarding.json ou SESSION.md, jamais une transcription du navigateur.

Pour les formulaires, les règles sont celles qu’un humain soigneux appliquerait : lire les libellés actuels avant de localiser les champs, remplir les valeurs approuvées, quitter le champ et relire, vérifier les compteurs de caractères, et ne jamais prendre un appel d’outil réussi pour la preuve que la page a enregistré.

Quand quelque chose tourne mal

Le kit livre une table de dépannage ; les cas les plus fréquents :

  • La mauvaise fenêtre Chrome bouge — arrêtez, vérifiez l’instance sélectionnée et le mode de connexion.
  • Une invite apparaît à chaque action — l’outil redémarre probablement à chaque appel ; réutilisez une seule connexion.
  • OAuth réussit mais le site reste anonyme — inspectez le compte à destination avant de soumettre quoi que ce soit.
  • CAPTCHA ou 2FA — c’est vous qui le résolvez ; l’agent enregistre prepared_needs_human et ne tente aucun contournement.
  • Délai dépassé après Submit — cherchez d’abord dans le tableau de bord de l’annuaire et par le nom de votre produit ; un délai dépassé décrit le navigateur, pas le serveur.

La comparaison avec un agent navigateur autonome est traitée dans l’article sur les trois approches ; la configuration par agent se trouve sur les pages Claude Code, Codex et Cursor.

Le kit décrit dans ces guides

LaunchRepo est un dépôt privé que votre propre agent de code exécute : 347 playbooks d’annuaires, les scripts de l’espace de travail, le tracker et le tableau de bord local. Un seul paiement, tous vos produits.

Voir le prix