# Vkc I18N Ko Vi Safety

> Prevent i18n regressions for ko/en/vi (missing keys, long Vietnamese text UI breakage). Use when changing messages/*.json or adding user-facing strings.

- Skill: `majiayu000/vkc-i18n-ko-vi-safety` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add majiayu000/vkc-i18n-ko-vi-safety`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/vkc-i18n-ko-vi-safety/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/vkc-i18n-ko-vi-safety

---


# VKC i18n (ko/en/vi) Safety

## When to use

- You add/edit user-facing strings
- You touch `messages/*.json`
- A UI breaks only in Vietnamese

## Rules

- Never ship a key in only one of `ko/vi`.
- Keep nested key structure consistent across `ko.json`, `en.json`, `vi.json`.
- Avoid hardcoded literal strings in components; prefer message keys.

## Checks

- Run: `bash .codex/skills/vkc-repo-guardrails/scripts/lint-i18n-keys.sh`

## UI safety for long Vietnamese strings

- Apply “layout-safe” patterns by default:
  - `min-w-0` on flex children that contain text
  - `break-words` or `whitespace-pre-line` where wrapping is required
  - `line-clamp-*` where space must be capped
  - avoid fixed widths for text containers unless truncation is intentional

## Reference

- `.codex/skills/vkc-i18n-ko-vi-safety/references/i18n-ui-safety.md`

