pinset clean installs
Delete tool installations no longer used by projects, global choices or managed Python environments.
View source on GitHub ↗When to use
Use after upgrades to reclaim old-version space. Deselect unwanted tools with remove; other projects' references still protect installations.
Examples
pinset clean installs node@22.0.0 --plan
pinset clean installs node@22.0.0
Result: only matching, owned and unreferenced installs are deleted. No removable objects can still mean success.
Behavior
No network or configuration/lock changes. Protects registered projects, globals, managed venvs and recovery. External objects, missing ownership proof and uncertain references remain. Omit filters to inspect all managed installs.
Parameters, exit codes and common errors
| Parameter | Meaning |
|---|---|
[tool@exact...] | Exact versions only; floating selectors such as latest and lts are rejected. |
--plan | Preview only. |
Success exits 0; failure exits 1. Use exact versions for PINSET_EXACT_REQUIRED, inspect paths for PINSET_CLEAN_UNSAFE. Do not bypass protection by deleting referenced directories manually.