1. Home
  2. Install
  3. macOS
macOS install guide · updated June 2026

Install Odysseus AI on macOS — Apple Silicon & Intel.

A complete guide to installing Odysseus AI on Apple Silicon (M1/M2/M3/M4) and Intel Macs. Covers Homebrew prerequisites, the port 7860 AirPlay workaround, Metal GPU acceleration via Ollama, the MLX limitation, and includes an interactive model recommender that matches your exact Mac.

Time · ~10 min Difficulty · beginner Tested · macOS 14 / 15 Cost · free
Section I

What you need before you start.

macOS is the friendliest platform for the Odysseus AI install — Homebrew handles almost everything. Three small prerequisites and you're done in 10 minutes.

macOS 13 Ventura or newer

Odysseus AI runs on macOS 13 and later, with macOS 14 Sonoma and 15 Sequoia being the explicitly tested versions. Older macOS releases miss the Python 3.11+ that Homebrew now ships, and the Metal acceleration in Ollama is significantly faster on macOS 14+. Check yours from the Apple menu → About This Mac.

Homebrew

The de facto package manager for macOS. If you don't already have it, install with the official one-liner:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

After install, follow the post-install instruction Homebrew prints — it tells you to add /opt/homebrew/bin (Apple Silicon) or /usr/local/bin (Intel) to your shell PATH. Skip that and every subsequent brew command will fail.

Xcode Command Line Tools

Many of Odysseus AI's Python dependencies compile native code on first install. The Command Line Tools provide the compilers. Trigger the install with:

xcode-select --install

If you already have it, the command returns "command line tools are already installed" — that's fine, move on. The full Xcode app is not required.

Section II

The four-step macOS install.

Open Terminal (or iTerm2 if you prefer) and run these in any folder where you want the project to live. ~/Code or ~/Documents are common picks.

I
Install Python 3.11+ and Git via Homebrew

One command installs both. Homebrew detects Apple Silicon vs Intel automatically and pulls the right binaries.

brew install [email protected] git
II
Clone the official Odysseus AI repository

The official Odysseus AI repo lives at pewdiepie-archdaemon/odysseus. Always clone from this exact path to avoid impostor and mirror repositories.

git clone https://github.com/pewdiepie-archdaemon/odysseus.git cd odysseus
III
Run the macOS launcher

The included shell script creates a Python virtual environment, installs dependencies via pip, then starts the Odysseus AI server on port 7860.

chmod +x ./start-macos.sh ./start-macos.sh

First run takes 2–5 minutes to download dependencies. The admin password is printed once — copy it before scrolling.

IV
Open Odysseus AI in your browser

Once you see "Uvicorn running on http://0.0.0.0:7860", switch to Safari, Chrome, or your browser of choice:

http://localhost:7860

Log in with admin and the password from your terminal. You're in. The next sections cover wiring up Ollama and choosing the right model for your Mac.

Section III

Why Odysseus AI uses port 7860, not 7000.

If you saw the homepage docs saying Odysseus AI runs on port 7000, you're not wrong — that's the default everywhere except macOS. Apple uses port 7000 for AirPlay Receiver, so the macOS launcher uses 7860 instead.

Option A · Keep port 7860 (recommended)

The macOS launcher already defaults to 7860. Just remember to use http://localhost:7860 instead of localhost:7000 in every bookmark, documentation snippet, and tutorial you read.

Option B · Disable AirPlay Receiver to free port 7000

If you don't use AirPlay to stream to your Mac from another device, turn the receiver off and reclaim port 7000.

  1. System Settings → General → AirDrop & Handoff
  2. Toggle "AirPlay Receiver" OFF
  3. Restart Odysseus AI with PORT=7000 ./start-macos.sh

Option C · Manually free port 7860 if something else takes it

If a previous Odysseus AI run didn't exit cleanly, port 7860 might still be held. Find and kill the holder:

# find the process holding port 7860 sudo lsof -i :7860 # kill it (replace 12345 with the PID from above) kill -9 12345 # then relaunch ./start-macos.sh
Section IV

Connecting Ollama to Odysseus AI on Mac.

Ollama on macOS is exceptional — full Metal GPU acceleration on Apple Silicon with zero configuration. This is the fastest way to run local models inside Odysseus AI.

Step A · Install Ollama for macOS

Two options. The official native app is friendlier; Homebrew is more script-friendly.

# Option 1: native app (recommended) # Download from https://ollama.com/download/mac # Drag to Applications folder, launch once # Option 2: via Homebrew brew install ollama brew services start ollama

Both options register Ollama as a background service. After install, you'll see the Ollama icon in your menu bar.

Step B · Pull a model that fits your Mac

The general rule for Apple Silicon: pick a model where the quantized size is ~60% of your unified memory. The model recommender below picks the optimal one for your exact configuration.

# 8 GB Mac (M1 / M2 / M3 base) ollama pull llama3.2:3b # 16 GB Mac ollama pull llama3.1:8b # 24 GB+ Mac (M3 Pro, M4 Pro, M-series Max) ollama pull qwen2.5:14b

Step C · Configure the provider in Odysseus AI

In Odysseus AI, click the settings gear → Providers → Add Provider → OpenAI-compatible:

Provider type: OpenAI-compatible Base URL: http://localhost:11434/v1 API key: ollama

Save, refresh, and your pulled model appears in the chat dropdown. Send a test message — on Apple Silicon you should see 20–40 tokens per second on a 7B model.

Section V · tool

The Odysseus AI model recommender for Mac.

Pick your Mac model and RAM. The tool ranks four model sizes against your unified memory, predicts inference speed, and gives you the exact ollama pull command for the top match.

Model recommender

Honest predictions based on real Apple Silicon benchmarks — not vendor marketing.

Your model lineup

Section VI

Apple Silicon vs Intel — the honest truth.

Both platforms work, but the performance gap is enormous. If you're choosing a Mac for the Odysseus AI install, Apple Silicon isn't a "nice to have" — it's the difference between fluid AI workflows and a frustrating slideshow.

Apple Silicon

M-series

7B Q4 inference20–40 tok/s
Memory bandwidth100–800 GB/s
GPU accelerationMetal, automatic
Power draw under load20–35 W
Largest practical model70B on M-Max 64GB+
Intel Mac

2018-2020

7B Q4 inference2–6 tok/s
Memory bandwidth~40 GB/s
GPU accelerationLimited / CPU only
Power draw under load60–80 W
Largest practical model7B with patience

Why the gap is so big

Apple Silicon's unified memory architecture lets the GPU and CPU share the same RAM at the same speed. On an Intel Mac, model weights have to be copied between system RAM and GPU VRAM — a process that's often slower than just running everything on CPU. The Metal Performance Shaders framework also got serious LLM optimization in 2024 and 2025, adding another 2–3x speedup that Intel Macs can't access.

If you're on an Intel Mac and want to run Odysseus AI seriously, the pragmatic answer is: use it with API providers (OpenAI, Anthropic, OpenRouter) and skip local models entirely. The workspace experience is identical; you just trade local privacy for cloud inference speed.

Section VII

Why MLX models don't work in Odysseus AI yet.

Apple's MLX framework is genuinely exciting — purpose-built for Apple Silicon, often faster than llama.cpp on the same hardware. But there's a practical mismatch with how Odysseus AI talks to models, and it's worth understanding.

Odysseus AI speaks OpenAI's API

Odysseus AI connects to model backends through the OpenAI-compatible REST API. Ollama, llama.cpp server, vLLM, and LM Studio all expose this interface. MLX itself doesn't ship a server with this interface — it's a Python framework for direct model loading and inference, not a service.

The workaround: use GGUF instead

Virtually every model that has an MLX version also has a GGUF version. GGUF models run through Ollama or llama.cpp with full Metal acceleration on Apple Silicon — speed difference vs MLX is usually under 20%. For now, that's the right path inside Odysseus AI.

If you really need MLX

A community project called mlx-omni-server wraps MLX models in an OpenAI-compatible HTTP server. It's not officially supported by Odysseus AI but works in practice. Configure it as a custom OpenAI provider with base URL http://localhost:10240/v1. Expect rougher edges than the Ollama path.

Your macOS install is done when —

// landfall checklist

  • http://localhost:7860 opens the Odysseus AI login page
  • You logged in as admin with the password from the Terminal
  • Ollama is running in the menu bar
  • You pulled at least one model that fits your unified memory
  • That model appears in the Odysseus AI chat dropdown
  • Your first message gets a reply within 30 seconds
  • You wrote down the admin password somewhere safe
Section VIII

Six macOS-specific errors and fixes.

These cover the failures unique to the macOS Odysseus AI install. Most are Homebrew, permission, or Python path issues.

Port 7000 already in use (AirPlay)

OSError: [Errno 48] Address already in use

AirPlay Receiver holds port 7000 by default on macOS. The launcher uses 7860 to avoid this, but if you explicitly set PORT=7000 you'll hit the conflict.

# Option A: stay on 7860 (default) ./start-macos.sh # Option B: disable AirPlay Receiver # System Settings → General → AirDrop & Handoff # Toggle "AirPlay Receiver" OFF PORT=7000 ./start-macos.sh

Homebrew not on PATH

brew: command not found

Homebrew was installed but the install script's PATH instruction was missed. Different paths for Apple Silicon vs Intel.

# Apple Silicon echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc # Intel Mac echo 'eval "$(/usr/local/bin/brew shellenv)"' >> ~/.zshrc # Reload shell source ~/.zshrc

Python compilation failed

error: command 'cc' failed: No such file or directory

Xcode Command Line Tools are missing. Some Python dependencies need a C compiler at install time.

xcode-select --install # accept the install prompt; takes ~5 minutes # then retry ./start-macos.sh

Permission denied on launcher

zsh: permission denied: ./start-macos.sh

The script doesn't have execute permission. Common after cloning over certain mount points.

chmod +x ./start-macos.sh ./start-macos.sh

Ollama Metal initialization failed

Failed to initialize Metal device / GPU not available

Rare but happens after macOS updates. Restart Ollama; if that doesn't fix it, reinstall.

# Quit Ollama from menu bar, then brew services restart ollama # Or, if installed as app killall ollama open -a Ollama # Last resort: full reinstall brew reinstall ollama

SSL certificate error during pip install

SSL: CERTIFICATE_VERIFY_FAILED

Python's certifi bundle is out of sync — common after a fresh Python from Homebrew on a Mac without the Apple cert chain.

# Update certifi pip install --upgrade certifi # Or run Python's install-certificates helper /Applications/Python\ 3.11/Install\ Certificates.command # If still failing, refresh Homebrew Python brew reinstall [email protected]
Appendix

macOS install FAQ.

Does Odysseus AI work on M1, M2, M3, and M4 Macs?
Yes — all Apple Silicon generations run Odysseus AI with full Metal acceleration. M3 and M4 are roughly 20-40% faster than M1 at local inference, but every M-series chip beats every Intel Mac by an order of magnitude. The base 8 GB M1 Mac mini can run a 3B model at 30+ tokens per second.
Why does Odysseus AI use port 7860 on macOS?
Apple's AirPlay Receiver service binds port 7000 by default, which is Odysseus AI's standard port on Linux and Windows. To avoid a conflict on every fresh Mac, the macOS launcher uses 7860. You can disable AirPlay Receiver in System Settings → General → AirDrop & Handoff and reclaim 7000, then start with PORT=7000 ./start-macos.sh.
Can I run Odysseus AI on an Intel Mac?
Yes, the workspace itself runs fine on Intel. Local models are the bottleneck — expect 2-6 tokens per second on 7B models because Intel Macs lack the unified memory architecture and Metal LLM optimization of Apple Silicon. For a smooth Odysseus AI experience on Intel, connect cloud providers (OpenAI, Anthropic, OpenRouter) instead of pulling local models.
Should I use Ollama or LM Studio on macOS?
Either works with Odysseus AI — both expose OpenAI-compatible APIs. Ollama is the better choice for headless / background use and is faster to script. LM Studio has a polished GUI for model management and is friendlier if you want to browse and download models visually. Pick by preference; performance is essentially identical.
How do I update Odysseus AI on macOS?
Inside the project folder: git pull to fetch new code, then re-run ./start-macos.sh — the script detects changes to requirements.txt and installs new dependencies. Your chat history, settings, and downloaded models are preserved.
Does Odysseus AI use Apple's MLX framework?
Not directly — Odysseus AI talks to OpenAI-compatible HTTP endpoints, and MLX doesn't ship one out of the box. Models that exist in both MLX and GGUF formats should be used via GGUF (through Ollama or llama.cpp), where they get full Metal acceleration with under 20% speed difference vs native MLX.
How much disk space does Odysseus AI need on Mac?
The application itself: under 500 MB. Python virtual environment with dependencies: 1.5 GB. Each downloaded Ollama model: 2-40 GB depending on size and quantization. Budget 20 GB total for a comfortable setup with a couple of models, more if you collect them.
Can I access Odysseus AI from my iPhone or iPad on the same network?
Yes. Find your Mac's local IP via System Settings → Network → Wi-Fi → Details. Open http://<your-mac-ip>:7860 from Safari on iPhone/iPad. Your Mac must stay awake — disable sleep in Energy Saver, or use caffeinate in Terminal. Don't expose port 7860 to the public internet without HTTPS and authentication in front.
Continue

Your next step.