Deluge is a torrent client with a wide range of available plugins, including those that can automatically remove torrents upon completion. Many of these plugins are designed to remove torrents only after they’ve reached a specified seed ratio. This makes sense, as removing torrents immediately would go against the core principle of peer-to-peer (P2P) sharing.
That said, there may be special situations where you need to remove torrents instantly. For that reason, I created a script called DelugeAntiSeeder.
The script only works with the Deluge daemon, so you’ll need to configure your Deluge client to use the daemon first. You can find instructions on how to do that here.
Once Deluge is set up as a thin client and you’re able to connect to the daemon, simply download and run the script. It will monitor the daemon for active downloads, and each time a download completes and enters the seeding state, the script will instantly remove the torrent from the client.

It might be a good idea to create a batch script to launch the main script. This way, you can create a desktop shortcut to make it easier to run. You can check out my post on how to do this here.
function Banner(){
Write-Host "`n###################################################" -ForegroundColor Cyan
Write-Host "## DelugeAntiSeeder by CHDuelund ##" -ForegroundColor Cyan
Write-Host "## Find more useful solutions at Duelund.tech! ##" -ForegroundColor Cyan
Write-Host "###################################################" -ForegroundColor Cyan
}
$ErrorActionPreference = "SilentlyContinue"
$DelugeConsolePath = "C:\Program Files\Deluge\deluge-console.exe"
while (0 -lt 1) {
$DelugeDProcess = Get-Process deluged
$DelugeProcess = Get-Process deluge
if ($DelugeDProcess -eq $null) {
cls
Banner
Write-Host "`nDeluge Daemon process not detected - waiting..." -ForegroundColor Yellow
}
if ($DelugeDProcess -ne $null) {
$GetDownloads = & $DelugeConsolePath info
$Downloading = $GetDownloads -match "\[D\]"
$Downloads = $Downloading.Count
cls
Banner
Write-Host "`nDeluge Daemon process detected - monitoring downloads..." -ForegroundColor Green
Write-Host "Current number of active downloads:" $Downloads -ForegroundColor Green
$GetID = $GetDownloads -match "\[S\]"
foreach ($Object in $GetID) {
$ID = $Object -split ' ' | select -Last 1
& $DelugeConsolePath del $ID --confirm
Write-Host "Torrent with ID $ID removed..." -ForegroundColor Yellow
}
}
Start-Sleep 3
}