feat(settings): add model selection combobox for OpenCode agent configuration

Replace plain text inputs for model and small_model with searchable
combobox dropdowns that list models from configured providers, while
still supporting custom text entry on blur.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
xintaofei
2026-04-07 10:55:42 +08:00
parent a3d5335e7f
commit faf8ff0731
11 changed files with 152 additions and 28 deletions

View File

@@ -555,7 +555,10 @@
"modelId": "معرّف النموذج",
"modelName": "اسم النموذج",
"deleteModel": "حذف النموذج {modelId}",
"nativeJsonConfig": "إعداد JSON الأصلي لـ OpenCode"
"nativeJsonConfig": "إعداد JSON الأصلي لـ OpenCode",
"mainModel": "النموذج الرئيسي",
"smallModel": "النموذج الصغير",
"noMatchingModels": "لا توجد نماذج مطابقة"
},
"openClaw": {
"gatewayConfig": "إعداد Gateway",

View File

@@ -555,7 +555,10 @@
"modelId": "Modell-ID",
"modelName": "Modellname",
"deleteModel": "Modell {modelId} löschen",
"nativeJsonConfig": "OpenCode Native JSON-Konfiguration"
"nativeJsonConfig": "OpenCode Native JSON-Konfiguration",
"mainModel": "Hauptmodell",
"smallModel": "Kleines Modell",
"noMatchingModels": "Keine passenden Modelle"
},
"openClaw": {
"gatewayConfig": "Gateway-Konfiguration",

View File

@@ -555,7 +555,10 @@
"modelId": "Model ID",
"modelName": "Model Name",
"deleteModel": "Delete model {modelId}",
"nativeJsonConfig": "OpenCode Native JSON Config"
"nativeJsonConfig": "OpenCode Native JSON Config",
"mainModel": "Main Model",
"smallModel": "Small Model",
"noMatchingModels": "No matching models"
},
"openClaw": {
"gatewayConfig": "Gateway Config",

View File

@@ -555,7 +555,10 @@
"modelId": "ID de modelo",
"modelName": "Nombre del modelo",
"deleteModel": "Eliminar modelo {modelId}",
"nativeJsonConfig": "Configuración JSON nativa de OpenCode"
"nativeJsonConfig": "Configuración JSON nativa de OpenCode",
"mainModel": "Modelo principal",
"smallModel": "Modelo pequeño",
"noMatchingModels": "No hay modelos coincidentes"
},
"openClaw": {
"gatewayConfig": "Configuración de Gateway",

View File

@@ -555,7 +555,10 @@
"modelId": "ID du modèle",
"modelName": "Nom du modèle",
"deleteModel": "Supprimer le modèle {modelId}",
"nativeJsonConfig": "Configuration JSON native OpenCode"
"nativeJsonConfig": "Configuration JSON native OpenCode",
"mainModel": "Modèle principal",
"smallModel": "Petit modèle",
"noMatchingModels": "Aucun modèle correspondant"
},
"openClaw": {
"gatewayConfig": "Configuration Gateway",

View File

@@ -555,7 +555,10 @@
"modelId": "モデル ID",
"modelName": "モデル名",
"deleteModel": "モデル {modelId} を削除",
"nativeJsonConfig": "OpenCode ネイティブ JSON 設定"
"nativeJsonConfig": "OpenCode ネイティブ JSON 設定",
"mainModel": "メインモデル",
"smallModel": "スモールモデル",
"noMatchingModels": "一致するモデルがありません"
},
"openClaw": {
"gatewayConfig": "Gateway 設定",

View File

@@ -555,7 +555,10 @@
"modelId": "모델 ID",
"modelName": "모델 이름",
"deleteModel": "모델 {modelId} 삭제",
"nativeJsonConfig": "OpenCode 네이티브 JSON 구성"
"nativeJsonConfig": "OpenCode 네이티브 JSON 구성",
"mainModel": "메인 모델",
"smallModel": "스몰 모델",
"noMatchingModels": "일치하는 모델 없음"
},
"openClaw": {
"gatewayConfig": "Gateway 구성",

View File

@@ -555,7 +555,10 @@
"modelId": "ID do modelo",
"modelName": "Nome do modelo",
"deleteModel": "Excluir modelo {modelId}",
"nativeJsonConfig": "Configuração JSON nativa do OpenCode"
"nativeJsonConfig": "Configuração JSON nativa do OpenCode",
"mainModel": "Modelo principal",
"smallModel": "Modelo pequeno",
"noMatchingModels": "Nenhum modelo correspondente"
},
"openClaw": {
"gatewayConfig": "Configuração de Gateway",

View File

@@ -555,7 +555,10 @@
"modelId": "模型 ID",
"modelName": "模型名称",
"deleteModel": "删除模型 {modelId}",
"nativeJsonConfig": "OpenCode 原生 JSON 配置"
"nativeJsonConfig": "OpenCode 原生 JSON 配置",
"mainModel": "主模型",
"smallModel": "小模型",
"noMatchingModels": "没有匹配的模型"
},
"openClaw": {
"gatewayConfig": "Gateway 配置",

View File

@@ -555,7 +555,10 @@
"modelId": "模型 ID",
"modelName": "模型名稱",
"deleteModel": "刪除模型 {modelId}",
"nativeJsonConfig": "OpenCode 原生 JSON 配置"
"nativeJsonConfig": "OpenCode 原生 JSON 配置",
"mainModel": "主模型",
"smallModel": "小模型",
"noMatchingModels": "沒有匹配的模型"
},
"openClaw": {
"gatewayConfig": "Gateway 配置",