From 73ca8340bbb9968dadd10ae1069733e48321d35d Mon Sep 17 00:00:00 2001 From: Jason Date: Wed, 25 Feb 2026 22:21:15 +0800 Subject: [PATCH] feat: add SSAI Code partner provider presets, i18n, icon, and fix models Add SSAI Code as a partner provider across all five apps with endpoint, API key URL, and partner promotion config. Rename brand from SSSAiCode to SSAI Code. Rename sssaicoding.svg to sssaicode.svg and register icon. Add trilingual promotion text for $10 bonus credit. Add missing models arrays in OpenClaw presets for CrazyRouter and SSAI Code. --- src/config/claudeProviderPresets.ts | 21 +++++++ src/config/codexProviderPresets.ts | 21 +++++++ src/config/geminiProviderPresets.ts | 24 ++++++++ src/config/openclawProviderPresets.ts | 60 +++++++++++++++++++ src/config/opencodeProviderPresets.ts | 29 +++++++++ src/i18n/locales/en.json | 3 +- src/i18n/locales/ja.json | 3 +- src/i18n/locales/zh.json | 3 +- src/icons/extracted/index.ts | 1 + .../{sssaicoding.svg => sssaicode.svg} | 0 10 files changed, 162 insertions(+), 3 deletions(-) rename src/icons/extracted/{sssaicoding.svg => sssaicode.svg} (100%) diff --git a/src/config/claudeProviderPresets.ts b/src/config/claudeProviderPresets.ts index b0d50d8c9..8d132dad0 100644 --- a/src/config/claudeProviderPresets.ts +++ b/src/config/claudeProviderPresets.ts @@ -514,6 +514,27 @@ export const providerPresets: ProviderPreset[] = [ icon: "crazyrouter", iconColor: "#000000", }, + { + name: "SSSAiCode", + websiteUrl: "https://www.sssaicode.com", + apiKeyUrl: "https://www.sssaicode.com/register?ref=DCP0SM", + settingsConfig: { + env: { + ANTHROPIC_BASE_URL: "https://node-hk.sssaicode.com/api", + ANTHROPIC_AUTH_TOKEN: "", + }, + }, + endpointCandidates: [ + "https://node-hk.sssaicode.com/api", + "https://claude2.sssaicode.com/api", + "https://anti.sssaicode.com/api", + ], + category: "third_party", + isPartner: true, // 合作伙伴 + partnerPromotionKey: "sssaicode", // 促销信息 i18n key + icon: "sssaicode", + iconColor: "#000000", + }, { name: "OpenRouter", websiteUrl: "https://openrouter.ai", diff --git a/src/config/codexProviderPresets.ts b/src/config/codexProviderPresets.ts index 1354f05af..e35fbaf0e 100644 --- a/src/config/codexProviderPresets.ts +++ b/src/config/codexProviderPresets.ts @@ -263,6 +263,27 @@ requires_openai_auth = true`, icon: "crazyrouter", iconColor: "#000000", }, + { + name: "SSSAiCode", + websiteUrl: "https://www.sssaicode.com", + apiKeyUrl: "https://www.sssaicode.com/register?ref=DCP0SM", + auth: generateThirdPartyAuth(""), + config: generateThirdPartyConfig( + "sssaicode", + "https://node-hk.sssaicode.com/api", + "gpt-5.3-codex", + ), + endpointCandidates: [ + "https://node-hk.sssaicode.com/api/v1", + "https://claude2.sssaicode.com/api/v1", + "https://anti.sssaicode.com/api/v1", + ], + category: "third_party", + isPartner: true, // 合作伙伴 + partnerPromotionKey: "sssaicode", // 促销信息 i18n key + icon: "sssaicode", + iconColor: "#000000", + }, { name: "OpenRouter", websiteUrl: "https://openrouter.ai", diff --git a/src/config/geminiProviderPresets.ts b/src/config/geminiProviderPresets.ts index b969ca1c5..61fbef290 100644 --- a/src/config/geminiProviderPresets.ts +++ b/src/config/geminiProviderPresets.ts @@ -183,6 +183,30 @@ export const geminiProviderPresets: GeminiProviderPreset[] = [ icon: "crazyrouter", iconColor: "#000000", }, + { + name: "SSSAiCode", + websiteUrl: "https://www.sssaicode.com", + apiKeyUrl: "https://www.sssaicode.com/register?ref=DCP0SM", + settingsConfig: { + env: { + GOOGLE_GEMINI_BASE_URL: "https://node-hk.sssaicode.com/api", + GEMINI_MODEL: "gemini-3-pro", + }, + }, + baseURL: "https://node-hk.sssaicode.com/api", + model: "gemini-3-pro", + description: "SSSAiCode", + category: "third_party", + isPartner: true, + partnerPromotionKey: "sssaicode", + endpointCandidates: [ + "https://node-hk.sssaicode.com/api", + "https://claude2.sssaicode.com/api", + "https://anti.sssaicode.com/api", + ], + icon: "sssaicode", + iconColor: "#000000", + }, { name: "OpenRouter", websiteUrl: "https://openrouter.ai", diff --git a/src/config/openclawProviderPresets.ts b/src/config/openclawProviderPresets.ts index ffe84d4c1..4974bf0ca 100644 --- a/src/config/openclawProviderPresets.ts +++ b/src/config/openclawProviderPresets.ts @@ -1108,6 +1108,20 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [ baseUrl: "https://crazyrouter.com", apiKey: "", api: "anthropic-messages", + models: [ + { + id: "claude-sonnet-4-5-20250929", + name: "Claude Sonnet 4.5", + contextWindow: 200000, + cost: { input: 3, output: 15 }, + }, + { + id: "claude-opus-4-6", + name: "Claude Opus 4.6", + contextWindow: 200000, + cost: { input: 5, output: 25 }, + }, + ], }, category: "third_party", isPartner: true, @@ -1132,6 +1146,52 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [ }, }, }, + { + name: "SSSAiCode", + websiteUrl: "https://www.sssaicode.com", + apiKeyUrl: "https://www.sssaicode.com/register?ref=DCP0SM", + settingsConfig: { + baseUrl: "https://node-hk.sssaicode.com/api", + apiKey: "", + api: "anthropic-messages", + models: [ + { + id: "claude-sonnet-4-5-20250929", + name: "Claude Sonnet 4.5", + contextWindow: 200000, + cost: { input: 3, output: 15 }, + }, + { + id: "claude-opus-4-6", + name: "Claude Opus 4.6", + contextWindow: 200000, + cost: { input: 5, output: 25 }, + }, + ], + }, + category: "third_party", + isPartner: true, + partnerPromotionKey: "sssaicode", + icon: "sssaicode", + iconColor: "#000000", + templateValues: { + apiKey: { + label: "API Key", + placeholder: "", + editorValue: "", + }, + }, + suggestedDefaults: { + model: { + primary: "sssaicode/claude-sonnet-4-5-20250929", + fallbacks: ["sssaicode/claude-opus-4-6"], + }, + modelCatalog: { + "sssaicode/claude-sonnet-4-5-20250929": { alias: "Sonnet" }, + "sssaicode/claude-opus-4-6": { alias: "Opus" }, + }, + }, + }, // ========== Cloud Providers ========== { name: "AWS Bedrock", diff --git a/src/config/opencodeProviderPresets.ts b/src/config/opencodeProviderPresets.ts index fd17c72a0..ed03bec46 100644 --- a/src/config/opencodeProviderPresets.ts +++ b/src/config/opencodeProviderPresets.ts @@ -1191,6 +1191,35 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [ }, }, }, + { + name: "SSSAiCode", + websiteUrl: "https://www.sssaicode.com", + apiKeyUrl: "https://www.sssaicode.com/register?ref=DCP0SM", + settingsConfig: { + npm: "@ai-sdk/anthropic", + name: "SSSAiCode", + options: { + baseURL: "https://node-hk.sssaicode.com/api", + apiKey: "", + }, + models: { + "claude-sonnet-4-5-20250929": { name: "Claude Sonnet 4.5" }, + "claude-opus-4-6": { name: "Claude Opus 4.6" }, + }, + }, + category: "third_party", + isPartner: true, + partnerPromotionKey: "sssaicode", + icon: "sssaicode", + iconColor: "#000000", + templateValues: { + apiKey: { + label: "API Key", + placeholder: "", + editorValue: "", + }, + }, + }, { name: "AWS Bedrock", websiteUrl: "https://aws.amazon.com/bedrock/", diff --git a/src/i18n/locales/en.json b/src/i18n/locales/en.json index cffc59bc4..a1da78421 100644 --- a/src/i18n/locales/en.json +++ b/src/i18n/locales/en.json @@ -627,7 +627,8 @@ "rightcode": "RightCode is an official partner of CC Switch. Register using this link and get 5% bonus credit on every top-up!", "aicodemirror": "AICodeMirror is an official partner of CC Switch. Register using this link to get 20% off!", "aicoding": "AI Coding offers an exclusive discount for CC Switch users — 10% off your first top-up!", - "crazyrouter": "CrazyRouter offers an exclusive bonus for CC Switch users — 30% extra credit on your first top-up!" + "crazyrouter": "CrazyRouter offers an exclusive bonus for CC Switch users — 30% extra credit on your first top-up!", + "sssaicode": "SSAI Code offers an exclusive bonus for CC Switch users — $10 extra credit on every top-up!" }, "parameterConfig": "Parameter Config - {{name}} *", "mainModel": "Main Model (optional)", diff --git a/src/i18n/locales/ja.json b/src/i18n/locales/ja.json index 194645c5e..f0db90efd 100644 --- a/src/i18n/locales/ja.json +++ b/src/i18n/locales/ja.json @@ -627,7 +627,8 @@ "rightcode": "RightCode は CC Switch の公式パートナーです。このリンクから登録すると、毎回のチャージに 5% のボーナスクレジットがもらえます!", "aicodemirror": "AICodeMirror は CC Switch の公式パートナーです。このリンクから登録すると20%オフ!", "aicoding": "AI Coding は CC Switch ユーザー向けに特別割引を提供しています。初回チャージが 10% オフ!", - "crazyrouter": "CrazyRouter は CC Switch ユーザー向けに特別ボーナスを提供しています。初回チャージで 30% の追加クレジットがもらえます!" + "crazyrouter": "CrazyRouter は CC Switch ユーザー向けに特別ボーナスを提供しています。初回チャージで 30% の追加クレジットがもらえます!", + "sssaicode": "SSAI Code は CC Switch ユーザー向けに特別ボーナスを提供しています。チャージごとに $10 の追加クレジットがもらえます!" }, "parameterConfig": "パラメーター設定 - {{name}} *", "mainModel": "メインモデル(任意)", diff --git a/src/i18n/locales/zh.json b/src/i18n/locales/zh.json index a5d6e79bd..fe5360dd8 100644 --- a/src/i18n/locales/zh.json +++ b/src/i18n/locales/zh.json @@ -627,7 +627,8 @@ "rightcode": "RightCode 是 CC Switch 的官方合作伙伴,使用此链接注册每次充值均可赠送5%额外额度!", "aicodemirror": "AICodeMirror 是 CC Switch 的官方合作伙伴,使用此链接注册可享受8折优惠!", "aicoding": "AI Coding 为 CC Switch 的用户提供了特殊优惠,首次充值可以享受 9 折优惠!", - "crazyrouter": "CrazyRouter 为 CC Switch 的用户提供了特殊优惠,首次充值赠予 30% 额外额度!" + "crazyrouter": "CrazyRouter 为 CC Switch 的用户提供了特殊优惠,首次充值赠予 30% 额外额度!", + "sssaicode": "SSAI Code 为 CC Switch 的用户提供了特殊优惠,每次充值赠予额外 $10 额度!" }, "parameterConfig": "参数配置 - {{name}} *", "mainModel": "主模型 (可选)", diff --git a/src/icons/extracted/index.ts b/src/icons/extracted/index.ts index 9d5284b95..4f32ce5c3 100644 --- a/src/icons/extracted/index.ts +++ b/src/icons/extracted/index.ts @@ -60,6 +60,7 @@ export const icons: Record = { aihubmix: `AiHubMix`, opencode: `OpenCode`, siliconflow: `SiliconCloud`, + sssaicode: `SSAI Code1001 11010110 101110 110SSSSAiCode`, catcoder: `KwaiKAT`, mcp: `ModelContextProtocol`, nvidia: `Nvidia`, diff --git a/src/icons/extracted/sssaicoding.svg b/src/icons/extracted/sssaicode.svg similarity index 100% rename from src/icons/extracted/sssaicoding.svg rename to src/icons/extracted/sssaicode.svg