Usage

  mkbrr create /path/to/content [flags]
Create torrents in two modes:
  • Single file/directory mode (default)
  • Batch mode using a YAML config file
Common settings can be saved and reused with presets.By default, when a tracker URL is provided, the output filename will be prefixed with the tracker domain (e.g. “example_filename.torrent”). Use --skip-prefix to disable this behavior.

Arguments

  • /path/to/content: (Required unless using -b) The path to the source file or directory.

Flags

Input & Output

--tracker, -t
string
Tracker URL. Required unless using a preset with trackers defined.
--output, -o
string
Optional. Set output path (default: <n>.torrent or <tracker-prefix>_<n>.torrent).
--skip-prefix
boolean
default:false
Don’t add tracker domain prefix to output filename.

Advanced Input (Batch & Presets)

--batch, -b
string
Batch config file (YAML). Cannot be used with a path argument.
For creating multiple torrents in one go. See the Batch Mode documentation for details.
--preset, -P
string
Use preset from config.
For reusing common settings across torrents. See the Presets documentation for details.
--preset-file
string
Preset config file (default ~/.config/mkbrr/presets.yaml).
Set custom path to presets.yaml. See the Presets documentation for details.

Content Selection

--exclude
array
Exclude files matching these patterns (e.g., "*.nfo,*.jpg" or --exclude "*.nfo" --exclude "*.jpg").
Use this to filter out unwanted files like NFOs, samples, or extras that shouldn’t be in the torrent. See the filtering guide for detailed pattern rules and examples.
--include
array
Include only files matching these patterns (e.g., "*.mkv,*.mp4" or --include "*.mkv" --include "*.mp4").
Using include patterns activates whitelist mode. See the filtering guide for detailed pattern rules and examples.

Torrent Internals

--private, -p
boolean
default:true
Make torrent private.
Private flag is enabled by default for tracker compliance. Only disable if you’re creating a public torrent.
--piece-length, -l
number
Set piece length to 2^n bytes (16-27, automatic if not specified).
Let mkbrr automatically calculate the piece size unless you have specific requirements. The automatic calculation optimizes for both performance and compatibility.
--max-piece-length, -m
number
Limit maximum automatically calculated piece length to 2^n bytes (16-27).
--entropy, -e
boolean
default:false
Randomize the torrent’s info hash by adding or updating a unique, random entropy key in the info dictionary before hashing.
Cross-seeding is the practice of seeding the same content on multiple trackers. Using the entropy flag helps avoid conflicts between trackers.

Seeding & Metadata

--web-seed, -w
array
Specify web seed URLs. Can be used multiple times.
Web seeds provide an HTTP fallback source for the torrent content, improving availability.
--source, -s
string
Specify the source string.
Some trackers require or recommend specific source tags. Check your tracker’s rules.
--comment, -c
string
Specify a comment.
--no-date, -d
boolean
default:false
Omit the creation date from the torrent metadata.
--no-creator
boolean
default:false
Omit the creator string from the torrent metadata.

Execution & Output Control

--workers
number
Manually specify the number of concurrent goroutines used for hashing.
Experimenting with different worker values might yield better performance than the default automatic setting.
--verbose, -v
boolean
default:false
Be verbose.
--quiet
boolean
default:false
Enable quiet mode, printing only the final torrent file path upon success. Useful for scripts.