Use when a product ships in several languages and untranslated text keeps slipping in. Scans code for user-facing strings not wrapped in the translation function, maps gaps to the translation files, reports coverage per language and fails PRs that add new untranslated strings.
87%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Fill this from a run: the per-locale block comes from the Step 3 diff, the untranslated-strings block from the Step 2 scan. Post it as a PR comment or a scheduled coverage summary.
<sha>Locales: 5 (en source + 4 targets) Total keys (en): 542 Untranslated source strings: 18 (newly flagged)
| Locale | Coverage | Missing keys | Orphan keys | Recent additions |
|---|---|---|---|---|
| de | 100% | 0 | 2 | +5 |
| fr | 98% | 12 | 0 | +5 |
| es | 87% | 71 | 0 | +5 |
| ja | 60% | 218 | 0 | +5 |
| File | Line | String | Suggested key |
|---|---|---|---|
src/checkout/PromoBanner.tsx | 18 | "Apply your discount" | checkout.promo.banner_cta |
src/cart/EmptyCart.tsx | 12 | "Your cart is empty" | cart.empty_message |
These keys exist in de.json but no longer in source - likely deprecated.
Recommend deletion:
legacy.old_promo_textlegacy.old_checkout_button