From cfdf4abf8269569a1cf84e3ac2f42d30d12783f1 Mon Sep 17 00:00:00 2001 From: safwan Date: Tue, 21 Jul 2026 01:20:43 +0400 Subject: [PATCH 1/4] =?UTF-8?q?chore(install):=20refresh=20seeded=20AI=20m?= =?UTF-8?q?odel=20catalog=20=E2=80=94=20drop=20deprecated,=20add=20current?= =?UTF-8?q?=20models?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Google: drop gemini-2.0-flash-001 / gemini-2.0-flash-lite-preview (shut down 2026-06-01); add gemini-3.5-flash, gemini-3.1-pro-preview, gemini-3.1-flash-lite, gemini-3-flash-preview, gemini-3.1-flash-image, gemini-embedding-001/2. Anthropic: drop claude-2 and claude-opus-4.1 (deprecated); add claude-fable-5, claude-opus-4.8, claude-sonnet-5. OpenAI: drop gpt-3.5-turbo, gpt-4-turbo, gpt-4o, gpt-4.1-nano, o1-preview, o1-mini, dall-e-3, gpt-image-1 (all deprecated); add gpt-5.6-sol/terra/luna, gpt-5.5, gpt-5.4(-mini/-nano), gpt-5.2, gpt-image-2. OpenRouter: drop google/gemini-2.0-flash-exp:free. --- huf/install.py | 32 +++++++++++++++++++------------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/huf/install.py b/huf/install.py index d25021bb..e59d40e4 100644 --- a/huf/install.py +++ b/huf/install.py @@ -209,25 +209,31 @@ def create_demo_ai_models(): {"doctype": "AI Model", "model_name": "sonar-reasoning", "provider": "Perplexity"}, {"doctype": "AI Model", "model_name": "sonar-reasoning-pro", "provider": "Perplexity"}, {"doctype": "AI Model", "model_name": "sonar-deep-research", "provider": "Perplexity"}, + {"doctype": "AI Model", "model_name": "gemini-3.5-flash", "provider": "Google"}, + {"doctype": "AI Model", "model_name": "gemini-3.1-pro-preview", "provider": "Google"}, + {"doctype": "AI Model", "model_name": "gemini-3.1-flash-lite", "provider": "Google"}, {"doctype": "AI Model", "model_name": "gemini-3-pro-preview", "provider": "Google"}, + {"doctype": "AI Model", "model_name": "gemini-3-flash-preview", "provider": "Google"}, {"doctype": "AI Model", "model_name": "gemini-2.5-pro", "provider": "Google"}, {"doctype": "AI Model", "model_name": "gemini-2.5-flash", "provider": "Google"}, {"doctype": "AI Model", "model_name": "gemini-2.5-flash-lite", "provider": "Google"}, {"doctype": "AI Model", "model_name": "gemma-3-27b-it", "provider": "Google"}, {"doctype": "AI Model", "model_name": "gemma-3-9b-it", "provider": "Google"}, {"doctype": "AI Model", "model_name": "nano-banana-pro", "provider": "Google"}, + {"doctype": "AI Model", "model_name": "gemini-3.1-flash-image", "provider": "Google"}, {"doctype": "AI Model", "model_name": "text-embedding-004", "provider": "Google"}, - {"doctype": "AI Model", "model_name": "gemini-2.0-flash-001", "provider": "Google"}, - {"doctype": "AI Model", "model_name": "gemini-2.0-flash-lite-preview", "provider": "Google"}, + {"doctype": "AI Model", "model_name": "gemini-embedding-001", "provider": "Google"}, + {"doctype": "AI Model", "model_name": "gemini-embedding-2", "provider": "Google"}, + {"doctype": "AI Model", "model_name": "claude-fable-5", "provider": "Anthropic"}, + {"doctype": "AI Model", "model_name": "claude-opus-4.8", "provider": "Anthropic"}, + {"doctype": "AI Model", "model_name": "claude-sonnet-5", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "claude-sonnet-4.5", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "claude-opus-4", "provider": "Anthropic"}, - {"doctype": "AI Model", "model_name": "claude-opus-4.1", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "claude-haiku-4.5", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "claude-3.7-sonnet", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "claude-3.5-sonnet", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "claude-3.5-haiku", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "claude-opus-4.5", "provider": "Anthropic"}, - {"doctype": "AI Model", "model_name": "claude-2", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "claude-sonnet-4-20250514", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "openai/gpt-5", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "openai/gpt-5-mini", "provider": "OpenRouter"}, @@ -237,7 +243,6 @@ def create_demo_ai_models(): {"doctype": "AI Model", "model_name": "openai/gpt-4o-mini", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "google/gemini-2.5-flash", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "google/gemini-2.5-flash-lite-preview-06-17", "provider": "OpenRouter"}, - {"doctype": "AI Model", "model_name": "google/gemini-2.0-flash-exp:free", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "google/gemma-3-27b-it:free", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "anthropic/claude-4.5-sonnet-20250929", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "deepseek/deepseek-chat-v3-0324", "provider": "OpenRouter"}, @@ -245,22 +250,23 @@ def create_demo_ai_models(): {"doctype": "AI Model", "model_name": "qwen/qwen3-vl-235b-a22b-instruct", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "qwen/qwen3-coder:free", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "minimax/minimax-m2", "provider": "OpenRouter"}, - {"doctype": "AI Model", "model_name": "o1-preview", "provider": "OpenAI"}, - {"doctype": "AI Model", "model_name": "o1-mini", "provider": "OpenAI"}, + {"doctype": "AI Model", "model_name": "gpt-5.6-sol", "provider": "OpenAI"}, + {"doctype": "AI Model", "model_name": "gpt-5.6-terra", "provider": "OpenAI"}, + {"doctype": "AI Model", "model_name": "gpt-5.6-luna", "provider": "OpenAI"}, + {"doctype": "AI Model", "model_name": "gpt-5.5", "provider": "OpenAI"}, + {"doctype": "AI Model", "model_name": "gpt-5.4", "provider": "OpenAI"}, + {"doctype": "AI Model", "model_name": "gpt-5.4-mini", "provider": "OpenAI"}, + {"doctype": "AI Model", "model_name": "gpt-5.4-nano", "provider": "OpenAI"}, + {"doctype": "AI Model", "model_name": "gpt-5.2", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "whisper-1", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "text-embedding-3-small", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "text-embedding-3-large", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "text-embedding-ada-002", "provider": "OpenAI"}, - {"doctype": "AI Model", "model_name": "gpt-image-1", "provider": "OpenAI"}, + {"doctype": "AI Model", "model_name": "gpt-image-2", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "Alternate", "provider": "OpenAI"}, - {"doctype": "AI Model", "model_name": "dall-e-3", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-4.1", "provider": "OpenAI"}, - {"doctype": "AI Model", "model_name": "gpt-3.5-turbo", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-4.1-mini", "provider": "OpenAI"}, - {"doctype": "AI Model", "model_name": "gpt-4.1-nano", "provider": "OpenAI"}, - {"doctype": "AI Model", "model_name": "gpt-4o", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-4o-mini", "provider": "OpenAI"}, - {"doctype": "AI Model", "model_name": "gpt-4-turbo", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-5.1", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-5-mini", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-5-nano", "provider": "OpenAI"}, From b93e7c46e2f58a6cc0495405ed0982b515e93104 Mon Sep 17 00:00:00 2001 From: safwan Date: Tue, 21 Jul 2026 01:48:29 +0400 Subject: [PATCH 2/4] chore(install): also prune legacy-but-not-deprecated seeded models Anthropic: drop claude-sonnet-4.5, claude-opus-4, claude-opus-4.5, claude-3.7-sonnet, claude-3.5-sonnet, claude-3.5-haiku, claude-sonnet-4-20250514 (all legacy generations; current set is fable-5 / opus-4.8 / sonnet-5 / haiku-4.5). Google: drop gemini-3-pro-preview (superseded by gemini-3.1-pro-preview). OpenAI: drop gpt-4.1, gpt-4.1-mini. OpenRouter: drop openai/gpt-4.1-mini, openai/gpt-4.1-nano, anthropic/claude-4.5-sonnet-20250929. --- huf/install.py | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/huf/install.py b/huf/install.py index e59d40e4..73d26d0e 100644 --- a/huf/install.py +++ b/huf/install.py @@ -212,7 +212,6 @@ def create_demo_ai_models(): {"doctype": "AI Model", "model_name": "gemini-3.5-flash", "provider": "Google"}, {"doctype": "AI Model", "model_name": "gemini-3.1-pro-preview", "provider": "Google"}, {"doctype": "AI Model", "model_name": "gemini-3.1-flash-lite", "provider": "Google"}, - {"doctype": "AI Model", "model_name": "gemini-3-pro-preview", "provider": "Google"}, {"doctype": "AI Model", "model_name": "gemini-3-flash-preview", "provider": "Google"}, {"doctype": "AI Model", "model_name": "gemini-2.5-pro", "provider": "Google"}, {"doctype": "AI Model", "model_name": "gemini-2.5-flash", "provider": "Google"}, @@ -227,24 +226,14 @@ def create_demo_ai_models(): {"doctype": "AI Model", "model_name": "claude-fable-5", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "claude-opus-4.8", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "claude-sonnet-5", "provider": "Anthropic"}, - {"doctype": "AI Model", "model_name": "claude-sonnet-4.5", "provider": "Anthropic"}, - {"doctype": "AI Model", "model_name": "claude-opus-4", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "claude-haiku-4.5", "provider": "Anthropic"}, - {"doctype": "AI Model", "model_name": "claude-3.7-sonnet", "provider": "Anthropic"}, - {"doctype": "AI Model", "model_name": "claude-3.5-sonnet", "provider": "Anthropic"}, - {"doctype": "AI Model", "model_name": "claude-3.5-haiku", "provider": "Anthropic"}, - {"doctype": "AI Model", "model_name": "claude-opus-4.5", "provider": "Anthropic"}, - {"doctype": "AI Model", "model_name": "claude-sonnet-4-20250514", "provider": "Anthropic"}, {"doctype": "AI Model", "model_name": "openai/gpt-5", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "openai/gpt-5-mini", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "openai/gpt-5-nano", "provider": "OpenRouter"}, - {"doctype": "AI Model", "model_name": "openai/gpt-4.1-mini", "provider": "OpenRouter"}, - {"doctype": "AI Model", "model_name": "openai/gpt-4.1-nano", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "openai/gpt-4o-mini", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "google/gemini-2.5-flash", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "google/gemini-2.5-flash-lite-preview-06-17", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "google/gemma-3-27b-it:free", "provider": "OpenRouter"}, - {"doctype": "AI Model", "model_name": "anthropic/claude-4.5-sonnet-20250929", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "deepseek/deepseek-chat-v3-0324", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "deepseek/deepseek-chat-v3.1", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "qwen/qwen3-vl-235b-a22b-instruct", "provider": "OpenRouter"}, @@ -264,8 +253,6 @@ def create_demo_ai_models(): {"doctype": "AI Model", "model_name": "text-embedding-ada-002", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-image-2", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "Alternate", "provider": "OpenAI"}, - {"doctype": "AI Model", "model_name": "gpt-4.1", "provider": "OpenAI"}, - {"doctype": "AI Model", "model_name": "gpt-4.1-mini", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-4o-mini", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-5.1", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-5-mini", "provider": "OpenAI"}, From 5e31dd5d3056b5b68c3f4015c85e005d9ea2dc9c Mon Sep 17 00:00:00 2001 From: safwan Date: Tue, 21 Jul 2026 01:52:05 +0400 Subject: [PATCH 3/4] chore(install): expand OpenRouter seed with current open-weight flagships deepseek-v4-pro/flash, z-ai/glm-5.2, moonshotai/kimi-k3 + kimi-k2.7, minimax-m3 + m2.7, microsoft/phi-4, google/gemma-4-31b-it, qwen3.7-max + qwen3.6-plus (kept deepseek-chat-v3.x, qwen3-vl/coder, minimax-m2). --- huf/install.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/huf/install.py b/huf/install.py index 73d26d0e..d8fafae2 100644 --- a/huf/install.py +++ b/huf/install.py @@ -234,11 +234,22 @@ def create_demo_ai_models(): {"doctype": "AI Model", "model_name": "google/gemini-2.5-flash", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "google/gemini-2.5-flash-lite-preview-06-17", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "google/gemma-3-27b-it:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "deepseek/deepseek-v4-pro", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "deepseek/deepseek-v4-flash", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "deepseek/deepseek-chat-v3-0324", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "deepseek/deepseek-chat-v3.1", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "z-ai/glm-5.2", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "moonshotai/kimi-k3", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "moonshotai/kimi-k2.7", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "minimax/minimax-m3", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "minimax/minimax-m2.7", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "minimax/minimax-m2", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "microsoft/phi-4", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "google/gemma-4-31b-it", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "qwen/qwen3.7-max", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "qwen/qwen3.6-plus", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "qwen/qwen3-vl-235b-a22b-instruct", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "qwen/qwen3-coder:free", "provider": "OpenRouter"}, - {"doctype": "AI Model", "model_name": "minimax/minimax-m2", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "gpt-5.6-sol", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-5.6-terra", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-5.6-luna", "provider": "OpenAI"}, From 6831b7b520200e3c748023f597fb1cc553946d9e Mon Sep 17 00:00:00 2001 From: safwan Date: Tue, 21 Jul 2026 01:55:27 +0400 Subject: [PATCH 4/4] chore(install): seed all current OpenRouter :free variants; fix stale free ids MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Verified against the live OpenRouter /api/v1/models catalog (2026-07-20): - Added all 14 current ':free' models (gemma-4 x2, gpt-oss-20b, nemotron x7, cohere north-mini-code, poolside laguna x2, tencent hy3). - Removed stale ids that no longer exist: qwen/qwen3-coder:free → qwen/qwen3-coder, google/gemma-3-27b-it:free → google/gemma-3-27b-it. The ':free' suffix stays inside model_name — it is both the free label and the exact id litellm needs, so huf calls keep working unchanged. --- huf/install.py | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/huf/install.py b/huf/install.py index d8fafae2..ad4bc824 100644 --- a/huf/install.py +++ b/huf/install.py @@ -233,7 +233,7 @@ def create_demo_ai_models(): {"doctype": "AI Model", "model_name": "openai/gpt-4o-mini", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "google/gemini-2.5-flash", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "google/gemini-2.5-flash-lite-preview-06-17", "provider": "OpenRouter"}, - {"doctype": "AI Model", "model_name": "google/gemma-3-27b-it:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "google/gemma-3-27b-it", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "deepseek/deepseek-v4-pro", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "deepseek/deepseek-v4-flash", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "deepseek/deepseek-chat-v3-0324", "provider": "OpenRouter"}, @@ -249,7 +249,23 @@ def create_demo_ai_models(): {"doctype": "AI Model", "model_name": "qwen/qwen3.7-max", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "qwen/qwen3.6-plus", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "qwen/qwen3-vl-235b-a22b-instruct", "provider": "OpenRouter"}, - {"doctype": "AI Model", "model_name": "qwen/qwen3-coder:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "qwen/qwen3-coder", "provider": "OpenRouter"}, + # OpenRouter free-tier variants (verified live 2026-07; model_name keeps the + # exact ":free" id — that suffix IS the free label and the working route) + {"doctype": "AI Model", "model_name": "google/gemma-4-31b-it:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "google/gemma-4-26b-a4b-it:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "openai/gpt-oss-20b:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "nvidia/nemotron-3-super-120b-a12b:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "nvidia/nemotron-3-ultra-550b-a55b:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "nvidia/nemotron-3-nano-30b-a3b:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "nvidia/nemotron-nano-12b-v2-vl:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "nvidia/nemotron-nano-9b-v2:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "nvidia/nemotron-3.5-content-safety:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "cohere/north-mini-code:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "poolside/laguna-m.1:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "poolside/laguna-xs-2.1:free", "provider": "OpenRouter"}, + {"doctype": "AI Model", "model_name": "tencent/hy3:free", "provider": "OpenRouter"}, {"doctype": "AI Model", "model_name": "gpt-5.6-sol", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-5.6-terra", "provider": "OpenAI"}, {"doctype": "AI Model", "model_name": "gpt-5.6-luna", "provider": "OpenAI"},