AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Localize Ko

skill-i18n-agent-i18nstack-localize-ko · by i18n-agent

Use when translating or localizing UI strings, marketing copy, documentation, or any source text into Korean (ko). Enforces 존댓말 speech-level consistency, 받침-based particle selection (including loanword pronunciation), SOV restructuring, Konglish false-friend avoidance, and native-Korean preference over transliterations.

No reviews yet
0 installs
19 views
0.0% view→install

Install

$ agentstack add skill-i18n-agent-i18nstack-localize-ko

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-i18n-agent-i18nstack-localize-ko)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Localize Ko? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Korean Translation Rules (ko / 한국어)

Distilled from the production translation prompts. Follow these rules verbatim — they are model-agnostic and produce consistent native-quality Korean output.

Mindset

> 당신은 한국어 원어민 작가로서 영어 직역체나 부자연스러운 한국어 표현을 매우 싫어합니다.

You are a strict Korean native writer who rejects English-style direct translation and Konglish. Preserve meaning, restructure ALL English SVO into SOV, and prefer native Korean over transliterated English when both exist.

Pre-Translation Setup

Lock in before translating:

  1. Speech level (존댓말) — Default to 해요체 (Polite) for modern UI, or 하십시오체 (Formal) for official docs. NEVER use 해체 (Casual) in professional contexts. Never mix levels.
  2. SOV word order — Restructure all English SVO sentences.
  3. Pro-drop language — Omit 당신/너/저 when context is clear.
  4. Half-width punctuation — Korean uses ASCII punctuation (unlike Japanese/Chinese).
  5. Placeholders — Preserve {variables} and ICU plural syntax exactly.

Register Auto-Detection (run after Pre-Translation Setup, before translating)

If the user has NOT explicitly specified the speech level, infer it from the source text register. Match the output to the source — formal source → 하십시오체, informal source → 해요체. NEVER use 해체 (casual) regardless of source informality — it is forbidden in professional UI.

Formal source signals → output 하십시오체 (-습니다 / -ㅂ니다 / -십시오)

  • Hedging / polite modals: "please", "kindly", "we recommend", "we kindly request", "could you", "would you mind"
  • Passive / impersonal: "users are advised", "it is recommended", "applicants must"
  • No contractions, full sentences, formal connectors
  • Domain vocabulary: legal, financial, healthcare, regulatory, enterprise B2B, government, insurance
  • Third-person / distance: "the user must", "customers should"
  • Brand voice: bank, insurance, government, B2B SaaS, healthcare, legal tech
  • No exclamations or emojis

Informal source signals → output 해요체 (-어요 / -아요 / -세요)

  • Contractions: "don't", "you'll", "it's", "we're"
  • Casual greetings: "hey", "hi there", "yo", "what's up", "hi 👋"
  • Second-person directness, exclamations, emoji presence (🎉 😎 🚀 ✨)
  • Slang: "cool", "awesome", "no worries", "kinda"
  • Consumer-app voice: gaming, social, lifestyle, dating, fitness, kids
  • Sentence fragments and conversational filler

Mixed / ambiguous source → default to 해요체

Modern Korean software defaults to 해요체 (polite but friendly). 하십시오체 reserved for explicitly formal / government / banking / very B2B.

Explicit user override

If the user says "use formal speech" / "use 하십시오체" / "make it casual" — their instruction wins.

Worked examples

| Source | Detected register | Korean output style | |----------------|-------------------|---------------------| | "Please review the terms of service before proceeding." | formal | 진행하기 전에 이용 약관을 확인하십시오. | | "Hey! Tap here to get started — it's super quick 🚀" | informal (해요체) | 안녕하세요! 여기를 눌러 시작하세요. 정말 빨라요 🚀 | | "Submit your application by the deadline." | formal | 기한 내에 신청서를 제출하십시오. | | "Don't forget to save your work!" | informal (해요체) | 작업을 저장하는 것을 잊지 마세요! |

After detection: keep the chosen speech level consistent throughout the file. The no-mixing rule still applies.

Critical Accuracy Rules (NEVER violate)

1. Particles by final sound (받침)

| Sound | Subject | Object | Topic | And | |-------|---------|--------|-------|-----| | Ends in consonant (받침 O) | 이 | 을 | 은 | 과 | | Ends in vowel (받침 X) | 가 | 를 | 는 | 와 |

Loanwords / abbreviations — choose particle by KOREAN PRONUNCIATION of the final syllable:

| Loanword | Korean reading | Final | Particle | |----------|----------------|-------|----------| | Google | 구글 | 글 (받침 ㄹ) | 을 / 이 / 은 | | API | 에이피아이 | 이 (vowel) | 를 / 가 / 는 | | GPT-5 | 파이브 | 브 (vowel ㅡ) | 를 / 가 / 는 | | RTL | 알티엘 | 엘 (받침 ㄹ) | 을 / 이 / 은 | | USB | 유에스비 | 비 (vowel) | 를 / 가 / 는 |

NEVER output both particles like RTL을(를) or 이(가) — that is a mechanical artifact. Always pick exactly one based on pronunciation.

2. Word vs Character — completely different

| English | Wrong | Correct | |---------|-------|---------| | word count | 글자 수 | 단어 수 | | character count | 단어 수 | 글자 수 |

word = 단어 ; character = 글자.

3. FOR vs PER — total vs rate

| English | Wrong | Correct | |---------|-------|---------| | for # languages (total) | #언어당 | #개 언어에 대해 / #개 언어 기준 | | per language (rate) | 언어에 대해 | 언어당 / 각 언어마다 |

4. Measurement unit words after numeric placeholders

| Wrong | Correct | |-------|---------| | {seconds} 후 삭제 | {seconds} 후 삭제 | | {minutes} 후 재시도 | {minutes} 후 재시도 | | 남은 시간: {hours} | 남은 시간: {hours}시간 | | {days} 이내 완료 | {days} 이내 완료 |

5. Temporal expression agreement

| Meaning | Use | Don't use | |---------|-----|-----------| | Countdown / future | ~후 (after) | ~중 (means "during") | | Ongoing status | ~중 / ~하는 중 | ~후 | | Deadline | ~이내 (within) | — |

{days}일 중 is wrong — means "during the daytime". Use {days}일 후.

6. Placeholder type markers

| Wrong | Correct | |-------|---------| | {formatList} 파일 지원 | {formatList} 형식의 파일 지원 | | {languageList} 콘텐츠 | {languageList} 언어의 콘텐츠 |

7. Measure words (분류사)

| Counter | Use for | |---------|---------| | 개 | General items, languages | | 명 | People | | 건 | Cases / records | | 가지 | Types / kinds | | 번 | Times / counts |

Wrong: {count}언어 → Correct: {count}**개** 언어. Wrong: {count}명 언어 → 명 is for people, not items.

Native vs Sino-Korean Numerals

Korean has two number systems, and the wrong system with a counter is immediately wrong to native ears.

Two number systems

| # | Native Korean (고유어) | Sino-Korean (한자어) | |---|------------------------|-----------------------| | 1 | 하나 (하나/한) | 일 | | 2 | 둘 (둘/두) | 이 | | 3 | 셋 (셋/세) | 삼 | | 4 | 넷 (넷/네) | 사 | | 5 | 다섯 | 오 | | 6 | 여섯 | 육 | | 7 | 일곱 | 칠 | | 8 | 여덟 | 팔 | | 9 | 아홉 | 구 | | 10 | 열 | 십 | | 20 | 스물 (스무) | 이십 | | 30 | 서른 | 삼십 | | 40 | 마흔 | 사십 | | 50 | 쉰 | 오십 | | 60 | 예순 | 육십 | | 70 | 일흔 | 칠십 | | 80 | 여든 | 팔십 | | 90 | 아흔 | 구십 | | 100 | 백 (Sino-only past 99) | 백 | | 1000 | — | 천 | | 10000 | — | 만 | | 100000000 | — | 억 |

Native numbers stop at 99; from 100 up, Korean uses Sino-Korean.

Use NATIVE numbers with these counters

| Counter | Meaning | Example | |---------|---------|---------| | 개 | general items | 세 개 (3 items) | | 명 | people | 다섯 명 (5 people) | | 분 | people (honorific) | 두 분 (2 people, polite) | | 살 | age in years | 스무 살 (20 years old) | | 시 | clock hour | 열두 시 (12 o'clock) | | 마리 | animals | 한 마리 (1 animal) | | 권 | books | 세 권 (3 books) | | 잔 | cups | 두 잔 (2 cups) | | 병 | bottles | 한 병 (1 bottle) | | 그릇 | bowls | 두 그릇 (2 bowls) |

Note attributive forms when modifying a counter: 하나 → 한, 둘 → 두, 셋 → 세, 넷 → 네, 스물 → 스무. (한 개, NOT 하나 개.)

Use SINO-KOREAN numbers with these counters

| Counter | Meaning | Example | |---------|---------|---------| | 분 | minutes | 삼십 분 (30 minutes) | | 초 | seconds | 십 초 (10 seconds) | | 일 | days | 오 일 (5 days) | | 월 | months | 삼 월 (March) | | 년 | years | 이천이십사 년 (year 2024) | | 번 | number / ordinal | 일 번 (number 1) | | 원 | won (currency) | 오천 원 (5,000 won) | | 층 | floor | 오 층 (5th floor) | | 호 | room/number | 삼백일 호 (room 301) | | 차 | sequence / nth | 일 차 (1st round) | | 인분 | servings | 이 인분 (2 servings) |

Mixed pattern for time

  • Hour = native, Minute = Sino-Korean: 세 시 삼십 분 (3:30)
  • 오후 두 시 십오 분 (2:15 PM)
  • In digital UI, prefer numerals + units: 14:30 or 오후 2시 30분 (where 2 reads as 두 [native] and 30 reads as 삼십 [Sino]).

Common UI pitfalls

| Wrong | Correct | |-------|---------| | 일 개 (1 item) | 한 개 | | 삼 명 (3 people) | 세 명 | | 두 분 (2 minutes — time) | 이 분 | | 다섯 원 (5 won) | 오 원 | | 한 초 (1 second) | 일 초 | | 이 살 (2 years old) | 두 살 |

8. Plural marker 들 — omit when number is present

Wrong: {count}개 파일들 → Correct: {count}개 파일.

9. Domain terminology — use IT loanwords

| Source | Wrong (literal) | Correct (IT term) | |--------|-----------------|---------------------| | architecture | 건축 | 아키텍처 | | pipeline (CI/CD) | 배관 | 파이프라인 | | deploy | 배치하다 (military) | 배포하다 | | source of truth | 진실의 원천 | 정보의 원천 / 기준점 | | bug (software) | 벌레 | 버그 |

UI Conventions

Buttons — verb stem / noun form

| Wrong | Correct | |-------|---------| | 프로젝트를 생성합니다 | 프로젝트 생성 | | 저장합니다 | 저장 |

Status messages — ongoing → ~중

| Wrong | Correct | |-------|---------| | 번역하다 | 번역 중 / 번역하는 중 | | 업로드하다 | 업로드 중... |

Completion messages — ~완료 / ~되었습니다

| Wrong | Correct | |-------|---------| | 저장하다 | 저장 완료 / 저장되었습니다 | | 번역하다 | 번역이 완료되었습니다 | | 업로드 중 (for completed) | 업로드 완료 |

Empty state — negative existence

| Wrong | Correct | |-------|---------| | 결과가 비어 있습니다 | 결과가 없습니다 / 결과를 찾을 수 없습니다 | | 선택 안 됨 | 선택된 항목이 없습니다 |

Drag and drop

| English | Korean | |---------|--------| | drag | 드래그 | | drop | 드롭 / 놓기 | | release (let go) | 놓다 / 드롭하다 — NOT 허용 (permit) | | browse (file picker) | 찾아보기 / 파일 선택 — NOT 브라우즈 |

Validation messages

Connectors: 및 / 과 (and), 또는 (or), 만 / 뿐 (only).

  • Wrong: 3-50자, 문자, 숫자, 하이픈만
  • Correct: 3-50자, 사용 가능: 영문자, 숫자, 하이픈

Other UI patterns

| Wrong | Correct | Reason | |-------|---------|--------| | 대체 감지 | 대체 감지 방법 | Labels need complete noun phrases | | 자동 (bare) | 자동 모드 / 자동 감지 | Add completing noun | | 25+언어 | 25개 이상의 언어 | "N+" → N개 이상의 ~ | | +{count} 더 | 외 {count}개 | "+N more" pattern |

Speech Level Consistency

NEVER mix levels in same context.

| Don't mix | Use | |-----------|-----| | 변경하세요 + 눌러 | 변경하세요 + 누르세요 (해요체) | | 확인하십시오 + 저장했어요 | 확인하십시오 + 저장되었습니다 (하십시오체) |

UI labels (buttons/nouns) stay in stem/noun form regardless of speech level.

Politeness Softeners

Korean has fine-grained politeness markers that soften requests, questions, and statements. Use sparingly — overuse sounds obsequious.

Softening adverbs

| Marker | Romanization | Function | Example | |--------|--------------|----------|---------| | 좀 | jom | "a little" / "please" — conversational softener | 좀 기다려 주세요 (please wait) — softer than 잠시만 기다려 주세요 | | 부디 | budi | "kindly" / "please earnestly" — formal | 부디 확인해 주시기 바랍니다 (we kindly request your confirmation) | | 혹시 | hoksi | "by any chance" — softens questions / hedges | 혹시 시간이 있으신가요? (do you happen to have time?) | | 잠시 | jamsi | "for a moment" — buffers requests | 잠시만요 (one moment please) | | 아무쪼록 | amujjorok | "in any case" / "above all" — earnest hope | 아무쪼록 양해 부탁드립니다 (we earnestly ask for your understanding) |

~주세요 ending (CRITICAL)

The ~주세요 ending is the standard polite request marker in 해요체. Do NOT omit it when making a request — bare imperatives sound rude.

| Wrong (bare) | Correct (with 주세요) | |--------------|-----------------------| | 확인해 | 확인해 주세요 | | 기다려 | 기다려 주세요 | | 입력해 | 입력해 주세요 |

~시- honorific infix (subject elevation)

The ~시~ infix elevates the subject of the verb (the person doing the action). It produces honorific verb stems.

| Plain verb | Honorific form | Meaning | |------------|----------------|---------| | 가다 (go) | 가시다 | (someone respected) goes | | 먹다 (eat) | 잡수시다 | (someone respected) eats | | 있다 (be / exist) | 계시다 | (someone respected) is present | | 자다 (sleep) | 주무시다 | (someone respected) sleeps | | 말하다 (say) | 말씀하시다 | (someone respected) speaks |

드리다 vs 주시다 (give — directionality matters)

| Form | Direction | Use | |------|-----------|-----| | 드리다 | I give → you (humble, lowering self) | 말씀 드리겠습니다 (I will tell you, humble) | | 주시다 | You give → me (honorific, elevating other) | 알려 주세요 (please tell me) |

Mixing them up sounds reversed — 드리다 must elevate the receiver, 주시다 must elevate the giver.

Punctuation — half-width (ASCII)

Korean is unlike Japanese/Chinese — use standard ASCII punctuation, no full-width.

| Wrong | Correct | |-------|---------| | 상태 : 완료 | 상태: 완료 |

  • Decimal: . Thousands: , Quotation: "..." or '...'

Full-width brackets — title/quotation contexts only

While modern Korean UI uses Western punctuation ("..."), specific contexts DO use full-width brackets:

| Bracket | Use for | Example | |---------|---------|---------| | 『 』 | Book titles | 『나미야 잡화점의 기적』 | | 「 」 | Chapter titles, short works, quoted titles within a work | 「제3장: 시작」 | | 〈 〉 or 《 》 | Movies, albums, songs, exhibitions, performances | 〈기생충〉, 《BE》 (BTS album) |

For inline UI prose, prefer Western quotes "..." or '...'. Use full-width brackets only when explicitly citing media titles in editorial / marketing copy.

Spacing (띄어쓰기)

  • Space between Korean and Latin script/numbers: API 설정 not API설정, 합계 10건 not 합계10건.
  • No space between a Korean stem and its suffix/particle: 저장하기 not 저장 하기.

Native vs Loanword — prefer native for UI

| Avoid (transliterated) | Use (native) | |------------------------|--------------| | 세이브 | 저장 | | 세팅 | 설정 | | 셀렉트 | 선택 | | 캔슬 | 취소 | | 딜리트 | 삭제 | | 에딧 | 편집 | | 서치 | 검색 |

Spelling that natives expect (revised orthography):

| Wrong | Correct | |-------|---------| | 컨텐츠 | 콘텐츠 | | 메세지 | 메시지 |

Konglish False Friends (콩글리시)

| Konglish | Korean meaning | Correct for English | |----------|----------------|---------------------| | 서비스 | free bonus / complimentary | 서비스 (only if literally "service") | | 핸드폰 | hand phone (Konglish) | 휴대폰 / 스마트폰 | | 미팅 | group blind date | 회의 (business meeting) | | 원샷 | "drink in one gulp" | 한 번에 / 단번에 |

Calques to avoid

| Literal (wrong) | Natural Korean | |-----------------|-----------------| | 말이 된다 | 이치에 맞다 / 합리적이다 | | 하루의 끝에 | 결국 / 궁극적으로 | | 테이블 위에 있다 (abstract) | 논의 중이다 | | 공은 당신 코트에 | 당신에게 달렸습니다 | | 정말로 아니다 ("not really") | 실제로는 아니다 / 그렇지 않다 | | Break a leg | 화이팅! / 행운을 빕니다 | | Piece of cake | 식은 죽 먹기 / 누워서 떡 먹기 | | When pigs fly | 해가 서쪽에서 뜨면 |

Compound Adjectives

| English | Wrong | Correct | |---------|-------|---------| | X-aware | 컨텍스트 어웨어 | 문맥을 인식하는 | | AI-powered/driven | AI 구동형 | AI 기반 / AI 활용 |

Compound Descriptive Nouns

Decompose English compounds, rebuild naturally.

  • "mom creators" → 엄마 크리에이터 or 육아 크리에이터 (NOT 어머니 창작자)
  • "niche creators" → 니치 크리에이터 or 틈새시장 크리에이터
  • "English-speaking customer service" → 영어 고객 서비스 (compound adjective, not relative clause)

UI Element Reference in Prose

When referencing a UI label by name in prose, use quotes or brackets:

  • Wrong: 이름의 필드 → Correct: '이름' 필드 or [이름] 필드
  • Wrong: 계정의 탭 → Correct: '계정' 탭
  • Generic elements (검색창) need no quotes.

Spatial Metaphor Prepositions

| English (figurative) | Use | Don't use | |---------------------|-----|-----------| | under [category] | ~에서 / ~ 중에서 | ~ 아래에 | | on top of (in addition to) | ~에 더해 / ~외에도 | ~ 위에 | | behind the scenes | 비하인드 / 무대 뒤 | (literal) | | within [timeframe] | ~ 이내에 / ~ 안에 | ~ 내부에 |

Temporal Simile Restructuring

| English | Wrong (literal) | Natural | |---------|-----------------|---------| | operating like it's 1995 | 1995년처럼 운영하고 있다 | 1995년에서 멈춰 있다 / 1995년 이후로 변한 게 없다 | | stuck in [YEAR] | [YEAR]년 그대로 운영 중이다 | [YEAR]년 이후로 발전이 없다 / 아직도 [YEAR]년 방식이다 |

Polysemy — pick the right sense

| Word | Wrong (literal) | Correct (contextual) | |------|-----------------|--------------------| | copy (marketing) | 복사 | 문구 / 카피 | | sauce (figurative) | 소스 (양념) | 비결 / 핵심 요소 | | bug (software) | 벌레 | 버그 | | resume (verb) | 이력서 | 재개하다 |

Proper Nouns — use natural Korean forms

| Wrong | Correct | |-------|---------| | 오스트레일리아 | 호주 | | 아메리카 합중국 | 미국 | | 그레이트 브리튼 | 영국 | | 미국 영어 | 미국식 영어 (use X식 for language variants) |

Tense / Aspect Fidelity

Don't flatten ongoing/habitual into completed actions.

| English (ongoing) | Wrong (past) | Correct (progressive) | |--------|--------------|------------------------| | we are building | 우리가 구축했습니다 | 우리가 구축하고 있습니다 | | costs are increasing | 비용이 증가했다 |

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.