--- name: code-review description: "GUARDiA 프로젝트 소스 코드 리뷰 스킬. 다음 상황에서 사용: (1) '코드 리뷰', '소스 분석', '보안 취약점 검사', '코드 품질 점검'; (2) 특정 프로젝트 디렉토리 분석 요청; (3) SQL 인젝션, XSS, 패스워드 평문 저장 등 보안 이슈 점검; (4) 배포 전 코드 검증; (5) '빠른 스캔', 'quick scan', '즉시 보안 검사'. C:\\GUARDiA\\projects\\ 하위 프로젝트를 대상으로 하며, Ollama 로컬 LLM 사용 (외부 API 없음)." --- # 코드 리뷰 스킬 GUARDiA 프로젝트 소스를 분석하여 보안·성능·품질 이슈를 발견한다. ## 빠른 시작 ### 1. 리뷰 가능 프로젝트 목록 확인 ``` GET /api/code-review/projects/list ``` ### 2. 빠른 보안 스캔 (즉시 결과, LLM 불필요) ``` POST /api/code-review/quick-scan?project_dir=testcase-java-api ``` ### 3. 전체 코드 리뷰 요청 (비동기) ``` POST /api/code-review { "project_id": 1, "model": "codellama", "focus": "security" } → 202 + review_id 반환 ``` ### 4. 결과 폴링 ``` GET /api/code-review/{review_id} → status: PENDING | RUNNING | DONE | FAILED ``` ## 발견 항목 구조 ```json { "file": "testcase-java-api/src/.../ItemController.java", "severity": "CRITICAL|HIGH|MEDIUM|LOW|INFO", "category": "SECURITY|PERFORMANCE|CODE_QUALITY|ARCHITECTURE|TESTING", "line": 42, "message": "문제 설명", "suggestion": "개선 방안" } ``` ## 점수 기준 | 점수 | 등급 | 의미 | |------|------|------| | 95-100 | 우수 | 배포 즉시 가능 | | 80-94 | 양호 | 배포 가능 (LOW 이슈 후속 처리) | | 60-79 | 개선 필요 | MEDIUM+ 수정 후 배포 | | 0-59 | 위험 | 배포 차단, CRITICAL/HIGH 즉시 수정 | ## 지원 테스트케이스 프로젝트 | 디렉토리 | 언어 | 주요 이슈 | |---------|------|---------| | `testcase-java-api` | Java/Spring Boot | SRP 위반, NPE 위험, null 반환 | | `testcase-py-api` | Python/FastAPI | SQL 인젝션, 패스워드 평문, user enumeration | | `testcase-js-frontend` | HTML/JS | XSS (innerHTML), API 키 하드코딩 | | `testcase-php-legacy` | PHP | SQL 인젝션, CSRF 없음, DB 정보 하드코딩 | ## 참조 - 보안 패턴 목록: `references/security-patterns.md` - Ollama 모델 선택 가이드: `references/model-guide.md`