> ## Documentation Index
> Fetch the complete documentation index at: https://docs.slng.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Installation

Unmute is one static binary. Pick your operating system and install it. Normal use does not need Go.

On this page:

* [Install Unmute](#install-unmute) - macOS, Windows, Linux
* [Keep it current](#keep-it-current) - why a release matters
* [What you need to run an agent](#what-you-need-to-run-an-agent) - Docker, or `uv`

## Install Unmute

<Tabs>
  <Tab title="macOS">
    Install with Homebrew:

    ```sh theme={null}
    brew install slng-ai/tap/unmute
    ```

    Check it:

    ```sh theme={null}
    unmute --version
    ```
  </Tab>

  <Tab title="Windows">
    Scoop works today. Add the bucket once, then install:

    ```powershell theme={null}
    scoop bucket add slng-ai https://github.com/slng-ai/scoop-bucket
    scoop install slng-ai/unmute
    ```

    Check it:

    ```powershell theme={null}
    unmute --version
    ```
  </Tab>

  <Tab title="Linux">
    Download the archive for your architecture from the [releases page](https://github.com/slng-ai/unmute/releases), extract the `unmute` binary, and put it on your PATH.

    Check it:

    ```sh theme={null}
    unmute --version
    ```
  </Tab>
</Tabs>

## Keep it current

This site is written against the newest release, and releases come often. If a field or a flag on a page does not exist in your build, upgrade. The [changelog](/changelog) says what changed in each release.

## What you need to run an agent

The default LiveKit browser dev loop needs Docker with Compose. Check it before the quickstart:

```sh theme={null}
docker compose version
```

Pipecat browser development uses `uv` instead. You can write, validate, and compile a package without either runtime. A phone route is verified after you deploy; see [phone calls](/guides/agents/telephony/overview) for what each route needs.

<Accordion title="Advanced install options">
  **Verify a release archive**

  Each archive holds the binary, LICENSE, and README. Every release also has a `unmute_<version>_checksums.txt` file, its signature, and one SBOM per archive.

  Check the archive against the checksum file:

  ```sh theme={null}
  sha256sum -c --ignore-missing unmute_<version>_checksums.txt
  ```

  Check that this project's release workflow, and nobody else, signed the checksum file:

  ```sh theme={null}
  cosign verify-blob \
    --bundle unmute_<version>_checksums.txt.sigstore.json \
    --certificate-identity-regexp "^https://github\.com/slng-ai/unmute/\.github/workflows/release\.yml@.*$" \
    --certificate-oidc-issuer https://token.actions.githubusercontent.com \
    unmute_<version>_checksums.txt
  ```

  **Install with Go**

  On any platform with Go 1.26 or newer:

  ```sh theme={null}
  go install github.com/slng-ai/unmute@latest
  ```

  **Build from a clone**

  This is the contributor path, and the one to take if you want to change the CLI itself.

  <Steps>
    <Step title="Clone the repository">
      ```sh theme={null}
      git clone https://github.com/slng-ai/unmute.git
      cd unmute
      ```
    </Step>

    <Step title="Build">
      ```sh theme={null}
      make build
      ```

      That writes `bin/unmute`. The direct equivalent is `CGO_ENABLED=0 go build -o bin/unmute .`, and the version string is stamped in at link time.
    </Step>

    <Step title="Check it">
      ```sh theme={null}
      bin/unmute --version
      ```

      It prints one line: the release, the commit it was built from, and that commit's date. A plain `go build` with no link-time stamping prints `unmute version dev`.
    </Step>
  </Steps>

  **Put a source build on your PATH**

  ```sh theme={null}
  make install
  ```

  That runs `go install`, which puts `unmute` in your Go bin directory (usually `~/go/bin`). Add that directory to your PATH and you can run `unmute` from anywhere. The rest of these pages write `unmute`; if you skipped this step, read that as `bin/unmute` from the repository root.

  A package manager install is already on your PATH.
</Accordion>
