AI(ChatGPT·Claude·Gemini)가 쓴 한글 텍스트를 사람이 쓴 글처럼 진단·윤문·검증한다. 번역투, 기계적 병렬, 관용구, 피동, 접속사, 균일한 리듬 등 10대 카테고리 85개 패턴을 다루며 route_hint에 따라 light·standard·heavy 경로를 실행한다. "AI 티 없애줘", "AI 윤문", "사람이 쓴 것처럼", "번역투
The skill file stays in the publisher's repository.
Paste the copied command in a terminal. It installs this SKILL.md into that agent.
npx skills add epoko77-ai/im-not-ai --skill humanize-korean -a cursor -y
AI(ChatGPT·Claude·Gemini)가 쓴 한글 텍스트를 사람이 쓴 글처럼 진단·윤문·검증한다. 번역투, 기계적 병렬, 관용구, 피동, 접속사, 균일한 리듬 등 10대 카테고리 85개 패턴을 다루며 route_hint에 따라 light·standard·heavy 경로를 실행한다. "AI 티 없애줘", "AI 윤문", "사람이 쓴 것처럼", "번역투 고쳐", "정밀 모드", "2차 윤문", "이 문단만 다시", "humanize Korean" 요청에 사용한다. 단순 맞춤법 교정, 번역, 사실이나 내용을 추가하는 재작성에는 사용하지 않는다.
AI(ChatGPT·Claude·Gemini)가 쓴 한글 텍스트를 사람이 쓴 글처럼 진단·윤문·검증한다. 번역투, 기계적 병렬, 관용구, 피동, 접속사, 균일한 리듬 등 10대 카테고리 85개 패턴을 다루며 route_hint에 따라 light·standard·heavy 경로를 실행한다. "AI 티 없애줘", "AI 윤문", "사람이 쓴 것처럼", "번역투 고쳐", "정밀 모드", "2차 윤문", "이 문단만 다시", "humanize Korean" 요청에 사용한다. 단순 맞춤법 교정, 번역, 사실이나 내용을 추가하는 재작성에는 사용하지 않는다.
Codex의 파일·셸·협업 에이전트 기능으로 진단, 겨냥 윤문, 결정적 게이트, finalize를 실행한다. 스킬 리소스는 이 SKILL.md가 있는 실제 디렉터리(SKILL_ROOT)를 기준으로 해석하고, 사용자 산출물은 현재 작업 디렉터리(cwd)의 _workspace/에 쓴다.
했을 하였다로 상향하지 않는다.final.md를 덮어쓸 때 백업한다.SKILL.md의 실제 파일 경로에서 디렉터리를 얻고, 심링크의 물리 경로를 풀어 SKILL_ROOT로 정한다. cwd나 $CODEX_HOME에서 경로를 추측하지 않는다. 셸에서 사용할 때는 다음 형태로 한 번 정하며 cd -P를 반드시 사용한다.SKILL_ROOT="$(cd -P "<이 SKILL.md가 있는 실제 디렉터리>" && pwd)"
${SKILL_ROOT}/references/quick-rules.md를 읽는다. standard/heavy에서는 diagnosis-rules.md도 읽게 한다._workspace/YYYY-MM-DD-NNN-TAG/01_input.txt에 저장한다. 당일 표지 파일을 검색해 다음 NNN을 선택하고, run 시작 때 python3 -c "import secrets;print(secrets.token_hex(2))"로 TAG를 한 번 생성해 끝까지 재사용한다. 동시 세션이 같은 NNN을 선택해도 원문을 덮어쓰지 않게 한다.column, 리포트=report, 블로그=blog, 공적·기타=essay, 학술 초록=abstract다.${SKILL_ROOT}/scripts/... 절대경로로 부르고, 데이터 경로는 cwd 기준으로 유지한다. 경로에 공백이 있을 수 있으므로 인자를 따옴표로 감싼다.python3 "${SKILL_ROOT}/scripts/prepare_monolith_input.py" --run-dir "$RUN_DIR" --genre "$GENRE"
00_metrics.json의 route_hint를 읽는다. --strict, 정밀 모드, 정밀하게, 제대로는 heavy로, 가볍게, 빠르게만은 light로 덮어쓴다. 힌트가 없으면 standard다.humanize-korean v2.3-codex — 경로: ROUTE (SOURCE) / run_id: RUN_ID 한 줄을 알리고 계속 작업한다.Codex 협업 에이전트를 사용할 수 있으면 역할별로 별도 에이전트를 실행해 독립 컨텍스트를 유지한다. 요청에는 역할 파일의 절대경로, 입력·출력 절대경로, 장르만 전달한다. 예상 답이나 숨은 결론은 전달하지 않는다. 에이전트가 파일을 작성하게 하고 완료 후 파일을 직접 확인한다.
references/roles/diagnostician.mdreferences/roles/monolith.mdreferences/roles/finalizer.md협업 에이전트를 쓸 수 없으면 주 에이전트가 해당 역할 파일을 읽고 같은 단계를 순차 실행한다. 기능을 생략하지 않는다.
01_input_with_metrics.txt, 룰북은 quick-rules.md, 강도는 보수다.01_input_with_metrics.txt와 diagnosis-rules.md를 읽고 02_diagnosis.md를 작성한다.python3 "${SKILL_ROOT}/scripts/prepare_monolith_input.py" --run-dir "$RUN_DIR" --genre "$GENRE" --diagnosis "$RUN_DIR/02_diagnosis.md"
final.md를 작성한다. 15,000자 이하는 임의로 청킹하지 않는다.02_diagnosis.md를 만든다.python3 "${SKILL_ROOT}/scripts/prepare_monolith_input.py" --run-dir "$RUN_DIR" --genre "$GENRE" --diagnosis "$RUN_DIR/02_diagnosis.md" --chunk
chunk_manifest.json을 읽는다. body 청크가 1개면 manifest의 input_file과 rewritten_file로 monolith를 한 번 실행한다. 2개 이상이면 가능한 슬롯만큼 병렬 실행하되 manifest의 두 파일명을 그대로 사용한다. 주 에이전트 포함 동시성 제한을 넘지 말고 나머지는 다음 배치로 실행한다.03_reassembled.md를 final.md로 복사한다. 단일 청크에서도 이 단계를 생략하지 않는다. passthrough 복원과 문자 수 대사가 여기서 수행된다. 경고는 숨기지 않는다.python3 "${SKILL_ROOT}/scripts/reassemble_chunks.py" --run-dir "$RUN_DIR" --strict
09_finalize.json을 쓴다. 청크 출력에는 summary가 없으므로 finalizer가 게이트 수치와 진단 결과로 `` 블록을 정확히 하나 생성해야 한다.hold_and_report면 사람 검토가 필요하다고 보고한다.python3 "${SKILL_ROOT}/scripts/verify_gates.py" --before "$RUN_DIR/01_input.txt" --after "$RUN_DIR/final.md" --genre "$GENRE" --json
hold_and_report한다.--ignore-markup으로 교차 측정하되 두 수치를 모두 보고한다.2차 윤문: 최신 final.md를 새 run의 01_input.txt로 복사하고 heavy로 실행한다.특정 카테고리만: 최신 결과를 새 입력으로 삼고 진단 대상을 제한해 heavy로 실행한다.이 문단만: 지정 문단만 새 run의 입력으로 삼아 heavy로 실행한다.강도 조정: 새 run을 만들고 진단 패턴 수와 monolith 강도를 조절한다.장르 바꿔서: 새 장르로 처음부터 실행하고 route_hint를 재판정한다.최종 응답에 상태(완료. 경로 ROUTE / 변경률 X% / 등급 Y / 자체검증 N/6 통과), 최종 윤문본 또는 final.md 링크, 핵심 before→after, 진단·게이트·finalize 상태와 남은 경고를 포함한다. 변경률은 verify_gates.py 출력값을 SSOT로 사용한다. final.md에는 `` 블록을 정확히 하나 유지한다.