Updating
malac update # install the latest releasemalac update --check # only checkSafe while agents run
Section titled “Safe while agents run”An update downloads the release archive for your machine, verifies it against the release’s SHA256SUMS, unpacks it next to the installed binaries, and moves the new malac-control and malac into place with an atomic rename. A rename never disturbs a running process, so:
- running sessions and their subagents keep the version they started with,
- the daemon, which holds every interactive session, keeps its version until it restarts,
- new processes use the new version,
malac-controlis replaced first, so a malac that starts in the middle finds a control service at least as new as itself.
A lock file keeps two malac processes from updating the same directory at once.
After an update, malac update says so:
updated to malac 1.0.1. Running sessions keep their version until you restart them.Switching the daemon
Section titled “Switching the daemon”After an update, your terminal is newer than the daemon. The terminal UI shows daemon 1.0.0 running; restart it when idle in the status line, the line mode prints a notice, and malac daemon status suggests the same. When no agents or jobs are running, restart it:
malac daemon restartor click the status line note, or choose Help → Restart the daemon in the terminal UI. Workspaces and transcripts are kept; open terminals and web pages reconnect, and agents resume from their transcripts when you prompt them. malac daemon restart refuses while agents or jobs run, unless --force.
Update checks
Section titled “Update checks”malac looks for a newer release in the background, at most once a day, and shows when one is available: in the terminal UI’s status line and in the web UI. The check reads the latest release’s SHA256SUMS from GitHub, and its result is cached in ~/.malac/update.json.
[update]check = true # look for new releases (default)auto = false # install them automatically (default: off)With auto = true, a new release is installed as soon as it is found. Running sessions still keep their version.
You can also ask: “is there a newer malac? install it”. See Configure malac by asking.
Installs that cannot update themselves
Section titled “Installs that cannot update themselves”malac update replaces the binaries in place, so it needs a writable install directory and a release for your platform.
| Installed with | Update with |
|---|---|
The install script, a release archive (~/.local/bin or any writable directory) |
malac update |
| Homebrew | brew upgrade lobirus/malac/malac |
The macOS .pkg (/usr/local/bin, not writable) |
The new installer from the releases page, or sudo malac update |
| A platform without release builds | A source build: MALAC_FROM_SOURCE=1 with the install script |
malac detects which case applies and tells you what to run.
Mirrors
Section titled “Mirrors”MALAC_RELEASES points both the update check and the installer at another release base URL, for example an internal mirror that has the same layout as GitHub releases (<base>/latest/download/SHA256SUMS).
malac is created by lobirus and released under the MIT license. About malac