translation-sync

Synchronize i18n translation files by translating only changed keys across target languages.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Keeping multilingual translation files in sync with a source language file is tedious and error-prone: new keys get missed, removed keys linger, variables get broken, and tone drifts across languages. This Skill automates delta-based synchronization so only changed keys are translated while everything else is preserved. ## Core Features & Use Cases - Delta Translation: Uses git diffs to detect added, modified, or removed keys and translates only what changed, reusing existing valid translations. - Variable & Glossary Integrity: Preserves placeholders like {name}, %s, and HTML tags, enforces do-not-translate terms and binding glossary mappings, and flags mismatches with TODO or [GLOSSARY] markers. - Tone Calibration & Atomic Writes: Detects formal/informal register conflicts per language and writes files atomically via a temp-file-then-rename pattern so originals are never corrupted. - Use Case: After adding five new UI strings to en.json, run the sync to update French, German, and Japanese files with only those five keys translated, sorted and validated. ## Quick Start Ask the assistant to run translation-sync to synchronize all translation files with the source language, translating only the keys that changed since the last commit.

Frequently Asked Questions about translation-sync

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

FAQPage Schema
How do I sync translation files after changing source strings?

Run translation-sync and it uses git diff to detect added, modified, or removed keys in the source file, then translates only those keys into each target language. Unchanged valid translations are reused automatically.

What translation file formats does translation-sync support?

It supports JSON, YAML, PO, XLIFF, ARB, and properties files, with auto-detection when the format field is set to auto. Nested keys are flattened with dot notation during processing and restored on write.

Can I preview translation changes before writing files?

Yes, pass dry-run or --dry-run as an argument to get a summary of reused, translated, and removed keys plus sample translations without modifying any files. This is useful for reviewing output in CI pipelines.

Does it preserve placeholders like {name} and %s in translations?

Yes, it detects variable patterns including {name}, {{name}}, %s, %(name)s, and positional formats, then verifies every source variable appears in the translation. Missing variables trigger a TODO: prefix marker for review.

What happens if a translation file write fails midway?

Writes are atomic: content goes to a .tmp file, is re-parsed for validity, then renamed over the original. On any failure the temp file is deleted and the original file remains untouched.

How does it handle formal versus informal tone conflicts?

It samples existing translations to detect register (e.g., German Sie vs du) and compares against the configured tone. Conflicts prompt the user interactively, or follow the --tone-conflict flag in non-interactive runs, defaulting to existing tone.