chore(presets): refresh sponsor domains and referral links

- PackyCode: packyapi.com -> www.packyapi.ai across all 8 app presets;
  drop the api-slb.packyapi.com endpoint candidate
- RightCode: right.codes -> www.rightapi.ai across 7 app presets, keeping
  the /claude and /codex/v1 path split and adding the www prefix that the
  Codex-side endpoints were missing
- ClaudeAPI: site -> www.apito.ai, referral -> console.apito.ai/agent/...,
  endpoint -> gw.apito.ai (Claude Code and Claude Desktop only)
- APINebula: apinebula.com -> apinebula.ai across all 8 app presets,
  including the endpoint inside the Codex config.toml template
- SudoCode.chat: referral link only, /register -> /sign-up with new aff
  and utm parameters (7 app presets); SudoCode.us is a different company
  and is untouched

READMEs (en/zh/ja/de) carry the same URL updates. Brand names, icons,
i18n promo keys and README copy are deliberately unchanged.
This commit is contained in:
Jason
2026-07-26 17:46:43 +08:00
parent 9cf4ae41e6
commit b0482320a7
12 changed files with 126 additions and 141 deletions
+15 -18
View File
@@ -184,17 +184,14 @@ export const claudeDesktopProviderPresets: ClaudeDesktopProviderPreset[] = [
},
{
name: "PackyCode",
websiteUrl: "https://www.packyapi.com",
apiKeyUrl: "https://www.packyapi.com/register?aff=cc-switch",
websiteUrl: "https://www.packyapi.ai",
apiKeyUrl: "https://www.packyapi.ai/register?aff=cc-switch",
category: "third_party",
baseUrl: "https://www.packyapi.com",
baseUrl: "https://www.packyapi.ai",
mode: "direct",
apiFormat: "anthropic",
modelRoutes: passthroughRoutes(),
endpointCandidates: [
"https://www.packyapi.com",
"https://api-slb.packyapi.com",
],
endpointCandidates: ["https://www.packyapi.ai"],
isPartner: true,
partnerPromotionKey: "packycode",
icon: "packycode",
@@ -214,14 +211,14 @@ export const claudeDesktopProviderPresets: ClaudeDesktopProviderPreset[] = [
},
{
name: "APINebula",
websiteUrl: "https://apinebula.com",
apiKeyUrl: "https://apinebula.com/VjM74M",
websiteUrl: "https://apinebula.ai",
apiKeyUrl: "https://apinebula.ai/VjM74M",
category: "third_party",
baseUrl: "https://apinebula.com",
baseUrl: "https://apinebula.ai",
mode: "direct",
apiFormat: "anthropic",
modelRoutes: passthroughRoutes(),
endpointCandidates: ["https://apinebula.com"],
endpointCandidates: ["https://apinebula.ai"],
isPartner: true,
partnerPromotionKey: "apinebula",
icon: "apinebula",
@@ -374,10 +371,10 @@ export const claudeDesktopProviderPresets: ClaudeDesktopProviderPreset[] = [
},
{
name: "ClaudeAPI",
websiteUrl: "https://claudeapi.com",
apiKeyUrl: "https://console.claudeapi.com/register?aff=pCLD",
websiteUrl: "https://www.apito.ai",
apiKeyUrl: "https://console.apito.ai/agent/register/pQBql2buaqiX3dDS",
category: "aggregator",
baseUrl: "https://gw.claudeapi.com",
baseUrl: "https://gw.apito.ai",
mode: "direct",
apiFormat: "anthropic",
modelRoutes: passthroughRoutes(),
@@ -631,10 +628,10 @@ export const claudeDesktopProviderPresets: ClaudeDesktopProviderPreset[] = [
},
{
name: "RightCode",
websiteUrl: "https://www.right.codes",
apiKeyUrl: "https://www.right.codes/register?aff=CCSWITCH",
websiteUrl: "https://www.rightapi.ai",
apiKeyUrl: "https://www.rightapi.ai/register?aff=CCSWITCH",
category: "third_party",
baseUrl: "https://www.right.codes/claude",
baseUrl: "https://www.rightapi.ai/claude",
mode: "direct",
apiFormat: "anthropic",
modelRoutes: passthroughRoutes(),
@@ -724,7 +721,7 @@ export const claudeDesktopProviderPresets: ClaudeDesktopProviderPreset[] = [
name: "SudoCode.chat",
websiteUrl: "https://sudocode.chat",
apiKeyUrl:
"https://sudocode.chat/register?utm_source=ccswitch&utm_medium=partner",
"https://sudocode.chat/sign-up?aff=CC-SWITCH&utm_source=cc-switch&utm_medium=sponsor&utm_campaign=ccswitch",
category: "third_party",
baseUrl: "https://api.sudocode.chat",
mode: "direct",
+15 -18
View File
@@ -135,19 +135,16 @@ export const providerPresets: ProviderPreset[] = [
},
{
name: "PackyCode",
websiteUrl: "https://www.packyapi.com",
apiKeyUrl: "https://www.packyapi.com/register?aff=cc-switch",
websiteUrl: "https://www.packyapi.ai",
apiKeyUrl: "https://www.packyapi.ai/register?aff=cc-switch",
settingsConfig: {
env: {
ANTHROPIC_BASE_URL: "https://www.packyapi.com",
ANTHROPIC_BASE_URL: "https://www.packyapi.ai",
ANTHROPIC_AUTH_TOKEN: "",
},
},
// 请求地址候选(用于地址管理/测速)
endpointCandidates: [
"https://www.packyapi.com",
"https://api-slb.packyapi.com",
],
endpointCandidates: ["https://www.packyapi.ai"],
category: "third_party",
isPartner: true, // 合作伙伴
partnerPromotionKey: "packycode", // 促销信息 i18n key
@@ -170,16 +167,16 @@ export const providerPresets: ProviderPreset[] = [
},
{
name: "APINebula",
websiteUrl: "https://apinebula.com",
apiKeyUrl: "https://apinebula.com/VjM74M",
websiteUrl: "https://apinebula.ai",
apiKeyUrl: "https://apinebula.ai/VjM74M",
settingsConfig: {
env: {
ANTHROPIC_BASE_URL: "https://apinebula.com",
ANTHROPIC_BASE_URL: "https://apinebula.ai",
ANTHROPIC_AUTH_TOKEN: "",
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC: "1",
},
},
endpointCandidates: ["https://apinebula.com"],
endpointCandidates: ["https://apinebula.ai"],
category: "third_party",
isPartner: true,
partnerPromotionKey: "apinebula",
@@ -356,11 +353,11 @@ export const providerPresets: ProviderPreset[] = [
},
{
name: "ClaudeAPI",
websiteUrl: "https://claudeapi.com",
apiKeyUrl: "https://console.claudeapi.com/register?aff=pCLD",
websiteUrl: "https://www.apito.ai",
apiKeyUrl: "https://console.apito.ai/agent/register/pQBql2buaqiX3dDS",
settingsConfig: {
env: {
ANTHROPIC_BASE_URL: "https://gw.claudeapi.com",
ANTHROPIC_BASE_URL: "https://gw.apito.ai",
ANTHROPIC_AUTH_TOKEN: "",
},
},
@@ -652,11 +649,11 @@ export const providerPresets: ProviderPreset[] = [
},
{
name: "RightCode",
websiteUrl: "https://www.right.codes",
apiKeyUrl: "https://www.right.codes/register?aff=CCSWITCH",
websiteUrl: "https://www.rightapi.ai",
apiKeyUrl: "https://www.rightapi.ai/register?aff=CCSWITCH",
settingsConfig: {
env: {
ANTHROPIC_BASE_URL: "https://www.right.codes/claude",
ANTHROPIC_BASE_URL: "https://www.rightapi.ai/claude",
ANTHROPIC_AUTH_TOKEN: "",
},
},
@@ -758,7 +755,7 @@ export const providerPresets: ProviderPreset[] = [
name: "SudoCode.chat",
websiteUrl: "https://sudocode.chat",
apiKeyUrl:
"https://sudocode.chat/register?utm_source=ccswitch&utm_medium=partner",
"https://sudocode.chat/sign-up?aff=CC-SWITCH&utm_source=cc-switch&utm_medium=sponsor&utm_campaign=ccswitch",
settingsConfig: {
env: {
ANTHROPIC_BASE_URL: "https://api.sudocode.chat",
+12 -15
View File
@@ -196,19 +196,16 @@ export const codexProviderPresets: CodexProviderPreset[] = [
},
{
name: "PackyCode",
websiteUrl: "https://www.packyapi.com",
apiKeyUrl: "https://www.packyapi.com/register?aff=cc-switch",
websiteUrl: "https://www.packyapi.ai",
apiKeyUrl: "https://www.packyapi.ai/register?aff=cc-switch",
category: "third_party",
auth: generateThirdPartyAuth(""),
config: generateThirdPartyConfig(
"packycode",
"https://www.packyapi.com/v1",
"https://www.packyapi.ai/v1",
"gpt-5.5",
),
endpointCandidates: [
"https://www.packyapi.com/v1",
"https://api-slb.packyapi.com/v1",
],
endpointCandidates: ["https://www.packyapi.ai/v1"],
isPartner: true, // 合作伙伴
partnerPromotionKey: "packycode", // 促销信息 i18n key
icon: "packycode",
@@ -231,8 +228,8 @@ export const codexProviderPresets: CodexProviderPreset[] = [
},
{
name: "APINebula",
websiteUrl: "https://apinebula.com",
apiKeyUrl: "https://apinebula.com/VjM74M",
websiteUrl: "https://apinebula.ai",
apiKeyUrl: "https://apinebula.ai/VjM74M",
category: "third_party",
auth: generateThirdPartyAuth(""),
config: `model_provider = "custom"
@@ -243,10 +240,10 @@ disable_response_storage = true
[model_providers.custom]
name = "APINebula"
base_url = "https://apinebula.com/v1"
base_url = "https://apinebula.ai/v1"
wire_api = "responses"
requires_openai_auth = true`,
endpointCandidates: ["https://apinebula.com/v1"],
endpointCandidates: ["https://apinebula.ai/v1"],
apiFormat: "openai_responses",
isPartner: true,
partnerPromotionKey: "apinebula",
@@ -744,12 +741,12 @@ requires_openai_auth = true`,
},
{
name: "RightCode",
websiteUrl: "https://www.right.codes",
apiKeyUrl: "https://www.right.codes/register?aff=CCSWITCH",
websiteUrl: "https://www.rightapi.ai",
apiKeyUrl: "https://www.rightapi.ai/register?aff=CCSWITCH",
auth: generateThirdPartyAuth(""),
config: generateThirdPartyConfig(
"rightcode",
"https://right.codes/codex/v1",
"https://www.rightapi.ai/codex/v1",
"gpt-5.5",
),
category: "third_party",
@@ -851,7 +848,7 @@ requires_openai_auth = true`,
name: "SudoCode.chat",
websiteUrl: "https://sudocode.chat",
apiKeyUrl:
"https://sudocode.chat/register?utm_source=ccswitch&utm_medium=partner",
"https://sudocode.chat/sign-up?aff=CC-SWITCH&utm_source=cc-switch&utm_medium=sponsor&utm_campaign=ccswitch",
category: "third_party",
auth: generateThirdPartyAuth(""),
config: `model_provider = "custom"
+10 -13
View File
@@ -54,44 +54,41 @@ export const geminiProviderPresets: GeminiProviderPreset[] = [
// ===== 赞助商预设:文件顺序 = 应用内展示顺序,与 README 赞助商表对齐 =====
{
name: "PackyCode",
websiteUrl: "https://www.packyapi.com",
apiKeyUrl: "https://www.packyapi.com/register?aff=cc-switch",
websiteUrl: "https://www.packyapi.ai",
apiKeyUrl: "https://www.packyapi.ai/register?aff=cc-switch",
settingsConfig: {
env: {
GOOGLE_GEMINI_BASE_URL: "https://www.packyapi.com",
GOOGLE_GEMINI_BASE_URL: "https://www.packyapi.ai",
GEMINI_MODEL: "gemini-3.5-flash",
},
},
baseURL: "https://www.packyapi.com",
baseURL: "https://www.packyapi.ai",
model: "gemini-3.5-flash",
description: "PackyCode",
category: "third_party",
isPartner: true,
partnerPromotionKey: "packycode",
endpointCandidates: [
"https://api-slb.packyapi.com",
"https://www.packyapi.com",
],
endpointCandidates: ["https://www.packyapi.ai"],
icon: "packycode",
},
{
name: "APINebula",
websiteUrl: "https://apinebula.com",
apiKeyUrl: "https://apinebula.com/VjM74M",
websiteUrl: "https://apinebula.ai",
apiKeyUrl: "https://apinebula.ai/VjM74M",
settingsConfig: {
env: {
GOOGLE_GEMINI_BASE_URL: "https://apinebula.com",
GOOGLE_GEMINI_BASE_URL: "https://apinebula.ai",
GEMINI_API_KEY: "",
GEMINI_MODEL: "gemini-3.5-flash",
},
},
baseURL: "https://apinebula.com",
baseURL: "https://apinebula.ai",
model: "gemini-3.5-flash",
description: "APINebula",
category: "third_party",
isPartner: true,
partnerPromotionKey: "apinebula",
endpointCandidates: ["https://apinebula.com"],
endpointCandidates: ["https://apinebula.ai"],
icon: "apinebula",
},
{
+12 -15
View File
@@ -80,14 +80,11 @@ export const grokBuildProviderPresets: GrokBuildProviderPreset[] = [
// ===== 赞助商预设:文件顺序 = 应用内展示顺序,与 README 赞助商表对齐 =====
{
name: "PackyCode",
websiteUrl: "https://www.packyapi.com",
apiKeyUrl: "https://www.packyapi.com/register?aff=cc-switch",
websiteUrl: "https://www.packyapi.ai",
apiKeyUrl: "https://www.packyapi.ai/register?aff=cc-switch",
auth: grokAuth(),
config: grokPresetConfig("PackyCode", "https://www.packyapi.com/v1"),
endpointCandidates: [
"https://www.packyapi.com/v1",
"https://api-slb.packyapi.com/v1",
],
config: grokPresetConfig("PackyCode", "https://www.packyapi.ai/v1"),
endpointCandidates: ["https://www.packyapi.ai/v1"],
category: "third_party",
isPartner: true,
partnerPromotionKey: "packycode",
@@ -107,11 +104,11 @@ export const grokBuildProviderPresets: GrokBuildProviderPreset[] = [
},
{
name: "APINebula",
websiteUrl: "https://apinebula.com",
apiKeyUrl: "https://apinebula.com/VjM74M",
websiteUrl: "https://apinebula.ai",
apiKeyUrl: "https://apinebula.ai/VjM74M",
auth: grokAuth(),
config: grokPresetConfig("APINebula", "https://apinebula.com/v1"),
endpointCandidates: ["https://apinebula.com/v1"],
config: grokPresetConfig("APINebula", "https://apinebula.ai/v1"),
endpointCandidates: ["https://apinebula.ai/v1"],
apiFormat: "openai_responses",
category: "third_party",
isPartner: true,
@@ -369,10 +366,10 @@ export const grokBuildProviderPresets: GrokBuildProviderPreset[] = [
},
{
name: "RightCode",
websiteUrl: "https://www.right.codes",
apiKeyUrl: "https://www.right.codes/register?aff=CCSWITCH",
websiteUrl: "https://www.rightapi.ai",
apiKeyUrl: "https://www.rightapi.ai/register?aff=CCSWITCH",
auth: grokAuth(),
config: grokPresetConfig("RightCode", "https://right.codes/codex/v1"),
config: grokPresetConfig("RightCode", "https://www.rightapi.ai/codex/v1"),
category: "third_party",
isPartner: true,
partnerPromotionKey: "rightcode",
@@ -455,7 +452,7 @@ export const grokBuildProviderPresets: GrokBuildProviderPreset[] = [
name: "SudoCode.chat",
websiteUrl: "https://sudocode.chat",
apiKeyUrl:
"https://sudocode.chat/register?utm_source=ccswitch&utm_medium=partner",
"https://sudocode.chat/sign-up?aff=CC-SWITCH&utm_source=cc-switch&utm_medium=sponsor&utm_campaign=ccswitch",
auth: grokAuth(),
config: grokPresetConfig("SudoCode.chat", "https://api.sudocode.chat/v1"),
endpointCandidates: ["https://api.sudocode.chat/v1"],
+10 -10
View File
@@ -171,11 +171,11 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
},
{
name: "PackyCode",
websiteUrl: "https://www.packyapi.com",
apiKeyUrl: "https://www.packyapi.com/register?aff=cc-switch",
websiteUrl: "https://www.packyapi.ai",
apiKeyUrl: "https://www.packyapi.ai/register?aff=cc-switch",
settingsConfig: {
name: "packycode",
base_url: "https://www.packyapi.com",
base_url: "https://www.packyapi.ai",
api_key: "",
api_mode: "anthropic_messages",
models: [
@@ -213,11 +213,11 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
},
{
name: "APINebula",
websiteUrl: "https://apinebula.com",
apiKeyUrl: "https://apinebula.com/VjM74M",
websiteUrl: "https://apinebula.ai",
apiKeyUrl: "https://apinebula.ai/VjM74M",
settingsConfig: {
name: "apinebula",
base_url: "https://apinebula.com/v1",
base_url: "https://apinebula.ai/v1",
api_key: "",
api_mode: "chat_completions",
models: [
@@ -834,11 +834,11 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
},
{
name: "RightCode",
websiteUrl: "https://www.right.codes",
apiKeyUrl: "https://www.right.codes/register?aff=CCSWITCH",
websiteUrl: "https://www.rightapi.ai",
apiKeyUrl: "https://www.rightapi.ai/register?aff=CCSWITCH",
settingsConfig: {
name: "rightcode",
base_url: "https://www.right.codes/claude",
base_url: "https://www.rightapi.ai/claude",
api_key: "",
api_mode: "anthropic_messages",
models: [
@@ -970,7 +970,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
name: "SudoCode.chat",
websiteUrl: "https://sudocode.chat",
apiKeyUrl:
"https://sudocode.chat/register?utm_source=ccswitch&utm_medium=partner",
"https://sudocode.chat/sign-up?aff=CC-SWITCH&utm_source=cc-switch&utm_medium=sponsor&utm_campaign=ccswitch",
settingsConfig: {
name: "sudocode",
base_url: "https://api.sudocode.chat/v1",
+10 -10
View File
@@ -187,10 +187,10 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
{
name: "PackyCode",
websiteUrl: "https://www.packyapi.com",
apiKeyUrl: "https://www.packyapi.com/register?aff=cc-switch",
websiteUrl: "https://www.packyapi.ai",
apiKeyUrl: "https://www.packyapi.ai/register?aff=cc-switch",
settingsConfig: {
baseUrl: "https://www.packyapi.com",
baseUrl: "https://www.packyapi.ai",
apiKey: "",
api: "anthropic-messages",
models: [
@@ -268,10 +268,10 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
{
name: "APINebula",
websiteUrl: "https://apinebula.com",
apiKeyUrl: "https://apinebula.com/VjM74M",
websiteUrl: "https://apinebula.ai",
apiKeyUrl: "https://apinebula.ai/VjM74M",
settingsConfig: {
baseUrl: "https://apinebula.com/v1",
baseUrl: "https://apinebula.ai/v1",
apiKey: "",
api: "openai-completions",
models: [
@@ -1265,10 +1265,10 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
{
name: "RightCode",
websiteUrl: "https://www.right.codes",
apiKeyUrl: "https://www.right.codes/register?aff=CCSWITCH",
websiteUrl: "https://www.rightapi.ai",
apiKeyUrl: "https://www.rightapi.ai/register?aff=CCSWITCH",
settingsConfig: {
baseUrl: "https://www.right.codes/claude",
baseUrl: "https://www.rightapi.ai/claude",
apiKey: "",
api: "anthropic-messages",
models: [
@@ -1524,7 +1524,7 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
name: "SudoCode.chat",
websiteUrl: "https://sudocode.chat",
apiKeyUrl:
"https://sudocode.chat/register?utm_source=ccswitch&utm_medium=partner",
"https://sudocode.chat/sign-up?aff=CC-SWITCH&utm_source=cc-switch&utm_medium=sponsor&utm_campaign=ccswitch",
settingsConfig: {
baseUrl: "https://api.sudocode.chat/v1",
apiKey: "",
+10 -10
View File
@@ -359,13 +359,13 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
{
name: "PackyCode",
websiteUrl: "https://www.packyapi.com",
apiKeyUrl: "https://www.packyapi.com/register?aff=cc-switch",
websiteUrl: "https://www.packyapi.ai",
apiKeyUrl: "https://www.packyapi.ai/register?aff=cc-switch",
settingsConfig: {
npm: "@ai-sdk/anthropic",
name: "PackyCode",
options: {
baseURL: "https://www.packyapi.com/v1",
baseURL: "https://www.packyapi.ai/v1",
apiKey: "",
setCacheKey: true,
},
@@ -416,13 +416,13 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
{
name: "APINebula",
websiteUrl: "https://apinebula.com",
apiKeyUrl: "https://apinebula.com/VjM74M",
websiteUrl: "https://apinebula.ai",
apiKeyUrl: "https://apinebula.ai/VjM74M",
settingsConfig: {
npm: "@ai-sdk/openai-compatible",
name: "APINebula",
options: {
baseURL: "https://apinebula.com/v1",
baseURL: "https://apinebula.ai/v1",
apiKey: "",
setCacheKey: true,
},
@@ -1039,13 +1039,13 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
{
name: "RightCode",
websiteUrl: "https://www.right.codes",
apiKeyUrl: "https://www.right.codes/register?aff=CCSWITCH",
websiteUrl: "https://www.rightapi.ai",
apiKeyUrl: "https://www.rightapi.ai/register?aff=CCSWITCH",
settingsConfig: {
npm: "@ai-sdk/openai",
name: "RightCode",
options: {
baseURL: "https://right.codes/codex/v1",
baseURL: "https://www.rightapi.ai/codex/v1",
apiKey: "",
setCacheKey: true,
},
@@ -1217,7 +1217,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
name: "SudoCode.chat",
websiteUrl: "https://sudocode.chat",
apiKeyUrl:
"https://sudocode.chat/register?utm_source=ccswitch&utm_medium=partner",
"https://sudocode.chat/sign-up?aff=CC-SWITCH&utm_source=cc-switch&utm_medium=sponsor&utm_campaign=ccswitch",
settingsConfig: {
npm: "@ai-sdk/openai",
name: "SudoCode.chat",