Alpha release: upbrr is early software and the documentation is incomplete. It is intended for users who already understand Upload Assistant workflows, tracker rules, release naming, category/type selection, screenshots, descriptions, torrent clients, and post-upload checking.
Quality check every upload before submitting. Pay close attention to generated names, tracker category, tracker type, edition/source/resolution handling, description output, image links, and torrent-client injection settings. Do not rely on alpha automation as the final authority.
upbrr is an upload preparation app for private-tracker workflows.
- pick a release folder or file
- fetch and adjust metadata
- review tracker choices and dupe checks
- generate, select, and upload screenshots
- build tracker descriptions
- preview payloads before upload
- submit to trackers
- inject or save torrents for your client
The goal is a guided upload workspace, not a replacement for user judgement or tracker rules.
You should already know how your trackers expect uploads to be named and categorized. Before doing real uploads, run test paths, dry runs, or site checks where possible and compare upbrr output with what you would have submitted manually.
Have these ready:
- TMDB API key
- tracker API keys, cookies, or credentials required by the trackers you use
- image host credentials
- torrent client details or watch-folder paths
- existing Upload Assistant
config.py, if migrating - ffmpeg installed on your system for screenshot generation
-
On Windows, ffmpeg must be added to PATH (https://windowsloop.com/install-ffmpeg-windows-10/)
-
On Linux, install it from your distribution package manager
-
On macOS, install it with Homebrew:
brew install ffmpeg
The CLI can find ffmpeg when your shell PATH includes Homebrew. If you start the GUI from Finder, macOS may not pass your shell PATH to the app, so the GUI may not see Homebrew's ffmpeg. Start the GUI from Terminal, or make ffmpeg available in the environment used to launch the app.
-
By default, upbrr stores its database at:
%USERPROFILE%\.upbrr\db.sqlite
Otherwise, if the XDG_CONFIG_HOME environment variable is set (normally ~/.config), the path is:
$XDG_CONFIG_HOME/upbrr/db.sqlite
Cookie files live beside that database:
%USERPROFILE%\.upbrr\cookies
If you use a custom database path, put cookies in a cookies folder beside that database.
upbrr can import a legacy Upload Assistant config.py directly, or convert it to a YAML file first so you can inspect it.
Use this when you want the app to convert and save the config straight into the upbrr database:
.\upbrr.exe --import-config "C:\path\to\Upload-Assistant\data\config.py"The importer accepts:
.pylegacy Upload Assistant config files.yaml/.ymlupbrr config files.jsonupbrr config files
Read all warnings printed during import. Unknown legacy keys, unsupported tracker fields, or unsupported image-host settings may be skipped or adjusted.
You can also import config files from the Settings page in the GUI or web UI.
Config import does not set web browse roots. Browse access is stored separately in web-auth.json, beside the upbrr database, because it controls which host folders the browser-based web UI can read.
On a fresh web UI setup, after creating the admin account, upbrr asks you to choose one or more browse roots such as D:\Media, E:\Downloads, or to explicitly allow unrestricted host browsing. The web UI cannot browse release folders or import menu images until this is set.
If you import an existing Upload Assistant config, the imported tracker, client, and app settings do not change browse access. If web-auth.json already exists, its current browse roots or unrestricted-browse setting stay in effect. If no web-auth.json exists yet, you will still be asked to set browse access the first time you set up the web UI.
Use the included converter when you want a human-readable file to review before importing:
py .\scripts\convert_ua_config.py "C:\path\to\Upload-Assistant\data\config.py" -o ".\config.converted.yaml"Then inspect config.converted.yaml, fix any values that need manual attention, and import it:
.\upbrr.exe --import-config ".\config.converted.yaml"The converter maps known Upload Assistant defaults, tracker settings, and torrent-client settings onto the current upbrr config shape. Legacy-only settings that do not exist in upbrr are not carried over. Treat the converted file as a starting point, not proof that your setup is complete.
If your old Upload Assistant setup has tracker cookies under data\cookies, copy those files to upbrr's cookie folder:
%USERPROFILE%\.upbrr\cookies
Restart upbrr after copying cookies, then verify tracker login/session status before uploading.
Desktop GUI:
.\upbrr-gui.exeWeb UI:
.\upbrr.exe serveCLI upload preparation:
.\upbrr.exe "D:\releases\Some.Release.2026.1080p.BluRay"Useful CLI checks:
.\upbrr.exe --site-check --trackers BLU,OE "D:\releases\Some.Release"
.\upbrr.exe --dry-run --trackers PTP,HDB "D:\releases\Some.Release"
.\upbrr.exe --queue "D:\upload-queue" --limit-queue 5NOTE: with cli --debug works as expected. Additionally, the printed feedback (even with debug) can be adjusted with --log-level. See upbrr.exe --help
- Open upbrr.
- Go to Settings and confirm required API keys, trackers, image hosts, torrent clients, screenshots, and post-upload options.
- Select a release path.
- Fetch metadata.
- Review title, year, IDs, category, type, source, resolution, edition, season/episode, and generated release name.
- Run dupe checks and read tracker-specific warnings.
- Generate or import screenshots, then verify the selected images and image-host output.
- Build descriptions and inspect rendered tracker descriptions.
- Run a dry run or payload preview where available.
- Upload only after every tracker tab looks correct.
Before submitting, verify:
- release name matches tracker rules
- category and type are correct for each tracker
- movie vs TV handling is correct
- disc, remux, encode, WEB, HDTV, pack, season, and episode handling is correct
- source, resolution, edition, service, tag, and group are correct
- screenshots are valid, ordered, and hosted on allowed hosts
- description BBCode renders correctly
- torrent file contents and piece settings are expected
- torrent client category, tags, save path, and injection target are correct
- dupe results and rule warnings have been read
Alpha builds can have rough edges. When in doubt, stop before upload and check manually.
GPL-2.0-or-later. See LICENSE.