Localização que seus agentes de IA conseguem operar
Envie qualquer arquivo de tradução. O Claude traduz com seu glossário e suas regras, strings idênticas são compartilhadas entre todos os apps, e seus agentes revisam, auditam e corrigem tudo via MCP, CLI e API.
Uma alternativa ao Crowdin feita pela Meter. Veja a comparação.
O problema
A gestão de traduções foi criada antes de os agentes poderem fazer o trabalho
O Crowdin e ferramentas parecidas são bons em coordenar tradutores humanos. A maioria dos times que lançam apps hoje quer outra coisa: tradução automática em que possam confiar e um fluxo que seus agentes consigam executar de ponta a ponta.
Como funciona
Do arquivo de origem a todos os idiomas em quatro ops
- 1
push_fileEnvie qualquer arquivo
Envie o arquivo de origem do seu repositório, CI ou agente. O formato é detectado; as strings são comparadas com as de todos os outros apps do workspace.
- 2
translateO Claude traduz
Strings novas são traduzidas para todos os idiomas de destino com o contexto delas, seu glossário e suas regras. Os placeholders são verificados em cada string.
- 3
claim_tasksAgentes revisam
Traduções com baixa confiança, merges ambíguos e achados de auditoria caem numa fila que um agente resolve em minutos.
- 4
pull_fileBaixe todos os idiomas
Receba cada idioma de volta no formato e na estrutura de pastas do próprio arquivo, mantendo os comentários quando o formato os suporta.
npx @meterapp/glossa push locales/en.json --project webnpx @meterapp/glossa pull --project web --locale es,fr,deFormatos
Todos os formatos que seus apps já usam
12 formatos já vêm prontos. Envie um que ele nunca viu e a IA escreve um template a partir do seu arquivo, que você aprova uma vez e reutiliza para sempre.
Fila de revisão
Uma fila de revisão que um agente resolve num instante
Toda decisão que exige julgamento vira uma pequena tarefa com tudo o que é preciso para decidir e uma lista curta de ações. Os agentes pegam um lote, decidem e resolvem. Cada resolução passa pelas mesmas ops que uma pessoa usaria.
merge_reviewChaves em apps diferentes compartilham o mesmo texto. Mesmo sentido ou separar?translation_reviewO modelo ficou em dúvida, ou um placeholder se perdeu.audit_findingUma auditoria encontrou um problema e propõe uma correção.rule_suggestionUma auditoria propõe uma regra para toda tradução futura.glossary_suggestionUm termo que deve ser fixo ou nunca traduzido.learn_formatA IA escreveu um template para um novo formato de arquivo.
curl -X POST https://getglossa.dev/api/v1/claim_tasks \ -H "Authorization: Bearer gls_…" \ -d '{"kind":"translation_review","limit":20}'
curl -X POST https://getglossa.dev/api/v1/resolve_task \ -H "Authorization: Bearer gls_…" \ -d '{"task":"…","action":"edit","text":"Iniciar sesión","note":"Use the infinitive for buttons"}'Deduplicação
Corrija uma vez, corrigido em todo lugar
Cada chave aponta para uma unidade: uma string de origem com uma tradução por idioma, compartilhada por todas as chaves, em todos os arquivos e apps que usam o mesmo texto. Quando o contexto indica que as mesmas palavras significam coisas diferentes, a chave ganha uma unidade própria.
Uma tradução por idioma, revisada uma vez. split_key separa uma chave cujo contexto é diferente; merge_units junta quase duplicatas.
Traduções desatualizadas
Mude o inglês, nunca publique a tradução antiga
Quando uma string de origem muda de sentido, toda tradução escrita para o texto antigo fica desatualizada. O Glossa detecta isso no push, traduz a string de novo e se recusa a importar o texto antigo que ainda está nos seus arquivos de tradução.
Mudanças de maiúsculas e de placeholders mantêm as traduções. Desative retranslate_stale para manter o texto antigo na fila de revisão, e confira uma release com list_stale_translations.
Bloqueio de release
Toda release de produção sai totalmente traduzida
Adicione uma etapa antes do deploy. O Glossa conta as strings do commit que você está buildando, espera enquanto as novas são traduzidas e falha o job se algum idioma estiver sem uma string ou se o build tiver traduções mais antigas que as do Glossa.
- Só este commitStrings enviadas depois a partir de outras branches nunca bloqueiam um deploy. Strings que nunca foram enviadas sempre bloqueiam.
- Os arquivos do buildCada arquivo de idioma é comparado por SHA-256 com o que o pull gera agora, então uma cópia desatualizada não vai para produção.
- Qualquer CIEle sai com código 1 quando a release não está pronta. No GitHub Actions, também escreve um resumo do job com o que está faltando.
npx @meterapp/glossa sync --wait 10m # push new strings, wait for translation, pull every localenpx @meterapp/glossa check # exit 1: not readyAuditorias e regras
Traduções que melhoram com o tempo
Faça uma pergunta sobre um idioma e receba uma resposta, uma nota e uma lista de correções. O que continua dando errado vira uma regra ou um termo do glossário, para que o próximo lote não repita o erro.
- 01 · run_auditPergunte"Como está nosso espanhol? Estamos usando tú e usted de forma consistente?"
- 02 · audit_findingEncontreA auditoria dá uma nota ao idioma e registra cada problema com uma correção proposta.
- 03 · resolve_taskCorrigirUm agente ou uma pessoa aplica, edita ou descarta cada achado.
- 04 · add_ruleAprendaProblemas recorrentes viram termos do glossário e regras que toda tradução futura segue.
Toda ação é uma API
92 ops. Dashboard, REST, MCP e CLI chamam todas as mesmas.
Cada op tem um nome, um schema de entrada e um handler. O dashboard não tem endpoints privados: tudo o que você pode clicar, um agente pode chamar.
Settings, stats and the activity log.
Apps or repos, each with its source and target locales.
Deduplicated units, translations, merges and splits.
App Store and Google Play reviews per language, read as context for store listings and marketing copy.
Members, teams, project sharing and the audit log.
Plans, prices, checkout links and the subscription.
Request features, report issues and upvote what matters to you.
Integrações
Funciona onde seus agentes já trabalham
Conecte o Claude Code, o Codex ou o Cursor ao servidor MCP, ou rode a CLI no GitHub Actions a cada push.
claude mcp add --transport http glossa https://getglossa.dev/api/mcp \ --header "Authorization: Bearer gls_…"# ~/.codex/config.toml
[mcp_servers.glossa]
url = "https://getglossa.dev/api/mcp"
bearer_token_env_var = "GLOSSA_API_KEY"{ "mcpServers": { "glossa": { "url": "https://getglossa.dev/api/mcp", "headers": { "Authorization": "Bearer gls_…" } } }}# .github/workflows/translations.ymlname: Translationson: push: branches: [main] paths: ["locales/en.json"]jobs: sync: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: npx @meterapp/glossa push locales/en.json --project web env: GLOSSA_API_KEY: ${{ secrets.GLOSSA_API_KEY }}npx @meterapp/glossa loginnpx @meterapp/glossa push locales/en.json --project webnpx @meterapp/glossa pull --project web --locale es,fr,denpx @meterapp/glossa run_audit --locale es --question "Are brand names consistent?"Configuração completa, incluindo login via OAuth e o plugin, no guia do MCP.
Perguntas frequentes
Perguntas
O Glossa é um sistema de gestão de traduções construído em torno da IA. Você faz push de arquivos de tradução no formato que seus apps usam, o Claude os traduz seguindo seu glossário e suas regras, e cada string é deduplicada entre arquivos e apps. Tudo o que você pode fazer no painel também é uma chamada de API, uma ferramenta MCP e um comando da CLI, para que agentes de programação possam cuidar da sua localização.
JSON (incluindo i18next), YAML, Xcode String Catalogs (.xcstrings), Apple .strings e .stringsdict, Android strings.xml, gettext PO, XLIFF 1.2 e 2.0, Flutter ARB, Java .properties, .NET RESX e CSV/TSV. Quando você faz push de um formato que ele ainda não conhece, a IA cria um template reutilizável a partir de uma amostra, que você revisa uma única vez.
Claude Opus. Cada prompt inclui o contexto da string, seu glossário (nomes de marcas nunca são traduzidos) e suas regras permanentes para aquele idioma, e cada tradução é verificada para manter os placeholders da origem.
Strings de origem idênticas em todos os arquivos e apps compartilham uma única unidade, com uma tradução por idioma. Corrija "Sign in" em espanhol uma vez e todas as chaves que o usam ficam corrigidas. Quando o mesmo texto tem significados diferentes ("Open" como verbo e "Open" como status de uma loja), a chave é separada em uma unidade própria, e a fila de revisão pergunta sobre mesclagens que parecem ambíguas.
Quando uma string de origem muda de significado, suas traduções ficam desatualizadas. No push, a chave passa para o novo texto e é traduzida novamente (pelo Claude, ou volta para a lista do seu agente), e um arquivo de tradução que ainda contém a redação antiga não é importado sobre o novo texto. Alterações de maiúsculas/minúsculas e de placeholders mantêm suas traduções. Projetos que preferem uma decisão humana podem desativar a retradução: nesse caso, a tradução antiga permanece, marcada para revisão, até que alguém a aprove ou corrija.
Sim. Adicione o servidor MCP em /api/mcp com uma chave de API, ou instale o plugin, e o agente recebe uma ferramenta por operação: fazer push e pull de arquivos, buscar strings, trabalhar na fila de revisão, executar auditorias e adicionar regras. As mesmas operações estão disponíveis via REST (POST /api/v1/{op}) e pela CLI (npx @meterapp/glossa).
O Crowdin foi construído em torno de tradutores humanos trabalhando em um editor, com tradução automática e IA como complementos. O Glossa parte do princípio de que a IA traduz e os agentes revisam, por isso a API cobre todas as ações, as strings são deduplicadas entre projetos e as auditorias transformam correções em regras. O Crowdin tem um catálogo de integrações muito maior, um marketplace de tradutores e recursos de fluxo de trabalho com fornecedores que o Glossa não tenta igualar.
O Glossa é gratuito para um app (2.000 traduções por IA por mês). O Pro custa US$ 49 por mês para 25.000 traduções por IA, e o Team, US$ 199 por mês para 150.000; no plano anual, você ganha dois meses grátis. Todos os planos incluem todos os recursos, e importações, revisões e edições são gratuitas. Para o Enterprise, escreva para jonathan@getglossa.dev.
Não. Os arquivos ficam no seu repositório. Faça push do arquivo de origem a partir do CI ou de um hook de pre-commit e faça pull dos arquivos traduzidos no mesmo formato e com a mesma estrutura de caminhos. Comentários, ordem das chaves e detalhes específicos de cada arquivo são preservados quando o formato permite.
Envie seu primeiro arquivo
O Glossa é grátis para um app. Entre, envie um arquivo de tradução e baixe-o de volta em todos os idiomas.