browser
browserbase/skills
Automatisez les interactions avec le navigateur web à l'aide du langage naturel via des commandes CLI. Prend en charge les sessions Browserbase locales et distantes avec résolution de CAPTCHA, proxies résidentiels et persistance de session.
...Développer toutAutomatisation du navigateur
Automatisez les interactions avec le navigateur à l'aide de l'interface CLI browse avec Claude.
Vérification de l'installation
Avant d'exécuter des commandes de navigateur, vérifiez que l'interface CLI est disponible :
which browse || npm install -g browse
Sélection de l'environnement (Local vs Distant)
L'interface CLI prend en charge des indicateurs d'environnement explicites par commande. Si vous ne spécifiez rien, la session suivante utilise par défaut Browserbase lorsque BROWSERBASE_API_KEY est défini, et le mode local sinon.
Mode local
browse open <url> --local</url>démarre un navigateur local propre et isolébrowse open <url> --auto-connect</url>se connecte à un Chrome déjà en cours d'exécution et débogable ; utilisez--locallorsqu'aucun Chrome débogable n'est disponiblebrowse open <url> --cdp <port></port></url>se connecte à une cible CDP spécifique- Idéal pour : le développement, localhost, les sites de confiance et les exécutions reproductibles
Mode distant (Browserbase)
browse open <url> --remote</url>démarre une session Browserbase- Sans indicateur local, Browserbase est également le mode par défaut lorsque
BROWSERBASE_API_KEYest défini - Fournit : Identité Browserbase, navigateurs vérifiés, résolution automatique de CAPTCHA, proxies résidentiels, persistance de session
- Utilisez le mode distant lorsque : le site cible dispose d'une détection de robots, de CAPTCHA, d'une limitation de taux par IP, d'une protection Cloudflare ou nécessite un accès spécifique à une géolocalisation
- Obtenez les identifiants sur https://browserbase.com/settings
Quand choisir l'un ou l'autre
- Tests locaux répétables / état propre :
browse open <url> --local</url> - Réutilisation de vos identifiants/cookies locaux :
browse open <url> --auto-connect</url> - Navigation simple (docs, wikis, APIs publiques) : le mode local convient
- Sites protégés (murs de connexion, CAPTCHA, anti-scraping) : utilisez le mode distant
- Si le mode local échoue avec une détection de robots ou un accès refusé : passez au mode distant
Commandes
La plupart des commandes du pilote fonctionnent sur les sessions locales, distantes et CDP une fois que le daemon est démarré.
Navigation
browse open <url> # Aller à l'URL
browse open <url> --local # Aller à l'URL dans un navigateur local propre
browse open <url> --remote # Aller à l'URL dans une session Browserbase
browse reload # Recharger la page actuelle
browse back # Retourner dans l'historique
browse forward # Avancer dans l'historique
</url></url></url>État de la page (préférer la capture instantanée à la capture d'écran)
browse snapshot # Obtenir l'arbre d'accessibilité avec des références d'éléments (rapide, structuré)
browse screenshot --path <path> # Prendre une capture d'écran visuelle (lent, utilise des tokens de vision)
browse get url # Obtenir l'URL actuelle
browse get title # Obtenir le titre de la page
browse get text # Obtenir le contenu textuel (utiliser "body" pour tout le texte)
browse get html # Obtenir le contenu HTML de l'élément
browse get value # Obtenir la valeur du champ de formulaire
</path>Utilisez browse snapshot comme votre méthode par défaut pour comprendre l'état de la page — il renvoie l'arbre d'accessibilité avec des références d'éléments que vous pouvez utiliser pour interagir. Utilisez uniquement browse screenshot lorsque vous avez besoin d'un contexte visuel (mise en page, images, débogage).
Interaction
browse click <ref> # Cliquer sur un élément par sa référence issue de la capture instantanée (par ex., @0-5)
browse type <text> # Taper du texte dans l'élément focalisé
browse fill <value> # Remplir un champ de saisie ; ajouter --press-enter si la touche Entrée est nécessaire
browse select <values...> # Sélectionner une ou plusieurs options de liste déroulante
browse press <key> # Appuyer sur une touche (Entrée, Tabulation, Échap, Cmd+A, etc.)
browse mouse drag <fromx><fromy><tox><toy> # Faire glisser la souris d'un point à un autre
browse mouse scroll <x><y><deltax><deltay> # Faire défiler aux coordonnées spécifiées
browse highlight # Mettre en surbrillance un élément sur la page
browse is visible # Vérifier si un élément est visible
browse is checked # Vérifier si un élément est coché
browse wait <type> [arg] # Attendre : chargement, sélecteur, délai d'attente
</type></deltay></deltax></y></x></toy></tox></fromy></fromx></key></values...></value></text></ref>Gestion de session
browse stop # Arrêter le daemon du navigateur
browse status # Vérifier l'état du daemon et le mode résolu
browse tab list # Lister tous les onglets ouverts
browse tab switch <index-or-target-id> # Basculer vers un onglet par index ou ID de cible
browse tab close [index-or-target-id] # Fermer un onglet
</index-or-target-id>Flux de travail typique
Si l'environnement a de l'importance, ajoutez --local, --remote, --auto-connect ou --cdp <port></port> à la première commande de navigateur.
browse open <url> --local</url>oubrowse open <url> --remote</url>— naviguer vers la pagebrowse snapshot— lire l'arbre d'accessibilité pour comprendre la structure de la page et obtenir les références d'élémentsbrowse click <ref></ref>/browse type <text></text>/browse fill <value></value>— interagir en utilisant les références issues de la capture instantanéebrowse snapshot— confirmer que l'action a fonctionné- Répéter 3-4 si nécessaire
browse stop— fermer le navigateur une fois terminé
Exemple rapide
browse open https://example.com
browse snapshot # voir la structure de la page + les références d'éléments
browse click @0-5 # cliquer sur l'élément ayant la référence 0-5
browse get title
browse stop
Comparaison des modes
| Fonctionnalité | Local | Browserbase |
|---|---|---|
| Vitesse | Plus rapide | Légèrement plus lent |
| Configuration | Chrome requis | Clé API requise |
| Réutilisation des cookies locaux existants | Avec `browse open | N/A |
| Navigateur vérifié | Non | Oui (navigateur vérifié Browserbase via l'Identité) |
| Résolution de CAPTCHA | Non | Oui (reCAPTCHA/hCaptcha automatique) |
| Proxies résidentiels | Non | Oui (201 pays, ciblage géographique) |
| Persistance de session | Non | Oui (cookies/auth persistants via les contextes) |
| Idéal pour | Développement/pages simples | Sites protégés, Identité Browserbase + accès vérifié, extraction de données en production |
Meilleures pratiques
- Choisissez la stratégie locale délibérément : utilisez
browse open <url> --local</url>pour un état propre,browse open <url> --auto-connect</url>pour les identifiants locaux existants, etbrowse open <url> --remote</url>pour les sites protégés - Toujours exécuter
browse openen premier avant d'interagir - Utiliser
browse snapshotpour vérifier l'état de la page — c'est rapide et vous fournit les références d'éléments - Prendre une capture d'écran uniquement lorsque le contexte visuel est nécessaire (vérifications de mise en page, images, débogage)
- Utiliser les références issues de la capture instantanée pour cliquer/interagir — par ex.,
browse click @0-5 browse stopune fois terminé pour nettoyer la session du navigateur et effacer la surcharge d'environnement
Dépannage
- "Aucune page active" : Exécutez
browse stop, puis vérifiezbrowse status. Si cela indique toujours "en cours d'exécution", tuez le daemon zombie avecpkill -f "browse.*daemon", puis réessayezbrowse open - Chrome introuvable : Installez Chrome, utilisez
browse open <url> --auto-connect</url>si vous avez déjà un Chrome débogable en cours d'exécution, ou passez àbrowse open <url> --remote</url> - Échec de l'action : Exécutez
browse snapshotpour voir les éléments disponibles et leurs références - Échec de Browserbase : Vérifiez que la clé API est définie
Passage au mode distant
Passez au mode distant lorsque vous détectez : des CAPTCHA (reCAPTCHA, hCaptcha, Turnstile), des pages de détection de robots ("Vérification de votre navigateur..."), des erreurs HTTP 403/429, des pages vides sur des sites qui devraient contenir du contenu, ou si l'utilisateur le demande.
Ne passez pas au mode distant pour les sites simples (docs, wikis, APIs publiques, localhost).
browse open <url> --local # navigateur local propre et isolé
browse open <url> --auto-connect # se connecter à un Chrome débogable existant
browse open <url> --remote # session Browserbase
</url></url></url>Les indicateurs de mode sont appliqués au démarrage d'une session. Après browse stop, le démarrage suivant revient à la détection automatique basée sur les variables d'environnement. Utilisez browse status pour inspecter le mode résolu et la cible pendant que le daemon est en cours d'exécution.
Pour des exemples détaillés, consultez EXAMPLES.md. Pour la référence de l'API, consultez REFERENCE.md.
---
name: browser
description: Automate web browser interactions using natural language via CLI commands. Supports local and remote Browserbase sessions with CAPTCHA solving, residential proxies, and session persistence.
license: MIT
---
# Browser Automation
Automate browser interactions using the browse CLI with Claude.
## Setup check
Before running any browser commands, verify the CLI is available:
```bash
which browse || npm install -g browse
```
## Environment Selection (Local vs Remote)
The CLI supports explicit per-command environment flags. If you do nothing, the next session defaults to Browserbase when `BROWSERBASE_API_KEY` is set and to local otherwise.
### Local mode
- `browse open <url> --local` starts a clean isolated local browser
- `browse open <url> --auto-connect` attaches to an already-running debuggable Chrome; use `--local` when no debuggable Chrome is available
- `browse open <url> --cdp <port|url>` attaches to a specific CDP target
- Best for: development, localhost, trusted sites, and reproducible runs
### Remote mode (Browserbase)
- `browse open <url> --remote` starts a Browserbase session
- Without a local flag, Browserbase is also the default when `BROWSERBASE_API_KEY` is set
- Provides: Browserbase Identity, Verified browsers, automatic CAPTCHA solving, residential proxies, session persistence
- **Use remote mode when:** the target site has bot detection, CAPTCHAs, IP rate limiting, Cloudflare protection, or requires geo-specific access
- Get credentials at https://browserbase.com/settings
### When to choose which
- **Repeatable local testing / clean state**: `browse open <url> --local`
- **Reuse your local login/cookies**: `browse open <url> --auto-connect`
- **Simple browsing** (docs, wikis, public APIs): local mode is fine
- **Protected sites** (login walls, CAPTCHAs, anti-scraping): use remote mode
- **If local mode fails** with bot detection or access denied: switch to remote mode
## Commands
Most driver commands work across local, remote, and CDP sessions after the daemon starts.
### Navigation
```bash
browse open <url> # Go to URL
browse open <url> --local # Go to URL in a clean local browser
browse open <url> --remote # Go to URL in a Browserbase session
browse reload # Reload current page
browse back # Go back in history
browse forward # Go forward in history
```
### Page state (prefer snapshot over screenshot)
```bash
browse snapshot # Get accessibility tree with element refs (fast, structured)
browse screenshot --path <path> # Take visual screenshot (slow, uses vision tokens)
browse get url # Get current URL
browse get title # Get page title
browse get text <selector> # Get text content (use "body" for all text)
browse get html <selector> # Get HTML content of element
browse get value <selector> # Get form field value
```
Use `browse snapshot` as your default for understanding page state — it returns the accessibility tree with element refs you can use to interact. Only use `browse screenshot` when you need visual context (layout, images, debugging).
### Interaction
```bash
browse click <ref> # Click element by ref from snapshot (e.g., @0-5)
browse type <text> # Type text into focused element
browse fill <selector> <value> # Fill input; add --press-enter if Enter is needed
browse select <selector> <values...> # Select dropdown option(s)
browse press <key> # Press key (Enter, Tab, Escape, Cmd+A, etc.)
browse mouse drag <fromX> <fromY> <toX> <toY> # Drag from one point to another
browse mouse scroll <x> <y> <deltaX> <deltaY> # Scroll at coordinates
browse highlight <selector> # Highlight element on page
browse is visible <selector> # Check if element is visible
browse is checked <selector> # Check if element is checked
browse wait <type> [arg] # Wait for: load, selector, timeout
```
### Session management
```bash
browse stop # Stop the browser daemon
browse status # Check daemon status and resolved mode
browse tab list # List all open tabs
browse tab switch <index-or-target-id> # Switch to tab by index or target ID
browse tab close [index-or-target-id] # Close tab
```
### Typical workflow
If the environment matters, put `--local`, `--remote`, `--auto-connect`, or `--cdp <port|url>` on the first browser command.
1. `browse open <url> --local` or `browse open <url> --remote` — navigate to the page
2. `browse snapshot` — read the accessibility tree to understand page structure and get element refs
3. `browse click <ref>` / `browse type <text>` / `browse fill <selector> <value>` — interact using refs from snapshot
4. `browse snapshot` — confirm the action worked
5. Repeat 3-4 as needed
6. `browse stop` — close the browser when done
## Quick Example
```bash
browse open https://example.com
browse snapshot # see page structure + element refs
browse click @0-5 # click element with ref 0-5
browse get title
browse stop
```
## Mode Comparison
| Feature | Local | Browserbase |
|---------|-------|-------------|
| Speed | Faster | Slightly slower |
| Setup | Chrome required | API key required |
| Reuse existing local cookies | With `browse open <url> --auto-connect` | N/A |
| Verified browser | No | Yes (Browserbase Verified browser via Identity) |
| CAPTCHA solving | No | Yes (automatic reCAPTCHA/hCaptcha) |
| Residential proxies | No | Yes (201 countries, geo-targeting) |
| Session persistence | No | Yes (cookies/auth persist via contexts) |
| Best for | Development/simple pages | Protected sites, Browserbase Identity + Verified access, production scraping |
## Best Practices
1. **Choose the local strategy deliberately**: use `browse open <url> --local` for clean state, `browse open <url> --auto-connect` for existing local credentials, and `browse open <url> --remote` for protected sites
2. **Always `browse open` first** before interacting
3. **Use `browse snapshot`** to check page state — it's fast and gives you element refs
4. **Only screenshot when visual context is needed** (layout checks, images, debugging)
5. **Use refs from snapshot** to click/interact — e.g., `browse click @0-5`
6. **`browse stop`** when done to clean up the browser session and clear the env override
## Troubleshooting
- **"No active page"**: Run `browse stop`, then check `browse status`. If it still says running, kill the zombie daemon with `pkill -f "browse.*daemon"`, then retry `browse open`
- **Chrome not found**: Install Chrome, use `browse open <url> --auto-connect` if you already have a debuggable Chrome running, or switch to `browse open <url> --remote`
- **Action fails**: Run `browse snapshot` to see available elements and their refs
- **Browserbase fails**: Verify API key is set
## Switching to Remote Mode
Switch to remote when you detect: CAPTCHAs (reCAPTCHA, hCaptcha, Turnstile), bot detection pages ("Checking your browser..."), HTTP 403/429, empty pages on sites that should have content, or the user asks for it.
Don't switch for simple sites (docs, wikis, public APIs, localhost).
```bash
browse open <url> --local # clean isolated local browser
browse open <url> --auto-connect # attach to existing debuggable Chrome
browse open <url> --remote # Browserbase session
```
Mode flags are applied when a session starts. After `browse stop`, the next start falls back to env-var-based auto detection. Use `browse status` to inspect the resolved mode and target while the daemon is running.
For detailed examples, see [EXAMPLES.md](EXAMPLES.md).
For API reference, see [REFERENCE.md](REFERENCE.md).
Installer browser
Téléchargez et extrayez les fichiers de compétences dans votre répertoire .claude/skills/.
Télécharger le ZIPClonez le dépôt et copiez les fichiers de compétence dans votre projet.
git clone https://github.com/browserbase/skills/tree/main/skills/browser # Copy SKILL.md to your .claude/skills/ directory
Copier





Maison
