실전 10분

CLAUDE.md 잘 쓰는 법

업데이트

CLAUDE.md가 왜 중요한가

Claude Code는 매 세션 시작 시 프로젝트 루트의 CLAUDE.md를 자동으로 컨텍스트에 로드합니다. 한 번 잘 작성하면 모든 세션에서 동일한 가이드가 적용되고, 매번 같은 설명을 반복할 필요가 없어집니다.

좋은 CLAUDE.md는 답변 품질을 즉시 개선하고 잘못된 가정·반복적인 실수를 줄입니다.

두 가지 위치

위치적용 범위
~/.claude/CLAUDE.md사용자 전역 (모든 프로젝트)
<project>/CLAUDE.md해당 프로젝트만

두 파일이 모두 있으면 사용자 전역 → 프로젝트 순으로 로드되며, 프로젝트 설정이 더 구체적이라 우선 적용되는 효과가 있습니다.

초안 만들기

/init

Claude Code가 프로젝트 구조를 분석해 초안 CLAUDE.md를 생성합니다. 자동 초안을 검토·수정하는 방식이 가장 빠릅니다.

잘 쓰는 5가지 원칙

1. 짧고 구조적으로

매 세션 컨텍스트를 차지하므로 길수록 토큰 예산이 줄어듭니다. 한두 화면 분량이 이상적입니다.

2. “무엇이 있는지”보다 “어떻게 다루는지”

디렉토리 트리 전체를 적기보다 핵심 디렉토리의 역할자주 쓰는 명령어를 적습니다. Claude는 파일을 직접 탐색할 수 있으므로 모든 파일을 나열할 필요가 없습니다.

3. 금지 사항을 명시

긍정 지시보다 “하지 말 것” 목록이 효과가 큽니다.

## Rules
* Never commit or push without explicit user instruction
* Don't add error handling for impossible scenarios
* Don't introduce new dependencies without approval

4. 명령어를 코드 블록으로

build/dev/test 명령은 코드 블록에 넣어 Claude가 정확히 복사·실행할 수 있게 합니다.

## Commands
\```bash
npm run build       # 프로덕션 빌드
npm run dev         # 개발 서버 (포트 3030)
npm test            # 단위 테스트
\```

5. 자주 쓰는 워크플로 명시

콘텐츠 추가, 마이그레이션, 배포 등 반복 작업은 절차를 문서화합니다.

좋은 예시 구조

# 프로젝트 이름

## 개요
한 문단으로 무엇을 하는 프로젝트인지.

## 기술 스택
* Frontend: Next.js 15, Tailwind CSS
* Backend: Node.js, Prisma, PostgreSQL
* Hosting: Cloudflare Pages

## 명령어
\```bash
npm run dev
npm run build
npm test
\```

## 디렉토리 구조
* src/app — Next.js App Router 페이지
* src/components — UI 컴포넌트
* prisma/ — DB 스키마와 마이그레이션

## 코드 컨벤션
* 함수형 컴포넌트만 사용
* 상태 관리는 Zustand
* 테스트는 Vitest

## Rules
* 커밋·푸시는 사용자 명시 지시 시에만
* 새 라이브러리 추가 전 확인 요청

흔한 실수

  • ❌ 디렉토리 트리 전체 복사 — Claude가 직접 탐색할 수 있음
  • ❌ 한국어와 영어 혼용 — 한 언어로 일관되게
  • ❌ 기능 설명 (이건 README의 역할)
  • ❌ 너무 일반적인 베스트 프랙티스 (“코드는 가독성 있게”) — 프로젝트 고유 규칙만

세부 규칙은 Skill로 분리

CLAUDE.md가 길어지면 자주 쓰는 워크플로(콘텐츠 작성, 마이그레이션 절차 등)를 별도 Skill 파일로 분리합니다. CLAUDE.md에는 “어떤 작업 시 어떤 Skill을 호출하라”는 짧은 안내만 두면 됩니다.

다음 단계

자주 묻는 질문

CLAUDE.md는 무엇인가요?

프로젝트 루트에 두는 마크다운 파일로, Claude Code가 모든 세션에서 자동으로 컨텍스트로 로드합니다. 프로젝트 개요·구조·명령어·코드 컨벤션을 미리 알려주는 역할을 합니다.

어디에 두나요?

프로젝트 단위는 루트의 `CLAUDE.md`, 사용자 전체는 `~/.claude/CLAUDE.md`에 둡니다. 두 파일이 모두 있으면 사용자 전역 → 프로젝트 순으로 로드되어 프로젝트 설정이 우선합니다.

어떤 내용을 포함해야 하나요?

프로젝트 개요, 기술 스택, 디렉토리 구조 요약, 자주 쓰는 명령어(build/dev/test), 코드 컨벤션, 절대 하지 말아야 할 것(금지 사항)을 포함합니다. 길면 길수록 좋은 것은 아니므로 핵심만 간결하게 작성합니다.

초안은 어떻게 만드나요?

Claude Code에서 `/init` 슬래시 커맨드를 실행하면 프로젝트를 분석해 초안을 자동 생성합니다. 초안을 검토·수정하는 방식이 가장 빠릅니다.

CLAUDE.md가 너무 길면 문제가 되나요?

매 세션 컨텍스트를 차지하므로 길어질수록 토큰 예산이 줄어듭니다. 한 화면에 들어가는 분량이 이상적이며, 세부 규칙은 별도 Skill로 분리하는 것을 권장합니다.