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

# macOS Guide

> This guide explains how to build the Edge0 app on an Apple Silicon Mac, download a model, and start chatting locally.

## Prerequisites

You need:

* macOS 14 or later, with an Apple Silicon M3 or later chip.
* Git.
* Xcode Command Line Tools, with a working Metal compiler.
* CMake 3.24+.
* Rust 1.88 (the version is pinned in the repository's `rust-toolchain.toml`).
* Node.js 22+ and Yarn 1.22.

If the Command Line Tools are not installed yet, run:

```bash theme={null}
xcode-select --install
```

For measured memory references, see [Device Requirements](/device-requirements).

**1. Get the source and check the environment**

```bash theme={null}
git clone https://github.com/Edge0-AI/Edge0.git
cd Edge0/macos
bash scripts/check-prereqs.sh
```

The script checks the system, chip architecture, and build tools. If anything is missing, install it as prompted and run the check again. If Yarn is not installed, the script tries to prepare it through Corepack.

Run the subsequent commands in the `Edge0/macos` directory.

**2. Build and open the app**

```bash theme={null}
make app
open dist/edge0-0.1.0-arm64.app
```

`make app` installs the front-end dependencies, builds the local engine and desktop app, and writes the `.app` under `dist/`. If the generated version number differs, open the file that was actually produced.

After the app opens, it starts the local service automatically.

### If macOS blocks the app from opening

> [!WARNING]
>
> **The app is not notarized**
>
> The app built here uses ad-hoc signing. If the system says it cannot verify the developer, first confirm the app is the one you built from the official repository, then follow the macOS steps in [Security & Installation Warnings](/security-and-installation-warnings). If the system says the app is damaged, will harm your computer, or contains malware, do not open it.

**3. Download and load a model**

1. Open the **Models** page.
2. Select **Edge0 8B** or **Edge0 35B** and click **Download**. For a first try, 8B is recommended.
3. Wait for the download to finish.
4. Click **Load model** and wait for the model to load.

Models are saved under `~/.edge0` by default.

**4. Start chatting**

Open the chat page, enter a message, and press Enter to send. The response appears progressively and supports Markdown and math.

Try this to start:

> List three key points for planning a weekend trip.

If the app reports that no model is loaded, return to the **Models** page and click **Load model**. If it reports that the service is not connected, check the local service status on the **Service** page.

**5. Quit and uninstall**

Use **Quit** in the menu bar to exit the app, which also stops the local service the app started. Closing the window alone does not quit the app.

### Uninstall the app, keep the data

Quit the app first, then run the bundled command-line tool. The commands below assume the app is still in the build output directory:

```bash theme={null}
APP="$PWD/dist/edge0-0.1.0-arm64.app"
"$APP/Contents/Resources/bin/edge0" uninstall
```

If you moved the app, change `APP` to its actual path. This command stops the service and removes the related launch configuration, while keeping models, chats, and logs. You can then delete the `.app` in Finder.

### Also delete Edge0 data

> [!WARNING]
>
> **This operation deletes data**
>
> This operation deletes the models, chats, logs, configuration, and state in the Edge0 data directory. Save anything you want to keep first.

```bash theme={null}
"$APP/Contents/Resources/bin/edge0" uninstall --purge
```

The tool shows the data directory it will delete (`~/.edge0` by default) and asks you to type `PURGE` to confirm. Some in-app settings live outside that directory and are not removed by this command.

## Troubleshooting

* Missing Metal compiler: confirm the Xcode toolchain is fully installed, then run the environment check again.
* Download fails: check the network, then click **Retry** or **Resume** in the download task.
* Out of memory: close memory-heavy apps, or switch to 8B.
* Need diagnostics: open **Environment Check** on the **Service** page; logs are under `~/.edge0/logs/`.

For more issues, see [Troubleshooting](/troubleshooting).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.