Volta¶
Warning
volta is unmaintained. Volta’s maintainers declared the project unmaintained on 2025-11-14 and recommend migrating to mise. The final release, 2.0.2, dates back to 2024-12-05.
Volta manages JavaScript command-line tools, installing each package from the npm registry into its own isolated image pinned to a specific Node runtime.
Tools installed with volta install never land in npm’s global prefix:
Volta keeps them under its own VOLTA_HOME layout and exposes their
binaries through shims on PATH. The npm executable found on a
Volta-equipped host is itself such a shim, and npm --global operations do
not see Volta-managed tools, hence this dedicated backend (requested in
#1995).
Volta has no command listing outdated packages, so outdated (and with it
the synthesized upgrade --all) is unsupported: upgrades are targeted, by
reinstalling the latest release of a named package.
Home page: https://volta.sh
Version requirement:
>=1.0.2
What mpm adds to volta¶
mpm reaches across every manager at once, not volta alone: mpm installed and mpm outdated cover volta alongside npm, pnpm, yarn, yarn-berry and any other manager you run in one table, mpm upgrade --all updates them together, and mpm sbom exports the whole machine as one bill of materials.
Every mpm command also gains --dry-run and --plan previews, cross-scheme version comparison and purl identifiers. See manager augmentations for how each one is built.
Your volta commands, in mpm¶
You already know volta: each operation maps one-to-one onto mpm, in an interface shared by every manager.
To… |
With |
With |
|---|---|---|
List what’s installed |
|
|
Install a package |
|
|
Upgrade one package |
|
|
Remove a package |
|
|
Prefix any command above with --dry-run to simulate the underlying manager calls without touching the system: the safe way to watch what mpm would do before trusting it.
Platforms¶
🐧 Linux
🍎 macOS
🪟 Windows
Operations¶
Operation |
Supported |
|---|---|
|
✓ |
|
|
|
|
|
|
|
✓ |
|
✓ |
|
|
|
✓ |
|
|
|
|
|
Ecosystem¶
Accepted purl types:
pkg:npm,pkg:volta
Selecting and configuring volta¶
Deselect volta for a single run with --no-volta, or persist the choice in your configuration:
[mpm]
volta = false
Keep it enabled but tune how mpm drives it with a per-manager override:
[mpm.managers.volta]
timeout = 900
mpm config-template volta prints every overridable attribute as a ready-to-paste block.
Recipes¶
A few jobs you would otherwise script around volta, one mpm command each:
Snapshot and clone a machine:
mpm --volta dump volta.toml, thenmpm restore volta.tomlon the next one.Export a compliance SBOM:
mpm --volta sbom(CycloneDX by default,--spdxfor SPDX).
How mpm drives volta¶
CLI names, in lookup order:
voltaExtra CLI search paths:
~/.volta/bin
The version is extracted from the output of volta --version with:
r"(?P<version>\S+)"
Privilege escalation¶
mpm runs this manager as the current user and never prepends sudo by default. Flip the policy for its privileged operations with --sudo or the per-manager sudo override.
See privilege escalation for the full policy.
Cooldown¶
State of Volta’s release-age gating, from the cooldown support table:
Status: ➖ N/A (unmaintained since November 2025)
Reference: volta-cli/volta
With --cooldown set, mpm skips this manager’s install and upgrade operations rather than run them unguarded (fail-closed); --allow-unsupported-managers opts back in.
Reference traces¶
Raw native outputs captured in the manager source: the reference mpm’s parsers were written against. If you know Volta well and a transcript below looks wrong, or a newer release changed its output format, report it.
$ volta list all --format plain
runtime node@12.4.0 (default)
package-manager npm@6.13.4 (default)
package-manager yarn@1.16.0 (default)
package @larksuite/cli@1.0.79 / lark-cli / node@12.4.0 npm@built-in (default)
package ember-cli@3.10.0 / ember / node@12.4.0 npm@built-in (default)
package typescript@3.4.1 / tsc, tsserver / node@12.4.0 npm@built-in (default)
Feed any of these through mpm and the raw output becomes one uniform table, the same shape for every manager: filter it, project columns, or export it (mpm --volta installed --output json, or csv, toml, yaml), each package carrying a purl and a version comparable across managers.