Traduza config/locales/en.yml, então verifique cada linha
Rails YAML começa com a locale como chave raiz e usa variáveis %{name} e chaves plurais one/other. Deixe en: no topo do arquivo alemão, ou traduza %{count}, e a gem I18n mostra inglês ou uma chave bruta. KAERIS escreve de.yml com a raiz correta e as variáveis intactas.
KAERIS traduziu esta página e verificou cada linha traduzindo-a de volta. Um falante nativo ainda não revisou. Original em inglês
A chave raiz muda, as variáveis não
en: se torna de:. As chaves plurais permanecem no lugar.
en: welcome: "Welcome back, %{name}!" cart: zero: "Your cart is empty" one: "%{count} item" other: "%{count} items" save: "Save changes"
de: welcome: "Willkommen zurück, %{name}!" cart: zero: "Dein Warenkorb ist leer" one: "%{count} Eintrag" other: "%{count} Einträge" save: "Änderungen speichern"
O que o KAERIS faz com isso
Raiz de locale detectada
Um arquivo com raiz em
en:é reconhecido como Rails, e cada tradução recebe sua própria raiz.Variáveis verificadas sem IA
Após a tradução, uma verificação simples conta cada variável e tag comparando com o original. Uma linha que perdeu alguma é marcada e exibida no topo.
Cada linha traduzida de volta
Um modelo diferente, GPT-4o mini, traduz cada linha de volta para seu idioma, e o DeepSeek V3.2 em hosts dos EUA (DeepInfra, DigitalOcean, Google) avalia se o significado mudou. Você lê o que cada linha diz agora.
Perguntas
Idiomas com mais formas plurais?
Russo ou polonês precisam de few e many. Adicione essas chaves e elas são traduzidas; se uma estiver faltando, a verificação avisa.
Âncoras YAML funcionam?
Sim, dentro de limites: um arquivo cujas âncoras se expandem para um número enorme de chaves é recusado.
É gratuito?
Sim, sem conta: 10.000 caracteres por arquivo e até 8 idiomas por execução. Uma chave API gratuita eleva o limite para 50.000 caracteres. A licença vitalícia custa $79 uma vez, usando sua própria chave OpenRouter; planos mensais começam em $19. Preços
Posso rodar pelo terminal ou em CI?
Sim. pip install kaeris, depois kaeris translate com seu arquivo e --langs de,ja. Uma GitHub Action abre um pull request quando novas chaves chegam. Documentação