Releases: BlockRunAI/ClawRouter
Release list
v0.12.212 — Hide delisted/redirect aliases from /v1/models
Stop advertising delisted/redirect aliases in /v1/models (#187, thanks @KillerQueen-Z).
Model list no longer surfaces full-slug redirect aliases
MODEL_ALIASES mixes friendly short names (free, opus, gpt-120b) with full provider/model redirects for backward-compat + delisted models (e.g. free/deepseek-v4-pro → free/deepseek-v4-flash after V4 Pro's NVIDIA host hung 2026-04-30). ALIAS_MODELS turned every alias into a listable model, so dead slugs leaked into /v1/models (and any downstream picker) as if they were real, available models — a Codex picker built from /v1/models showed "DeepSeek V4 Pro (free)" that silently routes to v4-flash.
Fix: only surface friendly short aliases (no /). Full-slug redirect aliases are skipped from the advertised list — their target is a real model that's already listed, so nothing the user wants disappears. They remain fully callable via resolveModelAlias() (which reads MODEL_ALIASES directly), so pinned callers don't break. One-line filter in ALIAS_MODELS; MODEL_ALIASES and resolution logic are untouched.
- Picker + allowlist unaffected — every
top-models.jsonentry is a real catalog id, never an alias key, soVISIBLE_OPENCLAW_MODELS/ the OpenClaw/modelpicker / theopenclaw.jsonallowlist sync see no change. - 3 delisted redirects that are also real catalog ids (
openai/o1-mini,nvidia/kimi-k2.5,google/gemini-3-pro-preview) drop off the HTTP discovery surface too — intended: all three are dead redirects whose live successors stay listed, and all stay callable.
Maintenance
- Formatted
test/test-e2e.ts(a pre-existingprettier --checkfailure that was red-lining the Lint & Typecheck required check on every PR) and added.pytest_cache/to.gitignore.
npm: @blockrun/clawrouter@0.12.212 · Full changelog: https://github.com/BlockRunAI/ClawRouter/blob/main/CHANGELOG.md
v0.12.211 — Z.AI GLM-5.2 flagship added
Add Z.AI's new flagship GLM-5.2 (launched 2026-06-16), aligning with BlockRun's source-of-truth catalog (zai/glm-5.2, first in the GLM lineup).
GLM-5.2 added
zai/glm-5.2added to the catalog — 1M-token context (262K max output), paid per-token at $1.40/$4.40 (same rate as GLM-5.1, cached $0.26). Z.AI's newest flagship: beats GPT-5.5 on long-horizon coding at a fraction of the cost. Categories: chat, reasoning, coding.- Bare
glmalias retargeted GLM-5.1 → GLM-5.2 (bare alias always tracks the newest flagship). Newglm-5.2explicit shorthand added.glm-5.1explicit pin preserved as the 200K-context predecessor (identical price, so no cost-stability tradeoff — kept for behavioral parity). - Picker visibility — added to
top-models.json(head of the GLM group), so it surfaces in the OpenClaw/modelpicker and the allowlist sync on next provider refresh. README Mid-Range pricing table updated. - No router-tier changes: GLM models are accessed by alias/direct call, not wired into any auto/eco/premium tier chain — GLM-5.2 follows the same path. All 619 tests pass.
npm: @blockrun/clawrouter@0.12.211
v0.12.210 — Free-tier realign with BlockRun 06-14 refresh
Align the free tier with BlockRun's 2026-06-14 free-tier refresh (blockrun commit 5817ecd: self-healing health gate + probe-verified NVIDIA lineup). BlockRun found only 7 of 17 "available" free models were actually being served and replaced the stale manual redirect list with a per-model circuit breaker.
Free models realigned with the probe-verified lineup
free/qwen3-coder-480bretired — NVIDIA EOL'd it on 2026-06-14; BlockRun now redirectsqwen3-coder→seed-oss-36bserver-side. Dropped from the auto-pick cascade (FREE_MODELS), the picker (top-models.json), and the router COMPLEX backstops. The catalog entry + explicitnvidia/qwen3-coder-480balias stay for pinned callers (BlockRun still resolves them via redirect); the generic coding shorthands (qwen-coder,glm-free,devstral, …) now point at the live successorfree/seed-oss-36b.free/deepseek-v4-flashremoved from the eco SIMPLE fallback — NVIDIA upstream hung; BlockRun redirects it. Replaced with the livefree/qwen3-next-80b-a3b-instruct. Catalog entry kept (still direct-callable, redirects server-side).- 6 new live free models added to the catalog + aliases (probe-verified by BlockRun):
free/qwen3-next-80b-a3b-instruct(262K ctx, reasoning + coding),free/seed-oss-36b(coding),free/mistral-nemotron,free/step-3.7-flash(reasoning),free/nemotron-nano-9b-v2(fast lightweight),free/nemotron-nano-12b-v2-vl(vision-language). - Auto-pick cascade 7 → 12, gpt-oss kept at the head (heavy-user default — never retired). Picker free set 7 → 8 (
qwen3-coder-480b→qwen3-next-80b-a3b-instruct+seed-oss-36b). README/SKILL free-count synced 7 → 8; install-script/modelhelp echoes refreshed to live models.
Updater: clean stale OpenClaw install metadata (#186, thanks @0xCheetah1)
scripts/update.shnow removes ClawRouter's stale record from~/.openclaw/plugins/installs.jsonafter a verified update. OpenClaw 2026.6 migrates its plugin install index toward shared SQLite; a leftover ClawRouterinstallRecordsentry that no longer matches the installed version/path madeopenclaw doctorwarn about conflicting install metadata on every run. The updater now compares the legacy record against the current package across theextensions/, project-scoped, and global npm layouts, and removes only ClawRouter's record (other plugins untouched) when it is stale — guarded by a full try/catch and an atomic write.
npm: @blockrun/clawrouter@0.12.210
v0.12.209 — Catalog sweep: Fable 5 revert, Kimi K2.7, free tier
Registry realignment with the 2026-06-13 → 06-14 BlockRun catalog sweep: Fable 5 delisting reverted, Kimi K2.7 promoted, free tier strengthened. 619 tests passing.
Fable 5 delisting (revert of the 06-11 promotion)
anthropic/claude-fable-5DELISTED by Anthropic 2026-06-13 (offer withdrawn upstream — no longer served on direct Anthropic or Bedrock). BlockRun removed the catalog entry and redirects fable →opus-4.8(route.tsMODEL_REDIRECTS). v0.12.208's same-day promotion of Fable 5 to premium COMPLEX primary was therefore pointing default premium-tier complex traffic at a now-dead model. Reverted: catalog entry removed, allfable*aliases (fable,fable-5,fable-5.0,anthropic/fable,anthropic/claude-fable-5[.0]) now resolve toanthropic/claude-opus-4.8, and premium COMPLEX primary restored toopus-4.8(its first fallback before the promotion). Pinned callers silently land on opus-4.8, matching the gateway.
Kimi K2.7 (BlockRun commit cd3d79b, 2026-06-13)
moonshot/kimi-k2.7added — Moonshot's new flagship: 256K context, multi-modal (image + video input), returnsreasoning_content. AT-COST pricing $0.95/$4.00 — identical to K2.6 (BlockRun serves it via the OpenRouter credit pool failing over to direct Moonshot; zero margin by design). Bare aliases (kimi,moonshot,kimi-k2) retargeted K2.6 → K2.7; explicitkimi-k2.6/kimi-k2.5pins preserved. K2.6 marked superseded (hidden on BlockRun) but stays fully routable as an identical-cost first fallback.- Router primaries promoted K2.6 → K2.7 (same price, so cost-neutral):
auto.MEDIUM,agentic.MEDIUM,premium.SIMPLE. Each keeps K2.6 as its first fallback (in-family hot swap). K2.7 also prepended ahead of K2.6 in the premium MEDIUM/COMPLEX and agentic COMPLEX fallback chains. Picker (top-models.json) swapped K2.6 → K2.7.
Free tier strengthened (BlockRun 06-14 catalog sweep)
- Auto-pick set 6 → 7, gpt-oss kept at the head (heavy-user default, deliberately retained despite BlockRun hiding it). Mid/back strengthened with two BlockRun-re-featured free flagships:
free/mistral-large-3-675b(675B general, un-retired — NVIDIA upstream recovered) andfree/qwen3.5-122b-a10b(newest-gen Qwen).free/deepseek-v4-flashdropped from the auto-pick set + picker (BlockRun hid it) but stays catalog-routable for direct$0calls. New free shorthands:mistral-large,qwen3.5-122b. eco SIMPLE fallback chain extended with both new models. README/SKILL free-count synced (6 → 7).
npm: @blockrun/clawrouter@0.12.209
v0.12.208 — Fix non-ASCII reasoning header crashing paid responses
Stop non-English prompts from crashing paid responses via the x-clawrouter-reasoning header.
- Non-ASCII routing reasoning crashed
res.writeHeadafter settlement (src/proxy.ts). The routing reasoning string embeds matched keywords from the multilingual lists insrc/router/config.ts(Cyrillic, CJK, …). Debug headers are on by default, so for e.g. Russian prompts the raw Cyrillic keywords landed in thex-clawrouter-reasoningresponse header and Node rejected the write withERR_INVALID_CHAR— after the upstream call had completed and the x402 payment had settled. The client never received the body and retried, signing a fresh payment each round: a paid retry loop. Header values are now percent-encoded outside printable ASCII (sanitizeHeaderValue, reversible viadecodeURIComponent), and as defense in depth a rejectedwriteHeadsanitizes all header values and still delivers the paid body instead of throwing. (Test:proxy.reasoning-header.test.ts, 13 cases, including a live Russian-prompt repro throughclassifyByRulesvalidated against Node'svalidateHeaderValue.) CLAWROUTER_DEBUG_HEADERS=off|false|0— new env kill switch for thex-clawrouter-*debug headers, for clients that can't set the per-requestx-clawrouter-debug: falseheader. Comments claiming the headers were "opt-in" corrected (they are on by default).
npm: @blockrun/clawrouter@0.12.208
v0.12.207 — Honor HTTPS_PROXY/HTTP_PROXY/ALL_PROXY for upstream
Honor standard proxy environment variables for upstream traffic.
HTTPS_PROXY/HTTP_PROXY/ALL_PROXYfallback (src/upstream-proxy.ts). Node's fetch (undici) ignores the standard proxy env vars, so users whose system traffic is meant to flow through a local proxy (mihomo/clash without TUN mode, corporate proxies) had ClawRouter connecting directly while theircurltests went through the proxy — on throttled routes (e.g. RU → Google-hosted gateway) this surfaced as instant 500s on large request bodies,Premature close, and per-model timeouts, while small requests slipped through. WhenBLOCKRUN_UPSTREAM_PROXYis unset, ClawRouter now applies the standard env vars via undici'sEnvHttpProxyAgent.NO_PROXYis honored, and loopback hosts (localhost,127.0.0.1,::1) are always excluded so local health checks and sibling proxies stay direct.BLOCKRUN_UPSTREAM_PROXYstill wins when set; SOCKS URLs in the standard env vars are not auto-applied (a warning points toBLOCKRUN_UPSTREAM_PROXY=socks5://…). (Test:test/upstream-proxy.test.ts, 9 cases, dependency-injected — no process-global mutation in tests.)
npm: @blockrun/clawrouter@0.12.207
v0.12.159
- Market data tools — BlockRun gateway now exposes realtime and historical market data; ClawRouter wires them into OpenClaw as 6 first-class agent tools so the model stops scraping finance sites. Paid ($0.001 via x402, same wallet as LLM calls):
blockrun_stock_priceandblockrun_stock_historyacross 12 global equity markets (US, HK, JP, KR, UK, DE, FR, NL, IE, LU, CN, CA). Free (no x402 charge):blockrun_stock_list(ticker lookup / company-name search),blockrun_crypto_price(BTC-USD, ETH-USD, SOL-USD, …),blockrun_fx_price(EUR-USD, GBP-USD, JPY-USD, …),blockrun_commodity_price(XAU-USD gold, XAG-USD silver, XPT-USD platinum). Tool schemas advertise market codes, session hints (pre/post/on), and bar resolutions (1/5/15/60/240/D/W/M). Path routing extended: the partner-proxy whitelist insrc/proxy.tsnow matches/v1/(?:x|partner|pm|exa|modal|stocks|usstock|crypto|fx|commodity)/, routing all new paths throughproxyPaidApiRequest(payFetch handles 402 when present, passes through 200 for free categories). Tool definitions added insrc/partners/registry.ts;skills/clawrouter/SKILL.mdgains a "Built-in Agent Tools" section listing market data + X intelligence + Polymarket alongside the LLM router.
v0.12.158
- SKILL.md data-flow + key-storage transparency — second-pass fix for the OpenClaw scanner on clawhub.ai. v0.12.157 cleared the original scanner flags (opaque credentials, implied multi-provider keys, no install artifact). A deeper rescan surfaced three new nuanced flags: prompts go to blockrun.ai (data-privacy framing), wallet private-key storage location/encryption undocumented, and users may expect strictly-local routing. All three addressed: description reframed as "Hosted-gateway LLM router" with explicit Ollama pointer for local-only needs; new Data Flow section with ASCII diagram, enumerated sent/not-sent lists, link to https://blockrun.ai/privacy; new Credentials & Local Key Storage section documenting config file paths per OS, 0600 POSIX permissions, plaintext parity with other OpenClaw provider keys, encryption guidance (FileVault/LUKS/BitLocker or burner wallet), src/wallet.ts source pointer; new Supply-Chain Integrity section with npm pack verification and tagged-release invariant.
v0.12.157
- SKILL.md credential transparency — rewrote
skills/clawrouter/SKILL.mdto clear the OpenClaw scanner's medium-confidence suspicious verdict on clawhub.ai. Frontmatter now declaresrepository: https://github.com/BlockRunAI/ClawRouter,license: MIT, and a structuredmetadata.openclaw.installarray (kind: node,package: @blockrun/clawrouter,bins: [clawrouter]) so the registry entry has an auditable install artifact instead of a bare bash block. Body adds a Credentials & Data Handling section fully enumerating whatmodels.providers.blockrunstores (walletKey/solanaKey— auto-generated locally, never transmitted;gateway/routing— non-sensitive), and explicitly states the plugin does not collect or forward third-party provider API keys (OpenAI/Anthropic/Google/DeepSeek/xAI/NVIDIA) — the blockrun.ai gateway owns those relationships and routes on the server side. Addresses the three scanner flags (opaque credential declaration, implied multi-provider credential collection, no install artifact for review) raised against v0.12.156 on https://clawhub.ai/1bcmax/clawrouter.
v0.12.156
v0.12.156 — Apr 20, 2026
- Kimi K2.6 added — Moonshot's new flagship (
moonshot/kimi-k2.6, 256K context, vision + reasoning, $0.95 in / $4.00 out per 1M) registered inBLOCKRUN_MODELSwithkimi-k2.6alias. Added to the curated/modelpicker list (src/index.ts,scripts/update.sh,scripts/reinstall.sh), the README pricing table,docs/routing-profiles.md, and the AI-agent-facing model catalog inskills/clawrouter/SKILL.md. Premium routing tier (blockrun/premium) now uses K2.6 as the SIMPLE primary and as a fallback in MEDIUM/COMPLEX, withnvidia/kimi-k2.5retained as the first fallback for reliability. The generickimi/moonshotaliases still resolve tonvidia/kimi-k2.5(matches BlockRun server'sblockrun/kimistance); users opt in to K2.6 explicitly viakimi-k2.6orblockrun/premium. - GitHub restored as canonical source — BlockRunAI GitHub org is back.
package.jsonrepository.url, README badges, CONTRIBUTING clone URL,openclaw.security.json, all docs (anthropic-*,clawrouter-cuts-*,clawrouter-vs-openrouter,11-free-ai-models,llm-router-benchmark-*,smart-llm-router-14-dimension-classifier,subscription-failover,troubleshooting),skills/release/SKILL.md, and thesse-error-formatregression-test comment now point atgithub.com/BlockRunAI/ClawRouter. GitLab mirror (gitlab.com/blockrunai/ClawRouter) is kept as a secondary remote for redundancy but is no longer advertised. Metadata + docs only; no runtime/code changes.