translation-health

Audit translation files for coverage gaps, dead keys, and variable mismatches.

3|Updated Aug 8, 2026
One-click install
npx skills add https://github.com/Jose-Polanco-Oxte/Echos-Live-Music-Visualizer --skill translation-health-jose-polanco-oxte
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: translation-health
Source: https://github.com/Jose-Polanco-Oxte/Echos-Live-Music-Visualizer/tree/main/.agents/skills/localization/sub-skills/software-localization/translation-health
Command: npx skills add https://github.com/Jose-Polanco-Oxte/Echos-Live-Music-Visualizer --skill translation-health-jose-polanco-oxte

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Translation files drift out of sync with source code as projects grow, leaving missing keys, orphaned entries, TODO markers, and broken variable placeholders that surface as bugs in production. This Skill audits your i18n files and reports exactly what needs fixing without modifying anything. ## Core Features & Use Cases - Coverage Analysis: Computes per-language metrics including translated, missing, extra, TODO, and empty keys with a coverage percentage table. - Variable & Glossary Integrity: Detects mismatched interpolation variables between source and target strings and verifies glossary terms and do-not-translate rules. - Deep Dead-Key Detection: With the --deep flag, scans source code for unused keys while respecting dynamic key families built at runtime via template literals or concatenation, avoiding false positives. - Use Case: Before a release, run a health check to confirm German and Japanese translations are complete, catch a missing {count} variable in the Japanese pluralization string, and remove orphaned keys from a deprecated feature. ## Quick Start Ask the assistant to run a translation health check on this project, optionally with the deep flag to also find dead keys and hardcoded strings.

Frequently Asked Questions about translation-health

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I check translation coverage across multiple languages?

Run a translation health check to compare each target language file against the source language. It reports translated, missing, extra, TODO, and empty keys per language along with a coverage percentage, so you can see exactly which locales need work.

How to find unused or dead translation keys in source code?

Use the deep analysis mode, which greps source files for key references in t(), $t(), formatMessage(), and similar calls. It accounts for dynamically constructed keys via configurable prefixes and auto-inferred template-literal patterns, so runtime-built key families are not falsely flagged as dead.

Can it detect mismatched variables in translated strings?

Yes, it extracts interpolation variables from both source and target strings for every translated key. It flags keys where the target is missing a source variable or contains an extra variable not present in the source, which usually indicates a typo.

Does the translation health check modify my files?

No, the audit is strictly read-only. It analyzes translation files and source code, then outputs a structured report with severity classifications, leaving all fixes to a separate sync step or manual editing.

Why does dead-key detection report false positives?

Naive grep-based detection misses keys built at runtime, such as t(`Api.${endpoint}`). This check loads dynamicKeyPrefixes and dynamicKeyPatterns from config and auto-infers prefixes from template literals and concatenation in code, suppressing those families from the dead-key report.