GitHub 스타 및 공식 스킬 카탈로그에서 도구 선정하기
목표: 작업에 도구, 라이브러리, CLI, MCP 서버 또는 에이전트 스킬이 필요한 경우, 무작위 웹 검색 결과보다 사용자가 이미 신뢰하는 것(자신의 GitHub 스타)과 공식 공급업체 카탈로그를 우선시하되, 품질도 확인합니다.
아래 모든 경로는 이 스킬의 폴더(이 SKILL.md가 들어 있는 디렉터리)를 기준으로 합니다.
1. 필요사항 명확히 하기
도구가 해야 할 일과 하드 제약 조건(언어/런타임, OS, GPU/VRAM과 같은 하드웨어, 라이선스, 오프라인/로컬, 예산)을 한 줄로 적으세요. 사용자 환경에 대해 이미 알고 있는 정보를 활용하세요.
2. 사용자의 GitHub 스타 검색하기
사용자의 GitHub 로그인을 찾으세요 (모르면 한 번 묻거나, gh가 사용자로 로그인되어 있으면 gh api user --jq .login을 사용하세요). 그런 다음 존재하는 첫 번째 소스를 사용하세요.
- 로컬 스냅샷 (선택 사항). 이 스킬 폴더에
references/stars.csv또는references/stars_by_list.md가 있거나 (또는 사용자가 별도의 비공개 저장소에 있는 복사본을 가리키는 경우) 먼저 검색하세요. 오프라인에서도 작동합니다.stars.csv열:lists(GitHub 스타 목록 이름,|로 구분; 없으면(unlisted)),full_name,url,description,description_ja,language,stars,pushed_at,archived,license,topics,starred_at.stars_by_list.md: 동일한 저장소를 스타 목록별로 그룹화하여 한 줄씩 표시하며, 상단에Snapshot:날짜가 있습니다. 목록 이름은 유용한 카테고리 힌트입니다.- 스냅샷은 오래될 수 있습니다. 온라인 상태이고 최신 정보가 중요할 때는 아래 실시간 확인도 함께 수행하세요.
- 실시간, 읽기 전용 (스냅샷이 없을 때 기본값):
gh api --paginate "users/<login>/starred?per_page=100" --jq '.[] | [.full_name,.html_url,.description,.language,(.topics|join(" ")),.stargazers_count,.pushed_at,.archived] | @tsv'(gh를 사용할 수 없으면 인증되지 않은 REST APIhttps://api.github.com/users/<login>/starred사용). 사용자가 스타를 GitHub 스타 목록으로 정리했다면, 목록 이름을 카테고리 힌트로 사용하세요.
설명, 주제, 이름, 언어에서 여러 동의어(사용자가 사용하는 다른 언어 포함)로 매칭하세요 (예: rg -i "video|動画|ffmpeg" references/stars.csv). 추천하기 전에 가능성 있는 결과의 README를 훑어보세요.
3. 공식 스킬/플러그인 카탈로그 검색하기 (에이전트 스킬 또는 플러그인이 도움이 될 때)
npx -y skills find "<query>"를 실행하고, 선택적으로--owner <publisher>로 anthropics, openai, cursor, github, google, google-gemini, microsoft, vercel-labs, cloudflare, huggingface, awslabs와 같은 공식 게시자로 범위를 좁히세요. 이 작업은 인터넷 액세스가 필요합니다. 환경이 오프라인이면 이 단계를 건너뛰고 그렇게 알리세요.- 또한 공급업체의 공식 저장소(예: anthropics/skills, anthropics/claude-plugins-official, openai/skills, openai/plugins, cursor/plugins, github/awesome-copilot, google/skills, vercel-labs/agent-skills, huggingface/skills, microsoft/skills, cloudflare/skills)도 고려하세요. 저장소를 공식이라고 부르기 전에 공급업체 조직이 소유하고 있는지 확인하세요.
4. 품질 필터 (모든 후보에 적용)
- 스냅샷의
stars,pushed_at,archived,license를 사용하고, 온라인 상태일 때gh api repos/<owner>/<repo>로 새로고침하세요. - 잘 알려지고 활발히 유지보수되는 프로젝트를 선호하세요. 보관된 저장소, 약 1년 동안 의미 있는 활동이 없는 저장소, 별점이 매우 적은 저장소는 더 나은 대안이 없는 경우를 제외하고 제외하세요 (그런 경우 그렇게 알리세요).
- 별점에는 오래되었거나 농담용 저장소가 포함될 수 있습니다: 별표를 받았다는 것은 관심의 신호이지 품질의 신호는 아닙니다.
- 스타나 공식 카탈로그에 적합한 것이 없으면 그렇게 말하고 기존 표준 도구에 대한 일반 검색으로 대체하세요. 별표 표시된 저장소를 억지로 추천하지 마세요.
5. 추천하기
- 1개의 최선 추천과 2~3개의 대안을 제시하세요. 각각에 대해: 링크가 포함된 이름, 수행 기능, 이 작업과 제약 조건에 적합한 이유, 별점 및 최종 업데이트 날짜(스냅샷 또는 실시간 확인 중 어디에서 왔는지 명시), 사용자의 스타, 공식 카탈로그 또는 일반 검색 중 어디에서 왔는지.
- 별점, 날짜 또는 기능을 지어내지 말고 확인한 것만 보고하세요.
- 설치, 별표 표시 또는 변경에는 사용자의 사전 승인이 필요합니다. 이 스킬은 기본적으로 읽기 전용입니다.
스냅샷 생성 또는 업데이트 (선택 사항)
python3 scripts/refresh_stars.py <login>은 references/stars.csv와 references/stars_by_list.md를 작성합니다 (읽기 전용; gh에 로그인되어 있어야 함; 스타 목록 이름은 gh가 <login>으로 로그인된 경우에만 채워지며, 그렇지 않으면 모든 저장소가 (unlisted)가 됩니다). 기존 description_ja 값은 유지됩니다. 데이터는 개인 정보이므로 공개 저장소에 보관하지 말고 (.gitignore 참조) 별도의 비공개 저장소에 저장하세요.