code-change-check은(는) 무엇을 하나요?
Git/SVN 기반 코드 변경 사항에 대한 AI 코드 리뷰 스킬/CLI로, 비즈니스 계약 검증, 의미론적 diff, 선택적 CodeQL 분석을 제공합니다.
개요
code-change-check는 코드 변경 사항의 품질을 자동으로 검사하는 AI 기반 도구입니다. Git 또는 SVN 저장소에서 변경된 파일을 분석하여 잠재적인 문제점을 발견하고, 비즈니스 계약 조건과의 일치 여부를 확인하며, 코드의 의미론적 변경을 이해하는 데 도움을 줍니다.
주요 기능
- Git/SVN 통합: 저장소의 변경 사항을 자동으로 감지하고 분석합니다.
- 비즈니스 계약 검증: 코드 변경이 기존 비즈니스 계약 조건을 위반하지 않는지 확인합니다.
- 의미론적 diff 분석: 단순 텍스트 diff를 넘어 코드의 논리적 변경을 이해합니다.
- 선택적 CodeQL 통합: CodeQL을 사용하여 심층적인 보안 및 품질 분석을 수행합니다.
설치
npm install -g code-change-check
# 또는
yarn global add code-change-check
사용법
기본 사용
code-change-check check
특정 브랜치 비교
code-change-check check --base main --head feature-branch
SVN 저장소 사용
code-change-check check --vcs svn
CodeQL 통합
code-change-check check --codeql
설정
code-change-check는 프로젝트 루트에 있는 code-change-check.config.json 파일을 통해 설정할 수 있습니다.
{
"vcs": "git",
"businessContracts": ["contracts/**/*.md"],
"codeql": {
"enabled": false,
"database": "./codeql-db"
},
"ignorePatterns": ["*.generated.*", "node_modules/**"]
}
환경 변수
CODE_CHANGE_CHECK_CONFIG: 설정 파일의 경로를 지정합니다.CODEQL_TOKEN: CodeQL 인증 토큰입니다.
CI/CD 통합
GitHub Actions 예제
name: Code Change Check
on: [pull_request]
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '18'
- run: npm install -g code-change-check
- run: code-change-check check
라이선스
MIT