Community코딩 & 개발github.com

cygnixlabs-cmd/cygnix-seo-skills

Google Search Console 쿼리+페이지 내보내기 파일에서 두 개 이상의 자체 페이지가 노출수를 나누는 쿼리를 찾아 HIGH/MEDIUM/LOW로 분류합니다. 사용자가 키워드 잠식, 경쟁 페이지, 또는 GSC 내보내기 파일을 업로드할 때 활용하세요. 오프라인 작동, API 키 불필요.

cygnix-seo-skills란 무엇인가요?

이 스킬은 Google Search Console(GSC)의 성과 내보내기 파일(쿼리 및 페이지 차원 포함)을 분석하여 키워드 잠식(Keyword Cannibalization) 현상을 탐지합니다. 사용자가 업로드한 CSV 파일에서 동일한 쿼리에 대해 여러 URL이 노출수를 나누는 경우를 찾아내고, 그 심각도를 HIGH(두 번째 페이지가 노출의 30% 이상 차지), MEDIUM(20% 이상), LOW(그 외)로 자동 분류합니다. 완전히 오프라인에서 작동하며 API 키가 필요 없고, Claude Code, Cursor, Codex 등 다양한 AI 에이전트 환경에서 실행할 수 있습니다. 브랜드명 제외, 최소 노출수, 최소 점유율 등의 옵션을 지원하며, 결과에 따라 머지, 301 리디렉션, 제목/H1 최적화 해제 등의 권장 조치를 제안합니다. 단, 페이지를 직접 가져오거나 의도 중복을 판단하지 않으므로, 의도가 다른 경우는 LOW로 처리하여 정보 제공용으로 활용합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/cygnixlabs-cmd/cygnix-seo-skills/tree/HEAD/skills/keyword-cannibalization-lite

Installed? Explore more 코딩 & 개발 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

키워드 잠식 탐지기 (Lite)

query와 page 열이 모두 포함된 Search Console 내보내기 파일을 읽고, 여러 URL이 실제 노출 점유율을 공유하는 쿼리를 나열합니다.

사용 시기

  • "내 페이지들이 서로 잠식하고 있나요?", "두 페이지가 같은 키워드에 랭크됩니다.", "왜 Google이 랭킹 페이지를 바꿀까요?"
  • 사용자가 쿼리 + 페이지 수준의 GSC 성과 내보내기 파일(Looker Studio, API 내보내기 포함)을 가지고 있을 때

실행 방법

  1. GSC에서 내보내기: 성과 → 쿼리와 페이지 차원 모두 추가(API, Looker Studio 또는 GSC 내보내기 도구 사용; UI 단독으로는 한 번에 한 차원만 내보냅니다). 필요 열: query, page, clicks, impressions, position. 열 이름은 자동 감지됩니다.
  2. 실행:
    python3 scripts/cannibalization.py gsc.csv
    python3 scripts/cannibalization.py gsc.csv --min-impressions 50 --min-share 15 --exclude "브랜드명"
    
  3. 테이블 제시. 각 HIGH 행에 대해 하나의 조치를 권장하세요: 약한 페이지를 병합하고 301 리디렉션, 해당 쿼리에 대한 제목/H1 최적화 해제, 또는 의도 차별화. 클릭을 얻고 있는 페이지의 리디렉션을 제안하기 전에 사용자에게 물어보세요.

심각도

  • HIGH: 두 번째 페이지가 쿼리 노출의 ≥30%를 차지하고 첫 번째 페이지와의 순위 차이가 10 이내입니다.
  • MEDIUM: 두 번째 페이지가 ≥20%를 차지합니다.
  • LOW: 그 외 임계값 이상(종종 무해, 예: 홈페이지와 상품 페이지).

제한 사항

페이지를 가져오거나 의도 중복을 판단하지 않으며, 각 페이지에 대한 수정 방안을 선택하지 않습니다. 일부 분할은 문제가 없습니다(서로 다른 의도를 충족시키는 다른 페이지). 따라서 LOW는 정보 제공용으로 처리하세요.

예시

최고의 러닝화 → 기본 /best-running-shoes (6.2) 및 /blog/running-shoes-guide (14.8, 노출의 31%) → HIGH.

페이지별 수정이 필요하신가요?

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

cygnixlabs-cmd/cygnix-seo-skills

Give one web page a quick 0-100 AI search visibility (GEO/AEO readiness) score from its server-rendered HTML - AI crawler access, Organization/WebSite JSON-LD, structured data, title/meta, question headings, answer-first opening, llms.txt and freshness - with the top 5 fixes. Use when the user asks if a page is ready for ChatGPT, Perplexity, Google AI Overviews or other AI search, or wants a GEO/AEO score.

cygnixlabs-cmd/cygnix-seo-skills

Compare two Google Search Console page exports (an earlier period and a recent one) and flag pages that are LOST, DECLINING, in STRIKING_DISTANCE, GROWING or STABLE, ranked by clicks lost. Use when the user asks which pages lost traffic, about content decay, what to refresh or update first, or uploads two GSC page exports. Offline, no API keys.

cygnixlabs-cmd/cygnix-seo-skills

Group a keyword list into topic clusters with a pillar keyword, majority search intent and suggested page type, so one page targets each cluster. Use when the user pastes keywords or a keyword CSV and asks to cluster, group, organise or map keywords to pages, or plan a content hub. Offline, no API keys.

cygnixlabs-cmd/cygnix-seo-skills

Check whether a website has a valid /llms.txt (llmstxt.org format, working links, size) and whether robots.txt lets AI crawlers such as GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot and Google-Extended in. Use when the user asks about llms.txt, AI crawler access, blocking or allowing AI bots, or whether ChatGPT/Claude/Perplexity can read their site. Read-only.

관련 스킬