Crowdin a publié en août une compétence agent qui fait passer une application JavaScript de chaînes codées en dur à un projet Crowdin connecté, et la semaine dernière ils en ont publié une démonstration. Nous en sommes ravis. globalize.now est une infrastructure de localisation propulsée par l'IA, nous avons des compétences agent qui font ce travail depuis mars, et le fait qu'une entreprise fondée en 2008 arrive à la même conception est le signe le plus clair que le problème est réel.

C'est aussi le bon moment pour comparer honnêtement les deux approches, car elles aboutissent à des endroits très différents. La leur se termine avec vos fichiers dans un système de gestion de traduction que vous devez ensuite opérer vous-même. La nôtre se termine par une pull request qui contient déjà les traductions.

Qu'a réellement livré Crowdin\u202f?

Quatre nouvelles compétences agent, un CLI réécrit, et un plugin qui les regroupe avec leur serveur MCP. Le changelog d'août, publié le 4 septembre, liste i18n-setup, glossary-generation, crowdin-cli et github-action. Elles rejoignent les compétences de contexte et de requête API que Crowdin ajoutait à crowdin/skills depuis février.

Le CLI 5.0 est la meilleure réalisation technique de cette sortie. Il est passé de Java à TypeScript, se livre sous forme de binaire unique, et affiche du JSON qu'un agent peut lire. Crowdin le présente comme « conçu pour les agents IA », ce qui est mérité.

La vedette, c'est i18n-setup. Le 16 septembre, Crowdin a publié une vidéo de sept minutes la montrant fonctionner dans Claude Code sur un petit site d'exemple.

Qui a livré quoi en premier\u202f?

Ça dépend de ce que l'on compte, alors nous avons lu l'historique des commits des trois dépôts. Lingui a publié les premières compétences agent, en janvier. La première compétence qui configure l'i18n dans un dépôt et enveloppe les chaînes codées en dur, c'était la nôtre, le 29 mars.

DateQuiQuoi
Juillet 2025CrowdinAnnonce du serveur MCP
27 janvier 2026Linguilingui/skills\u202f: compétences de bonnes pratiques pour écrire du code Lingui
20 février 2026CrowdinCréation de crowdin/skills, avec des compétences pour rédiger le contexte destiné aux traducteurs
29 mars 2026globalize.nowPremiers commits de globalize-skills\u202f: configuration de Lingui, enveloppement des chaînes codées en dur, CSS compatible RTL
31 mars 2026globalize.nowDébut du travail sur le serveur MCP (annoncé le 9 juillet)
5 avril 2026globalize.nowCompétence d'orchestration\u202f: détecter la stack, recommander une bibliothèque, planifier, configurer, convertir
Août 2026globalize.nowLe flux intégré à l'application devient la voie par défaut\u202f: connectez un dépôt, obtenez une PR
14 août 2026LinguiAjout de la compétence de configuration de framework
28 août 2026CrowdinCommit de la compétence d'orchestration i18n-setup

Rendons à César ce qui lui appartient\u202f: le serveur MCP de Crowdin précède notre entreprise, et leur dépôt de compétences est vieux de cinq semaines de plus que le nôtre. Ces premières compétences Crowdin ont appris à un agent à rédiger le contexte destiné aux traducteurs. Toucher au code applicatif est venu plus tard. Nos compétences de configuration et d'enveloppement des chaînes datent du 29 mars, et l'orchestrateur qui exécute tout le parcours date du 5 avril. L'équivalent de Crowdin est arrivé le 28 août, deux semaines après que Lingui a ajouté la compétence de configuration dont il dépend, avec le même squelette\u202f: détecter, décider, configurer et envelopper.

Nous le prenons comme un compliment pour la conception, pas comme une preuve de copie. C'est la forme évidente une fois qu'on accepte le postulat, et la vidéo commence justement par ce postulat\u202f: « Le produit est peut-être prêt pour la production, mais cela ne veut pas dire qu'il est prêt pour la traduction. » Nous avions défendu le même argument dans notre premier article en mars.

D'autres éditeurs, en dehors de ces trois-là, ont aussi mis l'i18n derrière un agent, donc nous ne revendiquons pas d'être les premiers au monde.

Que fait la compétence i18n-setup de Crowdin\u202f?

Elle exécute sept phases à l'intérieur de votre propre agent de code et conserve une checklist reprenable dans votre dépôt. Le fichier de compétence est bien organisé, et la démonstration lui correspond.

  1. Détecter. Analyser le dépôt pour repérer le framework et toute bibliothèque i18n existante.
  2. Décider. Demander quelles langues vous voulez et si vous préférez un mode guidé ou non guidé, puis rédiger un plan.md.
  3. Configurer. Installer et configurer Lingui. Si vous avez déjà une bibliothèque, elle garde la vôtre.
  4. Envelopper. Marquer les chaînes destinées aux utilisateurs et extraire les fichiers PO.
  5. Connecter. Créer un projet Crowdin avec le CLI et importer les fichiers. Cela nécessite votre jeton Crowdin.
  6. Contextualiser. Lire le code autour de chaque chaîne et rédiger une note pour les traducteurs. Suggérer un glossaire de départ.
  7. CI. Installer un workflow GitHub pour que les nouvelles chaînes partent vers Crowdin et que les traductions reviennent.

Un détail que la vidéo omet\u202f: la compétence de Crowdin n'exécute pas elle-même les phases 3 et 4. Son manifeste les délègue aux propres compétences de Lingui, que vous installez comme un second plugin. Le travail propre à Crowdin ne commence qu'à la phase 5.

Certains aspects sont réfléchis. L'agent ne voit jamais la valeur de votre jeton, et la compétence s'arrête pour demander en cas d'ambiguïté. Les limites sont aussi dans le fichier. Les installations neuves ne concernent que Lingui, et le périmètre se limite à JavaScript et TypeScript. Les projets déjà sur i18next, next-intl ou vue-i18n obtiennent seulement une voie de connexion. Elle refuse Create React App, et elle ne vous fera pas migrer d'une bibliothèque à une autre.

Que vous reste-t-il à faire\u202f?

La traduction, et tout ce qu'il faut pour qu'elle se produise. Relisez les sept phases\u202f: aucune d'entre elles ne produit une chaîne traduite.

C'est délibéré. Le fichier de compétence présente la traduction automatique comme une option désactivée par défaut, avec pour instruction de « ne jamais traduire automatiquement un projet neuf sans le demander ». Si vous l'activez, l'agent ne peut appliquer que la mémoire de traduction, et un nouveau projet n'en a aucune. La traduction automatique ou par IA n'est autorisée que si un moteur ou un prompt existe déjà dans votre compte Crowdin.

Une fois la compétence terminée, vous possédez un projet Crowdin, et il vous faut connaître Crowdin. Pour obtenir des traductions par IA, vous ouvrez votre profil, activez un fournisseur avec votre propre clé API ou en ajoutant des fonds à un solde Crowdin, puis créez un prompt. Ensuite, vous lancez la prétraduction depuis l'éditeur, ou depuis le CLI en utilisant l'identifiant du prompt que vous venez de créer, ou vous activez le paramètre de traduction automatique par projet. Après cela, il faut penser aux validations, puis à un build, puis à un téléchargement.

Tout cela peut être automatisé par quelqu'un qui sait déjà où trouver ces paramètres. C'est là le piège. L'agent a fait la partie que comprend un développeur, puis a transmis la suite à un produit conçu pour des responsables de localisation. Dans la propre démonstration de Crowdin, le présentateur obtient encore ses chaînes en chinois en ouvrant l'éditeur, en cliquant sur la traduction automatique, puis en récupérant le résultat via le CLI.

Le serveur MCP de Crowdin ne comble pas cet écart. Ses jeux d'outils documentés fonctionnent à l'intérieur d'un projet existant, et nous n'avons trouvé aucun outil de prétraduction ni de création de projet dans la documentation. Il s'agit d'une lecture de la documentation, pas d'un test de chaque outil.

En quoi globalize.now est-il différent\u202f?

La conversion i18n et la traduction forment un seul job, et le résultat est une pull request. Il n'y a pas de projet à configurer à côté, parce qu'il n'y a pas de côté.

Le parcours par défaut se fait dans l'application. Vous vous inscrivez, connectez GitHub ou GitLab, et choisissez un dépôt. Une analyse détermine la suite. S'il n'y a pas encore d'i18n, nous mettons en place les fondations. Si vous utilisez déjà next-intl, react-i18next, i18next ou Lingui, nous nous connectons à votre configuration existante et laissons votre structure de fichiers intacte. Vous approuvez le plan. La conversion et les traductions s'exécutent alors en parallèle sur un clone de votre dépôt, dans notre cloud, et aboutissent sur leur propre branche. Rien ne touche votre branche par défaut jusqu'à ce que vous fusionniez.

Cette première conversion n'a lieu qu'une fois. Ensuite, à chaque push de nouvelles chaînes source, un job de push les traduit et ouvre une pull request avec le résultat.

Si vous préférez rester dans votre éditeur, le même job démarre depuis un prompt. Notre intégration Claude Code et les compétences qui la font fonctionner connectent le dépôt pour vous. Nous avons déjà expliqué pourquoi nous livrons une compétence plutôt qu'un SDK.

Les sept phases de Crowdin s'exécutent sur votre agent, donc elles consomment vos tokens. Notre conversion s'exécute de notre côté. Et quelqu'un qui a construit son application avec Lovable et n'a jamais ouvert de terminal peut terminer notre flux, ce qui n'est vrai d'aucune solution qui commence par exporter une variable d'environnement.

Ce n'est pas instantané. Les petits dépôts prennent quelques minutes, et une grosse base de code peut prendre une heure ou plus. Vous lisez tout de même un plan et vous relisez tout de même une PR, comme il se doit.

Crowdin i18n-setup vs globalize.now, étape par étape

Crowdin i18n-setupglobalize.now
S'exécute surVotre machine, votre agent, vos tokensNotre cloud, sur un clone de votre dépôt
Vous installezCompétences Crowdin, compétences Lingui, CLI Crowdin, workflow GitHubRien dans l'application. Une seule installation de compétences pour le parcours agent
Identifiants à gérerJeton Crowdin dans l'environnement, secret GitHubAutorisation d'application GitHub ou GitLab
Nouvelle configuration i18nLingui uniquement, via le propre plugin de compétences de LinguiBibliothèque recommandée selon la stack
i18n existantConnexion uniquement\u202f: i18next, next-intl, vue-i18n, Linguinext-intl, react-i18next, i18next, Lingui
TraductionDésactivée par défaut. Mémoire de traduction uniquement, sauf si vous avez configuré un moteur dans CrowdinFait partie du même job
Ce que vous obtenezUn projet Crowdin, des fichiers PO, un workflow de synchronisationUne branche avec le code i18n et des fichiers de locale traduits
Nouvelles chaînes par la suiteLe workflow les envoie vers Crowdin, où quelqu'un ou quelque chose les traduitUn job de push les traduit et ouvre une PR
Utilisable sans terminalNonOui

Quand choisir Crowdin à la place\u202f?

Quand ce sont des personnes qui traduisent votre produit. Si vous avez des linguistes en interne, une agence, ou une communauté de bénévoles, vous avez besoin d'une mémoire de traduction, de glossaires, d'un éditeur en contexte, d'étapes de révision et d'une gestion des prestataires. C'est un système de gestion de traduction, Crowdin en construit un depuis 2008, et nous n'essayons pas de le devenir.

Crowdin gère aussi des formats que nous ne prenons pas encore en charge, dont XLIFF, ARB, .xcstrings et Android XML, et sa compétence peut connecter un projet vue-i18n. Si votre produit principal est une application mobile native, vérifiez ce point avant tout le reste.

La page de comparaison complète approfondit les modèles tarifaires et l'adéquation avec votre équipe.

Pourquoi est-ce important qu'un acteur historique ait livré cela\u202f?

Parce que cela tranche un débat. Lingui, Crowdin et nous sommes désormais d'accord sur le fait que l'agent doit préparer le code, que le développeur doit approuver un plan plutôt que de faire le travail lui-même, et que tout cela a sa place dans l'éditeur, là où l'application est écrite.

Là où nous ne sommes toujours pas d'accord, c'est sur ce qui vient après. La réponse de Crowdin est un meilleur point d'entrée vers son tableau de bord. La nôtre est que la plupart des équipes qui livrent avec Cursor, Claude Code ou Lovable ne veulent pas d'un tableau de bord. Elles veulent leur application en allemand avant la fin de la journée, et une PR chaque fois qu'elles ajoutent un bouton.

La question utile à poser à tout éditeur qui met en avant une solution basée sur un agent est simple\u202f: une fois l'agent terminé, où dois-je aller ensuite\u202f? Si la réponse est un nouveau produit à apprendre, l'agent n'était qu'une porte d'entrée. Si la réponse est votre onglet des pull requests, c'était toute la maison.

Essayez-le sur votre propre dépôt

Lancez le même test que Crowdin\u202f: prenez une petite application avec des chaînes codées en dur et voyez où vous en êtes une heure plus tard. Connectez un dépôt, approuvez le plan, lisez la pull request. L'essai ne nécessite aucune carte bancaire. La tarification est ici si vous voulez la consulter d'abord.

globalize.now transforme le texte codé en dur de votre application en fichiers de traduction prêts à l'emploi et les maintient à jour au fur et à mesure de vos déploiements.

Essayer globalize.now gratuitement