Backups and updates
Back up and restore $HABAKKUK_HOME while Habakkuk runs, move to another machine, update and roll back, and how retention keeps storage small.
On this page
Backups#
bash
habakkuk backup -o habakkuk.tar.gz # config, agents, skills and database snapshots
habakkuk backup -env -workspaces # also .env, WhatsApp credentials and workspaces inside the home
habakkuk restore habakkuk.tar.gz # unpack a backup into $HABAKKUK_HOMEhabakkuk backup [-o FILE] [-env] [-workspaces]takes consistent database snapshots while Habakkuk runs, so there is no need to stop it.-envadds.envand the WhatsApp credential databases.-workspacesadds agent workspaces kept underagents/<name>/workspace. A workspace elsewhere (such as~/habakkuk-workspace, whichhabakkuk setupuses) is not included; copy it yourself.habakkuk restore [-force] FILErefuses to overwrite an existing config without-force. Stophabakkuk servefirst.
Warning
A backup made with -env holds your keys and can act as your linked WhatsApp device. Keep it private.
Moving to another machine#
- On the old machine:
habakkuk backup -env -workspaces -o habakkuk.tar.gz, then stopserve. - Install Habakkuk on the new machine (Installation).
- Copy the archive over (and any workspace outside
$HABAKKUK_HOME), and runhabakkuk restore habakkuk.tar.gz. - Run
habakkuk doctor, then startservethere. Only one machine should runservefor the same channels.
Updates#
bash
habakkuk update -check # is there a newer release?
habakkuk update # install it (checksum verified, checked against your home, after a backup)
habakkuk update --rollback # undo the last updateRestart serve after updating. Container users pull the new image instead. Updating explains each step, release channels, and how config and database changes are handled.
Retention#
yaml
retention:
days: 90 # transcripts and finished jobs older than this are pruned; 0 disables
memory:
history_days: 90 # memory change history; -1 keeps allhabakkuk serve prunes old transcripts and finished jobs on its maintenance pass. Memory notes, skills and the user profile are files, and are never pruned by retention.