What it does
i18n and Localization Agent prepares a codebase for a new market. You supply the scanned repo data — files and the hardcoded UI strings found in them — plus your target locales, and it extracts those strings into meaningful namespaced keys like settings.save_changes rather than leaving them inline, then produces i18next-compatible locale JSON files ready for a translation PR. The part that matters most is what it refuses to do. Machine translation is applied only to short UI-control strings. Anything longer than roughly fourteen words is treated as marketing or prose copy: it is never auto-translated, it is excluded from the generated locale files, and it is surfaced explicitly in the missing-translations report with a marketing-review finding for a human translator. Machine translation is not good enough for the copy that sells your product, and an agent that quietly translates it anyway does real damage in a market nobody on your team can read. It also flags right-to-left risk. For Arabic, Hebrew, Persian and Urdu it identifies strings long enough to plausibly overflow a fixed-width container once the layout mirrors — the class of bug that only shows up after launch, in a locale nobody reviews. Each step is callable on its own. `check_rtl_risk` answers the layout question without generating any files. `list_missing_translations` gives you the per-locale gaps, separating dictionary misses from copy deliberately withheld for a human. `extract_keys` returns just the key extraction. `plan_pr` returns the branch, title and files changed. `run_full` does everything. Extraction, coverage scoring, RTL detection and file generation are all deterministic. The language model only narrates the findings, and source text is sanitised for prompt injection before it reaches the model. No connectors and no credentials — it works on the scan you provide and sends nothing anywhere. Built for frontend developers and localization specialists shipping into a new market.
Example prompts
- Prepare this repo scan for German and Arabic
- Extract translation keys from these hardcoded strings
- Which strings will overflow in right-to-left layouts?