diff --git a/agent/model_metadata.py b/agent/model_metadata.py index 495e0b5384..086f17b3a0 100644 --- a/agent/model_metadata.py +++ b/agent/model_metadata.py @@ -380,9 +380,10 @@ DEFAULT_CONTEXT_LENGTHS = { "solar-open2": 262144, "solar-pro3": 131072, "solar-pro2": 65536, "solar-mini": 32768, # Tencent Hunyuan (262144 = 256 × 1024, aligned with OpenRouter live metadata) "hy4-preview": 1_048_576, "hy3-preview": 262144, "hy3": 262144, - # "Ox Alpha" stealth model (OpenCode Zen / OpenRouter slugs); NVIDIA Nemotron (128K + # "Ox Alpha" stealth model (OpenCode Zen / OpenRouter slugs); "Union Alpha" stealth model + # (OpenRouter ``stealth/union-alpha``, 262144 per /api/v1/models); NVIDIA Nemotron (128K # except 3.5 Lightning); Poolside Laguna 2.1 (:free / -free slugs); Arcee; OpenRouter. - "x-preview-f": 1_048_576, "ox-alpha": 1_048_576, + "x-preview-f": 1_048_576, "ox-alpha": 1_048_576, "union-alpha": 262144, "nemotron-3.5-lightning": 1_000_000, "nemotron": 131072, "laguna-s-2.1": 262144, "laguna-xs-2.1": 262144, "trinity": 262144, "elephant": 262144, # Hugging Face Inference Providers — model IDs use org/name format diff --git a/hermes_cli/models_catalog_static.py b/hermes_cli/models_catalog_static.py index 9a2c260c3d..3a01aef8a1 100644 --- a/hermes_cli/models_catalog_static.py +++ b/hermes_cli/models_catalog_static.py @@ -23,6 +23,7 @@ _OPENROUTER_DESCRIPTIONS = { "openai/gpt-6-astra-flex": "0.5x price, flex tier", "openai/gpt-6-astra-pro-fast": "2x price, priority tier", "openai/gpt-6-astra-pro-flex": "0.5x price, flex tier", + "stealth/union-alpha": "free, stealth model", } OPENROUTER_MODELS: list[tuple[str, str]] = [ (mid, _OPENROUTER_DESCRIPTIONS.get(mid, "free" if mid.endswith(":free") else "")) @@ -43,14 +44,16 @@ OPENROUTER_MODELS: list[tuple[str, str]] = [ "openrouter/pareto-code", "thinkingmachines/inkling:free", "thinkingmachines/inkling-small:free", "minimax/minimax-m3:free", "z-ai/glm-5.2:free", "poolside/laguna-s-2.1:free", "poolside/laguna-xs-2.1:free", "nvidia/nemotron-3-super-120b-a12b:free", "nvidia/nemotron-3-ultra-550b-a55b:free", - "nvidia/nemotron-3.5-lightning:free", + "nvidia/nemotron-3.5-lightning:free", "stealth/union-alpha", ) ] -# OpenRouter entries the Nous Portal does not carry (routing/fast variants, free tier). +# OpenRouter entries the Nous Portal does not carry (routing/fast variants, free tier — +# ``stealth/union-alpha`` is a $0 stealth SKU without the ``:free`` suffix). _OPENROUTER_ONLY = { "anthropic/claude-opus-5-fast", "anthropic/claude-opus-4.8-fast", "meta/muse-spark-1.2", "meta/muse-spark-1.2-contributor", "meta/muse-spark-1.3", "meta/muse-spark-1.3-contributor", "openrouter/pareto-code", + "stealth/union-alpha", } diff --git a/website/static/api/model-catalog.json b/website/static/api/model-catalog.json index 31fb4f5b5e..0b34de68c5 100644 --- a/website/static/api/model-catalog.json +++ b/website/static/api/model-catalog.json @@ -1,6 +1,6 @@ { "version": 1, - "updated_at": "2026-09-10T16:09:08Z", + "updated_at": "2026-09-16T16:50:25Z", "metadata": { "source": "hermes-agent repo", "docs": "https://hermes-agent.nousresearch.com/docs/reference/model-catalog" @@ -244,6 +244,10 @@ { "id": "nvidia/nemotron-3.5-lightning:free", "description": "free" + }, + { + "id": "stealth/union-alpha", + "description": "free, stealth model" } ] },