# Installation agentpack ships as a single binary. The recommended path is Homebrew; source builds use the Go toolchain. ## Installer scripts On macOS or Linux, download, checksum-verify, and install the latest binary with: ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/olegpustovit/agentpack/releases/latest/download/agentpack-installer.sh | sh ``` On Windows PowerShell: ```powershell irm https://github.com/olegpustovit/agentpack/releases/latest/download/agentpack-installer.ps1 | iex ``` Both installers write only the executable to `$HOME/.local/bin` by default and accept `AGENTPACK_INSTALL_DIR` to choose another userspace destination. They do not edit shell profiles or the user `PATH`. Downloads are verified against the release's `checksums.txt` before installation. ## Homebrew (macOS and Linux) ```sh brew install --cask olegpustovit/tap/agentpack ``` That one line taps `olegpustovit/homebrew-tap` and installs the cask. The two-step form works too: ```sh brew tap olegpustovit/tap brew install --cask agentpack ``` Upgrade later with: ```sh brew upgrade --cask agentpack ``` ## Prebuilt binaries Each release publishes GoReleaser archives for macOS (arm64, x86_64), Linux (x86_64, arm64), and Windows (x86_64), plus a SHA-256 `checksums.txt` file. Pick a specific version from the [releases page](https://github.com/olegpustovit/agentpack/releases) if you don't want `latest`. ## From source You need Go 1.26 or newer, then: ```sh git clone https://github.com/olegpustovit/agentpack.git cd agentpack make ui-stage # needs Bun 1.4.4; builds the gateway web UI go install ./cmd/agentpack ``` Run `make ui-stage` before building: without it the gateway serves a placeholder page instead of the UI. `make build` and `make install` warn when the placeholder is still in place. This installs `agentpack` under `GOBIN` (or the default Go bin directory); make sure that directory is on your `PATH`. The repo's `Makefile` also offers `make install`, which builds a stripped binary and copies it to `~/.local/bin` (override with `make install INSTALL_DIR=/usr/local/bin`). ## Verify ```sh agentpack --version ``` ## Where agentpack keeps its state All cached content, the metadata index, and per-project bookkeeping live under a single user-wide directory, **not** inside your repo. When `AGENTPACK_HOME` is unset, the default is: - **Linux/macOS** — `$XDG_DATA_HOME/agentpack` if `XDG_DATA_HOME` is set, otherwise `$HOME/.local/share/agentpack` - **Windows** — `%LOCALAPPDATA%\agentpack` Override it by exporting the variable in your shell profile: ```sh export AGENTPACK_HOME="$HOME/.local/share/agentpack" ``` A custom `AGENTPACK_HOME` is useful for a shared cache on a network mount, or for isolating a project's state. See [Environment Variables](../reference/env-vars.md) for the complete list.