CLI commands
Every jrt command. Runtime specs use <runtime>@<version>, e.g. node@22 or java@temurin-17.
Setup & healthRuntimes & projectsMachine toolsCompatibilityShims
Setup & health
jrt version- Print the jrt version.
jrt help- Show usage and examples.
jrt backend bootstrap- Download and checksum-verify the managed mise backend. Needed once per machine.
jrt doctor [--fix]- Check backend, registry, overrides, shims and interrupted-run leftovers; --fix repairs what is safe.
jrt storage- Show JRT_HOME and disk usage per cache and install area.
jrt cache clean [--all]- Remove disposable caches; --all also removes shared download caches.
Runtimes & projects
jrt runtime install <runtime@version>- Install a runtime version side by side with others.
jrt runtime list [runtime]- List installed runtimes, optionally for one runtime.
jrt pin <runtime@version> [...]- Pin one or more runtimes in the project .jrt.toml.
jrt current- Show the pins in effect for the current directory.
jrt import [--dry-run] [--force]- Convert .nvmrc, .python-version, .tool-versions, mise.toml, … into .jrt.toml pins.
jrt exec -- <command> [args...]- Run a command with the project’s pinned runtimes.
jrt x <runtime@version> -- <command> [args...]- Run a command once on a specific runtime without pinning.
Machine tools
jrt tool add <alias> <source> [--runtime <runtime@version>] [--bin <exe>] [--runtime-arg <arg>]...- Resolve, lock and register a tool. Sources: npm:, pypi:, go:, cargo:, nuget:, maven:, bun:, deno:, gem:.
jrt tool list- List registered tools with their locked versions and policies.
jrt tool update <alias>- Re-resolve the tool to the newest compatible version.
jrt tool remove <alias>- Unregister a tool.
jrt tool pin <alias> <runtime@version>- Always run the tool on this runtime (policy pinned).
jrt tool policy <alias> <auto|strict>- Change how the tool’s runtime is selected.
jrt run <alias> [args...]- Run a registered tool on its selected runtime.
jrt why <alias>- Explain the locked version, selected runtime and the reason.
Compatibility
jrt compat set <source> --runtime <runtime@version> [--versions <range>]- Add a local known-good rule.
jrt compat list- Show local rules and each installed signed layer.
jrt compat remove <source>- Remove a local rule.
jrt compat update <bundle.json|https-url>- Install a signed bundle from a trusted publisher.
jrt compat trust add <name> <public-key>- Trust a publisher key.
jrt compat trust list | remove <name|key-id>- List or remove trusted keys (removal also drops their rules).
jrt compat keygen <name> [--out <file>]- Create a publisher signing key.
jrt compat sign --key <file> --sequence <n> --out <bundle.json> [--rules <file>] [--publisher <name>] [--expires-in 90d]- Sign a rules bundle.
Shims
jrt shim enable | disable- Create or remove the shim directory and tool shims.
jrt shim add <command>... | remove <command>...- Shim runtime commands such as node, npm, python.
jrt shim list- List shims with ok / stale status.
jrt shim sync- Recreate shims (after upgrading jrt).
jrt shim path- Print the shim directory and the PATH command for your shell.
Exit codes
jrt exec, jrt x, jrt run and shims return the child process’s exit code unchanged. jrt’s own errors exit with 1.