← ClaudeAtlas

android-reviewlisted

코드 리뷰를 수행한다. 사용자가 "리뷰해줘", "코드 봐줘", "PR 리뷰", "변경사항 확인", "코드 점검", "코드 검토" 등 코드 품질·개선 관련 요청을 할 때 반드시 사용한다. 인자 없으면 git diff 기준, 인자 있으면 지정 파일/폴더 기준으로 가독성·정확성·보안·아키텍처·테스트를 체크한다.
gagip/gagip-dev · ★ 0 · Code & Development · score 63
Install: claude install-skill gagip/gagip-dev
## 입력 ``` $ARGUMENTS ``` ## Step 1 — 리뷰 대상 결정 - `$ARGUMENTS`가 **비어 있으면** → `git diff HEAD`로 변경사항 확인. 추가로 `git status --short`로 untracked 파일을 확인하고, 리뷰가 필요한 신규 파일이 있으면 함께 포함한다. - `$ARGUMENTS`가 **있으면** → 해당 파일 또는 폴더의 코드를 Read/Glob으로 읽어 리뷰 ## Step 2 — 리뷰 체크리스트 각 항목을 확인하되, 해당 없는 항목은 생략한다. 파일 성격에 따라 적용 범위를 조정한다. - **테스트 파일** (`*Test.kt`, `*Spec.*` 등): 가독성·정확성 위주, 아키텍처·보안 항목은 최소화 - **설정/빌드 파일** (`*.gradle`, `*.json`, `*.yaml` 등): 보안·정확성 위주 - **일반 소스 파일**: 모든 항목 적용 > **references 는 리뷰 대상 레포의 규칙이 아니다 — 인용 전에 출처를 확인한다.** > `references/android/kotlin-conventions.md`·`compose-patterns.md`는 첫 줄에 밝히듯 **특정 참고 > 프로젝트에서 쓰이는 관례**이고, `coding-philosophy.md`는 개인 철학, `service-guidelines.md`만 > 플랫폼 공식 문서 기반이다. 아래 체크리스트가 "프로젝트 규칙과 일치하는가"라고 쓴 것은 **리뷰 > 대상 레포의 규칙**을 뜻하며, references 는 그 후보를 떠올리게 하는 재료일 뿐이다. > > 그래서 references 를 근거로 지적할 때는 ① 그 규칙이 리뷰 대상 레포에도 적용되는지 판단하고, > ② 아니면 지적에서 빼거나 "다른 프로젝트 관례"라고 밝히며, ③ 그럼에도 유효하면 **언어·플랫폼 > 동작 같은 프로젝트 무관한 근거**를 대거나 **그 레포에 이미 있는 관례**를 찾아 인용한다. > DI 프레임워크·아키텍처 계층처럼 레포마다 다른 항목은 걸러내면서 에러 처리·네이밍처럼 보편적으로 > 보이는 항목만 그대로 인용하면 판단이 일관되지 않게 된다 — 같은 문서면 같은 기준으로 판단한다. **가독성** (`${SKILL_DIR}/references/common/coding-philosophy.md` 기준) - 코드가 명확하고 읽기 쉬운가 - 함수·변수명이 역할을 잘 표현하는가 (네이밍 규칙 준수) - 중복 코드가 없는가 - 구조적으로 명확한가 (불필요한 람다·복잡한 연산�� 체인 남용 여부) - 계약이 명시되어 있는가 (`require` / `check` / `assert`) - 빠른 실패 원칙이 지켜지는가 (잘못된 상태를 조용히 넘기지 않는가) - 주석이 적절한 위치에만 있는가 (공개 API 또는 코드로 설명 불가한 이유) **정확성** - 에러 처리가 적절한가 - 사전조건·사후조건·불변식이 지켜지는가 - 입력값 유효성 검��가 구현되어 있는가 (시스템 경계) **보안** - 시크릿 키·API 키가 노출