From d0aecdf352b9507b34a69d8a2b5308fe8a1355e5 Mon Sep 17 00:00:00 2001 From: teknium1 <127238744+teknium1@users.noreply.github.com> Date: Wed, 16 Sep 2026 09:53:39 -0700 Subject: [PATCH] feat(models): add stealth/union-alpha to the OpenRouter free-tier catalog Union Alpha is OpenRouter's new $0 stealth model (262,144 ctx, tools + tool_choice supported, text+image in). It carries no ":free" suffix, so it needs an explicit "free, stealth model" description and an _OPENROUTER_ONLY entry to keep it out of the derived Nous Portal list, plus a "union-alpha" DEFAULT_CONTEXT_LENGTHS key so the offline resolver returns 262144 instead of the 256K catch-all. Docs manifest regenerated in the same commit. Live gate: max_tokens=64 tool-calling completion on origin/main key returned 200, echoed model stealth/union-alpha, usage.cost=0, finish_reason=tool_calls. --- agent/model_metadata.py | 5 +++-- hermes_cli/models_catalog_static.py | 7 +++++-- website/static/api/model-catalog.json | 6 +++++- 3 files changed, 13 insertions(+), 5 deletions(-) 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" } ] },