From a0ffc786acae110c5100916b99b46923f4a44642 Mon Sep 17 00:00:00 2001 From: ananay Date: Sat, 5 Sep 2026 04:12:54 -0700 Subject: [PATCH 1/3] Default new sessions to GLM 5.3 Flash --- openhack/config.py | 4 ++-- openhack/setup.py | 6 +++--- openhack/tui.py | 10 +++++----- tests/test_config.py | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/openhack/config.py b/openhack/config.py index b02101a..e936492 100644 --- a/openhack/config.py +++ b/openhack/config.py @@ -20,7 +20,7 @@ def _normalize_user_config(data: dict) -> dict: if data.get("provider") not in _REMOVED_PROVIDER_IDS: return data normalized = dict(data) - normalized.update({"provider": "openhack", "model": "glm-5.2"}) + normalized.update({"provider": "openhack", "model": "glm-5.3-flash"}) return normalized @@ -99,7 +99,7 @@ class Settings(BaseSettings): openhack_api_key: Optional[str] = None openhack_base_url: str = "" openhack_app_url: str = "" - openhack_model_id: str = "glm-5.2" + openhack_model_id: str = "glm-5.3-flash" # Throughput-first OpenRouter routing for hosted OpenHack inference. fast_mode: bool = False # Rotating contextual guidance on the TUI landing screen. diff --git a/openhack/setup.py b/openhack/setup.py index 79acc66..2921c28 100644 --- a/openhack/setup.py +++ b/openhack/setup.py @@ -72,7 +72,7 @@ def _clear() -> None: "key_env": "OPENHACK_API_KEY", # key_url is built dynamically from settings.openhack_app_url at display time. "models": [], - "default_model": "glm-5.2", + "default_model": "glm-5.3-flash", }, ] @@ -493,7 +493,7 @@ async def _run_first_time_onboarding() -> bool: _html(f" {GREEN}✓{EGREEN} Connected to OpenHack") _html(f" {GREEN}✓{EGREEN} Inference verified") - model_id = "glm-5.2" + model_id = "glm-5.3-flash" new_cfg = { "provider": "openhack", @@ -868,7 +868,7 @@ async def _connect_openhack( _html(f" {YELLOW}⚠{EYELLOW} Could not verify this connection.") return False - model_id = "glm-5.2" + model_id = "glm-5.3-flash" new_cfg = { "provider": "openhack", "model": model_id, diff --git a/openhack/tui.py b/openhack/tui.py index 9ab8def..3fe924b 100644 --- a/openhack/tui.py +++ b/openhack/tui.py @@ -305,7 +305,7 @@ def apply_transformation(self, ti): -PROVIDER_DEFAULTS = {"openhack": "glm-5.2"} +PROVIDER_DEFAULTS = {"openhack": "glm-5.3-flash"} CHAT_SYSTEM_PROMPT = ( "You are OpenHack, a security-focused AI assistant embedded in the OpenHack CLI. " @@ -1605,7 +1605,7 @@ def __init__(self, resume_session_id: Optional[str] = None) -> None: ), ) if replacement == "openhack": - replacement_model = "glm-5.2" + replacement_model = "glm-5.3-flash" else: resolved = provider_registry.resolve(replacement) replacement_model = resolved.model if resolved else "" @@ -2664,7 +2664,7 @@ def _model_line(self) -> list[tuple[str, str]]: ("class:input.box", " "), ("class:input.model.agent", cwd), ("class:input.model.sep", " · "), - ("class:input.model.name", self.model or "glm-5.2"), + ("class:input.model.name", self.model or "glm-5.3-flash"), ( "class:input.model.provider", f" {self.provider}" @@ -4753,7 +4753,7 @@ def _activate_connected_provider( self.last_status_line = f"connection failed: {provider_id} is not authenticated" return False if provider_id == "openhack": - model_id = "glm-5.2" + model_id = "glm-5.3-flash" provider_label = label or "OpenHack" else: resolved = provider_registry.resolve(provider_id) @@ -4919,7 +4919,7 @@ def _cmd_disconnect(self, arg: str) -> None: remove_credential(provider_id) if self.provider == provider_id: self.provider = "openhack" - self.model = settings.openhack_model_id or "glm-5.2" + self.model = settings.openhack_model_id or "glm-5.3-flash" save_user_config({"provider": self.provider, "model": self.model}) self.last_status_line = f"disconnected {provider_id}" diff --git a/tests/test_config.py b/tests/test_config.py index 0c7ddb5..d590335 100644 --- a/tests/test_config.py +++ b/tests/test_config.py @@ -47,7 +47,7 @@ def test_removed_provider_falls_back_to_openhack(self, tmp_path): loaded = load_user_config() assert loaded["provider"] == "openhack" - assert loaded["model"] == "glm-5.2" + assert loaded["model"] == "glm-5.3-flash" assert resolve_provider("opencode") == "openhack" From 5eb7318a66a84db8ce0b9e0d8d6a0cace6184a5b Mon Sep 17 00:00:00 2001 From: ananay Date: Sat, 5 Sep 2026 04:16:23 -0700 Subject: [PATCH 2/3] Update onboarding test for GLM Flash default --- tests/test_first_time_onboarding.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/test_first_time_onboarding.py b/tests/test_first_time_onboarding.py index a9989f3..8dd9de9 100644 --- a/tests/test_first_time_onboarding.py +++ b/tests/test_first_time_onboarding.py @@ -34,7 +34,7 @@ async def login(_url): "openhack.agents.llm.fetch_available_models", lambda **kwargs: [ "grok-4.5", - "glm-5.2", + "glm-5.3-flash", "kimi-k2.5", "new-hosted-model", ], @@ -42,7 +42,7 @@ async def login(_url): assert await setup._run_first_time_onboarding() is True assert saved[-1]["provider"] == "openhack" - assert saved[-1]["model"] == "glm-5.2" + assert saved[-1]["model"] == "glm-5.3-flash" assert saved[-1]["openhack_model_id"] == "glm-5.2" assert saved[-1]["onboarding_version"] == 1 assert titles == ["Connect a provider", "Connect OpenHack"] From f18702fda1a0d8da2dd8fb60d3a3c79f5ae449c2 Mon Sep 17 00:00:00 2001 From: ananay Date: Sat, 5 Sep 2026 04:17:58 -0700 Subject: [PATCH 3/3] Verify persisted onboarding model matches the default --- tests/test_first_time_onboarding.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/test_first_time_onboarding.py b/tests/test_first_time_onboarding.py index 8dd9de9..50b7f45 100644 --- a/tests/test_first_time_onboarding.py +++ b/tests/test_first_time_onboarding.py @@ -34,7 +34,7 @@ async def login(_url): "openhack.agents.llm.fetch_available_models", lambda **kwargs: [ "grok-4.5", - "glm-5.3-flash", + "glm-5.3-flash", "kimi-k2.5", "new-hosted-model", ], @@ -43,7 +43,7 @@ async def login(_url): assert await setup._run_first_time_onboarding() is True assert saved[-1]["provider"] == "openhack" assert saved[-1]["model"] == "glm-5.3-flash" - assert saved[-1]["openhack_model_id"] == "glm-5.2" + assert saved[-1]["openhack_model_id"] == "glm-5.3-flash" assert saved[-1]["onboarding_version"] == 1 assert titles == ["Connect a provider", "Connect OpenHack"]