Esegui automaticamente tanti test del browser in parallelo con il tuo agente AI
Playwright MCP guida il browser una tool call alla volta: lento e pesante sui token. Ora Claude Code o Codex eseguono l'intero test in ego (lite) con poche righe di codice: 2,4 volte più veloce, con tanti test in parallelo, ciascuno nel suo Space.
Esegui test del browser semplicemente chiedendo
Ad esempio, chiedo a Codex di controllare se questo sito e-commerce ha bug. Codex esegue tutto il test, corregge i bug e mi dice il risultato. L'unica cosa che devo fare io è scrollare TikTok e guardarlo lavorare.
La stessa pagina passa da rotta a corretta, davanti ai tuoi occhi
Le pagine prodotto si vedono rotte. L'agente le guarda in ego (lite), corregge il CSS nel codice sorgente e la pagina aperta si ridisegna correttamente sullo schermo.
Test del browser a velocità fulminea con ego (lite)
Il vecchio modo di eseguire test del browser è usare Playwright MCP o Chrome DevTools MCP, che procedono una tool call alla volta: ogni passaggio successivo aspetta che il modello legga l'ultimo risultato, lento e costoso. Ora gli agenti possono eseguire tanti passaggi in un solo blocco di codice JS con ego (lite), quindi finiscono più in fretta e costano meno token.
| ego (lite) | Playwright MCP | Chrome DevTools MCP | |
|---|---|---|---|
| Come lo guida l'agente | Attraverso /ego-browser la skill | Server MCP esterno. Una tool call per ogni azione. | Server MCP esterno. Una tool call per ogni azione. |
| Setup | Nessun setup, funziona con qualsiasi agente. | install via npx, modalità di avvio da configurare, errori frequenti di avvio e di rilevamento di Chrome. | Debug remoto, user-data-dir, setup cross-host. |
| Consumo di token | Basso. Nessuno schema di tool MCP, e nel contesto entra solo ciò che l'agente registra: uno snapshot per passata, non uno dopo ogni azione. | Alto. Gli utenti segnalano una crescita dei token di 6 volte e overflow del contesto a 200.000 token. | Alto. Gli screenshot costano molti token. |
| Stato di accesso | Il tuo stesso browser autenticato. Identico allo stato di accesso del tuo Chrome | Browser isolato di default; per portarsi dietro gli accessi serve la modalità estensione o un setup di storage-state. | Può collegarsi, ma ti occupa le schede che stai usando. |
| iframe / shadow DOM / widget SDK | Il suo snapshot di pagina è integrato nel motore di rendering, quindi legge dentro tutti loro. | Lo snapshot di accessibilità ha un punto cieco sugli iframe. | DOM grezzo, te la gestisci tu. |
| Console / rete / trace | Console, rete e trace, letti direttamente dai dati di Chrome DevTools. | Console, rete, screenshot. | Il più approfondito: Lighthouse, performance, memoria. |
| Stabilità dei locator | Si ancora alle etichette semantiche e resiste ai cambi di classe. | Ref / accessibilità, abbastanza stabile. | Selettori DOM grezzi. |
| CAPTCHA / rilevamento bot | Sessione umana reale, la meno probabile a far scattare un blocco. | Browser separato / headless, spesso segnalato come bot. | Meglio se collegato al browser esistente, ma ti occupa le schede. |
| Task in parallelo | Pensato per eseguire più task insieme grazie agli Space. | Una sessione per server; le esecuzioni parallele richiedono gestire istanze isolate aggiuntive. | Istanza singola, un numero alto di schede la fa crashare. |
L'attrito non è mai stato il browser. Era lo strato in mezzo.
Sui forum di sviluppatori e negli issue tracker, le lamentele riguardano soprattutto l'MCP: è lo strato tra l'agente e il browser, e la connessione cade, le approvazioni si accumulano, la sessione si rompe, i token esplodono. ego (lite) ha già tutto configurato, quindi niente più errori strani.
Il browser funziona. La connessione al browser no.
- Connessione: i tool compaiono ma l'agente non li chiama, l'esecuzione si blocca su "in attesa di approvazione" e lo stesso server si comporta diversamente in ogni client
- Approvazioni: un popup per ogni tool call, spesso da 10 a 30 in un solo task, anche con "esegui tutto" attivo
- Affidabilità: un task che finisce a metà, o una navigazione già riuscita che va comunque in timeout
Nessun intermediario: ego (lite) è il browser stesso
- Stabile per progettazione: l'agente parla direttamente con un browser locale che possiede, senza un trasporto MCP in mezzo che possa cadere o bloccarsi
- Meno approvazioni: un solo passaggio esegue tanti step invece di una tool call per azione
- Prevedibile: si integra con qualsiasi agente AI, sempre nello stesso modo
Nessuno script di test. Nessun selettore da mantenere. Basta dire cosa controllare.
Playwright, Cypress, Selenium: scrivi tu il test, mantieni tu i selettori, e una classe rinominata o un layout riorganizzato li rompe. ego (lite) riceve un controllo in linguaggio naturale e trova gli elementi in base al loro significato, quindi un cambio di UI non rompe il test.
Scrivi tu la spec, mantieni tu i selettori
- Scrivi a mano e versiona una
.specper ogni flusso che vuoi coprire - Fissa dei selettori come
page.click(".btn-x7f3")che si rompono al prossimo cambio di UI - Devi aggiungere attese e retry per combattere l'instabilità da solo
- Devi costruire un'automazione di login o file di storage-state per testare dietro un accesso
- Devi rieseguire e riparare la suite dopo ogni redesign
Basta dire cosa controllare
- Nessuna spec da scrivere: descrivi il controllo al tuo agente in una frase
- Trova gli elementi in base al loro significato, non a una classe CSS, quindi una rinomina o un riordino non rompe nulla
- Attese intelligenti per i contenuti asincroni, niente sleep scritti a mano
- Testa dietro il tuo accesso senza automazione del login
- Serve un test di regressione visiva? L'agente confronta gli screenshot
Per una suite versionata e headless che gira da sola in CI, o per testare su Firefox e WebKit, tieni Playwright. ego (lite) è il ciclo rapido, senza script, da usare mentre sviluppi.
Come gli agenti AI guidano ego (lite)
L'agente guida il browser scrivendo un unico programma JavaScript completo. Una sola chiamata raggruppa ogni passaggio, apri il negozio, aggiungi un prodotto, attendi il checkout, e li esegue in sequenza dentro il browser: l'agente non aspetta mai il ritorno di un'azione prima di inviare la successiva.
Gestisce ciò che di solito rende instabili i test del browser
Abbiamo provato gli scenari che gli sviluppatori considerano più difficili da automatizzare. Con ego (lite), gli agenti li hanno gestiti tutti. Il suo snapshot semantico viene generato dentro il motore di rendering di Chromium, quindi vede shadow root e iframe cross-document dove gli script iniettati non arrivano.
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.
E un clic che finisce su un pulsante coperto o disabilitato viene segnalato come fallimento, non come falso positivo: esattamente come farebbe un vero framework di test.
Il tuo browser autenticato, sempre sotto il tuo controllo
Lasciare un agente libero nel browser in cui sei autenticato è una preoccupazione legittima. Ecco dove sono i confini.
Lavora nel suo Space dedicato
L'agente lavora in un'area di lavoro separata dentro il browser. Condivide i tuoi accessi, ma le tue schede e finestre restano intatte.
Ogni passaggio è visibile
Un browser vero, con interfaccia visibile, sul tuo Mac: non un processo headless nascosto. Guarda l'esecuzione in diretta e interrompila dalla CLI del tuo agente in qualsiasi momento.
Niente lascia il tuo Mac
Cronologia, cookie e sessioni restano sul tuo computer. ego (lite) non li carica online.
E quando un flusso ha effetti collaterali reali, un checkout che addebita davvero o una delete che elimina davvero, punta l'agente su localhost o staging, esattamente come faresti testando a mano.
Come si usa, passo dopo passo
Test di web app in tre passaggi: punta il tuo agente su localhost o su qualsiasi URL, digli cosa controllare e leggi cosa è andato storto.
Un browser Chromium che usi ogni giorno. Un clic importa i tuoi accessi da Chrome, così l'agente testa con la tua stessa identità.
Cosa dovrebbe testare?
/ego-browser Apri localhost:3000, completa il checkout e dimmi cosa è rotto
Scrivi /ego-browser e digli semplicemente cosa controllare, in qualsiasi lingua il tuo agente capisca.
| Pagina | Risultato |
|---|---|
| /checkout | OK |
| /product/gift-card | errore di console |
| /product/camera | immagine 404 |
Ogni pagina rotta torna con l'errore di console o la richiesta fallita che la spiega, non solo un pass o un fail.
Dove ego (lite) è adatto e dove non lo è
Pensato per il ciclo rapido di sviluppo: riproduci, debugga e verifica mentre scrivi codice.
I punti forti di ego (lite)
Il ciclo rapido di sviluppo, in un browser vero.
- Riproduci e debugga un bug in un browser vero e già autenticato
- Testa flussi dietro un accesso senza automazione del login
- Legge errori di console, richieste fallite e stato della pagina
- Esegui controlli esplorativi su tante pagine in parallelo
- Verifica una correzione nella stessa sessione in cui hai trovato il bug
Quando conviene usare Playwright
Chiaro sui suoi limiti.
- Suite di regressione headless che girano da sole in CI (ego (lite) è un browser Mac con interfaccia visibile)
- Test su Firefox e WebKit (ego (lite) si basa su Chromium)
- Una suite di test deterministica e versionata, che committi e mantieni tu
Dai al tuo agente un browser vero in cui testare
Scarica ego (lite) per MacFAQ
No. Usi un agente AI che già conosci, come Claude Code, OpenAI Codex o Cursor, e gli dici cosa controllare in linguaggio naturale. L'agente scrive ed esegue i passaggi nel browser per te. Non ci sono file .spec da mantenere né selettori CSS da scrivere a mano, perché ego (lite) individua gli elementi da uno snapshot semantico della pagina.
Playwright MCP è un server MCP che il tuo agente guida con una tool call per azione, quindi un task di quindici passaggi significa quindici andirivieni verso il modello: lento e dispendioso in token. ego (lite) è il browser stesso: l'agente scrive un breve script JavaScript che esegue molti passaggi in un colpo solo, sul tuo browser vero e già autenticato. Nel nostro test, sullo stesso task in Claude Code con Opus 4.8, ego (lite) ha finito in circa 18 secondi con 2 andirivieni al modello contro circa 43 secondi e 9 andirivieni per Playwright MCP. Esegue anche molti task di test in parallelo, ciascuno nel suo Space, cosa che un singolo browser MCP non può fare.
Sì, ed è qui che si distingue davvero. ego (lite) è il tuo browser di ogni giorno, già autenticato, quindi l'agente testa dashboard, pannelli admin interni e flussi account senza che tu debba prima costruire un'automazione di login. Comportandosi come una vera sessione umana, ha anche molte meno probabilità di far scattare CAPTCHA o il rilevamento bot rispetto a un browser headless o appena avviato.
Ogni task gira nel suo Space, un'area di lavoro separata dentro lo stesso browser, come finestre extra dello stesso profilo. Gli Space condividono i tuoi accessi ma mantengono pagine proprie, quindi le esecuzioni parallele non si scontrano tra loro né con le schede su cui stai lavorando. Per un sito web sembra un solo utente autenticato con più schede aperte. Se la tua app permette una sola sessione attiva per account, esegui quei flussi uno alla volta oppure usa un account di test.
Sì, nel senso che l'agente cattura uno screenshot di base e uno nuovo, li confronta pixel per pixel e ti dice cosa è cambiato e dove. È l'agente a fare il confronto nel tuo browser, non un prodotto separato di visual testing da configurare: niente Percy o Chromatic da collegare. Per un servizio di baseline gestito con workflow di revisione e gating in CI, resta più adatto uno strumento dedicato di visual testing.
Non ancora. ego (lite) è un browser vero, con interfaccia visibile, sul tuo Mac, pensato per testare mentre sviluppi: riprodurre un bug, debuggarlo, verificare la correzione, controllare le tue pagine. Per una suite headless che gira da sola in CI, o per testare su Firefox e WebKit, tieni la tua suite Playwright. ego (lite) è il ciclo rapido di sviluppo, non il runner di CI.
Problemi funzionali e di runtime che un utente reale incontrerebbe: un flusso che si rompe, un pulsante che non fa nulla, un errore JavaScript non gestito, una richiesta di rete fallita, un errore di console, un valore sbagliato. L'agente legge lo stato della pagina insieme a console e rete, quindi riporta cosa è andato storto e dove, non solo un verde o un rosso.
L'agente lavora nel suo Space, quindi le tue schede e finestre restano intatte, e tutto succede in una finestra del browser vera e visibile, che puoi guardare e interrompere in ogni momento dalla CLI del tuo agente. I tuoi dati di navigazione restano sul tuo computer: ego (lite) non carica la tua cronologia, i cookie o le sessioni. Per i flussi con effetti collaterali reali, come un checkout che addebita davvero, punta l'agente su localhost o staging, esattamente come faresti testando a mano. Se collegate un agente o un provider di modelli esterno, quel provider applica la propria policy sui dati.