Update default models and pricing across presets

Bump default model names project-wide: gpt-5.4 -> gpt-5.5,
gemini-3.x -> gemini-3.5-flash, glm-5 -> glm-5.1, and
grok-code-fast-1 -> grok-build-0.1 across all provider presets
(claude, codex, gemini, hermes, openclaw, opencode, universal),
Gemini config, and stream check defaults.

Pricing:
- Seed gemini-3.5-flash, gemini-3.1-flash-lite, step-3.5-flash-2603,
  doubao-seed-2.0-code, mimo-v2.5(/pro), qwen3-coder-480b, grok-build-0.1.
- Correct deepseek-v4-flash/pro, glm-5/5.1, grok pricing.
- Add repair_current_model_pricing: idempotent pass that fixes only
  rows still equal to the outdated built-in values, preserving any
  user-customized prices (seed uses INSERT OR IGNORE and cannot update
  existing rows).

Fixes from review:
- opencode: drop duplicate gemini-3.5-flash variant (unreachable via
  .find), keep the entry with the full minimal/low/medium/high set.
- Align stale display names/costs to gemini-3.5-flash (hermes, openclaw,
  opencode); openclaw cost -> {1.5, 9, 0.15} to match seed.
- i18n (zh/en/ja/zh-TW): refresh OMO category tooltips for new model
  names; fix writing tooltip to Kimi K2.5 to match its recommended.

Update tests accordingly and add a regression test asserting unique
model ids in the Google opencode preset variants.
This commit is contained in:
Jason
2026-05-29 15:54:03 +08:00
parent 2b6ede1431
commit 3a15420770
27 changed files with 477 additions and 256 deletions
+14 -32
View File
@@ -49,8 +49,8 @@ export const OPENCODE_PRESET_MODEL_VARIANTS: Record<
modalities: { input: ["text"], output: ["text"] },
},
{
id: "glm-5",
name: "GLM 5",
id: "glm-5.1",
name: "GLM 5.1",
contextLimit: 204800,
outputLimit: 131072,
modalities: { input: ["text"], output: ["text"] },
@@ -91,8 +91,8 @@ export const OPENCODE_PRESET_MODEL_VARIANTS: Record<
},
},
{
id: "gemini-3-flash-preview",
name: "Gemini 3 Flash Preview",
id: "gemini-3.5-flash",
name: "Gemini 3.5 Flash",
contextLimit: 1048576,
outputLimit: 65536,
modalities: {
@@ -114,29 +114,11 @@ export const OPENCODE_PRESET_MODEL_VARIANTS: Record<
},
},
},
{
id: "gemini-3-pro-preview",
name: "Gemini 3 Pro Preview",
contextLimit: 1048576,
outputLimit: 65536,
modalities: {
input: ["text", "image", "pdf", "video", "audio"],
output: ["text"],
},
variants: {
low: {
thinkingConfig: { includeThoughts: true, thinkingLevel: "low" },
},
high: {
thinkingConfig: { includeThoughts: true, thinkingLevel: "high" },
},
},
},
],
"@ai-sdk/openai": [
{
id: "gpt-5.4",
name: "GPT-5.4",
id: "gpt-5.5",
name: "GPT-5.5",
contextLimit: 400000,
outputLimit: 128000,
modalities: { input: ["text", "image"], output: ["text"] },
@@ -465,7 +447,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"glm-5": { name: "GLM-5" },
"glm-5.1": { name: "GLM-5.1" },
},
},
category: "cn_official",
@@ -498,7 +480,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"glm-5": { name: "GLM-5" },
"glm-5.1": { name: "GLM-5.1" },
},
},
category: "cn_official",
@@ -722,7 +704,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"ZhipuAI/GLM-5": { name: "GLM-5" },
"ZhipuAI/GLM-5.1": { name: "GLM-5.1" },
},
},
category: "aggregator",
@@ -1079,8 +1061,8 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
"anthropic/claude-sonnet-4.6": { name: "Claude Sonnet 4.6" },
"openai/gpt-5.3-codex": { name: "GPT-5.3 Codex" },
"openai/gpt-5.2": { name: "GPT-5.2" },
"google/gemini-3-flash-preview": {
name: "Gemini 3 Flash Preview",
"google/gemini-3.5-flash": {
name: "Gemini 3.5 Flash",
},
"qwen/qwen3-coder-480b": { name: "Qwen3 Coder 480B" },
},
@@ -1107,7 +1089,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"zai-org/glm-5": { name: "GLM-5" },
"zai-org/glm-5.1": { name: "GLM-5.1" },
},
},
category: "aggregator",
@@ -1393,7 +1375,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"gpt-5.4": { name: "GPT-5.4" },
"gpt-5.5": { name: "GPT-5.5" },
},
},
category: "third_party",
@@ -1662,7 +1644,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"gpt-5.4": { name: "GPT-5.4" },
"gpt-5.5": { name: "GPT-5.5" },
},
},
category: "third_party",