본문으로 건너뛰기

© 2026 Molayo

Zenn헤드라인2026. 06. 15. 07:52

AI 생성물 같은 스팸 PR에 지쳐서, 격리하는 GitHub App을 만들었다

요약

AI로 생성된 스팸성 PR과 Issue를 자동으로 분류하고 격리하는 GitHub App인 Slopguard를 소개합니다. 휴리스틱 기반으로 스팸 점수를 매겨 메인테이너의 검토 시간을 절약하며, 최종 판단은 사람이 직접 하도록 설계되었습니다.

핵심 포인트

  • AI 생성 스팸 PR/Issue를 탐지하여 점수 부여
  • 임계값 초과 시 자동으로 격리 라벨 부착 및 이유 코멘트
  • 신규 기여자를 보호하기 위해 최종 판단은 사람이 수행
  • 무료 플랜은 API 키 없이 휴리스틱 방식으로 동작
  • 높은 정밀도(100%)와 재현율(92%)을 목표로 설계

최근, AI로 생성한 듯한 PR(Pull Request)이나 issue가 OSS(Open Source Software) 리포지토리에 늘어나고 있습니다. 겉보기에는 그럴싸해 보이지만, 막상 읽어보면 아무도 검증하지 않은 내용입니다. close(종료)하려 해도 일단 내용을 확인해야 하므로, 수가 늘어나면 메인테이너(Maintainer)의 시간이 은근히 낭비됩니다.

제 리포지토리에도 들어오기 시작해서, 자동으로 분류하는 GitHub App을 만들었습니다.

하는 일

설치하면 PR과 issue에 0~100점의 스코어(Score)를 매깁니다. 임계값을 넘으면 slop-quarantine 라벨을 붙이고, 판단 이유를 코멘트로 남깁니다.

隔離コメントの例

공을 들인 부분은 "자동으로 close하지 않는다"는 점입니다. 신규 컨트리뷰터(Contributor)의 진지한 PR을 기계가 멋대로 거부하는 것이 가장 싫었기에, 최종 판단은 반드시 사람이 하도록 설계했습니다. /slop approve 또는 /slop reject를 코멘트로 남기면 확정됩니다.

정밀도

무료 플랜은 휴리스틱(Heuristic)만으로 동작합니다 (API 키 불필요). 수중에 있는 평가 세트 25케이스(리포지토리에서 공개됨)에서는 precision(정밀도) 100% / recall(재현율) 92%였습니다. 평가 세트가 작으므로 과신은 금물이지만, 명백히 생성만 했을 뿐 내용이 없는 것들은 대부분 잡아낼 수 있습니다.

사용법

https://slopguard.app 에서 설치하기만 하면 됩니다. Action의 YAML은 필요 없습니다. 소스는 https://github.com/Blue-B/slopguard 에서 공개하고 있습니다 (MIT + Commons Clause). 셀프 호스트(Self-host)도 가능합니다.

같은 문제로 고민하고 계신 분이 있다면 시도해 보세요. 피드백을 주시면 감사하겠습니다.

Discussion

AI 자동 생성 콘텐츠

본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0