Do início ao fim: instalar, autenticar, associar a um motor, fazer push das fontes e pull das traduções.
Pré-requisitos
Node.js 22+ (node -v para verificar). Depois de instalada, a CLI é executada como lingo.
Configuração#
Instalar
npm install -g @lingo.dev/cliOu pnpm add -g @lingo.dev/cli / yarn global add @lingo.dev/cli / bun add -g @lingo.dev/cli.
Autenticar
lingo loginIntroduza o seu email; a CLI envia um código de utilização única e guarda um token de sessão em ~/.lingo/auth.json. Para contextos de CI / não interativos, utilize uma chave de API: lingo login --api-key lk_... (ou defina --api-key como flag global em qualquer comando).
Inicializar o projeto
Na raiz do projeto:
lingo initPede o idioma de origem, os idiomas de destino e os padrões de ficheiros (globs que apontam para os ficheiros de origem). Escreve a secção de localização em .lingo/config.json. Faça commit deste ficheiro — é a fonte de verdade sobre o que é traduzido.
Associar a um motor
lingo linkEscolha (ou crie) uma organização e um motor de localização. O motor inclui a configuração do modelo de IA, glossários, voz da marca e instruções — configure-o uma vez na plataforma Lingo.dev e reutilize-o em vários projetos. link acrescenta orgId e engineId a .lingo/config.json (que também deve ir para commit).
Primeiro push#
Com um ficheiro de origem não vazio no sítio certo (por exemplo, locales/en.json):
lingo push --backfill-missingTraduz todos os destinos em falta em todos os padrões configurados. A CLI espera que a execução termine e escreve os resultados (locales/de.json, locales/fr.json, ...) no disco. Num checkout limpo, isto pode demorar desde segundos (JSON pequeno) até minutos (grandes conjuntos de ficheiros markdown).
Quando terminar:
✓ Run run_a8c... : localized 12 target file(s), uploaded 1 new artifact(s).Execuções seguintes#
Depois de editar os ficheiros de origem, um simples lingo push traduz apenas o delta — os ficheiros cujo hash de origem não mudou são ignorados no servidor. As edições locais nos destinos são preservadas por predefinição; passe --force (com um âmbito) para substituir.
lingo push # delta only
lingo push docs/en/**/*.md # scoped: only this subtree
lingo push docs/en/about.md -f # scoped + force: retranslate even if up to dateFazer pull noutra máquina#
push regista o ID da execução em ~/.lingo/runs/<hash>.json (indexado pelo caminho absoluto do projeto). Em qualquer máquina com o mesmo checkout e as mesmas credenciais:
lingo pull…obtém os resultados do último push. Útil para CI ("o tradutor faz push no portátil, o CI faz pull em cada build") ou simplesmente para retomar depois de fechar o terminal.
Para onde seguir#
- Configuração — esquema de
.lingo/config.json, lockfile, onde fica o estado da execução. - lingo push — padrões com âmbito,
--force, semântica de repetição. - lingo pull — deteção de conflitos,
--dry-run.
