Inside The Machine
Tools
Frontends / Chat UIs

Open WebUI

A ChatGPT-style app for your local models.

Makes a local stack feel like a finished product.

—PENDING
Gap ScorePending test on Mac Studio

Used inA private ChatGPTChat with your files

Where it sits
Want it installed?Hand this page to your agent.
.md .json
Let your agent do itNot run · docs checked
curl -fsSL https://insidethemachine.ai/install/open-webui.sh | bash
irm https://insidethemachine.ai/install/open-webui.ps1 | iex
Windows PowerShell (not run by us)
Plan, check, undo

Add -s -- plan to print every step and run nothing, verify to only check, rollback --yes to undo. Not run: commands checked against the official docs only. Commands checked against the official docs on 2026-10-15. Not run end to end.

AGENT VIEW · text/markdown · or send Accept: text/markdown
---
schema: "https://insidethemachine.ai/schema/listing.schema.json"
slug: "open-webui"
name: "Open WebUI"
category: "Frontends / Chat UIs"
stack_layer: "harness"
homepage: "https://openwebui.com/"
repo: "https://github.com/open-webui/open-webui"
docs: "https://docs.openwebui.com/"
license: "Open WebUI License (includes a requirement to preserve 'Open WebUI' branding; see LICENSE and LICENSE_HISTORY)"
platforms: ["macos-apple-silicon", "linux", "windows"]
mac_studio_fit: "Primary"
stars: 155789
stars_as_of: "2026-10-15"
last_push: "2026-10-15"
gap_score: null
gap_score_status: "pending test on Mac Studio"
benchmarks_status: "pending test on Mac Studio"
verified_on: "2026-10-15"
sponsored: false
---

# Open WebUI

> A self-hosted, ChatGPT-style interface for Ollama and any OpenAI-compatible endpoint.

**What:** A ChatGPT-style app for your local models. **Why:** Makes a local stack feel like a finished product.

**Stack layer:** harness (model → runtime → harness → memory → tools)

A self-hosted web UI for LLMs. Installs via pip, uv, Docker or Kubernetes; connects to Ollama and OpenAI-compatible APIs.

**Gap role:** Closes the UX gap with frontier chat apps: multi-model chat, RAG over documents, user accounts.

## Gap Score

null (pending test on Mac Studio)

## Prerequisites

- Python 3.11 (the README warns other versions may cause compatibility issues) OR Docker
- A model backend such as Ollama

## Install

### macOS (Apple Silicon)

1. Run:

```bash
brew install python@3.11
```

2. Run:

```bash
python3.11 -m venv ~/.venvs/openwebui && source ~/.venvs/openwebui/bin/activate
```

3. Run:

```bash
pip install open-webui
```

4. Run:

```bash
# Docker alternative (UI on port 3000):
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
```

### Linux

1. Run:

```bash
pip install open-webui   # inside a Python 3.11 venv
```

2. Run:

```bash
# or Docker: same docker run command as macOS
```

### Windows

1. Run:

```bash
pip install open-webui   # inside a Python 3.11 venv, or use Docker Desktop with the docker run command
```

## Configure

1. pip install: UI at http://localhost:8080:

```bash
open-webui serve
```

2. Run:

```bash
# Ollama on the same machine is detected at its default address; for a remote Ollama set -e OLLAMA_BASE_URL=... on docker run
```

## Verify

1. Expect: HTTP 200 (pip) — use port 3000 for the Docker command

```bash
curl -sI http://localhost:8080 | head -1
```

2. Expect: container listed as Up (Docker install)

```bash
docker ps --filter name=open-webui
```

## Rollback

1. pip install:

```bash
pip uninstall -y open-webui && rm -rf ~/.venvs/openwebui
```

2. Docker install; the volume holds chats/users, irreversible:

```bash
docker rm -f open-webui && docker volume rm open-webui
```

## One-command install

Status: docs-checked (Not run: commands checked against the official docs only). The wrapper scripts are generated from the site data. Every .sh passed bash -n and shellcheck and ran in plan mode on Linux (Debian 13). Every .ps1 passed the PowerShell parser and chat.ps1 ran in plan, verify and rollback mode under PowerShell 7 on Linux with Windows calls mocked. Not run on macOS or real Windows.

```bash
curl -fsSL https://insidethemachine.ai/install/open-webui.sh | bash            # install, then check
curl -fsSL https://insidethemachine.ai/install/open-webui.sh | bash -s -- plan    # print only
curl -fsSL https://insidethemachine.ai/install/open-webui.sh | bash -s -- rollback --yes
```

Details and Windows: https://insidethemachine.ai/install/open-webui.md

## Caveats

- Default pip port 8080 collides with mlx_lm.server and llama.cpp's server defaults.

## Benchmarks

Status: pending test on Mac Studio. Rig: Mac Studio, Apple Silicon, 128GB unified memory. No results published yet.

## Works with

- ollama (https://insidethemachine.ai/setups/ollama.md)
- llama-cpp (https://insidethemachine.ai/setups/llama-cpp.md)
- mlx-lm (https://insidethemachine.ai/setups/mlx-lm.md)
- lm-studio (https://insidethemachine.ai/setups/lm-studio.md)
- litellm (https://insidethemachine.ai/setups/litellm.md)

## Sources

- https://github.com/open-webui/open-webui
- https://docs.openwebui.com/