mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-02 10:41:35 +00:00
* feat(plugins): catch code-mode drift between catalogs sharing one model Adds a contract test that groups bundled catalog rows by shared upstream model and requires every row in a group to declare compat.codeMode once any sibling does. Rows sharing a model id group automatically; rows under different ids opt in with the new manifest-only `upstreamModel` marker. Moves the kimi catalog into its manifest so the scan can see it, and records the tier reseller catalogs were silently missing as explicit "capable". * docs: regenerate docs map for the shared-model code-mode section
297 lines
9.4 KiB
JSON
297 lines
9.4 KiB
JSON
{
|
|
"id": "venice",
|
|
"activation": {
|
|
"onStartup": false
|
|
},
|
|
"enabledByDefault": true,
|
|
"providers": ["venice"],
|
|
"contracts": {
|
|
"usageProviders": ["venice"]
|
|
},
|
|
"providerAuthChoices": [
|
|
{
|
|
"provider": "venice",
|
|
"method": "api-key",
|
|
"choiceId": "venice-api-key",
|
|
"appGuidedSecret": true,
|
|
"choiceLabel": "Venice AI API key",
|
|
"groupId": "venice",
|
|
"groupLabel": "Venice AI",
|
|
"groupHint": "Privacy-focused (uncensored models)",
|
|
"optionKey": "veniceApiKey",
|
|
"cliFlag": "--venice-api-key",
|
|
"cliOption": "--venice-api-key <key>",
|
|
"cliDescription": "Venice API key"
|
|
}
|
|
],
|
|
"configSchema": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {}
|
|
},
|
|
"setup": {
|
|
"providers": [
|
|
{
|
|
"id": "venice",
|
|
"authMethods": ["api-key"],
|
|
"envVars": ["VENICE_API_KEY"]
|
|
}
|
|
]
|
|
},
|
|
"modelCatalog": {
|
|
"providers": {
|
|
"venice": {
|
|
"baseUrl": "https://api.venice.ai/api/v1",
|
|
"api": "openai-completions",
|
|
"defaultModel": "zai-org-glm-4.7",
|
|
"models": [
|
|
{
|
|
"id": "zai-org-glm-5-2",
|
|
"name": "GLM 5.2",
|
|
"reasoning": true,
|
|
"input": ["text"],
|
|
"contextWindow": 1000000,
|
|
"maxTokens": 131072,
|
|
"cost": { "input": 1.4, "output": 4.4, "cacheRead": 0.26, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "zai-org-glm-4.7",
|
|
"name": "GLM 4.7",
|
|
"reasoning": true,
|
|
"input": ["text"],
|
|
"contextWindow": 198000,
|
|
"maxTokens": 16384,
|
|
"cost": { "input": 0.55, "output": 2.65, "cacheRead": 0.11, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "venice-uncensored-1-2",
|
|
"name": "Venice Uncensored 1.2",
|
|
"reasoning": false,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 128000,
|
|
"maxTokens": 8192,
|
|
"cost": { "input": 0.2, "output": 0.9, "cacheRead": 0, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "google-gemma-4-31b-it",
|
|
"name": "Google Gemma 4 31B Instruct",
|
|
"reasoning": true,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 256000,
|
|
"maxTokens": 8192,
|
|
"cost": { "input": 0.12, "output": 0.36, "cacheRead": 0.09, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "kimi-k2-6",
|
|
"name": "Kimi K2.6",
|
|
"reasoning": true,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 256000,
|
|
"maxTokens": 65536,
|
|
"cost": { "input": 0.75, "output": 3.5, "cacheRead": 0.16, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "deepseek-v3.2",
|
|
"name": "DeepSeek V3.2",
|
|
"reasoning": true,
|
|
"input": ["text"],
|
|
"contextWindow": 160000,
|
|
"maxTokens": 32768,
|
|
"cost": { "input": 0.33, "output": 0.48, "cacheRead": 0.16, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "qwen3-235b-a22b-thinking-2507",
|
|
"name": "Qwen3 235B Thinking",
|
|
"reasoning": true,
|
|
"input": ["text"],
|
|
"contextWindow": 128000,
|
|
"maxTokens": 16384,
|
|
"cost": { "input": 0.45, "output": 3.5, "cacheRead": 0, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "qwen3-coder-480b-a35b-instruct-turbo",
|
|
"name": "Qwen3 Coder 480B Turbo",
|
|
"reasoning": false,
|
|
"input": ["text"],
|
|
"contextWindow": 256000,
|
|
"maxTokens": 65536,
|
|
"cost": { "input": 0.35, "output": 1.5, "cacheRead": 0.04, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "qwen3-vl-235b-a22b",
|
|
"name": "Qwen3 VL 235B (Vision)",
|
|
"reasoning": false,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 128000,
|
|
"maxTokens": 16384,
|
|
"cost": { "input": 0.21, "output": 1.9, "cacheRead": 0.1, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "grok-4-5",
|
|
"name": "Grok 4.5",
|
|
"reasoning": true,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 500000,
|
|
"maxTokens": 32000,
|
|
"cost": { "input": 2.27, "output": 6.8, "cacheRead": 0.34, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "qwen-3-7-max",
|
|
"name": "Qwen 3.7 Max (via Venice)",
|
|
"reasoning": true,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 1000000,
|
|
"maxTokens": 65536,
|
|
"cost": { "input": 2.7, "output": 8.05, "cacheRead": 0.27, "cacheWrite": 3.35 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "qwen-3-7-plus",
|
|
"name": "Qwen 3.7 Plus (via Venice)",
|
|
"reasoning": true,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 1000000,
|
|
"maxTokens": 65536,
|
|
"cost": { "input": 0.5, "output": 2, "cacheRead": 0.05, "cacheWrite": 0.625 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "claude-fable-5",
|
|
"name": "Claude Fable 5 (via Venice)",
|
|
"reasoning": true,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 1000000,
|
|
"maxTokens": 128000,
|
|
"cost": { "input": 12, "output": 60, "cacheRead": 1.2, "cacheWrite": 15 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false,
|
|
"codeMode": "capable"
|
|
}
|
|
},
|
|
{
|
|
"id": "claude-opus-5",
|
|
"name": "Claude Opus 5 (via Venice)",
|
|
"reasoning": true,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 1000000,
|
|
"maxTokens": 128000,
|
|
"cost": { "input": 6, "output": 30, "cacheRead": 0.6, "cacheWrite": 7.5 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false,
|
|
"codeMode": "capable"
|
|
}
|
|
},
|
|
{
|
|
"id": "claude-sonnet-4-6",
|
|
"name": "Claude Sonnet 4.6 (via Venice)",
|
|
"reasoning": true,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 1000000,
|
|
"maxTokens": 64000,
|
|
"cost": { "input": 3.6, "output": 18, "cacheRead": 0.36, "cacheWrite": 4.5 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "openai-gpt-56-sol",
|
|
"name": "GPT-5.6 Sol (via Venice)",
|
|
"reasoning": true,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 1000000,
|
|
"maxTokens": 128000,
|
|
"cost": {
|
|
"input": 6.25,
|
|
"output": 37.5,
|
|
"cacheRead": 0.625,
|
|
"cacheWrite": 7.8125
|
|
},
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "zai-org-glm-4.6",
|
|
"name": "GLM 4.6",
|
|
"status": "deprecated",
|
|
"replacedBy": "zai-org-glm-4.7",
|
|
"reasoning": true,
|
|
"input": ["text"],
|
|
"contextWindow": 198000,
|
|
"maxTokens": 16384,
|
|
"cost": { "input": 0.43, "output": 1.75, "cacheRead": 0.08, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "google-gemma-3-27b-it",
|
|
"name": "Google Gemma 3 27B Instruct",
|
|
"status": "deprecated",
|
|
"replacedBy": "google-gemma-4-31b-it",
|
|
"reasoning": false,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 198000,
|
|
"maxTokens": 16384,
|
|
"cost": { "input": 0.12, "output": 0.2, "cacheRead": 0, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
},
|
|
{
|
|
"id": "kimi-k2-5",
|
|
"name": "Kimi K2.5",
|
|
"status": "deprecated",
|
|
"replacedBy": "kimi-k2-6",
|
|
"reasoning": true,
|
|
"input": ["text", "image"],
|
|
"contextWindow": 256000,
|
|
"maxTokens": 65536,
|
|
"cost": { "input": 0.56, "output": 3.5, "cacheRead": 0.22, "cacheWrite": 0 },
|
|
"compat": {
|
|
"supportsUsageInStreaming": false
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"discovery": {
|
|
"venice": "refreshable"
|
|
}
|
|
}
|
|
}
|