Immagine AI

Cloudflare ha reso disponibile come software open source Kitesurf, il proprio motore di navigazione sperimentale sviluppato specificamente per gli agenti di intelligenza artificiale, distribuendone il codice con licenza Apache 2.0. La piattaforma, presentata inizialmente il 6 agosto 2026 e successivamente aggiornata il 28 settembre con il supporto WebMCP, nuove funzionalità delle API browser e il rendering nel terminale, può essere eseguita localmente oppure distribuita direttamente attraverso Cloudflare Workers. A differenza delle tradizionali infrastrutture di automazione basate su Chrome o Chromium, Kitesurf non richiede l’avvio di un browser completo all’interno di un container. Il motore interpreta HTML e CSS, esegue JavaScript, costruisce la rappresentazione delle pagine e produce screenshot, esponendo un endpoint compatibile con Chrome DevTools Protocol (CDP). Questa interfaccia consente agli sviluppatori di collegare strumenti esistenti come Puppeteer e ambienti di orchestrazione per agenti AI, mantenendo un modello di controllo simile a quello utilizzato nell’automazione dei browser convenzionali. L’obiettivo progettuale di Cloudflare consiste nel ridurre il consumo di CPU e memoria associato alle sessioni browser e rendere più efficiente l’esecuzione contemporanea di numerose attività di navigazione automatizzata.

L’architettura di Kitesurf è suddivisa in componenti specializzati che combinano l’infrastruttura Cloudflare con librerie Rust compilate in WebAssembly. Il componente Engine coordina le sessioni browser e le connessioni dei client, PageScript gestisce l’esecuzione della pagina e del relativo codice JavaScript, mentre PageRenderer produce la rappresentazione visiva. Per l’elaborazione dei documenti HTML, la costruzione del DOM, il layout e il disegno delle pagine viene utilizzato Blitz; Stylo gestisce l’interpretazione dei fogli di stile CSS, le librerie Linebender forniscono funzionalità per il testo e la grafica bidimensionale, mentre Krilla permette la generazione di documenti PDF. Il motore JavaScript Boa costituisce un ambiente di esecuzione alternativo in WebAssembly per il codice che non può essere eseguito direttamente nei Dynamic Workers. Particolare attenzione è dedicata all’isolamento delle pagine, considerate input non attendibili: un worker dedicato, denominato SandboxOutbound, gestisce le richieste verso risorse esterne, applica le politiche di rete e mantiene separati i cookie delle diverse pagine. Gli altri componenti non dispongono di accesso diretto alla rete, riducendo le possibilità che il codice di una pagina interferisca con altre sessioni o risorse dell’infrastruttura.

La gestione dello stato costituisce un ulteriore elemento dell’architettura. Engine conserva le informazioni necessarie alla sessione, mentre gli altri componenti sono progettati, quando possibile, per essere sostituibili e privi di stato persistente. PageRenderer, in particolare, può essere riavviato o rimpiazzato quando una richiesta di rendering si blocca o termina con un errore, senza dover necessariamente ricostruire l’intera sessione di navigazione. Per lo sviluppo locale sono richiesti Bazelisk, Node.js 22 o successivo e pnpm 9.15.4. Il sistema di compilazione prepara i moduli WebAssembly e i bundle necessari all’esecuzione, avviando un’istanza locale all’indirizzo 127.0.0.1:8787. La prima compilazione comprende il nucleo Rust e le dipendenze, mentre quelle successive possono sfruttare la cache di Bazel. Per la distribuzione nell’infrastruttura Cloudflare è invece necessario un piano Workers Paid, poiché l’esecuzione delle pagine e dei renderer si basa sui Dynamic Workers.

La possibilità di ospitare autonomamente Kitesurf comporta specifiche responsabilità di sicurezza. Il motore non dispone di un sistema di autenticazione integrato e l’indirizzo workers.dev associato alla distribuzione è pubblicamente accessibile per impostazione predefinita. In assenza di Cloudflare Access o di un meccanismo equivalente, chiunque conosca l’indirizzo potrebbe utilizzare il browser remoto, collegare client CDP ed effettuare richieste attraverso l’account Cloudflare del gestore, consumando risorse CPU e Dynamic Workers a pagamento. La documentazione richiede quindi di configurare la protezione dell’accesso prima dell’esposizione pubblica dell’istanza. Kitesurf rimane inoltre un progetto sperimentale, non ancora equivalente a un’implementazione completa di Chrome: alcune funzioni del protocollo CDP non sono supportate e le limitazioni precedentemente dichiarate comprendono video, WebGL, procedure antibot dipendenti da impronte TLS reali e sessioni autenticate di lunga durata che richiedono stato persistente. Cloudflare sta concentrando lo sviluppo su compatibilità, affidabilità ed efficienza, accettando contributi attraverso un processo che prevede inizialmente l’apertura di una issue, la descrizione riproducibile del problema o della modifica proposta e la valutazione preliminare dei manutentori prima dell’invio di una pull request.

Questo articolo è stato redatto con il supporto di strumenti di intelligenza artificiale (AI)

Di Fantasy