Karpathy-Inspired Claude Code Guidelines

Karpathy의 LLM 코딩 함정 관찰에서 파생된 단일 CLAUDE.md / Cursor rule 패키지. AI 코딩 에이전트의 4대 문제를 정면으로 겨냥한다

multica-ai/andrej-karpathy-skills 미러는 같은 파일 집합을 다시 배포한다. 핵심 내용은 동일하지만, Claude Code 플러그인 / CLAUDE.md / Cursor rule / SKILL.md 배포면을 함께 보여주기 좋다.

Overview

Andrej Karpathy가 지적한 LLM 코딩의 4대 문제:

“모델이 대신 잘못된 가정을 하고 확인 없이 그대로 실행한다. 혼란을 관리하지 않고,澄清을 구하지 않으며, 불일치를 표면화하지 않는다.”

“코드를 과도하게 복잡하게 만들고, 추상화를 부풀리며, 죽은 코드를 치우지 않는다…”

“충분히 이해하지 못하는 코드/코멘트를 사이드 이펙트로 변경/삭제한다.”

4대 원칙

원칙해결하는 문제
Think Before Coding잘못된 가정, 숨겨진 혼란, 트레이드오프 미표시
Simplicity First과도한 복잡성, 부풀린 추상화
Surgical Changes직교 편집, 건드리지 말아야 할 코드 변조
Goal-Driven Execution테스트 우선, 검증 가능한 성공 기준

1. Think Before Coding

Don’t assume. Don’t hide confusion. Surface tradeoffs.

  • 불확실할 때 추측 대신 질문
  • 모호성이 있으면 조용히 선택하지 말고 여러 해석 제시
  • 더 간단한 방법이 있으면 반대 의견 제시
  • 혼란스러우면 멈추고 clarification 요청

2. Simplicity First

요구가 없다면 넣지 마라.

  • 요청한 것 이상의 기능 금지
  • 1회용 코드에 대한 추상화 금지
  • 요청되지 않은 “유연성/설정 가능성” 금지
  • 불가능한 시나리오를 위한 에러 핸들링 금지
  • 200줄을 50줄로 줄일 수 있으면 다시 써라

3. Surgical Changes

수정해야 할 것만 정확히 건드려라.

  • 인접 코드, 코멘트, 포맷팅 “개선” 금지
  • 고장 나지 않은 건 리팩토링 금지
  • 기존 스타일 유지 (개인이 다르게 할 것이어도)
  • 변경으로 만들어진 고아(orphan)만 제거, 기존 죽은 코드는 요청 없으면 삭제 금지

테스트: 변경된 모든 라인이 사용자의 요청으로 직접 추적되는가?

4. Goal-Driven Execution

성공 기준을 정의하고 검증 루프를 돌려라.

Instead of…Transform to…
”Add validation""Write tests for invalid inputs, then make them pass"
"Fix the bug""Write a test that reproduces it, then make it pass"
"Refactor X""Ensure tests pass before and after”

설치 방법

Option A: Claude Code Plugin (권장)

/plugin marketplace add forrestchang/andrej-karpathy-skills
/plugin install andrej-karpathy-skills@karpathy-skills

Option B: CLAUDE.md (프로젝트별)

# 새 프로젝트
curl -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md
 
# 기존 프로젝트에 추가
echo "" >> CLAUDE.md
curl https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md >> CLAUDE.md

Cursor용

.cursor/rules/karpathy-guidelines.mdc 파일로 제공

Source