Claude Code Plugins

Community-maintained marketplace

Feedback

|

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name quality-gate
description 코드 품질 검증 스킬. Use when (1) 커밋 전 검증, (2) 린트/빌드/테스트 실행, (3) PR 전 품질 확인.
tools Read, Bash, Glob
model inherit

시스템 메시지: 이 Skill이 호출되면 [SEMO] Skill: quality-gate 호출 시스템 메시지를 첫 줄에 출력하세요.

quality-gate Skill

코드 품질 검증 통합 스킬 (체이닝 스킬)

Purpose

커밋 전 코드 품질을 검증합니다. 린트, 타입 체크, 빌드, 테스트를 순차적으로 실행하고 결과를 리포트합니다.


🔴 스킬 체이닝 (NON-NEGOTIABLE)

이 스킬은 implement(write-code) → write-test 체인에서 호출됩니다.

skill:write-code 완료
    │
    └→ "테스트 작성할까요?"
           │
           ├─ "테스트 작성해줘" → skill:write-test
           │       │
           │       └→ "품질 검증할까요?"
           │              └→ skill:quality-gate (이 스킬)
           │                      │
           │                      └→ "커밋할까요?"
           │                             └→ skill:git-workflow
           │
           └─ "검증해줘" → skill:quality-gate (테스트 건너뜀)

🔴 실행 순서 (NON-NEGOTIABLE)

단계 명령 설명
1 npm run lint ESLint 검사
2 npx tsc --noEmit TypeScript 타입 체크
3 npm run build 빌드 검증
4 npm test 테스트 실행

⚠️ 각 단계는 순차 실행되며, 실패 시 즉시 중단


Workflow

1. 프로젝트 설정 확인

# package.json 스크립트 확인
cat package.json | jq '.scripts'

2. 단계별 실행

# 1. Lint
npm run lint

# 2. TypeCheck
npx tsc --noEmit

# 3. Build
npm run build

# 4. Test
npm test

3. 결과 리포트

각 단계의 성공/실패 여부와 소요 시간을 리포트합니다.


출력 형식

성공 시

[SEMO] Skill: quality-gate 완료

✅ **Quality Gate 통과**

| 단계 | 상태 | 소요 시간 |
|------|------|----------|
| Lint | ✅ Pass | 2.3s |
| TypeCheck | ✅ Pass | 4.1s |
| Build | ✅ Pass | 12.5s |
| Test | ✅ Pass (42/42) | 8.2s |

---

💡 **다음 단계**: 커밋할까요?
   - "커밋해줘" → skill:git-workflow 호출
   - "아니" → 대기

실패 시

[SEMO] Skill: quality-gate 실패

❌ **Lint 실패**

에러:
src/utils/auth.ts
  42:10  error  'foo' is not defined  no-undef
  55:3   error  Unexpected any type    @typescript-eslint/no-explicit-any

💡 에러 수정을 도와드릴까요?
   - "수정해줘" → skill:write-code 호출
   - "무시하고 계속" → 다음 단계 진행 (권장하지 않음)

🔴 Post-Action: 커밋 프롬프트 (NON-NEGOTIABLE)

Quality Gate 통과 후 반드시 커밋 여부를 확인합니다.

완료 시 자동 프롬프트

💡 **다음 단계**: 커밋할까요?
   - "커밋해줘" → skill:git-workflow 호출
   - "아니" → 대기

사용자 응답별 동작

응답 동작
"커밋해줘" skill:git-workflow 호출
"푸시까지 해줘" skill:git-workflow 호출 (push 포함)
"아니", "계속" 추가 작업 대기

프로젝트 유형별 설정

Next.js 프로젝트

npm run lint        # next lint
npm run build       # next build
npm test            # jest

Node.js 프로젝트

npm run lint        # eslint
npx tsc --noEmit    # typescript check
npm run build       # tsc
npm test            # jest/mocha

스크립트 없는 경우

스크립트 대체 명령
lint 없음 npx eslint . 실행 또는 건너뜀
build 없음 npx tsc 실행 또는 건너뜀
test 없음 건너뜀 (테스트 없음 표시)

옵션

특정 단계만 실행

"린트만 실행해줘" → npm run lint만 실행
"빌드만 해줘" → npm run build만 실행
"테스트만 돌려줘" → npm test만 실행

실패 시 계속 진행

"실패해도 계속해줘" → 모든 단계 실행 후 최종 리포트

Related Skills

Skill 역할 연결 시점
write-code 코드 구현 quality-gate 전
write-test 테스트 작성 quality-gate 전
git-workflow 커밋/푸시 quality-gate 후

References