Skip to docs content

Install dependencies

scpm install installs the dependencies declared in package.json and the workspace manifests.

scpm install

Most local work does not need a separate install command. scpmr <script>, scpm test, and scpm exec <bin> check install freshness first. If package.json or the lockfile changed, scpm installs before running the script or binary. For one-off tools, scpmx <pkg> installs into a throwaway environment and runs the binary.

Use scpm install when the install itself is the task: first local setup without running a script, lockfile updates, Docker layers, production-only installs, offline installs, linker experiments, and CI flows.

Lockfile modes

ModeCommandUse it when
Prefer frozenscpm install --prefer-frozen-lockfileLocal default: reuse a fresh lockfile, re-resolve on drift.
Frozenscpm install --frozen-lockfileCI should fail if package.json and lockfile disagree.
No frozenscpm install --no-frozen-lockfileYou want a full re-resolve.
Fix lockfilescpm install --fix-lockfileYou want to repair only entries that drifted.
Lockfile onlyscpm install --lockfile-onlyYou want to update the lockfile without linking node_modules.

scpm ci is the strict CI shortcut: it deletes node_modules and then runs a frozen install.

Dependency filters

scpm install --prod
scpm install --no-optional

--prod skips devDependencies. --no-optional skips optional dependencies.

Network modes

scpm install --prefer-offline
scpm install --offline

--prefer-offline uses cached metadata when available and only hits the network on a miss. --offline forbids network access entirely.

Linker modes

scpm install --node-linker=isolated
scpm install --node-linker=hoisted

isolated is the pnpm-compatible default. It writes a strict symlink tree under node_modules/.scpm/. hoisted writes a flatter npm-style tree for projects that need legacy node_modules assumptions. pnp is not supported.

Store import methods

scpm install --package-import-method=auto
scpm install --package-import-method=hardlink
scpm install --package-import-method=copy
scpm install --package-import-method=clone-or-copy

auto probes the filesystem and chooses the fastest available strategy: reflink, hardlink, then copy.

References