Параметры командной строки
Базовые опции
-v, --version: Показать информацию о версии и выйти
Опции ввода/вывода CLI
| Опция | Описание |
|---|---|
--verbose | Включить подробное отладочное логирование (показывает обработку файлов, количество токенов и детали конфигурации) |
--quiet | Подавить весь вывод в консоль, кроме ошибок (полезно для скриптов) |
--stdout | Записать упакованный вывод напрямую в stdout вместо файла (подавляет всё логирование) |
--stdin | Читать пути файлов из stdin, по одному на строку (указанные файлы обрабатываются напрямую) |
--copy | Копировать сгенерированный вывод в системный буфер обмена после обработки |
--token-count-tree [threshold] | Показать дерево файлов с количеством токенов; опциональный порог для показа только файлов с ≥N токенов (например, --token-count-tree 100) |
--top-files-len <number> | Количество самых больших файлов для показа в сводке (по умолчанию: 5) |
Опции вывода Repomix
| Опция | Описание |
|---|---|
-o, --output <file> | Путь к выходному файлу (по умолчанию: repomix-output.xml, используйте "-" для stdout) |
--style <style> | Формат вывода: xml, markdown, json или plain (по умолчанию: xml) |
--parsable-style | Экранировать специальные символы для обеспечения валидного XML/Markdown (необходимо, когда вывод содержит код, нарушающий форматирование) |
--compress | Извлечь существенную структуру кода (классы, функции, интерфейсы) с помощью парсинга Tree-sitter |
--output-show-line-numbers | Добавить номер строки к каждой строке в выводе |
--no-file-summary | Исключить раздел сводки файлов из вывода |
--no-directory-structure | Исключить визуализацию дерева директорий из вывода |
--no-files | Сгенерировать только метаданные без содержимого файлов (полезно для анализа репозитория) |
--remove-comments | Удалить все комментарии кода перед упаковкой |
--remove-empty-lines | Удалить пустые строки из всех файлов |
--truncate-base64 | Обрезать длинные строки base64-данных для уменьшения размера вывода |
--header-text <text> | Пользовательский текст для включения в начало вывода |
--instruction-file-path <path> | Путь к файлу с пользовательскими инструкциями для включения в вывод |
--split-output <size> | Разделить вывод на несколько нумерованных файлов (например, repomix-output.1.xml); размер вроде 500kb, 2mb или 1.5mb |
--include-empty-directories | Включить папки без файлов в структуру директорий |
--include-full-directory-structure | Показать полное дерево репозитория в разделе Directory Structure, даже при использовании паттернов --include |
--no-git-sort-by-changes | Не сортировать файлы по частоте изменений в git (по умолчанию: наиболее изменяемые файлы первыми) |
--include-diffs | Добавить раздел git diff, показывающий изменения рабочего дерева и staged-изменения |
--include-logs | Добавить историю git-коммитов с сообщениями и изменёнными файлами |
--include-logs-count <count> | Количество последних коммитов для включения с --include-logs (по умолчанию: 50) |
Опции выбора файлов
| Опция | Описание |
|---|---|
--include <patterns> | Включить только файлы, соответствующие этим glob-паттернам (через запятую, например, "src/**/*.js,*.md") |
-i, --ignore <patterns> | Дополнительные паттерны для исключения (через запятую, например, "*.test.js,docs/**") |
--no-gitignore | Не использовать правила .gitignore для фильтрации файлов |
--no-dot-ignore | Не использовать правила .ignore для фильтрации файлов |
--no-default-patterns | Не применять встроенные паттерны игнорирования (node_modules, .git, директории сборки и т.д.) |
Опции удалённого репозитория
| Опция | Описание |
|---|---|
--remote <url> | Клонировать и упаковать удалённый репозиторий (GitHub URL или формат user/repo) |
--remote-branch <name> | Конкретная ветка, тег или коммит (по умолчанию: ветка по умолчанию репозитория) |
--remote-trust-config | Доверять и загружать файлы конфигурации из удалённых репозиториев (по умолчанию отключено из соображений безопасности) |
Опции конфигурации
| Опция | Описание |
|---|---|
-c, --config <path> | Использовать пользовательский файл конфигурации вместо repomix.config.json |
--init | Создать новый файл repomix.config.json со значениями по умолчанию |
--global | С --init создать конфигурацию в домашней директории вместо текущей |
Опции безопасности
--no-security-check: Пропустить сканирование на конфиденциальные данные, такие как API-ключи и пароли (используйте с осторожностью; может раскрыть секреты в выводе)
Опции подсчёта токенов
--token-count-encoding <encoding>: Модель токенизатора для подсчёта: o200k_base (GPT-4o), cl100k_base (GPT-3.5/4) и т.д. (по умолчанию: o200k_base)
Опции MCP
--mcp: Запустить как сервер Model Context Protocol для интеграции с ИИ-инструментами
Опции генерации Agent Skills
| Опция | Описание |
|---|---|
--skill-generate [name] | Сгенерировать вывод в формате Claude Agent Skills в директорию .claude/skills/<name>/ (имя генерируется автоматически, если не указано) |
--skill-output <path> | Указать путь директории вывода навыков напрямую (пропускает запрос расположения) |
-f, --force | Пропустить все запросы подтверждения (например: перезапись директории навыков) |
Связанные ресурсы
- Конфигурация - Настройка опций в файле конфигурации вместо CLI-флагов
- Форматы вывода - Подробности о форматах XML, Markdown, JSON и простого текста
- Сжатие кода - Как
--compressработает с Tree-sitter - Безопасность - Что отключает
--no-security-check
Примеры
bash
# Базовое использование
repomix
# Пользовательский выходной файл и формат
repomix -o my-output.md --style markdown
repomix -o my-output.json --style json
# Вывод в stdout
repomix --stdout > custom-output.txt
# Отправка вывода в stdout, затем передача в другую команду (например, simonw/llm)
repomix --stdout | llm "Please explain what this code does."
# Пользовательский вывод со сжатием
repomix --compress
# Обработка конкретных файлов по паттернам
repomix --include "src/**/*.ts,*.md" --ignore "*.test.js,docs/**"
# Удалённый репозиторий с веткой
repomix --remote https://github.com/user/repo/tree/main
# Удалённый репозиторий с коммитом
repomix --remote https://github.com/user/repo/commit/836abcd7335137228ad77feb28655d85712680f1
# Удалённый репозиторий с сокращением
repomix --remote user/repo
# Использование stdin для списка файлов
find src -name "*.ts" -type f | repomix --stdin
git ls-files "*.js" | repomix --stdin
echo -e "src/index.ts\nsrc/utils.ts" | repomix --stdin
# Интеграция с Git
repomix --include-diffs # Включить git diff для незакоммиченных изменений
repomix --include-logs # Включить git-логи (по умолчанию последние 50 коммитов)
repomix --include-logs --include-logs-count 10 # Включить последние 10 коммитов
repomix --include-diffs --include-logs # Включить и diff, и логи
# Анализ количества токенов
repomix --token-count-tree
repomix --token-count-tree 1000 # Показывать только файлы/директории с 1000+ токенов