/code-review (코드 리뷰)
다운로드 후
~/.claude/commands/ 폴더에 복사하여 사용하세요커밋되지 않은 변경에 대한 포괄적인 보안 및 품질 리뷰.
👀
code-reviewer 에이전트를 호출하여 코드 품질과 보안을 검토합니다.
이 커맨드가 하는 일
- 변경된 파일 가져오기:
git diff --name-only HEAD - 각 변경된 파일에서 보안 및 품질 이슈 검사
- 심각도별 리포트 생성
- 치명적 또는 높음 이슈 발견 시 커밋 차단 권고
검사 항목
보안 이슈 (치명적)
- 하드코딩된 자격 증명, API 키, 토큰
- SQL 인젝션 취약점
- XSS 취약점
- 누락된 입력 검증
- 안전하지 않은 의존성
- 경로 탐색 위험
코드 품질 (높음)
- 50줄 초과 함수
- 800줄 초과 파일
- 4 레벨 초과 중첩
- 누락된 오류 처리
- console.log 문
- TODO/FIXME 주석
- 공개 API에 누락된 JSDoc
모범 사례 (중간)
- 뮤테이션 패턴 (불변으로 사용)
- 코드/주석에 이모지 사용
- 새 코드에 누락된 테스트
- 접근성 문제 (a11y)
리포트 형식
[치명적] 하드코딩된 API 키
파일: src/api/client.ts:42
이슈: 소스 코드에 API 키 노출
수정: 환경 변수로 이동
const apiKey = "sk-abc123"; // ❌ 나쁨
const apiKey = process.env.API_KEY; // ✓ 좋음승인 기준
| 결과 | 조건 | 조치 |
|---|---|---|
| ✅ 승인 | 치명적/높음 이슈 없음 | 커밋 가능 |
| ⚠️ 경고 | 중간 이슈만 | 주의하여 머지 가능 |
| ❌ 차단 | 치명적/높음 이슈 있음 | 수정 필요 |
사용 예시
# 코드 변경 후
/code-review
# 결과 예시
## 코드 리뷰 결과
### 치명적 이슈 (0)
없음
### 높음 이슈 (2)
1. [높음] 큰 함수 (67줄)
파일: src/services/market.ts:120
수정: 더 작은 함수로 분리
2. [높음] 누락된 오류 처리
파일: src/api/trades.ts:45
수정: try/catch 추가
### 중간 이슈 (1)
1. [중간] console.log 문
파일: src/utils/debug.ts:12
수정: 프로덕션 전 제거
## 결론: ⚠️ 경고
높음 이슈 2개를 수정하면 승인 가능합니다.⚠️
중요: 보안 취약점이 있는 코드는 절대 승인하지 마세요!