AI 지식 / / 2025. 5. 28. 06:48

Repomix 소개 및 사용법

Repomix 소개 및 사용법

출처: https://repomix.com/


개요

Repomix는 코드베이스 전체를 AI가 이해하기 쉬운 포맷(XML, 마크다운, 플레인 텍스트 등)으로 패킹해주는 오픈소스 도구입니다. 대규모 코드베이스를 LLM(예: ChatGPT, Claude, Gemini 등)에 입력하거나, 코드 리뷰·리팩터링·분석을 자동화할 때 유용하게 활용할 수 있습니다.


주요 특징

  • AI 최적화: 코드, 디렉터리 구조, 파일 요약 등을 AI가 쉽게 파싱할 수 있도록 변환
  • .gitignore 자동 인식: 불필요한 파일 자동 제외
  • 보안 강화: Secretlint 내장, 민감 정보 포함 방지
  • 토큰 카운팅: 각 파일 및 전체 리포지토리의 토큰 수 제공
  • 다양한 출력 포맷: XML(기본), 마크다운, 플레인 텍스트 등
  • 커스텀 설정: repomix.config.json 파일로 출력 옵션, 무시 패턴 등 세부 설정 가능

설치 및 사용법

1. 빠른 실행

설치 없이 바로 실행:

npx repomix

글로벌 설치:

npm install -g repomix
# 또는
yarn global add repomix
# 또는 (macOS/Linux)
brew install repomix

설치 후 프로젝트 디렉터리에서 실행:

repomix

2. 주요 옵션

  • 특정 디렉터리만 패킹:
    repomix path/to/directory
  • 특정 파일/디렉터리만 포함:
    repomix --include "src/**/*.ts,**/*.md"
  • 특정 파일/디렉터리 제외:
    repomix --ignore "**/*.log,tmp/"
  • 원격 저장소 패킹:
    npx repomix --remote https://github.com/사용자/저장소

3. 출력 포맷 지정

  • XML(기본):
    repomix --style xml
  • 마크다운:
    repomix --style markdown
  • 플레인 텍스트:
    repomix --style plain

4. 고급 설정

repomix.config.json 예시:

{
  "output": {
    "style": "markdown",
    "filePath": "custom-output.md",
    "removeComments": true,
    "showLineNumbers": true,
    "topFilesLength": 10
  },
  "ignore": {
    "customPatterns": ["*.test.ts", "docs/**"]
  }
}

5. Docker로 실행

docker run -v .:/app -it --rm ghcr.io/yamadashy/repomix

활용 예시

  • 코드베이스 전체를 하나의 파일로 패킹 후, LLM에게 전달해 리팩터링, 리뷰, 문서화 등 다양한 작업을 요청할 수 있습니다.
  • Claude의 Artifacts 등과 연동해 여러 파일을 동시에 생성·수정하는 것도 가능합니다.

참고 및 출처

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유