Verification Loop Skill (검증 루프 스킬)
Claude Code 세션을 위한 포괄적인 검증 시스템입니다.
사용 시점
다음과 같은 경우에 이 스킬을 호출하세요:
- 기능 또는 중요한 코드 변경을 완료한 후
- PR을 생성하기 전
- 품질 게이트가 통과되었는지 확인하려는 경우
- 리팩토링 후
검증 단계
단계 1: 빌드 검증
# 프로젝트가 정상적으로 빌드되는지 확인
npm run build 2>&1 | tail -20
# OR
pnpm build 2>&1 | tail -20
빌드에 실패하면 중단하고 계속 진행하기 전에 수정하세요.
단계 2: 타입 검사
set -o pipefail
# TypeScript 프로젝트
npx --no-install tsc --noEmit 2>&1 | head -30
# Python 프로젝트
pyright . 2>&1 | head -30
모든 타입 오류를 보고하세요. 중요한 오류는 계속 진행하기 전에 수정하세요.
단계 3: 린트 검사
# JavaScript/TypeScript
npm run lint 2>&1 | head -30
# Python
ruff check . 2>&1 | head -30
단계 4: 테스트 스위트
# 커버리지와 함께 테스트 실행
npm run test -- --coverage 2>&1 | tail -50
# 커버리지 임계값 확인
# 목표: 최소 80%
보고:
- 총 테스트: X
- 통과: X
- 실패: X
- 커버리지: X%
단계 5: 보안 스캔
# 시크릿(비밀 키) 확인
grep -rn "sk-" --include="*.ts" --include="*.js" . 2>/dev/null | head -10
grep -rn "api_key" --include="*.ts" --include="*.js" . 2>/dev/null | head -10
# console.log 확인
grep -rn "console.log" --include="*.ts" --include="*.tsx" src/ 2>/dev/null | head -10
단계 6: Diff 리뷰
# 변경 사항 확인
git diff --stat
git diff HEAD~1 --name-only
변경된 각 파일을 검토하세요:
- 의도하지 않은 변경 사항
- 누락된 오류 처리
- 잠재적인 엣지 케이스
출력 형식
모든 단계를 실행한 후 검증 보고서를 생성하세요:
VERIFICATION REPORT
==================
Build: [PASS/FAIL]
Types: [PASS/FAIL] (X errors)
Lint: [PASS/FAIL] (X warnings)
Tests: [PASS/FAIL] (X/Y passed, Z% coverage)
Security: [PASS/FAIL] (X issues)
Diff: [X files changed]
Overall: [READY/NOT READY] for PR
Issues to Fix:
1. ...
2. ...
연속 모드
긴 세션의 경우 15분마다 또는 주요 변경 후 검증을 실행하세요:
Set a mental checkpoint:
- After completing each function
- After finishing a component
- Before moving to next task
Run: /verify
훅과의 통합
이 스킬은 PostToolUse 훅을 보완하지만 더 깊은 검증을 제공합니다. 훅은 즉시 문제를 잡아내고, 이 스킬은 포괄적인 검토를 제공합니다.