Skip to content

Releases: BlockRunAI/ClawRouter

v0.12.161

22 Apr 04:11
9e27b00

Choose a tag to compare

  • De-Gemini the Anthropic-primary fallback chains. When Anthropic hiccups (503s, capacity), Gemini's own "high demand" 503s correlate with the same events — agents fall back from Claude to Gemini together, both overloaded. Reordered src/router/config.ts fallback arrays in the two places Anthropic sits primary: premiumTiers.COMPLEX (claude-opus-4.7 primary) and agenticTiers.COMPLEX (claude-sonnet-4.6 primary). New order: in-family Anthropic hot swap (opus-4.6 / sonnet-4.6) → xAI Grok (independent infra, strong on complex + tool use) → Moonshot Kimi K2.6 / K2.5 (separate Moonshot infra) → OpenAI flagship (slow but reliable) → DeepSeek (cheap reliable) → free/qwen3-coder-480b (NVIDIA free ultimate backstop). Gemini removed entirely from both chains. Other Anthropic-primary tiers (premiumTiers.REASONING, agenticTiers.REASONING) already had no Gemini and were not touched.

v0.12.160

22 Apr 03:36
68f6982

Choose a tag to compare

  • Free-tier catalog realigned with BlockRun server (13 → 8 NVIDIA free models). BlockRun retired five NVIDIA free models on 2026-04-21 (nemotron-ultra-253b, nemotron-3-super-120b, nemotron-super-49b, mistral-large-3-675b, devstral-2-123b) and introduced two new ones benchmark-validated at 114–116 tok/s (qwen3-next-80b-a3b-thinking — fastest free reasoning; mistral-small-4-119b — fastest free chat). ClawRouter now exposes the same 8 visible free models: gpt-oss-120b, gpt-oss-20b, deepseek-v3.2, qwen3-coder-480b, glm-4.7, llama-4-maverick, qwen3-next-80b-a3b-thinking, mistral-small-4-119b. Retired IDs still resolve locally via MODEL_ALIASES redirects to successors (free/nemotron-*free/qwen3-next-80b-a3b-thinking, free/mistral-large-3-675bfree/mistral-small-4-119b, free/devstral-2-123bfree/qwen3-coder-480b), matching server-side behavior so stale user configs keep working. Touched: BLOCKRUN_MODELS + MODEL_ALIASES in src/models.ts, FREE_MODELS set in src/proxy.ts, free-model list in src/index.ts picker, MODEL_PRICING fixture in src/router/strategy.test.ts, scripts/update.sh + scripts/reinstall.sh TOP_MODELS + slash-command help, README Budget Models pricing table + Free tier note, skills/clawrouter/SKILL.md description + Available Models section.
  • Kimi K2.5 routing inverted: Moonshot direct is now primary. NVIDIA-hosted nvidia/kimi-k2.5 was retired 2026-04-21 (slow throughput) and redirects server-side to moonshot/kimi-k2.5. ClawRouter mirrors this: moonshot/kimi-k2.5 is the primary entry (no deprecation flag, full 16K output), nvidia/kimi-k2.5 retained but marked deprecated: true with fallbackModel: "moonshot/kimi-k2.5". Aliases kimi / moonshot / kimi-k2.5 / nvidia/kimi-k2.5 all resolve to moonshot/kimi-k2.5. Router tier configs in src/router/config.ts (auto + premium + agentic profiles, 7 occurrences) updated to point at the Moonshot variant.

v0.12.159

21 Apr 17:17
c24d03a

Choose a tag to compare

  • 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_price and blockrun_stock_history across 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 in src/proxy.ts now matches /v1/(?:x|partner|pm|exa|modal|stocks|usstock|crypto|fx|commodity)/, routing all new paths through proxyPaidApiRequest (payFetch handles 402 when present, passes through 200 for free categories). Tool definitions added in src/partners/registry.ts; skills/clawrouter/SKILL.md gains a "Built-in Agent Tools" section listing market data + X intelligence + Polymarket alongside the LLM router.

v0.12.158

20 Apr 22:09
9803d5b

Choose a tag to compare

  • 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

20 Apr 21:43
aca5095

Choose a tag to compare

  • SKILL.md credential transparency — rewrote skills/clawrouter/SKILL.md to clear the OpenClaw scanner's medium-confidence suspicious verdict on clawhub.ai. Frontmatter now declares repository: https://github.com/BlockRunAI/ClawRouter, license: MIT, and a structured metadata.openclaw.install array (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 what models.providers.blockrun stores (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

20 Apr 20:35
5c63fb2

Choose a tag to compare

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 in BLOCKRUN_MODELS with kimi-k2.6 alias. Added to the curated /model picker 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 in skills/clawrouter/SKILL.md. Premium routing tier (blockrun/premium) now uses K2.6 as the SIMPLE primary and as a fallback in MEDIUM/COMPLEX, with nvidia/kimi-k2.5 retained as the first fallback for reliability. The generic kimi/moonshot aliases still resolve to nvidia/kimi-k2.5 (matches BlockRun server's blockrun/kimi stance); users opt in to K2.6 explicitly via kimi-k2.6 or blockrun/premium.
  • GitHub restored as canonical source — BlockRunAI GitHub org is back. package.json repository.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 the sse-error-format regression-test comment now point at github.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.

v0.12.149

13 Apr 18:57
930954e

Choose a tag to compare

Bug Fix

  • Suppress remaining duplicate startup logs — The v0.12.147 fix only guarded provider registration logs. This release extends the guard to cover all repeated diagnostic messages on multi-call register():
    • "Proxy already started by earlier register() call — skipping" (main offender, fired on every call after proxy start)
    • "pluginConfig empty — deferring proxy startup 250ms..."
    • Non-gateway wallet source logs + "Not in gateway mode"

Improvements

  • Explicit-pin models skip free-model fallback — When a user explicitly picks a model, ClawRouter no longer silently appends a free model as last-resort fallback
  • Retry explicit-pin on transient 5xx — Single-model requests now retry once with short backoff on upstream server errors instead of immediately failing

Install: npm i -g @blockrun/clawrouter@latest

v0.12.148

12 Apr 21:43
1bf47a4

Choose a tag to compare

Bug Fixes

Suppress duplicate registration log spam. OpenClaw calls `register()` 4+ times per gateway startup. Each call re-registers providers, commands, and tools (idempotent — last loaded plugin wins) but previously also logged 6 info lines per call, producing 24+ identical lines on every startup.

Now only the first `register()` call emits verbose info logs. Subsequent calls silently re-register without logging.

Before:
```
Commands registered: /wallet, /blockrun, /stats, /exclude
Proxy already started by earlier register() call — skipping
BlockRun provider registered (55+ models via x402)
Registered BlockRun web_search provider (blockrun-exa)
Configured BlockRun MCP server (blockrun) via npx @blockrun/mcp@latest
Registered 9 partner tool(s): blockrun_x_users_lookup, ...
(× 4 times)
```

After:
```
Commands registered: /wallet, /blockrun, /stats, /exclude
BlockRun provider registered (55+ models via x402)
Registered BlockRun web_search provider (blockrun-exa)
Configured BlockRun MCP server (blockrun) via npx @blockrun/mcp@latest
Registered 9 partner tool(s): blockrun_x_users_lookup, ...
(× 1 time)
```

Reported by Cheetah.

v0.12.146

10 Apr 16:32
4aed80d

Choose a tag to compare

New Feature

Every routed response now carries a `usage.cost` breakdown.

Users on `blockrun/auto` previously had no visible signal of which model actually answered or how much each call cost. Now every response includes:

```json
{
"model": "google/gemini-2.5-flash",
"usage": {
"prompt_tokens": 120,
"completion_tokens": 80,
"total_tokens": 200,
"cost": {
"total": 0.00023,
"input": 0.000018,
"output": 0.000048,
"baseline": 0.00618,
"savings_pct": 96,
"model": "google/gemini-2.5-flash",
"tier": "SIMPLE"
}
}
}
```

What OpenClaw users see (no OpenClaw changes required)

  • `/usage full` footer now shows session cost totals that increase as you chat
  • `/stats`-style reports aggregate cost per model and per day
  • Works automatically — OpenClaw's `session-cost-usage` module already parses the standard `usage.cost.{total,input,output}` fields

Extra metadata (forward-compat)

`baseline`, `savings_pct`, `model`, and `tier` are non-standard fields that current OpenClaw ignores. Future OpenClaw UI work can render them as an inline per-message badge (e.g. `via free/glm-4.7 · $0.0023 · saved 96%`) without any ClawRouter changes.

No context pollution

`usage` is OpenAI metadata — LLMs never see it when the conversation history is replayed. Safe to emit on every turn.

Technical details

  • Uses ACTUAL upstream token counts (not pre-request estimates) via `calculateModelCost()`
  • Server margin and MIN_PAYMENT_USD floor are applied consistently to both `total` and `baseline`
  • Streaming responses emit a final OpenAI `include_usage`-format chunk before `[DONE]`
  • Non-streaming responses always overwrite the top-level `model` field (some upstreams omit it)
  • 9 new unit tests in `src/proxy.cost.test.ts`

Reported by

This feature was driven by user feedback that "auto" didn't feel transparent — users couldn't tell if it was actually saving money or just a black box.

v0.12.145

10 Apr 12:18
17f3a09

Choose a tag to compare

Improvements

  • eco/premium null fallback (router/strategy.ts): when `ecoTiers` or `premiumTiers` is set to `null`, fall back to regular `tiers` instead of dropping into auto routing. Preserves the eco/premium profile semantics even when the special tier set is disabled.
  • provider.ts: `setActiveProxy` now accepts `null` (used by the deactivate path).
  • debug-command test: 2s client-side timeout so the test no longer hangs on slow upstream.
  • CI green: prettier formatting cleanup in `src/index.ts` and `src/index.lifecycle.test.ts`.