Deluge
Custom agent skills
npx -y skills add haliphax-ai/skills --skill delugeAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.2 KB, as published. Nobody here has run it
Deluge Skill
Use this skill to manage torrents on a remote Deluge WebUI instance via JSON-RPC.
Requirements
- Python 3 with
requestsinstalled - A running Deluge WebUI
--urlis required; password must be set via theDELUGE_PASSWORDenvironment variable
Usage
uv run bin/deluge_client.py --url <URL> [--verify] COMMAND
Global Options
| Flag | Default | Description |
|---|---|---|
--url | (required) | Full Deluge WebUI URL (e.g. http://deluge.home.arpa:8112) |
--verify | off | Verify SSL certificate |
SSL is determined automatically from the URL scheme (http vs https).
Commands
list
List all torrents with state, progress, and size.
uv run bin/deluge_client.py --url URL list
add
Add a torrent by magnet URI or HTTP URL.
uv run bin/deluge_client.py --url URL add "magnet:?xt=urn:btih:..."
uv run bin/deluge_client.py --url URL add "https://example.com/file.torrent"
remove
Remove a torrent by ID (full or 8-char prefix). Use --with-data to also delete downloaded files.
uv run bin/deluge_client.py --url URL remove <TORRENT_ID>
uv run bin/deluge_client.py --url URL remove <TORRENT_ID> --with-data
pause
Pause a torrent by ID.
uv run bin/deluge_client.py --url URL pause <TORRENT_ID>
resume
Resume a paused torrent by ID.
uv run bin/deluge_client.py --url URL resume <TORRENT_ID>
call
Make a raw JSON-RPC call to the Deluge API. Params must be a JSON array string.
uv run bin/deluge_client.py --url URL call core.get_config_value '["download_location"]'
Notes
- SSL is determined by the URL scheme; certificate verification is off by default (accommodates self-signed certs)
- Torrent IDs shown by
listare truncated to 8 chars for display; pass the full ID toremove - Use
callfor any Deluge RPC method not covered by the built-in commands - Always inject the password via the
exectool'senvparameter — never inline it in the command string, as that will expose it in command logs and process listings:
{
"command": "uv run bin/deluge_client.py --url http://deluge.home.arpa:8112 list",
"env": { "DELUGE_PASSWORD": "<password>" }
}