mirror of
https://github.com/farion1231/cc-switch.git
synced 2026-07-31 19:22:15 +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",
|
||||
|
||||
Reference in New Issue
Block a user