fix: restore Gemini Pro agent options

This commit is contained in:
Hermes Team 2026-08-22 23:53:31 +07:00
parent 7d77877358
commit 49821451a5
2 changed files with 27 additions and 15 deletions

View file

@ -75,6 +75,24 @@ from antigravity_provider.router.ui.views.quotas_view import QuotasView
logger = logging.getLogger("hermes.hub.gui")
AGENT_MODEL_OPTIONS = {
"antigravity": [
# User-facing logical IDs. The provider layer maps Gemini 3.1 Pro
# to the current low/high wire variants according to reasoning effort.
"gemini-3.1-pro",
"gemini-2.5-pro",
"gemini-3.7-flash",
"gemini-3.6-flash-high",
"gemini-3.5-flash",
"claude-sonnet-4-6",
"claude-opus-4-6-thinking",
],
"openai-codex": ["gpt-4o", "o3-mini", "codex"],
"opencode-go": ["qwen3.8-max", "kimi-k2.7-code", "deepseek-v3"],
"claude": ["claude-sonnet-4-6", "claude-3-7-sonnet", "claude-3-5-haiku"],
"grok": ["grok-3", "grok-3-mini", "grok-2"],
}
def _load_saved_theme() -> str:
settings_file = paths.get_hermes_home() / "hub_settings.json"
@ -953,24 +971,12 @@ class HermesHubApp(ctk.CTk):
quota_rows = ctk.CTkFrame(quota_card, fg_color="transparent")
quota_rows.pack(fill="both", expand=True, padx=12, pady=(0, 8))
provider_models = {
"antigravity": [
"gemini-3.7-flash",
"gemini-3.6-flash-high",
"gemini-3.5-flash",
"claude-sonnet-4-6",
"claude-opus-4-6-thinking",
],
"openai-codex": ["gpt-4o", "o3-mini", "codex"],
"opencode-go": ["qwen3.8-max", "kimi-k2.7-code", "deepseek-v3"],
"claude": ["claude-sonnet-4-6", "claude-3-7-sonnet", "claude-3-5-haiku"],
"grok": ["grok-3", "grok-3-mini", "grok-2"],
}
def _refresh_account_panel(_choice: Optional[str] = None) -> None:
current_pid = choices[account_var.get()]
current_cfg = load_router_config().profiles[current_pid]
available = list(dict.fromkeys(current_cfg.preferred_models + provider_models.get(current_cfg.provider, [])))
available = list(
dict.fromkeys(current_cfg.preferred_models + AGENT_MODEL_OPTIONS.get(current_cfg.provider, []))
)
if not available:
available = ["default"]
model_menu.configure(values=available)

View file

@ -38,6 +38,12 @@ def _config():
return SimpleNamespace(roles=roles, profiles=profiles)
def test_antigravity_agent_catalog_keeps_gemini_pro_choices():
choices = app_module.AGENT_MODEL_OPTIONS["antigravity"]
assert "gemini-3.1-pro" in choices
assert "gemini-2.5-pro" in choices
def test_default_graph_migrates_six_roles_without_changing_chains():
config = _config()
before = {key: list(value.preferred_chain) for key, value in config.roles.items()}