qbt-hub

Manage qBittorrent downloads through the WebUI API using a Python CLI script.

1|Updated Jun 20, 2026
One-click install
npx skills add https://github.com/riipandi/minis-skills --skill qbt-hub-riipandi
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: qbt-hub
Source: https://github.com/riipandi/minis-skills/tree/main/qbt-hub
Command: npx skills add https://github.com/riipandi/minis-skills --skill qbt-hub-riipandi

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve? Managing a remote qBittorrent instance normally requires opening the WebUI in a browser and clicking through menus. This Skill lets you control torrents entirely from the command line or through an AI assistant, covering everything from adding magnets to tuning speed limits. ## Core Features & Use Cases - Full Task Lifecycle: Add torrents via magnet links, URLs, or local .torrent files, then pause, resume, recheck, rename, move, or delete them with fuzzy name matching. - Organization & Filtering: List, search, and sort tasks by status, tag, or category; assign tags and categories in bulk; view Top N tasks by size, speed, or ratio. - Bandwidth & RSS Control: Set per-task or global download/upload speed limits, toggle turtle mode, and manage RSS feeds with auto-download rules. - Use Case: Ask to add a magnet link tagged "4K" to the Movies category, then check global download speed and throttle a large task to 500 KB/s to free up bandwidth. ## Quick Start Ask the assistant to add this magnet link to qBittorrent with the category Movies and then show the current download status.

Frequently Asked Questions about qbt-hub

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a magnet link to qBittorrent from the command line?

Run python3 qbt.py add followed by the magnet link in quotes. You can append options like --savepath, --category, --tags, --paused, and --sequential to control where and how the download starts.

How do I set speed limits in qBittorrent via the WebUI API?

Use the limit command with a task keyword for per-task limits, such as python3 qbt.py limit ubuntu --dl 500 --ul 100 in KB/s. For global limits, use python3 qbt.py speedlimit --dl 2048 --ul 512, or --alt to toggle turtle mode.

Does this qBittorrent script require any Python packages?

No external packages are required. The script uses only Python standard library modules including urllib, http.cookiejar, json, and argparse, so it runs on any system with Python 3 installed.

How do I authenticate with the qBittorrent WebUI API?

Set the QBT_HOST, QBT_USER, and QBT_PASS environment variables once, and the script reuses them for every call. You can also override credentials per invocation with the --host, --user, and --pass flags.

Can I delete a qBittorrent task and its downloaded files together?

Yes, run python3 qbt.py delete with a name keyword and the --files flag to remove both the task and its local data. The command always lists matched tasks and prompts for confirmation before deleting.

Why does the rename command fail when multiple torrents match?

Rename requires exactly one match to avoid renaming the wrong task. When several tasks match your keyword, the script lists them and asks you to retry with a more specific keyword.