Repomix
yamadashy/repomixRepomix — инструмент для упаковки кодовой базы в единый файл, оптимизированный для LLM. Поддерживает подсчёт токенов, сжатие кода через Tree-sitter, фильтрацию через .gitignore и проверку безопасности через Secretlint. Работает как CLI, MCP-сервер и онлайн-сервис.
Подключение
claude mcp add repomix -- npx -y repomix --mcpREADME
Warp — терминал для работы с несколькими AI-агентами
Доступен для MacOS, Linux и Windows
📦 Repomix — мощный инструмент, который упаковывает весь ваш репозиторий в единый файл, удобный для AI.
Идеально подходит для передачи кодовой базы в большие языковые модели (LLM) или другие AI-инструменты: Claude, ChatGPT, DeepSeek, Perplexity, Gemini, Gemma, Llama, Grok и другие.
Пожалуйста, рассмотрите возможность спонсирования.
🏆 Номинация на премию 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
Или установите глобально для постоянного использования:
# Установка через 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-сервера:
{
"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-серверу.
Упаковка удалённого репозитория 🌐
# Используя 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 🐳
# Текущая директория
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 в корне проекта для настройки:
{
"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
