From 647f99d4dd8c98da1b3ff01ba64cb71f5423fab6 Mon Sep 17 00:00:00 2001 From: Ben Date: Thu, 2 Apr 2026 00:50:40 +0000 Subject: [PATCH] fix: resolve post-merge issues in auxiliary_client and model flow - Add missing `from agent.credential_pool import load_pool` import to auxiliary_client.py (introduced by the credential pool feature in main) - Thread `args` through `select_provider_and_model(args=None)` so TLS options from `cmd_model` reach `_model_flow_nous` - Mock `_require_tty` in test_cmd_model_forwards_nous_login_tls_options so it can run in non-interactive test environments Co-Authored-By: Claude Sonnet 4.6 --- agent/auxiliary_client.py | 1 + hermes_cli/main.py | 4 ++-- tests/test_cli_provider_resolution.py | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/agent/auxiliary_client.py b/agent/auxiliary_client.py index 70f81d134..3b05e8d12 100644 --- a/agent/auxiliary_client.py +++ b/agent/auxiliary_client.py @@ -47,6 +47,7 @@ from typing import Any, Dict, List, Optional, Tuple from openai import OpenAI +from agent.credential_pool import load_pool from hermes_cli.config import get_hermes_home from hermes_constants import OPENROUTER_BASE_URL diff --git a/hermes_cli/main.py b/hermes_cli/main.py index 39cb2e9a2..fe724878a 100644 --- a/hermes_cli/main.py +++ b/hermes_cli/main.py @@ -858,10 +858,10 @@ def cmd_setup(args): def cmd_model(args): """Select default model — starts with provider selection, then model picker.""" _require_tty("model") - select_provider_and_model() + select_provider_and_model(args=args) -def select_provider_and_model(): +def select_provider_and_model(args=None): """Core provider selection + model picking logic. Shared by ``cmd_model`` (``hermes model``) and the setup wizard diff --git a/tests/test_cli_provider_resolution.py b/tests/test_cli_provider_resolution.py index 45161b2cf..4d876cf6e 100644 --- a/tests/test_cli_provider_resolution.py +++ b/tests/test_cli_provider_resolution.py @@ -560,6 +560,7 @@ def test_model_flow_custom_saves_verified_v1_base_url(monkeypatch, capsys): def test_cmd_model_forwards_nous_login_tls_options(monkeypatch): + monkeypatch.setattr(hermes_main, "_require_tty", lambda *a: None) monkeypatch.setattr( "hermes_cli.config.load_config", lambda: {"model": {"default": "gpt-5", "provider": "nous"}},