← ClaudeAtlas

update-machinelisted

Update and clean package managers across macOS (Homebrew, npm globals, pipx, uv) and Linux (APT, npm globals, pipx, uv), locally or across the fleet via SSH. Use on 'update packages', 'upgrade the machine', 'clean up homebrew/npm', 'update everything', 'package cleanup'.
eprouveze/claude-skills · ★ 0 · AI & Automation · score 74
Install: claude install-skill eprouveze/claude-skills
# /update-machine — Machine Package Update & Upgrade Updates package managers on macOS (Homebrew, npm globals, pipx, uv) or Linux (APT, npm globals, pipx, uv), either locally or dispatched across the fleet via SSH. The shape is always the same: survey → safe upgrades → trap guards → report → confirm disruptive casks / reboots. On **macOS**, it targets **Homebrew** (formulae + casks), **npm** globals, and optional **pipx** / **uv** tools. On **Linux** (Debian/Ubuntu), it targets **APT** (`apt-get upgrade`), **npm** globals, and optional **pipx** / **uv** tools. Every step that touches optional managers is guarded with `command -v`. ## Principles - **Survey before mutating.** Always list what's outdated first and show it. - **Parallelize independent managers.** brew / npm / pipx+uv don't depend on each other — run them as concurrent background jobs. - **Run long upgrades in the background** (`run_in_background: true`), never blocking foreground. - **Never auto-update session-critical casks.** The terminal running this session and the VPN must be confirmed by the user — updating them mid-session restarts the terminal or drops connectivity. - **Verify, don't assume.** After upgrades, re-check `outdated` and the known traps. - **Check headroom before downloading gigabytes.** A full disk doesn't fail loudly — it *corrupts* installs mid-write (see Step 0). Never start upgrades on a near-full volume. ## Step 0 — Preflight: disk space (gate, do this first) `brew upgrade`