mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-12 21:53:00 -06:00
chore(models): curate all provider model catalogs to current-generation lineups (#113681)
* chore(models): fleet-wide provider catalog curation * fix(models): sync provider runtime catalogs and tests with curated manifests * test(models): align venice lifecycle assertions and copilot auth default with curated catalogs * test(models): align catalog lifecycle contract checks
This commit is contained in:
committed by
GitHub
parent
6935293626
commit
f703d803cc
@@ -318,17 +318,54 @@ describe("opencode provider plugin", () => {
|
||||
throw new Error("expected manifest opencode models");
|
||||
}
|
||||
expect(manifestModels.map((model) => requireRecord(model, "manifest model").id)).toEqual([
|
||||
"claude-opus-5",
|
||||
"claude-opus-4-8",
|
||||
"gpt-5.6-sol",
|
||||
"gpt-5.5",
|
||||
"gemini-3.6-flash",
|
||||
"gemini-3.1-pro",
|
||||
"minimax-m3",
|
||||
"minimax-m2.7",
|
||||
"big-pickle",
|
||||
"deepseek-v4-flash-free",
|
||||
"mimo-v2.5-free",
|
||||
"laguna-s-2.1-free",
|
||||
"ling-3.0-flash-free",
|
||||
"nemotron-3-ultra-free",
|
||||
"north-mini-code-free",
|
||||
]);
|
||||
const manifestClaude48 = requireRecord(
|
||||
manifestModels.find(
|
||||
(model) => requireRecord(model, "manifest model").id === "claude-opus-4-8",
|
||||
),
|
||||
"manifest claude-opus-4-8",
|
||||
);
|
||||
expect(manifestClaude48).toMatchObject({
|
||||
status: "deprecated",
|
||||
replacedBy: "claude-opus-5",
|
||||
contextWindow: 1_000_000,
|
||||
maxTokens: 128_000,
|
||||
});
|
||||
const manifestGpt55 = requireRecord(
|
||||
manifestModels.find((model) => requireRecord(model, "manifest model").id === "gpt-5.5"),
|
||||
"manifest gpt-5.5",
|
||||
);
|
||||
expect(manifestGpt55).toMatchObject({
|
||||
status: "deprecated",
|
||||
replacedBy: "gpt-5.6-sol",
|
||||
contextWindow: 1_050_000,
|
||||
});
|
||||
const manifestMiniMax = requireRecord(
|
||||
manifestModels.find((model) => requireRecord(model, "manifest model").id === "minimax-m2.7"),
|
||||
"manifest minimax-m2.7",
|
||||
);
|
||||
expect(manifestMiniMax.api).toBe("openai-completions");
|
||||
expect(manifestMiniMax.baseUrl).toBe("https://opencode.ai/zen/v1");
|
||||
expect(manifestMiniMax).toMatchObject({
|
||||
status: "deprecated",
|
||||
replacedBy: "minimax-m3",
|
||||
cost: { input: 0.3, output: 1.2, cacheRead: 0.06, cacheWrite: 0 },
|
||||
});
|
||||
});
|
||||
|
||||
it("keeps documented OpenCode Zen example models resolvable", async () => {
|
||||
@@ -435,7 +472,7 @@ describe("opencode provider plugin", () => {
|
||||
["glm-5.2", { input: 1.4, output: 4.4, cacheRead: 0.26, cacheWrite: 0 }],
|
||||
["hy3-free", { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }],
|
||||
["kimi-k2.7-code", { input: 0.95, output: 4, cacheRead: 0.19, cacheWrite: 0 }],
|
||||
["minimax-m2.7", { input: 0.3, output: 1.2, cacheRead: 0.06, cacheWrite: 0.375 }],
|
||||
["minimax-m2.7", { input: 0.3, output: 1.2, cacheRead: 0.06, cacheWrite: 0 }],
|
||||
["minimax-m3", { input: 0.3, output: 1.2, cacheRead: 0.06, cacheWrite: 0 }],
|
||||
] as const);
|
||||
|
||||
|
||||
@@ -30,6 +30,31 @@
|
||||
"baseUrl": "https://opencode.ai/zen/v1",
|
||||
"api": "openai-completions",
|
||||
"models": [
|
||||
{
|
||||
"id": "claude-opus-5",
|
||||
"name": "Claude Opus 5",
|
||||
"api": "anthropic-messages",
|
||||
"provider": "opencode",
|
||||
"baseUrl": "https://opencode.ai/zen",
|
||||
"reasoning": true,
|
||||
"input": [
|
||||
"text",
|
||||
"image"
|
||||
],
|
||||
"cost": {
|
||||
"input": 5,
|
||||
"output": 25,
|
||||
"cacheRead": 0.5,
|
||||
"cacheWrite": 6.25
|
||||
},
|
||||
"contextWindow": 1000000,
|
||||
"maxTokens": 128000,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"maxTokensField": "max_tokens"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "claude-opus-4-8",
|
||||
"name": "Claude Opus 4.8",
|
||||
@@ -47,12 +72,68 @@
|
||||
"cacheRead": 0.5,
|
||||
"cacheWrite": 6.25
|
||||
},
|
||||
"contextWindow": 200000,
|
||||
"maxTokens": 65536,
|
||||
"contextWindow": 1000000,
|
||||
"maxTokens": 128000,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"maxTokensField": "max_tokens"
|
||||
},
|
||||
"status": "deprecated",
|
||||
"replacedBy": "claude-opus-5"
|
||||
},
|
||||
{
|
||||
"id": "gpt-5.6-sol",
|
||||
"name": "GPT-5.6 Sol",
|
||||
"api": "openai-responses",
|
||||
"provider": "opencode",
|
||||
"baseUrl": "https://opencode.ai/zen/v1",
|
||||
"reasoning": true,
|
||||
"input": [
|
||||
"text",
|
||||
"image"
|
||||
],
|
||||
"cost": {
|
||||
"input": 5,
|
||||
"output": 30,
|
||||
"cacheRead": 0.5,
|
||||
"cacheWrite": 6.25,
|
||||
"tieredPricing": [
|
||||
{
|
||||
"input": 5,
|
||||
"output": 30,
|
||||
"cacheRead": 0.5,
|
||||
"cacheWrite": 6.25,
|
||||
"range": [
|
||||
0,
|
||||
272000
|
||||
]
|
||||
},
|
||||
{
|
||||
"input": 10,
|
||||
"output": 45,
|
||||
"cacheRead": 1,
|
||||
"cacheWrite": 12.5,
|
||||
"range": [
|
||||
272000
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"contextWindow": 1050000,
|
||||
"maxTokens": 128000,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"supportedReasoningEfforts": [
|
||||
"none",
|
||||
"low",
|
||||
"medium",
|
||||
"high",
|
||||
"xhigh",
|
||||
"max"
|
||||
],
|
||||
"maxTokensField": "max_tokens"
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -93,8 +174,35 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
"contextWindow": 400000,
|
||||
"contextWindow": 1050000,
|
||||
"maxTokens": 128000,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"maxTokensField": "max_tokens"
|
||||
},
|
||||
"status": "deprecated",
|
||||
"replacedBy": "gpt-5.6-sol"
|
||||
},
|
||||
{
|
||||
"id": "gemini-3.6-flash",
|
||||
"name": "Gemini 3.6 Flash",
|
||||
"api": "google-generative-ai",
|
||||
"provider": "opencode",
|
||||
"baseUrl": "https://opencode.ai/zen/v1",
|
||||
"reasoning": true,
|
||||
"input": [
|
||||
"text",
|
||||
"image"
|
||||
],
|
||||
"cost": {
|
||||
"input": 1.5,
|
||||
"output": 7.5,
|
||||
"cacheRead": 0.15,
|
||||
"cacheWrite": 0
|
||||
},
|
||||
"contextWindow": 1048576,
|
||||
"maxTokens": 65536,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
@@ -147,6 +255,33 @@
|
||||
"maxTokensField": "max_tokens"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "minimax-m3",
|
||||
"name": "MiniMax M3",
|
||||
"api": "openai-completions",
|
||||
"provider": "opencode",
|
||||
"baseUrl": "https://opencode.ai/zen/v1",
|
||||
"reasoning": true,
|
||||
"input": [
|
||||
"text",
|
||||
"image"
|
||||
],
|
||||
"cost": {
|
||||
"input": 0.3,
|
||||
"output": 1.2,
|
||||
"cacheRead": 0.06,
|
||||
"cacheWrite": 0
|
||||
},
|
||||
"contextWindow": 512000,
|
||||
"maxTokens": 128000,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"maxTokensField": "max_tokens",
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsStrictMode": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "minimax-m2.7",
|
||||
"name": "MiniMax M2.7",
|
||||
@@ -161,10 +296,195 @@
|
||||
"input": 0.3,
|
||||
"output": 1.2,
|
||||
"cacheRead": 0.06,
|
||||
"cacheWrite": 0.375
|
||||
"cacheWrite": 0
|
||||
},
|
||||
"contextWindow": 204800,
|
||||
"maxTokens": 131072,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"maxTokensField": "max_tokens",
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsStrictMode": false
|
||||
},
|
||||
"status": "deprecated",
|
||||
"replacedBy": "minimax-m3"
|
||||
},
|
||||
{
|
||||
"id": "big-pickle",
|
||||
"name": "Big Pickle",
|
||||
"api": "openai-completions",
|
||||
"provider": "opencode",
|
||||
"baseUrl": "https://opencode.ai/zen/v1",
|
||||
"reasoning": true,
|
||||
"input": [
|
||||
"text"
|
||||
],
|
||||
"cost": {
|
||||
"input": 0,
|
||||
"output": 0,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
},
|
||||
"contextWindow": 200000,
|
||||
"maxTokens": 32000,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"maxTokensField": "max_tokens",
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsStrictMode": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "deepseek-v4-flash-free",
|
||||
"name": "DeepSeek V4 Flash Free",
|
||||
"api": "openai-completions",
|
||||
"provider": "opencode",
|
||||
"baseUrl": "https://opencode.ai/zen/v1",
|
||||
"reasoning": true,
|
||||
"input": [
|
||||
"text"
|
||||
],
|
||||
"cost": {
|
||||
"input": 0,
|
||||
"output": 0,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
},
|
||||
"contextWindow": 200000,
|
||||
"maxTokens": 128000,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"maxTokensField": "max_tokens",
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsStrictMode": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "mimo-v2.5-free",
|
||||
"name": "MiMo V2.5 Free",
|
||||
"api": "openai-completions",
|
||||
"provider": "opencode",
|
||||
"baseUrl": "https://opencode.ai/zen/v1",
|
||||
"reasoning": true,
|
||||
"input": [
|
||||
"text",
|
||||
"image"
|
||||
],
|
||||
"cost": {
|
||||
"input": 0,
|
||||
"output": 0,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
},
|
||||
"contextWindow": 200000,
|
||||
"maxTokens": 32000,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"maxTokensField": "max_tokens",
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsStrictMode": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "laguna-s-2.1-free",
|
||||
"name": "Laguna S 2.1 Free",
|
||||
"api": "openai-completions",
|
||||
"provider": "opencode",
|
||||
"baseUrl": "https://opencode.ai/zen/v1",
|
||||
"reasoning": true,
|
||||
"input": [
|
||||
"text"
|
||||
],
|
||||
"cost": {
|
||||
"input": 0,
|
||||
"output": 0,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
},
|
||||
"contextWindow": 256000,
|
||||
"maxTokens": 32000,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"maxTokensField": "max_tokens",
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsStrictMode": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "ling-3.0-flash-free",
|
||||
"name": "Ling-3.0-flash Free",
|
||||
"api": "openai-completions",
|
||||
"provider": "opencode",
|
||||
"baseUrl": "https://opencode.ai/zen/v1",
|
||||
"reasoning": true,
|
||||
"input": [
|
||||
"text"
|
||||
],
|
||||
"cost": {
|
||||
"input": 0,
|
||||
"output": 0,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
},
|
||||
"contextWindow": 262144,
|
||||
"maxTokens": 32768,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"maxTokensField": "max_tokens",
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsStrictMode": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "nemotron-3-ultra-free",
|
||||
"name": "Nemotron 3 Ultra Free",
|
||||
"api": "openai-completions",
|
||||
"provider": "opencode",
|
||||
"baseUrl": "https://opencode.ai/zen/v1",
|
||||
"reasoning": true,
|
||||
"input": [
|
||||
"text"
|
||||
],
|
||||
"cost": {
|
||||
"input": 0,
|
||||
"output": 0,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
},
|
||||
"contextWindow": 1000000,
|
||||
"maxTokens": 128000,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
"maxTokensField": "max_tokens",
|
||||
"supportsDeveloperRole": false,
|
||||
"supportsStrictMode": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "north-mini-code-free",
|
||||
"name": "North Mini Code Free",
|
||||
"api": "openai-completions",
|
||||
"provider": "opencode",
|
||||
"baseUrl": "https://opencode.ai/zen/v1",
|
||||
"reasoning": true,
|
||||
"input": [
|
||||
"text"
|
||||
],
|
||||
"cost": {
|
||||
"input": 0,
|
||||
"output": 0,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
},
|
||||
"contextWindow": 256000,
|
||||
"maxTokens": 64000,
|
||||
"compat": {
|
||||
"supportsUsageInStreaming": true,
|
||||
"supportsReasoningEffort": true,
|
||||
|
||||
Reference in New Issue
Block a user