Merge pull request #765 from open-webui/main

Sync
This commit is contained in:
Classic298
2025-10-15 07:41:34 +02:00
committed by GitHub
7 changed files with 64 additions and 36 deletions

View File

@@ -0,0 +1,6 @@
---
sidebar_position: 7
title: "📢 Channels"
---
Soon...

View File

@@ -46,7 +46,11 @@ Browser-based, multi-user deployments increase the surface area (CORS/CSRF, per-
## ❓ FAQ ## ❓ FAQ
**Do you support stdio or SSE transports?** **Do you support stdio or SSE transports?**
No. Open WebUI only supports **MCP via Streamable HTTP**. Native MCP support in Open WebUI is **Streamable HTTP only**. This design choice reflects our architecture: Open WebUI is a **web-based, multi-tenant environment**, not a local desktop process.
Browsers operate within strict **sandboxed and event-driven HTTP constraints**, making long-lived stdio or SSE connections difficult to maintain securely across users and sessions.
If you need to bridge those other MCP transports, check out [**mcpo**](https://github.com/open-webui/mcpo) — an open-source proxy that translates **stdio or SSE-based MCP servers into OpenAPI-compatible endpoints**. It effectively lets you run traditional MCP tools inside Open WebUI without modifying their transport layer.
**Is MCP considered stable here?** **Is MCP considered stable here?**
Supported and improving. The broader ecosystem is still evolving; expect occasional breaking changes. Supported and improving. The broader ecosystem is still evolving; expect occasional breaking changes.

View File

@@ -921,7 +921,9 @@ The value of `API_KEY_ALLOWED_ENDPOINTS` should be a comma-separated list of end
Setting `JWT_EXPIRES_IN` to `-1` disables JWT expiration, making issued tokens valid forever. **This is extremely dangerous in production** and exposes your system to severe security risks if tokens are leaked or compromised. Setting `JWT_EXPIRES_IN` to `-1` disables JWT expiration, making issued tokens valid forever. **This is extremely dangerous in production** and exposes your system to severe security risks if tokens are leaked or compromised.
**Always set a reasonable expiration time (e.g., `3600s`, `1h`, etc.) in production to limit the lifespan of authentication tokens.** Never use `-1` in a production environment. **Always set a reasonable expiration time in production environments (e.g., `3600s`, `1h`, `7d` etc.) to limit the lifespan of authentication tokens.**
**NEVER use `-1` in a production environment.**
If you have already deployed with `JWT_EXPIRES_IN=-1`, you can rotate or change your `WEBUI_SECRET_KEY` to immediately invalidate all existing tokens. If you have already deployed with `JWT_EXPIRES_IN=-1`, you can rotate or change your `WEBUI_SECRET_KEY` to immediately invalidate all existing tokens.

View File

@@ -36,7 +36,7 @@ Open WebUIs license now:
- **You may NOT alter, remove, or obscure any “Open WebUI” branding** (name, logo, UI marks, etc.) in any deployment or distribution, except in the circumstances below. - **You may NOT alter, remove, or obscure any “Open WebUI” branding** (name, logo, UI marks, etc.) in any deployment or distribution, except in the circumstances below.
- Branding must remain clearly visible, unless: - Branding must remain clearly visible, unless:
1. **You have 50 or fewer users** in a 30-day period; 1. **You have 50 or fewer users** in a 30-day period;
2. **You are a contributor**, and have gotten written permission from us for an internal deployment; 2. **You are a substantive contributor**, and have gotten written permission from us for an internal deployment;
3. **Youve secured an enterprise license** from us which explicitly allows branding changes. 3. **Youve secured an enterprise license** from us which explicitly allows branding changes.
- **CLA required for new contributions** after v0.6.5 (v0.6.6+) under the updated license. - **CLA required for new contributions** after v0.6.5 (v0.6.6+) under the updated license.
@@ -62,7 +62,7 @@ This is not legal advice—refer to the full [LICENSE](https://github.com/open-w
**Absolutely.** You can change, extend, and customize the code or the user interface for your organizations needs—but youre required to keep “Open WebUI” branding visible *unless*: **Absolutely.** You can change, extend, and customize the code or the user interface for your organizations needs—but youre required to keep “Open WebUI” branding visible *unless*:
- Your deployment is for **50 or fewer users in any 30-day window**; or - Your deployment is for **50 or fewer users in any 30-day window**; or
- Youre a recognized project contributor **and** have received written permission to adjust branding for an internal deployment; or - Youre a substantive project contributor **and** have received written permission to adjust branding for an internal deployment; or
- Youve secured an **enterprise license** with us that explicitly allows branding changes. - Youve secured an **enterprise license** with us that explicitly allows branding changes.
If you remove or modify branding without meeting these criteria, thats a material breach of the license. If you remove or modify branding without meeting these criteria, thats a material breach of the license.

View File

@@ -35,22 +35,30 @@ export const SidebarBanners = () => {
description: "The intelligent terminal for developers", description: "The intelligent terminal for developers",
}, },
{ // {
imgSrc: "/sponsors/banners/tailscale-banner.png", // imgSrc: "/sponsors/banners/tailscale-banner.png",
mobileImgSrc: "/sponsors/banners/tailscale-banner-mobile.png", // mobileImgSrc: "/sponsors/banners/tailscale-banner-mobile.png",
url: "https://tailscale.com/blog/self-host-a-local-ai-stack/?utm_source=OpenWebUI&utm_medium=paid-ad-placement&utm_campaign=OpenWebUI-Docs", // url: "https://tailscale.com/blog/self-host-a-local-ai-stack/?utm_source=OpenWebUI&utm_medium=paid-ad-placement&utm_campaign=OpenWebUI-Docs",
name: "Tailscale", // name: "Tailscale",
description: "Connect self-hosted AI to any device with Tailscale", // description: "Connect self-hosted AI to any device with Tailscale",
}, // },
// {
// imgSrc: "/sponsors/banners/tailscale-banner.png",
// mobileImgSrc: "/sponsors/banners/tailscale-banner-mobile.png",
// url: "https://tailscale.com/blog/self-host-a-local-ai-stack/?utm_source=OpenWebUI&utm_medium=paid-ad-placement&utm_campaign=OpenWebUI-Docs",
// name: "Tailscale",
// description: "Connect self-hosted AI to any device with Tailscale",
// },
{ {
imgSrc: "/sponsors/banners/tailscale-banner.png", imgSrc: "/sponsors/banners/placeholder.png",
mobileImgSrc: "/sponsors/banners/tailscale-banner-mobile.png", mobileImgSrc: "/sponsors/banners/placeholder-mobile.png",
url: "https://tailscale.com/blog/self-host-a-local-ai-stack/?utm_source=OpenWebUI&utm_medium=paid-ad-placement&utm_campaign=OpenWebUI-Docs", url: "https://forms.gle/92mvG3ESYj47zzRL9",
name: "Tailscale", name: "Open WebUI",
description: "Connect self-hosted AI to any device with Tailscale", description:
"The top banner spot is reserved for Emerald+ Enterprise sponsors",
}, },
{ {
imgSrc: "/sponsors/banners/placeholder.png", imgSrc: "/sponsors/banners/placeholder.png",
mobileImgSrc: "/sponsors/banners/placeholder-mobile.png", mobileImgSrc: "/sponsors/banners/placeholder-mobile.png",

View File

@@ -15,12 +15,12 @@ export const SponsorList = () => {
name: "Warp", name: "Warp",
description: "The intelligent terminal for developers", description: "The intelligent terminal for developers",
}, },
{ // {
imgSrc: "/sponsors/logos/tailscale.png", // imgSrc: "/sponsors/logos/tailscale.png",
url: "https://tailscale.com/blog/self-host-a-local-ai-stack/?utm_source=OpenWebUI&utm_medium=paid-ad-placement&utm_campaign=OpenWebUI-Docs", // url: "https://tailscale.com/blog/self-host-a-local-ai-stack/?utm_source=OpenWebUI&utm_medium=paid-ad-placement&utm_campaign=OpenWebUI-Docs",
name: "Tailscale", // name: "Tailscale",
description: "Connect self-hosted AI to any device with Tailscale", // description: "Connect self-hosted AI to any device with Tailscale",
}, // },
]; ];
const sponsors = [ const sponsors = [

View File

@@ -40,22 +40,30 @@ export const TopBanners = ({
description: "The intelligent terminal for developers", description: "The intelligent terminal for developers",
}, },
{ // {
imgSrc: "/sponsors/banners/tailscale-banner.png", // imgSrc: "/sponsors/banners/tailscale-banner.png",
mobileImgSrc: "/sponsors/banners/tailscale-banner-mobile.png", // mobileImgSrc: "/sponsors/banners/tailscale-banner-mobile.png",
url: "https://tailscale.com/blog/self-host-a-local-ai-stack/?utm_source=OpenWebUI&utm_medium=paid-ad-placement&utm_campaign=OpenWebUI-Docs", // url: "https://tailscale.com/blog/self-host-a-local-ai-stack/?utm_source=OpenWebUI&utm_medium=paid-ad-placement&utm_campaign=OpenWebUI-Docs",
name: "Tailscale", // name: "Tailscale",
description: "Connect self-hosted AI to any device with Tailscale", // description: "Connect self-hosted AI to any device with Tailscale",
}, // },
// {
// imgSrc: "/sponsors/banners/tailscale-banner.png",
// mobileImgSrc: "/sponsors/banners/tailscale-banner-mobile.png",
// url: "https://tailscale.com/blog/self-host-a-local-ai-stack/?utm_source=OpenWebUI&utm_medium=paid-ad-placement&utm_campaign=OpenWebUI-Docs",
// name: "Tailscale",
// description: "Connect self-hosted AI to any device with Tailscale",
// },
{ {
imgSrc: "/sponsors/banners/tailscale-banner.png", imgSrc: "/sponsors/banners/placeholder.png",
mobileImgSrc: "/sponsors/banners/tailscale-banner-mobile.png", mobileImgSrc: "/sponsors/banners/placeholder-mobile.png",
url: "https://tailscale.com/blog/self-host-a-local-ai-stack/?utm_source=OpenWebUI&utm_medium=paid-ad-placement&utm_campaign=OpenWebUI-Docs", url: "https://forms.gle/92mvG3ESYj47zzRL9",
name: "Tailscale", name: "Open WebUI",
description: "Connect self-hosted AI to any device with Tailscale", description:
"The top banner spot is reserved for Emerald+ Enterprise sponsors",
}, },
{ {
imgSrc: "/sponsors/banners/placeholder.png", imgSrc: "/sponsors/banners/placeholder.png",
mobileImgSrc: "/sponsors/banners/placeholder-mobile.png", mobileImgSrc: "/sponsors/banners/placeholder-mobile.png",