/** * 预设供应商配置模板 */ import { ProviderCategory } from "../types"; export interface TemplateValueConfig { label: string; placeholder: string; defaultValue?: string; editorValue: string; } /** * 预设供应商的视觉主题配置 */ export interface PresetTheme { /** 图标类型:'claude' | 'codex' | 'gemini' | 'generic' */ icon?: "claude" | "codex" | "gemini" | "generic"; /** 背景色(选中状态),支持 Tailwind 类名或 hex 颜色 */ backgroundColor?: string; /** 文字色(选中状态),支持 Tailwind 类名或 hex 颜色 */ textColor?: string; } export interface ProviderPreset { name: string; websiteUrl: string; // 新增:第三方/聚合等可单独配置获取 API Key 的链接 apiKeyUrl?: string; settingsConfig: object; isOfficial?: boolean; // 标识是否为官方预设 isPartner?: boolean; // 标识是否为商业合作伙伴 partnerPromotionKey?: string; // 合作伙伴促销信息的 i18n key category?: ProviderCategory; // 新增:分类 // 新增:指定该预设所使用的 API Key 字段名(默认 ANTHROPIC_AUTH_TOKEN) apiKeyField?: "ANTHROPIC_AUTH_TOKEN" | "ANTHROPIC_API_KEY"; // 新增:模板变量定义,用于动态替换配置中的值 templateValues?: Record; // editorValue 存储编辑器中的实时输入值 // 新增:请求地址候选列表(用于地址管理/测速) endpointCandidates?: string[]; // 新增:视觉主题配置 theme?: PresetTheme; // 图标配置 icon?: string; // 图标名称 iconColor?: string; // 图标颜色 } export const providerPresets: ProviderPreset[] = [ { name: "Claude Official", websiteUrl: "https://www.anthropic.com/claude-code", settingsConfig: { env: {}, }, isOfficial: true, // 明确标识为官方预设 category: "official", theme: { icon: "claude", backgroundColor: "#D97757", textColor: "#FFFFFF", }, icon: "anthropic", iconColor: "#D4915D", }, { name: "DeepSeek", websiteUrl: "https://platform.deepseek.com", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api.deepseek.com/anthropic", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "DeepSeek-V3.2", ANTHROPIC_DEFAULT_HAIKU_MODEL: "DeepSeek-V3.2", ANTHROPIC_DEFAULT_SONNET_MODEL: "DeepSeek-V3.2", ANTHROPIC_DEFAULT_OPUS_MODEL: "DeepSeek-V3.2", }, }, category: "cn_official", icon: "deepseek", iconColor: "#1E88E5", }, { name: "Zhipu GLM", websiteUrl: "https://open.bigmodel.cn", apiKeyUrl: "https://www.bigmodel.cn/claude-code?ic=RRVJPB5SII", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://open.bigmodel.cn/api/anthropic", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "glm-4.7", ANTHROPIC_DEFAULT_HAIKU_MODEL: "glm-4.7", ANTHROPIC_DEFAULT_SONNET_MODEL: "glm-4.7", ANTHROPIC_DEFAULT_OPUS_MODEL: "glm-4.7", }, }, category: "cn_official", isPartner: true, // 合作伙伴 partnerPromotionKey: "zhipu", // 促销信息 i18n key icon: "zhipu", iconColor: "#0F62FE", }, { name: "Z.ai GLM", websiteUrl: "https://z.ai", apiKeyUrl: "https://z.ai/subscribe?ic=8JVLJQFSKB", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api.z.ai/api/anthropic", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "glm-4.7", ANTHROPIC_DEFAULT_HAIKU_MODEL: "glm-4.7", ANTHROPIC_DEFAULT_SONNET_MODEL: "glm-4.7", ANTHROPIC_DEFAULT_OPUS_MODEL: "glm-4.7", }, }, category: "cn_official", isPartner: true, // 合作伙伴 partnerPromotionKey: "zhipu", // 促销信息 i18n key icon: "zhipu", iconColor: "#0F62FE", }, { name: "Qwen Coder", websiteUrl: "https://bailian.console.aliyun.com", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://dashscope.aliyuncs.com/apps/anthropic", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "qwen3-max", ANTHROPIC_DEFAULT_HAIKU_MODEL: "qwen3-max", ANTHROPIC_DEFAULT_SONNET_MODEL: "qwen3-max", ANTHROPIC_DEFAULT_OPUS_MODEL: "qwen3-max", }, }, category: "cn_official", icon: "qwen", iconColor: "#FF6A00", }, { name: "Kimi k2", websiteUrl: "https://platform.moonshot.cn/console", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api.moonshot.cn/anthropic", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "kimi-k2-thinking", ANTHROPIC_DEFAULT_HAIKU_MODEL: "kimi-k2-thinking", ANTHROPIC_DEFAULT_SONNET_MODEL: "kimi-k2-thinking", ANTHROPIC_DEFAULT_OPUS_MODEL: "kimi-k2-thinking", }, }, category: "cn_official", icon: "kimi", iconColor: "#6366F1", }, { name: "Kimi For Coding", websiteUrl: "https://www.kimi.com/coding/docs/", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api.kimi.com/coding/", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "kimi-for-coding", ANTHROPIC_DEFAULT_HAIKU_MODEL: "kimi-for-coding", ANTHROPIC_DEFAULT_SONNET_MODEL: "kimi-for-coding", ANTHROPIC_DEFAULT_OPUS_MODEL: "kimi-for-coding", }, }, category: "cn_official", icon: "kimi", iconColor: "#6366F1", }, { name: "ModelScope", websiteUrl: "https://modelscope.cn", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api-inference.modelscope.cn", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "ZhipuAI/GLM-4.7", ANTHROPIC_DEFAULT_HAIKU_MODEL: "ZhipuAI/GLM-4.7", ANTHROPIC_DEFAULT_SONNET_MODEL: "ZhipuAI/GLM-4.7", ANTHROPIC_DEFAULT_OPUS_MODEL: "ZhipuAI/GLM-4.7", }, }, category: "aggregator", icon: "modelscope", iconColor: "#624AFF", }, { name: "KAT-Coder", websiteUrl: "https://console.streamlake.ai", apiKeyUrl: "https://console.streamlake.ai/console/api-key", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://vanchin.streamlake.ai/api/gateway/v1/endpoints/${ENDPOINT_ID}/claude-code-proxy", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "KAT-Coder-Pro V1", ANTHROPIC_DEFAULT_HAIKU_MODEL: "KAT-Coder-Air V1", ANTHROPIC_DEFAULT_SONNET_MODEL: "KAT-Coder-Pro V1", ANTHROPIC_DEFAULT_OPUS_MODEL: "KAT-Coder-Pro V1", }, }, category: "cn_official", templateValues: { ENDPOINT_ID: { label: "Vanchin Endpoint ID", placeholder: "ep-xxx-xxx", defaultValue: "", editorValue: "", }, }, }, { name: "Longcat", websiteUrl: "https://longcat.chat/platform", apiKeyUrl: "https://longcat.chat/platform/api_keys", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api.longcat.chat/anthropic", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "LongCat-Flash-Chat", ANTHROPIC_DEFAULT_HAIKU_MODEL: "LongCat-Flash-Chat", ANTHROPIC_DEFAULT_SONNET_MODEL: "LongCat-Flash-Chat", ANTHROPIC_DEFAULT_OPUS_MODEL: "LongCat-Flash-Chat", CLAUDE_CODE_MAX_OUTPUT_TOKENS: "6000", CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC: 1, }, }, category: "cn_official", icon: "longcat", iconColor: "#29E154", }, { name: "MiniMax", websiteUrl: "https://platform.minimaxi.com", apiKeyUrl: "https://platform.minimaxi.com/subscribe/coding-plan", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api.minimaxi.com/anthropic", ANTHROPIC_AUTH_TOKEN: "", API_TIMEOUT_MS: "3000000", CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC: 1, ANTHROPIC_MODEL: "MiniMax-M2.1", ANTHROPIC_DEFAULT_SONNET_MODEL: "MiniMax-M2.1", ANTHROPIC_DEFAULT_OPUS_MODEL: "MiniMax-M2.1", ANTHROPIC_DEFAULT_HAIKU_MODEL: "MiniMax-M2.1", }, }, category: "cn_official", isPartner: true, partnerPromotionKey: "minimax_cn", theme: { backgroundColor: "#f64551", textColor: "#FFFFFF", }, icon: "minimax", iconColor: "#FF6B6B", }, { name: "MiniMax en", websiteUrl: "https://platform.minimax.io", apiKeyUrl: "https://platform.minimax.io/subscribe/coding-plan", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api.minimax.io/anthropic", ANTHROPIC_AUTH_TOKEN: "", API_TIMEOUT_MS: "3000000", CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC: 1, ANTHROPIC_MODEL: "MiniMax-M2.1", ANTHROPIC_DEFAULT_SONNET_MODEL: "MiniMax-M2.1", ANTHROPIC_DEFAULT_OPUS_MODEL: "MiniMax-M2.1", ANTHROPIC_DEFAULT_HAIKU_MODEL: "MiniMax-M2.1", }, }, category: "cn_official", isPartner: true, partnerPromotionKey: "minimax_en", theme: { backgroundColor: "#f64551", textColor: "#FFFFFF", }, icon: "minimax", iconColor: "#FF6B6B", }, { name: "DouBaoSeed", websiteUrl: "https://www.volcengine.com/product/doubao", apiKeyUrl: "https://www.volcengine.com/product/doubao", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://ark.cn-beijing.volces.com/api/coding", ANTHROPIC_AUTH_TOKEN: "", API_TIMEOUT_MS: "3000000", ANTHROPIC_MODEL: "doubao-seed-code-preview-latest", ANTHROPIC_DEFAULT_SONNET_MODEL: "doubao-seed-code-preview-latest", ANTHROPIC_DEFAULT_OPUS_MODEL: "doubao-seed-code-preview-latest", ANTHROPIC_DEFAULT_HAIKU_MODEL: "doubao-seed-code-preview-latest", }, }, category: "cn_official", icon: "doubao", iconColor: "#3370FF", }, { name: "BaiLing", websiteUrl: "https://alipaytbox.yuque.com/sxs0ba/ling/get_started", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api.tbox.cn/api/anthropic", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "Ling-1T", ANTHROPIC_DEFAULT_HAIKU_MODEL: "Ling-1T", ANTHROPIC_DEFAULT_SONNET_MODEL: "Ling-1T", ANTHROPIC_DEFAULT_OPUS_MODEL: "Ling-1T", }, }, category: "cn_official", }, { name: "AiHubMix", websiteUrl: "https://aihubmix.com", apiKeyUrl: "https://aihubmix.com", // 说明:该供应商使用 ANTHROPIC_API_KEY(而非 ANTHROPIC_AUTH_TOKEN) apiKeyField: "ANTHROPIC_API_KEY", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://aihubmix.com", ANTHROPIC_API_KEY: "", }, }, // 请求地址候选(用于地址管理/测速),用户可自行选择/覆盖 endpointCandidates: ["https://aihubmix.com", "https://api.aihubmix.com"], category: "aggregator", icon: "aihubmix", iconColor: "#006FFB", }, { name: "DMXAPI", websiteUrl: "https://www.dmxapi.cn", apiKeyUrl: "https://www.dmxapi.cn", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://www.dmxapi.cn", ANTHROPIC_AUTH_TOKEN: "", }, }, // 请求地址候选(用于地址管理/测速),用户可自行选择/覆盖 endpointCandidates: ["https://www.dmxapi.cn", "https://api.dmxapi.cn"], category: "aggregator", isPartner: true, // 合作伙伴 partnerPromotionKey: "dmxapi", // 促销信息 i18n key }, { name: "PackyCode", websiteUrl: "https://www.packyapi.com", apiKeyUrl: "https://www.packyapi.com/register?aff=cc-switch", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://www.packyapi.com", ANTHROPIC_AUTH_TOKEN: "", }, }, // 请求地址候选(用于地址管理/测速) endpointCandidates: [ "https://www.packyapi.com", "https://api-slb.packyapi.com", ], category: "third_party", isPartner: true, // 合作伙伴 partnerPromotionKey: "packycode", // 促销信息 i18n key icon: "packycode", }, { name: "Cubence", websiteUrl: "https://cubence.com", apiKeyUrl: "https://cubence.com/signup?code=CCSWITCH&source=ccs", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api.cubence.com", ANTHROPIC_AUTH_TOKEN: "", }, }, endpointCandidates: [ "https://api.cubence.com", "https://api-cf.cubence.com", "https://api-dmit.cubence.com", "https://api-bwg.cubence.com", ], category: "third_party", isPartner: true, // 合作伙伴 partnerPromotionKey: "cubence", // 促销信息 i18n key icon: "cubence", iconColor: "#000000", }, { name: "AIGoCode", websiteUrl: "https://aigocode.com", apiKeyUrl: "https://aigocode.com/invite/CC-SWITCH", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api.aigocode.com/api", ANTHROPIC_AUTH_TOKEN: "", }, }, // 请求地址候选(用于地址管理/测速) endpointCandidates: ["https://api.aigocode.com"], category: "third_party", isPartner: true, // 合作伙伴 partnerPromotionKey: "aigocode", // 促销信息 i18n key icon: "aigocode", iconColor: "#5B7FFF", }, { name: "OpenRouter", websiteUrl: "https://openrouter.ai", apiKeyUrl: "https://openrouter.ai/keys", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://openrouter.ai/api", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "anthropic/claude-sonnet-4.5", ANTHROPIC_DEFAULT_HAIKU_MODEL: "anthropic/claude-haiku-4.5", ANTHROPIC_DEFAULT_SONNET_MODEL: "anthropic/claude-sonnet-4.5", ANTHROPIC_DEFAULT_OPUS_MODEL: "anthropic/claude-opus-4.5", }, }, category: "aggregator", icon: "openrouter", iconColor: "#6566F1", }, { name: "Xiaomi MiMo", websiteUrl: "https://platform.xiaomimimo.com", apiKeyUrl: "https://platform.xiaomimimo.com/#/console/api-keys", settingsConfig: { env: { ANTHROPIC_BASE_URL: "https://api.xiaomimimo.com/anthropic", ANTHROPIC_AUTH_TOKEN: "", ANTHROPIC_MODEL: "mimo-v2-flash", ANTHROPIC_DEFAULT_HAIKU_MODEL: "mimo-v2-flash", ANTHROPIC_DEFAULT_SONNET_MODEL: "mimo-v2-flash", ANTHROPIC_DEFAULT_OPUS_MODEL: "mimo-v2-flash", }, }, category: "cn_official", icon: "xiaomimimo", iconColor: "#000000", }, ];