libre-webui 0.7.0 → 0.8.0
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 +93 -1
- package/backend/dist/index.d.ts.map +1 -1
- package/backend/dist/index.js +426 -57
- package/backend/dist/index.js.map +1 -1
- package/backend/dist/routes/ollama.d.ts.map +1 -1
- package/backend/dist/routes/ollama.js +40 -0
- package/backend/dist/routes/ollama.js.map +1 -1
- package/backend/dist/routes/plugins.d.ts.map +1 -1
- package/backend/dist/routes/plugins.js +17 -0
- package/backend/dist/routes/plugins.js.map +1 -1
- package/backend/dist/services/ollamaService.d.ts +2 -0
- package/backend/dist/services/ollamaService.d.ts.map +1 -1
- package/backend/dist/services/ollamaService.js +31 -0
- package/backend/dist/services/ollamaService.js.map +1 -1
- package/backend/dist/services/openclawSessionService.d.ts +63 -0
- package/backend/dist/services/openclawSessionService.d.ts.map +1 -0
- package/backend/dist/services/openclawSessionService.js +307 -0
- package/backend/dist/services/openclawSessionService.js.map +1 -0
- package/backend/dist/services/pluginService.d.ts +20 -0
- package/backend/dist/services/pluginService.d.ts.map +1 -1
- package/backend/dist/services/pluginService.js +250 -6
- package/backend/dist/services/pluginService.js.map +1 -1
- package/frontend/dist/assets/index-BHPEXBOC.js +51 -0
- package/frontend/dist/index.html +2 -2
- package/frontend/dist/js/{ArtifactContainer-D_igWPrR.js → ArtifactContainer-CR_N0zJa.js} +2 -2
- package/frontend/dist/js/{ArtifactDemoPage-BW64ikxs.js → ArtifactDemoPage-B4i0y1r8.js} +1 -1
- package/frontend/dist/js/{ChatPage-CIUGXjJ_.js → ChatPage-CNZjHhUr.js} +16 -16
- package/frontend/dist/js/{GalleryPage-CMqUQtns.js → GalleryPage-BwPcUdbX.js} +1 -1
- package/frontend/dist/js/ModelsPage-2EzbE4Sf.js +1 -0
- package/frontend/dist/js/PersonasPage-CZrFe-EX.js +13 -0
- package/frontend/dist/js/{UserManagementPage-C4vtOCZ6.js → UserManagementPage-doHbL51e.js} +1 -1
- package/frontend/dist/js/{ui-vendor-DxZsuKzb.js → ui-vendor-BxYipEVo.js} +1 -1
- package/package.json +2 -1
- package/plugins/openclaw-agent.json +69 -0
- package/frontend/dist/assets/index-DMlahgv7.js +0 -51
- package/frontend/dist/js/ModelsPage-DQ2ud-YG.js +0 -1
- package/frontend/dist/js/PersonasPage-HqcbbtTL.js +0 -13
package/README.md
CHANGED
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
<img src="https://img.shields.io/badge/SOC_2-Ready-purple" alt="SOC 2 Ready">
|
|
27
27
|
</p>
|
|
28
28
|
|
|
29
|
-
[Website](https://librewebui.org) • [Documentation](https://docs.librewebui.org) • [𝕏](https://x.com/librewebui) • [Sponsor](https://github.com/sponsors/libre-webui) • [Get Started](#quick-start)
|
|
29
|
+
[Website](https://librewebui.org) • [Documentation](https://docs.librewebui.org) • [GitLab](https://git.kroonen.ai/libre-webui/libre-webui) • [𝕏](https://x.com/librewebui) • [Sponsor](https://github.com/sponsors/libre-webui) • [Get Started](#quick-start)
|
|
30
30
|
|
|
31
31
|
</div>
|
|
32
32
|
|
|
@@ -61,7 +61,9 @@ A simple, self-hosted interface for AI chat. Run it locally with Ollama, connect
|
|
|
61
61
|
- **Local**: Ollama (full integration)
|
|
62
62
|
- **Cloud**: OpenAI, Anthropic, Google, Groq, Mistral, OpenRouter, HuggingFace, and more
|
|
63
63
|
- **HuggingFace Hub** — 1M+ models for chat, TTS, image gen, embeddings, STT
|
|
64
|
+
- **Image Generation** — ComfyUI with Flux models
|
|
64
65
|
- **Plugin System** — Add any OpenAI-compatible API via JSON config
|
|
66
|
+
- **Plugin Variables** — Per-plugin configurable settings (temperature, endpoint, etc.)
|
|
65
67
|
|
|
66
68
|
</td>
|
|
67
69
|
<td width="50%">
|
|
@@ -205,6 +207,95 @@ ANTHROPIC_API_KEY=sk-ant-...
|
|
|
205
207
|
HUGGINGFACE_API_KEY=hf_...
|
|
206
208
|
```
|
|
207
209
|
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
## Plugin System
|
|
213
|
+
|
|
214
|
+
Plugins let you connect any OpenAI-compatible (or custom) API to Libre WebUI using a simple JSON file. Built-in plugins are included for OpenAI, Anthropic, Google Gemini, Groq, Mistral, OpenRouter, HuggingFace, and more.
|
|
215
|
+
|
|
216
|
+
### How It Works
|
|
217
|
+
|
|
218
|
+
A plugin is a JSON config file stored in the `plugins/` directory. Each plugin defines:
|
|
219
|
+
|
|
220
|
+
- **Endpoint** — The API URL to send requests to
|
|
221
|
+
- **Auth** — How to authenticate (header name, prefix, env variable fallback)
|
|
222
|
+
- **Model map** — Which models the plugin supports
|
|
223
|
+
- **Capabilities** — Optional multi-capability support (chat, TTS, image generation, embeddings, STT)
|
|
224
|
+
- **Variables** — Per-plugin configurable settings users can adjust from the UI
|
|
225
|
+
|
|
226
|
+
### Example Plugin
|
|
227
|
+
|
|
228
|
+
```json
|
|
229
|
+
{
|
|
230
|
+
"id": "my-provider",
|
|
231
|
+
"name": "My Provider",
|
|
232
|
+
"type": "completion",
|
|
233
|
+
"endpoint": "https://api.example.com/v1/chat/completions",
|
|
234
|
+
"auth": {
|
|
235
|
+
"header": "Authorization",
|
|
236
|
+
"prefix": "Bearer ",
|
|
237
|
+
"key_env": "MY_PROVIDER_API_KEY"
|
|
238
|
+
},
|
|
239
|
+
"model_map": ["model-a", "model-b"],
|
|
240
|
+
"variables": [
|
|
241
|
+
{
|
|
242
|
+
"name": "temperature",
|
|
243
|
+
"type": "number",
|
|
244
|
+
"label": "Temperature",
|
|
245
|
+
"description": "Controls randomness.",
|
|
246
|
+
"default": 0.7,
|
|
247
|
+
"min": 0,
|
|
248
|
+
"max": 2
|
|
249
|
+
}
|
|
250
|
+
]
|
|
251
|
+
}
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
### Plugin Management
|
|
255
|
+
|
|
256
|
+
Plugins are managed from **Settings > Plugins** in the UI where you can:
|
|
257
|
+
|
|
258
|
+
- **Upload** a JSON plugin file or paste JSON directly
|
|
259
|
+
- **Browse HuggingFace** to discover and import models
|
|
260
|
+
- **Activate/deactivate** plugins
|
|
261
|
+
- **Set API keys** per plugin (encrypted at rest with AES-256-GCM, with env variable fallback)
|
|
262
|
+
- **Configure variables** — override endpoint, temperature, max tokens, and other settings per plugin
|
|
263
|
+
- **Export** plugins as JSON
|
|
264
|
+
|
|
265
|
+
### Plugin Variables
|
|
266
|
+
|
|
267
|
+
Variables are typed settings defined in the plugin JSON that users can configure from the UI. Supported types: `string`, `number`, `boolean`, `select`. Sensitive variables (like API keys) are encrypted in the database. Variable values are stored per-user.
|
|
268
|
+
|
|
269
|
+
### Multi-Capability Plugins
|
|
270
|
+
|
|
271
|
+
A single plugin can support multiple capabilities. For example, OpenAI's plugin handles both chat completions and TTS:
|
|
272
|
+
|
|
273
|
+
```json
|
|
274
|
+
{
|
|
275
|
+
"id": "openai",
|
|
276
|
+
"type": "completion",
|
|
277
|
+
"endpoint": "https://api.openai.com/v1/chat/completions",
|
|
278
|
+
"capabilities": {
|
|
279
|
+
"tts": {
|
|
280
|
+
"endpoint": "https://api.openai.com/v1/audio/speech",
|
|
281
|
+
"model_map": ["tts-1", "tts-1-hd"],
|
|
282
|
+
"config": {
|
|
283
|
+
"voices": ["alloy", "echo", "nova", "shimmer"],
|
|
284
|
+
"default_voice": "alloy"
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
### Creating Custom Plugins
|
|
292
|
+
|
|
293
|
+
To add a new provider, create a JSON file in the `plugins/` directory following the schema above, or upload one through the UI. Any OpenAI-compatible API works out of the box — just set the correct endpoint and auth config.
|
|
294
|
+
|
|
295
|
+
For the full plugin reference (variables, credentials, security, API endpoints), see the [Plugin Architecture docs](./docs/08-PLUGIN_ARCHITECTURE.md).
|
|
296
|
+
|
|
297
|
+
---
|
|
298
|
+
|
|
208
299
|
### Desktop App (In Development)
|
|
209
300
|
|
|
210
301
|
> **Note:** The desktop app is currently in active development. The macOS build is pending Apple notarization, which may cause security warnings or installation issues on some systems. We're working to resolve this. Feedback and bug reports are welcome!
|
|
@@ -252,6 +343,7 @@ Download the native desktop app from [GitHub Releases](https://github.com/libre-
|
|
|
252
343
|
- [Contributing](https://github.com/libre-webui/libre-webui/contribute) — Help improve Libre WebUI
|
|
253
344
|
- [𝕏 @librewebui](https://x.com/librewebui) — Follow for updates
|
|
254
345
|
- [Mastodon](https://fosstodon.org/@librewebui) — Fediverse updates
|
|
346
|
+
- [GitLab](https://git.kroonen.ai/libre-webui/libre-webui) — Self-hosted mirror
|
|
255
347
|
- [GitHub Issues](https://github.com/libre-webui/libre-webui/issues) — Bug reports & feature requests
|
|
256
348
|
- [Documentation](https://docs.librewebui.org) — Guides & API reference
|
|
257
349
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAkBA,OAAO,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAkBA,OAAO,UAAU,CAAC;AAkFlB,QAAA,MAAM,GAAG,6CAAY,CAAC;AAkgDtB,eAAe,GAAG,CAAC"}
|