Files
openclaw/extensions/qwen/openclaw.plugin.json
Peter Steinberger 470fc879e8 feat: add hosted model providers (#88247)
* feat(providers): add GMI provider

* feat(providers): add Novita provider

* feat(providers): add Qwen OAuth provider

* feat(providers): add Ollama Cloud provider

* docs: add hosted provider pages

* test(providers): align qwen catalog result typing
2026-05-30 08:26:16 +02:00

326 lines
9.5 KiB
JSON

{
"id": "qwen",
"activation": {
"onStartup": false
},
"enabledByDefault": true,
"providers": ["qwen", "qwencloud", "modelstudio", "dashscope", "qwen-oauth", "qwen-portal", "qwen-cli"],
"providerAuthAliases": {
"qwen-portal": "qwen-oauth",
"qwen-cli": "qwen-oauth"
},
"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"
]
},
{
"endpointClass": "qwen-portal-native",
"baseUrls": ["https://portal.qwen.ai/v1"]
}
],
"providerRequest": {
"providers": {
"qwen": {
"family": "modelstudio"
},
"qwencloud": {
"family": "modelstudio"
},
"modelstudio": {
"family": "modelstudio"
},
"dashscope": {
"family": "modelstudio"
},
"qwen-oauth": {
"family": "qwen-portal"
},
"qwen-portal": {
"family": "qwen-portal"
},
"qwen-cli": {
"family": "qwen-portal"
}
}
},
"modelCatalog": {
"aliases": {
"qwen-portal": {
"provider": "qwen-oauth"
},
"qwen-cli": {
"provider": "qwen-oauth"
}
},
"suppressions": [
{
"provider": "qwen",
"model": "qwen3.6-plus",
"reason": "qwen3.6-plus is not supported on the Qwen Coding Plan endpoint; use a Standard pay-as-you-go Qwen endpoint or choose qwen/qwen3.5-plus.",
"when": {
"baseUrlHosts": ["coding.dashscope.aliyuncs.com", "coding-intl.dashscope.aliyuncs.com"],
"providerConfigApiIn": ["qwen", "modelstudio"]
}
},
{
"provider": "modelstudio",
"model": "qwen3.6-plus",
"reason": "qwen3.6-plus is not supported on the Qwen Coding Plan endpoint; use a Standard pay-as-you-go Qwen endpoint or choose qwen/qwen3.5-plus.",
"when": {
"baseUrlHosts": ["coding.dashscope.aliyuncs.com", "coding-intl.dashscope.aliyuncs.com"],
"providerConfigApiIn": ["qwen", "modelstudio"]
}
}
],
"providers": {
"qwen-oauth": {
"baseUrl": "https://portal.qwen.ai/v1",
"api": "openai-completions",
"models": [
{
"id": "qwen3.5-plus",
"name": "qwen3.5-plus",
"reasoning": false,
"input": ["text", "image"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 1000000,
"maxTokens": 65536
},
{
"id": "qwen3.6-plus",
"name": "qwen3.6-plus",
"reasoning": false,
"input": ["text", "image"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 1000000,
"maxTokens": 65536
},
{
"id": "qwen3-max-2026-01-23",
"name": "qwen3-max-2026-01-23",
"reasoning": false,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 262144,
"maxTokens": 65536
},
{
"id": "qwen3-coder-next",
"name": "qwen3-coder-next",
"reasoning": false,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 262144,
"maxTokens": 65536
},
{
"id": "qwen3-coder-plus",
"name": "qwen3-coder-plus",
"reasoning": false,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 1000000,
"maxTokens": 65536
},
{
"id": "MiniMax-M2.5",
"name": "MiniMax-M2.5",
"reasoning": true,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 1000000,
"maxTokens": 65536
},
{
"id": "glm-5",
"name": "glm-5",
"reasoning": false,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 202752,
"maxTokens": 65536
},
{
"id": "glm-4.7",
"name": "glm-4.7",
"reasoning": false,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 202752,
"maxTokens": 65536
},
{
"id": "kimi-k2.5",
"name": "kimi-k2.5",
"reasoning": false,
"input": ["text", "image"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 262144,
"maxTokens": 65536
}
]
}
}
},
"contracts": {
"mediaUnderstandingProviders": ["qwen"],
"videoGenerationProviders": ["qwen"]
},
"mediaUnderstandingProviderMetadata": {
"qwen": {
"capabilities": ["image", "video"],
"defaultModels": {
"image": "qwen-vl-max-latest",
"video": "qwen-vl-max-latest"
},
"autoPriority": {
"video": 15
}
}
},
"setup": {
"providers": [
{
"id": "qwen",
"envVars": ["QWEN_API_KEY", "MODELSTUDIO_API_KEY", "DASHSCOPE_API_KEY"]
},
{
"id": "qwen-oauth",
"envVars": ["QWEN_API_KEY"]
}
]
},
"providerAuthChoices": [
{
"provider": "qwen",
"method": "standard-api-key-cn",
"choiceId": "qwen-standard-api-key-cn",
"deprecatedChoiceIds": ["modelstudio-standard-api-key-cn"],
"choiceLabel": "Standard API Key for China (pay-as-you-go)",
"choiceHint": "Endpoint: dashscope.aliyuncs.com",
"groupId": "qwen",
"groupLabel": "Qwen Cloud",
"groupHint": "Standard / Coding Plan (CN / Global) + multimodal roadmap",
"optionKey": "modelstudioStandardApiKeyCn",
"cliFlag": "--modelstudio-standard-api-key-cn",
"cliOption": "--modelstudio-standard-api-key-cn <key>",
"cliDescription": "Qwen Cloud standard API key (China)"
},
{
"provider": "qwen",
"method": "standard-api-key",
"choiceId": "qwen-standard-api-key",
"deprecatedChoiceIds": ["modelstudio-standard-api-key"],
"choiceLabel": "Standard API Key for Global/Intl (pay-as-you-go)",
"choiceHint": "Endpoint: dashscope-intl.aliyuncs.com",
"groupId": "qwen",
"groupLabel": "Qwen Cloud",
"groupHint": "Standard / Coding Plan (CN / Global) + multimodal roadmap",
"optionKey": "modelstudioStandardApiKey",
"cliFlag": "--modelstudio-standard-api-key",
"cliOption": "--modelstudio-standard-api-key <key>",
"cliDescription": "Qwen Cloud standard API key (Global/Intl)"
},
{
"provider": "qwen",
"method": "api-key-cn",
"choiceId": "qwen-api-key-cn",
"deprecatedChoiceIds": ["modelstudio-api-key-cn"],
"choiceLabel": "Coding Plan API Key for China (subscription)",
"choiceHint": "Endpoint: coding.dashscope.aliyuncs.com",
"groupId": "qwen",
"groupLabel": "Qwen Cloud",
"groupHint": "Standard / Coding Plan (CN / Global) + multimodal roadmap",
"optionKey": "modelstudioApiKeyCn",
"cliFlag": "--modelstudio-api-key-cn",
"cliOption": "--modelstudio-api-key-cn <key>",
"cliDescription": "Qwen Cloud Coding Plan API key (China)"
},
{
"provider": "qwen",
"method": "api-key",
"choiceId": "qwen-api-key",
"deprecatedChoiceIds": ["modelstudio-api-key"],
"choiceLabel": "Coding Plan API Key for Global/Intl (subscription)",
"choiceHint": "Endpoint: coding-intl.dashscope.aliyuncs.com",
"groupId": "qwen",
"groupLabel": "Qwen Cloud",
"groupHint": "Standard / Coding Plan (CN / Global) + multimodal roadmap",
"optionKey": "modelstudioApiKey",
"cliFlag": "--modelstudio-api-key",
"cliOption": "--modelstudio-api-key <key>",
"cliDescription": "Qwen Cloud Coding Plan API key (Global/Intl)"
},
{
"provider": "qwen-oauth",
"method": "api-key",
"choiceId": "qwen-oauth",
"choiceLabel": "Qwen OAuth",
"choiceHint": "Portal token for portal.qwen.ai",
"groupId": "qwen",
"groupLabel": "Qwen Cloud",
"groupHint": "Standard / Coding Plan / OAuth",
"optionKey": "qwenOauthToken",
"cliFlag": "--qwen-oauth-token",
"cliOption": "--qwen-oauth-token <token>",
"cliDescription": "Qwen OAuth token"
}
],
"configSchema": {
"type": "object",
"additionalProperties": false,
"properties": {}
}
}