Repomix

저장소 전체를 AI 가 읽을 파일 하나로 묶는 도구

npx repomix

저장소를 AI 가 읽기 좋은 파일 하나로 묶는 도구입니다. 무시 규칙과 토큰 집계, 비밀값 검사까지 함께 돌려 붙여넣을 분량을 가늠하게 해 줍니다. MCP 서버 모드도 있어 에이전트가 직접 호출할 수 있습니다.

판단

이럴 때 씁니다

  • 저장소 전체를 모델에 한 번에 읽히고 싶을 때
  • 붙여넣기 전에 토큰 분량을 미리 가늠해야 할 때
  • 비밀값이 섞여 들어가지 않았는지 확인하고 싶을 때
  • 에이전트가 MCP 로 코드베이스를 직접 묶어 읽게 하고 싶을 때

이럴 땐 쓰지 마세요

  • 저장소가 너무 커서 어차피 한 번에 넣을 수 없을 때. 이 경우 검색형 도구가 맞습니다
  • 에이전트가 이미 파일 탐색 도구를 잘 쓰고 있을 때
  • 특정 파일 몇 개만 필요한 작업일 때

차별점

  • 토큰 집계를 함께 내어 넣을 분량을 판단하게 해 줍니다.
  • 비밀값 검사를 기본 흐름에 포함합니다.
  • MCP 서버 모드와 샌드박스 제한을 제공합니다.
  • npx, 전역 설치, Homebrew, Docker 로 설치 경로가 넓습니다.

워크플로

  1. 01프로젝트 폴더에서 npx repomix 를 실행합니다.
  2. 02출력 파일의 토큰 집계를 보고 넣을 범위를 조정합니다.
  3. 03무시 규칙으로 빌드 산출물과 대용량 파일을 걷어냅니다.
  4. 04에이전트가 직접 쓰게 하려면 MCP 모드로 띄우고 sandbox 플래그로 작업 폴더를 묶습니다.

주요 명령

명령설명
npx repomix현재 폴더를 하나의 출력 파일로 묶습니다.
npm install -g repomix전역 설치합니다.
repomix --mcp --sandboxMCP 서버로 띄우고 작업 폴더 밖 접근을 막습니다.
docker run -v .:/app -it --rm ghcr.io/yamadashy/repomix설치 없이 컨테이너로 실행합니다.

함정

설치 전에 확인하세요

  • MCP 모드는 기본적으로 호스트 사용자가 읽을 수 있는 모든 경로를 읽습니다. 노출된 환경이라면 --sandbox 를 반드시 켜야 합니다.
  • 비밀값 검사는 보조 수단입니다. 검사를 통과했다고 안전하다고 단정하면 안 됩니다.
  • 출력 파일이 커지면 그대로 붙여넣기 어려우니 무시 규칙을 먼저 다듬는 편이 좋습니다.

비교

코드베이스를 통째로 넘기는 접근은 컨텍스트가 넉넉할 때 잘 듣습니다. 반대로 저장소가 크면 검색과 인덱스를 쓰는 도구가 맞습니다. Repomix 의 값어치는 묶기 자체보다 토큰 집계와 비밀값 검사를 같은 명령에 붙여 둔 데 있습니다.

최근 변경

v1.18.0 에서 MCP 서버에 샌드박스 모드를 넣었습니다. --sandbox 를 켜면 모든 경로가 작업 루트 기준 상대 경로로 해석되고 절대 경로와 상위 참조, 윈도 드라이브 표기가 거부됩니다. 결과와 오류 메시지에서 호스트 경로가 드러나지 않도록 가상화하며 읽기 전용 도구만 등록합니다.