From c1f5f0f9115ef779bf08cd2de70326a5ce4877cf Mon Sep 17 00:00:00 2001 From: liuhao1024 Date: Sun, 5 Jul 2026 17:49:04 +0800 Subject: [PATCH] fix(doctor): recognise 'moa' as a valid internal provider MoA (Mixture of Agents) is a legitimate internal provider used by Diagnosis presets and multi-model aggregation. When a MoA preset sets model.provider to 'moa', hermes doctor incorrectly reports it as 'unrecognised' and suggests changing it, which would break the MoA setup. Add 'moa' to the known_providers set alongside 'openrouter', 'custom', and 'auto' so doctor recognises it as valid. Fixes #58759 --- hermes_cli/doctor.py | 2 +- tests/hermes_cli/test_doctor.py | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/hermes_cli/doctor.py b/hermes_cli/doctor.py index e995178d119a..7d585176efd4 100644 --- a/hermes_cli/doctor.py +++ b/hermes_cli/doctor.py @@ -872,7 +872,7 @@ def run_doctor(args): PROVIDER_REGISTRY, resolve_provider as _resolve_auth_provider, ) - known_providers = set(PROVIDER_REGISTRY.keys()) | {"openrouter", "custom", "auto"} + known_providers = set(PROVIDER_REGISTRY.keys()) | {"openrouter", "custom", "auto", "moa"} except Exception: _resolve_auth_provider = None pass diff --git a/tests/hermes_cli/test_doctor.py b/tests/hermes_cli/test_doctor.py index 8e7575b86b2e..2fa798a08159 100644 --- a/tests/hermes_cli/test_doctor.py +++ b/tests/hermes_cli/test_doctor.py @@ -517,6 +517,7 @@ def test_run_doctor_flags_missing_credentials_for_active_openrouter_provider(mon ("kilocode", "anthropic/claude-sonnet-4.6"), ("kimi-coding", "kimi-k2"), ("nvidia", "qwen/qwen3.5-122b-a10b"), + ("moa", "anthropic/claude-sonnet-4.6"), ], ) def test_run_doctor_accepts_hermes_provider_ids_that_catalog_aliases(