libre-webui 0.15.1 → 0.16.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.
Files changed (196) hide show
  1. package/backend/dist/db.d.ts.map +1 -1
  2. package/backend/dist/db.js +63 -0
  3. package/backend/dist/db.js.map +1 -1
  4. package/backend/dist/index.d.ts.map +1 -1
  5. package/backend/dist/index.js +4 -4
  6. package/backend/dist/index.js.map +1 -1
  7. package/backend/dist/routes/chat.d.ts.map +1 -1
  8. package/backend/dist/routes/chat.js +93 -10
  9. package/backend/dist/routes/chat.js.map +1 -1
  10. package/backend/dist/routes/imageGen.d.ts.map +1 -1
  11. package/backend/dist/routes/imageGen.js +52 -29
  12. package/backend/dist/routes/imageGen.js.map +1 -1
  13. package/backend/dist/routes/plugins.d.ts.map +1 -1
  14. package/backend/dist/routes/plugins.js +218 -41
  15. package/backend/dist/routes/plugins.js.map +1 -1
  16. package/backend/dist/routes/preferences.d.ts.map +1 -1
  17. package/backend/dist/routes/preferences.js +5 -4
  18. package/backend/dist/routes/preferences.js.map +1 -1
  19. package/backend/dist/routes/tts.js +2 -2
  20. package/backend/dist/routes/tts.js.map +1 -1
  21. package/backend/dist/services/assistantCompletionService.d.ts +2 -1
  22. package/backend/dist/services/assistantCompletionService.d.ts.map +1 -1
  23. package/backend/dist/services/assistantCompletionService.js +3 -1
  24. package/backend/dist/services/assistantCompletionService.js.map +1 -1
  25. package/backend/dist/services/chatGenerationService.d.ts +5 -3
  26. package/backend/dist/services/chatGenerationService.d.ts.map +1 -1
  27. package/backend/dist/services/chatGenerationService.js +18 -6
  28. package/backend/dist/services/chatGenerationService.js.map +1 -1
  29. package/backend/dist/services/chatRequestService.d.ts +6 -4
  30. package/backend/dist/services/chatRequestService.d.ts.map +1 -1
  31. package/backend/dist/services/chatRequestService.js +10 -2
  32. package/backend/dist/services/chatRequestService.js.map +1 -1
  33. package/backend/dist/services/chatService.d.ts +2 -2
  34. package/backend/dist/services/chatService.d.ts.map +1 -1
  35. package/backend/dist/services/chatService.js +29 -17
  36. package/backend/dist/services/chatService.js.map +1 -1
  37. package/backend/dist/services/embeddingService.js +1 -1
  38. package/backend/dist/services/embeddingService.js.map +1 -1
  39. package/backend/dist/services/pluginActivationService.d.ts +11 -0
  40. package/backend/dist/services/pluginActivationService.d.ts.map +1 -0
  41. package/backend/dist/services/pluginActivationService.js +163 -0
  42. package/backend/dist/services/pluginActivationService.js.map +1 -0
  43. package/backend/dist/services/pluginCapabilityRegistryService.d.ts +1 -1
  44. package/backend/dist/services/pluginCapabilityRegistryService.d.ts.map +1 -1
  45. package/backend/dist/services/pluginCapabilityRegistryService.js +1 -1
  46. package/backend/dist/services/pluginCapabilityRegistryService.js.map +1 -1
  47. package/backend/dist/services/pluginCredentialsService.d.ts +16 -8
  48. package/backend/dist/services/pluginCredentialsService.d.ts.map +1 -1
  49. package/backend/dist/services/pluginCredentialsService.js +47 -14
  50. package/backend/dist/services/pluginCredentialsService.js.map +1 -1
  51. package/backend/dist/services/pluginEmbeddingService.d.ts +2 -2
  52. package/backend/dist/services/pluginEmbeddingService.d.ts.map +1 -1
  53. package/backend/dist/services/pluginEmbeddingService.js +33 -13
  54. package/backend/dist/services/pluginEmbeddingService.js.map +1 -1
  55. package/backend/dist/services/pluginImageGenerationService.d.ts +11 -7
  56. package/backend/dist/services/pluginImageGenerationService.d.ts.map +1 -1
  57. package/backend/dist/services/pluginImageGenerationService.js +265 -81
  58. package/backend/dist/services/pluginImageGenerationService.js.map +1 -1
  59. package/backend/dist/services/pluginService.d.ts +55 -25
  60. package/backend/dist/services/pluginService.d.ts.map +1 -1
  61. package/backend/dist/services/pluginService.js +658 -170
  62. package/backend/dist/services/pluginService.js.map +1 -1
  63. package/backend/dist/services/pluginTTSService.d.ts +4 -4
  64. package/backend/dist/services/pluginTTSService.d.ts.map +1 -1
  65. package/backend/dist/services/pluginTTSService.js +24 -28
  66. package/backend/dist/services/pluginTTSService.js.map +1 -1
  67. package/backend/dist/services/pluginVariablesService.d.ts +6 -1
  68. package/backend/dist/services/pluginVariablesService.d.ts.map +1 -1
  69. package/backend/dist/services/pluginVariablesService.js +59 -1
  70. package/backend/dist/services/pluginVariablesService.js.map +1 -1
  71. package/backend/dist/services/preferencesService.d.ts +2 -2
  72. package/backend/dist/services/preferencesService.d.ts.map +1 -1
  73. package/backend/dist/services/preferencesService.js +78 -10
  74. package/backend/dist/services/preferencesService.js.map +1 -1
  75. package/backend/dist/services/titleGenerationService.d.ts +6 -4
  76. package/backend/dist/services/titleGenerationService.d.ts.map +1 -1
  77. package/backend/dist/services/titleGenerationService.js +9 -5
  78. package/backend/dist/services/titleGenerationService.js.map +1 -1
  79. package/backend/dist/services/workAgentService.d.ts +5 -2
  80. package/backend/dist/services/workAgentService.d.ts.map +1 -1
  81. package/backend/dist/services/workAgentService.js +315 -44
  82. package/backend/dist/services/workAgentService.js.map +1 -1
  83. package/backend/dist/services/workModelProviderService.d.ts +6 -3
  84. package/backend/dist/services/workModelProviderService.d.ts.map +1 -1
  85. package/backend/dist/services/workModelProviderService.js +243 -19
  86. package/backend/dist/services/workModelProviderService.js.map +1 -1
  87. package/backend/dist/services/workTaskService.d.ts +2 -0
  88. package/backend/dist/services/workTaskService.d.ts.map +1 -1
  89. package/backend/dist/services/workTaskService.js +89 -14
  90. package/backend/dist/services/workTaskService.js.map +1 -1
  91. package/backend/dist/storage.d.ts.map +1 -1
  92. package/backend/dist/storage.js +9 -6
  93. package/backend/dist/storage.js.map +1 -1
  94. package/backend/dist/storageMappers.d.ts +3 -0
  95. package/backend/dist/storageMappers.d.ts.map +1 -1
  96. package/backend/dist/storageMappers.js +3 -0
  97. package/backend/dist/storageMappers.js.map +1 -1
  98. package/backend/dist/types/index.d.ts +54 -1
  99. package/backend/dist/types/index.d.ts.map +1 -1
  100. package/backend/dist/types/index.js.map +1 -1
  101. package/backend/dist/types/work.d.ts +1 -1
  102. package/backend/dist/types/work.d.ts.map +1 -1
  103. package/backend/dist/utils/chatContext.d.ts +13 -1
  104. package/backend/dist/utils/chatContext.d.ts.map +1 -1
  105. package/backend/dist/utils/chatContext.js +52 -0
  106. package/backend/dist/utils/chatContext.js.map +1 -1
  107. package/backend/dist/utils/chatProviderSelection.d.ts +15 -0
  108. package/backend/dist/utils/chatProviderSelection.d.ts.map +1 -0
  109. package/backend/dist/utils/chatProviderSelection.js +59 -0
  110. package/backend/dist/utils/chatProviderSelection.js.map +1 -0
  111. package/backend/dist/utils/imageGenerationValidation.d.ts +3 -0
  112. package/backend/dist/utils/imageGenerationValidation.d.ts.map +1 -0
  113. package/backend/dist/utils/imageGenerationValidation.js +55 -0
  114. package/backend/dist/utils/imageGenerationValidation.js.map +1 -0
  115. package/backend/dist/utils/openAIResponsesAdapter.d.ts +88 -0
  116. package/backend/dist/utils/openAIResponsesAdapter.d.ts.map +1 -0
  117. package/backend/dist/utils/openAIResponsesAdapter.js +521 -0
  118. package/backend/dist/utils/openAIResponsesAdapter.js.map +1 -0
  119. package/backend/dist/utils/pluginChatAdapter.d.ts +7 -4
  120. package/backend/dist/utils/pluginChatAdapter.d.ts.map +1 -1
  121. package/backend/dist/utils/pluginChatAdapter.js +33 -5
  122. package/backend/dist/utils/pluginChatAdapter.js.map +1 -1
  123. package/backend/dist/utils/pluginChatContext.d.ts.map +1 -1
  124. package/backend/dist/utils/pluginChatContext.js +5 -1
  125. package/backend/dist/utils/pluginChatContext.js.map +1 -1
  126. package/backend/dist/utils/pluginConnectionVariables.d.ts +6 -0
  127. package/backend/dist/utils/pluginConnectionVariables.d.ts.map +1 -0
  128. package/backend/dist/utils/pluginConnectionVariables.js +52 -0
  129. package/backend/dist/utils/pluginConnectionVariables.js.map +1 -0
  130. package/backend/dist/utils/pluginDefinitionTrust.d.ts +9 -0
  131. package/backend/dist/utils/pluginDefinitionTrust.d.ts.map +1 -0
  132. package/backend/dist/utils/pluginDefinitionTrust.js +71 -0
  133. package/backend/dist/utils/pluginDefinitionTrust.js.map +1 -0
  134. package/backend/dist/utils/pluginStreamAdapter.d.ts +3 -0
  135. package/backend/dist/utils/pluginStreamAdapter.d.ts.map +1 -1
  136. package/backend/dist/utils/pluginStreamAdapter.js +410 -0
  137. package/backend/dist/utils/pluginStreamAdapter.js.map +1 -1
  138. package/backend/dist/utils/pluginStreaming.d.ts +7 -1
  139. package/backend/dist/utils/pluginStreaming.d.ts.map +1 -1
  140. package/backend/dist/utils/pluginStreaming.js +12 -1
  141. package/backend/dist/utils/pluginStreaming.js.map +1 -1
  142. package/backend/dist/utils/pluginValidation.d.ts +20 -2
  143. package/backend/dist/utils/pluginValidation.d.ts.map +1 -1
  144. package/backend/dist/utils/pluginValidation.js +187 -17
  145. package/backend/dist/utils/pluginValidation.js.map +1 -1
  146. package/backend/dist/utils/pluginVariableValidation.d.ts +7 -0
  147. package/backend/dist/utils/pluginVariableValidation.d.ts.map +1 -1
  148. package/backend/dist/utils/pluginVariableValidation.js +79 -4
  149. package/backend/dist/utils/pluginVariableValidation.js.map +1 -1
  150. package/backend/dist/websocketServer.d.ts.map +1 -1
  151. package/backend/dist/websocketServer.js +16 -3
  152. package/backend/dist/websocketServer.js.map +1 -1
  153. package/backend/package.json +1 -1
  154. package/frontend/dist/assets/index-CKV9Lnj8.js +5 -0
  155. package/frontend/dist/assets/index-Dme2Ozol.css +1 -0
  156. package/frontend/dist/index.html +3 -3
  157. package/frontend/dist/js/{ArtifactContainer-BHSBrlQB.js → ArtifactContainer-B0uVR8Z9.js} +1 -1
  158. package/frontend/dist/js/{ArtifactDemoPage-BHGJmJAT.js → ArtifactDemoPage-DBVPHFxk.js} +1 -1
  159. package/frontend/dist/js/{ArtifactSlideOutPanel-s8vcE5Ea.js → ArtifactSlideOutPanel-Cg5kAwv9.js} +1 -1
  160. package/frontend/dist/js/ChatPage-CPHlIZqU.js +16 -0
  161. package/frontend/dist/js/{FirstTimeSetup-BYWAVAdE.js → FirstTimeSetup-DksL5arK.js} +1 -1
  162. package/frontend/dist/js/GalleryPage-1mdUGo_N.js +1 -0
  163. package/frontend/dist/js/LibreClawPage-qGr1Jy8p.js +1 -0
  164. package/frontend/dist/js/ModelSelector-CUnwRmNU.js +1 -0
  165. package/frontend/dist/js/ModelsPage-DMYVg3LT.js +2 -0
  166. package/frontend/dist/js/PersonasPage-Ct-KKW-j.js +13 -0
  167. package/frontend/dist/js/{RichMessageContent-BdU5vXz9.js → RichMessageContent-CGBAcUES.js} +1 -1
  168. package/frontend/dist/js/SettingsModal-BVj3gFCS.js +1 -0
  169. package/frontend/dist/js/UserManagementPage-D3tLGtTu.js +1 -0
  170. package/frontend/dist/js/WorkPage-DhTjy-kf.js +2 -0
  171. package/frontend/dist/js/api-YWoSobKv.js +19 -0
  172. package/frontend/dist/js/{estree-Bu_-Wi6O.js → estree-PDLT672k.js} +1 -1
  173. package/frontend/dist/js/{html-Ca764Rus.js → html-CkhF9wDQ.js} +1 -1
  174. package/frontend/dist/js/{markdown-DaiQGPEs.js → markdown-B1iNUbse.js} +1 -1
  175. package/frontend/dist/js/{standalone-DWWnsbIr.js → standalone-CCd6rkf-.js} +1 -1
  176. package/frontend/dist/js/{typescript-CatjJeHm.js → typescript-DKJ1uM5L.js} +1 -1
  177. package/frontend/dist/js/useBaseQuery-MuQj7vA5.js +1 -0
  178. package/frontend/dist/js/useQuery-CYGPkxWR.js +1 -0
  179. package/package.json +2 -2
  180. package/plugins/github.json +1 -2
  181. package/plugins/huggingface.json +30 -30
  182. package/plugins/openai.json +53 -22
  183. package/frontend/dist/assets/index-DkShhNBf.js +0 -5
  184. package/frontend/dist/assets/index-bdSWBsAM.css +0 -1
  185. package/frontend/dist/js/ChatPage-B6Hm_pdu.js +0 -16
  186. package/frontend/dist/js/GalleryPage-CH4f65q8.js +0 -1
  187. package/frontend/dist/js/LibreClawPage-CcH7M3mJ.js +0 -1
  188. package/frontend/dist/js/ModelSelector-T1KZtIde.js +0 -1
  189. package/frontend/dist/js/ModelsPage-C1bM_Yoc.js +0 -2
  190. package/frontend/dist/js/PersonasPage-T_PrhnPG.js +0 -13
  191. package/frontend/dist/js/SettingsModal-BVj-D1L4.js +0 -1
  192. package/frontend/dist/js/UserManagementPage-Pix71oRW.js +0 -1
  193. package/frontend/dist/js/WorkPage-DdOVGyj_.js +0 -2
  194. package/frontend/dist/js/api-Do6u0tMM.js +0 -19
  195. package/frontend/dist/js/useBaseQuery-CVNuhuID.js +0 -1
  196. package/frontend/dist/js/useQuery-CYhC_da4.js +0 -1
@@ -138,7 +138,7 @@
138
138
  "documentation_url": "https://huggingface.co/docs/inference-providers",
139
139
  "capabilities": {
140
140
  "tts": {
141
- "endpoint": "https://router.huggingface.co/hf-inference/models",
141
+ "endpoint": "https://router.huggingface.co/hf-inference/models/{model}",
142
142
  "model_map": [
143
143
  "facebook/mms-tts-eng",
144
144
  "facebook/mms-tts-fra",
@@ -152,22 +152,17 @@
152
152
  "OuteAI/OuteTTS-0.3-1B"
153
153
  ],
154
154
  "config": {
155
- "voices": [
156
- "default"
157
- ],
155
+ "endpoint_variable": "tts_endpoint",
156
+ "voices": ["default"],
158
157
  "default_voice": "default",
159
- "formats": [
160
- "flac",
161
- "wav",
162
- "mp3"
163
- ],
158
+ "formats": ["flac", "wav", "mp3"],
164
159
  "default_format": "flac",
165
160
  "max_characters": 5000,
166
161
  "supports_streaming": false
167
162
  }
168
163
  },
169
164
  "image": {
170
- "endpoint": "https://router.huggingface.co/hf-inference/models",
165
+ "endpoint": "https://router.huggingface.co/hf-inference/models/{model}",
171
166
  "model_map": [
172
167
  "black-forest-labs/FLUX.1-dev",
173
168
  "black-forest-labs/FLUX.1-schnell",
@@ -181,24 +176,16 @@
181
176
  "segmind/SSD-1B"
182
177
  ],
183
178
  "config": {
184
- "sizes": [
185
- "512x512",
186
- "768x768",
187
- "1024x1024",
188
- "1024x768",
189
- "768x1024"
190
- ],
179
+ "endpoint_variable": "image_endpoint",
180
+ "sizes": ["512x512", "768x768", "1024x1024", "1024x768", "768x1024"],
191
181
  "default_size": "1024x1024",
192
- "qualities": [
193
- "standard",
194
- "high"
195
- ],
182
+ "qualities": ["standard", "high"],
196
183
  "default_quality": "standard",
197
184
  "max_prompt_length": 2000
198
185
  }
199
186
  },
200
- "embeddings": {
201
- "endpoint": "https://router.huggingface.co/hf-inference/models",
187
+ "embedding": {
188
+ "endpoint": "https://router.huggingface.co/hf-inference/models/{model}",
202
189
  "model_map": [
203
190
  "sentence-transformers/all-MiniLM-L6-v2",
204
191
  "sentence-transformers/all-mpnet-base-v2",
@@ -216,6 +203,7 @@
216
203
  "thenlper/gte-large"
217
204
  ],
218
205
  "config": {
206
+ "endpoint_variable": "embedding_endpoint",
219
207
  "max_tokens": 512,
220
208
  "dimensions": {
221
209
  "sentence-transformers/all-MiniLM-L6-v2": 384,
@@ -241,13 +229,7 @@
241
229
  "Systran/faster-whisper-large-v3"
242
230
  ],
243
231
  "config": {
244
- "formats": [
245
- "flac",
246
- "mp3",
247
- "wav",
248
- "webm",
249
- "ogg"
250
- ],
232
+ "formats": ["flac", "mp3", "wav", "webm", "ogg"],
251
233
  "max_duration_seconds": 300,
252
234
  "languages": [
253
235
  "en",
@@ -273,6 +255,24 @@
273
255
  "description": "Override the default API endpoint URL.",
274
256
  "default": "https://router.huggingface.co/v1/chat/completions"
275
257
  },
258
+ {
259
+ "name": "tts_endpoint",
260
+ "type": "string",
261
+ "label": "TTS API Endpoint",
262
+ "description": "Optional TTS endpoint template. Use {model} where the model ID belongs."
263
+ },
264
+ {
265
+ "name": "image_endpoint",
266
+ "type": "string",
267
+ "label": "Image API Endpoint",
268
+ "description": "Optional image endpoint template. Use {model} where the model ID belongs."
269
+ },
270
+ {
271
+ "name": "embedding_endpoint",
272
+ "type": "string",
273
+ "label": "Embedding API Endpoint",
274
+ "description": "Optional embedding endpoint template. Use {model} where the model ID belongs."
275
+ },
276
276
  {
277
277
  "name": "temperature",
278
278
  "type": "number",
@@ -3,25 +3,18 @@
3
3
  "name": "OpenAI GPT",
4
4
  "type": "completion",
5
5
  "endpoint": "https://api.openai.com/v1/chat/completions",
6
+ "api_mode": "chat_completions",
7
+ "base_url": "https://api.openai.com/v1",
6
8
  "auth": {
7
9
  "header": "Authorization",
8
10
  "prefix": "Bearer ",
9
11
  "key_env": "OPENAI_API_KEY"
10
12
  },
11
- "model_map": [
12
- "gpt-5.4",
13
- "gpt-5.4-mini",
14
- "gpt-5.4-nano",
15
- "gpt-5.5"
16
- ],
13
+ "model_map": ["gpt-5.4", "gpt-5.4-mini", "gpt-5.4-nano", "gpt-5.5"],
17
14
  "capabilities": {
18
15
  "tts": {
19
16
  "endpoint": "https://api.openai.com/v1/audio/speech",
20
- "model_map": [
21
- "gpt-4o-mini-tts",
22
- "tts-1",
23
- "tts-1-hd"
24
- ],
17
+ "model_map": ["gpt-4o-mini-tts", "tts-1", "tts-1-hd"],
25
18
  "config": {
26
19
  "voices": [
27
20
  "alloy",
@@ -35,27 +28,65 @@
35
28
  "shimmer"
36
29
  ],
37
30
  "default_voice": "alloy",
38
- "formats": [
39
- "mp3",
40
- "opus",
41
- "aac",
42
- "flac",
43
- "wav",
44
- "pcm"
45
- ],
31
+ "formats": ["mp3", "opus", "aac", "flac", "wav", "pcm"],
46
32
  "default_format": "mp3",
47
33
  "max_characters": 4096,
48
34
  "supports_streaming": true
49
35
  }
36
+ },
37
+ "image": {
38
+ "endpoint": "https://api.openai.com/v1/images/generations",
39
+ "model_map": [
40
+ "gpt-image-2",
41
+ "gpt-image-1.5",
42
+ "gpt-image-1",
43
+ "gpt-image-1-mini"
44
+ ],
45
+ "config": {
46
+ "sizes": ["1024x1024", "1536x1024", "1024x1536"],
47
+ "default_size": "1024x1024",
48
+ "qualities": ["auto", "low", "medium", "high"],
49
+ "default_quality": "auto",
50
+ "supports_n": true,
51
+ "max_n": 10,
52
+ "endpoint_variable": "image_endpoint",
53
+ "supports_response_format": false
54
+ }
50
55
  }
51
56
  },
52
57
  "variables": [
58
+ {
59
+ "name": "api_mode",
60
+ "type": "select",
61
+ "label": "API Mode",
62
+ "description": "Choose Chat Completions or Responses request semantics.",
63
+ "default": "chat_completions",
64
+ "options": ["chat_completions", "responses"]
65
+ },
66
+ {
67
+ "name": "base_url",
68
+ "type": "string",
69
+ "label": "Base URL",
70
+ "description": "API root used with the mode-specific default path.",
71
+ "default": "https://api.openai.com/v1"
72
+ },
73
+ {
74
+ "name": "api_path",
75
+ "type": "string",
76
+ "label": "API Path",
77
+ "description": "Optional path relative to Base URL. Leave blank to use /chat/completions or /responses."
78
+ },
53
79
  {
54
80
  "name": "endpoint",
55
81
  "type": "string",
56
- "label": "API Endpoint",
57
- "description": "Override the default API endpoint URL.",
58
- "default": "https://api.openai.com/v1/chat/completions"
82
+ "label": "Legacy Full Endpoint",
83
+ "description": "Optional full endpoint override. When set, this takes precedence over Base URL and API Path."
84
+ },
85
+ {
86
+ "name": "image_endpoint",
87
+ "type": "string",
88
+ "label": "Image API Endpoint",
89
+ "description": "Optional full Image API generation endpoint. Leave blank to use the bundled OpenAI endpoint."
59
90
  },
60
91
  {
61
92
  "name": "temperature",