From d14c18f77f923d5286188bd392b0e2fffc63baa3 Mon Sep 17 00:00:00 2001 From: BiuBiu_Hu <491887095@qq.com> Date: Thu, 26 Feb 2026 08:01:53 +0800 Subject: [PATCH] refactor: rename provider to alicode (Aliyun Coding) Rename alicloud to alicode to clearly indicate Aliyun's Coding Plan service. - Provider ID: alicode (short for Aliyun Coding) - Model format: alicode/qwen3.5-plus - Simplified mapping - no more bidirectional aliases Co-Authored-By: Claude Opus 4.5 --- .claude/settings.local.json | 8 -------- .gitignore | 1 + open-sse/config/constants.js | 2 +- open-sse/config/providerModels.js | 4 ++-- src/app/api/providers/[id]/models/route.js | 2 +- src/app/api/providers/[id]/test/route.js | 2 +- src/app/api/providers/validate/route.js | 10 +++++----- src/shared/constants/config.js | 2 +- src/shared/constants/providers.js | 2 +- 9 files changed, 13 insertions(+), 20 deletions(-) delete mode 100644 .claude/settings.local.json diff --git a/.claude/settings.local.json b/.claude/settings.local.json deleted file mode 100644 index 9755081..0000000 --- a/.claude/settings.local.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "permissions": { - "allow": [ - "Bash(test:*)", - "Bash(PORT=20127 NEXT_PUBLIC_BASE_URL=http://localhost:20127 npm run dev:*)" - ] - } -} diff --git a/.gitignore b/.gitignore index acb837c..db507dd 100644 --- a/.gitignore +++ b/.gitignore @@ -65,3 +65,4 @@ package-lock.json #Ignore vscode AI rules .github/instructions/codacy.instructions.md README1.md +.claude/ diff --git a/open-sse/config/constants.js b/open-sse/config/constants.js index c4314b4..eb177af 100644 --- a/open-sse/config/constants.js +++ b/open-sse/config/constants.js @@ -175,7 +175,7 @@ export const PROVIDERS = { }, clientVersion: "1.1.3" }, - alicloud: { + alicode: { baseUrl: "https://coding.dashscope.aliyuncs.com/v1/chat/completions", format: "openai", headers: {} diff --git a/open-sse/config/providerModels.js b/open-sse/config/providerModels.js index 26e73fa..1dfcb2e 100644 --- a/open-sse/config/providerModels.js +++ b/open-sse/config/providerModels.js @@ -160,7 +160,7 @@ export const PROVIDER_MODELS = { "minimax-cn": [ { id: "MiniMax-M2.1", name: "MiniMax M2.1" }, ], - alicloud: [ + alicode: [ { id: "qwen3.5-plus", name: "Qwen3.5 Plus" }, { id: "kimi-k2.5", name: "Kimi K2.5" }, { id: "glm-5", name: "GLM 5" }, @@ -223,7 +223,7 @@ export const PROVIDER_ID_TO_ALIAS = { kimi: "kimi", minimax: "minimax", "minimax-cn": "minimax-cn", - alicloud: "alicloud", + alicode: "alicode", }; export function getModelsByProviderId(providerId) { diff --git a/src/app/api/providers/[id]/models/route.js b/src/app/api/providers/[id]/models/route.js index 5e1b55f..5d3ffcd 100644 --- a/src/app/api/providers/[id]/models/route.js +++ b/src/app/api/providers/[id]/models/route.js @@ -72,7 +72,7 @@ const PROVIDER_MODELS_CONFIG = { authHeader: "x-api-key", parseResponse: (data) => data.data || [] }, - alicloud: { + alicode: { url: "https://coding.dashscope.aliyuncs.com/v1/models", method: "GET", headers: { "Content-Type": "application/json" }, diff --git a/src/app/api/providers/[id]/test/route.js b/src/app/api/providers/[id]/test/route.js index 958361c..29338e2 100644 --- a/src/app/api/providers/[id]/test/route.js +++ b/src/app/api/providers/[id]/test/route.js @@ -464,7 +464,7 @@ async function testApiKeyConnection(connection) { return { valid, error: valid ? null : "Invalid API key" }; } - case "alicloud": { + case "alicode": { // 阿里云百炼 Coding Plan uses OpenAI-compatible API const res = await fetch("https://coding.dashscope.aliyuncs.com/v1/chat/completions", { method: "POST", diff --git a/src/app/api/providers/validate/route.js b/src/app/api/providers/validate/route.js index 3ddb887..a452111 100644 --- a/src/app/api/providers/validate/route.js +++ b/src/app/api/providers/validate/route.js @@ -103,19 +103,19 @@ export async function POST(request) { case "kimi": case "minimax": case "minimax-cn": - case "alicloud": { + case "alicode": { const claudeBaseUrls = { glm: "https://api.z.ai/api/anthropic/v1/messages", "glm-cn": "https://open.bigmodel.cn/api/coding/paas/v4/chat/completions", kimi: "https://api.kimi.com/coding/v1/messages", minimax: "https://api.minimax.io/anthropic/v1/messages", "minimax-cn": "https://api.minimaxi.com/anthropic/v1/messages", - alicloud: "https://coding.dashscope.aliyuncs.com/v1/chat/completions", + alicode: "https://coding.dashscope.aliyuncs.com/v1/chat/completions", }; - // glm-cn and alicloud use OpenAI format - if (provider === "glm-cn" || provider === "alicloud") { - const testModel = provider === "alicloud" ? "qwen3.5-plus" : "glm-4.7"; + // glm-cn and alicode use OpenAI format + if (provider === "glm-cn" || provider === "alicode") { + const testModel = provider === "alicode" ? "qwen3.5-plus" : "glm-4.7"; const glmCnRes = await fetch(claudeBaseUrls[provider], { method: "POST", headers: { diff --git a/src/shared/constants/config.js b/src/shared/constants/config.js index aed253c..adad400 100644 --- a/src/shared/constants/config.js +++ b/src/shared/constants/config.js @@ -37,7 +37,7 @@ export const PROVIDER_ENDPOINTS = { kimi: "https://api.kimi.com/coding/v1/messages", minimax: "https://api.minimax.io/anthropic/v1/messages", "minimax-cn": "https://api.minimaxi.com/anthropic/v1/messages", - alicloud: "https://coding.dashscope.aliyuncs.com/v1/chat/completions", + alicode: "https://coding.dashscope.aliyuncs.com/v1/chat/completions", openai: "https://api.openai.com/v1/chat/completions", anthropic: "https://api.anthropic.com/v1/messages", gemini: "https://generativelanguage.googleapis.com/v1beta/models", diff --git a/src/shared/constants/providers.js b/src/shared/constants/providers.js index dee5209..729b7c9 100644 --- a/src/shared/constants/providers.js +++ b/src/shared/constants/providers.js @@ -24,7 +24,7 @@ export const APIKEY_PROVIDERS = { kimi: { id: "kimi", alias: "kimi", name: "Kimi Coding", icon: "psychology", color: "#1E3A8A", textIcon: "KM" }, minimax: { id: "minimax", alias: "minimax", name: "Minimax Coding", icon: "memory", color: "#7C3AED", textIcon: "MM" }, "minimax-cn": { id: "minimax-cn", alias: "minimax-cn", name: "Minimax (China)", icon: "memory", color: "#DC2626", textIcon: "MC" }, - alicloud: { id: "alicloud", alias: "alicloud", name: "阿里云百炼 Coding Plan", icon: "cloud", color: "#FF6A00", textIcon: "ALi" }, + alicode: { id: "alicode", alias: "alicode", name: "阿里云百炼 Coding Plan", icon: "cloud", color: "#FF6A00", textIcon: "ALi" }, openai: { id: "openai", alias: "openai", name: "OpenAI", icon: "auto_awesome", color: "#10A37F", textIcon: "OA" }, anthropic: { id: "anthropic", alias: "anthropic", name: "Anthropic", icon: "smart_toy", color: "#D97757", textIcon: "AN" }, gemini: { id: "gemini", alias: "gemini", name: "Gemini", icon: "diamond", color: "#4285F4", textIcon: "GE" },