Help us improve
Share bugs, ideas, or general feedback.
From ccpp
Reviews current branch git changes via dual Codex + Claude analysis: functionality, bugs, security (gitleaks), performance, code quality, tests. Structured report with CRITICAL/WARNING/INFO levels.
npx claudepluginhub jh941213/my-cc-harness --plugin ccppHow this skill is triggered — by the user, by Claude, or both
Slash command
/ccpp:reviewThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
현재 브랜치의 변경사항을 Codex(GPT-5.4)와 Claude 두 관점에서 리뷰합니다.
Orchestrates parallel agents to review code changes for CLAUDE.md compliance, bugs, git history, and security with confidence scores. Outputs reports or posts to GitHub PRs.
Performs code reviews using Codex MCP with severity-grouped findings and a merge gate. Supports fast (diff-only), full (diff + lint/build), and branch review variants.
Performs structured code reviews checking requirements, quality, and security standards after changes or before merge. Uses git diffs, context snapshots, and blast radius for scope.
Share bugs, ideas, or general feedback.
현재 브랜치의 변경사항을 Codex(GPT-5.4)와 Claude 두 관점에서 리뷰합니다.
Codex 플러그인으로 1차 리뷰를 실행한다:
/codex:review
Codex 리뷰 결과를 수신한 후, Step 1로 진행하여 Claude 관점에서 2차 리뷰를 수행한다. 두 리뷰 결과를 종합하여 최종 보고서에 병합한다.
# 기본 브랜치 자동 감지
BASE=$(git symbolic-ref refs/remotes/origin/HEAD 2>/dev/null | sed 's@^refs/remotes/origin/@@' || echo "main")
git diff ${BASE}...HEAD --stat
git log ${BASE}...HEAD --oneline
# 구조적 diff (포매팅 변경 무시, 로직 변경만 표시)
GIT_EXTERNAL_DIFF=difft git diff ${BASE}...HEAD 2>/dev/null || git diff ${BASE}...HEAD
각 변경 파일에 대해 아래 체크리스트 적용:
gitleaks detect --source . --no-git -v 로 자동 스캔| 레벨 | 의미 | 예시 |
|---|---|---|
| CRITICAL | 머지 차단. 보안/데이터 손실/크래시 | SQL 인젝션, 인증 우회, null 참조 |
| WARNING | 수정 권장. 향후 문제 될 수 있음 | N+1 쿼리, any 타입, 누락된 에러 핸들링 |
| INFO | 참고. 선택적 개선 | 네이밍 개선, 약간의 중복 |
각 발견 사항은 구조화된 형식으로:
[CRITICAL] [보안] (src/api/auth.ts:42): 사용자 입력이 SQL 쿼리에 직접 삽입됨
→ 수정: parameterized query 사용
[WARNING] [성능] (src/hooks/useData.ts:15): useEffect 의존성 배열에 객체 리터럴
→ 수정: useMemo로 감싸거나 개별 프로퍼티를 의존성으로
# 코드 리뷰: [브랜치명]
## 요약
[1-2문장 전체 평가]
- CRITICAL: N건 / WARNING: N건 / INFO: N건
## 파일별 리뷰
### path/to/file.ts
- [CRITICAL] (라인 XX): [설명] → [수정 방법]
- [WARNING] (라인 XX): [설명] → [제안]
## 판정
- **승인** — CRITICAL 0건
- **수정 후 승인** — CRITICAL 0건, WARNING 있음
- **재작업** — CRITICAL 1건 이상
최종 보고서에 다음 섹션을 추가:
## Codex (GPT-5.4) 리뷰 결과
[Codex가 발견한 이슈 요약]
## Claude 추가 발견
[Codex가 놓쳤지만 Claude가 발견한 이슈]
## 교차 검증
[두 리뷰어가 동시에 지적한 항목 — 높은 신뢰도]
# 순환참조 검사 (JS/TS)
npx madge --circular --extensions ts,tsx src/ 2>/dev/null
# AI 슬롭 패턴 (ast-grep)
sg --pattern 'console.log($$$)' --lang ts 2>/dev/null | head -10
sg --pattern 'as any' --lang ts 2>/dev/null | head -10
# 시크릿 스캔 (gitleaks)
gitleaks detect --source . --no-git -v 2>&1 | head -20
# 코드 통계 (scc) — 변경 파일만
scc $(git diff ${BASE}...HEAD --name-only) 2>/dev/null
리뷰 중 발견한 반복 패턴이나 실수는 progress.txt에 기록합니다.