Runs (the normal way)
A run is a fixed pipeline that fires its steps in order. Enable the steps you want and give the run a schedule.
- Runs never overlap. If one comes due while another is running, it queues behind it.
- Each run records step detail — what each step did, and for library operations, what it would have changed.
Set up your first run
Runs already exist — you are enabling and scheduling one, not building it from nothing.
- Open Activity → Tasks and pick the run whose job matches what you want kept current. The names say what each one is for.
- Enable the steps you want. Every step is optional, and a run with a step switched off simply skips it. Leave off anything you have not configured yet: a step with nothing to do is wasted time in the pipeline, not an error.
- Give it a schedule. Intervals are expressed in the timezone from Settings → General, and changing that timezone needs a restart before the displayed next-run times and the actual firing times agree.
- Press Run now once, rather than waiting for the schedule. You want to see it work while you are looking at it.
- Read the step detail. Each step reports what it did. For library operations in dry run it reports what it would have changed, which is the thing to read before you turn dry run off.
- Check the next-run time. If it is not what you expected, the timezone is the usual reason.
If a step you wanted is greyed out in the task list below, a run already drives it. That is the system stopping it running twice, not a fault.
The runs, and what each is for
Six exist. You are picking one, not building one.
| Run | Covers | What it is for |
|---|---|---|
| Full Run | Everything | The whole pipeline for both libraries. The slow one — hours on a large library |
| TV Library | TV | The full pipeline for shows only |
| Movie Library | Movies | The same, for films |
| Artwork — All | TV + Movies | The artwork half of a library run, with no overlays: scrape, folder assets, then posters, backgrounds and title cards |
| Artwork — TV | TV | The same, for shows |
| Artwork — Movies | Movies | The same, for films (no title cards — movies have none) |
The Artwork runs are off, with no schedule, until you give them one. They exist to be pressed, for when you want fresh artwork without a full library pass or a redraw of every overlay. Turn one on and set its window to schedule it.
The steps, in the order they fire
A run fires its steps in this order, and skips any you have switched off. A step with nothing to do is a stated no-op, not an error.
| Step | What it does | Where |
|---|---|---|
| Library sync | Brings the *arrs and Plex into agreement about what exists | Full and Library runs |
| Collections | Builds and refreshes your collections | Full and Library runs |
| Delete empty | Removes collections that ended up with no members | Full and Library runs (switch off per run) |
| Metadata backup | Backs up each library's Plex metadata, the undo for the library operations after it | Full and Library runs |
| Library operations | Whatever you enabled on a library's Operations panel, including genre mapping. Always present, and a no-op until you switch something on there — there is no second toggle here | Full and Library runs |
| Scrape | Finds artwork from your sources — titlecards and posters, re-pulls enrolled sets, TPDb | Every run |
| Folder assets | Takes in artwork you dropped into the asset folders | Every run |
| Posters / Backgrounds / Titlecards | Draws artwork from your templates. Three separate steps; movie runs have no title cards | Every run |
| Overlays | Composites badges and overlays onto the finished art | Full and Library runs — never the Artwork runs |
| Empty Plex trash | Empties Plex's own trash | Full and Library runs (off until you switch it on per run) — see below |
| Kustos database backup | Backs up Kustos's own database | Full and Library runs (switch off per run) |
The Full Run and the Library runs carry the same maintenance steps. If you run both, switch the maintenance steps off on the Library runs so they happen once a day, not twice.
Empty Plex trash is OFF by default, and it is the one step that cannot be undone
Every other step is recoverable by running it again. This one is not, so it is the only step that ships switched off and has to be turned on deliberately.
What makes it serious rather than tidy: if your media drive was offline the last time Plex scanned, Plex has your whole library sitting in its trash. Emptying it removes those items from Plex permanently and takes watch history, ratings, play counts and hand-made collection membership with them. Kustos's nightly backup is of Kustos's database, so it restores none of that.
There is no confirmation, no dry run and no count, because it is Plex's own operation — and nothing in Kustos records which titles left.
The switch also fails closed: if the setting cannot be read, the step stays off rather than re-arming itself.