What problem does it solve? Dependency install scripts (preinstall, install, postinstall) execute arbitrary code with your shell, environment, CI tokens, and SSH keys before anyone reviews the package - the exact propagation path of supply-chain worms like Shai-Hulud. This Skill hardens npm and uv projects by denying install scripts by default and allowlisting only the few packages that genuinely build something. ## Core Features & Use Cases - Audit install-time code execution: Lists every package that runs code at install time by reading hasInstallScript flags from package-lock.json and running uv sync --no-build --dry-run, plus the project's own lifecycle scripts. - Deny by default everywhere: Commits ignore-scripts=true to .npmrc for npm and applies --no-build --no-install-project for uv, covering CI, Docker image builds, task runners, and deploy scripts. - Allowlist with reasons: Rebuilds only the packages that need it (e.g., esbuild, fsevents) via npm rebuild --ignore-scripts=false --foreground-scripts, with each allowlisted package documented alongside its reason. - Use Case: After a supply-chain attack hits the ecosystem, you run this Skill to lock down every install site in your repo, verify with a fresh npm ci --foreground-scripts that no unexpected scripts execute, and restore your project's own pretest/prepare hooks explicitly. ## Quick Start Audit this repository for dependency install scripts, then configure npm and uv to deny them by default with an allowlist for packages that build native binaries.