| name | oss-clarify |
| description | 오픈소스 기여 가능성 분석. GitHub 레포 URL 또는 이슈 링크를 받아 기여 가능 여부를 판단. Analyze open source contribution viability — use when the user asks about contributing to a GitHub repo, wants to find good first issues, or asks if an issue is worth working on. Trigger on phrases like 'contribute', 'open source', 'good first issue', 'can I work on this', '기여', '오픈소스'. |
OSS Contribution Clarify
오픈소스 기여 가능성을 분석하여 추천/비추천을 판단한다.
Step 0: Input Gathering
인자 없이 호출 시 현재 디렉토리가 git repo인지 확인:
git rev-parse --is-inside-work-tree
git remote get-url upstream 2>/dev/null || git remote get-url origin
- GitHub 레포 → 분석 유형 질문 (특정 이슈 / 전체 이슈)
- GitHub 아닌 경우 → 레포 URL 또는 이슈 URL 입력 요청
Step 1: Repository Analysis
gh CLI로 레포 정보를 수집한다. 순서대로:
- 기여 가이드 확인 — CONTRIBUTING.md, README, PR 템플릿, 이슈 템플릿
- PR 문화 파악 — 최근 merged PR 20개 확인: first-timer 머지 사례, 리뷰 속도, 기각 패턴
- 후보 이슈 검색 (레포 URL인 경우) —
good first issue, help wanted 라벨 이슈
gh pr list --repo {owner}/{repo} --state merged --limit 20
gh issue list --repo {owner}/{repo} --label "good first issue" --state open --limit 20
gh issue list --repo {owner}/{repo} --label "help wanted" --state open --limit 20
Step 2: Issue Analysis
대상 이슈별로 확인:
- 관련 PR 체크 — 이미 PR이 올라왔거나 해결 중인지
- 작업자 체크 — assignee, "I'll work on" 등 작업 선언 여부, Draft PR 존재 여부
- 유효성 & 복잡도 — 이슈가 아직 유효한지, 난이도 (low/medium/high)
gh pr list --repo {owner}/{repo} --search "#{issue_number}" --state all
gh issue view {issue_number} --repo {owner}/{repo} --json assignees,comments
Step 3: Judgment
수집한 정보를 종합하여 판단한다. 핵심 기준:
- 자동 제외: 이미 PR로 해결 중 / 누군가 최근 2주 내 작업 선언 / 이슈 자체가 무효
- 추천: 기여 가이드 명확, PR 문화 개방적, 작업자 없음, 복잡도 적절
- 비추천: PR 문화 폐쇄적, 이슈 모호, 복잡도 과다
점수(100점 만점)와 함께 추천/조건부/비추천으로 판단.
Output Format
## OSS 기여 분석: {owner}/{repo}#{issue_number}
### 레포 분석
- 기여 가이드: {요약}
- PR 문화: {요약}
### 이슈 분석
| 항목 | 결과 |
|------|------|
| 관련 PR | {상태} |
| 작업자 | {상태} |
| 유효성 | {판단} |
| 복잡도 | {level} |
### 판단: {추천/조건부/비추천} ({점수}/100)
리스크: {있으면}
권장: {있으면}
Step 4: Next Action
점수 50+ 시 사용자에게 진행 여부 확인 → "네" 시 oss-process 호출.
Error Handling
| 상황 | 대응 |
|---|
| GH CLI 인증 실패 | gh auth login 안내 |
| 레포 접근 불가 | private 여부 확인 |
| 후보 이슈 0개 | "기여 가능한 이슈 없음" 안내 |