diff --git a/src/config/claudeProviderPresets.ts b/src/config/claudeProviderPresets.ts index 5eda7f8d..49254e29 100644 --- a/src/config/claudeProviderPresets.ts +++ b/src/config/claudeProviderPresets.ts @@ -100,7 +100,7 @@ export const providerPresets: ProviderPreset[] = [ iconColor: "#0F62FE", }, { - name: "Z.ai GLM", + name: "Zhipu GLM en", websiteUrl: "https://z.ai", apiKeyUrl: "https://z.ai/subscribe?ic=8JVLJQFSKB", settingsConfig: { @@ -211,6 +211,7 @@ export const providerPresets: ProviderPreset[] = [ editorValue: "", }, }, + icon: "catcoder", }, { name: "Longcat", @@ -336,6 +337,42 @@ export const providerPresets: ProviderPreset[] = [ icon: "aihubmix", iconColor: "#006FFB", }, + { + name: "SiliconFlow", + websiteUrl: "https://siliconflow.cn", + apiKeyUrl: "https://cloud.siliconflow.cn/me/account/ak", + settingsConfig: { + env: { + ANTHROPIC_BASE_URL: "https://api.siliconflow.cn", + ANTHROPIC_AUTH_TOKEN: "", + ANTHROPIC_MODEL: "Pro/MiniMaxAI/MiniMax-M2.1", + ANTHROPIC_DEFAULT_HAIKU_MODEL: "Pro/MiniMaxAI/MiniMax-M2.1", + ANTHROPIC_DEFAULT_SONNET_MODEL: "Pro/MiniMaxAI/MiniMax-M2.1", + ANTHROPIC_DEFAULT_OPUS_MODEL: "Pro/MiniMaxAI/MiniMax-M2.1", + }, + }, + category: "aggregator", + icon: "siliconflow", + iconColor: "#6E29F6", + }, + { + name: "SiliconFlow en", + websiteUrl: "https://siliconflow.com", + apiKeyUrl: "https://cloud.siliconflow.com/account/ak", + settingsConfig: { + env: { + ANTHROPIC_BASE_URL: "https://api.siliconflow.com", + ANTHROPIC_AUTH_TOKEN: "", + ANTHROPIC_MODEL: "MiniMaxAI/MiniMax-M2.1", + ANTHROPIC_DEFAULT_HAIKU_MODEL: "MiniMaxAI/MiniMax-M2.1", + ANTHROPIC_DEFAULT_SONNET_MODEL: "MiniMaxAI/MiniMax-M2.1", + ANTHROPIC_DEFAULT_OPUS_MODEL: "MiniMaxAI/MiniMax-M2.1", + }, + }, + category: "aggregator", + icon: "siliconflow", + iconColor: "#000000", + }, { name: "DMXAPI", websiteUrl: "https://www.dmxapi.cn", @@ -412,6 +449,20 @@ export const providerPresets: ProviderPreset[] = [ icon: "aigocode", iconColor: "#5B7FFF", }, + { + name: "RightCode", + websiteUrl: "https://www.right.codes", + apiKeyUrl: "https://www.right.codes/register?aff=0bdf9bfa", + settingsConfig: { + env: { + ANTHROPIC_BASE_URL: "https://www.right.codes/claude", + ANTHROPIC_AUTH_TOKEN: "", + }, + }, + category: "third_party", + icon: "rc", + iconColor: "#E96B2C", + }, { name: "OpenRouter", websiteUrl: "https://openrouter.ai", diff --git a/src/config/codexProviderPresets.ts b/src/config/codexProviderPresets.ts index e728c8af..6622a2cf 100644 --- a/src/config/codexProviderPresets.ts +++ b/src/config/codexProviderPresets.ts @@ -192,6 +192,20 @@ requires_openai_auth = true`, icon: "aigocode", iconColor: "#5B7FFF", }, + { + name: "RightCode", + websiteUrl: "https://www.right.codes", + apiKeyUrl: "https://www.right.codes/register?aff=0bdf9bfa", + auth: generateThirdPartyAuth(""), + config: generateThirdPartyConfig( + "rightcode", + "https://right.codes/codex/v1", + "gpt-5.2", + ), + category: "third_party", + icon: "rc", + iconColor: "#E96B2C", + }, { name: "OpenRouter", websiteUrl: "https://openrouter.ai", diff --git a/src/config/opencodeProviderPresets.ts b/src/config/opencodeProviderPresets.ts index 48014a88..15d5cf69 100644 --- a/src/config/opencodeProviderPresets.ts +++ b/src/config/opencodeProviderPresets.ts @@ -302,6 +302,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [ editorValue: "", }, }, + icon: "catcoder", }, { name: "Longcat", diff --git a/src/icons/extracted/catcoder.svg b/src/icons/extracted/catcoder.svg new file mode 100644 index 00000000..d9bf3d7c --- /dev/null +++ b/src/icons/extracted/catcoder.svg @@ -0,0 +1 @@ +KwaiKAT \ No newline at end of file diff --git a/src/icons/extracted/index.ts b/src/icons/extracted/index.ts index 405f3aca..0ac9282d 100644 --- a/src/icons/extracted/index.ts +++ b/src/icons/extracted/index.ts @@ -50,10 +50,14 @@ export const icons: Record = { zeroone: `01.AI`, zhipu: `Zhipu`, openrouter: `OpenRouter`, + rc: `RightCode`, longcat: `LongCat`, modelscope: `ModelScope`, aihubmix: `AiHubMix`, opencode: `OpenCode`, + siliconflow: `SiliconCloud`, + catcoder: `KwaiKAT`, + mcp: `ModelContextProtocol`, }; export const iconList = Object.keys(icons); diff --git a/src/icons/extracted/mcp.svg b/src/icons/extracted/mcp.svg new file mode 100644 index 00000000..5cd83a8b --- /dev/null +++ b/src/icons/extracted/mcp.svg @@ -0,0 +1 @@ +ModelContextProtocol \ No newline at end of file diff --git a/src/icons/extracted/rc.svg b/src/icons/extracted/rc.svg new file mode 100644 index 00000000..b8089148 --- /dev/null +++ b/src/icons/extracted/rc.svg @@ -0,0 +1,6 @@ + + RightCode + + + + diff --git a/src/icons/extracted/siliconflow.svg b/src/icons/extracted/siliconflow.svg new file mode 100644 index 00000000..6b5f6d80 --- /dev/null +++ b/src/icons/extracted/siliconflow.svg @@ -0,0 +1 @@ +SiliconCloud \ No newline at end of file