CLAUDE.md

CLAUDE.md란

/init

(하위 내용은 /init 후 수행한 작업에 대해 Claude가 설명해준것. 아티클과 무관.)

미래의 Claude 인스턴스가 이 레포에서 빠르게 생산적으로 일할 수 있도록, 코드를 여러 파일 읽어야만 알 수 있는 맥락을 미리 요약

  1. 코드베이스 탐색 — 파일 트리를 순회하며 전체 구조 파악
  2. 핵심 파일 읽기 — 아키텍처 이해에 필요한 파일들을 직접 읽음
  3. 기존 문서 확인 — README.md, .cursor/rules/, .github/copilot-instructions.md 등 이미 있는 문서에서 중요 내용 추출
  4. CLAUDE.md 작성 — 수집한 정보를 바탕으로 아래 항목에 집중해서 작성
    - Commands: build·dev·lint 등 자주 쓰는 명령어
    - Architecture: 파일 하나만 봐서는 알기 어려운 "큰 그림" (데이터 흐름, 모듈 간 관계, 패턴 등)

포함하지 않는 것

/init을 통해 생성된 내용 중에 중요하지 않은 것들은 제거 필요.

CLADE.md에 포함시켜야 할 내용

# 프로젝트: ShopFront
App Router, Stripe 결제, Prisma ORM을 사용하는 Next.js 14 전자상거래 애플리케이션입니다.

## 코드 스타일

- TypeScript strict 모드 사용, `any` 타입 금지
- default export 대신 named export 사용
- CSS: Tailwind 유틸리티 클래스 사용, 커스텀 CSS 파일 금지

## 명령어

- `npm run dev`: 개발 서버 시작 (포트 3000)
- `npm run test`: Jest 테스트 실행
- `npm run test:e2e`: Playwright end-to-end 테스트 실행
- `npm run lint`: ESLint 검사
- `npm run db:migrate`: Prisma 마이그레이션 실행

## 아키텍처

- `/app`: Next.js App Router 페이지 및 레이아웃
- `/components/ui`: 재사용 가능한 UI 컴포넌트
- `/lib`: 유틸리티 및 공유 로직
- `/prisma`: 데이터베이스 스키마 및 마이그레이션
- `/app/api`: API 라우트

## 중요 사항

- .env 파일은 절대 커밋하지 마세요
- /app/api/webhooks/stripe의 Stripe webhook 핸들러는 반드시 서명을 검증해야 합니다
- 제품 이미지는 로컬이 아닌 Cloudinary에 저장됩니다
- 인증 플로우에 대한 자세한 내용은 @docs/authentication.md를 참고하세요

.claude/rules/

your-project/
├── .claude/
│   ├── CLAUDE.md           # 주요 프로젝트 지침
│   └── rules/
│       ├── code-style.md   # 코드 스타일 가이드라인
│       ├── testing.md      # 테스트 컨벤션
│       └── security.md     # 보안 요구사항

모듈 특성별로 컨텍스트 관리

GitHub Action에서 CLAUDE.md 관리 자동화 (아티클 인용)

Claude Code GitHub 액션( /install-github-action 로 설치)을 사용하고 있다면, PR 댓글에 _@claude를 직접 태그하여 이러한 업데이트를 요청할 수 있습니다. 예를 들어 "@_claude CLAUDE.md에 다음 내용을 추가해 주세요: enum은 절대 사용하지 말고, 항상 문자열 리터럴 유니온을 선호하세요."와 같이 작성하면 됩니다. 클로드는 파일을 업데이트하고 PR의 일부로 변경 사항을 커밋합니다. Boris Cherny가 이 워크플로를 공유해 주었고 , 저는 이 워크플로를 CLAUDE.md 유지 관리 방식의 일부로 활용하고 있습니다.

모범 사례

규모가 큰 프로젝트의 경우:

참고 아티클

# CLAUDE.md 완벽 가이드