mirror of
https://github.com/farion1231/cc-switch.git
synced 2026-07-24 12:44:18 +08:00
feat(presets): add RunAPI provider presets
Add RunAPI as a new partner provider with support for: - Claude Code preset (Anthropic native protocol) - Codex preset (gpt-5.5 model) - Claude Desktop preset (direct mode with passthrough routes) - OpenCode preset (@ai-sdk/anthropic) - OpenClaw preset (anthropic-messages protocol) - Hermes preset (anthropic_messages mode) - Icon configuration (runapi.jpg) - i18n support (zh/en/ja) with ¥14 free credit promotion RunAPI is a high-performance AI model API gateway supporting 150+ mainstream models (OpenAI, Claude, Gemini, DeepSeek, Grok) with prices as low as 10% of official rates.
This commit is contained in:
@@ -542,6 +542,19 @@ export const claudeDesktopProviderPresets: ClaudeDesktopProviderPreset[] = [
|
||||
partnerPromotionKey: "claudecn",
|
||||
icon: "claudecn",
|
||||
},
|
||||
{
|
||||
name: "RunAPI",
|
||||
websiteUrl: "https://runapi.co",
|
||||
apiKeyUrl: "https://runapi.co",
|
||||
category: "aggregator",
|
||||
baseUrl: "https://runapi.co",
|
||||
mode: "direct",
|
||||
apiFormat: "anthropic",
|
||||
modelRoutes: passthroughRoutes(),
|
||||
isPartner: true,
|
||||
partnerPromotionKey: "runapi",
|
||||
icon: "runapi",
|
||||
},
|
||||
{
|
||||
name: "Cubence",
|
||||
websiteUrl: "https://cubence.com",
|
||||
|
||||
@@ -585,6 +585,21 @@ export const providerPresets: ProviderPreset[] = [
|
||||
partnerPromotionKey: "claudecn",
|
||||
icon: "claudecn",
|
||||
},
|
||||
{
|
||||
name: "RunAPI",
|
||||
websiteUrl: "https://runapi.co",
|
||||
apiKeyUrl: "https://runapi.co",
|
||||
settingsConfig: {
|
||||
env: {
|
||||
ANTHROPIC_BASE_URL: "https://runapi.co",
|
||||
ANTHROPIC_AUTH_TOKEN: "",
|
||||
},
|
||||
},
|
||||
category: "aggregator",
|
||||
isPartner: true,
|
||||
partnerPromotionKey: "runapi",
|
||||
icon: "runapi",
|
||||
},
|
||||
{
|
||||
name: "Cubence",
|
||||
websiteUrl: "https://cubence.com",
|
||||
|
||||
@@ -201,6 +201,21 @@ requires_openai_auth = true`,
|
||||
partnerPromotionKey: "claudecn",
|
||||
icon: "claudecn",
|
||||
},
|
||||
{
|
||||
name: "RunAPI",
|
||||
websiteUrl: "https://runapi.co",
|
||||
apiKeyUrl: "https://runapi.co",
|
||||
category: "aggregator",
|
||||
auth: generateThirdPartyAuth(""),
|
||||
config: generateThirdPartyConfig(
|
||||
"runapi",
|
||||
"https://runapi.co/v1",
|
||||
"gpt-5.5",
|
||||
),
|
||||
isPartner: true,
|
||||
partnerPromotionKey: "runapi",
|
||||
icon: "runapi",
|
||||
},
|
||||
{
|
||||
name: "Cubence",
|
||||
websiteUrl: "https://cubence.com",
|
||||
|
||||
@@ -736,6 +736,36 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
|
||||
model: { default: "claude-sonnet-4-6", provider: "claudecn" },
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "RunAPI",
|
||||
websiteUrl: "https://runapi.co",
|
||||
apiKeyUrl: "https://runapi.co",
|
||||
settingsConfig: {
|
||||
name: "runapi",
|
||||
base_url: "https://runapi.co",
|
||||
api_key: "",
|
||||
api_mode: "anthropic_messages",
|
||||
models: [
|
||||
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
|
||||
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
|
||||
{ id: "claude-haiku-4-5", name: "Claude Haiku 4.5" },
|
||||
],
|
||||
},
|
||||
category: "aggregator",
|
||||
isPartner: true,
|
||||
partnerPromotionKey: "runapi",
|
||||
icon: "runapi",
|
||||
templateValues: {
|
||||
apiKey: {
|
||||
label: "API Key",
|
||||
placeholder: "",
|
||||
editorValue: "",
|
||||
},
|
||||
},
|
||||
suggestedDefaults: {
|
||||
model: { default: "claude-sonnet-4-6", provider: "runapi" },
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "AIGoCode",
|
||||
websiteUrl: "https://aigocode.com",
|
||||
|
||||
@@ -822,6 +822,54 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "RunAPI",
|
||||
websiteUrl: "https://runapi.co",
|
||||
apiKeyUrl: "https://runapi.co",
|
||||
settingsConfig: {
|
||||
baseUrl: "https://runapi.co",
|
||||
apiKey: "",
|
||||
api: "anthropic-messages",
|
||||
models: [
|
||||
{
|
||||
id: "claude-opus-4-7",
|
||||
name: "Claude Opus 4.7",
|
||||
contextWindow: 1000000,
|
||||
},
|
||||
{
|
||||
id: "claude-sonnet-4-6",
|
||||
name: "Claude Sonnet 4.6",
|
||||
contextWindow: 1000000,
|
||||
},
|
||||
{
|
||||
id: "claude-haiku-4-5",
|
||||
name: "Claude Haiku 4.5",
|
||||
contextWindow: 200000,
|
||||
},
|
||||
],
|
||||
},
|
||||
category: "aggregator",
|
||||
isPartner: true,
|
||||
partnerPromotionKey: "runapi",
|
||||
icon: "runapi",
|
||||
templateValues: {
|
||||
apiKey: {
|
||||
label: "API Key",
|
||||
placeholder: "",
|
||||
editorValue: "",
|
||||
},
|
||||
},
|
||||
suggestedDefaults: {
|
||||
model: {
|
||||
primary: "runapi/claude-sonnet-4-6",
|
||||
},
|
||||
modelCatalog: {
|
||||
"runapi/claude-opus-4-7": { alias: "Opus" },
|
||||
"runapi/claude-sonnet-4-6": { alias: "Sonnet" },
|
||||
"runapi/claude-haiku-4-5": { alias: "Haiku" },
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "OpenRouter",
|
||||
websiteUrl: "https://openrouter.ai",
|
||||
|
||||
@@ -1240,6 +1240,36 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "RunAPI",
|
||||
websiteUrl: "https://runapi.co",
|
||||
apiKeyUrl: "https://runapi.co",
|
||||
settingsConfig: {
|
||||
npm: "@ai-sdk/anthropic",
|
||||
name: "RunAPI",
|
||||
options: {
|
||||
baseURL: "https://runapi.co",
|
||||
apiKey: "",
|
||||
setCacheKey: true,
|
||||
},
|
||||
models: {
|
||||
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
|
||||
"claude-opus-4-7": { name: "Claude Opus 4.7" },
|
||||
"claude-haiku-4-5": { name: "Claude Haiku 4.5" },
|
||||
},
|
||||
},
|
||||
category: "aggregator",
|
||||
isPartner: true,
|
||||
partnerPromotionKey: "runapi",
|
||||
icon: "runapi",
|
||||
templateValues: {
|
||||
apiKey: {
|
||||
label: "API Key",
|
||||
placeholder: "",
|
||||
editorValue: "",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "AICoding",
|
||||
websiteUrl: "https://aicoding.sh",
|
||||
|
||||
@@ -838,6 +838,7 @@
|
||||
"patewayai": "PatewayAI offers special benefits for CC Switch users. Register via this link to receive $3 credit.",
|
||||
"claudeapi": "ClaudeAPI offers special benefits for CC Switch users. Register via this link to claim test credits.",
|
||||
"claudecn": "ClaudeCN is an enterprise-grade AI gateway operated by a registered company, supporting enterprise procurement processes with corporate payments, contracts, and compliance guarantees.",
|
||||
"runapi": "RunAPI offers special benefits for CC Switch users. Register via this link and contact customer support to claim ¥14 free credit.",
|
||||
"minimax_cn": "MiniMax Coding Plan Special Offer, Starter from ¥9.9",
|
||||
"minimax_en": "MiniMax Coding Plan Black Friday, Starter is now $2/mo (80% OFF!)",
|
||||
"dmxapi": "Claude Code exclusive model 66% OFF now!",
|
||||
|
||||
@@ -838,6 +838,7 @@
|
||||
"patewayai": "PatewayAI は CC Switch ユーザーに特別な特典を提供しています。このリンクから登録すると $3 のクレジットがもらえます。",
|
||||
"claudeapi": "ClaudeAPI は CC Switch ユーザーに特別な特典を提供しています。このリンクから登録するとテストクレジットを受け取ることができます。",
|
||||
"claudecn": "ClaudeCN は登録企業が運営するエンタープライズグレードの AI ゲートウェイプラットフォームで、企業調達プロセスをサポートし、法人支払い、契約、コンプライアンス保証を提供します。",
|
||||
"runapi": "RunAPI は CC Switch ユーザーに特別な特典を提供しています。このリンクから登録しカスタマーサポートにご連絡いただくと、¥14 の無料クレジットを受け取ることができます。",
|
||||
"minimax_cn": "MiniMax Coding Plan 特別価格、Starter ¥9.9 から",
|
||||
"minimax_en": "MiniMax Coding Plan Black Friday、Starter が月額 $2(80% OFF)",
|
||||
"dmxapi": "Claude Code 専用モデル 66% OFF 実施中!",
|
||||
|
||||
@@ -838,6 +838,7 @@
|
||||
"patewayai": "PatewayAI 为 CC Switch 的用户提供了特别福利,通过此链接注册可以获得3美元额度。",
|
||||
"claudeapi": "ClaudeAPI 为 CC Switch 的用户提供了特别福利,通过此链接注册可以领取测试额度。",
|
||||
"claudecn": "ClaudeCN 是一家实体企业运营的企业级AI中转平台,支持企业采购流程,可对公打款、签约,服务合规有保障。",
|
||||
"runapi": "RunAPI 为 CC Switch 的用户提供了特别福利,通过此链接注册并联系客服可领取 ¥14 免费额度。",
|
||||
"minimax_cn": "MiniMax Coding Plan 特惠,Starter 套餐 9.9 元起",
|
||||
"minimax_en": "MiniMax Coding Plan 黑五特惠,Starter 套餐现仅 $2/月(2折优惠!)",
|
||||
"dmxapi": "Claude Code 专属模型 3.4 折优惠进行中!",
|
||||
|
||||
@@ -8,6 +8,7 @@ import _hermes from "./hermes.png";
|
||||
import _lemondata from "./lemondata.png";
|
||||
import _pateway from "./pateway.jpg";
|
||||
import _pipellm from "./pipellm.png";
|
||||
import _runapi from "./runapi.jpg";
|
||||
import _shengsuanyun from "./shengsuanyun.svg?url";
|
||||
|
||||
export const icons: Record<string, string> = {
|
||||
@@ -90,6 +91,7 @@ export const iconUrls: Record<string, string> = {
|
||||
lemondata: _lemondata,
|
||||
pateway: _pateway,
|
||||
pipellm: _pipellm,
|
||||
runapi: _runapi,
|
||||
shengsuanyun: _shengsuanyun,
|
||||
};
|
||||
|
||||
|
||||
@@ -391,6 +391,12 @@ export const iconMetadata: Record<string, IconMetadata> = {
|
||||
keywords: ["pipellm", "pipe"],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
runapi: {
|
||||
name: "runapi",
|
||||
displayName: "RunAPI",
|
||||
category: "ai-provider",
|
||||
keywords: ["runapi", "run", "aggregator", "gateway"],
|
||||
},
|
||||
eflowcode: {
|
||||
name: "eflowcode",
|
||||
displayName: "E-FlowCode",
|
||||
|
||||
Reference in New Issue
Block a user