Upgrade default Claude Opus model to 4.8

Bump the default Opus route/model from claude-opus-4-7 to claude-opus-4-8
across provider presets (claude, claudeDesktop, hermes, openclaw, opencode,
universal), i18n locales (zh/en/ja/zh-TW), pricing seed data, and the
user-manual docs.

- Add claude-opus-4-8 pricing row ($5/$25/$0.50/$6.25); keep the 4-7 row
  for historical usage stats (seeded via INSERT OR IGNORE).
- Claude Desktop proxy: accept bidirectional opus 4-7 <-> 4-8 route alias
  during rollout so previously saved routes keep resolving.
- thinking_optimizer: route opus-4-8 through adaptive thinking and normalize
  dotted model ids (also fixes dotted 4-6/4-7 falling back to legacy).
- usage_stats: normalize Bedrock/Vertex/aggregator opus-4-8 ids to base
  pricing.

Also merge role:"system" messages into the Gemini systemInstruction in the
Anthropic->Gemini transform.
This commit is contained in:
Jason
2026-05-29 12:09:33 +08:00
parent 554e3b4875
commit 0877b9e35d
27 changed files with 386 additions and 221 deletions
+4 -4
View File
@@ -31,7 +31,7 @@ export interface ClaudeDesktopRoutePreset {
*/
export const CLAUDE_DESKTOP_ROLE_ROUTE_IDS = {
sonnet: "claude-sonnet-4-6",
opus: "claude-opus-4-7",
opus: "claude-opus-4-8",
haiku: "claude-haiku-4-5",
} as const;
@@ -160,7 +160,7 @@ export const claudeDesktopProviderPresets: ClaudeDesktopProviderPreset[] = [
apiFormat: "anthropic",
modelRoutes: mappedRoutes(
"anthropic/claude-sonnet-4.6",
"anthropic/claude-opus-4.7",
"anthropic/claude-opus-4.8",
"anthropic/claude-haiku-4.5",
),
isPartner: true,
@@ -888,7 +888,7 @@ export const claudeDesktopProviderPresets: ClaudeDesktopProviderPreset[] = [
apiFormat: "anthropic",
modelRoutes: mappedRoutes(
"anthropic/claude-sonnet-4.6",
"anthropic/claude-opus-4.7",
"anthropic/claude-opus-4.8",
"anthropic/claude-haiku-4.5",
true,
),
@@ -905,7 +905,7 @@ export const claudeDesktopProviderPresets: ClaudeDesktopProviderPreset[] = [
apiFormat: "anthropic",
modelRoutes: mappedRoutes(
"anthropic/claude-sonnet-4.6",
"anthropic/claude-opus-4.7",
"anthropic/claude-opus-4.8",
"anthropic/claude-haiku-4.5",
true,
),
+9 -9
View File
@@ -101,7 +101,7 @@ export const providerPresets: ProviderPreset[] = [
ANTHROPIC_MODEL: "anthropic/claude-sonnet-4.6",
ANTHROPIC_DEFAULT_HAIKU_MODEL: "anthropic/claude-haiku-4.5",
ANTHROPIC_DEFAULT_SONNET_MODEL: "anthropic/claude-sonnet-4.6",
ANTHROPIC_DEFAULT_OPUS_MODEL: "anthropic/claude-opus-4.7",
ANTHROPIC_DEFAULT_OPUS_MODEL: "anthropic/claude-opus-4.8",
},
},
category: "aggregator",
@@ -975,7 +975,7 @@ export const providerPresets: ProviderPreset[] = [
ANTHROPIC_MODEL: "anthropic/claude-sonnet-4.6",
ANTHROPIC_DEFAULT_HAIKU_MODEL: "anthropic/claude-haiku-4.5",
ANTHROPIC_DEFAULT_SONNET_MODEL: "anthropic/claude-sonnet-4.6",
ANTHROPIC_DEFAULT_OPUS_MODEL: "anthropic/claude-opus-4.7",
ANTHROPIC_DEFAULT_OPUS_MODEL: "anthropic/claude-opus-4.8",
},
},
category: "aggregator",
@@ -994,7 +994,7 @@ export const providerPresets: ProviderPreset[] = [
ANTHROPIC_MODEL: "anthropic/claude-sonnet-4.6",
ANTHROPIC_DEFAULT_HAIKU_MODEL: "anthropic/claude-haiku-4.5",
ANTHROPIC_DEFAULT_SONNET_MODEL: "anthropic/claude-sonnet-4.6",
ANTHROPIC_DEFAULT_OPUS_MODEL: "anthropic/claude-opus-4.7",
ANTHROPIC_DEFAULT_OPUS_MODEL: "anthropic/claude-opus-4.8",
},
},
category: "aggregator",
@@ -1102,10 +1102,10 @@ export const providerPresets: ProviderPreset[] = [
env: {
ANTHROPIC_BASE_URL: "https://cc-api.pipellm.ai",
ANTHROPIC_AUTH_TOKEN: "",
ANTHROPIC_MODEL: "claude-opus-4-7",
ANTHROPIC_MODEL: "claude-opus-4-8",
ANTHROPIC_DEFAULT_HAIKU_MODEL: "claude-haiku-4-5-20251001",
ANTHROPIC_DEFAULT_SONNET_MODEL: "claude-sonnet-4-6",
ANTHROPIC_DEFAULT_OPUS_MODEL: "claude-opus-4-7",
ANTHROPIC_DEFAULT_OPUS_MODEL: "claude-opus-4-8",
},
includeCoAuthoredBy: false,
},
@@ -1158,11 +1158,11 @@ export const providerPresets: ProviderPreset[] = [
AWS_ACCESS_KEY_ID: "${AWS_ACCESS_KEY_ID}",
AWS_SECRET_ACCESS_KEY: "${AWS_SECRET_ACCESS_KEY}",
AWS_REGION: "${AWS_REGION}",
ANTHROPIC_MODEL: "global.anthropic.claude-opus-4-7",
ANTHROPIC_MODEL: "global.anthropic.claude-opus-4-8",
ANTHROPIC_DEFAULT_HAIKU_MODEL:
"global.anthropic.claude-haiku-4-5-20251001-v1:0",
ANTHROPIC_DEFAULT_SONNET_MODEL: "global.anthropic.claude-sonnet-4-6",
ANTHROPIC_DEFAULT_OPUS_MODEL: "global.anthropic.claude-opus-4-7",
ANTHROPIC_DEFAULT_OPUS_MODEL: "global.anthropic.claude-opus-4-8",
CLAUDE_CODE_USE_BEDROCK: "1",
},
},
@@ -1196,11 +1196,11 @@ export const providerPresets: ProviderPreset[] = [
ANTHROPIC_BASE_URL:
"https://bedrock-runtime.${AWS_REGION}.amazonaws.com",
AWS_REGION: "${AWS_REGION}",
ANTHROPIC_MODEL: "global.anthropic.claude-opus-4-7",
ANTHROPIC_MODEL: "global.anthropic.claude-opus-4-8",
ANTHROPIC_DEFAULT_HAIKU_MODEL:
"global.anthropic.claude-haiku-4-5-20251001-v1:0",
ANTHROPIC_DEFAULT_SONNET_MODEL: "global.anthropic.claude-sonnet-4-6",
ANTHROPIC_DEFAULT_OPUS_MODEL: "global.anthropic.claude-opus-4-7",
ANTHROPIC_DEFAULT_OPUS_MODEL: "global.anthropic.claude-opus-4-8",
CLAUDE_CODE_USE_BEDROCK: "1",
},
},
+31 -31
View File
@@ -35,7 +35,7 @@ export function isHermesReadOnlyProvider(settingsConfig: unknown): boolean {
*
* ```yaml
* models:
* anthropic/claude-opus-4-7:
* anthropic/claude-opus-4-8:
* context_length: 200000
* ```
*
@@ -250,8 +250,8 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_mode: "chat_completions",
models: [
{
id: "anthropic/claude-opus-4-7",
name: "Claude Opus 4.7",
id: "anthropic/claude-opus-4-8",
name: "Claude Opus 4.8",
context_length: 1000000,
},
{
@@ -280,7 +280,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
icon: "openrouter",
iconColor: "#6366F1",
suggestedDefaults: {
model: { default: "anthropic/claude-opus-4-7", provider: "openrouter" },
model: { default: "anthropic/claude-opus-4-8", provider: "openrouter" },
},
},
{
@@ -733,7 +733,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5-20251001", name: "Claude Haiku 4.5" },
],
@@ -743,7 +743,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
partnerPromotionKey: "packycode",
icon: "packycode",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "packycode" },
model: { default: "claude-opus-4-8", provider: "packycode" },
},
},
{
@@ -757,8 +757,8 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_mode: "anthropic_messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
context_length: 1000000,
},
{
@@ -778,7 +778,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
partnerPromotionKey: "apikeyfun",
icon: "apikeyfun",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "apikeyfun" },
model: { default: "claude-opus-4-8", provider: "apikeyfun" },
},
},
{
@@ -863,7 +863,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5-20251001", name: "Claude Haiku 4.5" },
],
@@ -874,7 +874,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
icon: "cubence",
iconColor: "#000000",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "cubence" },
model: { default: "claude-opus-4-8", provider: "cubence" },
},
},
{
@@ -887,7 +887,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5", name: "Claude Haiku 4.5" },
],
@@ -917,7 +917,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5", name: "Claude Haiku 4.5" },
],
@@ -947,7 +947,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5-20251001", name: "Claude Haiku 4.5" },
],
@@ -958,7 +958,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
icon: "aigocode",
iconColor: "#5B7FFF",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "aigocode" },
model: { default: "claude-opus-4-8", provider: "aigocode" },
},
},
{
@@ -971,7 +971,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5-20251001", name: "Claude Haiku 4.5" },
],
@@ -982,7 +982,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
icon: "rc",
iconColor: "#E96B2C",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "rightcode" },
model: { default: "claude-opus-4-8", provider: "rightcode" },
},
},
{
@@ -995,7 +995,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5-20251001", name: "Claude Haiku 4.5" },
],
@@ -1006,7 +1006,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
icon: "aicodemirror",
iconColor: "#000000",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "aicodemirror" },
model: { default: "claude-opus-4-8", provider: "aicodemirror" },
},
},
{
@@ -1019,7 +1019,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5-20251001", name: "Claude Haiku 4.5" },
],
@@ -1030,7 +1030,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
icon: "crazyrouter",
iconColor: "#000000",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "crazyrouter" },
model: { default: "claude-opus-4-8", provider: "crazyrouter" },
},
},
{
@@ -1043,7 +1043,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5-20251001", name: "Claude Haiku 4.5" },
],
@@ -1054,7 +1054,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
icon: "sssaicode",
iconColor: "#000000",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "sssaicode" },
model: { default: "claude-opus-4-8", provider: "sssaicode" },
},
},
{
@@ -1111,7 +1111,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5-20251001", name: "Claude Haiku 4.5" },
],
@@ -1122,7 +1122,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
icon: "micu",
iconColor: "#000000",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "micu" },
model: { default: "claude-opus-4-8", provider: "micu" },
},
},
{
@@ -1135,7 +1135,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5-20251001", name: "Claude Haiku 4.5" },
],
@@ -1146,7 +1146,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
icon: "ctok",
iconColor: "#000000",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "ctok" },
model: { default: "claude-opus-4-8", provider: "ctok" },
},
},
{
@@ -1159,7 +1159,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{ id: "claude-haiku-4-5-20251001", name: "Claude Haiku 4.5" },
],
@@ -1168,7 +1168,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
icon: "eflowcode",
iconColor: "#000000",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "eflowcode" },
model: { default: "claude-opus-4-8", provider: "eflowcode" },
},
},
{
@@ -1259,7 +1259,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
api_key: "",
api_mode: "anthropic_messages",
models: [
{ id: "claude-opus-4-7", name: "Claude Opus 4.7" },
{ id: "claude-opus-4-8", name: "Claude Opus 4.8" },
{ id: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
{
id: "claude-haiku-4-5-20251001",
@@ -1270,7 +1270,7 @@ export const hermesProviderPresets: HermesProviderPreset[] = [
category: "aggregator",
icon: "pipellm",
suggestedDefaults: {
model: { default: "claude-opus-4-7", provider: "pipellm" },
model: { default: "claude-opus-4-8", provider: "pipellm" },
},
},
{
+76 -76
View File
@@ -109,8 +109,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "anthropic/claude-opus-4.7",
name: "Claude Opus 4.7",
id: "anthropic/claude-opus-4.8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -135,11 +135,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "shengsuanyun/anthropic/claude-opus-4.7",
primary: "shengsuanyun/anthropic/claude-opus-4.8",
fallbacks: ["shengsuanyun/anthropic/claude-sonnet-4.6"],
},
modelCatalog: {
"shengsuanyun/anthropic/claude-opus-4.7": { alias: "Opus" },
"shengsuanyun/anthropic/claude-opus-4.8": { alias: "Opus" },
"shengsuanyun/anthropic/claude-sonnet-4.6": { alias: "Sonnet" },
},
},
@@ -866,8 +866,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -891,11 +891,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "aihubmix/claude-opus-4-7",
primary: "aihubmix/claude-opus-4-8",
fallbacks: ["aihubmix/claude-sonnet-4-6"],
},
modelCatalog: {
"aihubmix/claude-opus-4-7": { alias: "Opus" },
"aihubmix/claude-opus-4-8": { alias: "Opus" },
"aihubmix/claude-sonnet-4-6": { alias: "Sonnet" },
},
},
@@ -910,8 +910,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -935,11 +935,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "dmxapi/claude-opus-4-7",
primary: "dmxapi/claude-opus-4-8",
fallbacks: ["dmxapi/claude-sonnet-4-6"],
},
modelCatalog: {
"dmxapi/claude-opus-4-7": { alias: "Opus" },
"dmxapi/claude-opus-4-8": { alias: "Opus" },
"dmxapi/claude-sonnet-4-6": { alias: "Sonnet" },
},
},
@@ -954,8 +954,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
},
{
@@ -986,7 +986,7 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
primary: "claudecn/claude-sonnet-4-6",
},
modelCatalog: {
"claudecn/claude-opus-4-7": { alias: "Opus" },
"claudecn/claude-opus-4-8": { alias: "Opus" },
"claudecn/claude-sonnet-4-6": { alias: "Sonnet" },
"claudecn/claude-haiku-4-5": { alias: "Haiku" },
},
@@ -1002,8 +1002,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
},
{
@@ -1034,7 +1034,7 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
primary: "runapi/claude-sonnet-4-6",
},
modelCatalog: {
"runapi/claude-opus-4-7": { alias: "Opus" },
"runapi/claude-opus-4-8": { alias: "Opus" },
"runapi/claude-sonnet-4-6": { alias: "Sonnet" },
"runapi/claude-haiku-4-5": { alias: "Haiku" },
},
@@ -1050,8 +1050,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "openai-completions",
models: [
{
id: "anthropic/claude-opus-4.7",
name: "Claude Opus 4.7",
id: "anthropic/claude-opus-4.8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1075,11 +1075,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "openrouter/anthropic/claude-opus-4.7",
primary: "openrouter/anthropic/claude-opus-4.8",
fallbacks: ["openrouter/anthropic/claude-sonnet-4.6"],
},
modelCatalog: {
"openrouter/anthropic/claude-opus-4.7": { alias: "Opus" },
"openrouter/anthropic/claude-opus-4.8": { alias: "Opus" },
"openrouter/anthropic/claude-sonnet-4.6": { alias: "Sonnet" },
},
},
@@ -1336,8 +1336,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "claude-opus-4-7",
id: "claude-opus-4-8",
name: "claude-opus-4-8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1366,11 +1366,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "pipellm/claude-opus-4-7",
primary: "pipellm/claude-opus-4-8",
fallbacks: ["pipellm/claude-sonnet-4-6"],
},
modelCatalog: {
"pipellm/claude-opus-4-7": { alias: "Opus" },
"pipellm/claude-opus-4-8": { alias: "Opus" },
"pipellm/claude-sonnet-4-6": { alias: "Sonnet" },
"pipellm/claude-haiku-4-5-20251001": { alias: "Haiku" },
},
@@ -1388,8 +1388,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1414,11 +1414,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "packycode/claude-opus-4-7",
primary: "packycode/claude-opus-4-8",
fallbacks: ["packycode/claude-sonnet-4-6"],
},
modelCatalog: {
"packycode/claude-opus-4-7": { alias: "Opus" },
"packycode/claude-opus-4-8": { alias: "Opus" },
"packycode/claude-sonnet-4-6": { alias: "Sonnet" },
},
},
@@ -1433,8 +1433,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
},
{
@@ -1462,11 +1462,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "apikeyfun/claude-opus-4-7",
primary: "apikeyfun/claude-opus-4-8",
fallbacks: ["apikeyfun/claude-sonnet-4-6"],
},
modelCatalog: {
"apikeyfun/claude-opus-4-7": { alias: "Opus" },
"apikeyfun/claude-opus-4-8": { alias: "Opus" },
"apikeyfun/claude-sonnet-4-6": { alias: "Sonnet" },
"apikeyfun/claude-haiku-4-5": { alias: "Haiku" },
},
@@ -1578,8 +1578,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1605,11 +1605,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "cubence/claude-opus-4-7",
primary: "cubence/claude-opus-4-8",
fallbacks: ["cubence/claude-sonnet-4-6"],
},
modelCatalog: {
"cubence/claude-opus-4-7": { alias: "Opus" },
"cubence/claude-opus-4-8": { alias: "Opus" },
"cubence/claude-sonnet-4-6": { alias: "Sonnet" },
},
},
@@ -1624,8 +1624,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1651,11 +1651,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "aigocode/claude-opus-4-7",
primary: "aigocode/claude-opus-4-8",
fallbacks: ["aigocode/claude-sonnet-4-6"],
},
modelCatalog: {
"aigocode/claude-opus-4-7": { alias: "Opus" },
"aigocode/claude-opus-4-8": { alias: "Opus" },
"aigocode/claude-sonnet-4-6": { alias: "Sonnet" },
},
},
@@ -1670,8 +1670,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1697,11 +1697,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "rightcode/claude-opus-4-7",
primary: "rightcode/claude-opus-4-8",
fallbacks: ["rightcode/claude-sonnet-4-6"],
},
modelCatalog: {
"rightcode/claude-opus-4-7": { alias: "Opus" },
"rightcode/claude-opus-4-8": { alias: "Opus" },
"rightcode/claude-sonnet-4-6": { alias: "Sonnet" },
},
},
@@ -1716,8 +1716,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1743,11 +1743,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "aicodemirror/claude-opus-4-7",
primary: "aicodemirror/claude-opus-4-8",
fallbacks: ["aicodemirror/claude-sonnet-4-6"],
},
modelCatalog: {
"aicodemirror/claude-opus-4-7": { alias: "Opus" },
"aicodemirror/claude-opus-4-8": { alias: "Opus" },
"aicodemirror/claude-sonnet-4-6": { alias: "Sonnet" },
},
},
@@ -1762,8 +1762,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1789,11 +1789,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "crazyrouter/claude-opus-4-7",
primary: "crazyrouter/claude-opus-4-8",
fallbacks: ["crazyrouter/claude-sonnet-4-6"],
},
modelCatalog: {
"crazyrouter/claude-opus-4-7": { alias: "Opus" },
"crazyrouter/claude-opus-4-8": { alias: "Opus" },
"crazyrouter/claude-sonnet-4-6": { alias: "Sonnet" },
},
},
@@ -1808,8 +1808,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1835,11 +1835,11 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "sssaicode/claude-opus-4-7",
primary: "sssaicode/claude-opus-4-8",
fallbacks: ["sssaicode/claude-sonnet-4-6"],
},
modelCatalog: {
"sssaicode/claude-opus-4-7": { alias: "Opus" },
"sssaicode/claude-opus-4-8": { alias: "Opus" },
"sssaicode/claude-sonnet-4-6": { alias: "Sonnet" },
},
},
@@ -1856,8 +1856,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1877,10 +1877,10 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "compshare/claude-opus-4-7",
primary: "compshare/claude-opus-4-8",
},
modelCatalog: {
"compshare/claude-opus-4-7": { alias: "Opus" },
"compshare/claude-opus-4-8": { alias: "Opus" },
},
},
},
@@ -1896,8 +1896,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1917,10 +1917,10 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "compshare-coding/claude-opus-4-7",
primary: "compshare-coding/claude-opus-4-8",
},
modelCatalog: {
"compshare-coding/claude-opus-4-7": { alias: "Opus" },
"compshare-coding/claude-opus-4-8": { alias: "Opus" },
},
},
},
@@ -1934,8 +1934,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1955,10 +1955,10 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "micu/claude-opus-4-7",
primary: "micu/claude-opus-4-8",
},
modelCatalog: {
"micu/claude-opus-4-7": { alias: "Opus" },
"micu/claude-opus-4-8": { alias: "Opus" },
},
},
},
@@ -1972,8 +1972,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "anthropic-messages",
models: [
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25 },
},
@@ -1993,10 +1993,10 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
},
suggestedDefaults: {
model: {
primary: "ctok/claude-opus-4-7",
primary: "ctok/claude-opus-4-8",
},
modelCatalog: {
"ctok/claude-opus-4-7": { alias: "Opus" },
"ctok/claude-opus-4-8": { alias: "Opus" },
},
},
},
@@ -2109,8 +2109,8 @@ export const openclawProviderPresets: OpenClawProviderPreset[] = [
api: "bedrock-converse-stream",
models: [
{
id: "anthropic.claude-opus-4-7",
name: "Claude Opus 4.7",
id: "anthropic.claude-opus-4-8",
name: "Claude Opus 4.8",
contextWindow: 1000000,
cost: { input: 5, output: 25, cacheRead: 0.5, cacheWrite: 6.25 },
},
+21 -21
View File
@@ -166,8 +166,8 @@ export const OPENCODE_PRESET_MODEL_VARIANTS: Record<
],
"@ai-sdk/amazon-bedrock": [
{
id: "global.anthropic.claude-opus-4-7",
name: "Claude Opus 4.7",
id: "global.anthropic.claude-opus-4-8",
name: "Claude Opus 4.8",
contextLimit: 1000000,
outputLimit: 128000,
modalities: { input: ["text", "image", "pdf"], output: ["text"] },
@@ -234,8 +234,8 @@ export const OPENCODE_PRESET_MODEL_VARIANTS: Record<
},
},
{
id: "claude-opus-4-7",
name: "Claude Opus 4.7",
id: "claude-opus-4-8",
name: "Claude Opus 4.8",
contextLimit: 1000000,
outputLimit: 128000,
modalities: { input: ["text", "image", "pdf"], output: ["text"] },
@@ -310,7 +310,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"anthropic/claude-opus-4.7": { name: "Claude Opus 4.7" },
"anthropic/claude-opus-4.8": { name: "Claude Opus 4.8" },
"anthropic/claude-sonnet-4.6": { name: "Claude Sonnet 4.6" },
},
},
@@ -993,7 +993,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
models: {
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
},
},
category: "aggregator",
@@ -1021,7 +1021,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
models: {
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
},
},
category: "aggregator",
@@ -1049,7 +1049,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
models: {
"anthropic/claude-sonnet-4.6": { name: "Claude Sonnet 4.6" },
"anthropic/claude-opus-4.7": { name: "Claude Opus 4.7" },
"anthropic/claude-opus-4.8": { name: "Claude Opus 4.8" },
},
},
category: "aggregator",
@@ -1161,7 +1161,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"claude-opus-4-7": { name: "claude-opus-4-7" },
"claude-opus-4-8": { name: "claude-opus-4-8" },
"claude-sonnet-4-6": { name: "claude-sonnet-4-6" },
"claude-haiku-4-5-20251001": { name: "claude-haiku-4-5-20251001" },
},
@@ -1191,7 +1191,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
models: {
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
},
},
category: "third_party",
@@ -1219,7 +1219,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
"claude-haiku-4-5": { name: "Claude Haiku 4.5" },
},
@@ -1334,7 +1334,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
models: {
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
},
},
category: "third_party",
@@ -1364,7 +1364,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
models: {
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
},
},
category: "third_party",
@@ -1423,7 +1423,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
models: {
"claude-sonnet-4.6": { name: "Claude Sonnet 4.6" },
"claude-opus-4.7": { name: "Claude Opus 4.7" },
"claude-opus-4.8": { name: "Claude Opus 4.8" },
},
},
category: "third_party",
@@ -1453,7 +1453,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
models: {
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
"claude-haiku-4-5": { name: "Claude Haiku 4.5" },
},
},
@@ -1483,7 +1483,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
models: {
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
"claude-haiku-4-5": { name: "Claude Haiku 4.5" },
},
},
@@ -1513,7 +1513,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
models: {
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
},
},
category: "third_party",
@@ -1543,7 +1543,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
},
models: {
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
},
},
category: "third_party",
@@ -1572,7 +1572,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
},
},
@@ -1602,7 +1602,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"claude-opus-4-7": { name: "Claude Opus 4.7" },
"claude-opus-4-8": { name: "Claude Opus 4.8" },
"claude-sonnet-4-6": { name: "Claude Sonnet 4.6" },
},
},
@@ -1690,7 +1690,7 @@ export const opencodeProviderPresets: OpenCodeProviderPreset[] = [
setCacheKey: true,
},
models: {
"global.anthropic.claude-opus-4-7": { name: "Claude Opus 4.7" },
"global.anthropic.claude-opus-4-8": { name: "Claude Opus 4.8" },
"global.anthropic.claude-sonnet-4-6": {
name: "Claude Sonnet 4.6",
},
+1 -1
View File
@@ -44,7 +44,7 @@ const NEWAPI_DEFAULT_MODELS: UniversalProviderModels = {
model: "claude-sonnet-4-6",
haikuModel: "claude-haiku-4-5-20251001",
sonnetModel: "claude-sonnet-4-6",
opusModel: "claude-opus-4-7",
opusModel: "claude-opus-4-8",
},
codex: {
model: "gpt-5.4",