· 김뽑희

33-4475.오타하나214개

AI가 시키지 않은 것까지 고칠 때, 규칙 파일 하나 넣는 법

안드레이 카파시가 짚은 'AI 코딩 버릇'을 규칙 4개짜리 CLAUDE.md 하나로 정리한 무료 저장소. 클로드 코드에 넣는 명령어, 커서에서 쓰는 법, 규칙 4개 한국어 풀이와 쓰기 전에 알아 둘 조건까지 정리했어요.

원본 영상 · 1분 45초
이 자료의 내용

한눈에 보기

항목내용
이름andrej-karpathy-skills — https://github.com/multica-ai/andrej-karpathy-skills (예전 주소 forrestchang/andrej-karpathy-skills 로 들어가도 이리로 연결돼요)
한 줄로AI가 코딩할 때 자주 하는 실수를 막는 규칙 4개를 CLAUDE.md 파일 하나에 적어 둔 것
바탕안드레이 카파시(OpenAI 공동 창업자)가 적은 'AI 코딩의 함정' 글 — README가 원문을 인용해요
규칙 4개① 먼저 생각하기 ② 단순하게 ③ 필요한 곳만 고치기 ④ 확인 기준 정하기
쓰는 곳클로드 코드(플러그인 또는 CLAUDE.md), 커서(규칙 파일) — 저장소가 직접 안내하는 두 가지
값무료. README 끝에 'License: MIT' (별 228.7k, 2026-11-03 확인)
조건빠르기보다 조심하는 쪽. 오타 같은 아주 작은 일엔 AI가 알아서 판단하라고 적혀 있어요

제일 빠른 방법 (클로드 코드): 클로드 코드 입력칸에 아래 두 줄을 한 줄씩 넣으면 모든 프로젝트에 적용돼요.

명령어
/plugin marketplace add forrestchang/andrej-karpathy-skills
/plugin install andrej-karpathy-skills@karpathy-skills

1. 이게 왜 필요해요

한 줄로: "오타 하나 고쳐 줘"라고 했는데 AI가 하는 김에 버전도 올리고, 이름도 바꾸고, 주석(코드 위에 달린 설명 글)까지 지워 놓는 버릇을 줄이는 규칙이에요.

왜: 카파시는 AI가 "잘 이해하지 못한 주석과 코드를, 맡은 일과 상관없는데도 하는 김에 바꾸거나 지운다"고 적었어요. 동네 수리 기사한테 수도꼭지 하나 고쳐 달랬는데 싱크대까지 바꿔 놓은 것과 같아요. 결과가 좋아 보여도, 무엇이 왜 바뀌었는지 내가 다 확인해야 하니까 일이 늘어나요.

README가 인용한 카파시의 글은 세 가지예요.

  1. 멋대로 가정하고 확인하지 않는다 — 헷갈려도 묻지 않고 그냥 진행한다
  2. 코드를 지나치게 복잡하게 만든다 — 100줄이면 될 걸 1,000줄로 만든다
  3. 이해 못 한 코드·주석을 하는 김에 바꾸거나 지운다

2. 클로드 코드에 넣는 법

방법 A. 플러그인 (README 추천, 모든 프로젝트)

  1. 터미널에서 클로드 코드를 켜요.
  2. 입력칸에 첫 줄을 넣고 엔터 — 플러그인 장터(마켓플레이스)를 추가해요.
  3. 둘째 줄을 넣고 엔터 — 규칙을 설치해요.
명령어
/plugin marketplace add forrestchang/andrej-karpathy-skills
/plugin install andrej-karpathy-skills@karpathy-skills

README 설명: 이렇게 설치하면 규칙이 클로드 코드 플러그인으로 들어가 모든 프로젝트에서 쓸 수 있어요.

방법 B. 이 프로젝트에만 (CLAUDE.md 파일)

CLAUDE.md는 클로드 코드가 그 프로젝트에서 일을 시작할 때 먼저 읽는 메모 파일이에요.

아직 CLAUDE.md 가 없는 프로젝트 — 프로젝트 폴더에서 (맥·리눅스·Git Bash):

명령어
curl -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md

윈도우 PowerShell 에서는 curl 이 다른 명령으로 연결돼 있어서 curl.exe 로 적어야 해요.

명령어
curl.exe -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md

이미 CLAUDE.md 가 있는 프로젝트 — 덮어쓰지 말고 끝에 덧붙여야 해요 (원래 적어 둔 프로젝트 규칙이 지워지지 않게). README 명령 (맥·리눅스·Git Bash):

명령어
echo "" >> CLAUDE.md
curl https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md >> CLAUDE.md

명령어가 낯설면 클로드 코드한테 시켜도 돼요.

프롬프트
https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md 내용을 받아서, 이 프로젝트 CLAUDE.md 맨 끝에 덧붙여 줘. 원래 있던 내용은 한 글자도 바꾸지 말고, CLAUDE.md 가 없으면 새로 만들어 줘.

확인하는 법: 프로젝트의 CLAUDE.md 를 열어 ## 3. Surgical Changes 같은 제목 네 개가 들어 있으면 돼요.

막히면

  • 윈도우에서 curl -o 가 오류를 내면 → curl.exe 로 바꿔 적기.
  • 원래 CLAUDE.md 가 사라졌다면 → -o 명령(새로 만들기)을 기존 파일에 쓴 거예요. 덧붙이기는 >> 명령이나 위 문장으로 하세요.

3. 커서(Cursor)에서 쓰는 법

저장소 안에 커서용 규칙 파일 .cursor/rules/karpathy-guidelines.mdc 가 들어 있어요 (alwaysApply: true — 항상 켜짐).

  1. 저장소 페이지에서 .cursor/rules 폴더 → karpathy-guidelines.mdc 파일을 받아요.
  2. 내 프로젝트에 .cursor/rules/ 폴더를 만들고(없으면) 그 안에 파일을 넣어요.
  3. 커서에서 Settings → Rules (또는 프로젝트 규칙 화면)에 karpathy-guidelines 가 보이면 끝 (CURSOR.md 안내).

1~2번을 명령으로 하려면 프로젝트 폴더에서 (맥·리눅스·Git Bash):

명령어
mkdir -p .cursor/rules
curl -o .cursor/rules/karpathy-guidelines.mdc https://raw.githubusercontent.com/multica-ai/andrej-karpathy-skills/main/.cursor/rules/karpathy-guidelines.mdc

알아 둘 것: 커서는 기본으로 CLAUDE.md 를 읽지 않아요 (CURSOR.md). 그래서 커서에는 이 .mdc 파일을 넣어야 해요. 이미 다른 규칙 파일이 있으면 같은 폴더에 같이 두면 돼요.

4. 규칙 4개 한국어 풀이

각 규칙 아래 '시험 질문'은 AI 결과를 볼 때 내가 던져 보면 되는 질문이에요.

① 먼저 생각하기 (Think Before Coding)

가정하지 말고, 헷갈리면 숨기지 말고, 장단점을 말하기.

  • 가정한 게 있으면 먼저 말한다. 확실하지 않으면 묻는다.
  • 해석이 여러 개면 혼자 고르지 말고 보여 준다.
  • 더 쉬운 방법이 있으면 말한다. 필요하면 반대 의견도 낸다.
  • 뭔가 불분명하면 멈추고, 무엇이 헷갈리는지 말하고, 묻는다.

시험 질문: "일 시작 전에 나한테 물어본 게 있었나?"

② 단순하게 (Simplicity First)

문제를 푸는 최소한의 코드만. 혹시 몰라서 넣는 건 없음.

  • 시키지 않은 기능 없음.
  • 한 번만 쓰는 코드에 복잡한 틀(추상화) 없음.
  • 요청하지 않은 '설정 기능' 없음.
  • 일어날 수 없는 상황의 오류 처리 없음.
  • 200줄을 50줄로 할 수 있으면 다시 쓴다.

시험 질문: "경력 많은 개발자가 보면 '너무 복잡하다'고 할까?"

③ 필요한 곳만 고치기 (Surgical Changes) — 영상에서 말한 핵심

꼭 필요한 곳만 건드리고, 내가 어지른 것만 치운다.

  • 옆 코드·주석·줄 맞춤을 '개선'하지 않는다.
  • 안 망가진 걸 고치지(리팩터하지) 않는다.
  • 내 취향과 달라도 원래 코드 스타일을 따른다.
  • 상관없는 안 쓰는 코드(데드 코드)가 보이면 알려만 주고 지우지 않는다.
  • 내 변경 때문에 안 쓰게 된 것만 지운다. 원래 있던 안 쓰는 코드는 시키기 전엔 그대로.

시험 질문: "바뀐 줄이 전부 내가 시킨 일 때문인가?" (README: Every changed line should trace directly to the user's request.)

④ 확인 기준 정하기 (Goal-Driven Execution)

'다 됐다'를 확인할 기준을 먼저 정하고, 확인될 때까지 반복. 시키는 말을 이렇게 바꿔 보세요.

이렇게 말하지 말고이렇게 바꿔 말하기
"검증 추가해 줘""잘못된 입력 테스트를 먼저 쓰고, 그게 통과하게 만들어 줘"
"버그 고쳐 줘""이 버그를 재현하는 테스트를 쓰고, 그게 통과하게 만들어 줘"
"리팩터해 줘""고치기 전과 후에 테스트가 다 통과하는지 확인해 줘"

여러 단계 일이면 계획을 '단계 → 확인' 모양으로 먼저 받아요.

프롬프트
바로 고치지 말고, 먼저 계획을 이렇게 적어 줘.
1. [할 일] → 확인: [무엇으로 확인할지]
2. [할 일] → 확인: [무엇으로 확인할지]
계획을 내가 확인한 다음에 시작해.

시험 질문: "끝났다고 할 때, 무엇으로 확인했는지 말했나?"

5. 덤 — 안 쓰는 코드는 '알려만' 받기

규칙 ③의 한 줄 "If you notice unrelated dead code, mention it — don't delete it" 은 따로 써먹기 좋아요. 지울지 말지는 내가 정하게 하는 거예요.

프롬프트
작업하다가 지금 일과 상관없는 안 쓰는 코드를 보면 지우지 말고, 파일 이름과 줄만 목록으로 알려 줘. 지울지는 내가 정할게.

6. 쓰기 전에 알아 둘 조건

  • 빠르기보다 조심하는 쪽이에요. README 'Tradeoff Note': 오타 고치기, 뻔한 한 줄 같은 아주 작은 일엔 알아서 판단하라고 적혀 있어요. 목표는 큰일에서 비싼 실수를 줄이는 것이지, 작은 일을 느리게 만드는 게 아니래요.
  • 내 프로젝트 규칙과 합쳐 쓰는 용도예요. README 'Customization': 기존 CLAUDE.md 에 덧붙이거나 새로 만들고, 프로젝트만의 규칙은 따로 절을 만들어 적으라고 안내해요.
  • 넣으면 반드시 한 줄만 바뀐다는 보장은 없어요. README가 말하는 '잘 되고 있다는 신호'는 아래 네 가지예요 — 이걸로 확인하세요.
    • 바뀐 내용(diff)에 불필요한 변경이 줄어듦 — 시킨 것만 보임
    • 너무 복잡해서 다시 쓰는 일이 줄어듦
    • 실수한 뒤가 아니라 시작하기 전에 질문이 나옴
    • 변경 요청(PR)이 깔끔함 — '하는 김에' 고친 게 없음

체크리스트

  • 클로드 코드: 플러그인 두 줄 넣기 (또는 프로젝트 CLAUDE.md 에 덧붙이기)
  • 이미 CLAUDE.md 가 있으면 덮어쓰지 않고 끝에 덧붙였는지 확인
  • 커서: .cursor/rules/karpathy-guidelines.mdc 넣고 Settings → Rules 에서 보이는지 확인
  • 다음 작업 뒤 바뀐 줄을 보며 시험 질문: "전부 내가 시킨 일 때문인가?"
  • 작은 일(오타 한 줄)은 그냥 시켜도 된다는 것 기억하기

출처

복사해서 쓰는 것 모음 · 9개

한눈에 보기

명령어
/plugin marketplace add forrestchang/andrej-karpathy-skills
/plugin install andrej-karpathy-skills@karpathy-skills

방법 A. 플러그인 (README 추천, 모든 프로젝트)

명령어
/plugin marketplace add forrestchang/andrej-karpathy-skills
/plugin install andrej-karpathy-skills@karpathy-skills

방법 B. 이 프로젝트에만 (CLAUDE.md 파일)

명령어
curl -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md

방법 B. 이 프로젝트에만 (CLAUDE.md 파일)

명령어
curl.exe -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md

방법 B. 이 프로젝트에만 (CLAUDE.md 파일)

명령어
echo "" >> CLAUDE.md
curl https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md >> CLAUDE.md

방법 B. 이 프로젝트에만 (CLAUDE.md 파일)

프롬프트
https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md 내용을 받아서, 이 프로젝트 CLAUDE.md 맨 끝에 덧붙여 줘. 원래 있던 내용은 한 글자도 바꾸지 말고, CLAUDE.md 가 없으면 새로 만들어 줘.

3. 커서(Cursor)에서 쓰는 법

명령어
mkdir -p .cursor/rules
curl -o .cursor/rules/karpathy-guidelines.mdc https://raw.githubusercontent.com/multica-ai/andrej-karpathy-skills/main/.cursor/rules/karpathy-guidelines.mdc

④ 확인 기준 정하기 (Goal-Driven Execution)

프롬프트
바로 고치지 말고, 먼저 계획을 이렇게 적어 줘.
1. [할 일] → 확인: [무엇으로 확인할지]
2. [할 일] → 확인: [무엇으로 확인할지]
계획을 내가 확인한 다음에 시작해.

5. 덤 — 안 쓰는 코드는 '알려만' 받기

프롬프트
작업하다가 지금 일과 상관없는 안 쓰는 코드를 보면 지우지 말고, 파일 이름과 줄만 목록으로 알려 줘. 지울지는 내가 정할게.