diff --git a/README.md b/README.md index 95847ab..3f5ce1e 100644 --- a/README.md +++ b/README.md @@ -169,6 +169,13 @@ Codex support is powered by [musistudio/codexl](https://github.com/musistudio/co RunAPI + + + TeamoRouter icon +
+ TeamoRouter +
+ diff --git a/README_zh.md b/README_zh.md index 15bdb68..cd79161 100644 --- a/README_zh.md +++ b/README_zh.md @@ -168,6 +168,13 @@ CCR 可以完全通过桌面 UI 完成配置。首次使用建议按下面顺序 RunAPI + + + TeamoRouter 图标 +
+ TeamoRouter +
+ diff --git a/docs/public/provider-icons/teamorouter.png b/docs/public/provider-icons/teamorouter.png new file mode 100644 index 0000000..0eb894b Binary files /dev/null and b/docs/public/provider-icons/teamorouter.png differ diff --git a/docs/src/content/docs/en/configuration/provider-deeplink.md b/docs/src/content/docs/en/configuration/provider-deeplink.md index 6a3ba3a..80e6cf0 100644 --- a/docs/src/content/docs/en/configuration/provider-deeplink.md +++ b/docs/src/content/docs/en/configuration/provider-deeplink.md @@ -74,6 +74,10 @@ Choose a provider below to get started. CCR shows what will be added before savi RunAPIResponses / Chat Completions + + + TeamoRouterAnthropic / Chat / Responses + ## Embeddable Button Component diff --git a/docs/src/content/docs/zh/configuration/provider-deeplink.md b/docs/src/content/docs/zh/configuration/provider-deeplink.md index 12546d2..703ad8e 100644 --- a/docs/src/content/docs/zh/configuration/provider-deeplink.md +++ b/docs/src/content/docs/zh/configuration/provider-deeplink.md @@ -74,6 +74,10 @@ lead: 快速添加常见模型供应商,确认无误后即可保存,减少 RunAPIResponses / Chat Completions + + + TeamoRouterAnthropic / Chat / Responses + ## 嵌入式按钮组件 diff --git a/docs/src/styles/global.css b/docs/src/styles/global.css index 6bff293..a435ff4 100644 --- a/docs/src/styles/global.css +++ b/docs/src/styles/global.css @@ -1306,6 +1306,12 @@ h1 { --provider-brand-3: #f3f3f3; } +.doc-markdown a.provider-import-button.provider-teamorouter { + --provider-brand: #0c0c0f; + --provider-brand-2: #555b64; + --provider-brand-3: #f4f4f5; +} + .doc-markdown a.provider-import-button.provider-deepseek { --provider-brand: #173aa8; --provider-brand-2: #4e69ff; diff --git a/src/main/presets/index.ts b/src/main/presets/index.ts index 1afbb5f..cee4dea 100644 --- a/src/main/presets/index.ts +++ b/src/main/presets/index.ts @@ -9,6 +9,7 @@ import { openaiProviderPreset } from "./openai"; import { openRouterProviderPreset } from "./openrouter"; import { runApiProviderPreset } from "./runapi"; import { siliconFlowProviderPreset } from "./siliconflow"; +import { teamoRouterProviderPreset } from "./teamorouter"; import { zaiGlobalCodingProviderPreset } from "./zai-global-coding"; import { zaiGlobalGeneralProviderPreset } from "./zai-global-general"; import { zhipuCnCodingProviderPreset } from "./zhipu-cn-coding"; @@ -40,7 +41,8 @@ export const providerPresets: ProviderPreset[] = [ moonshotGlobalProviderPreset, bailianProviderPreset, siliconFlowProviderPreset, - runApiProviderPreset + runApiProviderPreset, + teamoRouterProviderPreset ]; export function getProviderPresets(): ProviderPreset[] { diff --git a/src/main/presets/teamorouter/index.ts b/src/main/presets/teamorouter/index.ts new file mode 100644 index 0000000..aa19e75 --- /dev/null +++ b/src/main/presets/teamorouter/index.ts @@ -0,0 +1,15 @@ +import { defaultProviderAccountConfig, type ProviderPreset } from "../../../shared/provider-presets"; + +export const teamoRouterProviderPreset: ProviderPreset = { + account: defaultProviderAccountConfig, + aliases: ["teamorouter", "teamo router", "teamo"], + endpoints: [ + { + baseUrl: "https://api.teamorouter.com", + protocols: ["anthropic_messages", "openai_chat_completions", "openai_responses"] + } + ], + id: "teamorouter", + name: "TeamoRouter", + websiteUrl: "https://teamorouter.com/" +}; diff --git a/src/renderer/assets/provider-icons/teamorouter.png b/src/renderer/assets/provider-icons/teamorouter.png new file mode 100644 index 0000000..0eb894b Binary files /dev/null and b/src/renderer/assets/provider-icons/teamorouter.png differ diff --git a/src/renderer/pages/home/shared/options.ts b/src/renderer/pages/home/shared/options.ts index 8eb75a9..240d6bb 100644 --- a/src/renderer/pages/home/shared/options.ts +++ b/src/renderer/pages/home/shared/options.ts @@ -51,6 +51,7 @@ import openaiProviderIconUrl from "@/assets/provider-icons/openai.png"; import openrouterProviderIconUrl from "@/assets/provider-icons/openrouter.ico"; import runapiProviderIconUrl from "@/assets/provider-icons/runapi.jpg"; import siliconflowProviderIconUrl from "@/assets/provider-icons/siliconflow.png"; +import teamorouterProviderIconUrl from "@/assets/provider-icons/teamorouter.png"; import zaiGlobalCodingProviderIconUrl from "@/assets/provider-icons/zai-global-coding.svg"; import zaiGlobalGeneralProviderIconUrl from "@/assets/provider-icons/zai-global-general.svg"; import zhipuCnCodingProviderIconUrl from "@/assets/provider-icons/zhipu-cn-coding.png"; @@ -328,6 +329,7 @@ export const providerPresetIconUrls: Record = { openrouter: openrouterProviderIconUrl, runapi: runapiProviderIconUrl, siliconflow: siliconflowProviderIconUrl, + teamorouter: teamorouterProviderIconUrl, "zai-global-coding": zaiGlobalCodingProviderIconUrl, "zai-global-general": zaiGlobalGeneralProviderIconUrl, "zhipu-cn-coding": zhipuCnCodingProviderIconUrl,