Skip to content

Basic Usage

Quick Start

Pack your entire repository:

bash
repomix

Common Use Cases

Pack Specific Directories

bash
repomix path/to/directory

Include Specific Files

Use glob patterns:

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

Exclude Files

bash
repomix --ignore "**/*.log,tmp/"

Remote Repositories

bash
# Using GitHub URL
repomix --remote https://github.com/user/repo

# Using shorthand
repomix --remote user/repo

# Specific branch/tag/commit
repomix --remote user/repo --remote-branch main
repomix --remote user/repo --remote-branch 935b695

File List Input (stdin)

Pass file paths via stdin for ultimate flexibility:

bash
# Using find command
find src -name "*.ts" -type f | repomix --stdin

# Using git to get tracked files
git ls-files "*.ts" | repomix --stdin

# Using ripgrep (rg) to find files
rg --files --type ts | repomix --stdin

# Using grep to find files containing specific content
grep -l "TODO" **/*.ts | repomix --stdin

# Using ripgrep to find files with specific content
rg -l "TODO|FIXME" --type ts | repomix --stdin

# Using sharkdp/fd to find files
fd -e ts | repomix --stdin

# Using fzf to select from all files
fzf -m | repomix --stdin

# Interactive file selection with fzf
find . -name "*.ts" -type f | fzf -m | repomix --stdin

# Using ls with glob patterns
ls src/**/*.ts | repomix --stdin

# From a file containing file paths
cat file-list.txt | repomix --stdin

# Direct input with echo
echo -e "src/index.ts\nsrc/utils.ts" | repomix --stdin

The --stdin option allows you to pipe a list of file paths to Repomix, giving you ultimate flexibility in selecting which files to pack.

NOTE

When using --stdin, file paths can be relative or absolute, and Repomix will automatically handle path resolution and deduplication.

Code Compression

bash
repomix --compress

# You can also use it with remote repositories:
repomix --remote yamadashy/repomix --compress

Output Formats

XML (Default)

bash
repomix --style xml

Markdown

bash
repomix --style markdown

Plain Text

bash
repomix --style plain

Additional Options

Remove Comments

bash
repomix --remove-comments

Show Line Numbers

bash
repomix --output-show-line-numbers

Copy to Clipboard

bash
repomix --copy

Disable Security Check

bash
repomix --no-security-check

Configuration

Initialize configuration file:

bash
repomix --init

See Configuration Guide for detailed options.

Released under the MIT License.