
Trasforma qualsiasi app web in un'API. L'estensione Chrome cattura il traffico del browser, genera automaticamente schemi, permette all'AI di riprodurre le API direttamente. Nessuna API ufficiale necessaria.
Trasforma qualsiasi app web in un'API. Non serve un'API ufficiale. Nessuna automazione del browser.
Neo è un'estensione Chrome che cattura passivamente ogni chiamata API che il tuo browser effettua, impara gli schemi e permette all'AI (o a te) di riprodurle direttamente.
Gli agenti AI che operano su app web oggi hanno due opzioni, entrambe pessime:
| Approccio | Problema |
|---|---|
| API ufficiali | La maggior parte dei SaaS non ne ha una, o espone solo il 10% delle funzionalità |
| Automazione del browser | Screenshot → OCR → click. Lento, fragile, si rompe ad ogni modifica dell'interfaccia |
Neo è la terza via. Ogni app web ha già una API interna completa — il frontend la chiama ogni volta che clicchi qualcosa. Neo cattura queste chiamate e le rende riproducibili.
v2: Ora con automazione dell'interfaccia utente. Neo v2 aggiunge un livello UI basato sull'albero di accessibilità — snapshot, click, fill, type, press, hover, scroll, select, screenshot, get, wait. Quando un'API esiste, la usa direttamente. Quando non esiste, Neo può guidare l'interfaccia tramite la stessa CLI. Un unico strumento, entrambi i livelli.
Browse normally → Neo records all API traffic → Schema auto-generated → AI replays APIs directly
→ Or drives UI via a11y tree
L'estensione Chrome intercetta ogni fetch() e XMLHttpRequest — URL, header, corpo della richiesta/risposta, tempistiche, persino quale elemento DOM ha innescato la chiamata.
Esegui neo-schema su un dominio per generare automaticamente la sua mappa API: endpoint, header di autenticazione richiesti, parametri query, struttura della risposta, codici di errore.
Esegui chiamate API nel contesto della scheda del browser tramite Chrome DevTools Protocol. Cookie, token CSRF, autenticazione di sessione — tutto ereditato automaticamente. Nessuna gestione token necessaria.
| Browser | Tipo | Migliore per |
|---|---|---|
| Chrome / Chromium | Browser completo | Cattura API + automazione UI (predefinito) |
| Lightpanda | Headless (Zig) | Agenti AI, scraping — 11x più veloce, 9x meno memoria |
git clone https://github.com/4ier/neo.git
cd neo && npm install && npm run build
npm link # rende `neo` disponibile globalmente
Carica l'estensione:
chrome://extensionsextension/dist/# Installa Lightpanda
curl -L -o lightpanda https://github.com/lightpanda-io/browser/releases/download/nightly/lightpanda-x86_64-linux
chmod +x lightpanda && sudo mv lightpanda /usr/local/bin/
# Configura Neo per usare Lightpanda
# In ~/.neo/config.json:
# { "chromePath": "/usr/local/bin/lightpanda", "browserType": "lightpanda", "cdpPort": 9222 }
neo start # avvia il server CDP di Lightpanda
neo connect # collegati
neo open https://example.com
neo snapshot # albero di accessibilità completo
Tutti i comandi passano attraverso una singola CLI: neo <comando>.
Richiede un browser con CDP (Chrome DevTools Protocol) abilitato.
# --- Connessione e Sessioni ---
neo connect [port] # Connetti a CDP, salva sessione
neo connect --electron <app-name> # Scopri automaticamente la porta CDP dell'app Electron
neo launch <app> [--port N] # Avvia app Electron con CDP abilitato
neo discover # Trova endpoint CDP raggiungibili su localhost
neo sessions # Elenca sessioni salvate
neo tab # Elenca target CDP nella sessione attiva
neo tab <index> | neo tab --url <pattern> # Cambia target della scheda attiva
neo inject [--persist] [--tab pattern] # Inietta script di cattura Neo nel target
# --- Cattura e Traffico ---
neo status # Panoramica dei dati catturati
neo capture summary # Riepilogo rapido
neo capture list github.com --limit 10 # Mostra ID per replay/dettaglio
neo capture list --since 1h # Filtrato per tempo
neo capture domains
neo capture search "CreateTweet" --method POST
neo capture watch x.com # Live tail (come tail -f)
neo capture stats x.com # Analisi metodo/stato/tempo
neo capture export x.com --since 2h > x.json
neo capture export x.com --format har > x.har # HAR 1.2 per Postman/devtools
neo capture import x-captures.json
neo capture prune --older-than 7d
neo capture gc x.com [--dry-run] # Deduplica intelligente
# --- Replay ed Esecuzione API ---
neo replay <capture-id> --tab x.com # Riproduci una chiamata catturata
neo exec <url> --method POST --body '{...}' --tab example.com --auto-headers
neo api x.com HomeTimeline # Chiamata intelligente (ricerca schema + auto-auth)
# --- Schema e Analisi ---
neo schema generate x.com # Genera da catture
neo schema generate --all # Batch su tutti i domini
neo schema show x.com [--json]
neo schema openapi x.com # Esporta specifica OpenAPI 3.0
neo schema diff x.com # Modifiche rispetto alla versione precedente
neo schema coverage # Domini con/senza schema
neo label x.com [--dry-run] # Etichette semantiche degli endpoint
neo flows x.com [--window 5000] # Schemi di sequenza delle chiamate API
neo deps x.com [--min-confidence 1] # Dipendenze dati risposta→richiesta
neo workflow discover|show|run <name> # Scoperta e replay di workflow multi-step
neo suggest x.com # Analisi delle capacità dell'AI
neo export-skill x.com # Genera SKILL.md pronto per agenti
# --- Automazione UI (v2) ---
neo snapshot [-i] [-C] [--json] # Albero di accessibilità con mapping @ref
neo click @ref [--new-tab] # Clicca elemento per @ref
neo fill @ref "text" # Pulisci e riempi input
neo type @ref "text" # Aggiungi testo all'input
neo press <key> # Tasto tastiera (supporta Ctrl+a, Enter, ecc.)
neo hover @ref # Passa sopra l'elemento
neo scroll <dir> [px] [--selector css] # Scorri per direzione
neo select @ref "value" # Imposta valore dropdown
neo screenshot [path] [--full] [--annotate] # Cattura screenshot
neo get text @ref | neo get url | neo get title # Estrai informazioni
neo wait @ref | neo wait --load networkidle | neo wait <ms> # Aspetta elemento/carico/tempo
# --- Interazione con la pagina ---
neo read github.com # Estrai testo leggibile
neo eval "document.title" --tab github.com # Esegui JS nella pagina
neo open https://example.com # Apri URL
# --- Mock e Bridge ---
neo mock x.com [--port 8080 --latency 200] # Server mock dallo schema
neo bridge [--json] [--interactive] # Flusso di cattura WebSocket in tempo reale
# --- Diagnostica ---
neo doctor # Verifica Chrome, estensione, schemi
neo reload # Ricarica estensione dalla CLI
neo tabs [filter] # Elenca schede Chrome aperte
Neo non è solo per Chrome. Qualsiasi app con supporto CDP funziona — incluse le app Electron: