Exécutez automatiquement de nombreux tests de navigateur en parallèle avec votre agent IA
Playwright MCP pilote le navigateur un appel d’outil à la fois : c’est lent et gourmand en tokens. Avec quelques lignes de code, Claude Code ou Codex peut maintenant exécuter le test complet dans ego (lite), 2,4 fois plus vite, et lancer plusieurs tests en parallèle, chacun dans son propre Space.
Exécutez des tests de navigateur en demandant simplement
Par exemple, je demande à codex de vérifier si ce site e-commerce présente des bugs. Codex exécutera l'intégralité du test, corrigera tous les bugs et me dira le résultat. La seule chose que je dois faire est de faire défiler Tiktok et de le regarder fonctionner.
La même page va de cassée vers la droite, à l'écran
Les pages produit s’affichent de façon incorrecte. L’agent les examine dans ego (lite), corrige le CSS dans le code source, puis la page ouverte se réaffiche correctement à l’écran.
Exécutez des tests de navigateur à toute vitesse avec ego (lite)
La méthode traditionnelle repose sur Playwright MCP ou Chrome DevTools MCP, qui n’exécute qu’un appel d’outil à la fois. Chaque étape attend que le modèle lise le résultat précédent : le processus est lent et coûteux. Avec ego (lite), les agents exécutent plusieurs étapes en une seule passe de code JavaScript, terminent plus vite et consomment moins de tokens.
| ego (lite) | Playwright MCP | Chrome DevTools MCP | |
|---|---|---|---|
| Comment l'agent le conduit | Grâce à /ego-browser la compétence | Serveur MCP externe. Un appel d’outil par action. | Serveur MCP externe. Un appel d’outil par action. |
| Configuration | Aucune configuration, fonctionne avec n'importe quel agent. | installation de npx, modes de lancement à configurer, lancements fréquents et erreurs de découverte Chrome. | Débogage à distance, répertoire de données utilisateur, configuration entre hôtes. |
| Utilisation du token | Faible. Aucun schéma d'outil MCP, et uniquement ce que l'agent enregistre dans le contexte : un instantané par passe, pas un après chaque action. | Élevé. Les utilisateurs signalent une croissance des tokens 6x et des débordements de contexte de 200 000 tokens. | Élevé. Les captures d'écran coûtent cher en tokens. |
| État de connexion | Votre propre navigateur connecté. Identique à l'état de connexion de votre Chrome | Navigateur isolé par défaut ; transporter des connexions signifie un mode d'extension ou une configuration de l'état de stockage. | Peut s'attacher, mais saisit les onglets que vous utilisez. |
| widgets iframe / shadow DOM / SDK | Son instantané de page est intégré au moteur de rendu, il lit donc à l'intérieur de chacun d'eux. | L’instantané d’accessibilité présente un angle mort iframe. | Raw DOM, vous le gérez vous-même. |
| Console / réseau / trace | Console, réseau et traces, lus directement à partir des données Chrome DevTools. | Console, réseau, captures d'écran. | Le plus profond : Phare, performance, mémoire. |
| Stabilité du localisateur | S'ancre aux étiquettes sémantiques, survit aux changements de classe. | Réfs/accessibilité, assez stables. | Sélecteurs DOM bruts. |
| CAPTCHA / détection de robots | Véritable session humaine, la moins susceptible de la faire trébucher. | Navigateur séparé/sans tête, souvent signalé. | Mieux lorsqu'il est attaché, mais saisit vos onglets. |
| Tâches en parallèle | Né pour prendre en charge de nombreuses tâches exécutées simultanément via Spaces. | Une session par serveur ; les exécutions parallèles impliquent la gestion d’instances isolées supplémentaires. | Une seule instance, un grand nombre d'onglets fait planter. |
La friction n’a jamais été le navigateur. C'était la couche intermédiaire.
Sur les forums de développeurs et les outils de suivi, la plupart des plaintes concernent le MCP, la couche située entre l’agent et le navigateur : la connexion tombe, les validations s’accumulent, la session se rompt et la consommation de tokens explose. ego (lite) est déjà entièrement configuré, ce qui élimine ces erreurs étranges.
Le navigateur fonctionne. Ce n’est pas le cas du lien avec celui-ci.
- Connexion : les outils apparaissent mais l'agent ne les appelle pas, s'arrête en « attente d'approbation » et le même serveur se comporte différemment pour chaque client.
- Approbations : une popup par appel d'outil, souvent 10 à 30 dans une tâche, même avec « tout exécuter » activé
- Fiabilité : une tâche qui se termine à moitié, ou une navigation qui a déjà réussi mais qui expire toujours
Aucune couche intermédiaire : ego (lite) est le navigateur
- Stable de par sa conception : l'agent parle directement à un navigateur local qu'il possède, sans aucun transport MCP au milieu à supprimer ou à bloquer
- Moins d'approbations : une seule passe exécute plusieurs étapes au lieu d'un seul appel d'outil par action
- Prévisible : rendez-vous avec n'importe quel agent IA, de la même manière à chaque fois
Aucun script de test. Aucun sélecteur à maintenir. Dites simplement quoi vérifier.
Avec Playwright, Cypress ou Selenium, vous écrivez le test et maintenez les sélecteurs ; un renommage de classe ou une nouvelle mise en page suffit à tout casser. ego (lite) reçoit une consigne en langage naturel et repère les éléments selon leur sens, si bien qu’une modification de l’interface ne casse pas le test.
Vous rédigez la spécification, vous maintenez les sélecteurs
- Écriture manuscrite et version a
.specpour chaque flux que vous souhaitez couvrir - Sélecteurs de broches comme
page.click(".btn-x7f3")qui se briseront la prochaine fois que l'interface utilisateur changera - Ajoutez des attentes et des tentatives pour lutter vous-même contre la desquamation
- Créez des fichiers d'automatisation de connexion ou d'état de stockage pour tester derrière une connexion
- Réexécutez et réparez la suite après chaque refonte
Dites simplement ce qu'il faut vérifier
- Aucune spécification à rédiger : indiquez le chèque à votre agent en une phrase
- Localise les éléments par leur signification, et non par une classe CSS, donc un renommage ou un remaniement ne le brise pas
- Les attentes intelligentes gèrent le contenu asynchrone, pas de mise en veille manuelle
- Tests derrière votre connexion sans automatisation de connexion
- Besoin de tests de régression visuelle ? L'agent compare les captures d'écran
Pour une suite versionnée et sans interface qui s'exécute sans surveillance dans CI, ou pour des tests sur Firefox et WebKit, conserver Playwright. ego (lite) offre une boucle de développement rapide, sans aucun script à écrire.
Comment les agents IA pilotent ego (lite)
L'agent pilote le navigateur en écrivant un programme JavaScript complet. Un seul appel regroupe chaque étape : ouvrir le magasin, ajouter un produit, attendre le paiement et les exécuter en séquence dans le navigateur, de sorte que l'agent n'attend jamais le retour d'une action avant d'envoyer la suivante.
Il gère ce qui rend habituellement les tests du navigateur instables
Nous avons testé les scénarios que les développeurs jugent les plus difficiles à automatiser : avec ego (lite), les agents les ont tous réussis. Son Snapshot sémantique est généré dans le moteur de rendu Chromium lui-même ; il voit donc les Shadow Roots et les iframes interdocuments inaccessibles aux scripts injectés.
Shadow DOM
Acts inside web-component shadow roots, where injected scripts go blind.
Payment iframes
Fills card fields inside cross-document iframes, like a Stripe checkout.
Custom date pickers
Picks a date range in a custom calendar with no test ids.
Drag and drop
Real HTML5 drag: moves a kanban card, the board follows.
Infinite scroll
Scrolls a lazy feed until every item is loaded, no hand-tuned waits.
Paginated tables
Walks every page of an admin table and pulls each row.
Conditional modals
Cookie banners and dialogs that pop up mid-flow get handled, not tripped over.
Autocomplete
Types an address, waits for the suggestions, picks the right one.
Et un clic qui atterrit sur un bouton masqué ou désactivé est signalé comme un échec et non comme une fausse réussite, de la même manière qu'un véritable framework de test le traite.
Votre navigateur connecté, toujours sous votre contrôle
Laisser un agent se déchaîner dans le navigateur auquel vous êtes connecté est une bonne chose sur laquelle faire une pause. Voici où se situent les limites.
Il fonctionne dans son propre Space
L'agent s'exécute dans un espace de travail distinct à l'intérieur du navigateur. Il partage vos connexions, mais vos onglets et windows restent intacts.
Chaque étape est visible
Un vrai navigateur avec interface graphique sur votre Mac, et non un processus headless caché. Suivez l'exécution en direct et interrompez-la à tout moment depuis la CLI de votre agent IA.
Rien ne quitte votre Mac
L’historique, les cookies et les sessions restent sur votre ordinateur. ego (lite) ne les envoie pas sur nos serveurs.
Et lorsqu'un flux a de réels effets secondaires, une extraction qui facture ou une suppression qui supprime, pointez l'agent vers localhost ou staging, de la même façon que tu le testerais à la main.
Comment l'utiliser, étape par étape
Test d'application Web en trois étapes : dirigez votre agent vers localhost ou n'importe quelle URL, dites ce qu'il faut vérifier et relisez ce qui a échoué.
Un navigateur Chromium que vous utilisez quotidiennement. Un clic importe vos identifiants Chrome, afin que l'agent teste comme vous.
Que doit-il tester ?
/ego-browser Ouvrez localhost:3000, passez à la caisse et dites-moi ce qui est cassé
Tapez /ego-browser et dites simplement ce qu'il faut vérifier, dans n'importe quelle langue que votre agent comprend.
| Pages | Résultat |
|---|---|
| /checkout | D'accord |
| /product/gift-card | erreur de console |
| /product/camera | image 404 |
Chaque page cassée revient avec l'erreur de console ou l'échec de la demande qui l'explique, pas seulement une réussite ou un échec.
Quand utiliser ego (lite), et quand ne pas l’utiliser
Conçu pour la boucle interne rapide : reproduisez, déboguez et vérifiez pendant que vous développez.
Les points forts d’ego (lite)
La boucle interne, dans un vrai navigateur.
- Reproduire et déboguer un bug dans un vrai navigateur connecté
- Testez les flux derrière une connexion sans automatisation de connexion
- Lire les erreurs de la console, les requêtes ayant échoué et l'état de la page
- Exécutez des vérifications exploratoires sur plusieurs pages en parallèle
- Vérifiez un correctif dans la même session où vous avez trouvé le bug
Quand atteindre Playwright
Honnête à propos de la frontière.
- Suites de régression headless exécutées sans surveillance dans la CI (ego (lite) est un navigateur Mac avec interface)
- Tests sur Firefox et WebKit (ego (lite) repose sur Chromium)
- Une suite de tests versionnés et déterministes que vous validez et possédez
Donnez à votre agent un vrai navigateur pour tester
Télécharger ego (lite) pour MacFAQ
Non. Vous apportez un agent IA que vous utilisez déjà, tel que Claude Code, Codex ou Cursor, et lui dites quoi vérifier en langage clair. L'agent écrit et exécute les étapes du navigateur pour vous. Il n'y a pas de fichiers .spec à conserver ni de sélecteurs CSS à écrire manuellement, car ego (lite) localise les éléments à partir d'un instantané sémantique de la page.
Playwright MCP est un serveur MCP sur lequel votre agent pilote un appel d'outil par action, donc une tâche en quinze étapes signifie quinze allers-retours vers le modèle, qui est lent et brûle des tokens. ego (lite) est le navigateur lui-même : l'agent écrit une courte passe JavaScript qui exécute plusieurs étapes à la fois, sur votre véritable navigateur connecté. Dans notre test sur la même tâche en Claude Code avec l'Opus 4.8, ego (lite) s'est terminé en 18 secondes environ avec 2 allers-retours du modèle contre environ 43 secondes et 9 allers-retours pour Playwright MCP. Il exécute également de nombreuses tâches de test en parallèle, chacune dans son propre Space, ce qu'un seul navigateur MCP ne peut pas faire.
Oui, et c'est là que ça brille. ego (lite) est votre propre navigateur quotidien, déjà connecté, de sorte que l'agent teste les tableaux de bord, les panneaux d'administration internes et les flux de compte sans que vous ayez au préalable créé une automatisation de connexion. Parce qu'il se comporte comme une véritable session humaine, il est également beaucoup moins susceptible de déclencher des CAPTCHA ou la détection de robots qu'un navigateur sans tête ou fraîchement lancé.
Chaque tâche s'exécute dans son propre Spaces, un Spaces de travail distinct à l'intérieur du même navigateur, comme l'extra windows du même profil. Les Spaces partagent vos connexions mais conservent leurs propres pages, afin que les exécutions parallèles n'entrent pas en collision les unes avec les autres ou avec les onglets dans lesquels vous travaillez. Pour un site Web, cela ressemble à un utilisateur connecté avec plusieurs onglets ouverts. Si votre application n'autorise qu'une seule session active par compte, exécutez ces flux un par un ou utilisez un compte test.
Oui, dans le sens où l'agent capture une capture d'écran de base et une nouvelle, les compare pixel par pixel et vous indique ce qui a changé et où. C'est l'agent qui effectue la comparaison dans votre navigateur, et non un produit de test visuel distinct à configurer, il n'y a donc pas de Percy ou de Chromatic à connecter. Pour un service de base géré avec des flux de travail de révision et un contrôle CI, un outil de test visuel dédié reste la meilleure solution.
Pas aujourd'hui. ego (lite) est un véritable navigateur dirigé sur votre Mac, conçu pour tester pendant que vous développez : reproduisez un bug, déboguez-le, vérifiez le correctif, effectuez des vérifications sur vos pages. Pour une suite sans tête qui s'exécute sans surveillance dans CI, ou pour des tests sur Firefox et WebKit, conservez votre suite de tests Playwright. ego (lite) est la boucle interne rapide, pas le coureur CI.
Problèmes fonctionnels et d'exécution qu'un utilisateur réel rencontrerait : un flux qui s'interrompt, un bouton qui ne fait rien, une erreur JavaScript non interceptée, une requête réseau ayant échoué, une erreur de console, une valeur qui s'avère erronée. L'agent lit l'état de la page ainsi que la console et le réseau, de sorte qu'il signale ce qui a échoué et où, pas seulement un vert ou un rouge.
L'agent fonctionne dans son propre Space, de sorte que vos onglets et windows restent intacts, et tout se passe dans une fenêtre de navigateur réelle et visible que vous pouvez regarder et interrompre depuis la CLI de votre agent à tout moment. Vos données de navigation restent sur votre propre ordinateur : ego (lite) ne télécharge pas votre historique, vos cookies ou vos sessions. Pour les flux ayant de réels effets secondaires, comme un paiement qui facture réellement, pointez l'agent vers localhost ou staging, de la même manière que vous le feriez manuellement. Si vous connectez un agent externe ou un fournisseur de modèles, ce fournisseur dispose de sa propre stratégie de données.