← Back to PRs

#22332: i18n: add Korean (ko-KR) locale support

by arusia88 open 2026-02-21 01:54 View on GitHub →
docs app: web-ui scripts size: S
## Summary - Add Korean (ko-KR) as a new UI locale with full translation of all strings - Register `ko-KR` in the `Locale` type, `SUPPORTED_LOCALES`, auto-detection (`navigator.language`), and lazy-load import - Add `languages.koKR` key to all existing locale files (en, zh-CN, zh-TW, pt-BR) - Add Korean option to the language selector dropdown in the Overview page ## Changed files | File | Change | |------|--------| | `ui/src/i18n/lib/types.ts` | Add `"ko-KR"` to `Locale` union | | `ui/src/i18n/lib/translate.ts` | Register in `SUPPORTED_LOCALES`, auto-detect, lazy-load import | | `ui/src/i18n/locales/ko-KR.ts` | **New** — full Korean translation data | | `ui/src/i18n/locales/en.ts` | Add `languages.koKR` | | `ui/src/i18n/locales/zh-CN.ts` | Add `languages.koKR` | | `ui/src/i18n/locales/zh-TW.ts` | Add `languages.koKR` | | `ui/src/i18n/locales/pt-BR.ts` | Add `languages.koKR` | | `ui/src/ui/views/overview.ts` | Add `<option value="ko-KR">` to language selector | ## Test plan - [x] TypeScript compiles with no new errors - [x] Lint passes (biome) - [ ] Manually verify Korean locale renders correctly in the UI 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- greptile_comment --> <h3>Greptile Summary</h3> Adds comprehensive Korean (`ko-KR`) locale support to the OpenClaw UI with complete translations for all interface strings. The implementation follows the established i18n pattern: - Type definition updated in `types.ts` to include `"ko-KR"` in the `Locale` union - Registered in `SUPPORTED_LOCALES` array and lazy-load imports in `translate.ts` - Auto-detection logic added for Korean browser language (`navigator.language`) - Full translation file created with all required keys matching the English structure - All existing locale files updated with the `languages.koKR` key for language selector consistency - Language selector dropdown in Overview page includes the new Korean option The Korean translation file structure mirrors existing locales and covers all sections: `common`, `nav`, `tabs`, `subtitles`, `overview`, `chat`, and `languages`. <h3>Confidence Score: 5/5</h3> - This PR is safe to merge with minimal risk - The changes are purely additive (new locale support) with no modifications to existing logic. The implementation correctly follows the established i18n pattern used by other locales (zh-CN, zh-TW, pt-BR). All integration points are properly updated (types, imports, auto-detection, lazy-loading, UI dropdown), and the Korean translation file has complete coverage of all required keys matching the English structure. - No files require special attention <sub>Last reviewed commit: db0af7d</sub> <!-- greptile_other_comments_section --> <sub>(2/5) Greptile learns from your feedback when you react with thumbs up/down!</sub> <!-- /greptile_comment -->

Most Similar PRs