diff --git a/.env.example b/.env.example index bf895ddb7a8..5b3ef3600ae 100644 --- a/.env.example +++ b/.env.example @@ -256,6 +256,9 @@ OPENAI_API_KEY=sk-xxxxxxxxx # you need to config the clerk webhook secret key if you want to use the clerk with database #CLERK_WEBHOOK_SECRET=whsec_xxxxxxxxxxxxxxxxxxxxxx +# Clear allow origin https://clerk.com/docs/guides/dashboard/dns-domains/satellite-domains +# Authentication across different domains , use,to splite different origin +# NEXT_PUBLIC_CLERK_AUTH_ALLOW_ORIGINS='https://market.lobehub.com,https://lobehub.com' # NextAuth related configurations # NEXT_PUBLIC_ENABLE_NEXT_AUTH=1 diff --git a/CHANGELOG.md b/CHANGELOG.md index d7fb2fdf079..3a6262de869 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,31 @@ # Changelog +## [Version 1.142.0](https://github.com/lobehub/lobe-chat/compare/v1.141.10...v1.142.0) + +Released on **2025-10-24** + +#### ✨ Features + +- **misc**: Use env to control clerk allow origin feature. + +
+ +
+Improvements and Fixes + +#### What's improved + +- **misc**: Use env to control clerk allow origin feature, closes [#9863](https://github.com/lobehub/lobe-chat/issues/9863) ([490fee0](https://github.com/lobehub/lobe-chat/commit/490fee0)) + +
+ +
+ +[![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top) + +
+ ### [Version 1.141.10](https://github.com/lobehub/lobe-chat/compare/v1.141.9...v1.141.10) Released on **2025-10-23** diff --git a/Dockerfile b/Dockerfile index a168619280f..9db2a414215 100644 --- a/Dockerfile +++ b/Dockerfile @@ -156,7 +156,7 @@ ENV \ # Anthropic ANTHROPIC_API_KEY="" ANTHROPIC_MODEL_LIST="" ANTHROPIC_PROXY_URL="" \ # Amazon Bedrock - AWS_ACCESS_KEY_ID="" AWS_SECRET_ACCESS_KEY="" AWS_REGION="" AWS_BEDROCK_MODEL_LIST="" \ + ENABLED_AWS_BEDROCK="" AWS_ACCESS_KEY_ID="" AWS_SECRET_ACCESS_KEY="" AWS_REGION="" AWS_BEDROCK_MODEL_LIST="" \ # Azure OpenAI AZURE_API_KEY="" AZURE_API_VERSION="" AZURE_ENDPOINT="" AZURE_MODEL_LIST="" \ # Baichuan @@ -166,7 +166,7 @@ ENV \ # Cohere COHERE_API_KEY="" COHERE_MODEL_LIST="" COHERE_PROXY_URL="" \ # ComfyUI - COMFYUI_BASE_URL="" COMFYUI_AUTH_TYPE="" \ + ENABLED_COMFYUI="" COMFYUI_BASE_URL="" COMFYUI_AUTH_TYPE="" \ COMFYUI_API_KEY="" COMFYUI_USERNAME="" COMFYUI_PASSWORD="" COMFYUI_CUSTOM_HEADERS="" \ # DeepSeek DEEPSEEK_API_KEY="" DEEPSEEK_MODEL_LIST="" \ @@ -209,7 +209,7 @@ ENV \ # Ollama ENABLED_OLLAMA="" OLLAMA_MODEL_LIST="" OLLAMA_PROXY_URL="" \ # OpenAI - OPENAI_API_KEY="" OPENAI_MODEL_LIST="" OPENAI_PROXY_URL="" \ + ENABLED_OPENAI="" OPENAI_API_KEY="" OPENAI_MODEL_LIST="" OPENAI_PROXY_URL="" \ # OpenRouter OPENROUTER_API_KEY="" OPENROUTER_MODEL_LIST="" \ # Perplexity diff --git a/Dockerfile.database b/Dockerfile.database index a465db200b4..e50a6f184fd 100644 --- a/Dockerfile.database +++ b/Dockerfile.database @@ -209,7 +209,7 @@ ENV \ # Anthropic ANTHROPIC_API_KEY="" ANTHROPIC_MODEL_LIST="" ANTHROPIC_PROXY_URL="" \ # Amazon Bedrock - AWS_ACCESS_KEY_ID="" AWS_SECRET_ACCESS_KEY="" AWS_REGION="" AWS_BEDROCK_MODEL_LIST="" \ + ENABLED_AWS_BEDROCK="" AWS_ACCESS_KEY_ID="" AWS_SECRET_ACCESS_KEY="" AWS_REGION="" AWS_BEDROCK_MODEL_LIST="" \ # Azure OpenAI AZURE_API_KEY="" AZURE_API_VERSION="" AZURE_ENDPOINT="" AZURE_MODEL_LIST="" \ # Baichuan @@ -219,7 +219,7 @@ ENV \ # Cohere COHERE_API_KEY="" COHERE_MODEL_LIST="" COHERE_PROXY_URL="" \ # ComfyUI - COMFYUI_BASE_URL="" COMFYUI_AUTH_TYPE="" \ + ENABLED_COMFYUI="" COMFYUI_BASE_URL="" COMFYUI_AUTH_TYPE="" \ COMFYUI_API_KEY="" COMFYUI_USERNAME="" COMFYUI_PASSWORD="" COMFYUI_CUSTOM_HEADERS="" \ # DeepSeek DEEPSEEK_API_KEY="" DEEPSEEK_MODEL_LIST="" \ @@ -262,7 +262,7 @@ ENV \ # Ollama ENABLED_OLLAMA="" OLLAMA_MODEL_LIST="" OLLAMA_PROXY_URL="" \ # OpenAI - OPENAI_API_KEY="" OPENAI_MODEL_LIST="" OPENAI_PROXY_URL="" \ + ENABLED_OPENAI="" OPENAI_API_KEY="" OPENAI_MODEL_LIST="" OPENAI_PROXY_URL="" \ # OpenRouter OPENROUTER_API_KEY="" OPENROUTER_MODEL_LIST="" \ # Perplexity diff --git a/Dockerfile.pglite b/Dockerfile.pglite index 08f2349d4d6..602320c4174 100644 --- a/Dockerfile.pglite +++ b/Dockerfile.pglite @@ -158,7 +158,7 @@ ENV \ # Anthropic ANTHROPIC_API_KEY="" ANTHROPIC_MODEL_LIST="" ANTHROPIC_PROXY_URL="" \ # Amazon Bedrock - AWS_ACCESS_KEY_ID="" AWS_SECRET_ACCESS_KEY="" AWS_REGION="" AWS_BEDROCK_MODEL_LIST="" \ + ENABLED_AWS_BEDROCK="" AWS_ACCESS_KEY_ID="" AWS_SECRET_ACCESS_KEY="" AWS_REGION="" AWS_BEDROCK_MODEL_LIST="" \ # Azure OpenAI AZURE_API_KEY="" AZURE_API_VERSION="" AZURE_ENDPOINT="" AZURE_MODEL_LIST="" \ # Baichuan @@ -168,7 +168,7 @@ ENV \ # Cohere COHERE_API_KEY="" COHERE_MODEL_LIST="" COHERE_PROXY_URL="" \ # ComfyUI - COMFYUI_BASE_URL="" COMFYUI_AUTH_TYPE="" \ + ENABLED_COMFYUI="" COMFYUI_BASE_URL="" COMFYUI_AUTH_TYPE="" \ COMFYUI_API_KEY="" COMFYUI_USERNAME="" COMFYUI_PASSWORD="" COMFYUI_CUSTOM_HEADERS="" \ # DeepSeek DEEPSEEK_API_KEY="" DEEPSEEK_MODEL_LIST="" \ @@ -211,7 +211,7 @@ ENV \ # Ollama ENABLED_OLLAMA="" OLLAMA_MODEL_LIST="" OLLAMA_PROXY_URL="" \ # OpenAI - OPENAI_API_KEY="" OPENAI_MODEL_LIST="" OPENAI_PROXY_URL="" \ + ENABLED_OPENAI="" OPENAI_API_KEY="" OPENAI_MODEL_LIST="" OPENAI_PROXY_URL="" \ # OpenRouter OPENROUTER_API_KEY="" OPENROUTER_MODEL_LIST="" \ # Perplexity diff --git a/changelog/v1.json b/changelog/v1.json index 6c20cb59ea9..caf6e9f2c10 100644 --- a/changelog/v1.json +++ b/changelog/v1.json @@ -1,4 +1,11 @@ [ + { + "children": { + "features": ["Use env to control clerk allow origin feature."] + }, + "date": "2025-10-24", + "version": "1.142.0" + }, { "children": { "fixes": ["Loadmore not work & navbar not show in pwa."] diff --git a/docs/self-hosting/advanced/model-list.mdx b/docs/self-hosting/advanced/model-list.mdx index 8a360a83874..79e617dcf21 100644 --- a/docs/self-hosting/advanced/model-list.mdx +++ b/docs/self-hosting/advanced/model-list.mdx @@ -26,6 +26,17 @@ For example: `+qwen-7b-chat,+glm-6b,-gpt-3.5-turbo,gpt-4-0125-preview=gpt-4-turb In the above example, it adds `qwen-7b-chat` and `glm-6b` to the model list, removes `gpt-3.5-turbo` from the list, and displays the model name of `gpt-4-0125-preview` as `gpt-4-turbo`. If you want to disable all models first and then enable specific models, you can use `-all,+gpt-3.5-turbo`, which means only enabling `gpt-3.5-turbo`. +### -all: Hide all models + +- Description: `-all` means hiding all built-in models first. It’s usually combined with `+` to only enable the models you explicitly specify. +- Example: + +```text +-all,+gpt-3.5-turbo,+gpt-4-0125-preview=gpt-4-turbo +``` + +This enables only gpt-3.5-turbo and gpt-4-turbo while hiding other models. + ## Extension Capabilities Considering the diversity of model capabilities, we started to add extension configuration in version `0.147.8`, with the following rules: diff --git a/docs/self-hosting/advanced/model-list.zh-CN.mdx b/docs/self-hosting/advanced/model-list.zh-CN.mdx index bf7906dc646..b8e09802aca 100644 --- a/docs/self-hosting/advanced/model-list.zh-CN.mdx +++ b/docs/self-hosting/advanced/model-list.zh-CN.mdx @@ -25,6 +25,17 @@ id->deploymentName=displayName { }); }, [count, setCount, isPending, startTransition]); + const allowedRedirectOrigins = useMemo(() => { + const rawOrigins = process.env.NEXT_PUBLIC_CLERK_AUTH_ALLOW_ORIGINS; + if (!rawOrigins) return undefined; + + const origins = rawOrigins + .split(',') + .map((origin) => origin.trim()) + .filter(Boolean); + return origins.length ? origins : undefined; + }, []); + const updatedAppearance = useMemo( () => ({ ...appearance, @@ -43,6 +54,7 @@ const Clerk = memo(({ children }: PropsWithChildren) => { return (