Skip to content

Параметры командной строки

Базовые опции

  • -v, --version: Показать информацию о версии и выйти

Опции ввода/вывода CLI

  • --verbose: Включить подробное отладочное логирование (показывает обработку файлов, количество токенов и детали конфигурации)
  • --quiet: Подавить весь вывод в консоль, кроме ошибок (полезно для скриптов)
  • --stdout: Записать упакованный вывод напрямую в stdout вместо файла (подавляет всё логирование)
  • --stdin: Читать пути файлов из stdin, по одному на строку (указанные файлы обрабатываются напрямую)
  • --copy: Копировать сгенерированный вывод в системный буфер обмена после обработки
  • --token-count-tree [threshold]: Показать дерево файлов с количеством токенов; опциональный порог для показа только файлов с ≥N токенов (например, --token-count-tree 100)
  • --top-files-len <number>: Количество самых больших файлов для показа в сводке (по умолчанию: 5, например, --top-files-len 20)

Опции вывода 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>: Путь к файлу с пользовательскими инструкциями для включения в вывод
  • --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>: Конкретная ветка, тег или коммит (по умолчанию: ветка по умолчанию репозитория)

Опции конфигурации

  • -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 для интеграции с ИИ-инструментами

Примеры

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+ токенов

Released under the MIT License.