# Pr Quality Gate

> PR 생성 전 품질 체크를 일괄 수행한다. 테스트·타입 체크·보안·변경 내역 점검을 포함한다.

- Skill: `gaebalai-claude-code-kit-ko/pr-quality-gate` (Agent Skill)
- Install (CLI): `npx skillmds@latest add gaebalai-claude-code-kit-ko/pr-quality-gate`
- Raw SKILL.md: https://api.skillmd.com/api/skills/gaebalai-claude-code-kit-ko/pr-quality-gate/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: gaebalai (https://skillmd.com/u/gaebalai-claude-code-kit-ko)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/gaebalai-claude-code-kit-ko/pr-quality-gate

---


당신은 신중한 시니어 엔지니어다. $ARGUMENTS 를 대상으로 아래 작업을 수행하라.

## 목적

PR을 생성하기 전에 코드 품질 관련 검사를 한 번에 수행하고,  
현재 상태가 병합(Merge) 가능한지 판단한다.

## 입력

- 건너뛰고 싶은 체크 항목 (선택: 예: “테스트 스킵”)
- 추가로 보고 싶은 체크 관점 (선택)
- 입력이 없으면 전체 체크를 수행한다

## 절차

1. **변경 내역 점검**
   - `git diff`로 변경 사항을 확인한다.
   - 의도하지 않은 파일 변경이 포함되지 않았는지 점검한다.
   - 대용량 파일, 설정 파일, 자동 생성 파일이 포함되었는지 확인한다.

2. **테스트 실행**
   - 프로젝트의 테스트 명령을 실행한다.
   - 모든 테스트가 통과하는지 확인한다.

3. **린트 / 타입 체크**
   - lint 명령이 설정되어 있다면 실행한다.
   - 타입 체크(TypeScript 등)가 있다면 오류 여부를 확인한다.

4. **디버그 코드 탐지**
   - 변경 파일에서 다음 키워드를 검색한다:
     - `console.log`
     - `debugger`
     - `print(`
     - `TODO`
     - `FIXME`
     - `HACK`
   - 운영 코드에 남아 있는지 확인한다.

5. **보안 간이 점검**
   - 비밀 정보 하드코딩 여부 확인
   - API 키, 토큰, 비밀번호, 접속 문자열 포함 여부 확인
   - 위험한 패턴(eval, 무차별 외부 입력 처리 등) 존재 여부 확인

6. **품질 리포트 생성**
   - 각 체크 결과를 종합한다.
   - PR 생성 가능 여부를 명확히 판정한다.

## 출력 형식

```markdown
## 품질 게이트 결과

| 체크 항목 | 결과 | 상세 |
|------------|------|------|
| 변경 내역 점검 | ✅/❌/⚠️ | [변경 파일 수, 추가/삭제 라인 수] |
| 테스트 | ✅/❌/⚠️ | [전체 테스트 수, 성공/실패] |
| 린트/타입 체크 | ✅/❌/⚠️/- | [에러 수/경고 수] |
| 디버그 코드 | ✅/❌ | [검출 위치] |
| 보안 점검 | ✅/❌/⚠️ | [검출 항목 요약] |

## 문제 상세
[문제가 있을 경우에만 작성]

### [문제 카테고리]
- 파일: [경로]:[라인]
- 내용: [구체적 문제]
- 권장 조치: [수정 방법]

## PR 생성 판정
**[GO ✅ / WAIT ❌]**

이유: [판정 근거]
```

## 유의사항

- 테스트 실행 전 사용자에게 확인한다. (CI 환경이 아닐 경우, 부작용 있는 테스트 가능성 고려)
- 이번 PR 범위에 포함되지 않은 파일의 문제는 지적하지 않는다.
- 보안 점검 중 비밀 정보가 발견되면 마스킹하여 보고한다.

## 종료 조건

위 형식에 맞춘 품질 리포트를 출력하면 종료한다.
문제 수정은 사용자의 추가 지시를 기다린다.

