SuperAPI AI Directory

humanize-korean

Agents & models

View repository

Updated 10-15 21:02

About this skill

Humanize Korean — Remove Korean AI feel (Fast mode)

Overview

This skill surgically surgically removes traces of AI writing from Korean text. without touching a single character of the content It restores only the style, rhythm, and expressions to natural Korean. It handles Korean-native patterns where English-language humanizers (QuillBot, Hix, Undetectable AI) are weak — translationese, excessive English quotations, concluding formulas, hedging, formal nouns — through quantitative metrics and an SSOT classification system.

Four Iron Rules (immediate rollback upon violation)

  1. Meaning invariance — facts, claims, figures, proper nouns, and direct quotations are 100% preserved from the original
  2. Evidence-based — surgical edits only to detected spans. Sections without detection are left untouched
  3. Genre preservation — do not turn a column into literature or a report into an essay
  4. No over-polishing — warn if change rate exceeds 30%, forcibly stop if it exceeds 50%

Phase 0: Context check

At the start of work, output the following single line first.

humanize-korean — fast 모드 / run_id: {YYYY-MM-DD-NNN}

Determine run_id

  • All paths are based on cwd. _workspace/{YYYY-MM-DD-NNN}/with artifacts accumulated
  • Check existing sequences with the Glob tool로:
    • Glob(pattern="_workspace/YYYY-MM-DD-*/01_input.txt") → extract folder names from results and take the maximum NNN + 1
    • If there is no folder for the day, NNN = 001
    • Directories themselves are not matched by Glob — always 01_input.txt match the marker file
  • Inputs over 8,000 characters can be processed but may require precise verification → write one line in summary.md stating "strict mode (strict-pipeline-spec) recommended"

Options (in natural language at the end of arguments)

  • 장르: 칼럼|리포트|블로그|공적 — specify genre (if omitted, automatically inferred from the first 300 characters)
  • 강도: 보수|기본|적극 — polishing strength (default: basic)
  • 최소심각도: S1|S2|S3 — detection threshold (default: S2)

Phase 1: Save input

  1. based on cwd _workspace/{run_id}/ create directory
  2. Save the input text as-is to **01_input.txt** (do not alter a single character)
  3. Automatically infer genre from the first 300 characters (user specification takes priority)
    • Column: first-person opinion, commentary, concluding formulas
    • Report: objective description, figures, quotations
    • Blog: casual, friendly style, emojis allowed
    • Official: formal style, official document style

Phase 2: Pre-measurement of metrics

Establish a quantitative baseline first. references/metrics.pycall:

python3 moai-content/skills/humanize-korean/references/metrics.py \
  --input "_workspace/{run_id}/01_input.txt" \
  --genre {칼럼|리포트|블로그|공적} \
  --output "_workspace/{run_id}/00_metrics.json"

Artifact 00_metrics.jsonincludes the following (original metrics.py v1.6 specification):

  • Number of sentences, average sentence length, standard deviation of length (E-1 uniformity signal)
  • Connective ending + comma frequency (C-11 KatFish signal)
  • Sino-Korean nominalization -seong/-jeok/-hwa density (F-4)
  • Sentence-ending distribution (Category I)
  • Sentence-initial conjunction frequency (H-1)

(Optional) post-editese analysis layer — references/metrics_v2.py: to additionally measure 14 quantitative signals of translationese (3 axes: simplification, normalisation, interference; T1–T8), call metrics_v2.py. metrics.pyis imported to return a superset of the v1.6 output (adding thev2_metrics·v2_interference_index key), so it is compatible with the existing Phase flow. This layer is for optional analysis, and the Fast pipeline's primary baseline is still metrics.py. The baseline is a placeholder (baseline_v2.json, all cells _placeholder: true — since it is before calibration, z-scores are for reference only).

python3 moai-content/skills/humanize-korean/references/metrics_v2.py \
  --input "_workspace/{run_id}/01_input.txt" \
  --genre {essay|news|blog|qa|dialogue} \
  --output "_workspace/{run_id}/00_metrics_v2.json"

It uses only the standard library, so no separate dependency installation is required (Python 3.13+ recommended).

Phase 3: Inline detection, rewriting, and self-verification

Core step. In this step, the following are performed at once.

3-1. Load rulebook

Load the following two files into memory:

  • references/quick-rules.md — S1/S2 core patterns + 6 self-verification items (slim rulebook)
  • references/ai-tell-taxonomy.md — 10 major categories × 40+ sub-patterns SSOT (referenced as needed)

00_metrics.json's quantitative signals are used as priorities (e.g., if stdev<8, E-1 first; if -seong/-jeok/-hwa is 12+, F-4 first).

3-2. Do-NOT list (excluded from both detection and rewriting)

  • Proper nouns, product names, model names, organization names
  • Numerals, dates, units
  • Direct quotations inside double quotation marks
  • Legal provisions, mathematical/chemical/statistical notation
  • English abbreviations (industry standards such as LLM, GPU, MCP, API)

3-3. Priority order for applying category-specific prescriptions

S1 (Deterministic — remove unconditionally):

  • A-1/A-2/A-3 translationese (~reul tonghae/~e daehae/~e iss-eoseo)
  • A-7/A-8 have / double passive
  • C-5 emoji overuse (columns/reports only)
  • C-10 repetitive colon-subtitle headings
  • C-11 comma after connective ending
  • D-1–D-6 closing pivot · implications · essentially · hype vocabulary · anthropomorphized abstract subject · ending formula
  • H-1/H-3 sentence-initial conjunctions 5+ times / meta openings 3+ times
  • I-1 ~in geosida/han geosida endings
  • J-2 quotation-mark emphasis 5+ times

S2 (Strong — allow 1–2 times, remove at 3+):

  • A-4/A-5/A-6/A-9/A-10/A-11/A-15
  • B-1/B-2 excessive English quotations
  • C-7/C-8/C-9 structural patterns
  • D-7 transformation formula from X to Y
  • E-1 rhythm uniformity
  • F-4/F-5 Sino-Korean -seong/-jeok/-hwa density
  • G-1/G-2/G-3 hedging
  • H-4 overuse of i.e.
  • I-2/I-3/I-4 formal nouns
  • J-1/J-3 heading emphasis / bullet lists

For detailed prescription recipes, see references/rewriting-playbook.md .

3-4. Execute rewriting (Edit tool)

For each detected span, use the Edit tool for surgical replacement. Never modify undetected sections.

  • Formal input → formal output (register preserved)
  • Plain-style input → plain-style output
  • When the cumulative change exceeds 30%, record a warning message in the summary candidates; when it exceeds 50%, stop immediately and fully roll back

3-5. Six-point self-verification check (within 5 seconds immediately after polishing)

Immediately after polishing, self-check the following. If even one item is violated, roll back that edit:

  1. Proper nouns, numbers, dates, and quotations preserved 100% — Is there not even a single character different from the original?
  2. Change rate — Is it 30% or less?
  3. No genre deviation — Has the column not turned into an essay or literature?
  4. Register preserved — If the original is formal, the result is also formal
  5. Zero remaining S1 patterns — Are D-1~D-7, A-8, C-5, C-10, C-11, H-1, I-1, and J-2 not remaining?
  6. Restraint from artificial expressions — Have you not arbitrarily added metaphors, rhetoric, or literary expressions that were not in the original?

On violation: roll back edit → polish again → re-check. Self-loop maximum 1 time. If still unresolved, output the result but summary.mdindicate "N items failed self-verification" in the

Phase 4: Post-metrics + artifact creation

4-1. Post-metrics

python3 moai-content/skills/humanize-korean/references/metrics.py \
  --input "_workspace/{run_id}/final.md" \
  --genre {장르} \
  --output "_workspace/{run_id}/06_metrics_after.json"

Calculate the improvement rate (%) by category through before/after comparison.

4-2. Create final.md

_workspace/{run_id}/final.mdwrite the polished version + HTML comment block (metrics, detection before/after, 6-point self-verification, grade, major change highlights) in. Since it is an HTML comment, it is exposed only in the body when viewed in a Markdown viewer, published on the web, or copied.

{윤문본 본문}

<!-- HUMANIZE-SUMMARY
모드: fast / run_id: {run_id}
변경률: X%
등급: A|B|C|D
자체검증: N/6 통과
카테고리 탐지 (before → after):
  A 번역투: 12 → 1
  D AI 관용구: 5 → 0
  ...
-->

4-3. Create summary.md

_workspace/{run_id}/summary.mdorganize the metrics table, self-verification results, grade, and highlight summary in.

Phase 5: Grade determination

Grade Condition
A S1 remaining 0, S2 remaining ≤2, change rate 10-25%, self-verification 6/6
B S1 remaining 0, S2 remaining ≤4, self-verification 5/6 or higher
C S1 remaining 1-2 or self-verification ≤4 — recommend detailed verification to the user
D S1 remaining 3+ or change rate over 50% — recommend stopping the task

Phase 6: Return results to the user

Deliver the following 4 items to the user:

  1. One-line status: 완료. 변경률 X% / 등급 Y / 자체검증 N/6 통과
  2. Polished text body: in Markdown block form
  3. summary.md key table: metrics + category detection + self-verification
  4. Guidance when grade is B or lower: "If more precise verification is needed, references/strict-pipeline-spec.mdplease refer to the precision mode design notes and execute it as a separate workflow."

Partial re-run / follow-up commands

User signal Processing
"Only a specific category again" Re-run Phase 3 only for that category's findings, reusing the existing run_id
"Only this paragraph" Create a new run_id with only that paragraph as input
"Second polishing" the existing run_id's final.mdrerun from Phase 1 with the new input
"Adjust polishing intensity" 최소심각도 rerun from Phase 2 after changing the option
"Change the genre" genre_hint rerun from Phase 2 after changing

Relationship with ai-slop-reviewer

This skill is moai-core:ai-slop-reviewer의 second-pass Korean precision polishing It is designed as a step. Recommended chain:

한국어 텍스트 산출물(블로그·뉴스레터·카피 등)
  ↓
moai-core:ai-slop-reviewer  ── 1차 일반 AI 슬롭 후처리(영어 표현 정리, 일반 패턴)
  ↓
moai-content:humanize-korean ── 2차 한국어 정밀 윤문(40+ 패턴 SSOT, 등급)
  ↓
최종 산출물

If ai-slop-reviewer alone is sufficient (text with a high proportion of English, casual blogs), humanize-korean may be omitted.

Cautions

  • Meaning invariance is the highest unwritten rule — immediate rollback upon violation
  • Numbers, proper nouns, and direct quotes are not subject to detection/polishing — strictly observe the Do-NOT list
  • No genre deviation — a column does not shift into an essay, and an essay does not shift into literature
  • Preserve register — AI-ness is a matter of grammar and rhetoric, not formality itself
  • Change rate over 30% → warning, over 50% → forced stop and full rollback
  • No auto-loading — do not auto-parse other files such as the project CLAUDE.md to infer options

References

  • Slim rulebook (core of this skill): references/quick-rules.md — S1/S2 core patterns + self-verification checklist
  • Taxonomy SSOT: references/ai-tell-taxonomy.md — 10 major categories × 40+ patterns in full
  • Polishing prescriptions: references/rewriting-playbook.md — per-category substitution recipes and per-genre allowance tables
  • Quantitative metrics: references/metrics.py — Python 3.13+ standard library only, CLI invocation
  • Baseline: references/baseline.json — per-category thresholds
  • (Optional) post-editese metrics: references/metrics_v2.py — 14 quantitative signals of translationese (3 axes T1–T8), superset of metrics.py imports, CLI --genre essay|news|blog|qa|dialogue
  • (Optional) post-editese baseline: references/baseline_v2.json — 3-axis placeholder thresholds (all cells _placeholder: true, calibration 전)
  • Translation studies academic SSOT: references/scholarship.md — genealogy of 8 types in Korean translation studies + international theory (Baker·Toury·Toral) + 6 caveats, source of new patterns
  • Precision mode design notes (for future expansion): references/strict-pipeline-spec.md — this skill implements only the single-call Fast mode, and the concept of multi-pass precision verification is organized in design notes for future expansion (currently unimplemented; refer to it when running as a separate workflow)
  • Web service expansion (optional): references/web-service-spec.md — refer to when expanding with Next.js + Vercel

This skill operates in single-call Fast mode, completing detection, polishing, and self-verification in one call. With the taxonomy (references/ai-tell-taxonomy.md)·rulebook (quick-rules.md·rewriting-playbook.md)·quantitative metrics (metrics.py·baseline.json)·translation studies academic grounds (scholarship.md) as SSOT, multi-pass precision verification is organized for future expansion in the design notes of references/strict-pipeline-spec.md.