Claude Info
Dev-инструменты

Repomix

yamadashy/repomix

Repomix — инструмент для упаковки кодовой базы в единый файл, оптимизированный для LLM. Поддерживает подсчёт токенов, сжатие кода через Tree-sitter, фильтрацию через .gitignore и проверку безопасности через Secretlint. Работает как CLI, MCP-сервер и онлайн-сервис.

Подключение

terminal
bash
claude mcp add repomix -- npx -y repomix --mcp

README

Warp — терминал для работы с несколькими AI-агентами

Доступен для MacOS, Linux и Windows

npm npm Actions Status codecov Sponsors Discord

📦 Repomix — мощный инструмент, который упаковывает весь ваш репозиторий в единый файл, удобный для AI.
Идеально подходит для передачи кодовой базы в большие языковые модели (LLM) или другие AI-инструменты: Claude, ChatGPT, DeepSeek, Perplexity, Gemini, Gemma, Llama, Grok и другие.

Пожалуйста, рассмотрите возможность спонсирования.

Sponsor

Sponsors

🏆 Номинация на премию Open Source Awards

Мы польщены! Repomix номинирован в категории Powered by AI на JSNation Open Source Awards 2025.

Это стало возможным благодаря всем, кто использует и поддерживает Repomix. Спасибо!

🎉 Новинки: сайт Repomix и сообщество в Discord!

  • Попробуйте Repomix прямо в браузере на repomix.com
  • Присоединяйтесь к нашему серверу Discord для поддержки и обсуждений

Будем рады вас видеть!

🌟 Возможности

  • Оптимизация для AI: форматирует кодовую базу так, чтобы AI мог легко её понять и обработать.
  • Подсчёт токенов: показывает количество токенов для каждого файла и всего репозитория — полезно при работе с контекстными ограничениями LLM.
  • Простота использования: достаточно одной команды, чтобы упаковать весь репозиторий.
  • Гибкая настройка: легко задавайте, что включать или исключать.
  • Поддержка Git: автоматически учитывает файлы .gitignore, .ignore и .repomixignore.
  • Безопасность: интегрирован Secretlint для надёжной проверки и предотвращения попадания чувствительных данных.
  • Сжатие кода: флаг --compress использует Tree-sitter для извлечения ключевых элементов кода, сокращая количество токенов при сохранении структуры.

🚀 Быстрый старт

Использование CLI-инструмента >_

Вы можете мгновенно попробовать Repomix в директории вашего проекта без установки:

npx repomix@latest

Или установите глобально для постоянного использования:

bash
# Установка через npm
npm install -g repomix

# Через yarn
yarn global add repomix

# Через bun
bun add -g repomix

# Через Homebrew (macOS/Linux)
brew install repomix

# Затем запустите в любой директории проекта
repomix

Вот и всё! Repomix создаст файл repomix-output.xml в текущей директории, содержащий весь репозиторий в формате, удобном для AI.

Затем отправьте этот файл AI-ассистенту с запросом, например:

Этот файл содержит все файлы репозитория, объединённые в один. Я хочу провести рефакторинг кода, поэтому сначала ознакомься с ним.

Использование в качестве MCP-сервера 🤖

Repomix поддерживает протокол Model Context Protocol (MCP), позволяя AI-ассистентам напрямую упаковывать репозитории.

Настройка Repomix как MCP-сервера

Добавьте Repomix в конфигурацию MCP-сервера:

json
{
  "mcpServers": {
    "repomix": {
      "command": "npx",
      "args": ["-y", "repomix", "--mcp"]
    }
  }
}

После настройки ваш AI-ассистент сможет напрямую использовать возможности Repomix.

Доступные MCP-инструменты

После настройки Repomix предоставляет следующие MCP-инструменты:

  • pack_codebase: упаковывает локальную директорию кода в AI-совместимый формат
  • pack_remote_repository: загружает и упаковывает репозитории с GitHub или других Git-хостингов
  • read_repomix_output: читает содержимое файла вывода Repomix с поддержкой постраничного просмотра для больших файлов
  • file_system_read_file: читает содержимое одного файла
  • file_system_read_directory: выводит содержимое директории

Подробнее об использовании Repomix в качестве MCP-сервера см. в документации по MCP-серверу.

Упаковка удалённого репозитория 🌐

bash
# Используя npx
npx repomix --remote https://github.com/yamadashy/repomix

# Используя сокращённый формат GitHub
npx repomix --remote yamadashy/repomix

# Конкретная ветка, тег или коммит
npx repomix --remote yamadashy/repomix --remote-branch main
npx repomix --remote yamadashy/repomix --remote-branch 935b ing

Использование в Docker 🐳

bash
# Текущая директория
docker run -v .:/app -it --rm ghcr.io/yamadashy/repomix

# Конкретная директория
docker run -v .:/app -it --rm ghcr.io/yamadashy/repomix path/to/directory

# Удалённый репозиторий
docker run -v ./output:/app -it --rm ghcr.io/yamadashy/repomix --remote https://github.com/yamadashy/repomix

📖 Документация

Полная документация доступна на repomix.com:

⚙️ Конфигурация

Создайте файл repomix.config.json в корне проекта для настройки:

json
{
  "output": {
    "filePath": "repomix-output.xml",
    "style": "xml",
    "compress": false,
    "headerText": "Пользовательский заголовок",
    "instructionFilePath": "repomix-instruction.md",
    "fileSummary": true,
    "directoryStructure": true,
    "removeComments": false,
    "removeEmptyLines": false,
    "showLineNumbers": false,
    "copyToClipboard": false,
    "topFilesLength": 5,
    "includeEmptyDirectories": false
  },
  "include": ["**/*"],
  "ignore": {
    "useGitignore": true,
    "useDefaultPatterns": true,
    "customPatterns": ["additional-folder", "**/*.log"]
  },
  "security": {
    "enableSecurityCheck": true
  }
}

🔒 Проверка безопасности

Repomix включает встроенную проверку безопасности с помощью Secretlint для обнаружения потенциально чувствительной информации в файлах перед их упаковкой. Это помогает предотвратить случайное раскрытие API-ключей, паролей и других секретных данных.

🤝 Участие в разработке

Вклад в развитие проекта приветствуется! Не стесняйтесь открывать issues или отправлять pull requests на GitHub.

📜 Лицензия

MIT

Похожие MCP-серверы

Repomix — MCP-сервер от yamadashy — claude-info.ru