Lingo.dev CLI

Max PrilutskiyCEO y cofundadorUpdated el mes pasado · 3 min read

Deprecated

These docs cover the legacy CLI (v0). The current CLI is v1. See the current CLI docs

La CLI de Lingo.dev traduce aplicaciones y contenido a partir de un único archivo de configuración i18n.json, extrae las cadenas traducibles de tus archivos fuente y las enruta a través de un motor de localización o de un proveedor de LLM sin procesar. Después, escribe las traducciones en disco y registra los cambios para que la siguiente ejecución procese solo el delta.

El proceso en cinco pasos#

Cuando ejecutas npx lingo.dev@latest run, la CLI realiza cinco pasos en este orden:

1

Detección de contenido

La CLI analiza tu proyecto en busca de archivos fuente y de destino según las configuraciones de buckets en i18n.json. Cada bucket define un formato de archivo y un conjunto de patrones de inclusión y exclusión que indican a la CLI dónde se encuentra el contenido traducible.

json
{
  "locale": {
    "source": "en",
    "targets": ["es", "fr", "de"]
  },
  "buckets": {
    "json": {
      "include": ["locales/[locale].json"]
    },
    "markdown": {
      "include": ["docs/[locale]/*.md"]
    }
  }
}

El marcador de posición [locale] se resuelve en tiempo de ejecución con los códigos de idioma de origen y destino que hayas configurado.

2

Limpieza de datos

No todo el contenido requiere traducción. La CLI filtra los valores que deben mantenerse iguales en todos los idiomas: números, booleanos, fechas ISO, UUID, URL y cadenas vacías. Así se reduce la carga enviada al backend de traducción, lo que disminuye el consumo de tokens y el tiempo de procesamiento.

3

Cálculo del delta

La CLI calcula huellas SHA-256 para cada cadena de origen y las compara con el estado anterior almacenado en i18n.lock. Solo el contenido nuevo o modificado entra en el flujo de traducción. Las cadenas que no han cambiado se omiten por completo.

Este enfoque incremental significa que, en un proyecto con 10.000 claves del que solo han cambiado 12, solo se traducen esas 12 claves, no el conjunto completo.

4

Localización

El delta se envía al backend de traducción configurado. La CLI admite dos modos:

ModoCómo funciona
Motor de localización de Lingo.devCanaliza las solicitudes a través de tu motor de localización, aplicando automáticamente la voz de marca, el glosario, las reglas y la configuración del modelo.
Proveedor de LLM sin procesarEnvía solicitudes de traducción directamente a OpenAI, Anthropic, Google, Mistral, OpenRouter u Ollama con un prompt personalizado.

La CLI reintenta las solicitudes fallidas con retroceso exponencial, guarda el progreso parcial y procesa varios idiomas de destino en paralelo.

5

Inserción de contenido

Las cadenas traducidas se escriben de vuelta en disco exactamente en las posiciones donde está el contenido de origen. La CLI conserva la estructura y el formato de los archivos para generar diffs mínimos y fáciles de revisar. Si Prettier está configurado en tu proyecto, la salida respeta tus reglas de formato.

Archivos de salida#

Una ejecución típica genera dos tipos de cambios:

  1. Archivos de idioma - archivos del idioma de destino actualizados con traducciones nuevas y modificadas
  2. i18n.lock - actualizado con huellas de contenido para hacer seguimiento del estado

Ambos deben confirmarse en el control de versiones, ya sea manualmente o automáticamente mediante la integración de CI/CD.

Siguientes pasos#