|
Documentation
Réserver une démoPlateforme
PlateformeMCPCLI
APIWorkflows
GuidesChangelog

Vue d’ensemble

  • @lingo.dev/cli

Premiers pas

  • Démarrage rapide
  • Configuration

Référence

  • lingo push
  • lingo pull
  • Autres commandes
  • lingo purge

Configuration

  • Contrôle des clés
  • Formats
  • Langues

Guides

  • Ajouter une langue
  • Traductions existantes
  • Retraduction
  • Notes pour le traducteur
  • Exécutions, état et reprise
  • CI/CD
  • Monorepos
  • Grands projets

Vous cherchez l’ancien CLI (v0) ? Voir la documentation du CLI historique

@lingo.dev/cli

@lingo.dev/cli envoie votre contenu source à un moteur de localisation, attend que le moteur génère les traductions, puis réécrit les résultats sur le disque. Il remplace l’ancien workflow npx lingo.dev — même projet, mais architecture radicalement différente.

Ce qui change par rapport à l’ancienne CLI#

L’ancienne CLI (npx lingo.dev run) extrayait les chaînes, appelait directement un LLM depuis votre machine, puis réécrivait les fichiers en un seul passage synchrone. La nouvelle CLI est asynchrone par conception :

  • lingo push téléverse les sources vers votre moteur, lance un workflow côté serveur, puis attend sa fin ou renvoie immédiatement avec un ID d’exécution
  • lingo pull récupère les résultats du push le plus récent — même si vous avez fermé le terminal en pleine traduction, ou si vous faites le pull depuis une autre machine
  • Un lockfile (.lingo/lock.json) suit la dernière version connue côté serveur pour chaque cible, afin que la détection de conflits puisse signaler les modifications locales avant qu’elles ne soient écrasées

Cela rend possible deux choses que l’ancienne CLI ne savait pas faire : lancer des traductions longues sans monopoliser un terminal, et récupérer les résultats sur une autre machine que celle qui a exécuté push (ou en CI).

Attendre les résultats#

Aujourd’hui, lingo push téléverse les sources, lance le workflow côté serveur, attend sa fin, puis écrit les résultats — le tout en une seule commande. Passer --wait (-w) rend ce comportement bloquant explicite. Vous pouvez aussi vous reconnecter plus tard à une exécution terminée avec lingo pull.

bash
lingo push            # submit, wait, and write outputs (current default)
lingo push --wait     # same thing, made explicit

lingo pull            # later: re-attach to the most recent push and download its outputs

Changement à venir : une prochaine version fera de l’asynchrone le comportement par défaut. lingo push soumettra l’exécution puis quittera immédiatement ; vous utiliserez lingo pull pour télécharger les traductions terminées, et --wait (-w) sera l’option pour revenir au workflow bloquant en une seule commande.

  • --wait (-w) bloque jusqu’à la fin du workflow et écrit les résultats dans la même commande.
  • lingo pull se reconnecte au push le plus récent de ce projet et télécharge ses résultats — même après la fermeture du terminal. L’état d’exécution est stocké par machine dans ~/.lingo/runs/<project-hash>.json, donc pull reprend sur la même machine.

Authentification : les deux commandes lisent LINGO_API_KEY (ou --api-key, ou une session lingo login). En CI, définissez LINGO_API_KEY et rien d’autre n’est nécessaire.

Modes de push#

CommandeModeQuand l’utiliser
lingo pushIncrémentiel — compare la source à .lingo/lock.json, traduit uniquement les clés nouvelles ou modifiées dans les cibles existantes, et préserve le resteÀ chaque exécution courante / en CI
lingo push --backfill-missingBootstrap — remplit les FICHIERS cibles qui n’existent pas encorePremier push, ou après l’ajout d’une nouvelle langue
lingo push --forceRetraduction complète — écrase toutes les cibles (y compris les modifications manuelles) ; --yes/-y ignore l’inviteRarement (par ex. après un changement de glossaire ou de moteur)

--backfill-missing est un indicateur de bootstrap. Il effectue une nouvelle requête ciblée et n’ajoute que les fichiers cibles complets manquants — il ne traduit PAS les clés nouvellement ajoutées dans des fichiers déjà traduits (l’exécution indique "already up-to-date" et la clé est ignorée). Pour les modifications au fil de l’eau, utilisez simplement lingo push.

Modifier les traductions à la main#

Un simple lingo push préserve les modifications manuelles clé par clé :

  • Vous modifiez une chaîne cible (sans changer sa source) → cette chaîne est conservée ; les autres clés continuent d’être mises à jour.
  • La source d’une clé modifiée change → une nouvelle traduction est générée pour cette clé et remplace la modification manuelle.
  • Une nouvelle clé source est ajoutée → elle est traduite et ajoutée, même dans des fichiers comportant des modifications manuelles.

Dans cette section#

Démarrage rapide
Installez, authentifiez-vous, connectez-vous à un moteur, puis lancez votre premier push et pull.
Configuration
`.lingo/config.json`, `.lingo/lock.json` et l’état d’exécution par machine dans `~/.lingo/runs/<hash>.json`.
lingo push
Envoyez les sources, attendez la traduction, écrivez les résultats. Motifs ciblés, `--force`, sémantique de nouvelle tentative.
lingo pull
Récupérez les résultats du dernier push — d’une machine à l’autre, d’une session terminal à l’autre. Détection de conflits.
Autres commandes
login, logout, link, unlink, whoami — les commandes de configuration et d’identité.

Cette page vous a-t-elle été utile ?

Max PrilutskiyMax Prilutskiy·Mis à jour il y a 11 jours·3 min de lecture