mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 17:20:45 +00:00
refactor(plugins): move provider routing metadata to manifests
This commit is contained in:
@@ -6,6 +6,18 @@
|
||||
"modelSupport": {
|
||||
"modelPrefixes": ["claude-"]
|
||||
},
|
||||
"modelIdNormalization": {
|
||||
"providers": {
|
||||
"anthropic": {
|
||||
"aliases": {
|
||||
"opus-4.6": "claude-opus-4-6",
|
||||
"opus-4.5": "claude-opus-4-5",
|
||||
"sonnet-4.6": "claude-sonnet-4-6",
|
||||
"sonnet-4.5": "claude-sonnet-4-5"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelPricing": {
|
||||
"providers": {
|
||||
"anthropic": {
|
||||
@@ -15,6 +27,19 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "anthropic-public",
|
||||
"hosts": ["api.anthropic.com"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"anthropic": {
|
||||
"family": "anthropic"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cliBackends": ["claude-cli"],
|
||||
"syntheticAuthRefs": ["claude-cli"],
|
||||
"providerAuthEnvVars": {
|
||||
|
||||
@@ -2,6 +2,19 @@
|
||||
"id": "chutes",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["chutes"],
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "chutes-native",
|
||||
"hosts": ["llm.chutes.ai"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"chutes": {
|
||||
"family": "chutes"
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerAuthEnvVars": {
|
||||
"chutes": ["CHUTES_API_KEY", "CHUTES_OAUTH_TOKEN"]
|
||||
},
|
||||
|
||||
@@ -3,6 +3,19 @@
|
||||
"enabledByDefault": true,
|
||||
"providerDiscoveryEntry": "./provider-discovery.ts",
|
||||
"providers": ["deepseek"],
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "deepseek-native",
|
||||
"hosts": ["api.deepseek.com"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"deepseek": {
|
||||
"family": "deepseek"
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelCatalog": {
|
||||
"providers": {
|
||||
"deepseek": {
|
||||
|
||||
@@ -2,6 +2,19 @@
|
||||
"id": "github-copilot",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["github-copilot"],
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "github-copilot-native",
|
||||
"hostSuffixes": [".githubcopilot.com"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"github-copilot": {
|
||||
"family": "github-copilot"
|
||||
}
|
||||
}
|
||||
},
|
||||
"contracts": {
|
||||
"memoryEmbeddingProviders": ["github-copilot"]
|
||||
},
|
||||
|
||||
@@ -1,8 +1,32 @@
|
||||
{
|
||||
"id": "google",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["google", "google-gemini-cli"],
|
||||
"providers": ["google", "google-gemini-cli", "google-vertex"],
|
||||
"autoEnableWhenConfiguredProviders": ["google-gemini-cli"],
|
||||
"modelIdNormalization": {
|
||||
"providers": {
|
||||
"google": {
|
||||
"aliases": {
|
||||
"gemini-3-pro": "gemini-3-pro-preview",
|
||||
"gemini-3-flash": "gemini-3-flash-preview",
|
||||
"gemini-3.1-pro": "gemini-3.1-pro-preview",
|
||||
"gemini-3.1-flash-lite": "gemini-3.1-flash-lite-preview",
|
||||
"gemini-3.1-flash": "gemini-3-flash-preview",
|
||||
"gemini-3.1-flash-preview": "gemini-3-flash-preview"
|
||||
}
|
||||
},
|
||||
"google-vertex": {
|
||||
"aliases": {
|
||||
"gemini-3-pro": "gemini-3-pro-preview",
|
||||
"gemini-3-flash": "gemini-3-flash-preview",
|
||||
"gemini-3.1-pro": "gemini-3.1-pro-preview",
|
||||
"gemini-3.1-flash-lite": "gemini-3.1-flash-lite-preview",
|
||||
"gemini-3.1-flash": "gemini-3-flash-preview",
|
||||
"gemini-3.1-flash-preview": "gemini-3-flash-preview"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelPricing": {
|
||||
"providers": {
|
||||
"google-gemini-cli": {
|
||||
@@ -15,6 +39,35 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "google-generative-ai",
|
||||
"hosts": ["generativelanguage.googleapis.com"]
|
||||
},
|
||||
{
|
||||
"endpointClass": "google-vertex",
|
||||
"hosts": ["aiplatform.googleapis.com"],
|
||||
"googleVertexRegion": "global"
|
||||
},
|
||||
{
|
||||
"endpointClass": "google-vertex",
|
||||
"hostSuffixes": ["-aiplatform.googleapis.com"],
|
||||
"googleVertexRegionHostSuffix": "-aiplatform.googleapis.com"
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"google": {
|
||||
"family": "google"
|
||||
},
|
||||
"google-gemini-cli": {
|
||||
"family": "google"
|
||||
},
|
||||
"google-vertex": {
|
||||
"family": "google"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cliBackends": ["google-gemini-cli"],
|
||||
"providerAuthEnvVars": {
|
||||
"google": ["GEMINI_API_KEY", "GOOGLE_API_KEY"]
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
{
|
||||
"id": "groq",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["groq"],
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "groq-native",
|
||||
"hosts": ["api.groq.com"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"groq": {
|
||||
"family": "groq"
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerAuthEnvVars": {
|
||||
"groq": ["GROQ_API_KEY"]
|
||||
},
|
||||
|
||||
@@ -2,6 +2,13 @@
|
||||
"id": "huggingface",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["huggingface"],
|
||||
"modelIdNormalization": {
|
||||
"providers": {
|
||||
"huggingface": {
|
||||
"stripPrefixes": ["huggingface/"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerAuthEnvVars": {
|
||||
"huggingface": ["HUGGINGFACE_HUB_TOKEN", "HF_TOKEN"]
|
||||
},
|
||||
|
||||
@@ -2,6 +2,18 @@
|
||||
"id": "kimi",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["kimi", "kimi-coding"],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"kimi": {
|
||||
"family": "moonshot",
|
||||
"compatibilityFamily": "moonshot"
|
||||
},
|
||||
"kimi-coding": {
|
||||
"family": "moonshot",
|
||||
"compatibilityFamily": "moonshot"
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelPricing": {
|
||||
"providers": {
|
||||
"kimi": {
|
||||
|
||||
@@ -2,6 +2,16 @@
|
||||
"id": "lmstudio",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["lmstudio"],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"lmstudio": {
|
||||
"family": "lmstudio",
|
||||
"openAICompletions": {
|
||||
"supportsStreamingUsage": true
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelPricing": {
|
||||
"providers": {
|
||||
"lmstudio": {
|
||||
|
||||
@@ -2,6 +2,19 @@
|
||||
"id": "mistral",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["mistral"],
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "mistral-public",
|
||||
"hosts": ["api.mistral.ai"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"mistral": {
|
||||
"family": "mistral"
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerAuthEnvVars": {
|
||||
"mistral": ["MISTRAL_API_KEY"]
|
||||
},
|
||||
|
||||
@@ -3,6 +3,20 @@
|
||||
"enabledByDefault": true,
|
||||
"providerDiscoveryEntry": "./provider-discovery.ts",
|
||||
"providers": ["moonshot"],
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "moonshot-native",
|
||||
"baseUrls": ["https://api.moonshot.ai/v1", "https://api.moonshot.cn/v1"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"moonshot": {
|
||||
"family": "moonshot",
|
||||
"compatibilityFamily": "moonshot"
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelPricing": {
|
||||
"providers": {
|
||||
"moonshot": {
|
||||
|
||||
@@ -2,6 +2,13 @@
|
||||
"id": "nvidia",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["nvidia"],
|
||||
"modelIdNormalization": {
|
||||
"providers": {
|
||||
"nvidia": {
|
||||
"prefixWhenBare": "nvidia"
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerAuthEnvVars": {
|
||||
"nvidia": ["NVIDIA_API_KEY"]
|
||||
},
|
||||
|
||||
@@ -3,6 +3,13 @@
|
||||
"enabledByDefault": true,
|
||||
"providers": ["ollama"],
|
||||
"providerDiscoveryEntry": "./provider-discovery.ts",
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"ollama": {
|
||||
"family": "ollama"
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelPricing": {
|
||||
"providers": {
|
||||
"ollama": {
|
||||
|
||||
@@ -17,6 +17,30 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "openai-public",
|
||||
"hosts": ["api.openai.com"]
|
||||
},
|
||||
{
|
||||
"endpointClass": "openai-codex",
|
||||
"hosts": ["chatgpt.com"]
|
||||
},
|
||||
{
|
||||
"endpointClass": "azure-openai",
|
||||
"hostSuffixes": [".openai.azure.com"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"openai": {
|
||||
"family": "openai-family"
|
||||
},
|
||||
"openai-codex": {
|
||||
"family": "openai-family"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cliBackends": ["codex-cli"],
|
||||
"providerAuthEnvVars": {
|
||||
"openai": ["OPENAI_API_KEY"]
|
||||
|
||||
@@ -2,6 +2,19 @@
|
||||
"id": "opencode-go",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["opencode-go"],
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "opencode-native",
|
||||
"hostSuffixes": ["opencode.ai"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"opencode-go": {
|
||||
"family": "opencode"
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerAuthEnvVars": {
|
||||
"opencode-go": ["OPENCODE_API_KEY", "OPENCODE_ZEN_API_KEY"]
|
||||
},
|
||||
|
||||
@@ -2,6 +2,19 @@
|
||||
"id": "opencode",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["opencode"],
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "opencode-native",
|
||||
"hostSuffixes": ["opencode.ai"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"opencode": {
|
||||
"family": "opencode"
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerAuthEnvVars": {
|
||||
"opencode": ["OPENCODE_API_KEY", "OPENCODE_ZEN_API_KEY"]
|
||||
},
|
||||
|
||||
@@ -2,6 +2,13 @@
|
||||
"id": "openrouter",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["openrouter"],
|
||||
"modelIdNormalization": {
|
||||
"providers": {
|
||||
"openrouter": {
|
||||
"prefixWhenBare": "openrouter"
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelPricing": {
|
||||
"providers": {
|
||||
"openrouter": {
|
||||
@@ -12,6 +19,19 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "openrouter",
|
||||
"hostSuffixes": ["openrouter.ai"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"openrouter": {
|
||||
"family": "openrouter"
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerAuthEnvVars": {
|
||||
"openrouter": ["OPENROUTER_API_KEY"]
|
||||
},
|
||||
|
||||
@@ -1,7 +1,34 @@
|
||||
{
|
||||
"id": "qwen",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["qwen"],
|
||||
"providers": ["qwen", "qwencloud", "modelstudio", "dashscope"],
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "modelstudio-native",
|
||||
"baseUrls": [
|
||||
"https://coding-intl.dashscope.aliyuncs.com/v1",
|
||||
"https://coding.dashscope.aliyuncs.com/v1",
|
||||
"https://dashscope.aliyuncs.com/compatible-mode/v1",
|
||||
"https://dashscope-intl.aliyuncs.com/compatible-mode/v1"
|
||||
]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"qwen": {
|
||||
"family": "modelstudio"
|
||||
},
|
||||
"qwencloud": {
|
||||
"family": "modelstudio"
|
||||
},
|
||||
"modelstudio": {
|
||||
"family": "modelstudio"
|
||||
},
|
||||
"dashscope": {
|
||||
"family": "modelstudio"
|
||||
}
|
||||
}
|
||||
},
|
||||
"contracts": {
|
||||
"mediaUnderstandingProviders": ["qwen"],
|
||||
"videoGenerationProviders": ["qwen"]
|
||||
|
||||
@@ -2,6 +2,16 @@
|
||||
"id": "sglang",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["sglang"],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"sglang": {
|
||||
"family": "sglang",
|
||||
"openAICompletions": {
|
||||
"supportsStreamingUsage": true
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelPricing": {
|
||||
"providers": {
|
||||
"sglang": {
|
||||
|
||||
@@ -2,6 +2,13 @@
|
||||
"id": "together",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["together"],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"together": {
|
||||
"family": "together"
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerAuthEnvVars": {
|
||||
"together": ["TOGETHER_API_KEY"]
|
||||
},
|
||||
|
||||
@@ -2,6 +2,24 @@
|
||||
"id": "vercel-ai-gateway",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["vercel-ai-gateway"],
|
||||
"modelIdNormalization": {
|
||||
"providers": {
|
||||
"vercel-ai-gateway": {
|
||||
"aliases": {
|
||||
"opus-4.6": "claude-opus-4-6",
|
||||
"opus-4.5": "claude-opus-4-5",
|
||||
"sonnet-4.6": "claude-sonnet-4-6",
|
||||
"sonnet-4.5": "claude-sonnet-4-5"
|
||||
},
|
||||
"prefixWhenBareAfterAliasStartsWith": [
|
||||
{
|
||||
"modelPrefix": "claude-",
|
||||
"prefix": "anthropic"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelPricing": {
|
||||
"providers": {
|
||||
"vercel-ai-gateway": {
|
||||
|
||||
@@ -2,6 +2,16 @@
|
||||
"id": "vllm",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["vllm"],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"vllm": {
|
||||
"family": "vllm",
|
||||
"openAICompletions": {
|
||||
"supportsStreamingUsage": true
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelPricing": {
|
||||
"providers": {
|
||||
"vllm": {
|
||||
|
||||
@@ -3,12 +3,33 @@
|
||||
"enabledByDefault": true,
|
||||
"providers": ["xai"],
|
||||
"providerDiscoveryEntry": "./provider-discovery.ts",
|
||||
"modelIdNormalization": {
|
||||
"providers": {
|
||||
"xai": {
|
||||
"aliases": {
|
||||
"grok-4-fast-reasoning": "grok-4-fast",
|
||||
"grok-4-1-fast-reasoning": "grok-4-1-fast",
|
||||
"grok-4.20-experimental-beta-0304-reasoning": "grok-4.20-beta-latest-reasoning",
|
||||
"grok-4.20-experimental-beta-0304-non-reasoning": "grok-4.20-beta-latest-non-reasoning",
|
||||
"grok-4.20-reasoning": "grok-4.20-beta-latest-reasoning",
|
||||
"grok-4.20-non-reasoning": "grok-4.20-beta-latest-non-reasoning"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "xai-native",
|
||||
"hosts": ["api.x.ai", "api.grok.x.ai"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"xai": {
|
||||
"family": "xai"
|
||||
}
|
||||
}
|
||||
},
|
||||
"syntheticAuthRefs": ["xai"],
|
||||
"providerAuthEnvVars": {
|
||||
"xai": ["XAI_API_KEY"]
|
||||
|
||||
@@ -2,6 +2,19 @@
|
||||
"id": "zai",
|
||||
"enabledByDefault": true,
|
||||
"providers": ["zai"],
|
||||
"providerEndpoints": [
|
||||
{
|
||||
"endpointClass": "zai-native",
|
||||
"hosts": ["api.z.ai"]
|
||||
}
|
||||
],
|
||||
"providerRequest": {
|
||||
"providers": {
|
||||
"zai": {
|
||||
"family": "zai"
|
||||
}
|
||||
}
|
||||
},
|
||||
"modelPricing": {
|
||||
"providers": {
|
||||
"zai": {
|
||||
|
||||
Reference in New Issue
Block a user