Install
$ agentstack add skill-i18n-agent-i18nstack-localize-pt ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Portuguese Translation Rules (pt / Português)
Distilled from the production translation prompts (pt.ts, pt-br.ts, pt-pt.ts). Follow these rules verbatim — they are model-agnostic and produce consistent native-quality Portuguese output.
Mindset
> Você é um escritor nativo extremamente exigente que detesta traduções literais do inglês e construções pouco naturais.
Reject literal English calques. Restructure fully into natural Portuguese. Brazilian Portuguese is more tolerant of anglicisms (mouse, link, deploy); European Portuguese is stricter (rato, ligação, implementar).
Variant Selection (run FIRST)
Brazilian (pt-BR) and European (pt-PT) Portuguese directly conflict on many fundamental things — verb construction (está fazendo vs está a fazer), pronoun placement (Me diga vs Diga-me), article+possessive (seu arquivo vs o seu ficheiro), most everyday vocabulary, currency, and register defaults. Applying the wrong variant produces output that reads as foreign to native speakers of the other.
If the user has not specified the variant, before translating call AskUserQuestion with:
- Question:
Which Portuguese variant should I target? - Header:
PT variant - Options:
- Brazilian (pt-BR) —
vocêstandard, gerund (está fazendo), proclisis (Me diga), no article with possessive (seu arquivo),arquivo/salvar/usuário/celular, R$, warmer tone. ~210M speakers — the default for most consumer products. - European (pt-PT) —
tu/você/o senhor,a + infinitivo(está a fazer), enclitic (Diga-me), article with possessive (o seu ficheiro),ficheiro/guardar/utilizador/telemóvel, €, formal default, AO90 spelling. ~10M speakers in Portugal + Lusophone Africa.
If the user picks pt-BR, apply the Universal Portuguese base + pt-BR Deltas. Do NOT apply European rules.
If the user picks pt-PT, apply the Universal Portuguese base + pt-PT Deltas. Do NOT apply Brazilian rules.
Pre-Translation Setup
Lock in before translating:
- Variant — confirmed above.
- Formality — depends on variant. pt-BR:
vocêis the standard for all professional contexts. pt-PT: choose fromtu(informal),você(semi-formal),o senhor/a senhora(very formal). NEVER mix within a file. - Two genders — o (masc), a (fem). Articles, adjectives, participles all agree.
- Word order — SVO; most adjectives follow the noun.
- Placeholders — Preserve
{variables}and ICU plural syntax exactly.
Register Auto-Detection (run after Variant Selection + Pre-Translation Setup, before translating)
If the user has NOT specified formality, infer from source text register. The formality systems differ DRAMATICALLY by variant:
- pt-BR:
vocêworks as both formal and informal. Register signaled by contractions, exclamations, slang, NOT by pronoun choice. Informal pt-BR may usepra(= para),tá(= está),tô(= estou),né(= não é). Formal pt-BR keeps full forms. - pt-PT: three-level system (tu / você / o senhor). Formal source → você or o senhor; informal source → tu.
Formal source signals → pt-PT: você/o senhor + article+possessive (o seu ficheiro); pt-BR: você + full forms (no pra/tá/tô)
- Hedging / polite modals: "please", "kindly", "we recommend", "could you"
- Passive / impersonal: "users are advised", "it is recommended", "applicants must"
- No contractions: "do not", "cannot", "we will"
- Domain vocabulary: legal, financial, healthcare, regulatory, enterprise B2B, government, insurance
- Third-person / distance, long sentences, formal connectors
- Brand voice: bank, insurance, government, B2B SaaS, healthcare, legal tech
- No exclamations or emojis
Informal source signals → pt-PT: tu + verb conjugation; pt-BR: você + permitted contractions (pra/tá/tô) + warmer tone
- Contractions: "don't", "you'll", "it's", "we're"
- Casual greetings: "hey", "hi there", "yo", "hi 👋"
- Second-person directness, exclamations, emoji (🎉 😎 🚀 ✨)
- Slang: "cool", "awesome", "no worries", "kinda"
- Consumer-app voice: gaming, social, lifestyle, dating, fitness, kids
- Sentence fragments and conversational filler
Mixed / ambiguous source → default to FORMAL
- pt-PT: default to você (semi-formal) — safest mid-ground; reserve
tufor clearly casual /o senhorfor clearly very formal. - pt-BR: default to você with full forms (no contractions like
pra/tá).
pt-BR informal contraction markers (register, NOT a separate pronoun system)
| Formal pt-BR | Informal pt-BR | |--------------|----------------| | para | pra | | está / estás | tá / tás | | estou | tô | | não é? | né? | | você | cê (very casual, avoid in software UI) |
USE informal forms ONLY when source register clearly warrants it (consumer-app gaming/social/casual voice). NEVER use in B2B/government/banking.
Explicit user override
If the user says "use tu" / "use o senhor" / "formal" / "casual", their instruction wins.
Worked examples
| Source | Detected | pt-BR output | pt-PT output | |----------------|----------|---------------|---------------| | "Please review the terms of service before proceeding." | formal | Por favor, revise os termos de serviço antes de continuar. | Por favor, leia os termos do serviço antes de continuar. | | "Hey! Tap here to get started — it's super quick 🚀" | informal | Oi! Toque aqui pra começar — é super rápido 🚀 | Olá! Toca aqui para começares — é super rápido 🚀 | | "Submit your application by the deadline." | formal | Envie sua candidatura até o prazo. | Submeta a sua candidatura até ao prazo. | | "Don't forget to save your work!" | informal | Não esqueça de salvar seu trabalho! | Não te esqueças de guardar o teu trabalho! |
After detection: keep the chosen form consistent. NEVER mix register markers across pronouns, possessives, OR imperatives.
Universal Portuguese Base (apply to BOTH variants)
1. Gender of common IT nouns (memorize)
| Masculine (o) | Feminine (a) | |---------------|--------------| | o problema | a solução | | o sistema | a plataforma | | o programa | a aplicação | | o tema | a página | | o idioma | a conexão / ligação | | o mapa | a rede | | o dia | a interface | | o arquivo / ficheiro | a tabela | | o software | a consulta | | o servidor | a API | | o navegador | a IA | | o PDF | a CPU | | o URL | a Apple (company) | | o OneSky / Slack / Teams (foreign tech) | a tela / ecrã |
Patterns:
-ção / -são / -dade→ always feminine-ma(Greek origin) → usually masculine (problema, sistema, tema, idioma)- Acronyms inherit gender from expanded form (CRITICAL):
a IA(Inteligência Artificial),a API(Interface de Programação),o PDF(Formato),o URL(Localizador),a CPU(Unidade).
Common errors: a problema → o problema; o plataforma → a plataforma; nosso IA → nossa IA.
2. Article contractions (mandatory)
| Combine | → | |---------|---| | de + o | do | | de + a | da | | em + o | no | | em + a | na | | a + a | à |
de o sistema → do sistema. em a plataforma → na plataforma.
3. Article completeness in noun phrases (CRITICAL)
Specific known nouns require contracted articles in prepositional phrases. Exception: generic classifiers (erro de sistema = type of error, vs erro do sistema = error of THE system).
| Wrong | Correct | |-------|---------| | Erro de aplicação | Erro da aplicação | | Configuração de conta | Configuração da conta | | Estado de conexão (br) / Estado de ligação (pt) | Estado da conexão / Estado da ligação | | Detalhes de transação | Detalhes da transação |
4. FOR vs PER — never confuse (CRITICAL)
| English | Wrong | Correct | |---------|-------|---------| | for 5 languages (total) | por idioma | para 5 idiomas | | per language (rate) | para idioma | por idioma |
5. Translate English acronyms
| Wrong | Correct | |-------|---------| | AI translation | tradução com IA | | nosso AI | nossa IA (IA = Inteligência Artificial, fem) |
6. UI button labels — infinitive form
| Wrong (imperative) | Correct (infinitive) | |--------------------|----------------------| | Salve / Guarde | Salvar / Guardar | | Cancele | Cancelar | | Exclua / Elimine | Excluir / Eliminar |
7. Completion messages — participial (NOT "bem-sucedido")
bem-sucedido is an adjectival calque of "successful". Use participial forms.
| Wrong | Correct (pt-BR) | Correct (pt-PT) | |-------|------------------|------------------| | Pagamento bem-sucedido | Pagamento realizado | Pagamento efetuado / Pronto! | | Upload bem-sucedido | Upload concluído / Arquivo enviado | Carregamento concluído / Ficheiro carregado | | Download completo | Download concluído / Download finalizado | Transferência concluída | | Operação completa | Operação concluída / Pronto! | Operação concluída |
8. Empty state — Não há X or Nenhum(a) X
| Wrong | Correct | |-------|---------| | Não foram selecionados idiomas | Não há idiomas selecionados / Nenhum idioma selecionado | | Não foram encontrados resultados | Não há resultados / Nenhum resultado | | Sem dados | Nenhum dado disponível / Não há dados disponíveis | | Vazio | Nenhum item encontrado |
9. Calques to avoid (universal)
| Wrong (literal) | Natural Portuguese | |-----------------|---------------------| | faz sentido (overused) | tem sentido / é lógico | | não realmente | na verdade não / não exatamente (br) / não propriamente (pt) | | a nível de | em termos de / quanto a | | numa base diária/semanal | diariamente / semanalmente / todos os dias | | em termos de | quanto a / no que diz respeito a / relativamente a | | [Subject] é necessário/obrigatório para [Purpose] | É necessário [Subject] para [Purpose] |
10. False friends (universal)
| Wrong (English meaning) | Actual Portuguese meaning | Correct | |--------------------------|---------------------------|---------| | atualmente (for "actually") | currently | na verdade / de fato (br) / efetivamente (pt) | | eventualmente (for "eventually") | possibly | finalmente | | realizar (for "to realize") | to carry out | perceber / aperceber-se (pt) / dar-se conta (br) | | pretender (for "pretend") | to intend | fingir | | suportar (for "to tolerate") | to tolerate | apoiar / dar suporte (in tech context, suportar is accepted for "support a feature") |
11. Marketing "Zero X" → "Sem X"
| Wrong | Correct | |-------|---------| | Zero tempo de inatividade / Zero downtime | Sem tempo de inatividade / Sem interrupções / Disponibilidade contínua | | Zero erros | Sem erros / Livre de erros / Nenhum erro | | Zero manutenção | Sem manutenção / Não requer manutenção | | Zero compromisso | Sem compromisso / Sem obrigação |
12. Adjective order — postnominal for abstract qualities
| Wrong | Correct | |-------|---------| | com perfeita coerência | com uma coerência perfeita / de forma perfeitamente coerente | | de superior qualidade | de qualidade superior / de alta qualidade | | qualidade humana (tech) | qualidade ao nível humano / qualidade de nível humano / qualidade profissional |
13. Compound adjectives — natural construction
| English pattern | Wrong | Correct | |-----------------|-------|---------| | AI-powered / X-powered | IA-alimentado, tradução de IA | com IA / inteligente / alimentado por IA / baseado em IA / tradução com IA | | context-aware / X-aware | contexto-consciente | contextual / sensível ao contexto / inteligente | | user-friendly | utilizador-amigável (pt) / usuário-amigável (br) | intuitivo / amigável / fácil de usar | | cloud-based | nuvem-baseado | na nuvem / baseado na nuvem | | supported formats | formatos suportados | formatos compatíveis (br rejects suportados for features) |
14. Software terminology — IT meaning
| English | Wrong | Correct | |---------|-------|---------| | build (software) | construção | desenvolver / criar / implementar | | deploy | desdobrar | implementar / colocar em produção / lançar (pt) / implantar / fazer deploy (br accepts loanword) | | support (feature) | (only apoiar) | suportar / ser compatível com / incluir suporte para (tech suportar is accepted) | | sync seamlessly | sincronizar facilmente | sincronizar automaticamente / manter sincronizado | | listings (app store) | listagens | fichas da aplicação (pt) / fichas do aplicativo (br) / páginas da aplicação | | architecture (software) | arquitetura (construção) | arquitetura de software | | pipeline (CI/CD) | canalização | pipeline (CI/CD) | | source of truth | fonte da verdade | fonte de referência / fonte autoritativa |
15. Brand names — no article for platform destinations
| Wrong | Correct | |-------|---------| | sincronizar com a Apple App Store | sincronizar com Apple App Store | | em a App Store | em Apple App Store / em App Store | | publicar no o Google Play | publicar em Google Play |
When brand IS the subject: A App Store oferece... (with article OK when modified). Foreign tech brands default to masculine: o OneSky, o Slack, o Teams. Exception: a Apple (company name).
16. Punctuation rules (universal)
- Decimal separator:
,(comma) - Thousands separator:
.(period) - Wrong:
1,234.56→ Correct:1.234,56 - No space before colon:
Nota: istonotNota : isto - NO comma before
e/ou:Salvar e fechar - Comma BEFORE
mas / porém / contudo / porque:simples**,** mas eficaz
17. Sentence case (not Title Case)
Wrong: Conteúdo de Texto → Correct: Conteúdo do texto (Portuguese uses sentence case for UI strings — only first word and proper nouns capitalized).
17b. Orthography (Acordo Ortográfico 1990 — AO90)
AO90 applies to BOTH pt-BR and pt-PT — it was adopted in Brazil starting in 2009 and obligatory since 2016, and in Portugal obligatory since 2015. Do not produce pre-AO90 spellings in either variant.
Common AO90 spellings (apply universally):
| Pre-AO90 (wrong) | AO90 (correct) | |------------------|----------------| | projecto | projeto | | acção | ação | | actual | atual | | óptimo | ótimo |
Pairs that legitimately differ between BR and PT post-AO90 (silent-consonant divergence):
| Concept | pt-BR | pt-PT | |---------|-------|-------| | reception | recepção (BR kept the p) | receção (PT dropped silent p) | | fact / suit | fato (also means "suit") | facto (PT kept c to distinguish from fato = suit) |
Hyphenation under AO90 (universal):
| Old | New | |-----|-----| | re-escrever | reescrever | | co-autor | coautor | | auto-retrato | autorretrato |
18. Quantity expressions
| Wrong | Correct | |-------|---------| | 25+ idiomas | mais de 25 idiomas | | +{count} mais (pt) / +{count} a mais (br) | e mais {count} (pt) / e {count} outros / outros {count} (br) |
19. Prepositional-chain simplification (max 2)
- Wrong:
produtos de cuidados da pele à noite - Correct:
produtos de cuidados noturnos / cuidados noturnos da pele
20. Drag-drop (UNIVERSAL terms; variants differ on drop)
- drag =
arrastar - drop =
soltar(pt-BR) /largar(pt-PT) — see variant deltas - "Standard phrase":
Arrastar e soltar(br) /Arrastar e largar(pt)
21. Block verb mood consistency
Child items must match the verb mood frame set by the parent title/heading.
| Title frame | Wrong child | Correct child | |-------------|-------------|---------------| | O que você obteria: (conditional) | Receba uma proposta... (imperative) | Você receberia... (conditional) or `Proposta no próximo dia útil.
…
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: i18n-agent
- Source: i18n-agent/i18nstack
- License: MIT
- Homepage: https://i18nagent.ai
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.