maintenance-routine
Running a Maintenance Routine
Overview
A routine is one mechanical maintenance pass, run on a schedule, that either opens a small reviewable PR or reports that it found nothing. Seven archetypes ship with this skill. Each has its own qualification test; all of them share one contract.
Routines exist because the maintenance nobody has time for — dead code, tests that cannot fail, layering drift, duplicates that drift apart — is exactly the work that survives being done mechanically, provided the qualification bar is high enough that a "no findings" result is normal and acceptable.
This skill supplies the method. The repo supplies the parameters. Scan scope, forbidden paths, verification commands and the framework traps that defeat static search are all repo-specific and live in .claude/routines.md in the target repo. That split is deliberate: the routine's own tuning loop is "a PR gets rejected → adjust the routine" and the adjustable half has to be inside the repo the routine can open PRs against.
Scope: one archetype per invocation. Running several is the scheduler's job — stagger them so they do not compete for the same runner.
Invocation
/cadence:maintenance-routine <archetype>
<archetype> is one of the seven below. From a scheduler, the whole prompt can be that one line.