Documentación Referencia de CLI

Referencia de CLI

Referencia completa de todos los comandos, flags y opciones de la CLI de i1n.

Descripción general

La CLI de i1n es la interfaz principal para gestionar la localización. Instálela de forma global con npm i -g i1n.

Todos los comandos se ejecutan en el contexto del directorio actual del proyecto, utilizando la configuración de i1n.config.json.

i1n init

Inicialice i1n en un proyecto. Ejecuta una configuración interactiva que detecta el framework de su proyecto, establece el formato y el directorio de los archivos de localización, configura el idioma de origen y crea i1n.config.json.

Este comando solo debe ejecutarse una vez por proyecto. Vuelva a ejecutarlo para reconfigurar los ajustes.

i1n push

Empuja los archivos de traducción locales a i1n. La CLI escanea tus archivos de localización (ej. locales/**/*.json) y sincroniza todas las claves con el proyecto.

Antes de enviar cualquier elemento al servidor, la función push realiza una comparación tripartita entre sus archivos locales, el estado actual del servidor y la línea base de su última sincronización (almacenada en locales/.i1n-push-state.json). La carga útil incluye únicamente los pares (clave, idioma) que usted modificó. Los idiomas que no fueron alterados se conservan en el servidor, por lo que las ediciones realizadas por un compañero de equipo en una clave que usted nunca abrió no serán sobrescritas.

Si una clave y un idioma fueron editados en ambos lados desde la última sincronización (un conflicto real), la CLI te preguntará de forma interactiva: mantener el valor local, aceptar el valor del servidor o abortar el envío. Los cambios realizados solo en el servidor (ediciones hechas por otro usuario o en el panel mientras trabajabas) se escriben automáticamente en tus archivos locales al momento de enviar, y i1n.d.ts se regenera cuando es necesario.

Flags disponibles: --translate [langs] activa la traducción por IA después de hacer push (ejemplo: i1n push --translate es,fr,de,ja); --strategy <mode> establece la política de conflictos en interactive (predeterminado en una terminal), ours (gana el local), theirs (gana el servidor) o abort (se detiene ante cualquier conflicto). --force es una abreviatura de --strategy ours y sobrescribe los valores del servidor, lo cual es destructivo y descarta cualquier edición hecha en el servidor por otros colaboradores.

i1n pull

Extrae traducciones de i1n y escribe archivos locales. Obtiene todas las traducciones, escribe archivos de localización en tu formato configurado y genera definiciones de tipos TypeScript i1n.d.ts.

Ejecute esto una vez finalizadas las traducciones, o como parte de su pipeline de CI/CD para asegurar que los archivos estén siempre sincronizados.

i1n add-language

Agregue nuevos idiomas de destino a su proyecto de forma interactiva. El comando verifica los espacios de idioma disponibles en su plan y permite la reactivación de idiomas utilizados anteriormente sin consumir nuevos espacios.

La disponibilidad de idiomas depende de su plan: Starter admite 2, Pro admite 5, Business admite 12 y Enterprise admite los 182 idiomas.

i1n limits

Muestra los límites del proyecto y el uso actual. Muestra las claves utilizadas frente al límite, los créditos de traducción de IA utilizados frente al límite, los espacios de idioma utilizados frente a los disponibles y una lista de idiomas activos.

Utilice este comando para monitorear el consumo y determinar cuándo puede ser necesaria una actualización del plan.

i1n setup-ai

Genere reglas de contexto de agente de IA para el proyecto. Crea archivos de reglas para Cursor (.cursor/rules/i1n.mdc), Claude Code (CLAUDE.md), Windsurf (.windsurfrules), GitHub Copilot (.github/copilot-instructions.md), Codex (AGENTS.md) y Antigravity (.antigravity/rules.md).

Estos archivos enseñan a los agentes de IA a utilizar claves de traducción en lugar de cadenas codificadas, colocar claves en los archivos de espacio de nombres correctos, preservar las variables de interpolación y ejecutar i1n push después de realizar modificaciones.

i1n mcp

Inicie un servidor de Protocolo de Contexto de Modelo (MCP) que exponga las herramientas de i1n a los asistentes de codificación de IA. Esto permite que Cursor, Claude Code, Windsurf y otros agentes compatibles con MCP ejecuten comandos de i1n directamente (push, pull, traducir, agregar idiomas y más) sin salir del IDE.

El servidor MCP expone 9 herramientas: i1n_status, i1n_push, i1n_pull, i1n_check, i1n_translate, i1n_add_language, i1n_extract_and_translate, i1n_search e i1n_setup_bridge. La función destacada es i1n_extract_and_translate: su agente de IA extrae cadenas hardcodeadas de un componente, las envía a i1n, y estas son instantáneamente cargadas, traducidas a todos los idiomas activos y las definiciones de tipo son regeneradas. La herramienta i1n_push ejecuta la misma comparación de tres vías (three-way diff) que la CLI, pero se interrumpe ante cualquier conflicto para que el agente pueda decidir si realizar un pull, solicitar asistencia o resolver manualmente antes de reintentar. Configúrelo con: claude mcp add i1n -- npx i1n mcp.

i1n check

Valida tus archivos de traducción locales sin conectarte a la red: claves faltantes por idioma, marcadores de posición de interpolación rotos ({{name}}, {name}, %{name} comparados con tu idioma de origen), valores vacíos, archivos mal formados y cobertura por idioma. Detecta el clásico asesino silencioso: una variable perdida en la traducción que hace que el formato falle durante la ejecución.

Diseñado para CI: código de salida 0 si está limpio, 1 si se encuentran errores, 2 ante problemas de configuración. Agregá --min-coverage 95 para que la compilación falle cuando la cobertura de traducción caiga por debajo del umbral, y --json para obtener informes legibles por máquina. No requiere llamadas a la API ni secretos, por lo que funciona en cualquier pipeline.

Lo ejecutamos en nuestro propio sitio web el día que lo creamos; encontró 47 marcadores de posición rotos que habían estado activos en producción durante semanas. Ejecutá npx i1n check antes de cada lanzamiento.

terminal
i1n init
i1n push
i1n push --translate es,fr,ja
i1n pull
i1n add-language
i1n limits
i1n setup-ai
i1n mcp
.github/workflows/ci.yml
- name: Validate translations
  run: npx i1n check --min-coverage 95

Relacionado