Community라이팅 & 에디팅github.com

aelena/seo-geo-audit

Claude Code 스킬 — 프론트엔드 코드베이스의 SEO 및 생성 엔진 최적화(GEO) 감사

seo-geo-audit란 무엇인가요?

이 스킬은 프론트엔드 저장소에서 클래식 SEO(Google 크롤러가 평가하는 항목)와 GEO(생성 엔진 최적화, 즉 LLM이 콘텐츠를 읽을 때 중요하게 생각하는 항목)를 동시에 감사합니다. 주요 차별점은 GEO입니다. 기존 SEO 스캐너는 오래전부터 존재했지만, '언어 모델이 사이트를 추출, 인용, 추론하기 쉬운가'라는 질문은 Claude 같은 LLM만이 진정으로 답할 수 있습니다. 이 스킬은 Claude Code, Cursor, Codex 등 에이전트 환경에서 작동하며, /audit 같은 명령어로 실행됩니다. 감사 결과는 심각도, file:line 인용, 구체적인 수정 제안을 포함한 마크다운 보고서로 출력됩니다. Next, Astro, Nuxt, SvelteKit, Remix, Gatsby, Vite, Vue 등 다양한 프레임워크를 지원하며, package.json을 읽어 프레임워크를 자동 감지합니다. 기본적으로 읽기 전용이며, fix 모드에서만 수정을 제안하고 모든 수정은 사용자 확인이 필요합니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add aelena/seo-geo-audit

Installed? Explore more 라이팅 & 에디팅 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

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

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

문서

seo-geo-audit은(는) 무엇을 하나요?

프론트엔드 저장소에서 클래식 SEO(Google 크롤러가 평가하는 항목)와 GEO(생성 엔진 최적화, 즉 LLM이 콘텐츠를 읽을 때 중요하게 생각하는 항목)를 감사합니다. 심각도, file:line 인용, 구체적인 수정 사항이 포함된 마크다운 보고서를 출력합니다.

새로운 가치는 GEO에 있습니다. 클래식 SEO 스캐너는 오래전부터 존재했습니다. 하지만 "언어 모델이 사이트를 추출, 인용, 추론하기 쉬운가?"라는 질문은 Claude만이 진정으로 답할 수 있습니다. Claude가 소비자이기 때문입니다.

실행

트리거동작
/audit 또는 /seo-geo 또는 /seo-geo-audit표준 감사: SEO + GEO, 루트 수준 + 주요 경로, 최대 ~30개 파일
/audit deep저장소에서 찾을 수 있는 모든 경로/페이지를 탐색합니다. 느리지만 더 철저합니다.
/audit seo클래식 SEO만 수행합니다.
/audit geoGEO만 수행합니다.
/audit fix감사 후 각 높은 심각도 발견 항목에 대해 구체적인 파일 수정을 제안합니다(각 수정 전에 확인 요청).
/audit report.md인라인 대신 파일에 보고서를 작성합니다.
자연어: "이 사이트 SEO 감사", "LLM 친화적인가요?", "구조화된 데이터 확인"위와 동일

중지/비활성화

세션 기반이 아닙니다. 일회성입니다. 그냥 호출하지 마세요.

실행 흐름

  1. 프레임워크 감지: package.json을 읽어 프레임워크를 감지합니다. next, astro, nuxt, svelte-kit, remix, gatsby, vite, vue를 찾거나 기본 HTML로 대체합니다. 프레임워크는 파일 글로브와 페이지 위치(pages/, app/, src/routes/, src/pages/, content/ 등)를 결정합니다.
  2. 콘텐츠 소스 발견: scripts/discover.sh <framework>를 통해 콘텐츠 소스를 발견합니다.
  3. 추출: scripts/extract-head.sh와 scripts/find-jsonld.sh를 통해 <head> 콘텐츠와 구조화된 데이터를 추출합니다. JSX/TSX의 경우 <Head>, <Helmet>, <Metadata> 또는 프레임워크별 패턴(Next.js metadata 내보내기, Astro 프론트매터, Nuxt useHead)을 찾습니다.
  4. 검사 실행: checks/seo.md와 checks/geo.md의 각 검사는 추출된 데이터에 대한 Claude 추론입니다. 정규식이 아닙니다. 이것이 핵심입니다. 기존 스캐너는 메타 태그의 존재 여부를 알려줄 수 있지만, 설명이 좋은지는 오직 Claude만이 알 수 있습니다.
  5. 점수 매기기: checks/scoring.md를 사용하여 카테고리별로 점수를 매깁니다. 카테고리별 문자 등급 + 숫자 점수.
  6. 보고서 렌더링: templates/report-card.md에서 보고서를 렌더링하고, 발견 항목에 file:line 인용, 심각도, 수정 제안을 채웁니다.
  7. fix 모드인 경우: 각 높은 심각도 발견 항목에 대해 표준 미리보기 후 적용 패턴을 사용하여 구체적인 수정을 제안합니다. 사용자 확인 없이 적용하지 않습니다.

스킬 간 연계

llms-txt 스킬이 설치된 경우, GEO 발견 항목에 "llms.txt 누락"이 포함되어 있으면 이를 실행할 것을 권장합니다. a11y-audit 스킬이 설치된 경우, 모든 보고서 하단에 이에 대한 링크를 추가합니다("이 감사는 SEO와 GEO를 다룹니다. 접근성은 /a11y-audit을 실행하세요.").

안전 가드레일

  • 기본적으로 읽기 전용입니다. fix 모드만 수정을 제안하며, 모든 수정은 확인이 필요합니다.
  • 라이브 사이트를 가져오지 마십시오. 소스 저장소를 감사합니다. 라이브 사이트 감사는 Lighthouse/PageSpeed 영역입니다. 다른 도구, 다른 관심사입니다.
  • 프레임워크 규칙을 가정하지 마십시오. 먼저 package.json을 확인하십시오. pages/ 폴더는 Next, Nuxt, Gatsby, vanilla에서 각각 다른 의미를 가집니다.
  • 명시적 사용자 요청 없이 정책 파일(robots.txt, noai 메타 태그, llms.txt)을 수정하지 마십시오. 이는 기술적 결정이 아닌 이해 관계자 결정입니다.
  • 생성/빌드 아티팩트를 건너뜁니다. dist/, build/, .next/, out/, .nuxt/는 감사하지 마십시오. 소스를 감사합니다.
  • 심층 감사에 제한을 둡니다. deep 모드에서도 --no-limit 확인 없이 약 500개 파일 이상 스캔을 거부합니다.

이 스킬의 파일

  • SKILL.md — 이 파일
  • checks/seo.md — 심각도가 포함된 클래식 SEO 체크리스트
  • checks/geo.md — GEO 체크리스트(새로운 검사 항목)
  • checks/scoring.md — 발견 항목을 카테고리별 0–100 점수로 매핑하는 방법
  • templates/report-card.md — 최종 보고서용 마크다운 템플릿
  • scripts/discover.sh — 프레임워크별 프론트엔드 소스 파일 찾기
  • scripts/extract-head.sh — HTML/JSX/MDX에서 <head> 콘텐츠 가져오기
  • scripts/find-jsonld.sh — <script type="application/ld+json"> 블록 추출
  • scripts/check-llms-txt.sh — 저장소에 llms.txt가 있는지 확인
  • examples/good-site-report.md — 잘 최적화된 사이트의 예시 보고서
  • examples/bad-site-report.md — 일반적인 그린필드 사이트의 예시 보고서

관련 스킬