A complete local AI environment for your Mac with Apple Silicon GPU acceleration. This stack includes chat interfaces, web search, document processing, workflow automation, vector databases, and more—all running locally with a single setup script.
- A Mac with Apple Silicon (M1 -> M5)
- Homebrew
- Docker Desktop
First, install Homebrew by following the instructions on their official website.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"To have GPU acceleration, we must install Ollama locally. Docker does not have access to Apple Silicon GPUs:
brew install ollamaWe'll use Meta's latest model Llama3.1:
ollama pull llama3.1Download and install Docker Desktop from Docker's official website. You could install Docker in other ways but this way is the simplest.
Clone the GitHub repository for this project and change into the directory:
git clone https://github.com/mikeydiamonds/macOS-AI.git && cd macOS-AIFirst make the script executable:
chmod +x setup.shNow get ready to automate your world, and grab a cup of coffee, the first run takes a bit of time ( ~10 minutes ):
./setup.sh| Service | Local URL | status | Use |
|---|---|---|---|
| Open WebUI | http://chat.localhost | ✅ | AI Chat Interface |
| SearXNG | http://searxng.localhost | ✅ | Private Web Search |
| Firecrawl | http://firecrawl.localhost | ✅ | Web Scraping API |
| Crawl4ai | http://crawl4ai.localhost/playground | ✅ | AI-Powered Web Crawler |
| Docling | http://docling.localhost/ui | ✅ | Document Processing |
| n8n | http://n8n.localhost | ✅ | Workflow Automation |
| Qdrant | http://qdrant.localhost/dashboard | ✅ | Vector Database |
| Scriberr | http://scriberr.localhost | testing | Audio Transcription |
| Supabase | http://supabase.localhost | ✅ | Database & Backend |
| NocoDB | http://nocodb.localhost | ✅ | No-Code Database Platform |
| Traefik | http://traefik.localhost | ✅ | Reverse Proxy & Routing |
We've included example workflows to help you get started with automation:
- Access n8n at http://n8n.localhost and create your owner account
- Follow the n8n Workflow Setup Guide to import the example workflow
- The example demonstrates connecting SearXNG, Ollama, Supabase, Qdrant, and NocoDB
Quick start:
- Example workflows:
n8n/workflows/ - Full guide:
n8n/WORKFLOWS.md - Workflow ideas: Search → Scrape → AI Analysis → Store in Database
-
Reset the stack/start over:
./setup.sh --reset -
Docker Desktop Issues: Make sure Docker Desktop is running and you have granted necessary permissions. Adjust resource limits in the settings.
-
Model Pull Issues: Ensure you have a stable internet connection while pulling the model using Ollama.
-
Network Issues: If you can't access
http://chat.localhost, verify your Docker network settings and ensure no other services are conflicting with port 80.
This project was built using Claude Code - Anthropic's AI coding assistant that runs directly in your terminal. Claude Code helped automate the entire stack setup, from Docker configurations to workflow examples.
Development followed a modified 3-file PRD (Product Requirements Document) system inspired by snarktank/ai-dev-tasks:
/prd- Create a PRD defining feature scope and requirements/gentasks- Generate a detailed, step-by-step implementation task list from the PRD/ptasks- Process tasks sequentially with built-in verification checkpoints
This approach breaks complex features into manageable chunks with iterative review, making it ideal for AI-assisted development. The slash commands are available in this repository's .claude/commands/ directory.
Want to contribute? Use the same structured approach:
# 1. Define your feature
/prd
# 2. Generate implementation tasks
/gentasks
# 3. Execute with verification
/ptasksFeel free to open an issue on this GitHub repository if you encounter any problems not covered in this guide.
Happy coding! 🚀