The mkbrr modify command allows you to update metadata in existing .torrent files without needing access to the original content files. This is useful for mass-updating trackers, source tags, comments, or other metadata.
By default, the original torrent files are preserved. New, modified files are created with a prefix based on the tracker domain (e.g., tracker-domain_original-name.torrent). You can customize the output filename or directory.
The modify command strips all non-standard metadata during the process to ensure clean output.

Arguments

torrent files...
string[]
required
One or more paths to the .torrent files you want to modify. Glob patterns (like *.torrent) can be used if your shell supports them.

Flags

Input & Output

--tracker, -t
string
Set a new tracker URL (replaces existing).
--output-dir
string
Output directory for modified files.
--output, -o
string
Custom output filename (without extension).
When modifying multiple torrents, using --output with a fixed filename will cause subsequent files to overwrite the previous ones. Use --output-dir instead for batch modifications to preserve all modified files with unique names.

Advanced Input (Presets)

--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.

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.
--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.
If omitted, the creation date is updated to the current time during modification.
--no-creator
boolean
default:false
Omit the creator string from the torrent metadata.

Execution & Output Control

--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.
--dry-run, -n
boolean
default:false
Show what would be modified without making changes.

Examples

Update the tracker for a single torrent:
mkbrr modify original.torrent --tracker https://new-tracker.com/announce
Outputs: new-tracker_original.torrent
Make multiple torrents public:
mkbrr modify *.torrent --private=false
Outputs: modified_file1.torrent, modified_file2.torrent, etc.
mkbrr modify [torrent files...] [flags]
By default, the original torrent files are preserved. New, modified files are created with a prefix based on the tracker domain (e.g., tracker-domain_original-name.torrent). You can customize the output filename or directory.
The modify command strips all non-standard metadata during the process to ensure clean output.