Skip to content

FAQ и устранение неполадок

Эта страница помогает выбрать подходящий workflow Repomix, уменьшить большой вывод и подготовить контекст кодовой базы для AI-ассистентов.

Частые вопросы

Для чего нужен Repomix?

Repomix упаковывает репозиторий в один AI-friendly файл. Его можно передать ChatGPT, Claude, Gemini или другому ассистенту для код-ревью, поиска багов, рефакторинга, документации и онбординга.

Работает ли Repomix с приватными репозиториями?

Да. Запустите Repomix локально в checkout, к которому у вашей машины уже есть доступ:

bash
repomix

Проверьте сгенерированный файл перед отправкой во внешний AI-сервис.

Можно ли обработать публичный GitHub-репозиторий без клонирования?

Да. Используйте --remote с короткой формой или полным URL:

bash
npx repomix --remote yamadashy/repomix
npx repomix --remote https://github.com/yamadashy/repomix

Какой формат вывода выбрать?

Начните с XML по умолчанию. Markdown удобен для читаемых диалогов, JSON для автоматизации, plain text для максимальной совместимости.

bash
repomix --style markdown
repomix --style json

См. Форматы вывода.

Снижение расхода токенов

Сгенерированный файл слишком большой. Что делать?

Сузьте контекст:

bash
repomix --include "src/**/*.ts,docs/**/*.md"
repomix --ignore "**/*.test.ts,dist/**"
repomix --compress
repomix --remove-comments

Для больших репозиториев сочетайте include/ignore-паттерны со сжатием кода.

Что делает --compress?

--compress сохраняет важную структуру, включая imports, exports, классы, функции и интерфейсы, но удаляет многие детали реализации. Это полезно для архитектурного анализа.

Безопасность и приватность

CLI загружает мой код?

Repomix CLI работает локально и записывает файл вывода на вашу машину. У сайта и браузерного расширения другие сценарии; см. Политику конфиденциальности.

Как Repomix избегает включения секретов?

Repomix использует проверки на основе Secretlint. Считайте это дополнительной защитой и всегда проверяйте вывод вручную.

Устранение неполадок

Почему в выводе отсутствуют файлы?

Repomix учитывает .gitignore, стандартные ignore-правила и пользовательские паттерны. Проверьте repomix.config.json, --ignore и правила git.

Как сделать вывод воспроизводимым для команды?

Создайте и закоммитьте общую конфигурацию:

bash
repomix --init

Дополнительные частые вопросы

Работает ли Repomix с C#, Python, Java, Go, Rust и другими языками?

Да. Repomix читает файлы проекта и форматирует их для AI-инструментов, поэтому может упаковывать репозитории на любом языке программирования. Для CLI требуется Node.js 20 или новее. Некоторые расширенные функции, например сжатие кода на основе Tree-sitter, зависят от поддержки парсера для конкретного языка.

Можно ли использовать Repomix с Hermes Agent, OpenClaw или другими MCP-совместимыми агентами?

Да. Repomix можно запустить как MCP-сервер:

bash
npx -y repomix --mcp

Для Hermes Agent добавьте Repomix как stdio MCP-сервер в ~/.hermes/config.yaml:

yaml
mcp_servers:
  repomix:
    command: "npx"
    args: ["-y", "repomix", "--mcp"]

Для OpenClaw и других MCP-совместимых агентов используйте тот же command и args там, где агент позволяет настроить внешний stdio MCP-сервер. Если ассистент поддерживает Agent Skills, можно также использовать Repomix Explorer Skill.

Как помочь AI-ассистенту понять новую библиотеку или фреймворк с помощью Repomix?

Упакуйте репозиторий библиотеки или её документацию и передайте вывод ассистенту как справочный материал:

bash
npx repomix --remote owner/repo
npx repomix --remote owner/repo --include "docs/**,src/**"

Для повторного использования можно создать переиспользуемый каталог Agent Skills:

bash
npx repomix --remote owner/repo --skill-generate library-reference

Как исключить CSS, тесты, build output или другие шумные файлы?

Для разовых команд используйте --ignore:

bash
repomix --ignore "**/*.css,**/*.test.ts,dist/**,coverage/**"

Если нужно оставить только определённые пути исходников или документации, используйте --include:

bash
repomix --include "src/**/*.ts,docs/**/*.md"

Есть ли ограничение на размер репозитория?

У CLI нет фиксированного ограничения размера репозитория, но очень большие репозитории могут упираться в память, размер файлов или лимиты загрузки и контекста AI-инструмента. Для больших проектов начинайте с точечных include-паттернов, проверяйте файлы с большим числом токенов и при необходимости делите вывод:

bash
repomix --token-count-tree 1000
repomix --split-output 1mb

Почему --include не включает файлы из node_modules, директорий сборки или игнорируемых путей?

--include сужает набор файлов, которые Repomix пытается упаковать, но правила ignore всё равно применяются. Файлы могут исключаться через .gitignore, .ignore, .repomixignore, встроенные стандартные паттерны или repomix.config.json. В сложных случаях могут помочь --no-gitignore или --no-default-patterns, но используйте их осторожно: они могут добавить зависимости, артефакты сборки и другие шумные файлы.

Связанные ресурсы

Released under the MIT License.