Skip to main content
Jolter separates runtimes from tools. Built-in tools such as npm, pnpm, and Yarn run through the selected Node.js runtime. Plugin-provided tools are installed by Jolter plugins and can expose their own command shims.

Built-in managed tools

ToolRegistry packageCommands
npmnpmnpm, npx
pnpmpnpmpnpm
Yarn@yarnpkg/cli-distyarn
Tool tarballs come from the npm registry and are verified with registry SHA-512 integrity metadata. Exact Corepack-style hashes add another check when provided.

Activate a tool globally

Managed tools require an active Node.js runtime:
jolter use node@lts
jolter use pnpm@10
jolter use yarn@4
Jolter validates the tool’s declared engines.node range before activation.

Pin tools in a project

jolter pin node@24
jolter pin pnpm@10
jolter pin yarn@4
jolter sync
Result:
jolter.json
{
  "$schema": "https://schemas.jolter.dev/project/v2/schema.json",
  "schemaVersion": 2,
  "runtime": {
    "node": "24"
  },
  "tools": {
    "pnpm": "10",
    "yarn": "4"
  }
}
If jolter.json#tools is non-empty, it wins over package.json#packageManager. Put every intended managed tool in tools.

npm bundled with Node.js

Official Node.js archives include bundled npm and npx. Jolter can route those bundled commands through the selected Node.js runtime when no managed npm override applies. Pin or activate a managed npm version when you need npm to move independently from Node.js:
jolter pin npm@11
jolter sync

Plugin-provided tools

Plugins can provide tools such as eslint, prettier, or organization-specific commands.
jolter plugin install eslint
jolter use eslint@8
Schema v2 connects the tool and provider:
jolter.json
{
  "$schema": "https://schemas.jolter.dev/project/v2/schema.json",
  "schemaVersion": 2,
  "runtime": {
    "node": "24"
  },
  "tools": {
    "eslint": "8"
  },
  "plugins": {
    "@eslint/eslint": "1"
  }
}
Built-in tools do not require plugin declarations.

Diagnose tool issues

jolter doctor
jolter list
Common fixes:
SymptomFix
Tool requires Node.jsPin or activate node@... first
Tool and Node.js are incompatibleChoose a compatible Node.js or tool line
Shim cannot find a project toolRun jolter sync
Multiple plugins provide the same toolDeclare the provider in jolter.json#plugins