fix: resolve 'auto' provider properly via credential detection

'auto' doesn't always mean openrouter — it could be nous, zai,
kimi-coding, etc. depending on configured credentials. Reverted the
hardcoded mapping and now both CLI and gateway call
resolve_provider() to detect the actual active provider when 'auto'
is set. Falls back to openrouter only if resolution fails.
This commit is contained in:
teknium1 2026-03-08 05:58:45 -07:00
parent 7ad6fc8a40
commit 34792dd907
3 changed files with 27 additions and 4 deletions

View file

@ -1344,7 +1344,14 @@ class GatewayRunner:
except Exception:
pass
# Resolve "auto" to the actual provider using credential detection
current_provider = normalize_provider(current_provider)
if current_provider == "auto":
try:
from hermes_cli.auth import resolve_provider as _resolve_provider
current_provider = _resolve_provider(current_provider)
except Exception:
current_provider = "openrouter"
if not args:
provider_label = _PROVIDER_LABELS.get(current_provider, current_provider)