프로젝트 소개

Repomix는 CLI 도구, 웹 앱, 브라우저 확장 프로그램으로, 전체 코드베이스를 대형 언어 모델을 위해 최적화된 단일 파일로 통합합니다. XML(기본값), Markdown, JSON, 일반 텍스트 등 여러 출력 형식을 지원하며, 파일 요약, 디렉토리 트리, 파일 내용을 구조화하여 AI의 이해를 돕습니다. 주요 기능은 다음과 같습니다: - 파일별 및 전체 저장소의 토큰 카운팅으로 LLM 컨텍스트 제한을 관리합니다. - .gitignore, .ignore, .repomixignore 파일을 존중하는 Git 인식 파일 선택. - Secretlint를 사용하여 알려진 자격 증명 패턴과 일치하는 파일을 감지하고 제외하는 보안 중심 출력. - Tree-sitter를 통한 코드 압축으로 주요 코드 요소(클래스, 함수, 인터페이스)를 추출하여 구조를 유지하면서 토큰 수를 줄입니다. - URL, GitHub 약어, 브랜치, 태그, 커밋 해시를 통한 원격 저장소 패킹 지원. - glob 패턴, stdin 파이핑, 포함/제외 필터를 통한 유연한 파일 선택. - 개발 컨텍스트를 위한 git 로그 및 diff의 선택적 포함. - 크기별 다중 파일 출력 분할, 주석 제거, 빈 줄 제거, base64 자르기, 줄 번호 접두사. - 격리된 실행을 위한 Docker 지원. 이 도구는 npx를 통해 설치 없이 실행할 수 있으며, npm/yarn/bun/Homebrew를 통해 전역 설치, repomix.com 웹사이트를 통해 사용, 또는 GitHub 저장소 페이지에 Repomix 버튼을 추가하는 Chrome 및 Firefox 브라우저 확장 프로그램을 통해 접근할 수 있습니다. 커뮤니티에서 유지 관리하는 VSCode 확장 프로그램인 Repomix Runner도 있습니다. 생성된 출력 파일은 AI 지향적인 구조와 사용법 설명을 시작으로, AI 모델이 패킹된 저장소 컨텍스트를 더 쉽게 이해할 수 있도록 합니다. 사용자는 이 파일을 AI 어시스턴트에게 전달하여 코드 리뷰, 문서 생성, 테스트 케이스 생성, 코드 품질 평가, 라이브러리 개요 등의 프롬프트를 사용할 수 있습니다.