Skip to content
This repository was archived by the owner on Mar 12, 2026. It is now read-only.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QUI Automations

Automation rules for QUI (qBittorrent management UI).

These automations handle tagging, share limits, speed limits, and cleanup for a multi-tracker qBittorrent setup with cross-seed support.

Overview

20 automations organized in two groups:

Tagging & Maintenance (sort 1-8): Tag torrents by tracker name, detect stalled/errored downloads, mark non-hardlinked torrents, auto-resume incomplete torrents, delete unregistered, recheck missing files.

Category-Based Limits & Cleanup (sort 9-20): Paired limit + cleanup rules per category group. Each pair sets qBittorrent share limits (ratio/seed time) and a corresponding cleanup rule that deletes when thresholds are met.

Group Share Limits Delete Guard Delete Trigger
noHL-movies ratio=33, seed=15d seed>=11d ratio>=33 OR seed>=15d
noHL-tv ratio=3, seed=21d seed>=15d ratio>=3 OR seed>=21d
TorrentLeech (HL) ratio=-1, seed=365d, up=25MB/s -- seed>=365d
TorrentLeech (noHL) ratio=1.25, seed=12d, up=25MB/s seed>=12d ratio>=1.25 OR seed>=12d
noHL-catchall ratio=15, seed=35d seed>=20d ratio>=15 OR seed>=35d
noHL-xseed ratio=-1, seed=15d -- seed>=15d

Design Principles

  • All matching automations fire in sortOrder sequence. Last one wins for conflicting share limits.
  • Delete cannot combine with other actions (separate automation needed).
  • Share limits + speed limits can combine in one automation.
  • MyAnonamouse (MAM) excluded from noHL tag and catchall -- seeds forever.
  • Cross-seeds (.cross/.cross-seed categories) have dedicated rules. Hardlinked cross-seeds are naturally exempt; non-hardlinked get 15d seed then delete.
  • All deletes use deleteWithFilesPreserveCrossSeeds mode.
  • Resume failsafe (12d) prevents stuck torrents paused by share limits.

Files

File Description
automations.json Portable automation definitions (no instance-specific IDs)
automations-readable.txt Human-readable dump of all rules
export.sh Export from running QUI instance
import.sh Import into QUI (stops service, edits SQLite DB)
dump.py Pretty-print automations JSON

Usage

Export from your QUI instance

export QUI_API_KEY="your-key"
export QUI_URL="http://your-qui-host:7476"
./export.sh automations.json

View in readable format

cat automations.json | python3 dump.py

Import into QUI

Warning: This replaces all existing automations. Back up first.

export COMPOSE_DIR="/path/to/docker-compose-dir"
export QUI_DB="/path/to/qui.db"
./import.sh automations.json

Schema Reference

Actions

{"shareLimits": {"enabled": true, "ratioLimit": 33.0, "seedingTimeMinutes": 21600}}
{"speedLimits": {"enabled": true, "uploadKiB": 25390, "downloadKiB": 0}}
{"delete": {"enabled": true, "mode": "deleteWithFilesPreserveCrossSeeds"}}
{"tag": {"enabled": true, "tags": ["name"], "mode": "full"}}
{"resume": {"enabled": true}}
{"recheck": {"enabled": true}}

Conditions

{"operator": "AND", "conditions": [
  {"field": "FIELD", "operator": "OP", "value": "val"},
  {"operator": "OR", "conditions": [...]}
]}

Fields: HARDLINK_SCOPE, CATEGORY, TAGS, TRACKER, STATE, IS_UNREGISTERED, SEEDING_TIME (seconds), RATIO, PROGRESS, COMPLETION_ON, ADDED_ON_AGE

Operators: EQUAL, NOT_EQUAL, CONTAINS, NOT_CONTAINS, MATCHES_REGEX, GREATER_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN, LESS_THAN_OR_EQUAL

Delete Modes

  • delete -- Remove torrent only
  • deleteWithFiles -- Remove torrent and files
  • deleteWithFilesPreserveCrossSeeds -- Remove torrent and files, keep cross-seeded copies
  • deleteWithFilesIncludeCrossSeeds -- Remove torrent, files, and cross-seeded copies

Tag Modes

  • full -- Replace all tags
  • add -- Add tags
  • remove -- Remove tags

About

QUI automation rules for qBittorrent management with cross-seed support

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages