Crowdin ha rilasciato in agosto una skill agent che porta un'app JavaScript da stringhe hardcoded a un progetto Crowdin connesso, e la settimana scorsa ne ha pubblicato una walkthrough. Siamo contenti che l'abbiano fatto. globalize.now è un'infrastruttura di localizzazione basata su IA, abbiamo skill agent che svolgono questo lavoro da marzo, e un'azienda fondata nel 2008 che arriva alla stessa progettazione è il segnale più chiaro finora che il problema è reale.

È anche un buon momento per confrontare onestamente i due approcci, perché finiscono in punti molto diversi. Il loro finisce con i tuoi file dentro un sistema di gestione delle traduzioni che poi devi gestire tu. Il nostro finisce con una pull request che contiene già le traduzioni.

Cosa ha rilasciato davvero Crowdin?

Quattro nuove skill agent, una CLI riscritta da zero e un plugin che le raggruppa insieme al loro server MCP. Il changelog di agosto, pubblicato il 4 settembre, elenca i18n-setup, glossary-generation, crowdin-cli e github-action. Si aggiungono alle skill per contesto e query API che Crowdin aveva aggiunto a crowdin/skills da febbraio.

La CLI 5.0 è l'ingegneria migliore di questo rilascio. È passata da Java a TypeScript, viene distribuita come binario singolo e stampa JSON leggibile da un agent. Crowdin la definisce "Built for AI agents", ed è corretto.

Il pezzo forte è i18n-setup. Il 16 settembre Crowdin ha pubblicato un video di sette minuti che la mostra in azione su Claude Code contro un piccolo sito di esempio.

Chi ha rilasciato cosa per primo?

Dipende cosa si conta, quindi abbiamo letto la storia dei commit di tutti e tre i repository. Lingui ha pubblicato le prime skill agent, in gennaio. La prima skill che configura l'i18n in un repo e avvolge le stringhe hardcoded è stata la nostra, il 29 marzo.

DataChiCosa
Luglio 2025CrowdinAnnuncio del server MCP
27 gennaio 2026Linguilingui/skills: skill di best practice per scrivere codice Lingui
20 febbraio 2026CrowdinCreazione di crowdin/skills, con skill per scrivere il contesto per i traduttori
29 marzo 2026globalize.nowglobalize-skills, primi commit: configurazione di Lingui, avvolgimento delle stringhe hardcoded, CSS RTL-safe
31 marzo 2026globalize.nowInizio dei lavori sul server MCP (annunciato il 9 luglio)
5 aprile 2026globalize.nowSkill orchestratore: rileva lo stack, consiglia una libreria, pianifica, configura, converte
Agosto 2026globalize.nowIl flusso in-app diventa quello predefinito: connetti un repo, ottieni una PR
14 agosto 2026LinguiAggiunta la skill di setup del framework
28 agosto 2026CrowdinCommit della skill orchestratore i18n-setup

Bisogna riconoscere il merito dove è dovuto: il server MCP di Crowdin è precedente alla nostra azienda, e il loro repository di skill è più vecchio del nostro di cinque settimane. Quelle prime skill Crowdin insegnavano a un agent a scrivere il contesto per i traduttori. Toccare il codice dell'applicazione è arrivato dopo. Le nostre skill di setup e avvolgimento delle stringhe risalgono al 29 marzo, e l'orchestratore che gestisce l'intero percorso al 5 aprile. L'equivalente di Crowdin è arrivato il 28 agosto, due settimane dopo che Lingui aveva aggiunto la skill di setup da cui dipende, con lo stesso schema di rilevamento, decisione, configurazione e avvolgimento.

Lo prendiamo come un complimento al design, non come una prova di copiatura. È la forma ovvia una volta accettata la premessa, e il video apre proprio con quella premessa: "Il prodotto può essere pronto per la produzione, ma questo non significa che sia pronto per la traduzione." Abbiamo fatto lo stesso ragionamento nel nostro primo articolo in marzo.

Anche altri fornitori, oltre a questi tre, hanno messo l'i18n dietro a un agent, quindi non stiamo rivendicando un primato mondiale.

Cosa fa la skill i18n-setup di Crowdin?

Esegue sette fasi dentro il tuo stesso coding agent e mantiene nel repo una checklist ripristinabile. Il file della skill è ben organizzato, e la walkthrough corrisponde a quanto descritto.

  1. Rilevamento. Analizza il repo per individuare il framework e qualsiasi libreria i18n già presente.
  2. Decisione. Chiede quali lingue vuoi e se procedere in modalità guidata o non guidata, poi scrive un plan.md.
  3. Configurazione. Installa e configura Lingui. Se hai già una libreria, mantiene la tua.
  4. Avvolgimento. Contrassegna le stringhe visibili all'utente ed estrae i file PO.
  5. Connessione. Crea un progetto Crowdin con la CLI e carica i file. Serve il tuo token Crowdin.
  6. Contesto. Legge il codice attorno a ogni stringa e scrive una nota per i traduttori. Suggerisce un glossario di partenza.
  7. CI. Installa un workflow GitHub in modo che le nuove stringhe vadano su Crowdin e le traduzioni ritornino indietro.

Un dettaglio che il video omette: la skill di Crowdin non esegue di persona le fasi 3 e 4. Il suo manifest le affida alle skill proprie di Lingui, che installi come secondo plugin. Il lavoro proprio di Crowdin inizia alla fase 5.

Alcune scelte sono ponderate. L'agent non vede mai il valore del tuo token, e la skill si ferma a chiedere quando qualcosa è ambiguo. Anche i limiti sono nel file. Le installazioni nuove sono solo Lingui e lo scope è JavaScript e TypeScript. I progetti già su i18next, next-intl o vue-i18n ottengono solo un percorso di connessione. Rifiuta Create React App e non ti farà migrare tra librerie.

Cosa lascia a te?

La traduzione, e tutto ciò che serve per farla avvenire. Rileggi le sette fasi: nessuna di esse produce una stringa tradotta.

È una scelta deliberata. Il file della skill elenca la traduzione automatica come componente aggiuntiva disattivata di default, con l'istruzione di "non tradurre mai automaticamente un progetto nuovo senza che venga richiesto". Se la attivi, l'agent può applicare solo la translation memory, e un progetto nuovo non ne ha. La traduzione automatica o basata su IA è consentita solo quando in Crowdin esiste già un motore o un prompt configurato.

Una volta che la skill ha finito, possiedi un progetto Crowdin, e devi conoscere Crowdin. Per ottenere traduzioni basate su IA apri il tuo profilo, attivi un provider con la tua chiave API o aggiungendo fondi a un saldo Crowdin, e crei un prompt. Poi esegui la pre-traduzione dall'editor, oppure dalla CLI usando l'ID del prompt appena creato, oppure attivi l'impostazione di traduzione automatica a livello di progetto. Dopo di che ci sono le approvazioni da gestire, poi una build, poi un download.

Tutto questo può essere automatizzato da chi già sa dove si trovano quelle impostazioni. Questo è il punto debole. L'agent ha svolto la parte che un developer capisce, per poi passare il testimone a un prodotto pensato per i responsabili della localizzazione. Nella walkthrough dello stesso Crowdin, il presentatore ottiene ancora le sue stringhe in cinese aprendo l'editor, cliccando su traduzione automatica e riportando il risultato indietro con la CLI.

Il server MCP di Crowdin non colma questa lacuna. I suoi set di strumenti documentati funzionano dentro un progetto già esistente, e nella documentazione non abbiamo trovato uno strumento di pre-traduzione o di creazione progetto. Questa è una lettura della documentazione, non un test di ogni singolo strumento.

In cosa è diverso globalize.now?

La conversione i18n e la traduzione sono lo stesso lavoro, e il risultato è una pull request. Non c'è nessun progetto da configurare a parte, perché non c'è nessuna parte.

Il percorso predefinito è nell'app. Ti registri, connetti GitHub o GitLab e scegli un repo. Una scansione decide cosa succede dopo. Se non c'è ancora l'i18n, aggiungiamo le fondamenta. Se usi già next-intl, react-i18next, i18next o Lingui, ci colleghiamo a quello che hai e lasciamo intatta la struttura dei tuoi file. Approvi il piano. La conversione e le traduzioni vengono poi eseguite in parallelo su un clone del tuo repo, nel nostro cloud, e finiscono su un branch dedicato. Niente tocca il tuo branch predefinito finché non fai il merge.

Quella prima conversione avviene una sola volta. Da quel momento, quando fai push di nuove stringhe sorgente, un push job le traduce e apre una pull request con il risultato.

Se preferisci restare nel tuo editor, lo stesso lavoro parte da un prompt. La nostra integrazione con Claude Code e le skill dietro di essa connettono il repo per te. Ne abbiamo già parlato in perché rilasciamo una skill invece di un SDK.

Le sette fasi di Crowdin girano sul tuo agent, quindi consumano i tuoi token. La nostra conversione gira sul nostro lato. E chi ha creato la propria app in Lovable e non ha mai aperto un terminale può completare il nostro flusso, cosa non vera per qualsiasi processo che inizia con l'esportazione di una variabile d'ambiente.

Non è istantaneo. I repository piccoli richiedono minuti, e una codebase grande può richiedere un'ora o più. Leggi comunque un piano e revisioni comunque una PR, come è giusto che sia.

Crowdin i18n-setup vs globalize.now, passo dopo passo

Crowdin i18n-setupglobalize.now
Dove viene eseguitoSulla tua macchina, sul tuo agent, con i tuoi tokenNel nostro cloud, su un clone del tuo repo
Cosa installiSkill Crowdin, skill Lingui, CLI Crowdin, workflow GitHubNiente nell'app. Un'unica installazione di skill per il percorso agent
Credenziali da gestireToken Crowdin nell'ambiente, secret GitHubAutorizzazione dell'app GitHub o GitLab
Nuova configurazione i18nSolo Lingui, tramite il plugin di skill proprio di LinguiLibreria consigliata in base allo stack
I18n già esistenteSolo connessione: i18next, next-intl, vue-i18n, Linguinext-intl, react-i18next, i18next, Lingui
TraduzioneDisattivata di default. Solo translation memory, a meno che non sia configurato un motore in CrowdinParte dello stesso job
Cosa ottieni alla fineUn progetto Crowdin, file PO, un workflow di sincronizzazioneUn branch con codice i18n e file locale tradotti
Nuove stringhe in seguitoIl workflow le invia a Crowdin, dove qualcuno o qualcosa le traduceIl push job le traduce e apre una PR
Utilizzabile senza terminaleNoSì

Quando scegliere Crowdin invece?

Quando sono le persone a tradurre il tuo prodotto. Se hai linguisti interni, un'agenzia o una community di volontari, ti servono translation memory, glossari, un editor in-context, passaggi di revisione e gestione dei fornitori. Questo è un sistema di gestione delle traduzioni, Crowdin ne costruisce uno dal 2008, e noi non stiamo cercando di diventarne uno.

Crowdin gestisce anche formati che oggi non supportiamo, tra cui XLIFF, ARB, .xcstrings e Android XML, e la sua skill può connettere un progetto vue-i18n. Se il tuo prodotto principale è un'app mobile nativa, verifica prima questo aspetto rispetto a tutto il resto.

La pagina di confronto completa approfondisce i modelli di pricing e l'adattamento al team.

Perché è importante che un'azienda leader di mercato abbia rilasciato questo?

Perché chiude una discussione. Lingui, Crowdin e noi ora concordiamo sul fatto che l'agent debba preparare il codice, che il developer debba approvare un piano invece di fare il lavoro manualmente, e che questo debba avvenire nell'editor dove l'app viene scritta.

Dove ancora non siamo d'accordo è su cosa viene dopo. La risposta di Crowdin è un percorso di ingresso migliore verso la dashboard. La nostra è che la maggior parte dei team che rilasciano con Cursor, Claude Code o Lovable non vuole una dashboard. Vogliono la loro app in tedesco entro fine giornata e una PR ogni volta che aggiungono un bottone.

La domanda utile da fare a qualsiasi fornitore con una storia sull'agent è semplice: quando l'agent ha finito, dove devo andare dopo? Se la risposta è un nuovo prodotto da imparare, l'agent era solo la porta d'ingresso. Se la risposta è la tua tab delle pull request, era tutta la casa.

Provalo sul tuo repository

Fai il test che ha fatto Crowdin: prendi una piccola app con stringhe hardcoded e guarda dove sei un'ora dopo. Connetti un repository, approva il piano, leggi la pull request. La prova non richiede una carta di credito. I prezzi sono qui se li vuoi consultare prima.

globalize.now trasforma il testo hardcoded dell'app in file di localizzazione pronti e li mantiene aggiornati mentre rilasci.

Prova globalize.now gratis