Add a dependency
Give a package a local name, import it in your source, and commit the versions Wax selects.
Add the package
Run this from a project containing wax.json and Src/:
wax add Easing @wax/easing "^1.0.3"
Easing is the local name used by your source. @wax/easing is its registry
name, and ^1.0.3 is the allowed version range. The command updates wax.json,
writes the selected versions and hashes to wax.lock, and installs the source
under Packages/.
import Easing from Easing;
float eased = Easing.CubicInOut(progress);
Commit the updated wax.json and the wax.lock this command creates. Ignore
Packages/; another checkout can recreate it from the lockfile.
Restore a checkout
wax install
When wax.lock matches wax.json, install uses
the locked versions, archive locations, and SHA 512 hashes. It does not search
for updates. This is the command to run after cloning a project and in CI.
If every locked archive is already cached, prove the restore no longer needs a registry:
wax install --offline
An offline install fails instead of substituting another version when an archive is missing.
Inspect before updating
wax list
wax outdated
list reads the manifest and lockfile locally. It shows direct aliases and
their requested ranges, then the exact direct and transitive versions.
outdated asks the registry what is available but changes no files.
To select newer versions allowed by wax.json:
wax update
Review and commit the lockfile change. If the update fails, Wax restores the previous manifest, lockfile, and installed packages.
Remove a dependency
wax remove Easing
The command removes the direct alias and also removes transitive packages no longer reachable from another dependency. It fails without changing the project if the alias is not declared.
Check project health
wax doctor
wax doctor --online
The default check is local and read only. It verifies transaction residue,
manifest and lockfile agreement, installed package manifests, source roots, and
license material. --online adds registry checks; --auth also verifies the
saved account.
For the files these commands maintain, continue with Project files. For version selection and offline caches, read Versions and lockfiles.