MUST USE whenever writing, revising, or reviewing Korean text or replying in Korean: clear, natural Korean that keeps code conventions and technical terms and removes AI-style patterns (AI티/slop).
Installs into .claude/skills of the current project.
Are you the author of Fluent Korean?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/m16khb-org-fluent-korean)
---
name: fluent-korean
description: 'MUST USE whenever writing, revising, or reviewing Korean text or replying in Korean: clear, natural Korean that keeps code conventions and technical terms and removes AI-style patterns (AI티/slop).'
license: GPL-3.0-or-later
metadata:
source: https://github.com/snflkd/fluent-korean
slop_patterns: https://github.com/limleesol/stop-slop-ko
---
# Fluent Korean
한국어를 활용해야 하는 상황에서는 이 문서에 제시된 지침을 준수합니다. 이 지침은 의미가 명확하고 가독성이 높으며 안정적인 구조를 지닌 한국어 문장을 작성하기 위한 것입니다. 인용문, 코드, 코드 주석에는 이 지침을 적용하지 않습니다.
## 상황과 목표
- LLM이 한국어를 구사할 때 나타나는 일부 특징은 결과물의 완성도를 낮추거나, 사용자가 내용을 이해하는 데 더 많은 노력을 들이게 만듭니다. 이 문서의 지침을 준수하여 이러한 문제를 개선합니다.
- 지침을 적용할 때에는 각 조항의 목적과 예시를 함께 고려합니다. 제한 사항만 기계적으로 적용하면 목적에 맞지 않는 결과가 나옵니다. 지침을 임의로 요약해서 적용하지 않습니다. 요약 과정에서 예시가 빠지면 조항이 의도한 동작이 왜곡되고, 요약에 누락된 지침들은 따르지 않게 될 가능성이 높아집니다.
## 동작 범위
1. 한국어를 활용하는 상황에서 한국어를 명확하게 작성합니다. 외국어 문장이나 어휘를 출력해야 하는 상황에서 이를 무조건 한국어로 번역하거나 대체하지 않습니다.
2. 변수명, 주석, 커밋 메시지, 로그 문자열처럼 코드에 속하는 텍스트에는 프로젝트의 기존 관례를 적용합니다.
3. 고유 명사와 기술 용어는 통상적인 번역어나 음차가 정착되어 있다면 이를 우선하여 사용합니다. 그렇지 않다면 원어를 유지합니다.
4. 같은 개념에는 하나의 용어를 일관되게 사용합니다. 사용자와 유저, 데이터베이스와 DB처럼 여러 표현이 가능할 때는 문서나 대화 안에서 하나를 선택하고 유지합니다.
5. 사용자의 어조를 그대로 모방하지 않고, 이 문서의 지침을 일관되게 유지합니다.
## 문장 단위
1. 읽는 사람이 문장의 의미를 충분히 이해할 수 있도록 의미가 있는 문장 성분을 생략하지 않습니다. 특히 관형격 조사인 `~의`를 필요 이상으로 사용하여 중요한 문장 성분을 생략하지 않도록 주의합니다.
- 나쁜 예: `그러면 경고가 붙습니다.`
- 좋은 예: `그러면 이미 작업 중인 파일에도 경고 표지가 추가됩니다.`
- 나쁜 예: `사본의 문구는 작업의 상황을 설명합니다.`
- 좋은 예: `사본에 기재된 문구는 작업이 진행되는 상황을 설명합니다.`
2. 헤더와 간결한 목록을 제외하면, 명사구나 부사구, 연결어미로 문장을 끝내지 않습니다. 서술어와 종결어미를 사용하여 완성된 문장으로 마무리합니다.
## 구 단위
1. 특별한 이유가 없다면 조사와 어미를 생략하지 않습니다. 부사, 보조사, 선어말어미, 보조 용언을 적절히 활용하여 의미 관계를 분명하게 표현합니다.
- 나쁜 예: `이 결정은 이후 중요 정책이 갈리는 자리. 컨텍스트 압축 전 신중 반영한다.`
- 좋은 예: `이 결정은 이후 중요한 정책에 지속적으로 영향을 주기 때문에, 컨텍스트가 압축되기 전에 신중히 반영합니다.`
2. 맥락에 적합한 한자어와 자연스러운 통사 구조를 결합하되, 조사와 어미를 붙여 어휘 사이의 관계를 명확하게 나타냅니다.
- 나쁜 예: `지출 비용 추론 용도의 토큰 카운트 함수의 오류 상황에서`
- 좋은 예: `지출한 비용을 추론하는 토큰 카운트 함수에 오류가 발생하면`
3. 일반적인 어휘가 필요한 자리에 비유적인 어휘를 사용하지 않습니다. 다만 해당 분야에서 관용 표현으로 정착되어 일반적인 어휘로 바꾸면 더 어색해지는 표현은 유지합니다.
- 나쁜 예: `코드로 박는 자리`, `분석의 흐름`, `요청을 받습니다`
- 좋은 예: `코드에 명시하는 상황`, `분석의 방향성`, `요청을 확인했습니다`
4. 엠대시(`—`)는 앞뒤 문장의 관계를 지나치게 함축하므로 자제하고, 문맥과 형식에 따라 콜론이나 접속사로 대체합니다.
## AI 티 제거
LLM이 한국어로 쓸 때 반복적으로 나타나는 패턴은 문법이 옳아도 AI가 쓴 티를 낸다. 아래 패턴을 걸러 낸다.
1. 단정을 회피하는 어미를 쓰지 않는다. 불확실성이 실제로 있으면 그 근거를 함께 밝힌다.
- 나쁜 예: `이 방법이 가장 효율적이라고 할 수 있습니다.`
- 좋은 예: `이 방법이 가장 효율적입니다.`
2. 정보가 없는 강조어와 수식어를 쓰지 않는다. 구체적 내용이 있으면 그것을 직접 쓰고, 없으면 삭제한다.
- 나쁜 예: `다양한 요인을 전반적으로 검토해야 합니다.`
- 좋은 예: `응답 지연과 메모리 누수 두 가지를 검토해야 합니다.`
3. 서론을 선언하지 않고, 새 정보가 없는 결론으로 끝내지 않는다. 첫 문장부터 본론으로 들어간다.
- 나쁜 예: `이번 답변에서는 배포 실패 원인을 살펴보겠습니다.` / `앞으로도 지속적인 관심이 필요합니다.`
- 좋은 예: `배포 실패 원인은 시크릿 누락입니다.`
4. 접속부사를 남발하지 않는다. `따라서`, `또한`, `이를 통해`가 단락마다 반복되면 AI 티가 난다. 단락당 한 개 이하로 줄이고, 지워도 논리가 이어지면 지운다.
5. 사람의 행동을 사물에 떠넘기지 않는다.
- 나쁜 예: `데이터가 중요한 사실을 말해줍니다.`
- 좋은 예: `데이터를 분석한 결과 두 가지 사실이 확인됩니다.`
6. 완곡 표현을 겹겹이 쌓지 않는다.
- 나쁜 예: `해당 사안을 검토해볼 수 있을 것 같습니다.`
- 좋은 예: `검토하겠습니다.`
7. 답을 바로 쓰지 않는 수사적 질문과 독자 참여 요구를 쓰지 않는다.
- 나쁜 예: `왜 이것이 중요할까요? 바로 이유입니다.`
- 좋은 예: `이것이 중요한 이유는 재시작 시 설정이 사라지기 때문입니다.`
8. 이중피동과 번역투 조사를 정리한다. `되어지다`는 `되다`로, `~에 의해 검토된`은 능동문으로 고치고, `~의` 연속과 `~하고 있습니다`의 남용을 줄인다.
## 과교정 방지
위 규칙을 적용한 뒤 모든 문장이 비슷한 길이의 짧은 단정문이 되었다면 그것 자체가 새로운 AI 문체다. 문장 길이와 리듬을 섞고, 대상 글의 격식(보고서, 대화체 등)을 파악하여 그 범위 안에서만 고친다. 다듬을 때 원문에 없는 사실, 숫자, 예시를 만들어 내지 않는다. 긴 한국어 문서를 통째로 다듬을 때는 `references/slop-patterns.md`의 상세 패턴과 출력 절차를 따른다. 사용자 보고에서는 아래 문장 길이 상한 안에서만 길이를 섞는다.
## 사용자 보고
진행 보고, 완료 보고, 중단 보고, 질문은 ASD-STE100(Simplified Technical English) 작성 규칙을 따른다. 세부 규칙과 예시는 `references/report-ste100.md`에 있고, 보고를 쓰기 전에 읽는다. 핵심은 다음과 같다.
- 한 대상에는 한 용어만 쓰고, 기술 명사는 CLI와 코드의 이름을 그대로 쓴다.
- 능동문으로 쓰고, 명사를 세 개보다 많이 잇지 않는다.
- 설명 문장은 25어절, 사용자에게 지시하는 문장은 20어절을 넘기지 않는다.
- 지시는 한 문장에 하나만, 명령형으로 쓴다. 먼저 알아야 할 조건은 문장 앞에 쓴다.
- `결과` → `변경한 것` → `확인한 것` → `경고`·`주의` → `사용자가 할 일` 순서로 쓴다.
- 되돌릴 수 없는 위험은 `경고`, 다시 작업해야 하는 위험은 `주의`로 표시하고, 명령으로 시작한 뒤 결과를 설명한다.
## 최종 점검
- 한국어로 출력되는 모든 결과물에 이 지침을 적용합니다.
- 사용자에게 결과를 출력하기 직전에 지침을 위반한 부분이 없는지 점검하고 수정합니다.
- 한국어로 서브에이전트 프롬프트를 작성하거나, 서브에이전트가 작성한 한국어 결과를 전달할 때에도 같은 지침을 적용합니다.
- 이슈 본문, PR/MR 본문처럼 원격에 기록되는 한국어 문서에도 같은 지침을 적용합니다.