For each <name>/ dir in $target that has no matching skills/<name>/, remove it. Catches stale installs after skill rename/retire (motivating case: using-synology-ops just removed but install dir lingered until manual rm). Design choices: - Combined flag (install + prune in one run), not standalone mode - Prune always scans full target — does NOT respect -Names/positional filter, since stale-cleanup is a global concern - Prints `pruning: <name>` per removal, no confirmation prompt - Default off — flag must be passed explicitly [skip-tdd: wrapper] — shell glue wrapping Remove-Item / rm -rf with a set-difference; verified via smoke-test on disposable target dir (fake stale dirs created, full install + prune run via env-overridden CLAUDE_SKILLS_DIR, post-state confirmed: stale dirs removed, valid skills installed, using-synology-ops absent as expected). Closes 1/3 of [install-ps1] acceptance (the --prune flag). The remaining doc .wiki/concepts/install-cross-platform.md is deferred to a follow-up commit.
2.0 KiB
2.0 KiB