Chez Emelia, nous construisons des outils de prospection B2B qui reposent sur l'automatisation intelligente : cold email, LinkedIn automation, enrichissement de donnees. Chez Bridgers, nous concevons des solutions IA pour nos clients. L'automatisation du navigateur est au coeur de ces deux activites. Quand un outil open source de 12 Mo promet de remplacer des frameworks de 500 Mo et de diviser par 13 le cout en tokens pour les agents IA, nous devons en parler.
PinchTab vient de surgir sur la scene de l'automatisation navigateur avec une promesse radicale : un seul binaire Go, zero dependance, et le controle complet de Chrome via une API HTTP. En quelques jours, le projet a accumule plus de 6 400 etoiles sur GitHub, un tweet viral a depasse les 230 000 vues, et les developpeurs qui construisent des agents IA commencent a migrer. Voici pourquoi.
PinchTab est un serveur HTTP autonome ecrit en Go qui lance Chrome et expose une API REST permettant a n'importe quel programme de naviguer sur le web, cliquer, taper, lire du contenu et persister des sessions. Le tout dans un binaire de 12 Mo.
Concretement, vous installez PinchTab, Chrome s'ouvre, vous vous connectez a vos sites, et vos agents IA prennent le relais. Pas de Playwright. Pas de Puppeteer. Pas de node_modules de 500 Mo. Juste des requetes HTTP.
L'architecture est volontairement minimaliste : un binaire, un Chrome, du HTTP en entree, du CDP (Chrome DevTools Protocol) en sortie. PinchTab fonctionne comme un pont entre vos agents et le navigateur, sans imposer de framework, de langage ou d'ecosysteme particulier.
La difference fondamentale entre PinchTab et les outils traditionnels tient en un mot : l'arbre d'accessibilite.
Quand un agent IA utilise Playwright ou Puppeteer pour "voir" une page web, il prend generalement une capture d'ecran, l'envoie a un modele de vision, et recoit une interpretation. Ce processus consomme entre 1 200 et 5 000 tokens par perception, selon les recherches publiees sur le sujet.
PinchTab adopte une approche radicalement differente. Au lieu de photographier la page, il expose l'arbre d'accessibilite du navigateur, cette structure simplifiee que les lecteurs d'ecran utilisent pour decrire le contenu aux utilisateurs malvoyants. L'arbre d'accessibilite ne contient que les elements porteurs de sens : boutons, liens, champs de formulaire, titres, avec leurs roles et leurs noms. Les divs decoratives, les conteneurs CSS et les elements caches sont elimines.
Le resultat est spectaculaire. Selon les benchmarks de Dataconomy, PinchTab consomme environ 800 tokens par page, contre 4 500 a 12 000 pour Playwright et plus de 10 000 pour Selenium. Sur des taches repetees avec contexte, PinchTab descend meme en dessous de 1 000 tokens.
Chaque element interactif recoit un identifiant stable (e0, e1, e5...). Pour cliquer sur un bouton, votre agent envoie simplement {"kind": "click", "ref": "e5"}. Pas de coordonnees a deviner, pas de selecteurs CSS fragiles, pas de XPath qui casse a chaque refonte.
Methode | Tokens par page |
|---|---|
Capture d'ecran + vision | 1 200 a 5 000 |
Playwright DOM complet | 4 500 a 12 000 |
Selenium | 10 000+ |
PinchTab (sans contexte prealable) | ~800 |
PinchTab (avec contexte) | < 1 000 |
Pour un agent qui effectue 10 interactions par tache, la difference est colossale. C'est 5 a 13 fois moins de tokens, ce qui se traduit directement en une facture LLM divisee d'autant.
L'architecture de PinchTab repose sur une idee simple : separer completement l'outil de controle du navigateur du framework de l'agent.
Playwright et Puppeteer sont des libraries. Vous les importez dans votre code Node.js (ou Python pour Playwright), elles installent leur propre version de Chromium (environ 250 Mo), et votre agent est lie a cet ecosysteme. Si vous changez de langage ou de framework d'agent, vous repartez de zero.
PinchTab est un serveur. Il ecoute sur le port 9867 et expose des endpoints JSON. N'importe quel programme capable d'envoyer une requete HTTP peut controler le navigateur :
```bash
# Lancer une instance Chrome INST=$(curl -s -X POST http://localhost:9867/instances/launch \ -H "Content-Type: application/json" \ -d '{"name":"travail","mode":"headless"}' | jq -r '.id')
# Ouvrir un onglet TAB=$(curl -s -X POST http://localhost:9867/instances/$INST/tabs/open \ -H "Content-Type: application/json" \ -d '{"url":"https://example.com"}' | jq -r '.tabId')
# Lire l'arbre d'accessibilite curl "http://localhost:9867/tabs/$TAB/snapshot?filter=interactive"
# Cliquer sur un element curl -X POST "http://localhost:9867/tabs/$TAB/action" \ -H "Content-Type: application/json" \ -d '{"kind":"click","ref":"e5"}' ```
L'API est volontairement reduite. Des GET en lecture seule pour les donnees, des POST pour les mutations. Le tout en JSON :
Methode | Endpoint | Description |
|---|---|---|
GET | /health | Etat de la connexion |
POST | /navigate | Aller a une URL |
POST | /action | Cliquer, taper, remplir, scroller |
GET | /find | Trouver des elements par texte ou selecteur |
GET | /text | Texte lisible (mode readability ou brut) |
GET | /snapshot | Arbre d'accessibilite |
GET | /screenshot | Capture JPEG |
GET | Export PDF |
Un agent Python peut utiliser PinchTab avec trois lignes de code :
```python import requests
# Naviguer vers une page requests.post("http://localhost:9867/navigate", json={"url": "https://example.com"})
# Lire le contenu snapshot = requests.get("http://localhost:9867/snapshot").json()
# Cliquer sur un bouton requests.post("http://localhost:9867/action", json={"kind": "click", "ref": "e5"}) ```
Cette approche framework-agnostic signifie que PinchTab fonctionne avec Python, TypeScript, Go, Rust, ou meme un simple script bash avec curl. Vous changez de modele IA ou de framework d'agent ? PinchTab reste le meme.
L'installation de Playwright implique generalement d'installer Node.js, puis le package npm, puis les navigateurs (environ 250 Mo de telechargement), souvent suivi d'une configuration Docker pour les environnements de production. PinchTab reduit cette friction a une seule ligne :
``bash curl -fsSL https://pinchtab.com/install.sh | bash ``
Vous pouvez aussi passer par npm :
``bash npm install -g pinchtab ``
Ou Docker :
``bash docker run -d \ --name pinchtab \ -p 127.0.0.1:9867:9867 \ -v pinchtab-data:/data \ --shm-size=2g \ pinchtab/pinchtab ``
Le binaire fait 12 Mo. Le temps de demarrage est inferieur a 100 millisecondes, contre environ 1,2 seconde pour Playwright et 2,5 secondes pour Selenium. C'est un detail qui compte quand votre agent lance des dizaines de sessions en parallele.
Le cas d'usage principal de PinchTab est clair : servir de couche navigateur pour les agents IA autonomes. Voici comment un agent typique utilise PinchTab dans la pratique.
Scenario : un agent de veille concurrentielle. Votre agent doit chaque matin se connecter a LinkedIn, consulter les profils de 10 concurrents, extraire leurs dernieres publications, et compiler un rapport.
Avec PinchTab, l'agent lance une instance avec un profil persistant (les cookies de connexion LinkedIn sont conserves entre les sessions). Il navigue vers chaque profil, lit l'arbre d'accessibilite pour identifier les publications, extrait le texte via l'endpoint /text, et passe au profil suivant. Le mode stealth masque les indicateurs d'automatisation (navigator.webdriver, User-Agent, Canvas fingerprint), ce qui reduit considerablement les risques de detection.
Scenario : automatisation e-commerce. Un agent doit verifier les prix de 50 produits sur un site concurrent. PinchTab lance plusieurs instances Chrome en parallele, chacune avec un profil isole, et distribue les 50 URL entre elles. Le verrouillage d'onglets (/tab/lock) empeche les collisions entre agents qui travaillent simultanement.
Scenario : remplissage de formulaires. L'agent identifie les champs de formulaire via l'arbre d'accessibilite (role: textbox, name: "Email"), les remplit avec l'action fill, et soumet avec press Enter. Pas besoin de deviner les coordonnees d'un bouton sur une capture d'ecran.
Comme l'a souligne un developpeur sur X : "PinchTab was the solution to all my automation problems. I simply told my agent to install and use PinchTab for all browser automations and it works like a dream."
Un des avantages les plus commentes de PinchTab est sa capacite a contourner les systemes anti-bot sans configuration supplementaire. Le mode stealth de PinchTab :
Masque navigator.webdriver (le signal classique qui trahit l'automatisation)
Usurpe le User-Agent pour mimer un navigateur reel
Falsifie les empreintes Canvas et WebGL
Propose des actions humanisees : humanClick (courbes de Bezier pour les mouvements de souris) et humanType (variation aleatoire du delai entre les frappes)
Playwright et Puppeteer necessitent des plugins tiers pour obtenir un niveau de stealth comparable (puppeteer-extra-plugin-stealth pour Puppeteer, playwright-extra pour Playwright). PinchTab l'integre nativement via la variable d'environnement BRIDGE_STEALTH.
Pour les professionnels de la prospection B2B qui utilisent l'automatisation LinkedIn, cette capacite native represente un avantage significatif.
PinchTab a connu une trajectoire fulgurante. Le compte GitHub Projects Community, suivi par plus de 305 000 personnes, a publie un tweet qui a atteint 230 000 vues et genere pres de 5 000 bookmarks :
Quelques jours plus tard, le compte Simplifying AI (25 000 abonnes) a amplifie le phenomene avec un thread qui a cumule 163 000 vues et 4 339 bookmarks :
Et le tweet de Brady Long (@thisguyknowsai) a depasse les 30 000 vues avec 546 bookmarks en quelques heures :
Le repo GitHub est passe de quelques centaines d'etoiles debut mars a plus de 6 400 en dix jours. PinchTab a figure dans les trending repositories de GitHub plusieurs jours consecutifs.
Comparons PinchTab aux alternatives disponibles :
Critere | PinchTab | Playwright | Puppeteer | Browser-Use |
|---|---|---|---|---|
Taille | 12 Mo (binaire Go) | ~250 Mo (Node + drivers) | ~200 Mo (Node + Chromium) | Cloud / SDK Python |
Dependances | Zero | Node.js, npm | Node.js, npm | Python, API key |
Detection bots | Stealth natif | Plugins tiers | Plugins tiers | Anti-detect cloud |
Instances paralleles | Natif, profils isoles | Contextes navigateur | Instances separees | Cloud scale |
Cout en tokens/page | ~800 | 4 500 a 12 000 | Similaire a Playwright | Variable |
Langages supportes | Tout (HTTP) | JS, Python, C#, Java | JavaScript | Python |
Temps de demarrage | < 100 ms | ~1,2 s | ~1 s | Variable (cloud) |
Complexite d'installation | 1 commande | npm + install navigateurs | npm + install Chrome | pip + API key |
Licence | MIT | Apache 2.0 | Apache 2.0 | Proprietaire (cloud) |
Etoiles GitHub | 6 400+ | 70 000+ | 89 000+ | 78 000+ |
Sessions persistantes | Natif | Manuel | Manuel | Cloud |
Navigateurs supportes | Chrome | Chrome, Firefox, WebKit | Chrome | Chrome (cloud) |
PinchTab ne cherche pas a remplacer Playwright pour les tests end-to-end multi-navigateurs. Son positionnement est different : fournir la couche navigateur la plus legere et la plus econome en tokens pour les agents IA.
L'honnetete impose de mentionner ce que PinchTab ne fait pas, ou pas encore.
Un seul navigateur. PinchTab ne supporte que Chrome/Chromium. Si votre workflow necessite des tests cross-browser (Firefox, Safari/WebKit), Playwright reste incontournable.
Pas de generation de code de test. Playwright propose un mode codegen qui enregistre vos actions et genere automatiquement du code de test. PinchTab ne fait pas cela. C'est un outil d'execution, pas un outil de creation de tests.
Ecarts de maturite. Playwright a 70 000 etoiles, des annees de production, et le soutien de Microsoft. PinchTab est un projet recent avec 21 contributeurs. La documentation est fonctionnelle mais moins exhaustive.
La qualite de l'arbre d'accessibilite varie. L'arbre d'accessibilite d'une page est aussi bon que son implementation HTML. Une application web mal structuree, avec des div cliquables au lieu de boutons semantiques, posera des problemes a PinchTab comme a tout outil base sur l'accessibilite.
Securite. PinchTab donne a vos agents le controle d'un navigateur reel avec vos sessions authentifiees. Si votre agent est mal configure ou compromis, il a acces a tous vos comptes connectes. Le token d'authentification (PINCHTAB_TOKEN) est indispensable en production.
Pas d'API cloud. Contrairement a Browser-Use qui propose une infrastructure cloud, PinchTab s'execute localement. Pour une mise a l'echelle massive, vous devrez gerer votre propre infrastructure.
Utilisez PinchTab si :
Vous construisez des agents IA qui doivent interagir avec le web
Vous voulez minimiser le cout en tokens de vos interactions navigateur
Vous travaillez avec plusieurs langages ou frameworks
Vous avez besoin de sessions persistantes et de stealth natif
Vous cherchez un outil leger, sans dependances lourdes
Restez sur Playwright si :
Vous faites du test end-to-end multi-navigateur
Vous avez besoin de la generation automatique de code de test
Votre equipe est deja investie dans l'ecosysteme Playwright
Vous avez besoin d'un support cross-browser (Firefox, WebKit)
Un aspect souvent sous-estime de PinchTab est la gestion des sessions. Quand vous vous connectez a un site via le navigateur Chrome de PinchTab, ces cookies et tokens d'authentification sont conserves entre les redemarrages. Vous vous connectez une fois a LinkedIn, Gmail ou votre CRM, et l'agent reutilise cette session indefiniment sans avoir a gerer le stockage de credentials.
L'orchestration multi-instances va plus loin. PinchTab peut lancer plusieurs processus Chrome en parallele, chacun avec son propre profil isole. Cela signifie que vous pouvez faire tourner un agent sur LinkedIn avec un profil, un autre sur un site e-commerce avec un profil different, et un troisieme sur un outil SaaS, le tout simultanement et sans interference.
Chaque instance dispose d'un identifiant unique, et les onglets peuvent etre verrouilles via l'endpoint /tab/lock pour eviter que deux agents ne tentent d'interagir avec le meme onglet au meme moment. Pour les architectures multi-agents, c'est une fonctionnalite critique.
PinchTab propose egalement un dashboard temps reel pour monitorer l'utilisation CPU, la memoire et l'etat des onglets actifs. Dans un contexte de production ou plusieurs dizaines d'instances tournent en parallele, cette visibilite est indispensable.
Enfin, PinchTab est optimise pour ARM64, ce qui en fait un candidat serieux pour les deploiements sur Raspberry Pi ou les serveurs edge. Un cluster de Raspberry Pi executant chacun PinchTab peut constituer une infrastructure d'automatisation distribuee a un cout derisoire.
L'emergence de PinchTab illustre une tendance de fond : les outils d'automatisation navigateur se scindent en deux categories. D'un cote, les frameworks de test (Playwright, Cypress, Selenium) optimises pour la fiabilite cross-browser et l'integration CI/CD. De l'autre, les ponts navigateur pour agents IA (PinchTab, mais aussi Vercel's agent-browser, WebClaw) optimises pour l'efficacite en tokens et l'integration avec les LLM.
Le choix n'est plus Playwright ou Puppeteer. La question est : construisez-vous un pipeline de tests ou un agent autonome ? Si c'est un agent, PinchTab merite votre attention.
Le projet est 100% open source sous licence MIT, disponible sur GitHub. Avec 6 400 etoiles en quelques semaines et une communaute qui grossit rapidement, PinchTab s'impose comme une brique essentielle de l'infrastructure des agents IA en 2026.

Aucun engagement, des prix pour vous aider à augmenter votre prospection.
Vous n'avez pas besoin de crédits si vous voulez simplement envoyer des emails ou faire des actions sur LinkedIn
Peuvent être utilisés pour :
Trouver Emails
Action IA
Trouver des Numéros
Vérifier des Emails