Skip to content

Installation

malac ships as two binaries: malac, the agent, and malac-control, the computer and browser control service. Every install method below installs both.

macOS is the primary platform and Linux is supported. Windows is not supported yet.

The current release is malac 1.0.1.

Windows is not supported yet. malac runs on macOS and Linux; the downloads below are for those.

macOS

For this computer

A universal installer for Apple silicon and Intel Macs. It puts malac and malac-control in /usr/local/bin. The archives hold the same two binaries.

Linux

For this computer

An x86-64 archive with malac and malac-control: unpack it and put both on your PATH. The install script does that for you, and builds from source where no archive fits.

curl -fsSL https://raw.githubusercontent.com/lobirus/malac/main/install.sh | sh

VS Code extension

The malac web UI in an editor panel. The same .vsix works in VS Code and in VS Code–compatible editors such as Cursor, Windsurf and VSCodium. It is not on the Marketplace yet, so install the file.

code --install-extension malac-vscode-1.0.1.vsix

Or in the editor: Extensions → … → Install from VSIX.

Windows is not supported yet.malac 1.0.1 on GitHub.Checksums: SHA256SUMS. Verify with shasum -a 256 -c SHA256SUMS in the download folder.

The VS Code page has more on the extension.

curl -fsSL https://raw.githubusercontent.com/lobirus/malac/main/install.sh | sh

The script downloads the latest GitHub release for your machine and verifies it against the release’s SHA256SUMS:

Platform Target In v1.0.1
macOS, Apple silicon aarch64-apple-darwin prebuilt
macOS, Intel x86_64-apple-darwin prebuilt
Linux, x86-64 x86_64-unknown-linux-gnu prebuilt

When the release has no archive for your machine (another CPU or system), the script builds malac from source instead. That needs Rust 1.86 or newer from rustup.rs or brew install rust, and git. A source build takes a few minutes.

The binaries go to ~/.local/bin. If that directory is not on your PATH, the script tells you what to add to your shell profile:

export PATH="$HOME/.local/bin:$PATH"

Set these environment variables for the sh side of the pipe:

Variable Default Effect
MALAC_INSTALL_DIR ~/.local/bin Where the binaries go
MALAC_VERSION latest Release tag to install, for example v0.2.0
MALAC_FROM_SOURCE unset Set to 1 to always build from source
MALAC_REF main Branch or tag to build from source
MALAC_SOURCE unset Build this local checkout instead of cloning, for example .
MALAC_RELEASES GitHub releases Release download base URL, for mirrors

For example, to install a specific version into /opt/malac/bin:

curl -fsSL https://raw.githubusercontent.com/lobirus/malac/main/install.sh \
| MALAC_VERSION=v0.2.0 MALAC_INSTALL_DIR=/opt/malac/bin sh
brew tap lobirus/malac https://github.com/lobirus/malac
brew install lobirus/malac/malac

The formula builds the tagged release from source with Homebrew’s Rust; brew install --HEAD lobirus/malac/malac builds the main branch instead. Homebrew installs are updated with brew upgrade lobirus/malac/malac, not with malac update.

Each release, v1.0.1 included, contains these files:

File Contents
malac-<version>-aarch64-apple-darwin.tar.gz macOS, Apple silicon
malac-<version>-x86_64-apple-darwin.tar.gz macOS, Intel
malac-<version>-macos.pkg Universal macOS installer; puts both binaries in /usr/local/bin
malac-<version>-x86_64-unknown-linux-gnu.tar.gz Linux, x86-64
malac-vscode-<version>.vsix The VS Code extension
SHA256SUMS Checksums of every file

To check a download, put SHA256SUMS in the same folder and run shasum -a 256 -c SHA256SUMS; files you did not download are reported as missing.

Each archive contains malac and malac-control. Unpack it and put both binaries in the same directory on your PATH; malac looks for malac-control next to itself first.

From a checkout of the repository:

cargo install --path crates/malac && cargo install --path crates/malac-control

This needs Rust 1.86 or newer.

malac --version
malac-control --help

Desktop control needs two privacy permissions. macOS grants them to the app that started malac-control, usually your terminal. In System Settings → Privacy & Security, grant your terminal app:

  • Screen & System Audio Recording (called Screen Recording before macOS 15)
  • Accessibility

Then restart the terminal. Alternatively, run malac-control serve in a terminal that already has both; malac connects to it automatically. Browser control needs neither permission.

Quick start adds a provider and runs your first prompt.

malac is created by lobirus and released under the MIT license. About malac