libre-webui
v0.8.5
Published
Privacy-first AI chat interface. Self-hosted, open source, extensible.
Maintainers
Readme
🕊️ Libre WebUI
Your AI, Your Rules.
The privacy-first, open-source chat interface for local and cloud AI. No telemetry. No tracking. No compromises.
Why Libre WebUI?
Most AI chat tools either lock you into a cloud, harvest your data, or pull the rug on their open-source license (looking at you, BSD-3 + CLA combos 👀). We think you deserve better.
Libre WebUI is a self-hosted AI chat interface that connects to Ollama for fully local AI, or to OpenAI, Anthropic, Google, and 10+ cloud providers — all from one clean, fast UI. Your conversations never leave your machine unless you choose to send them.
Built by Kroonen AI and the open-source community. Apache 2.0 forever — we put it in our charter.
✨ Features at a Glance
| | Feature | What it does | | --- | ----------------------- | ---------------------------------------------------------------- | | 💬 | Streaming Chat | Real-time responses with dark/light themes and mobile support | | 🔌 | Plugin System | Connect any OpenAI-compatible API via simple JSON config | | 📄 | Document Chat (RAG) | Upload PDFs and chat with your documents | | 🎭 | Personas | Custom AI personalities with persistent memory | | 🎨 | Artifacts | Live HTML, SVG, and code preview right in chat | | 🖼️ | Image Generation | ComfyUI + Flux, DALL·E, and more | | 🔊 | Text-to-Speech | Qwen3-TTS, Kyutai, OpenAI voices — local or cloud | | 🤗 | HuggingFace Hub | Browse and use 1M+ models for chat, TTS, images, embeddings, STT | | 🔐 | SSO & Auth | GitHub, HuggingFace OAuth/OIDC, role-based access | | 🌍 | 25+ Languages | Full i18n — Arabic to Vietnamese | | 🖥️ | Desktop App | Native app for macOS, Windows, Linux (Electron) | | 🤖 | AI Agent Support | OpenClaw integration — persistent agents with memory and tools | | 🏢 | Enterprise Ready | GDPR, HIPAA, SOC 2 compatible • AES-256-GCM encryption |
🚀 Quick Start
One command — that's it
npx libre-webuiOpens at http://localhost:8080. Add Ollama for local AI, or plug in your API keys.
🐳 Docker
# With bundled Ollama
docker-compose up -d
# With your existing Ollama
docker-compose -f docker-compose.external-ollama.yml up -d
# GPU support (NVIDIA)
docker-compose -f docker-compose.gpu.yml up -d🍺 Homebrew (macOS)
brew tap libre-webui/tap && brew install libre-webui
libre-webui
# Or install the desktop app
brew install --cask libre-webui☸️ Kubernetes
helm install libre-webui oci://ghcr.io/libre-webui/charts/libre-webui🖥️ Desktop App
Download from GitHub Releases — available for macOS, Windows, and Linux.
🛠️ From Source
git clone https://github.com/libre-webui/libre-webui
cd libre-webui
cp backend/.env.example backend/.env
npm install && npm run devEdit backend/.env:
# Local AI (default — just install Ollama)
OLLAMA_BASE_URL=http://localhost:11434
# Cloud providers (optional — add what you need)
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
HUGGINGFACE_API_KEY=hf_...Dev builds are auto-generated from the dev branch. Not for production.
docker-compose -f docker-compose.dev.yml up -dUses separate data volumes (libre_webui_dev_data) so your stable install stays safe.
🏗️ Architecture
┌─────────────────────────────────────────────┐
│ Libre WebUI │
├──────────────────┬──────────────────────────┤
│ React + TS │ Express + SQLite │
│ Frontend │ Backend │
│ (Vite) │ (AES-256 encryption) │
├──────────────────┴──────────────────────────┤
│ Plugin Layer │
│ Ollama │ OpenAI │ Anthropic │ Google │ … │
├─────────────────────────────────────────────┤
│ Electron (Desktop) │ Docker │ Kubernetes │
└─────────────────────────────────────────────┘- Frontend: React 18 + TypeScript, Vite, responsive with keyboard shortcuts
- Backend: Express 5, SQLite with AES-256-GCM encryption, WebSocket streaming
- Plugins: JSON config files — add any provider without touching code
- Desktop: Electron with native macOS/Windows/Linux builds
🔌 Plugin System
Add any AI provider with a JSON file — no code changes needed:
{
"id": "my-provider",
"name": "My Provider",
"type": "completion",
"endpoint": "https://api.example.com/v1/chat/completions",
"auth": {
"header": "Authorization",
"prefix": "Bearer ",
"key_env": "MY_API_KEY"
},
"model_map": ["model-a", "model-b"]
}Built-in plugins: OpenAI, Anthropic, Google Gemini, Groq, Mistral, OpenRouter, HuggingFace, and more.
Plugins support multi-capability (chat + TTS + image gen in one config), per-user variables, and encrypted credential storage.
🤖 AI Agent Support (OpenClaw)
Libre WebUI natively supports AI agents via the OpenClaw plugin — turning your chat interface into a full agent platform.
What agents can do:
- 🧠 Persistent memory — agents remember across sessions
- 🔧 Tool use — file access, web search, code execution, device control
- 📅 Proactive actions — scheduled tasks, reminders, heartbeat monitoring
- 🎙️ Voice messages — agents generate and send audio using local TTS
- 🖼️ Image generation — agents create images via ComfyUI, DALL·E, etc.
- 💬 Multi-channel — same agent across Telegram, Discord, Signal, Nextcloud Talk
- 🔌 Plugin-powered — configure via JSON, no code required
{
"id": "openclaw-agent",
"name": "OpenClaw Agent",
"type": "completion",
"endpoint": "http://localhost:3000/v1/chat/completions",
"auth": {
"header": "Authorization",
"prefix": "Bearer ",
"key_env": "OPENCLAW_API_KEY"
},
"model_map": ["agent:main"]
}Your agent, your hardware, your data. No cloud dependency. Run Claude, GPT, Gemini, or local models as the agent's brain — all through the same self-hosted interface.
🤝 Contributing
We'd love your help! Libre WebUI is built by people who care about privacy and AI freedom.
Getting started is easy:
- Fork the repo and clone it
npm install && npm run dev- Make your changes on a branch off
dev - Open a PR — one approving review from the TSC and you're in
Ways to contribute:
- 🐛 Bug reports — open an issue
- 💡 Feature ideas — start a discussion
- 🌍 Translations — help us reach more languages
- 📖 Documentation — every improvement helps
- 🔌 Plugins — share your provider configs
All contributors follow our Code of Conduct and Community Charter.
Security issues? Email [email protected] — we follow a 30-day coordinated disclosure.
📜 Our Promise
Libre WebUI has an Ethical Charter that guarantees:
- 🔓 Apache 2.0 forever — no bait-and-switch relicensing
- 🚫 Zero telemetry — no analytics, no tracking, no phone-home. Ever.
- 🏛️ Community governance — transparent decisions, public roadmap
- 🤝 No VC capture — funded by the community, for the community
- ✊ Ethical use — we actively oppose surveillance and weapons applications
🏢 Enterprise
Need to deploy at scale? Kroonen AI provides professional services:
| Service | Description | | ---------------------- | -------------------------------------- | | Custom Deployment | On-prem, cloud, air-gapped, Kubernetes | | SSO Integration | Okta, Azure AD, SAML, LDAP | | Custom Development | Integrations, white-labeling, plugins | | Compliance | GDPR, HIPAA, SOC 2, FedRAMP | | SLA Support | Priority response, dedicated channel |
📧 [email protected] • Learn more →
🔗 Links
| | | | -------------------- | -------------------------------------------------------------------------------- | | 🌐 Website | librewebui.org | | 📖 Documentation | docs.librewebui.org | | 🐙 GitHub | github.com/libre-webui/libre-webui | | 🦊 GitLab | git.kroonen.ai/libre-webui | | 🤗 HuggingFace | huggingface.co/libre-webui | | 𝕏 Twitter | @librewebui | | 🐘 Mastodon | @[email protected] | | ❤️ Sponsor | github.com/sponsors/libre-webui |
⭐ If Libre WebUI helps you, give us a star!
It helps others discover the project and keeps us motivated.
Apache 2.0 License • Copyright © 2025–present Libre WebUI™
Built with ❤️ by Kroonen AI and the open-source community
