superpowers-chrome vs Playwright : quel outil pour piloter un navigateur avec Claude Code ?

Claude Code peut controler un navigateur web. Mais avec quel outil ? Playwright MCP lance un Chromium isole. superpowers-chrome pilote votre vrai Chrome, avec vos sessions et vos cookies. Voici quand utiliser lequel.

Le probleme : piloter un navigateur depuis le terminal

Quand on travaille avec Claude Code, il arrive un moment ou lire du code ne suffit plus. Il faut voir la page. Verifier un rendu CSS. Debugger un comportement JavaScript. Prendre une capture d'ecran pour documenter un bug. Scraper une page protegee par un login.

Pour tout ca, il faut que l'agent IA puisse piloter un navigateur. Deux outils existent dans l'ecosysteme Claude Code : Playwright MCP (le standard Microsoft) et superpowers-chrome (un plugin qui controle votre vrai Chrome). Ils font des choses similaires, mais avec des philosophies tres differentes.

Playwright MCP : le standard Microsoft

Comment ca marche

Playwright est un framework de test et d'automatisation developpe par Microsoft. Le Playwright MCP expose ses capacites a Claude Code via le protocole MCP. Quand vous l'utilisez, Playwright lance une instance Chromium isolee — un navigateur completement vierge, sans cookies, sans extensions, sans historique.

L'installation est simple :

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@anthropic/playwright-mcp"]
    }
  }
}

Claude Code peut ensuite naviguer vers une URL, cliquer sur des elements, remplir des formulaires, prendre des screenshots, et lire le contenu de la page. Tout se passe dans un Chromium sandboxe.

Forces et limites

Forces :

  • Reproductibilite — chaque session demarre dans un etat vierge identique
  • Isolation — aucune interference avec votre navigation personnelle
  • Stabilite — projet mature, maintenu par Microsoft et Anthropic
  • CI/CD compatible — tourne sans interface graphique (mode headless)
  • Multi-navigateur — supporte Chromium, Firefox, WebKit

Limites :

  • Pas de sessions — impossible d'acceder a un site ou vous etes deja connecte
  • Pas d'extensions — pas d'ad blocker, pas de gestionnaire de mots de passe
  • Chromium =/= Chrome — le rendu peut differer legerement de votre Chrome reel
  • Lourd — telecharge et lance un Chromium complet a chaque session

superpowers-chrome : votre Chrome, vos sessions

Comment ca marche

superpowers-chrome prend l'approche inverse. Au lieu de lancer un navigateur isole, il se connecte a votre Chrome reel via le Chrome DevTools Protocol (CDP). Votre Chrome, avec vos onglets, vos cookies, vos sessions, vos extensions — tout est la.

La seule contrainte : Chrome doit etre lance avec le flag de remote debugging :

# macOS
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222

# Linux
google-chrome --remote-debugging-port=9222

# Windows
chrome.exe --remote-debugging-port=9222

Piege classique au premier lancement : si Chrome est deja ouvert, le flag --remote-debugging-port est ignore silencieusement. Chrome detecte qu'une instance tourne deja et s'y rattache — sans activer le port de debug. Resultat : superpowers-chrome ne peut pas se connecter et affiche l'erreur "Chrome n'est pas lance en mode Remote Debugging".

La solution : fermer Chrome completement (toutes les fenetres + verifier qu'aucun processus Chrome ne tourne en arriere-plan), puis le relancer avec le flag. Sur macOS, un Cmd+Q ne suffit pas toujours — Chrome peut rester en memoire. En cas de doute :

# Forcer la fermeture de tous les processus Chrome
pkill -f "Google Chrome"

# Puis relancer avec le flag
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222

Astuce : creez un alias dans votre ~/.zshrc pour ne plus y penser :

alias chrome-debug='/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222'

Une fois Chrome ouvert avec ce flag, superpowers-chrome peut s'y connecter et tout piloter : naviguer, cliquer, saisir du texte, executer du JavaScript, lire le DOM, prendre des screenshots.

Skill Mode vs MCP Mode

superpowers-chrome offre deux modes d'utilisation :

Skill Mode — des commandes slash directement dans Claude Code :

/chrome navigate https://example.com
/chrome screenshot
/chrome click "#login-button"
/chrome type "#email" "user@example.com"
/chrome evaluate "document.title"

MCP Mode — les memes capacites exposees comme outils MCP, utilisables par l'agent IA de maniere autonome dans ses workflows. Claude Code choisit lui-meme quand naviguer, quand cliquer, quand capturer.

Le Skill Mode est pratique pour des actions ponctuelles (debug rapide, capture). Le MCP Mode est plus puissant pour les workflows automatises ou Claude Code enchaine les actions sans intervention.

Les 17 commandes

CommandeDescription
/chrome navigate <url>Naviguer vers une URL
/chrome screenshotCapture d'ecran de l'onglet actif
/chrome click <selector>Cliquer sur un element CSS
/chrome type <selector> <text>Saisir du texte dans un champ
/chrome evaluate <js>Executer du JavaScript dans la page
/chrome networkAfficher les logs reseau
/chrome consoleAfficher les logs console
/chrome html [selector]Recuperer le HTML (page ou element)
/chrome tabsLister les onglets ouverts
/chrome select-tab <id>Changer d'onglet
/chrome scroll <direction>Scroller dans la page
/chrome wait <ms>Attendre un delai
/chrome cookies [domain]Lire les cookies
/chrome storage <type>Lire localStorage/sessionStorage
/chrome styles <selector>Inspecter les styles CSS computes
/chrome accessibilityArbre d'accessibilite de la page
/chrome performanceMetriques de performance

Forces et limites

Forces :

  • Chrome reel — c'est votre navigateur, avec votre profil complet
  • Sessions conservees — connecte a Gmail, GitHub, dashboards admin, etc.
  • Extensions actives — ad blockers, password managers, dev tools
  • Pas de telechargement — utilise le Chrome deja installe
  • Dual mode — Skill (commandes manuelles) + MCP (automatise)
  • Leger — se connecte via CDP, pas de process supplementaire

Limites :

  • BETA — version 1.8.0, peut contenir des bugs
  • Chrome uniquement — pas de Firefox ou Safari
  • Non reproductible — l'etat depend de votre session Chrome
  • Flag obligatoire — Chrome doit etre lance avec --remote-debugging-port=9222
  • Securite — le port CDP expose votre Chrome, a utiliser en local uniquement

Comparatif detaille

Criteresuperpowers-chromePlaywright MCP
NavigateurChrome reel de l'utilisateurChromium isole (sandboxe)
Sessions/cookiesConserves (profil complet)Aucune (navigateur vierge)
ExtensionsToutes activesAucune
Mode d'utilisationSkill (/chrome) + MCPMCP uniquement
InstallationPlugin Claude Codenpx @anthropic/playwright-mcp
ConnexionChrome DevTools Protocol (CDP)API Playwright interne
PrerequisChrome + flag --remote-debugging-portNode.js uniquement
Mode headlessNon (Chrome reel avec UI)Oui (natif)
CI/CDNon adapteIdeal
ReproductibiliteNon (depend de l'etat Chrome)Oui (etat vierge garanti)
Multi-navigateurChrome uniquementChromium, Firefox, WebKit
MaturiteBETA (v1.8.0)Stable
Maintenu parCommunaute (obra)Microsoft + Anthropic
LicenceMITApache 2.0

Quand utiliser lequel ?

Scenario 1 : debug visuel d'un site en production

Vous avez un bug CSS signale par un client. Vous voulez voir la page telle qu'elle apparait dans un vrai navigateur, avec les polices chargees, les images en cache, et le rendu exact de Chrome.

Outil : superpowers-chrome. Il utilise votre Chrome reel — meme moteur de rendu que vos utilisateurs. Vous pouvez inspecter les styles, lire le DOM, prendre un screenshot et le partager. Pas besoin de reconfigurer quoi que ce soit.

/chrome navigate https://client-site.com/page-buggee
/chrome screenshot
/chrome styles ".header-nav"
/chrome console

Scenario 2 : tests E2E automatises

Vous ecrivez des tests d'integration pour verifier que le formulaire d'inscription fonctionne : saisir un email, un mot de passe, cliquer sur "S'inscrire", verifier le message de confirmation.

Outil : Playwright. Les tests doivent etre reproductibles. Chaque execution doit partir d'un etat vierge — pas de cookies, pas de sessions precedentes. Playwright garantit cette isolation. C'est aussi le seul qui tourne en CI/CD sans interface graphique.

Scenario 3 : scraping avec authentification

Vous voulez extraire des donnees d'un dashboard SaaS ou vous etes connecte. Le site utilise OAuth, des cookies httpOnly, et un token CSRF.

Outil : superpowers-chrome. Votre session est deja active dans Chrome. Pas besoin de scripter un flow de login complexe. superpowers-chrome accede directement aux pages protegees parce que Chrome a deja les cookies d'authentification.

/chrome navigate https://app.saas-tool.com/dashboard
/chrome html ".data-table"
/chrome evaluate "JSON.stringify([...document.querySelectorAll('.row')].map(r => r.textContent))"

Scenario 4 : captures d'ecran pour documentation

Vous redigez un article ou une doc technique et vous avez besoin de captures d'ecran de votre site en developpement local.

Outil : superpowers-chrome. C'est le plus direct. Naviguez vers localhost:3000, prenez le screenshot, continuez votre travail. Pas de configuration supplementaire, pas de Chromium a lancer separement.

/chrome navigate http://localhost:3000
/chrome screenshot

Si par contre vous avez besoin de captures dans plusieurs resolutions (mobile, tablette, desktop) de maniere automatisee, Playwright est mieux adapte grace a ses viewports configurables.

Ma configuration

Voici comment j'ai configure les deux outils pour coexister. Dans mon CLAUDE.md, la regle est simple : superpowers-chrome par defaut, Playwright en fallback.

superpowers-chrome est installe comme plugin Claude Code :

# Installation (une seule fois)
/plugin marketplace add obra/superpowers-marketplace
/plugin install superpowers-chrome@superpowers-marketplace

Playwright MCP est configure dans ~/.claude.json :

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@anthropic/playwright-mcp"]
    }
  }
}

Pour le quotidien, je lance Chrome avec le flag de debug au demarrage de ma session de travail :

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222

Et dans mon CLAUDE.md, j'ai ajoute une section qui explique a Claude quand utiliser l'un ou l'autre. Resultat : quand je demande "prends un screenshot du site", Claude utilise superpowers-chrome. Quand je demande "lance les tests E2E", il utilise Playwright.

Le point important : les deux peuvent coexister. Il n'y a pas de conflit. Ils utilisent des mecanismes completement differents (CDP vs instance Playwright). C'est comme avoir un tournevis plat et un cruciforme — on ne choisit pas l'un "contre" l'autre, on prend celui qui correspond a la vis.

Conclusion

superpowers-chrome et Playwright MCP ne sont pas en concurrence. Ils repondent a des besoins differents :

  • superpowers-chrome est votre outil de travail quotidien — debug, inspection, captures, scraping avec auth. C'est votre Chrome, avec tout votre contexte.
  • Playwright est votre outil de test et d'automatisation — environnement propre, reproductible, compatible CI/CD.

La bonne configuration, c'est d'avoir les deux. superpowers-chrome en premiere intention pour le travail interactif. Playwright quand vous avez besoin d'un environnement isole ou d'un workflow reproductible.

superpowers-chrome est encore en BETA (v1.8.0), mais il est deja tres fonctionnel pour le cas d'usage principal : piloter votre vrai navigateur depuis le terminal. Et c'est un cas d'usage que Playwright ne couvre pas — par design.

superpowers-chrome sur GitHub

Le plugin Claude Code pour piloter votre Chrome reel via le Chrome DevTools Protocol.

Voir sur GitHub

Playwright MCP

Le serveur MCP officiel Anthropic/Microsoft pour l'automatisation de navigateur avec Playwright.

Voir sur GitHub
Retour aux articles