Skip to main content

Installation Guide

Comprehensive installation instructions for ZeroClaw across all supported platforms.

System Requirements

Minimum Runtime Requirements

RAM

< 5MB for basic agent operations(Build-time: ~2GB recommended)

Disk Space

~9MB for binary + dependencies(Build-time: ~6GB free space)

CPU

Any ARM, x86_64, or RISC-V processorTested down to 0.8GHz single-core

OS

Linux, macOS, Windows, or bare-metal(Firmware available for microcontrollers)

Supported Platforms

PlatformArchitectureStatusNotes
Linuxx86_64, aarch64, armv7✅ Tier 1Debian, Ubuntu, Fedora, Arch, Alpine
macOSx86_64, aarch64 (Apple Silicon)✅ Tier 1macOS 10.15+
Windowsx86_64✅ Tier 1Native and WSL2
Raspberry Piarmv7, aarch64✅ Tier 1Pi 3, 4, 5, Zero 2 W (GPIO support)
DockerMulti-arch✅ Tier 1x86_64, aarch64 images
ESP32xtensa⚙️ Firmwarezeroclaw-esp32, zeroclaw-esp32-ui
STM32ARM Cortex-M⚙️ FirmwareNucleo boards (zeroclaw-nucleo)
ArduinoAVR, ARM⚙️ Firmwarezeroclaw-arduino, zeroclaw-uno-q-bridge
Android/Termuxaarch64, armv7✅ ExperimentalSource builds only
Tier 1: Pre-built binaries available, CI-tested, officially supportedFirmware: Embedded builds for microcontrollers (limited feature set)Experimental: Community-supported, may require manual configuration

Installation Methods

Platform-Specific Instructions

Linux

# Install build dependencies
sudo apt-get update
sudo apt-get install -y build-essential pkg-config libssl-dev git curl

# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env

# Install ZeroClaw
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./bootstrap.sh
Optional features:
# Hardware support (USB, serial)
sudo apt-get install -y libudev-dev

# Browser automation
sudo apt-get install -y chromium-browser chromium-chromedriver
# Install build dependencies
sudo dnf groupinstall -y "Development Tools"
sudo dnf install -y pkg-config openssl-devel git curl

# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env

# Install ZeroClaw
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./bootstrap.sh
# Install dependencies
sudo pacman -Syu base-devel openssl git curl

# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env

# Install ZeroClaw
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./bootstrap.sh
# Install dependencies
apk add --no-cache build-base openssl-dev git curl bash

# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env

# Install ZeroClaw
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./bootstrap.sh
Alpine uses musl libc. Some features may require additional packages:
apk add --no-cache pkgconfig libudev-zero-dev

macOS

# Install Homebrew (if not already installed)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Install ZeroClaw
brew install zeroclaw
Or from source:
# Install Xcode Command Line Tools
xcode-select --install

# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env

# Clone and build
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./bootstrap.sh
macOS may require granting permissions for terminal access to folders. Go to System Preferences → Security & Privacy → Files and Folders if you encounter permission errors.

Windows

Raspberry Pi

1

Update System

sudo apt-get update
sudo apt-get upgrade -y
2

Install Rust

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
3

Install Build Dependencies

sudo apt-get install -y build-essential pkg-config libssl-dev git
4

Use Pre-built Binary (Recommended)

Raspberry Pi 3/4 have limited RAM. Use pre-built binaries:
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
./bootstrap.sh --prefer-prebuilt
If source build is required, enable swap:
sudo dphys-swapfile swapoff
sudo nano /etc/dphys-swapfile  # Set CONF_SWAPSIZE=2048
sudo dphys-swapfile setup
sudo dphys-swapfile swapon
5

Enable GPIO Support

Install with GPIO peripheral support:
cargo install zeroclaw --features peripheral-rpi
Or in source builds:
./bootstrap.sh --cargo-features "peripheral-rpi"
Raspberry Pi GPIO requires running as root or in the gpio group:
sudo usermod -a -G gpio $USER
# Log out and back in for group change to take effect

Android (Termux)

Android/Termux support is experimental. Some features (hardware, some channels) are unavailable.
# Install Termux from F-Droid (not Google Play)
# Inside Termux:

pkg update && pkg upgrade
pkg install rust git binutils

# Clone and build
git clone https://github.com/zeroclaw-labs/zeroclaw.git
cd zeroclaw
cargo build --release --locked
cargo install --path . --force
Termux builds use target_os="android" and exclude nusb (USB enumeration) to avoid compilation errors.

Embedded & Microcontroller Firmware

ESP32

ZeroClaw firmware for ESP32 with optional UI:
cd firmware/zeroclaw-esp32

# Install ESP-IDF toolchain
. $HOME/esp/esp-idf/export.sh

# Build and flash
idf.py build
idf.py -p /dev/ttyUSB0 flash monitor
See firmware/zeroclaw-esp32/README.md for detailed setup.

STM32 Nucleo

cd firmware/zeroclaw-nucleo

# Install ARM toolchain
sudo apt-get install gcc-arm-none-eabi

# Build
cargo build --release --target thumbv7em-none-eabihf

# Flash with probe-rs
cargo run --release
See docs/nucleo-setup.md.

Arduino

cd firmware/zeroclaw-arduino

# Open in Arduino IDE and flash
# Or use arduino-cli:
arduino-cli compile --fqbn arduino:avr:uno zeroclaw-arduino.ino
arduino-cli upload -p /dev/ttyACM0 --fqbn arduino:avr:uno

Verification

After installation, verify ZeroClaw is working:
# Check version
zeroclaw --version

# Run health check
zeroclaw doctor

# Test configuration
zeroclaw config export
Expected output:
zeroclaw 0.1.8
Zero overhead. Zero compromise. 100% Rust.

Updating ZeroClaw

brew upgrade zeroclaw

Uninstallation

# Remove binary
cargo uninstall zeroclaw

# Or if installed via Homebrew
brew uninstall zeroclaw

# Remove config and data (optional)
rm -rf ~/.zeroclaw
Removing ~/.zeroclaw deletes all configuration, credentials, and conversation history. Back up important data first.

Next Steps

Quick Start

Run your first agent in under 5 minutes

Configuration

Configure providers, channels, and runtime options

Build docs developers (and LLMs) love