libre-webui 0.13.1 → 0.13.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +118 -247
- package/backend/dist/index.js +1 -1
- package/backend/dist/index.js.map +1 -1
- package/backend/dist/routes/chat.d.ts.map +1 -1
- package/backend/dist/routes/chat.js +5 -1
- package/backend/dist/routes/chat.js.map +1 -1
- package/backend/dist/routes/plugins.d.ts.map +1 -1
- package/backend/dist/routes/plugins.js +8 -7
- package/backend/dist/routes/plugins.js.map +1 -1
- package/backend/dist/routes/tts.d.ts.map +1 -1
- package/backend/dist/routes/tts.js +28 -7
- package/backend/dist/routes/tts.js.map +1 -1
- package/backend/dist/services/pluginCapabilityRegistryService.d.ts +1 -1
- package/backend/dist/services/pluginCapabilityRegistryService.d.ts.map +1 -1
- package/backend/dist/services/pluginCapabilityRegistryService.js +10 -5
- package/backend/dist/services/pluginCapabilityRegistryService.js.map +1 -1
- package/backend/dist/services/pluginService.d.ts +8 -3
- package/backend/dist/services/pluginService.d.ts.map +1 -1
- package/backend/dist/services/pluginService.js +74 -54
- package/backend/dist/services/pluginService.js.map +1 -1
- package/backend/dist/services/pluginTTSService.d.ts +4 -2
- package/backend/dist/services/pluginTTSService.d.ts.map +1 -1
- package/backend/dist/services/pluginTTSService.js +25 -31
- package/backend/dist/services/pluginTTSService.js.map +1 -1
- package/backend/dist/services/preferencesService.d.ts.map +1 -1
- package/backend/dist/services/preferencesService.js +6 -1
- package/backend/dist/services/preferencesService.js.map +1 -1
- package/backend/dist/services/titleGenerationService.d.ts +5 -0
- package/backend/dist/services/titleGenerationService.d.ts.map +1 -1
- package/backend/dist/services/titleGenerationService.js +30 -6
- package/backend/dist/services/titleGenerationService.js.map +1 -1
- package/backend/dist/types/index.d.ts +2 -0
- package/backend/dist/types/index.d.ts.map +1 -1
- package/backend/dist/types/index.js.map +1 -1
- package/backend/dist/utils/packagePaths.d.ts +1 -0
- package/backend/dist/utils/packagePaths.d.ts.map +1 -1
- package/backend/dist/utils/packagePaths.js +22 -0
- package/backend/dist/utils/packagePaths.js.map +1 -1
- package/backend/package.json +1 -1
- package/frontend/dist/assets/index-CXKTQEWS.js +5 -0
- package/frontend/dist/assets/index-ClnPpnM5.css +1 -0
- package/frontend/dist/index.html +5 -5
- package/frontend/dist/js/{ArtifactContainer-lBT2Cf0m.js → ArtifactContainer-DiRnahHG.js} +1 -1
- package/frontend/dist/js/{ArtifactDemoPage-622qBoTt.js → ArtifactDemoPage-DlROHIWC.js} +1 -1
- package/frontend/dist/js/ArtifactSlideOutPanel-Bsj35Ixs.js +1 -0
- package/frontend/dist/js/{Button-Cgmt_2gR.js → Button-BZBnLKRn.js} +1 -1
- package/frontend/dist/js/ChatPage-CjrNWkGe.js +16 -0
- package/frontend/dist/js/{FirstTimeSetup-BDCojgfX.js → FirstTimeSetup-DHqRxGnu.js} +1 -1
- package/frontend/dist/js/{GalleryPage-DWjvQFPR.js → GalleryPage-D6JI9-bu.js} +1 -1
- package/frontend/dist/js/LibreClawPage-C5UCG3UO.js +1 -0
- package/frontend/dist/js/{ModelManagerModals-BECfRnGl.js → ModelManagerModals-ibSD3Sfs.js} +1 -1
- package/frontend/dist/js/{ModelsPage-Ccmog6B5.js → ModelsPage-4isgqfxd.js} +2 -2
- package/frontend/dist/js/{OptimizedSyntaxHighlighter-CNjLqj1Z.js → OptimizedSyntaxHighlighter-Fr-hsdRj.js} +1 -1
- package/frontend/dist/js/{PersonasPage-DvTDH2Fy.js → PersonasPage-CQPSBBkb.js} +2 -2
- package/frontend/dist/js/RichMessageContent-DmV_QHWo.js +3 -0
- package/frontend/dist/js/SettingsModal-CMgPDKKF.js +1 -0
- package/frontend/dist/js/{UserManagementPage-k1mBGCDH.js → UserManagementPage-KmYKTbzm.js} +1 -1
- package/frontend/dist/js/{api-Ddawdcbi.js → api-CdKv5S1E.js} +3 -3
- package/frontend/dist/js/{ar-CQheG5xK.js → ar-CxLY7ABG.js} +1 -1
- package/frontend/dist/js/{bn-BVXljlpH.js → bn-DREExDzT.js} +1 -1
- package/frontend/dist/js/{cs-BgyyXudt.js → cs-LDpGwqlb.js} +1 -1
- package/frontend/dist/js/{da-Dk83-zzY.js → da-Csupo97j.js} +1 -1
- package/frontend/dist/js/{de-B9SDOxyQ.js → de-EOghQcPX.js} +1 -1
- package/frontend/dist/js/{es-DMlNf0tc.js → es-CiX_CYKt.js} +1 -1
- package/frontend/dist/js/{fr-DtOoKP26.js → fr-1IIacQYp.js} +1 -1
- package/frontend/dist/js/{hi-wuG6Draz.js → hi-DGT4fx6S.js} +1 -1
- package/frontend/dist/js/{id-CT2rnPXt.js → id-0UGudeEI.js} +1 -1
- package/frontend/dist/js/{is-Cfy2VWp5.js → is-BQzgz0LG.js} +1 -1
- package/frontend/dist/js/{it-vgQmoI8w.js → it-3PfovgDw.js} +1 -1
- package/frontend/dist/js/{ja-B8pVsr1R.js → ja-BaXdHNz8.js} +1 -1
- package/frontend/dist/js/{ko-CTERnuAH.js → ko-DNqxLzw3.js} +1 -1
- package/frontend/dist/js/{ms-BGmwAKcP.js → ms-D_X86VRO.js} +1 -1
- package/frontend/dist/js/{nl-CKLRry0w.js → nl-B832wh-7.js} +1 -1
- package/frontend/dist/js/{pl-DRWZS4lz.js → pl-BDMgy2lk.js} +1 -1
- package/frontend/dist/js/{pt-Dua6AStw.js → pt-CbhjHMrx.js} +1 -1
- package/frontend/dist/js/{ru-B6MEHobb.js → ru-CEe0KRO9.js} +1 -1
- package/frontend/dist/js/{sv-Bg1rkqPN.js → sv-BWwpkP0M.js} +1 -1
- package/frontend/dist/js/{th-Nz5BELCH.js → th-Dm5aEMnB.js} +1 -1
- package/frontend/dist/js/{tr-7Nyg2UmX.js → tr-DMaVgSRT.js} +1 -1
- package/frontend/dist/js/{uk-DUAnc6NJ.js → uk-Cu1mMWfT.js} +1 -1
- package/frontend/dist/js/useBaseQuery-4Pd5VVAl.js +1 -0
- package/frontend/dist/js/useQuery-BgOybVfP.js +1 -0
- package/frontend/dist/js/utils-D0l9J3P-.js +1 -0
- package/frontend/dist/js/{vi-BOpghAsX.js → vi-B_DGmAUD.js} +1 -1
- package/frontend/dist/js/{zh-lCo3TiLV.js → zh-DIKyA5Kk.js} +1 -1
- package/package.json +2 -2
- package/frontend/dist/assets/index-6X4Fay3z.js +0 -5
- package/frontend/dist/assets/index-j-Q57B_D.css +0 -1
- package/frontend/dist/js/ArtifactSlideOutPanel-CfbbHcaI.js +0 -1
- package/frontend/dist/js/ChatPage-DGqHo1eh.js +0 -16
- package/frontend/dist/js/LibreClawPage-BQ5dN-0J.js +0 -1
- package/frontend/dist/js/RichMessageContent-CBR2ML5W.js +0 -3
- package/frontend/dist/js/SettingsModal-CV9iz6Lk.js +0 -1
- package/frontend/dist/js/useBaseQuery-5VtX6QMw.js +0 -1
- package/frontend/dist/js/useQuery-CXwvr2_e.js +0 -1
- package/frontend/dist/js/utils-BaPYjs_z.js +0 -1
package/README.md
CHANGED
|
@@ -2,334 +2,205 @@
|
|
|
2
2
|
|
|
3
3
|
<br>
|
|
4
4
|
|
|
5
|
-
#
|
|
5
|
+
# Libre WebUI
|
|
6
6
|
|
|
7
|
-
### Your AI
|
|
7
|
+
### Your AI stack should answer to you.
|
|
8
8
|
|
|
9
|
-
**
|
|
10
|
-
|
|
9
|
+
**A local-first workspace for Ollama, your chosen providers, private knowledge, artifacts, and local agents.**<br>
|
|
10
|
+
Self-hosted. Provider-flexible. Apache 2.0.
|
|
11
|
+
|
|
12
|
+
**Run local. Bring the providers you choose. Keep control of the interface around them.**
|
|
11
13
|
|
|
12
14
|
<br>
|
|
13
15
|
|
|
14
16
|
<p>
|
|
15
|
-
<a href="https://github.com/libre-webui/libre-webui/releases"><img src="https://img.shields.io/github/v/release/libre-webui/libre-webui?style=flat-square&label=
|
|
16
|
-
<a href="
|
|
17
|
-
<a href="https://github.com/libre-webui/libre-webui/
|
|
18
|
-
<a href="https://
|
|
19
|
-
<a href="https://github.com/libre-webui/libre-webui"><img src="https://img.shields.io/github/stars/libre-webui/libre-webui?style=flat-square&label=
|
|
17
|
+
<a href="https://github.com/libre-webui/libre-webui/releases"><img src="https://img.shields.io/github/v/release/libre-webui/libre-webui?style=flat-square&label=release&color=2563eb" alt="Latest release"></a>
|
|
18
|
+
<a href="https://www.npmjs.com/package/libre-webui"><img src="https://img.shields.io/npm/v/libre-webui?style=flat-square&label=npm&color=cb3837" alt="npm version"></a>
|
|
19
|
+
<a href="https://github.com/libre-webui/libre-webui/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-Apache--2.0-15803d?style=flat-square" alt="Apache 2.0 License"></a>
|
|
20
|
+
<a href="https://github.com/libre-webui/libre-webui/actions/workflows/format.yml"><img src="https://img.shields.io/github/actions/workflow/status/libre-webui/libre-webui/format.yml?branch=main&style=flat-square&label=main%20checks" alt="Main branch checks"></a>
|
|
21
|
+
<a href="https://github.com/libre-webui/libre-webui"><img src="https://img.shields.io/github/stars/libre-webui/libre-webui?style=flat-square&label=stars&color=f59e0b" alt="GitHub stars"></a>
|
|
20
22
|
</p>
|
|
21
23
|
|
|
22
24
|
<p>
|
|
23
|
-
<a href="https://librewebui.org">Website</a>
|
|
24
|
-
<a href="https://docs.librewebui.org">
|
|
25
|
-
<a href="https://github.com/libre-webui/libre-webui/releases">Download</a>
|
|
26
|
-
<a href="#
|
|
25
|
+
<a href="https://librewebui.org"><strong>Website</strong></a> ·
|
|
26
|
+
<a href="https://docs.librewebui.org"><strong>Documentation</strong></a> ·
|
|
27
|
+
<a href="https://github.com/libre-webui/libre-webui/releases"><strong>Download</strong></a> ·
|
|
28
|
+
<a href="#start-in-one-command"><strong>Quick start</strong></a>
|
|
27
29
|
</p>
|
|
28
30
|
|
|
29
31
|
<br>
|
|
30
32
|
|
|
31
|
-
<
|
|
32
|
-
<img src="./screenshot.png" width="100%" alt="Libre WebUI — Privacy-first AI chat interface">
|
|
33
|
-
</p>
|
|
33
|
+
<img src="https://raw.githubusercontent.com/libre-webui/libre-webui/main/screenshot.png" width="100%" alt="Libre WebUI local-first AI workspace">
|
|
34
34
|
|
|
35
35
|
</div>
|
|
36
36
|
|
|
37
37
|
---
|
|
38
38
|
|
|
39
|
-
##
|
|
40
|
-
|
|
41
|
-
Most AI chat tools either **lock you into a cloud**, **harvest your data**, or **pull the rug on their open-source license through restrictive relicensing or contributor agreements**. We think you deserve better.
|
|
39
|
+
## Freedom should survive success
|
|
42
40
|
|
|
43
|
-
|
|
41
|
+
An AI interface can be self-hosted today and still become a gatekeeper tomorrow. Libre WebUI is built so your freedom does not depend on a company remaining benevolent.
|
|
44
42
|
|
|
45
|
-
|
|
43
|
+
Run it. Inspect it. Change it. Fork it. Connect it to something else. Or leave it behind. The code is Apache 2.0, local inference is the default path, remote providers are opt-in, and the project charter puts independence and inclusive participation into writing.
|
|
46
44
|
|
|
47
|
-
|
|
45
|
+
> **Open source is a license. Libre is an operating principle.**
|
|
48
46
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
| | Feature | What it does |
|
|
52
|
-
| --- | ------------------------ | ------------------------------------------------------------------------- |
|
|
53
|
-
| 💬 | **Streaming Chat** | Real-time local and provider-backed conversations |
|
|
54
|
-
| 🧠 | **Model Manager** | Pull, browse, unload, and manage Ollama, Ollama Cloud, and HF GGUF models |
|
|
55
|
-
| 🔌 | **Plugin System** | Connect OpenAI-compatible providers with JSON config and user credentials |
|
|
56
|
-
| 📄 | **Document Chat (RAG)** | Upload PDF and plain-text files, then search them from chat |
|
|
57
|
-
| 🎭 | **Personas** | Reusable assistants with prompts, parameters, memory, and import/export |
|
|
58
|
-
| 🎨 | **Artifacts** | Sandboxed HTML, SVG, JSON, and code previews beside chat |
|
|
59
|
-
| 🖼️ | **Image Generation** | ComfyUI and provider plugins for generated images |
|
|
60
|
-
| 🔊 | **Text-to-Speech** | Qwen3-TTS, Kyutai, OpenAI-compatible voices, and provider plugins |
|
|
61
|
-
| 🤗 | **Hugging Face Hub** | Discover Hub models and compatible GGUF files from the UI |
|
|
62
|
-
| 🔐 | **Auth & Signup Safety** | Local accounts, GitHub/Hugging Face OAuth, roles, and optional Turnstile |
|
|
63
|
-
| 🌍 | **25+ Languages** | Full i18n coverage from Arabic to Vietnamese |
|
|
64
|
-
| 🖥️ | **Desktop App** | Electron builds for macOS, Windows, and Linux |
|
|
65
|
-
| 🤖 | **AI Agent Support** | Libre Claw runs, approvals, tools, schedules, memory, and usage |
|
|
66
|
-
| 🏢 | **Self-Hosted Ops** | Docker, Kubernetes, SQLite storage, encrypted credentials, and backups |
|
|
47
|
+
Do not trust the pitch. Inspect the [license](https://github.com/libre-webui/libre-webui/blob/main/LICENSE), [charter](https://github.com/libre-webui/libre-webui/blob/main/CHARTER.md), [source](https://github.com/libre-webui/libre-webui), and [CI](https://github.com/libre-webui/libre-webui/actions).
|
|
67
48
|
|
|
68
|
-
|
|
49
|
+
| What stays yours | Libre WebUI's approach | Verify it |
|
|
50
|
+
| --------------------- | ----------------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
|
|
51
|
+
| **Data path** | Self-hosted by default; remote inference only when you select it | [Deployment docs](https://docs.librewebui.org/DOCKER) |
|
|
52
|
+
| **Model choice** | Local Ollama plus optional provider plugins and OpenAI-compatible endpoints | [Plugin architecture](https://docs.librewebui.org/PLUGIN_ARCHITECTURE) |
|
|
53
|
+
| **Code** | Use, modify, redistribute, and fork under Apache 2.0 | [License](https://github.com/libre-webui/libre-webui/blob/main/LICENSE) |
|
|
54
|
+
| **Project direction** | The charter rejects funding control over the roadmap, license, or community | [Charter](https://github.com/libre-webui/libre-webui/blob/main/CHARTER.md) |
|
|
55
|
+
| **Participation** | Contributors and users are welcome regardless of background, identity, or geography | [Charter](https://github.com/libre-webui/libre-webui/blob/main/CHARTER.md) |
|
|
56
|
+
| **Exit** | Your installation and your fork do not need our permission | [Source](https://github.com/libre-webui/libre-webui) |
|
|
69
57
|
|
|
70
|
-
##
|
|
58
|
+
## Start in one command
|
|
71
59
|
|
|
72
|
-
|
|
60
|
+
With [Node.js 20 or newer](https://nodejs.org):
|
|
73
61
|
|
|
74
62
|
```bash
|
|
75
63
|
npx libre-webui
|
|
76
64
|
```
|
|
77
65
|
|
|
78
|
-
|
|
66
|
+
Open [http://localhost:8080](http://localhost:8080). The first account created on a fresh install becomes the administrator.
|
|
79
67
|
|
|
80
|
-
For
|
|
68
|
+
For private local inference, install [Ollama](https://ollama.com) and pull a model:
|
|
81
69
|
|
|
82
70
|
```bash
|
|
83
71
|
ollama pull gemma3:4b
|
|
84
72
|
```
|
|
85
73
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
### 🐳 Docker
|
|
89
|
-
|
|
90
|
-
```bash
|
|
91
|
-
# With bundled Ollama
|
|
92
|
-
docker compose up -d
|
|
93
|
-
|
|
94
|
-
# With your existing Ollama
|
|
95
|
-
docker compose -f docker-compose.external-ollama.yml up -d
|
|
96
|
-
|
|
97
|
-
# GPU support (NVIDIA)
|
|
98
|
-
docker compose -f docker-compose.gpu.yml up -d
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
### 🍺 Homebrew (macOS)
|
|
102
|
-
|
|
103
|
-
```bash
|
|
104
|
-
brew tap libre-webui/tap && brew install libre-webui
|
|
105
|
-
libre-webui
|
|
106
|
-
|
|
107
|
-
# Or install the desktop app
|
|
108
|
-
brew install --cask libre-webui
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
### ☸️ Kubernetes
|
|
112
|
-
|
|
113
|
-
```bash
|
|
114
|
-
helm install libre-webui oci://ghcr.io/libre-webui/charts/libre-webui
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
### 🖥️ Desktop App
|
|
118
|
-
|
|
119
|
-
Download from [GitHub Releases](https://github.com/libre-webui/libre-webui/releases) — available for **macOS**, **Windows**, and **Linux**.
|
|
120
|
-
|
|
121
|
-
### 🛠️ From Source
|
|
122
|
-
|
|
123
|
-
```bash
|
|
124
|
-
git clone https://github.com/libre-webui/libre-webui
|
|
125
|
-
cd libre-webui
|
|
126
|
-
cp backend/.env.example backend/.env
|
|
127
|
-
npm install && npm run dev
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
<details>
|
|
131
|
-
<summary><strong>⚙️ Configuration</strong></summary>
|
|
132
|
-
|
|
133
|
-
Edit `backend/.env`:
|
|
134
|
-
|
|
135
|
-
```env
|
|
136
|
-
# Local AI (default — just install Ollama)
|
|
137
|
-
OLLAMA_BASE_URL=http://localhost:11434
|
|
138
|
-
JWT_SECRET=replace-with-a-long-random-secret
|
|
139
|
-
|
|
140
|
-
# Cloud providers (optional — add what you need)
|
|
141
|
-
OPENAI_API_KEY=sk-...
|
|
142
|
-
ANTHROPIC_API_KEY=sk-ant-...
|
|
143
|
-
HUGGINGFACE_API_KEY=hf_...
|
|
144
|
-
|
|
145
|
-
# Optional signup protection
|
|
146
|
-
TURNSTILE_SITE_KEY=...
|
|
147
|
-
TURNSTILE_SECRET_KEY=...
|
|
148
|
-
```
|
|
149
|
-
|
|
150
|
-
</details>
|
|
74
|
+
That is enough to start. Cloud accounts are not required. When you do want a remote model, add only the provider you choose.
|
|
151
75
|
|
|
152
|
-
|
|
153
|
-
<summary><strong>🧪 Development builds (unstable)</strong></summary>
|
|
76
|
+
## One workspace. Your choices.
|
|
154
77
|
|
|
155
|
-
|
|
78
|
+
Libre WebUI turns a model endpoint into a complete working environment without taking ownership of the stack around it.
|
|
156
79
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
80
|
+
| | What you can do |
|
|
81
|
+
| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
82
|
+
| **Talk to the model you want** | Stream conversations through local Ollama, Ollama Cloud, bundled providers, or compatible endpoints. Discover and manage models from the UI. |
|
|
83
|
+
| **Bring your own context** | Chat with PDF and plain-text documents using keyword retrieval or optional semantic embeddings. |
|
|
84
|
+
| **Turn answers into work** | Preview sandboxed HTML, SVG, JSON, code, and multi-file artifacts beside the conversation. |
|
|
85
|
+
| **Create with more than text** | Generate images, use provider-backed speech, and build reusable personas with prompts, parameters, and memory. |
|
|
86
|
+
| **Make the interface yours** | Keep light or dark mode across refreshes, apply an adaptive accent theme, and work in 25 languages/locales including Arabic RTL. |
|
|
87
|
+
| **Operate it your way** | Use local accounts, roles, optional OAuth, Docker, Kubernetes, npm, or the Electron desktop client. |
|
|
88
|
+
| **Extend without lock-in** | Configure chat, embeddings, image generation, and text-to-speech providers through the plugin layer. |
|
|
160
89
|
|
|
161
|
-
|
|
90
|
+
## Local-first is a real boundary
|
|
162
91
|
|
|
163
|
-
|
|
92
|
+
Libre WebUI ships without application telemetry or analytics. When you use Ollama locally, prompts and responses stay on the infrastructure you control. If you select a remote provider, that provider receives the requests you choose to send to it; Libre WebUI does not pretend otherwise.
|
|
164
93
|
|
|
165
|
-
|
|
94
|
+
For shared and public deployments, the backend includes:
|
|
166
95
|
|
|
167
|
-
|
|
96
|
+
- Local accounts with bcrypt password hashing and JWT sessions
|
|
97
|
+
- Admin and user roles, login/signup rate limits, and optional Cloudflare Turnstile
|
|
98
|
+
- Optional GitHub and Hugging Face OAuth
|
|
99
|
+
- Application-layer AES-256-GCM encryption for supported sensitive values such as credentials
|
|
100
|
+
- Persistent SQLite storage, configurable data directories, and documented backup practices
|
|
168
101
|
|
|
169
|
-
|
|
170
|
-
┌─────────────────────────────────────────────┐
|
|
171
|
-
│ Libre WebUI │
|
|
172
|
-
├──────────────────┬──────────────────────────┤
|
|
173
|
-
│ React 18 + TS │ Express 5 + SQLite │
|
|
174
|
-
│ Frontend │ Backend │
|
|
175
|
-
│ (Vite) │ (JWT + encrypted vals) │
|
|
176
|
-
├──────────────────┴──────────────────────────┤
|
|
177
|
-
│ Plugin Layer │
|
|
178
|
-
│ Ollama │ OpenAI │ Anthropic │ Google │ … │
|
|
179
|
-
├─────────────────────────────────────────────┤
|
|
180
|
-
│ Electron (Desktop) │ Docker │ Kubernetes │
|
|
181
|
-
└─────────────────────────────────────────────┘
|
|
182
|
-
```
|
|
102
|
+
Application-layer encryption is not full-disk or end-to-end encryption. Use HTTPS, access-controlled storage, stable secrets, and disk encryption where your threat model requires them. Start with the [authentication guide](https://docs.librewebui.org/AUTHENTICATION) and [encryption guide](https://docs.librewebui.org/DATABASE_ENCRYPTION).
|
|
183
103
|
|
|
184
|
-
|
|
185
|
-
- **Backend:** Express 5, SQLite, JWT auth, rate limits, SSE/WebSocket streaming
|
|
186
|
-
- **Plugins:** JSON config files with per-user credentials, variables, and model discovery
|
|
187
|
-
- **Desktop:** Electron with native macOS/Windows/Linux builds
|
|
104
|
+
## Models and providers without a single-provider worldview
|
|
188
105
|
|
|
189
|
-
|
|
106
|
+
Ollama is the local path, not a lock-in strategy. Libre WebUI bundles provider definitions spanning chat, images, embeddings, speech, and OpenAI-compatible services, including OpenAI, Anthropic, Google Gemini, Groq, Mistral, OpenRouter, Hugging Face, GitHub Models, ComfyUI, ElevenLabs, Qwen3-TTS, and Kyutai TTS.
|
|
190
107
|
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
Add any AI provider with a JSON file — no code changes needed:
|
|
194
|
-
|
|
195
|
-
```json
|
|
196
|
-
{
|
|
197
|
-
"id": "my-provider",
|
|
198
|
-
"name": "My Provider",
|
|
199
|
-
"type": "completion",
|
|
200
|
-
"endpoint": "https://api.example.com/v1/chat/completions",
|
|
201
|
-
"auth": {
|
|
202
|
-
"header": "Authorization",
|
|
203
|
-
"prefix": "Bearer ",
|
|
204
|
-
"key_env": "MY_API_KEY"
|
|
205
|
-
},
|
|
206
|
-
"model_map": ["model-a", "model-b"]
|
|
207
|
-
}
|
|
208
|
-
```
|
|
108
|
+
Credentials can come from deployment-wide environment variables or encrypted, user-scoped settings. Plugins can define static model fallbacks and use live discovery when a provider exposes a compatible model-list endpoint.
|
|
209
109
|
|
|
210
|
-
|
|
110
|
+
[Explore the plugin system →](https://docs.librewebui.org/PLUGIN_ARCHITECTURE)
|
|
211
111
|
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
📖 [Full plugin docs →](./docs/08-PLUGIN_ARCHITECTURE.md)
|
|
215
|
-
|
|
216
|
-
---
|
|
112
|
+
## Local agents, with the runtime kept separate
|
|
217
113
|
|
|
218
|
-
|
|
114
|
+
[Libre Claw](https://github.com/kroonen-ai/libre-claw) is an optional, admin-controlled local agent runtime. Libre WebUI provides the authenticated control surface for durable runs, timelines, approvals, schedules, usage, and configuration; Libre Claw owns the tools, memory, permission model, and execution.
|
|
219
115
|
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
- 📊 **Usage** — inspect provider usage and fallback behavior
|
|
234
|
-
|
|
235
|
-
Start Libre Claw locally:
|
|
236
|
-
|
|
237
|
-
```bash
|
|
238
|
-
libre-claw start
|
|
116
|
+
```text
|
|
117
|
+
Browser or desktop client
|
|
118
|
+
│
|
|
119
|
+
▼
|
|
120
|
+
Libre WebUI interface
|
|
121
|
+
React + TypeScript
|
|
122
|
+
│
|
|
123
|
+
▼
|
|
124
|
+
Express API + WebSocket ─────► SQLite
|
|
125
|
+
│
|
|
126
|
+
├────────► Ollama (local models)
|
|
127
|
+
├────────► selected provider plugins
|
|
128
|
+
└────────► Libre Claw (optional agent runtime)
|
|
239
129
|
```
|
|
240
130
|
|
|
241
|
-
|
|
242
|
-
`http://127.0.0.1:8766` by default, or to `LIBRE_CLAW_BASE_URL` when configured.
|
|
243
|
-
|
|
244
|
-
> **Your agent, your workspace, your data.** Libre WebUI provides the browser
|
|
245
|
-
> control surface while Libre Claw keeps the local agent runtime, safety model,
|
|
246
|
-
> memory, tools, and schedules.
|
|
247
|
-
|
|
248
|
-
📖 [Libre Claw integration docs →](./docs/31-LIBRE_CLAW_INTEGRATION.md)
|
|
131
|
+
The WebUI backend does not execute Libre Claw's shell or browser tools itself. It proxies authenticated admin actions to the separately running daemon, where approvals and safety rules remain authoritative.
|
|
249
132
|
|
|
250
|
-
|
|
133
|
+
[Read the Libre Claw integration guide →](https://docs.librewebui.org/LIBRE_CLAW_INTEGRATION)
|
|
251
134
|
|
|
252
|
-
##
|
|
135
|
+
## Deploy on your terms
|
|
253
136
|
|
|
254
|
-
|
|
137
|
+
| Path | Command or link | Best for |
|
|
138
|
+
| ------------------- | ----------------------------------------------------------------------- | --------------------------------------------------- |
|
|
139
|
+
| **npm** | `npx libre-webui` | The fastest local start |
|
|
140
|
+
| **Docker + Ollama** | `docker compose up -d` | Persistent self-hosting in one stack |
|
|
141
|
+
| **External Ollama** | `docker compose -f docker-compose.external-ollama.yml up -d` | An existing local or remote Ollama service |
|
|
142
|
+
| **NVIDIA Docker** | `docker compose -f docker-compose.gpu.yml up -d` | Local GPU inference |
|
|
143
|
+
| **Kubernetes** | `helm install libre-webui oci://ghcr.io/libre-webui/charts/libre-webui` | Cluster deployments |
|
|
144
|
+
| **Desktop client** | [GitHub Releases](https://github.com/libre-webui/libre-webui/releases) | Electron client builds; the backend runs separately |
|
|
145
|
+
| **Source** | `npm install && npm run dev` | Development and contribution |
|
|
255
146
|
|
|
256
|
-
|
|
147
|
+
Docker commands assume you have cloned this repository. Production deployments should set stable `JWT_SECRET` and `ENCRYPTION_KEY` values, persist the data directory, back up the database and key together, and terminate public traffic with HTTPS.
|
|
257
148
|
|
|
258
|
-
|
|
259
|
-
2. `npm install && npm run dev`
|
|
260
|
-
3. Make your changes on a branch off `dev`
|
|
261
|
-
4. Open a PR — one approving review from the TSC and you're in
|
|
149
|
+
[Docker](https://docs.librewebui.org/DOCKER) · [Kubernetes](https://docs.librewebui.org/KUBERNETES) · [Environment variables](https://docs.librewebui.org/ENVIRONMENT_VARIABLES) · [Hardware guide](https://docs.librewebui.org/HARDWARE_REQUIREMENTS)
|
|
262
150
|
|
|
263
|
-
|
|
151
|
+
## Built from experience, for independence
|
|
264
152
|
|
|
265
|
-
-
|
|
266
|
-
- 💡 **Feature ideas** — start a discussion
|
|
267
|
-
- 🌍 **Translations** — help us reach more languages
|
|
268
|
-
- 📖 **Documentation** — every improvement helps
|
|
269
|
-
- 🔌 **Plugins** — share your provider configs
|
|
153
|
+
Libre WebUI is built around a hard-earned lesson: source availability alone does not guarantee shared power. Our response is constructive—compete by shipping better software and stronger commitments that anyone can inspect.
|
|
270
154
|
|
|
271
|
-
|
|
155
|
+
That means local-first defaults without forbidding the cloud, commercial support without changing the core license, and a community where identity, background, or geography never determines who belongs. Kroonen AI maintains Libre WebUI under the project's public charter, which accepts donations or grants only when they do not control the roadmap, license, or community.
|
|
272
156
|
|
|
273
|
-
|
|
157
|
+
**Freedom should not be a phase in a startup's growth plan. It should be part of the architecture.**
|
|
274
158
|
|
|
275
|
-
|
|
159
|
+
## Build with us
|
|
276
160
|
|
|
277
|
-
|
|
161
|
+
Libre WebUI is for people who want excellent AI software and the freedom to outgrow its maintainers.
|
|
278
162
|
|
|
279
|
-
|
|
163
|
+
1. Fork and clone the repository.
|
|
164
|
+
2. Create a branch from `dev`.
|
|
165
|
+
3. Run `npm install && npm run dev`.
|
|
166
|
+
4. Add tests and documentation with your change.
|
|
167
|
+
5. Open a pull request against `dev`.
|
|
280
168
|
|
|
281
|
-
|
|
282
|
-
- 🚫 **Zero telemetry** — no analytics, no tracking, no phone-home. Ever.
|
|
283
|
-
- 🏛️ **Community governance** — transparent decisions, public roadmap
|
|
284
|
-
- 🤝 **No VC capture** — funded by the community, for the community
|
|
285
|
-
- ✊ **Ethical use** — we actively oppose surveillance and weapons applications
|
|
169
|
+
You can also help by [reporting bugs](https://github.com/libre-webui/libre-webui/issues), improving documentation, translating the interface, or contributing provider definitions.
|
|
286
170
|
|
|
287
|
-
|
|
171
|
+
All participation follows the [Contributor Covenant 2.1](https://www.contributor-covenant.org/version/2/1/code_of_conduct/) and the [Libre WebUI Community & Ethical Charter](https://github.com/libre-webui/libre-webui/blob/main/CHARTER.md). Report security issues privately to **security@kroonen.ai**.
|
|
288
172
|
|
|
289
|
-
##
|
|
173
|
+
## Stewardship and support
|
|
290
174
|
|
|
291
|
-
|
|
175
|
+
[Kroonen AI](https://kroonen.ai) funds development and provides professional deployment, integration, security review, training, customization, and SLA-backed support. Commercial services do not change the Apache 2.0 license of the core project.
|
|
292
176
|
|
|
293
|
-
|
|
294
|
-
| ------------------------ | ------------------------------------------------- |
|
|
295
|
-
| **Custom Deployment** | On-prem, cloud, private-network, and Kubernetes |
|
|
296
|
-
| **Identity & Access** | OAuth setup, role design, and enterprise planning |
|
|
297
|
-
| **Custom Development** | Integrations, white-labeling, and plugins |
|
|
298
|
-
| **Security Reviews** | Deployment hardening and control documentation |
|
|
299
|
-
| **SLA-Backed Support** | Priority response and dedicated channels |
|
|
300
|
-
| **Air-Gapped Workflows** | Offline deployments and local model operations |
|
|
177
|
+
For enterprise work, contact **enterprise@kroonen.ai**. To support independent development directly, [sponsor Libre WebUI](https://github.com/sponsors/libre-webui).
|
|
301
178
|
|
|
302
|
-
|
|
179
|
+
## Project links
|
|
303
180
|
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
|
309
|
-
|
|
|
310
|
-
|
|
|
311
|
-
|
|
|
312
|
-
|
|
|
313
|
-
| 🦊 **GitLab** | [git.kroonen.ai/libre-webui](https://git.kroonen.ai/libre-webui/libre-webui) |
|
|
314
|
-
| 🤗 **Hugging Face** | [huggingface.co/libre-webui](https://huggingface.co/libre-webui) |
|
|
315
|
-
| 𝕏 **Twitter** | [@librewebui](https://x.com/librewebui) |
|
|
316
|
-
| 🐘 **Mastodon** | [@librewebui@fosstodon.org](https://fosstodon.org/@librewebui) |
|
|
317
|
-
| ❤️ **Sponsor** | [github.com/sponsors/libre-webui](https://github.com/sponsors/libre-webui) |
|
|
181
|
+
| | |
|
|
182
|
+
| ----------------- | ---------------------------------------------------------------------------------------- |
|
|
183
|
+
| **Website** | [librewebui.org](https://librewebui.org) |
|
|
184
|
+
| **Documentation** | [docs.librewebui.org](https://docs.librewebui.org) |
|
|
185
|
+
| **Releases** | [GitHub Releases](https://github.com/libre-webui/libre-webui/releases) |
|
|
186
|
+
| **GitHub** | [github.com/libre-webui/libre-webui](https://github.com/libre-webui/libre-webui) |
|
|
187
|
+
| **GitLab mirror** | [git.kroonen.ai/libre-webui/libre-webui](https://git.kroonen.ai/libre-webui/libre-webui) |
|
|
188
|
+
| **Hugging Face** | [huggingface.co/libre-webui](https://huggingface.co/libre-webui) |
|
|
189
|
+
| **Sponsor** | [github.com/sponsors/libre-webui](https://github.com/sponsors/libre-webui) |
|
|
318
190
|
|
|
319
191
|
---
|
|
320
192
|
|
|
321
193
|
<div align="center">
|
|
322
194
|
|
|
323
|
-
###
|
|
195
|
+
### If Libre WebUI gives you more control, give it a star.
|
|
324
196
|
|
|
325
|
-
|
|
197
|
+
Stars help independent software get discovered without buying attention.
|
|
326
198
|
|
|
327
|
-
<a href="https://github.com/libre-webui/libre-webui"><img src="https://img.shields.io/github/stars/libre-webui/libre-webui?style=for-the-badge&label=Star%
|
|
199
|
+
<a href="https://github.com/libre-webui/libre-webui"><img src="https://img.shields.io/github/stars/libre-webui/libre-webui?style=for-the-badge&label=Star%20Libre%20WebUI&color=f59e0b" alt="Star Libre WebUI on GitHub"></a>
|
|
328
200
|
|
|
329
201
|
<br><br>
|
|
330
202
|
|
|
331
|
-
**Apache 2.0
|
|
332
|
-
|
|
333
|
-
Built with ❤️ by [Kroonen AI](https://kroonen.ai) and the open-source community
|
|
203
|
+
**Apache 2.0** · Copyright © 2025–present Kroonen AI, Inc. and Libre WebUI contributors<br>
|
|
204
|
+
Built by [Kroonen AI](https://kroonen.ai) and the open-source community
|
|
334
205
|
|
|
335
206
|
</div>
|
package/backend/dist/index.js
CHANGED
|
@@ -334,7 +334,7 @@ app.use('/api/users', usersRateLimiter, optionalAuth, usersRoutes);
|
|
|
334
334
|
app.use('/api/ollama', ollamaRateLimiter, ollamaRoutes);
|
|
335
335
|
app.use('/api/chat', chatRateLimiter, optionalAuth, chatRoutes);
|
|
336
336
|
app.use('/api/preferences', preferencesRateLimiter, optionalAuth, preferencesRoutes);
|
|
337
|
-
app.use('/api/plugins', pluginRoutes);
|
|
337
|
+
app.use('/api/plugins', optionalAuth, pluginRoutes);
|
|
338
338
|
app.use('/api/embeddings', embeddingsRoutes);
|
|
339
339
|
app.use('/api/documents', documentsRateLimiter, documentRoutes);
|
|
340
340
|
app.use('/api/personas', personasRateLimiter, optionalAuth, personaRoutes);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/routes/chat.ts"],"names":[],"mappings":"AAuCA,QAAA,MAAM,MAAM,4CAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/routes/chat.ts"],"names":[],"mappings":"AAuCA,QAAA,MAAM,MAAM,4CAAmB,CAAC;AAkwBhC,eAAe,MAAM,CAAC"}
|
|
@@ -475,7 +475,11 @@ router.post('/sessions/:sessionId/generate-title', async (req, res) => {
|
|
|
475
475
|
}
|
|
476
476
|
res.json({
|
|
477
477
|
success: true,
|
|
478
|
-
data: {
|
|
478
|
+
data: {
|
|
479
|
+
title: titleResult.title,
|
|
480
|
+
source: titleResult.source,
|
|
481
|
+
updatedAt: titleResult.session.updatedAt,
|
|
482
|
+
},
|
|
479
483
|
});
|
|
480
484
|
}
|
|
481
485
|
catch (error) {
|