diff --git a/AGENTS.md b/AGENTS.md
index e36adc672d..24ce8c533d 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -3,7 +3,7 @@
## Project
Unified AI proxy/router — route any LLM through one endpoint. Multi-provider support
-with **160+ providers** (OpenAI, Anthropic, Gemini, DeepSeek, Groq, xAI, Mistral, Fireworks,
+with **212 providers** (OpenAI, Anthropic, Gemini, DeepSeek, Groq, xAI, Mistral, Fireworks,
Cohere, NVIDIA, Cerebras, Pollinations, Puter, Cloudflare AI, HuggingFace, DeepInfra,
SambaNova, Meta Llama API, Moonshot AI, AI21 Labs, Databricks, Snowflake, and many more)
with **MCP Server** (37 tools), **A2A v0.3 Protocol**, and **Electron desktop app**.
diff --git a/README.md b/README.md
index 9f51b304f8..4427be4225 100644
--- a/README.md
+++ b/README.md
@@ -4,7 +4,7 @@
### Never stop coding. Save 15-95% eligible tokens with RTK+Caveman compression + auto-fallback to **FREE & low-cost AI models**.
-_The most complete open-source AI proxy — **one endpoint**, **160+ providers**, **13 routing strategies**, zero downtime. Multi-platform: **Web**, **Desktop (Electron)**, **Mobile (PWA + Termux)**. Fully extensible via **MCP Server (37 tools)**, **A2A Protocol**, and **Memory/Skills** systems. Available in **40+ languages**._
+_The most complete open-source AI proxy — **one endpoint**, **212 providers**, **13 routing strategies**, zero downtime. Multi-platform: **Web**, **Desktop (Electron)**, **Mobile (PWA + Termux)**. Fully extensible via **MCP Server (37 tools)**, **A2A Protocol**, and **Memory/Skills** systems. Available in **40+ languages**._
[](https://www.npmjs.com/package/omniroute)
[](LICENSE)
@@ -1444,7 +1444,7 @@ Code blocks, URLs, JSON, and structured data are **always protected** from compr
2. **Per-provider proxy** — different proxy per provider
3. **Per-API-key proxy** — different proxy per key
-Plus the **1proxy free marketplace** for community-shared proxies. Users in Russia, China, Iran, and other restricted regions can access all 160+ providers through OmniRoute's proxy infrastructure.
+Plus the **1proxy free marketplace** for community-shared proxies. Users in Russia, China, Iran, and other restricted regions can access all 212 providers through OmniRoute's proxy infrastructure.
See the [Proxy Guide](docs/PROXY_GUIDE.md) for setup instructions.
diff --git a/public/providers/360ai.svg b/public/providers/360ai.svg
new file mode 100644
index 0000000000..caeb6eb2c9
--- /dev/null
+++ b/public/providers/360ai.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/baichuan.svg b/public/providers/baichuan.svg
new file mode 100644
index 0000000000..fa3789f62e
--- /dev/null
+++ b/public/providers/baichuan.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/baidu.svg b/public/providers/baidu.svg
new file mode 100644
index 0000000000..0c74817895
--- /dev/null
+++ b/public/providers/baidu.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/coze.svg b/public/providers/coze.svg
new file mode 100644
index 0000000000..52d4bb54b6
--- /dev/null
+++ b/public/providers/coze.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/dify.svg b/public/providers/dify.svg
new file mode 100644
index 0000000000..80be2e3447
--- /dev/null
+++ b/public/providers/dify.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/doubao.svg b/public/providers/doubao.svg
new file mode 100644
index 0000000000..4317871d38
--- /dev/null
+++ b/public/providers/doubao.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/huggingchat.svg b/public/providers/huggingchat.svg
new file mode 100644
index 0000000000..30a8cef613
--- /dev/null
+++ b/public/providers/huggingchat.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/iflytek.svg b/public/providers/iflytek.svg
new file mode 100644
index 0000000000..bad262efe4
--- /dev/null
+++ b/public/providers/iflytek.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/phind.svg b/public/providers/phind.svg
new file mode 100644
index 0000000000..778aae891c
--- /dev/null
+++ b/public/providers/phind.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/sensenova.svg b/public/providers/sensenova.svg
new file mode 100644
index 0000000000..9bd7ebda11
--- /dev/null
+++ b/public/providers/sensenova.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/sparkdesk.svg b/public/providers/sparkdesk.svg
new file mode 100644
index 0000000000..d9960faaaa
--- /dev/null
+++ b/public/providers/sparkdesk.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/stepfun.svg b/public/providers/stepfun.svg
new file mode 100644
index 0000000000..2a7196ea47
--- /dev/null
+++ b/public/providers/stepfun.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/tencent.svg b/public/providers/tencent.svg
new file mode 100644
index 0000000000..d1dff98da9
--- /dev/null
+++ b/public/providers/tencent.svg
@@ -0,0 +1,5 @@
+
diff --git a/public/providers/yi.svg b/public/providers/yi.svg
new file mode 100644
index 0000000000..8ddc60de6e
--- /dev/null
+++ b/public/providers/yi.svg
@@ -0,0 +1,5 @@
+
diff --git a/src/shared/components/ProviderIcon.tsx b/src/shared/components/ProviderIcon.tsx
index a412b868c8..aba7e5fd4f 100644
--- a/src/shared/components/ProviderIcon.tsx
+++ b/src/shared/components/ProviderIcon.tsx
@@ -76,6 +76,10 @@ const KNOWN_SVGS = new Set([
"brave",
"brave-search",
"cartesia",
+ "360ai",
+ "huggingchat",
+ "iflytek",
+ "sparkdesk",
"arcee-ai",
"inclusionai",
"krutrim",
diff --git a/src/shared/components/lobeProviderIcons.ts b/src/shared/components/lobeProviderIcons.ts
index 5c462cd67c..cdc50b4e22 100644
--- a/src/shared/components/lobeProviderIcons.ts
+++ b/src/shared/components/lobeProviderIcons.ts
@@ -18,6 +18,8 @@ import AzureColorIcon from "@lobehub/icons/es/Azure/components/Color";
import AzureMonoIcon from "@lobehub/icons/es/Azure/components/Mono";
import AzureAIColorIcon from "@lobehub/icons/es/AzureAI/components/Color";
import AzureAIMonoIcon from "@lobehub/icons/es/AzureAI/components/Mono";
+import BaichuanColorIcon from "@lobehub/icons/es/Baichuan/components/Color";
+import BaichuanMonoIcon from "@lobehub/icons/es/Baichuan/components/Mono";
import BaiduColorIcon from "@lobehub/icons/es/Baidu/components/Color";
import BaiduMonoIcon from "@lobehub/icons/es/Baidu/components/Mono";
import BailianColorIcon from "@lobehub/icons/es/Bailian/components/Color";
@@ -41,11 +43,16 @@ import ComfyUIColorIcon from "@lobehub/icons/es/ComfyUI/components/Color";
import ComfyUIMonoIcon from "@lobehub/icons/es/ComfyUI/components/Mono";
import CursorMonoIcon from "@lobehub/icons/es/Cursor/components/Mono";
import DbrxColorIcon from "@lobehub/icons/es/Dbrx/components/Color";
+import CozeMonoIcon from "@lobehub/icons/es/Coze/components/Mono";
import DbrxMonoIcon from "@lobehub/icons/es/Dbrx/components/Mono";
import DeepInfraColorIcon from "@lobehub/icons/es/DeepInfra/components/Color";
import DeepInfraMonoIcon from "@lobehub/icons/es/DeepInfra/components/Mono";
import DeepSeekColorIcon from "@lobehub/icons/es/DeepSeek/components/Color";
import DeepSeekMonoIcon from "@lobehub/icons/es/DeepSeek/components/Mono";
+import DifyColorIcon from "@lobehub/icons/es/Dify/components/Color";
+import DifyMonoIcon from "@lobehub/icons/es/Dify/components/Mono";
+import DoubaoColorIcon from "@lobehub/icons/es/Doubao/components/Color";
+import DoubaoMonoIcon from "@lobehub/icons/es/Doubao/components/Mono";
import ElevenLabsMonoIcon from "@lobehub/icons/es/ElevenLabs/components/Mono";
import ExaColorIcon from "@lobehub/icons/es/Exa/components/Color";
import ExaMonoIcon from "@lobehub/icons/es/Exa/components/Mono";
@@ -107,6 +114,7 @@ import OpenCodeMonoIcon from "@lobehub/icons/es/OpenCode/components/Mono";
import OpenRouterMonoIcon from "@lobehub/icons/es/OpenRouter/components/Mono";
import PerplexityColorIcon from "@lobehub/icons/es/Perplexity/components/Color";
import PerplexityMonoIcon from "@lobehub/icons/es/Perplexity/components/Mono";
+import PhindMonoIcon from "@lobehub/icons/es/Phind/components/Mono";
import PoeColorIcon from "@lobehub/icons/es/Poe/components/Color";
import PoeMonoIcon from "@lobehub/icons/es/Poe/components/Mono";
import PollinationsMonoIcon from "@lobehub/icons/es/Pollinations/components/Mono";
@@ -125,15 +133,23 @@ import SiliconCloudColorIcon from "@lobehub/icons/es/SiliconCloud/components/Col
import SiliconCloudMonoIcon from "@lobehub/icons/es/SiliconCloud/components/Mono";
import SnowflakeColorIcon from "@lobehub/icons/es/Snowflake/components/Color";
import SnowflakeMonoIcon from "@lobehub/icons/es/Snowflake/components/Mono";
+import SenseNovaColorIcon from "@lobehub/icons/es/SenseNova/components/Color";
+import SenseNovaMonoIcon from "@lobehub/icons/es/SenseNova/components/Mono";
import StabilityColorIcon from "@lobehub/icons/es/Stability/components/Color";
import StabilityMonoIcon from "@lobehub/icons/es/Stability/components/Mono";
+import StepfunColorIcon from "@lobehub/icons/es/Stepfun/components/Color";
+import StepfunMonoIcon from "@lobehub/icons/es/Stepfun/components/Mono";
import TavilyColorIcon from "@lobehub/icons/es/Tavily/components/Color";
import TavilyMonoIcon from "@lobehub/icons/es/Tavily/components/Mono";
import TogetherColorIcon from "@lobehub/icons/es/Together/components/Color";
+import TencentColorIcon from "@lobehub/icons/es/Tencent/components/Color";
+import TencentMonoIcon from "@lobehub/icons/es/Tencent/components/Mono";
import TogetherMonoIcon from "@lobehub/icons/es/Together/components/Mono";
import TopazLabsMonoIcon from "@lobehub/icons/es/TopazLabs/components/Mono";
import UpstageColorIcon from "@lobehub/icons/es/Upstage/components/Color";
import UpstageMonoIcon from "@lobehub/icons/es/Upstage/components/Mono";
+import YiColorIcon from "@lobehub/icons/es/Yi/components/Color";
+import YiMonoIcon from "@lobehub/icons/es/Yi/components/Mono";
import V0MonoIcon from "@lobehub/icons/es/V0/components/Mono";
import VeniceColorIcon from "@lobehub/icons/es/Venice/components/Color";
import VeniceMonoIcon from "@lobehub/icons/es/Venice/components/Mono";
@@ -180,6 +196,7 @@ const LOBE_ICON_COMPONENTS = {
Aws: { mono: AwsMonoIcon, color: AwsColorIcon },
Azure: { mono: AzureMonoIcon, color: AzureColorIcon },
AzureAI: { mono: AzureAIMonoIcon, color: AzureAIColorIcon },
+ Baichuan: { mono: BaichuanMonoIcon, color: BaichuanColorIcon },
Baidu: { mono: BaiduMonoIcon, color: BaiduColorIcon },
Bailian: { mono: BailianMonoIcon, color: BailianColorIcon },
Baseten: { mono: BasetenMonoIcon },
@@ -192,10 +209,13 @@ const LOBE_ICON_COMPONENTS = {
Codex: { mono: CodexMonoIcon, color: CodexColorIcon },
Cohere: { mono: CohereMonoIcon, color: CohereColorIcon },
ComfyUI: { mono: ComfyUIMonoIcon, color: ComfyUIColorIcon },
+ Coze: { mono: CozeMonoIcon },
Cursor: { mono: CursorMonoIcon },
Dbrx: { mono: DbrxMonoIcon, color: DbrxColorIcon },
DeepInfra: { mono: DeepInfraMonoIcon, color: DeepInfraColorIcon },
DeepSeek: { mono: DeepSeekMonoIcon, color: DeepSeekColorIcon },
+ Dify: { mono: DifyMonoIcon, color: DifyColorIcon },
+ Doubao: { mono: DoubaoMonoIcon, color: DoubaoColorIcon },
ElevenLabs: { mono: ElevenLabsMonoIcon },
Exa: { mono: ExaMonoIcon, color: ExaColorIcon },
Fal: { mono: FalMonoIcon, color: FalColorIcon },
@@ -236,6 +256,7 @@ const LOBE_ICON_COMPONENTS = {
OpenCode: { mono: OpenCodeMonoIcon },
OpenRouter: { mono: OpenRouterMonoIcon },
Perplexity: { mono: PerplexityMonoIcon, color: PerplexityColorIcon },
+ Phind: { mono: PhindMonoIcon },
Poe: { mono: PoeMonoIcon, color: PoeColorIcon },
Pollinations: { mono: PollinationsMonoIcon },
Qoder: { mono: QoderMonoIcon, color: QoderColorIcon },
@@ -247,9 +268,12 @@ const LOBE_ICON_COMPONENTS = {
SambaNova: { mono: SambaNovaMonoIcon, color: SambaNovaColorIcon },
SearchApi: { mono: SearchApiMonoIcon },
SiliconCloud: { mono: SiliconCloudMonoIcon, color: SiliconCloudColorIcon },
+ SenseNova: { mono: SenseNovaMonoIcon, color: SenseNovaColorIcon },
Snowflake: { mono: SnowflakeMonoIcon, color: SnowflakeColorIcon },
Stability: { mono: StabilityMonoIcon, color: StabilityColorIcon },
+ Stepfun: { mono: StepfunMonoIcon, color: StepfunColorIcon },
Tavily: { mono: TavilyMonoIcon, color: TavilyColorIcon },
+ Tencent: { mono: TencentMonoIcon, color: TencentColorIcon },
Together: { mono: TogetherMonoIcon, color: TogetherColorIcon },
TopazLabs: { mono: TopazLabsMonoIcon },
Upstage: { mono: UpstageMonoIcon, color: UpstageColorIcon },
@@ -265,6 +289,7 @@ const LOBE_ICON_COMPONENTS = {
XAI: { mono: XAIMonoIcon },
XiaomiMiMo: { mono: XiaomiMiMoMonoIcon },
Xinference: { mono: XinferenceMonoIcon, color: XinferenceColorIcon },
+ Yi: { mono: YiMonoIcon, color: YiColorIcon },
ZAI: { mono: ZAIMonoIcon },
Zhipu: { mono: ZhipuMonoIcon, color: ZhipuColorIcon },
} satisfies Record;
@@ -300,6 +325,7 @@ const LOBE_PROVIDER_ALIASES = {
cohere: "Cohere",
comfyui: "ComfyUI",
copilot: "GithubCopilot",
+ coze: "Coze",
cursor: "Cursor",
databricks: "Dbrx",
deepinfra: "DeepInfra",
@@ -372,6 +398,7 @@ const LOBE_PROVIDER_ALIASES = {
"perplexity-search": "Perplexity",
"perplexity-web": "Perplexity",
poe: "Poe",
+ phind: "Phind",
pollinations: "Pollinations",
qoder: "Qoder",
qwen: "Qwen",
@@ -385,10 +412,12 @@ const LOBE_PROVIDER_ALIASES = {
"searchapi-search": "SearchApi",
siliconflow: "SiliconCloud",
snowflake: "Snowflake",
+ stepfun: "Stepfun",
stability: "Stability",
"stability-ai": "Stability",
tavily: "Tavily",
"tavily-search": "Tavily",
+ tencent: "Tencent",
together: "Together",
topaz: "TopazLabs",
triton: "Nvidia",
@@ -413,6 +442,7 @@ const LOBE_PROVIDER_ALIASES = {
xiaomimimo: "XiaomiMiMo",
xinference: "Xinference",
zai: "ZAI",
+ yi: "Yi",
zhipu: "Zhipu",
} satisfies Record;
diff --git a/src/shared/constants/providers.ts b/src/shared/constants/providers.ts
index e58f7d3c0b..5637857a32 100644
--- a/src/shared/constants/providers.ts
+++ b/src/shared/constants/providers.ts
@@ -1743,6 +1743,187 @@ export const APIKEY_PROVIDERS = {
textIcon: "TP",
website: "https://topazlabs.com",
},
+ baidu: {
+ id: "baidu",
+ alias: "baidu",
+ name: "Baidu (ERNIE)",
+ icon: "auto_awesome",
+ color: "#2932E1",
+ textIcon: "BD",
+ website: "https://yiyan.baidu.com",
+ hasFree: true,
+ freeNote: "Free ERNIE Speed/Lite models. China's #2 LLM.",
+ passthroughModels: true,
+ authHint: "Get API key at console.bce.baidu.com",
+ },
+ tencent: {
+ id: "tencent",
+ alias: "tencent",
+ name: "Tencent Hunyuan",
+ icon: "auto_awesome",
+ color: "#07C160",
+ textIcon: "TC",
+ website: "https://hunyuan.tencent.com",
+ hasFree: true,
+ freeNote: "Free Hunyuan Lite models. WeChat ecosystem.",
+ passthroughModels: true,
+ authHint: "Get API key at console.cloud.tencent.com",
+ },
+ iflytek: {
+ id: "iflytek",
+ alias: "iflytek",
+ name: "iFlytek Spark",
+ icon: "auto_awesome",
+ color: "#0066FF",
+ textIcon: "IF",
+ website: "https://xinghuo.xfyun.cn",
+ hasFree: true,
+ freeNote: "Free Spark Lite models. China's voice AI leader.",
+ passthroughModels: true,
+ authHint: "Get API key at console.xfyun.cn",
+ },
+ baichuan: {
+ id: "baichuan",
+ alias: "baichuan",
+ name: "Baichuan",
+ icon: "auto_awesome",
+ color: "#6366F1",
+ textIcon: "BC",
+ website: "https://baichuan.com",
+ hasFree: true,
+ freeNote: "Free Baichuan models. Popular Chinese LLM startup.",
+ passthroughModels: true,
+ authHint: "Get API key at platform.baichuan-ai.com",
+ },
+ yi: {
+ id: "yi",
+ alias: "yi",
+ name: "Yi (01.AI)",
+ icon: "auto_awesome",
+ color: "#10B981",
+ textIcon: "YI",
+ website: "https://01.ai",
+ hasFree: true,
+ freeNote: "Free Yi-Light models. Kai-Fu Lee's company.",
+ passthroughModels: true,
+ authHint: "Get API key at platform.lingyiwanwu.com",
+ },
+ stepfun: {
+ id: "stepfun",
+ alias: "stepfun",
+ name: "StepFun",
+ icon: "auto_awesome",
+ color: "#8B5CF6",
+ textIcon: "SF",
+ website: "https://stepfun.com",
+ hasFree: true,
+ freeNote: "Free Step-2 models. Chinese AI company.",
+ passthroughModels: true,
+ authHint: "Get API key at platform.stepfun.com",
+ },
+ coze: {
+ id: "coze",
+ alias: "coze",
+ name: "Coze",
+ icon: "smart_toy",
+ color: "#3B82F6",
+ textIcon: "CZ",
+ website: "https://coze.com",
+ hasFree: true,
+ freeNote: "Free ByteDance agent platform. Bot building + LLM access.",
+ passthroughModels: true,
+ authHint: "Get API key at coze.com/open/api",
+ },
+ "360ai": {
+ id: "360ai",
+ alias: "360ai",
+ name: "360 AI",
+ icon: "auto_awesome",
+ color: "#00B96B",
+ textIcon: "360",
+ website: "https://ai.360.cn",
+ hasFree: true,
+ freeNote: "Free 360 AI Brain models. Major Chinese security company.",
+ passthroughModels: true,
+ authHint: "Get API key at ai.360.cn",
+ },
+ doubao: {
+ id: "doubao",
+ alias: "doubao",
+ name: "Doubao",
+ icon: "auto_awesome",
+ color: "#FE2C55",
+ textIcon: "DB",
+ website: "https://doubao.com",
+ hasFree: true,
+ freeNote: "Free Doubao models. ByteDance's chatbot.",
+ passthroughModels: true,
+ authHint: "Get API key at console.volcengine.com",
+ },
+ sensenova: {
+ id: "sensenova",
+ alias: "sensenova",
+ name: "SenseNova",
+ icon: "auto_awesome",
+ color: "#0066FF",
+ textIcon: "SN",
+ website: "https://platform.sensenova.cn",
+ hasFree: true,
+ freeNote: "Free SenseTime models. Computer vision leader.",
+ passthroughModels: true,
+ authHint: "Get API key at platform.sensenova.cn",
+ },
+ sparkdesk: {
+ id: "sparkdesk",
+ alias: "sparkdesk",
+ name: "SparkDesk",
+ icon: "auto_awesome",
+ color: "#0066FF",
+ textIcon: "SD",
+ website: "https://xinghuo.xfyun.cn",
+ hasFree: true,
+ freeNote: "Free iFlytek Spark models (alias for iflytek).",
+ passthroughModels: true,
+ authHint: "Get API key at console.xfyun.cn",
+ },
+ phind: {
+ id: "phind",
+ alias: "phind",
+ name: "Phind",
+ icon: "search",
+ color: "#EC4899",
+ textIcon: "PH",
+ website: "https://phind.com",
+ hasFree: true,
+ freeNote: "Free code search + AI. Developer-focused.",
+ passthroughModels: true,
+ authHint: "Get API key at phind.com",
+ },
+ huggingchat: {
+ id: "huggingchat",
+ alias: "huggingchat",
+ name: "HuggingChat",
+ icon: "chat",
+ color: "#FFD21E",
+ textIcon: "HC",
+ website: "https://huggingface.co/chat",
+ hasFree: true,
+ freeNote: "Free chat with open models (Llama, Mistral, etc.).",
+ passthroughModels: true,
+ authHint: "No API key required for basic access.",
+ },
+ dify: {
+ id: "dify",
+ alias: "dify",
+ name: "Dify",
+ icon: "smart_toy",
+ color: "#6366F1",
+ textIcon: "DF",
+ website: "https://dify.ai",
+ hasFree: true,
+ freeNote: "Free open-source AI app builder + RAG platform.",
+ passthroughModels: true,
+ authHint: "Get API key from your Dify instance.",
poolside: {
id: "poolside",
alias: "poolside",
@@ -2329,6 +2510,7 @@ export function providerAllowsOptionalApiKey(providerId: unknown): boolean {
providerId === "pollinations" ||
providerId === "copilot-web" ||
providerId === "hackclub" ||
+ providerId === "huggingchat" ||
providerId === "gitlawb" ||
providerId === "gitlawb-gmi" ||
isLocalProvider(providerId) ||