Appearance
Are you an LLM? You can read better optimized documentation at /docs/migrating-from-hive.md for this page in Markdown format
Moving from Hive to Clusto
Clusto is installed as a separate application identity. It uses the Clusto name, the dev.vazac.clusto desktop and mobile identity, the clusto CLI, and the clustod daemon.
Desktop profiles start clean
Clusto does not copy Hive desktop profiles, cached settings, app credentials, or device activation state. This prevents the two application identities from sharing credentials or silently consuming the same activation.
After installing Clusto, add the connection again from Connection, or sign in and restore it from encrypted cloud sync if it was already synced. Keep the node token available before removing the old client. On an A0 node, hive daemon get-token prints the local token; after the handoff, use clusto daemon get-token.
Windows installer cleanup
The Clusto NSIS installer removes recognized Hive desktop-client installs before it copies Clusto:
- The installer checks the known Hive 1.11.0 MSI product key directly in the machine-wide and per-user registry views. It removes the MSI only when the product code, display name, publisher, Windows Installer marker, and version all match the shipped package. Exit codes for already-absent products and reboot-required success are handled explicitly.
- The Hive NSIS client is accepted only when its registry entry identifies the shipped per-user uninstaller under
%LOCALAPPDATA%\Hiveor%LOCALAPPDATA%\Programs\Hive. - The validated uninstaller runs first. The old Hive application directory, Add/Remove Programs entry, and Hive desktop and Start-menu shortcuts are then removed.
The installer never scans the full Windows uninstall registry or executes an arbitrary uninstall command from it. The registry work is fixed and the installer cannot remain on Checking for a previous Hive install after reaching the end of the uninstall entries. If a recognized uninstall fails or its registration remains, Clusto stops the installation instead of leaving two desktop identities.
Every legacy uninstaller runs with a 120-second timeout, and leftover hive-app.exe, hive.exe, and clusto.exe processes are terminated before files are copied. A blocked msiexec or an uninstaller waiting on a hidden prompt therefore fails with a message naming the timeout instead of freezing the progress bar. Remote client updates apply the installer with a 600-second cap and relaunch the app if that cap is hit; the transcript is at %TEMP%\clusto-update.log.
This cleanup is limited to desktop-client registrations and validated client directories. It does not delete daemon configuration, the session database, attachments, or the migration journal. Node state moves through the journaled layout migration described in Configuration.
Node handoff
An A0 node must have a verified rollback backup and a clean migration dry-run before it takes the epoch-2 Clusto update. The detached helper replaces the old hived service with clustod, moves the recorded state to the Clusto layout, and checks health before completing.
If the node still uses dl.vazac.dev, expect a two-hop update. Both legacy channels are frozen at A1 1.14.5, and their manifests download the A1 artifacts from dl.clusto.app. After the first restart and layout handoff, Clusto migrates the stored endpoint to the canonical distribution origin. Run another update check to take the newest release available there. The legacy origin never advances beyond 1.14.5.
Inspect the current node without changing it:
bash
hived migrate-layout --dry-runDo not manually move the daemon database or populate the destination paths. Unexpected occupancy is a cutover collision and must be inspected before the update continues.
Verify the result
On a migrated node:
bash
clusto daemon status
clusto versionOnly clustod should be active. The old service may remain disabled during the rollback window, but it must not run beside clustod. In Windows Apps and Features, only Clusto should remain as the desktop application.