Files
bot/docs/install/development-channels.md
zeekay 08582cc303 Rebrand OpenClaw → Hanzo Bot across entire codebase
Complete rename of all OpenClaw/OPENCLAW/openclaw references to
Hanzo Bot/BOT/bot naming convention:

- Env vars: OPENCLAW_* → BOT_* (18 patterns)
- Config: ~/.openclaw/ → ~/.bot/, openclaw.json → bot.json
- Packages: @openclaw/* → @hanzo/bot-*
- Domains: openclaw.ai → hanzo.bot
- Mobile: OpenClawKit → BotKit, bundle IDs ai.openclaw → ai.hanzo.bot
- mDNS: _openclaw-gw._tcp → _bot-gw._tcp
- Docker: CMD hanzo-bot.mjs, BOT_PREFER_PNPM, BOT_DOCKER_APT_PACKAGES
- CI: docker-release.yml adds :latest tag on main branch
2026-02-11 11:13:08 -08:00

2.3 KiB
Raw Permalink Blame History

summary, read_when, title
summary read_when title
Stable, beta, and dev channels: semantics, switching, and tagging
You want to switch between stable/beta/dev
You are tagging or publishing prereleases
Development Channels

Development channels

Last updated: 2026-01-21

Hanzo Bot ships three update channels:

  • stable: npm dist-tag latest.
  • beta: npm dist-tag beta (builds under test).
  • dev: moving head of main (git). npm dist-tag: dev (when published).

We ship builds to beta, test them, then promote a vetted build to latest without changing the version number — dist-tags are the source of truth for npm installs.

Switching channels

Git checkout:

hanzo-bot update --channel stable
hanzo-bot update --channel beta
hanzo-bot update --channel dev
  • stable/beta check out the latest matching tag (often the same tag).
  • dev switches to main and rebases on the upstream.

npm/pnpm global install:

hanzo-bot update --channel stable
hanzo-bot update --channel beta
hanzo-bot update --channel dev

This updates via the corresponding npm dist-tag (latest, beta, dev).

When you explicitly switch channels with --channel, Hanzo Bot also aligns the install method:

  • dev ensures a git checkout (default ~/bot, override with BOT_GIT_DIR), updates it, and installs the global CLI from that checkout.
  • stable/beta installs from npm using the matching dist-tag.

Tip: if you want stable + dev in parallel, keep two clones and point your gateway at the stable one.

Plugins and channels

When you switch channels with hanzo-bot update, Hanzo Bot also syncs plugin sources:

  • dev prefers bundled plugins from the git checkout.
  • stable and beta restore npm-installed plugin packages.

Tagging best practices

  • Tag releases you want git checkouts to land on (vYYYY.M.D or vYYYY.M.D-<patch>).
  • Keep tags immutable: never move or reuse a tag.
  • npm dist-tags remain the source of truth for npm installs:
    • latest → stable
    • beta → candidate build
    • dev → main snapshot (optional)

macOS app availability

Beta and dev builds may not include a macOS app release. That’s OK:

  • The git tag and npm dist-tag can still be published.
  • Call out “no macOS build for this beta” in release notes or changelog.