← All guides

Update the halo CLI

Get the latest halo CLI in two commands — remove the old link, re-run the installer, verify with doctor. Your wallet, config, and earnings are untouched.

Halo ships from warden-protocol/run-halo, and the CLI moves fast in alpha — updating regularly gets you fixes, new provider slugs, and protocol changes. There’s no halo update command (yet); updating is remove the old link, re-run the installer.

The installer is idempotent: if it finds halo already on your PATH it exits without touching anything. That’s why step 1 matters — skip it and nothing updates.

Update in two commands

npm rm -g halo-cli
bash <(curl -fsSL https://raw.githubusercontent.com/warden-protocol/run-halo/main/skill/scripts/install.sh)

The installer clones the latest run-halo, builds the CLI, and links halo globally again. Then verify:

halo doctor --json   # install + wallet state, provider, relay health

Your wallet and config survive

Everything that matters lives in ~/.halo/ (config.json, keystore.json) — the update never touches it. Your wallet address, provider setup, pricing, League points, and dashboard pairing all carry over. Nothing to back up, nothing to re-configure.

Never pass --rotate-wallet as part of an update — it replaces your wallet with a new identity and is not reversible.

Running a service? One more step

A daemon installed with halo service keeps running the old code until it’s restarted — see update your operator for the service-safe procedure.