클로드스킬마트스킬 둘러보기바로 쓰는 문장영상으로 배우기터미널 사용법스킬이 뭐예요?
← 목록으로

PR 스쿼시 커밋 메시지 생성기

PR의 base와 head 사이 순수 변경분만 분석해 Conventional Commits 형식의 스쿼시 커밋 메시지를 만들고, commitlint 검증·PR 제목 반영·클립보드 복사까지 처리합니다.

개발·코딩중급★ 941⑂ 110AI 점수 9/10마지막 업데이트: 2026. 10. 9.

무엇을 해주나

  • gh로 PR의 base 브랜치를 자동 판별하고(main/develop 하드코딩 금지) git diff origin/BASE...HEAD의 순수 변경분만 읽습니다. 브랜치 안에서 만들고 고친 과정(journey)은 메시지에 넣지 않습니다.
  • 변경의 실제 효과를 기준으로 타입(feat/fix/test/docs/chore)을 정하고, 헤더 1줄 + 본문(최대 12줄, 72열 래핑) + 필요 시 추가 엔트리 + 푸터(Closes #n, ---------, Co-authored-by)를 구성합니다.
  • 공동 작성자는 커밋 author/committer와 기존 trailer에서 자동 수집·중복 제거합니다(신원 임의 생성 금지).
  • 메시지를 임시 파일에 써서 npx --no-install commitlint --verbose로 검증하고, 줄 길이·본문 길이 규칙도 점검합니다.
  • PR 제목을 헤더와 일치하게 gh api PATCH로 수정하고, 클립보드에는 설명 본문만 복사한 뒤 제목과 설명을 코드블록으로 보여줍니다.
  • 포크/외부 작성자 PR처럼 신뢰할 수 없는 경우 브랜치 코드를 실행하는 명령(테스트, commitlint 등)을 먼저 묻고 건너뜁니다.

이런 분께 추천

  • GitHub에서 Squash merge를 기본으로 쓰고 Conventional Commits + commitlint를 적용하는 팀
  • release-please 등으로 CHANGELOG와 버전을 자동 생성해, 커밋 메시지 품질이 릴리스 노트 품질과 직결되는 프로젝트
  • PR마다 메시지 작성 규칙을 사람마다 다르게 쓰는 것을 막고 싶은 리뷰어·메인테이너

활용 예시

  1. "이 PR 스쿼시 메시지 만들어줘" → base가 develop임을 자동 감지, diff를 읽고 feat(api): add pagination to search endpoint 헤더와 5줄 이내 불릿 본문을 생성.
  2. 브랜치 중간에 자신이 만든 버그를 고친 커밋이 여러 개 있어도, base 기준으로 보이지 않으므로 fix 항목으로 기록하지 않음.
  3. 기능 변경과 CI 워크플로 변경이 함께 있는 PR에서, 본문 뒤에 ci(github): ... 추가 엔트리를 붙여 CHANGELOG가 두 항목으로 나뉘게 함.
  4. diff에 실수로 포함된 .env.local 같은 파일을 발견하면 메시지 밖 경고로 알려 커밋 전에 제거하도록 유도.

· · · 설치 가이드 · · ·

설치 없이 지금 한 번 써보기

아래를 Claude에 붙여넣으면 설치하지 않고도 이 스킬을 그대로 씁니다.

이 파일의 지시를 읽고 그대로 따라서 나를 도와줘:
https://raw.githubusercontent.com/scenario-labs/skills/HEAD/.agents/skills/pr-squash-message/SKILL.md

내가 원하는 것: (여기에 하고 싶은 일을 쓰세요)

Claude가 링크를 열지 못하면, 링크를 직접 열어 내용을 복사해 붙여넣으세요.

↓ 쓸 만하면 아래에서 ZIP을 받아 설치하세요. 그러면 매번 붙여넣지 않아도 알아서 작동합니다.

Claude 앱에 설치 (터미널 필요 없음)
  1. 아래 버튼으로 ZIP 파일을 받으세요.
  2. Claude 설정 → Capabilities에서 '코드 실행 및 파일 생성'을 켭니다. (한 번만)
  3. Claude에서 Customize → Skills → + → '스킬 업로드'를 누르고 받은 ZIP을 올립니다.
↓ ZIP 내려받기
Claude Code에 설치

Claude에게 맡기기 — 아래 문장을 Claude Code에 붙여넣으세요

클로드스킬마트에서 찾은 스킬을 설치해줘.
GitHub 저장소 scenario-labs/skills 의 .agents/skills/pr-squash-message 폴더를 내 ~/.claude/skills/pr-squash-message/ 에 그대로 복사해줘.
설치가 끝나면 이 스킬로 무엇을 할 수 있는지 한 줄로 알려줘.

직접 명령으로 설치하기

git clone https://github.com/scenario-labs/skills.git /tmp/sl-skills && mkdir -p ~/.claude/skills && cp -r /tmp/sl-skills/.agents/skills/pr-squash-message ~/.claude/skills/

⚠ 제3자가 만든 스킬입니다. 설치 전 원본 저장소를 한 번 확인하세요.

  1. 터미널에서 저장소를 클론합니다: git clone https://github.com/scenario-labs/skills.git /tmp/sl-skills
  2. 스킬 폴더를 준비합니다: mkdir -p ~/.claude/skills
  3. 이 스킬만 복사합니다: cp -r /tmp/sl-skills/.agents/skills/pr-squash-message ~/.claude/skills/
  4. 전제 도구를 확인합니다: git --version, gh --version(GitHub CLI), 그리고 gh auth status로 로그인 상태 확인.
  5. 저장소에 commitlint 설정이 있는지 확인합니다(commitlint.config.*). 없으면 검증 단계는 건너뛰어진다는 점만 알아두세요.
  6. 클립보드 도구를 확인합니다: macOS는 pbcopy(기본 제공), Linux는 wl-copy 또는 xclip 설치.
  7. Claude Code를 재시작한 뒤, PR 브랜치가 체크아웃된 상태에서 "이 PR의 스쿼시 커밋 메시지를 만들어줘"라고 요청합니다.