AgentSkillsCN

commit

分析变更内容,生成并提交包含提交类型和单一意图的提交信息。当用户请求提交时,该功能会自动调用。

SKILL.md
--- frontmatter
name: commit
description: 변경 사항을 분석하여 커밋 타입과 단일 의도가 담긴 커밋 메시지를 생성하고 커밋한다. 사용자가 커밋을 요청하면 자동으로 호출된다.
disable-model-invocation: true
allowed-tools: Bash
argument-hint: [메시지]

커밋 스킬

변경 사항을 분석하고 Conventional Commits 형식으로 커밋한다.

커밋 타입

타입용도
feat새로운 기능 추가
fix버그 수정
refactor기능 변경 없는 코드 구조 개선
style포맷팅, 세미콜론 등 코드 동작에 영향 없는 변경
docs문서 추가 또는 수정
test테스트 추가 또는 수정
chore빌드, 설정, 의존성 등 기타 변경
perf성능 개선
ciCI/CD 설정 변경

수행 절차

1단계: 변경 사항 분석

다음 명령어를 병렬로 실행한다:

  • git status — 변경된 파일 목록 확인
  • git diff --stagedgit diff — 변경 내용 확인
  • git log --oneline -5 — 최근 커밋 스타일 참고

2단계: 커밋 메시지 작성

형식: <타입>: <메시지>

규칙:

  • 메시지는 하나의 의도만 담는다
  • 변경된 내용(what)이 아니라 변경한 이유(why)를 중심으로 작성한다
  • 한국어로 작성하고, 기술 용어는 영문 유지
  • 간결하게 한 줄로 작성 (70자 이내 권장)
  • 마침표를 붙이지 않는다

좋은 예:

  • feat: 다크 모드 토글 추가
  • fix: 로그인 시 토큰 만료 시간 미적용 문제 수정
  • refactor: ClaimService에서 검증 로직 분리

나쁜 예:

  • fix: 버그 수정 — 어떤 버그인지 알 수 없음
  • feat: 로그인 기능 추가 및 회원가입 페이지 리디자인 — 두 가지 의도 혼재
  • update: 코드 수정 — 타입이 모호하고 의도 불명확

3단계: 스테이징 및 커밋

  • 변경 의도에 해당하는 파일만 선별하여 git add한다
  • 관련 없는 변경이 섞여 있으면 사용자에게 분리 커밋을 제안한다
  • .env, 시크릿 파일 등 민감한 파일은 절대 스테이징하지 않는다
bash
git add <관련-파일들>
git commit -m "$(cat <<'EOF'
<타입>: <메시지>

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
EOF
)"

4단계: 결과 확인

  • git status로 커밋 결과를 확인한다
  • pre-commit hook 실패 시: 문제를 수정하고 새로운 커밋을 생성한다 (--amend 금지)

인자 처리

  • $ARGUMENTS가 있으면 해당 내용을 커밋 메시지의 기초로 사용한다
  • 인자가 없으면 diff를 분석하여 메시지를 자동 생성한다

주의사항

  • git push는 하지 않는다 (사용자가 명시적으로 요청한 경우에만)
  • --force, --no-verify 등 위험한 플래그는 사용하지 않는다
  • 변경 사항이 없으면 빈 커밋을 만들지 않는다