-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Welcome to the Inspectarr wiki — a torrent watchdog for *arr ecosystems.
Inspectarr watches your torrent client for bad downloads (wrong extensions, suspicious filenames, undersized files), grades how bad each catch is, then either records it, holds it for review, or blocklists it in Sonarr / Radarr / Lidarr and deletes it. Scans run on a poll interval, on webhooks from your *arr apps, or both.
It also scores your Prowlarr torrent indexers by health — response time, weighted failure rate, malicious content, grab success, and historical trend — then reorders them so your best indexers are searched first. Indexers that consistently score badly are disabled automatically and re-enabled after a cooldown.
Nothing changes until you change it. Every new default reproduces v1.6
behaviour exactly, so a straight docker compose pull behaves as before.
Three things are worth turning on deliberately:
| Set | To get |
|---|---|
remediation.remediate_at: CRITICAL |
Archives and filename matches held for review; executables still deleted on sight |
remediation.operating_mode: monitor |
Watch what your rules would do before letting them act |
prowlarr.ollama.enabled: true |
AI indexer scoring, once a model passes validation |
New tables are created on first run — there is no migration step. AI is off by default for fresh installs, but stays on if you already had it configured.
- Installation — Docker, bare Python, or systemd
- Configuration — connect your torrent client and *arr apps
- Rules — define what "bad" means for your library
- Detection & Actions — what happens when a rule fires
Start with dry_run: true and watch the log for a cycle or two before letting it act.
cp config.example.yaml config.yaml # edit with your URLs and credentials
docker compose up -dThen open http://your-server:8585 and start the scheduler from the dashboard.
Detection and remediation
- Configurable rules per category — extensions, filename patterns, minimum file size
- Severity grading, so an
.exeand a.rarare not treated identically - Quarantine — hold questionable catches for review instead of deleting them
- Blocklist + delete + retry, with a durable evidence trail for every catch
- Operating modes — Monitor, Quarantine or Automatic, as a single ceiling on how far Inspectarr may act
- Replacement tracking — after deleting a release, records whether the *arr found a good replacement, and from which indexer
Indexer intelligence
- Prowlarr health scoring with auto-reorder and auto-manage
- Optional AI scoring via Ollama — off by default, behind a single switch, with model validation before a model can be used
- Malicious-content attribution back to the serving indexer
Operations
- Multi-client: qBittorrent, Transmission, Deluge
- Webhook and polling scan triggers
- Notifications via Apprise — Pushover, Telegram, Discord, email, and 100+ services
-
JSON API and a
/api/healthendpoint for monitoring - Full web UI, mobile responsive, Docker-native, non-root
- CLI daemon mode for headless operation
| Page | Covers |
|---|---|
| Installation | Docker, bare Python, systemd, updating, persistent data |
| Configuration | Every config.yaml option |
| Rules | How detection rules work |
| Detection & Actions | The scan cycle and action sequence |
| Quarantine & Severity | Severity grading and holding catches for review |
| Prowlarr Indexer Scoring | Health formula, auto-manage, position model |
| AI & Model Validation | Ollama setup, model validation, AI scoring |
| Web UI | Page-by-page guide |
| Notifications | Apprise setup, digests, summaries |
| CLI Usage | Command-line flags and daemon mode |
| JSON API | Endpoints for monitoring and automation |
| Authentication | Protecting the web UI |
| FAQ | Common questions |
| Troubleshooting | When something isn't working |