frozen-install

Replaces resolving install commands with frozen lockfile-based installs in CI and builds.

4|Updated Jan 29, 2026
One-click install
npx skills add https://github.com/staticaland/skills --skill frozen-install-staticaland
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: frozen-install
Source: https://github.com/staticaland/skills/tree/main/plugins/dependencies/skills/frozen-install
Command: npx skills add https://github.com/staticaland/skills --skill frozen-install-staticaland

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Commands like npm install and uv sync silently resolve new dependency versions even when a lockfile exists, causing non-reproducible builds and lockfile drift across CI pipelines, Docker images, and deploy scripts. ## Core Features & Use Cases - Install Site Inventory: Greps the repository for every npm and uv install command across CI workflows, Dockerfiles, Makefiles, task runners, and docs, then classifies each as reproducing or resolving. - Frozen Command Rewrites: Converts resolving commands to frozen equivalents such as npm ci, uv sync --locked, and uv pip sync --require-hashes, with a vocabulary table for pnpm, Yarn, Cargo, Bundler, and more. - Drift Verification: Deliberately manufactures a manifest-lockfile mismatch to prove each rewritten command fails loudly, then confirms it passes on the committed state. - Use Case: A team notices their CI builds occasionally pull different dependency versions than local development. Use this Skill to audit every install site, commit a current lockfile, and rewrite all reproducing sites to frozen commands. ## Quick Start Audit this repository for resolving install commands and replace them with frozen lockfile-based installs in CI, Docker builds, and scripts.

Frequently Asked Questions about frozen-install

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I make npm installs reproducible in CI?▼

Replace `npm install` with `npm ci` in CI workflows, which installs exactly what package-lock.json specifies and fails if the lockfile disagrees with package.json. Ensure package-lock.json is committed and current before rewriting.

What is the difference between uv sync --locked and --frozen?▼

The `--locked` flag asserts uv.lock is current with pyproject.toml and errors if resolution would change it, while `--frozen` skips that check and installs the lockfile as-is. Use `--locked` wherever the manifest is present and `--frozen` only in Docker layers lacking project source.

Does npm install respect package-lock.json?▼

No, `npm install` resolves version ranges from package.json and can update the lockfile even when one exists. Only `npm ci` is frozen, installing the lockfile exactly and failing on any disagreement.

Why does my frozen install fail after rewriting commands?▼

A frozen install fails when the lockfile is missing, ignored, or out of sync with the manifest. Regenerate and commit the lockfile first, and check .dockerignore to confirm the lockfile reaches the Docker build context.

Which package managers support frozen lockfile installs?▼

Beyond npm ci and uv --locked, the vocabulary includes --frozen-lockfile for pnpm, Yarn 1, and bun, --immutable for Yarn 2+, --locked for Cargo, --deployment for Bundler, and --locked-mode for dotnet restore.