diff --git a/hermes_cli/model_switch_providers.py b/hermes_cli/model_switch_providers.py index ff766cbdb1..565932522c 100644 --- a/hermes_cli/model_switch_providers.py +++ b/hermes_cli/model_switch_providers.py @@ -1132,6 +1132,12 @@ def _build_curated_lists(current_provider: str, current_base_url: str, current_m from hermes_cli.models import OPENROUTER_MODELS, _PROVIDER_MODELS, get_curated_nous_model_ids curated: dict[str, list[str]] = dict(_PROVIDER_MODELS) curated["openrouter"] = [mid for mid, _ in OPENROUTER_MODELS] + # Plugin profiles without a static row: their fallback_models are the curated floor, so the + # non-blocking GUI read (cold catalog cache) lists them instead of an empty provider row. + from providers import list_providers + for _pp in list_providers(): + if _pp.fallback_models and not curated.get(_pp.name): + curated[_pp.name] = list(_pp.fallback_models) # Remote manifest so new Portal models surface without a release; in-repo snapshot fallback. curated["nous"] = get_curated_nous_model_ids() if "ollama-cloud" not in curated: