clonarr
ghcr.io/prophetse7en/clonarr:latest
https://github.com/prophetse7en/clonarr/pkgs/container/clonarr
latest
Stable release (recommended)
dev
Development builds — may contain bugs or breaking changes
bridge
sh
false
https://discordapp.com/channels/492590071455940612/1495685561552207913
https://github.com/prophetse7en/clonarr
TRaSH Guides sync tool for Radarr and Sonarr with a built-in web UI. Browse, customize, and sync Custom Formats, Quality Profiles, Scores, and Quality Sizes from TRaSH Guides to your Radarr and Sonarr instances. Features profile builder, scoring sandbox, auto-sync, and import/export support.
MediaApp:Other
http://[IP]:[PORT:6060]
https://raw.githubusercontent.com/prophetse7en/unraid-templates/main/clonarr.xml
https://raw.githubusercontent.com/prophetse7en/clonarr/main/ui/static/icons/clonarr.png
2026-05-05
### 2026-05-05
- v2.5.4: **Light theme + a polish-and-fixes pass.** New light theme follows your OS by default (switch in Settings → Display, or pick System). Quality items in a profile are always reorderable now (drag-drop no longer requires Edit Groups first; drop on a row still merges). Profile Detail "Customize" toggle replaces the per-section Hide-overrides toggles — one global on/off, off shows clean defaults view. Tooltips switched to a custom system that flips around viewport edges (no more cut-off messages) and positions correctly with non-100% browser zoom. "Additional Custom Formats" picker (renamed from "Extra") gets card-design parity with Groups, grouping by source and orange-highlight after Add. Sync log entries show how many overrides + score-overrides were applied per sync. TRaSH pull operations log a per-app diff summary. Fixed: TRUSTED_PROXIES with hostnames in docker-compose — service names that didn't resolve from inside the Clonarr container now work (closes the docker-compose half of #40); Instance Test no longer rejects DNS hostnames with mixed routable/non-routable IPs (Tailscale/dual-stack); Quality "phantom overrides" no longer get persisted just from opening the Edit Quality modal; Naming page example labels no longer leak "Movie:" into Sonarr's Episode/Series/Season sections; dark theme legibility — muted labels easier to read in the Profile editor and sync history. Big credit to @ColeSpringer for PR #41 (UI modularization), PR #42 (light theme), and PR #43 (DNS hostname fix).
### 2026-05-01
- v2.5.3: **Scoring Sandbox overhaul + hostname-friendly TRUSTED_PROXIES + a batch of sync fixes.** Sandbox now sorts by quality first (Quality Trumps Score per TRaSH), groups same-tier qualities as equals, and flags releases whose quality isn't in your profile. New Score Sets feature: save a chosen group of releases under a name and switch between them for repeat testing. TRUSTED_PROXIES accepts container hostnames (e.g. `proxy`) and re-resolves every minute (closes #40). Sync rules auto-disable when Arr returns a clear configuration error so failures don't silently retry-loop; transient errors leave the rule alone. Sync All now applies your current rule overrides instead of stale ones from sync history. Apply doesn't overwrite the saved rule when sync fails. Min Score validation in the profile editor with a live tooltip showing the highest reachable score; Min Upgrade Score auto-corrects to 1. Clearer error messages when Arr rejects a sync. Debug log redesigned with operation-tagged trace lines.
### 2026-04-30
- v2.5.1: **Reverse-proxy subpath hosting, login brute-force protection, name-collision protection on custom formats.** New: set `URL_BASE=/clonarr` on the container to host Clonarr at `https://your-domain.com/clonarr` behind SWAG/Traefik/NPM (thanks @ColeSpringer, PR #39). Login rate-limit: 5 failed attempts from the same IP within a minute → blocked with HTTP 429 + Retry-After (same on setup + change-password); failed attempts log the source IP for fail2ban. 16+ char passphrases skip the class rule (`correct horse battery staple` is allowed). Bug fixes: custom CFs can no longer share a name with a TRaSH CF (was causing flip-flopping scores at sync time — Save now refuses the collision); "Include in Rename" survives import-from-instance; Save button no longer freezes after a collision error. The v2.4 `!`-prefix workaround is gone — existing `!`-prefixed customs keep their names, nothing renames automatically.
- v2.5.0: **Cleaner Settings page + Recyclarr YAML export paused + new sort field on CF Group Builder.** Removed a few advanced toggles that only TRaSH-Guides contributors really needed; most users won't notice. Recyclarr YAML export tab is hidden while we verify the output against current Recyclarr docs — TRaSH JSON export still works for backup or sharing, and Recyclarr YAML import (paste, .yml upload, include files) is unchanged. CF Group Builder gets an optional "Group" number for sort order; lower number sorts higher up, leave empty for default placement. Once the upstream guide adopts the same field, the order updates automatically on next pull.
### 2026-04-29
- v2.4.0: **NTFY + Apprise notifications, Pause Auto-Sync, several bug fixes.** New: ntfy.sh + self-hosted ntfy + Apprise API support; Pause Auto-Sync toggle on TRaSH-sync tab to skip scheduled/restart syncs while keeping manual ones. Fixed: case-sensitive CF name matching (no more wrong-CF-gets-the-score with mixed-case duplicates), Hide Overrides actually hides instead of silently dropping your overrides on save, tooltip clipping on small viewports, Custom CFs in own picker group, quality-group member order matching Arr UI. Custom formats now saved with leading `!` so they can never collide with TRaSH names — existing customs migrate automatically on startup. **First sync after updating may show extra "reset to 0" + "added !X" notifications** while old names get replaced; click Pause Auto-Sync first if you want to avoid the notification burst. Closes #31.
- v2.3.0: **Notifications rebuilt under the hood.** Existing Discord/Gotify/Pushover setups keep working — nothing to reconfigure. Better error messages when a test fails, Gotify tokens move from URL to request header, sensitive fields stay masked in more places. Sets up NTFY and Apprise to land in v2.4 next. Big credit to @ColeSpringer (PR #32) for the entire refactor.
### 2026-04-28
- v2.2.10: **Bug fix — Recyclarr-imported profiles now show their CFs in the Profile Builder.** Previously the Builder showed 0 CFs and clicking Save Changes wiped them from disk. Existing imports are restored automatically when re-opened.
- v2.2.9: **Bug fix — Edit a sync rule, Dry Run / Cancel, then Save & Sync again now stays on the same Arr profile** (was flipping to "Create new" on the second click).
- v2.2.8: **Bug fix — turning off a custom format group now sticks.** v2.2.6/v2.2.7 overrode your toggle-off choices and re-added groups on the next sync. v2.2.8 respects what you've ticked or unticked. Sorry for the rough 24 hours.
- v2.2.7: **Follow-up to v2.2.6.** v2.2.6 brought the missing custom formats back to your profiles, but their scores were still being reset to 0 — so the CFs were there but inactive (not blocking or boosting anything). v2.2.7 finishes the job: scores are now correct after a sync. If you upgraded to v2.2.6 and noticed scores still looked off, Force Update to v2.2.7 and run a sync.
- v2.2.6: **Hotfix for TRaSH 2026-04-27 regression.** If you noticed custom formats disappearing from your profiles overnight on April 27 (BR-DISK, LQ, LQ (Release Title), Extras, AV1, HD/UHD Streaming Boost, Generated Dynamic HDR, Upscaled) — this fixes it. TRaSH reorganised how those CFs are linked to profiles, and Clonarr didn't follow the new structure, so they got dropped from your profiles on the next sync. v2.2.6 teaches Clonarr to follow the new structure (same way Recyclarr does). Affected profiles: WEB-1080p, WEB-2160p, SQP-3 (Audio), SQP-4 (MA Hybrid), and the German variants. Force Update, run a sync, and the missing CFs come back with their correct scores.
### 2026-04-27
- v2.2.5: **Bug fixes + UX bundle.** Soft-tombstone for stale auto-sync rules — when a profile is deleted in Arr, the rule + its history are now marked orphaned (preserved, not silently deleted). New **Restore** action recreates the profile in Arr from the saved sync intent (CFs, scores, quality structure, settings); collision check + rename prompt if a profile with that name already exists. **Sync-history delete** now removes every matching entry (was: only one of many → row reappeared, looked broken). **Bulk-cleanup toast spam** coalesces into a single toast per instance (no more 25-stack with its own scrollbar). **Unused CFs scan reworked** — three filter tabs (All unmanaged / Rename-tagged only / Managed by Clonarr with profile-usage chips), two delete options (safe-only vs all-incl-rename-tags), confirmation modal explains the rename-tag implication when your File Naming format uses `{Custom Formats}`. The previous auto-skip of rename-flagged CFs is gone — they're shown with a yellow badge, deletable on user choice.
- v2.2.4: **Bundle of fixes and UX improvements.** CF group activation now respects TRaSH's per-CF `default` flag — toggling a group like `[Unwanted]` pre-checks only the CFs marked default, the rest are visible and individually toggleable. New Maintenance → Cleanup → "Unused Custom Formats" action finds CFs in your Arr instance not referenced by any Clonarr sync rule. CF editor preserves field values across Type changes. Cross-Arr CF JSON import warns about value mismatches (Radarr WEB-DL value would mean BlurayRaw in Sonarr). Sync result banner shows Settings + Quality change counts. Group sorting unified across Profile Builder / Custom Formats / Profile Detail — alphabetical, with SQP groups at the bottom and Custom last.
### 2026-04-26
- v2.2.3: **Bug fixes** — Scoring Sandbox batch limit raised from 15 to 200 titles so a Prowlarr search worth of variants can be scored at once (the handler still calls Arr Parse sequentially — no indexer hammering, just a longer-running request). Frontend shows a parsing-progress toast on batches >30. Custom Format *Import → From JSON* now honors `includeCustomFormatWhenRenaming` (was silently dropped, so the rename tickbox came in unticked even when the JSON had it set). TRaSH-specific fields (`trash_id`, `trash_scores`) remain not imported — documented in the import modal.
- v2.2.2: **UX patch** — covers two data-loss-prone code paths and quality-of-life fixes. Custom format filenames now preserve `!` prefix (`!FLUX` and `FLUX` no longer collide). Auto-sync toggle in the sync modal no longer rewrites the rule's saved customizations from a fresh form. "Showing X Custom Formats" counter on the Custom Formats tab now shows the real total (was always 0). Sync modal defaults to "Create new profile" when opened from the profile list (was silently auto-flipping to "Update existing"). Confirmation dialog now appears before overwriting an existing sync rule via the Update-existing flow — the Edit pencil flow still goes through directly.
- v2.2.1: **Bug fix release** — addresses two file-collision classes in clonarr's local storage that could cause silent data loss. **Cross-Arr profile collision** (PR #28, credit @ColeSpringer): same-name profiles on Radarr and Sonarr no longer overwrite each other on disk; filenames now include `-radarr`/`-sonarr` suffix. Affects users who imported or built profiles via Profile Builder/Import. **Migration-time collision protection**: when two existing files would migrate to the same target filename, the alphabetically-first wins and the rest stay at original filenames with log warning — covers profiles, custom CFs, and cf-groups (one common safety for all FileStore-backed data). Some symptoms (hex-named ghost CFs, sync history truncation) still under investigation; file a GitHub issue if you see them. Data already overwritten cannot be auto-recovered — see CHANGELOG for recovery options.
### 2026-04-24
- v2.2.0: **CF Group Builder redesign** — new Selected CFs card at the top is a live preview of the group being built, with drag-and-drop reorder (replaces ▲/▼ arrows), per-CF required / default flags, and remove. Custom Formats list becomes pure browse + add, packing into 2+ columns on wide viewports. Edit any upstream TRaSH cf-group into a new local copy with one click. Hash lock toggle in the edit banner (🔒/🔓) — default locked so typo fixes don't invalidate the trash_id; unlock if you want a new identity. **Fix** — Settings → TRaSH Guides → Pull interval "Disabled" now honored on container startup (was only respected by the scheduled-pull loop). **Responsive topnav** + icon relocation (credit @ColeSpringer via PR #26).
### 2026-04-23
- v2.1.1: **UX patch** — imported profiles can now be opened in the Profile Builder for editing (was blocked as read-only). TRaSH-imported profiles render their Required CFs in the Builder (was empty). Profile Builder save buttons clarified: `Save Profile` / `Save Changes` instead of `Create Profile` / `Update Profile`.
### 2026-04-20
- v2.1.0: **Architecture refactor** (backend reorganized into `internal/api/`, `internal/core/`, `internal/arr/`, `internal/auth/`, `internal/netsec/`, `internal/utils/` — no user-facing behavior change, credit @ColeSpringer). Panic recovery via `utils.SafeGo` on every goroutine.
- v2.0.8: **Notification Agents** — Discord, Gotify, and Pushover are now independent agents in an Instances-style list. Multi-agent per type (two Discord channels, etc.), optional Name field, per-agent test button. Auto-migration from v2.0.x flat config on first startup. Credit @xFlawless11x via PR #15. Plus T70 panic-recovery wrapper on the session-persistence goroutine.
- v2.0.7: Fix — Golden Rule and other exclusive CF groups can now be disabled at the group level (matches behavior of HDR Formats / Optional Movie Versions). Previously the group toggle was hidden for exclusive pick-one groups, which was stricter than TRaSH's own schema.
### 2026-04-19
- v2.0.6: **Breaking change** — authentication now required, first boot redirects to /setup. Login + password (bcrypt), API key for Homepage/scripts, CSRF, SSRF guards on Discord/Pushover, security headers, env-var lock for Trusted Networks/Proxies. Cookie names renamed clonarr_*. Full changelog in GitHub repo.
- v2.0.5: Fix Extra CFs showing hex IDs instead of names in Overridden Scores panel after Save & Sync.
### 2026-04-18
- v2.0.4: Quality size null fix, Sync All oscillation fix, CF editor dropdown fixes, Keep List redesign, score override UX improvements, per-webhook Discord test.
### 2026-04-17
- v2.0.1: Fix dry-run Apply button showing wrong instance when multiple instances configured.
- v2.0.0: Compare redesign, Sync History and Rollback, Profile Builder overhaul, Settings sidebar, Scoring Sandbox improvements, browser navigation, Sonarr language fix, Profile Detail redesign.
### 2026-04-12
- v1.9.0: Clone profile, inline rename, dry-run preview, keep list fix, auto-sync fixes.
### 2026-04-09
- v1.8.6: Quality Group editor, multi-arch builds, memory leak fix, sync diff fixes.
Radarr or Sonarr instance with API access. See project page for setup instructions.
6060
/mnt/user/appdata/clonarr
99
100