Community코딩 & 개발github.com

aelena/llms-txt

Claude Code 스킬 — 저장소를 위한 큐레이팅된 llms.txt 인덱스 파일을 생성합니다.

llms-txt란 무엇인가요?

이 스킬은 저장소 루트에 고품질의 `llms.txt` 파일을 생성하여, LLM(대규모 언어 모델)이 프로젝트를 더 잘 이해할 수 있도록 돕습니다. `llms.txt`는 프로젝트의 요약, 핵심 문서, 보조 리소스를 우선순위별로 정리한 'LLM을 위한 목차' 역할을 하며, LLM의 컨텍스트 윈도우에 최적화되어 있습니다. Claude Code 환경에서 `/llms-txt` 명령어나 자연어 프롬프트로 실행할 수 있으며, `full` 옵션으로 모든 문서를 연결한 `llms-full.txt`를 생성하거나 `validate` 옵션으로 기존 파일을 검증할 수 있습니다. 이 스킬은 보안을 위해 비밀 정보를 자동으로 제외하고, `.gitignore`를 존중하며, 기존 `llms.txt`를 덮어쓰기 전에 사용자 확인을 요청합니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add aelena/llms-txt

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

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

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

문서

llms-txt은(는) 무엇을 하나요?

저장소 루트에 llmstxt.org 제안 표준을 따르는 고품질의 llms.txt 파일을 생성합니다. 이 파일은 프로젝트의 큐레이팅된 기계 판독 가능 인덱스, 즉 "LLM을 위한 목차"이며, 모델의 컨텍스트 윈도우에 쾌적하게 들어맞습니다.

존재 이유

LLM이 저장소를 맹목적으로 읽으면 무엇이 중요한지 추측해야 합니다. llms.txt는 프로젝트가 LLM에게 알려줍니다: 여기 프로젝트가 있고, 여기에 요약이 있으며, 여기에 우선순위별 표준 문서가 있고, 컨텍스트가 부족하면 건너뛸 수 있는 보조 리소스가 있습니다. 모델 시대의 robots.txt와 같습니다. 단, 모델이 더 잘 작동하도록 돕는 점이 다릅니다.

호출

트리거동작
/llms-txt 또는 /llms-txt-gen저장소 루트에 llms.txt 생성
/llms-txt fullllms-full.txt도 생성 (전체 문서 연결, 잘림 없음)
/llms-txt validate기존 llms.txt를 스펙에 대해 검증
/llms-txt update기존 llms.txt를 현재 저장소 상태로 새로고침, 수동 편집 내용 유지
자연어: "llms.txt 만들어줘", "이 저장소를 LLM 친화적으로 만들어줘", "llm 인덱스 생성해줘"동일

중지/비활성화

사실상 해당 없음 — 이는 일회성 생성기이며 세션 모드가 아닙니다. 그냥 호출하지 마세요.

실행 흐름

  1. 후보 발견. scripts/discover.sh를 실행하여 다음을 열거합니다:

    • 프로젝트 메타데이터 파일: README*, package.json, pyproject.toml, Cargo.toml, Gemfile, go.mod 등
    • 루트 수준 마크다운: README.md, CHANGELOG.md, CONTRIBUTING.md, LICENSE, ARCHITECTURE.md 등
    • docs/ 디렉토리 내용 (.md, .mdx, .rst)
    • 깊이 2~3의 기타 마크다운 (node_modules, .git, vendor 제외)
  2. 읽고 종합. README와 기본 메타데이터 파일을 읽습니다. 추출:

    • 프로젝트 이름 (package.json:name, pyproject.toml:[project].name, 또는 README H1에서)
    • 한 문장 요약 (README의 첫 번째 문단 또는 package.json:description에서)
    • 더 긴 컨텍스트 (README 소개에서 1~2 문단, 제목 없음)
  3. 후보 분류를 H2 섹션으로. 합리적 기본값:

    • Docs — 주요 사용자 대상 문서
    • Examples — 샘플 코드, 튜토리얼, 빠른 시작 가이드
    • API Reference — 생성되거나 직접 작성된 API 문서
    • Optional — 보조 리소스 (CHANGELOG, 기여 가이드, RFC, 내부 노트)

    ## Optional 섹션은 스펙에서 특별한 의미를 가집니다: 컨텍스트 예산이 부족한 LLM은 이것을 건너뛰어야 합니다. 필수가 아닌 모든 것을 여기에 넣으세요.

  4. llms.txt 생성 format.md의 형식을 따릅니다. 엄격한 구조:

    # Project Name
    
    > 한 문장 요약을 인용 블록 안에.
    
    제목 없는 1~2 문단 컨텍스트 (선택 사항).
    
    ## Section
    - [Title](상대-또는-절대-URL): 한 줄 설명
    - [Title](url): 설명
    
    ## Optional
    - [Title](url): 설명
    
  5. 검증 scripts/validate.sh로 수행. 오류가 있으면 수정 후 재검증.

  6. 미리보기 생성된 파일을 사용자에게 보여준 후 작성. 확인 요청.

  7. 쓰기 ./llms.txt에. 파일이 이미 존재하면 차이점을 비교하고 덮어쓰기 전에 확인 요청 — 사용자가 추가한 수동 섹션 유지.

  8. 선택 사항 llms-full.txt (full 인수가 주어진 경우에만): 연결된 모든 문서의 전체 내용을 하나의 파일에 이어붙이고, 그 사이에 # File: <path> 헤더를 넣습니다. 이것은 "모든 것을 제공"하는 변형입니다.

안전 가드레일

  • 미리보기와 확인 없이 기존 llms.txt를 덮어쓰지 마십시오. 수동 큐레이션이 포함될 수 있습니다.
  • 생성된 파일에 비밀 정보를 포함하지 마십시오. .env*, *.pem, *key*, credentials*, *.secret과 일치하는 후보 파일을 건너뜁니다. 발견 시 사용자에게 경고.
  • 비공개 경로에 링크하지 마십시오 (.git/, node_modules/, vendor/, target/, build/, dist/ 내부의 모든 것).
  • URL을 지어내지 마십시오. 모든 링크는 저장소의 실제 파일(상대 경로) 또는 README에 명시적으로 있는 URL을 가리켜야 합니다. 프로젝트 홈페이지를 추측하지 마십시오.
  • .gitignore를 존중하십시오. 후보 파일이 git에서 무시되면 인덱싱하지 마십시오.

생성된 파일의 스타일 규칙

  • H1은 프로젝트 이름이며, 다른 것은 없습니다. 슬로건도 태그라인도 아닙니다.
  • 인용 블록 요약은 한 문장이며, 현재 시제, 사실 기반입니다. 마케팅 언어 사용 금지.
  • 링크 항목 설명은 한 줄, ~12단어 이내. LLM에게 이 파일이 왜 중요한지 알려주고, 그 내용을 그대로 말하지 마십시오.
  • 섹션 내 순서 중요 — 가장 중요한 것을 먼저. 모델이 중간에 읽기를 중단할 수 있습니다.
  • 이모지 없음, 장식적 마크다운 없음, 중첩 목록 없음. 형식은 의도적으로 평평합니다.
  • 저장소 내 파일에는 상대 경로를 선호하고 (docs/getting-started.md), 외부 리소스에만 절대 URL을 사용합니다.

이 스킬의 파일

  • SKILL.md — 이 파일
  • format.md — llmstxt.org 형식 참조를 요약한 것
  • scripts/discover.sh — 인덱싱할 후보 파일 열거
  • scripts/validate.sh — 생성된 llms.txt를 기본 스펙에 대해 린트

관련 스킬