@blockrun/clawrouter 0.12.227 → 0.12.228

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -382,16 +382,16 @@ No Surf account, no API key — settles directly to Surf's Base treasury in USDC
382
382
 
383
383
  ## Models & Pricing
384
384
 
385
- 55+ models across 9 providers, one wallet. **Starting at $0.0002/request.**
385
+ 55+ models across 9 providers, one wallet. **8 models are $0 — paid models start at fractions of a cent.**
386
386
 
387
- > **💡 "Cost per request"** = estimated cost for a typical chat message (~500 input + 500 output tokens).
387
+ > **💡 "Cost per request"** = estimated cost for a typical chat message (~500 input + 500 output tokens). Paid requests also carry a flat **$0.002/tx settlement fee** (covers on-chain gas; already included in the price the gateway quotes). Free models never pay it.
388
388
 
389
389
  ### Budget Models (under $0.001/request)
390
390
 
391
391
  | Model | Input $/M | Output $/M | ~$/request | Context | Features |
392
392
  | --------------------------------------------- | --------: | ---------: | ---------: | ------- | -------------------------------------------- |
393
393
  | free/mistral-large-3-675b | **FREE** | **FREE** | **$0** | 131K | 675B general flagship, default free model |
394
- | free/qwen3-next-80b-a3b-instruct | **FREE** | **FREE** | **$0** | 262K | reasoning + coding |
394
+ | free/deepseek-v4-flash | **FREE** | **FREE** | **$0** | 1M | reasoning + coding, huge context |
395
395
  | free/seed-oss-36b | **FREE** | **FREE** | **$0** | 131K | coding |
396
396
  | free/nemotron-3-nano-omni-30b-a3b-reasoning | **FREE** | **FREE** | **$0** | 256K | reasoning, **vision** (text+img+video+audio) |
397
397
  | free/mistral-nemotron | **FREE** | **FREE** | **$0** | 131K | instruction following |
@@ -461,7 +461,7 @@ No Surf account, no API key — settles directly to Surf's Base treasury in USDC
461
461
  | openai/gpt-5.2-pro | $21.00 | $168.00 | $0.0945 | 400K | reasoning, tools |
462
462
  | openai/gpt-5.4-pro | $30.00 | $180.00 | $0.1050 | 400K | reasoning, tools |
463
463
 
464
- > **Free tier:** several NVIDIA-hosted models cost nothing — `/model free` smart-routes across them, or pick one directly (e.g., `/model nemotron-omni` for vision, `/model qwen3-next` for 262K reasoning, `/model seed-oss` for coding, `/model mistral-large` for the 675B flagship).
464
+ > **Free tier:** several NVIDIA-hosted models cost nothing — `/model free` smart-routes across them, or pick one directly (e.g., `/model nemotron-omni` for vision, `/model v4-flash` for 1M-context reasoning, `/model seed-oss` for coding, `/model mistral-large` for the 675B flagship).
465
465
  > **Best value:** `gpt-5-nano` and `gemini-2.5-flash-lite` deliver strong results at ~$0.0003/request.
466
466
 
467
467
  ---
@@ -720,7 +720,7 @@ ClawRouter works with any tool that makes OpenAI-compatible API calls — point
720
720
 
721
721
  ### Is ClawRouter free?
722
722
 
723
- ClawRouter itself is free and MIT licensed. You pay only for the LLM API calls routed through it — and several NVIDIA-hosted models (`mistral-large-3-675b`, `qwen3-next-80b-a3b-instruct`, `seed-oss-36b`, `nemotron-3-nano-omni-30b-a3b-reasoning`, `mistral-nemotron`, `step-3.7-flash`, `nemotron-nano-9b-v2`, `nemotron-nano-12b-v2-vl`) are completely free. Use `/model free` to smart-route across them, or pick any by name.
723
+ ClawRouter itself is free and MIT licensed. You pay only for the LLM API calls routed through it — and several NVIDIA-hosted models (`mistral-large-3-675b`, `deepseek-v4-flash`, `seed-oss-36b`, `nemotron-3-nano-omni-30b-a3b-reasoning`, `mistral-nemotron`, `step-3.7-flash`, `nemotron-nano-9b-v2`, `nemotron-nano-12b-v2-vl`) are completely free. Use `/model free` to smart-route across them, or pick any by name.
724
724
 
725
725
  ---
726
726
 
package/dist/cli.js CHANGED
@@ -33992,10 +33992,10 @@ var init_config = __esm({
33992
33992
  // FREE — smaller, faster
33993
33993
  "free/mistral-large-3-675b",
33994
33994
  // FREE — 675B general flagship (re-featured 2026-06-14)
33995
- "free/qwen3.5-122b-a10b",
33996
- // FREE — newest-gen Qwen, strong general
33997
- "free/qwen3-next-80b-a3b-instruct",
33998
- // FREE — 262K ctx, strong general (deepseek-v4-flash retired)
33995
+ "free/deepseek-v4-flash",
33996
+ // FREE — 1M ctx, recovered in blockrun's 2026-07-17 re-probe
33997
+ "free/seed-oss-36b",
33998
+ // FREE — live coder (qwen3.5-122b + qwen3-next died 2026-07)
33999
33999
  "google/gemini-3.1-flash-lite",
34000
34000
  // $0.25/$1.50 — newest flash-lite
34001
34001
  "openai/gpt-5.4-nano",
@@ -34300,7 +34300,7 @@ var init_top_models = __esm({
34300
34300
  "deepseek/deepseek-chat",
34301
34301
  "deepseek/deepseek-reasoner",
34302
34302
  "free/mistral-large-3-675b",
34303
- "free/qwen3-next-80b-a3b-instruct",
34303
+ "free/deepseek-v4-flash",
34304
34304
  "free/seed-oss-36b",
34305
34305
  "free/nemotron-3-nano-omni-30b-a3b-reasoning",
34306
34306
  "free/mistral-nemotron",
@@ -34570,14 +34570,12 @@ var init_models = __esm({
34570
34570
  "gpt-20b": "free/gpt-oss-20b",
34571
34571
  "nvidia/gpt-oss-120b": "free/gpt-oss-120b",
34572
34572
  "nvidia/gpt-oss-20b": "free/gpt-oss-20b",
34573
+ // deepseek family → v4-flash, matching blockrun's 2026-07-17 redirect map
34574
+ // (v4-flash recovered in the live re-probe; v3.2/v4-pro stay dead upstream).
34573
34575
  "nvidia/deepseek-v3.2": "free/deepseek-v4-flash",
34574
- // v3.2 → v4-flash (v4-pro NVIDIA hung 2026-04-30)
34575
34576
  "free/deepseek-v3.2": "free/deepseek-v4-flash",
34576
- // local pin redirect
34577
34577
  "nvidia/deepseek-v4-pro": "free/deepseek-v4-flash",
34578
- // V4 Pro NVIDIA hung 2026-04-30
34579
34578
  "free/deepseek-v4-pro": "free/deepseek-v4-flash",
34580
- // V4 Pro delisted — redirect pinned callers
34581
34579
  "nvidia/deepseek-v4-flash": "free/deepseek-v4-flash",
34582
34580
  "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning": "free/nemotron-3-nano-omni-30b-a3b-reasoning",
34583
34581
  // qwen3-coder-480b retired (NVIDIA EOL 2026-06-14) → redirects to seed-oss-36b
@@ -34585,58 +34583,62 @@ var init_models = __esm({
34585
34583
  // resolves them), but point the generic coding shorthands at the live successor.
34586
34584
  "nvidia/qwen3-coder-480b": "free/qwen3-coder-480b",
34587
34585
  "qwen/qwen3-coder-480b-a35b-instruct": "free/qwen3-coder-480b",
34588
- "nvidia/glm-4.7": "free/seed-oss-36b",
34586
+ // glm-4.7 pin keeps the real id — blockrun redirects it server-side (→ gpt-oss-120b).
34587
+ "nvidia/glm-4.7": "free/glm-4.7",
34589
34588
  "nvidia/llama-4-maverick": "free/llama-4-maverick",
34590
- // qwen3-next thinking variant retired; live sibling is the instruct model
34589
+ // qwen3-next: both variants died in the 2026-07-17 re-probe; pins keep the id
34590
+ // (blockrun redirects them server-side to gpt-oss-120b).
34591
34591
  "nvidia/qwen3-next-80b-a3b-thinking": "free/qwen3-next-80b-a3b-instruct",
34592
- // New live free models from the 2026-06-14 BlockRun free-tier refresh
34593
34592
  "nvidia/qwen3-next-80b-a3b-instruct": "free/qwen3-next-80b-a3b-instruct",
34594
34593
  "nvidia/seed-oss-36b": "free/seed-oss-36b",
34595
34594
  "nvidia/mistral-nemotron": "free/mistral-nemotron",
34596
34595
  "nvidia/step-3.7-flash": "free/step-3.7-flash",
34597
34596
  "nvidia/nemotron-nano-9b-v2": "free/nemotron-nano-9b-v2",
34598
34597
  "nvidia/nemotron-nano-12b-v2-vl": "free/nemotron-nano-12b-v2-vl",
34599
- "nvidia/mistral-small-4-119b": "free/llama-4-maverick",
34600
- // NVIDIA upstream timing out — hidden + redirected server-side 2026-06-08
34601
- // Retired free IDs → successors (mirror server-side redirects)
34602
- "nvidia/nemotron-ultra-253b": "free/llama-4-maverick",
34603
- "nvidia/nemotron-3-super-120b": "free/llama-4-maverick",
34604
- "nvidia/nemotron-super-49b": "free/llama-4-maverick",
34598
+ // nvidia/mistral-small-4-119b: no local redirect — recovered in the 2026-07-17
34599
+ // re-probe and blockrun removed its server redirect, so pinned callers reach the
34600
+ // real model again (upstream fallbackModel + health gate cover a relapse).
34601
+ // Retired free IDs → successors (mirror blockrun's 2026-07-17 redirect map:
34602
+ // ultra-253b redirects to gpt-oss-120b; the two supers have NO server redirect —
34603
+ // they stay hidden-but-routable, so their pins pass through to the real ids).
34604
+ "nvidia/nemotron-ultra-253b": "free/gpt-oss-120b",
34605
34605
  // mistral-large-3-675b un-retired 2026-06-14: BlockRun re-featured it (available,
34606
34606
  // NVIDIA upstream recovered) so it's a real free catalog entry again.
34607
34607
  "nvidia/mistral-large-3-675b": "free/mistral-large-3-675b",
34608
34608
  "nvidia/qwen3.5-122b-a10b": "free/qwen3.5-122b-a10b",
34609
- "nvidia/devstral-2-123b": "free/seed-oss-36b",
34610
- "free/nemotron-ultra-253b": "free/llama-4-maverick",
34611
- "free/nemotron-3-super-120b": "free/llama-4-maverick",
34612
- "free/nemotron-super-49b": "free/llama-4-maverick",
34613
- "free/devstral-2-123b": "free/seed-oss-36b",
34609
+ // devstral-2-123b died upstream; blockrun redirects it to gpt-oss-120b (2026-07-17 map)
34610
+ "nvidia/devstral-2-123b": "free/gpt-oss-120b",
34611
+ "free/nemotron-ultra-253b": "free/gpt-oss-120b",
34612
+ "free/devstral-2-123b": "free/gpt-oss-120b",
34614
34613
  // New blockrun-featured free models (2026-06-14 catalog sweep)
34615
34614
  "mistral-large": "free/mistral-large-3-675b",
34616
34615
  "mistral-large-3-675b": "free/mistral-large-3-675b",
34617
34616
  "qwen3.5-122b": "free/qwen3.5-122b-a10b",
34618
34617
  "qwen3-122b": "free/qwen3.5-122b-a10b",
34619
- // Free model shorthand aliases
34618
+ // Free model shorthand aliases (v4-flash recovered 2026-07-17 — live again)
34620
34619
  "deepseek-free": "free/deepseek-v4-flash",
34621
- // V4 Pro NVIDIA hung 2026-04-30 → flash
34622
34620
  "deepseek-v4-pro": "free/deepseek-v4-flash",
34623
- // free shorthand → flash (pro hung)
34621
+ // free shorthand → flash (pro still hung)
34624
34622
  "deepseek-v4-flash": "free/deepseek-v4-flash",
34625
34623
  "v4-pro": "free/deepseek-v4-flash",
34626
34624
  // V4 Pro NVIDIA hung → flash
34627
34625
  "v4-flash": "free/deepseek-v4-flash",
34628
- "mistral-free": "free/llama-4-maverick",
34626
+ "mistral-free": "free/mistral-large-3-675b",
34627
+ // was llama-4-maverick (died 2026-07) — live Mistral flagship
34629
34628
  "glm-free": "free/seed-oss-36b",
34630
34629
  // qwen3-coder retired → live coder successor
34631
- "llama-free": "free/llama-4-maverick",
34630
+ "llama-free": "free/gpt-oss-120b",
34631
+ // no live free Llama left (maverick died 2026-07)
34632
34632
  "qwen-coder": "free/seed-oss-36b",
34633
34633
  // qwen3-coder-480b retired → seed-oss-36b
34634
34634
  "qwen-coder-free": "free/seed-oss-36b",
34635
- "qwen-thinking": "free/qwen3-next-80b-a3b-instruct",
34635
+ "qwen-thinking": "free/gpt-oss-120b",
34636
+ // qwen3-next died 2026-07-17; no live free Qwen left
34636
34637
  "qwen3-next": "free/qwen3-next-80b-a3b-instruct",
34637
- // now a live model (instruct)
34638
+ // explicit-ish pin — gateway redirects
34638
34639
  "qwen3-next-80b": "free/qwen3-next-80b-a3b-instruct",
34639
- "mistral-small": "free/llama-4-maverick",
34640
+ "mistral-small": "free/mistral-nemotron",
34641
+ // closest live Mistral-family free model
34640
34642
  // New live free models (2026-06-14 BlockRun free-tier refresh)
34641
34643
  "seed-oss": "free/seed-oss-36b",
34642
34644
  "seed-oss-36b": "free/seed-oss-36b",
@@ -34652,16 +34654,19 @@ var init_models = __esm({
34652
34654
  "nemotron-omni": "free/nemotron-3-nano-omni-30b-a3b-reasoning",
34653
34655
  "nano-omni": "free/nemotron-3-nano-omni-30b-a3b-reasoning",
34654
34656
  "vision-free": "free/nemotron-3-nano-omni-30b-a3b-reasoning",
34655
- // Retired shorthand aliases redirect to successors
34656
- nemotron: "free/llama-4-maverick",
34657
- "nemotron-ultra": "free/llama-4-maverick",
34658
- "nemotron-253b": "free/llama-4-maverick",
34659
- "nemotron-super": "free/llama-4-maverick",
34660
- "nemotron-49b": "free/llama-4-maverick",
34661
- "nemotron-120b": "free/llama-4-maverick",
34657
+ // Retired shorthand aliases redirect to live successors (2026-07-17 map:
34658
+ // llama-4-maverick died, so the old catch-all target moved to gpt-oss-120b)
34659
+ nemotron: "free/nemotron-3-nano-omni-30b-a3b-reasoning",
34660
+ // strongest live Nemotron
34661
+ "nemotron-ultra": "free/gpt-oss-120b",
34662
+ "nemotron-253b": "free/gpt-oss-120b",
34663
+ "nemotron-super": "free/gpt-oss-120b",
34664
+ "nemotron-49b": "free/gpt-oss-120b",
34665
+ "nemotron-120b": "free/gpt-oss-120b",
34662
34666
  devstral: "free/seed-oss-36b",
34663
34667
  "devstral-2": "free/seed-oss-36b",
34664
34668
  maverick: "free/llama-4-maverick",
34669
+ // explicit-ish pin — gateway redirects
34665
34670
  free: "free/gpt-oss-120b",
34666
34671
  // MiniMax (minimax → current flagship: M3)
34667
34672
  minimax: "minimax/minimax-m3",
@@ -35590,6 +35595,8 @@ var init_models = __esm({
35590
35595
  // V4 Flash: 284B / 13B active MoE, 1M context. ~5x faster than V4 Pro.
35591
35596
  // Strong on chat/summarization (MMLU-Pro 86.2). Caveat: weaker factual
35592
35597
  // recall (SimpleQA 34% vs Pro's 58%) — pick V4 Pro for fact-heavy loops.
35598
+ // Recovered in blockrun's 2026-07-17 live re-probe (3.2s both passes) —
35599
+ // un-hidden upstream and back in the advertised free 8.
35593
35600
  id: "free/deepseek-v4-flash",
35594
35601
  name: "[Free] DeepSeek V4 Flash",
35595
35602
  version: "v4-flash",
@@ -35670,10 +35677,12 @@ var init_models = __esm({
35670
35677
  },
35671
35678
  // 2026-06-16: BlockRun's 2026-06-14 free-tier refresh (self-healing health gate
35672
35679
  // + probe-verified lineup, blockrun commit 5817ecd) added these live NVIDIA free
35673
- // models. qwen3-coder-480b was retired (NVIDIA EOL 2026-06-14) and now redirects
35674
- // server-side to seed-oss-36b; deepseek-v4-flash/glm-4.7 stay catalog-only.
35680
+ // models. Status per blockrun's 2026-07-17 live re-probe: qwen3-coder-480b and
35681
+ // glm-4.7 stay dead (server-redirected); deepseek-v4-flash recovered (see above).
35675
35682
  {
35676
- // Qwen3-Next 80B (A3B active MoE): 262K context, strong reasoning + coding.
35683
+ // Qwen3-Next 80B (A3B active MoE): 262K context. DIED in the 2026-07-17
35684
+ // re-probe (">60s / DEGRADED") — hidden upstream, gateway redirects pinned
35685
+ // callers to gpt-oss-120b. Entry kept so pins stay routable; off the picker.
35677
35686
  id: "free/qwen3-next-80b-a3b-instruct",
35678
35687
  name: "[Free] Qwen3-Next 80B Instruct",
35679
35688
  version: "next-80b-a3b",
@@ -84552,6 +84561,7 @@ function estimateAmount(modelId, bodyLength, maxTokens) {
84552
84561
  const estimatedOutputTokens = maxTokens || model.maxOutput || 4096;
84553
84562
  costUsd = estimatedInputTokens / 1e6 * model.inputPrice + estimatedOutputTokens / 1e6 * model.outputPrice;
84554
84563
  }
84564
+ if (costUsd > 0) costUsd += 2e-3;
84555
84565
  const amountMicros = Math.max(1e3, Math.ceil(costUsd * 1.2 * 1e6));
84556
84566
  return amountMicros.toString();
84557
84567
  }
@@ -88009,12 +88019,8 @@ var init_proxy = __esm({
88009
88019
  "free/gpt-oss-20b",
88010
88020
  "free/mistral-large-3-675b",
88011
88021
  // 675B general flagship (re-featured 2026-06-14)
88012
- "free/qwen3.5-122b-a10b",
88013
- // newest-gen Qwen, strong general
88014
- "free/qwen3-next-80b-a3b-instruct",
88015
- // 262K ctx, strong reasoning + coding
88016
- "free/llama-4-maverick",
88017
- // BlockRun's primary free fallback
88022
+ "free/deepseek-v4-flash",
88023
+ // 1M ctx, recovered 2026-07-17 (3.2s probe)
88018
88024
  "free/seed-oss-36b",
88019
88025
  // live coder (successor to retired qwen3-coder-480b)
88020
88026
  "free/mistral-nemotron",
package/dist/index.js CHANGED
@@ -90,7 +90,7 @@ var init_top_models = __esm({
90
90
  "deepseek/deepseek-chat",
91
91
  "deepseek/deepseek-reasoner",
92
92
  "free/mistral-large-3-675b",
93
- "free/qwen3-next-80b-a3b-instruct",
93
+ "free/deepseek-v4-flash",
94
94
  "free/seed-oss-36b",
95
95
  "free/nemotron-3-nano-omni-30b-a3b-reasoning",
96
96
  "free/mistral-nemotron",
@@ -360,14 +360,12 @@ var init_models = __esm({
360
360
  "gpt-20b": "free/gpt-oss-20b",
361
361
  "nvidia/gpt-oss-120b": "free/gpt-oss-120b",
362
362
  "nvidia/gpt-oss-20b": "free/gpt-oss-20b",
363
+ // deepseek family → v4-flash, matching blockrun's 2026-07-17 redirect map
364
+ // (v4-flash recovered in the live re-probe; v3.2/v4-pro stay dead upstream).
363
365
  "nvidia/deepseek-v3.2": "free/deepseek-v4-flash",
364
- // v3.2 → v4-flash (v4-pro NVIDIA hung 2026-04-30)
365
366
  "free/deepseek-v3.2": "free/deepseek-v4-flash",
366
- // local pin redirect
367
367
  "nvidia/deepseek-v4-pro": "free/deepseek-v4-flash",
368
- // V4 Pro NVIDIA hung 2026-04-30
369
368
  "free/deepseek-v4-pro": "free/deepseek-v4-flash",
370
- // V4 Pro delisted — redirect pinned callers
371
369
  "nvidia/deepseek-v4-flash": "free/deepseek-v4-flash",
372
370
  "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning": "free/nemotron-3-nano-omni-30b-a3b-reasoning",
373
371
  // qwen3-coder-480b retired (NVIDIA EOL 2026-06-14) → redirects to seed-oss-36b
@@ -375,58 +373,62 @@ var init_models = __esm({
375
373
  // resolves them), but point the generic coding shorthands at the live successor.
376
374
  "nvidia/qwen3-coder-480b": "free/qwen3-coder-480b",
377
375
  "qwen/qwen3-coder-480b-a35b-instruct": "free/qwen3-coder-480b",
378
- "nvidia/glm-4.7": "free/seed-oss-36b",
376
+ // glm-4.7 pin keeps the real id — blockrun redirects it server-side (→ gpt-oss-120b).
377
+ "nvidia/glm-4.7": "free/glm-4.7",
379
378
  "nvidia/llama-4-maverick": "free/llama-4-maverick",
380
- // qwen3-next thinking variant retired; live sibling is the instruct model
379
+ // qwen3-next: both variants died in the 2026-07-17 re-probe; pins keep the id
380
+ // (blockrun redirects them server-side to gpt-oss-120b).
381
381
  "nvidia/qwen3-next-80b-a3b-thinking": "free/qwen3-next-80b-a3b-instruct",
382
- // New live free models from the 2026-06-14 BlockRun free-tier refresh
383
382
  "nvidia/qwen3-next-80b-a3b-instruct": "free/qwen3-next-80b-a3b-instruct",
384
383
  "nvidia/seed-oss-36b": "free/seed-oss-36b",
385
384
  "nvidia/mistral-nemotron": "free/mistral-nemotron",
386
385
  "nvidia/step-3.7-flash": "free/step-3.7-flash",
387
386
  "nvidia/nemotron-nano-9b-v2": "free/nemotron-nano-9b-v2",
388
387
  "nvidia/nemotron-nano-12b-v2-vl": "free/nemotron-nano-12b-v2-vl",
389
- "nvidia/mistral-small-4-119b": "free/llama-4-maverick",
390
- // NVIDIA upstream timing out — hidden + redirected server-side 2026-06-08
391
- // Retired free IDs → successors (mirror server-side redirects)
392
- "nvidia/nemotron-ultra-253b": "free/llama-4-maverick",
393
- "nvidia/nemotron-3-super-120b": "free/llama-4-maverick",
394
- "nvidia/nemotron-super-49b": "free/llama-4-maverick",
388
+ // nvidia/mistral-small-4-119b: no local redirect — recovered in the 2026-07-17
389
+ // re-probe and blockrun removed its server redirect, so pinned callers reach the
390
+ // real model again (upstream fallbackModel + health gate cover a relapse).
391
+ // Retired free IDs → successors (mirror blockrun's 2026-07-17 redirect map:
392
+ // ultra-253b redirects to gpt-oss-120b; the two supers have NO server redirect —
393
+ // they stay hidden-but-routable, so their pins pass through to the real ids).
394
+ "nvidia/nemotron-ultra-253b": "free/gpt-oss-120b",
395
395
  // mistral-large-3-675b un-retired 2026-06-14: BlockRun re-featured it (available,
396
396
  // NVIDIA upstream recovered) so it's a real free catalog entry again.
397
397
  "nvidia/mistral-large-3-675b": "free/mistral-large-3-675b",
398
398
  "nvidia/qwen3.5-122b-a10b": "free/qwen3.5-122b-a10b",
399
- "nvidia/devstral-2-123b": "free/seed-oss-36b",
400
- "free/nemotron-ultra-253b": "free/llama-4-maverick",
401
- "free/nemotron-3-super-120b": "free/llama-4-maverick",
402
- "free/nemotron-super-49b": "free/llama-4-maverick",
403
- "free/devstral-2-123b": "free/seed-oss-36b",
399
+ // devstral-2-123b died upstream; blockrun redirects it to gpt-oss-120b (2026-07-17 map)
400
+ "nvidia/devstral-2-123b": "free/gpt-oss-120b",
401
+ "free/nemotron-ultra-253b": "free/gpt-oss-120b",
402
+ "free/devstral-2-123b": "free/gpt-oss-120b",
404
403
  // New blockrun-featured free models (2026-06-14 catalog sweep)
405
404
  "mistral-large": "free/mistral-large-3-675b",
406
405
  "mistral-large-3-675b": "free/mistral-large-3-675b",
407
406
  "qwen3.5-122b": "free/qwen3.5-122b-a10b",
408
407
  "qwen3-122b": "free/qwen3.5-122b-a10b",
409
- // Free model shorthand aliases
408
+ // Free model shorthand aliases (v4-flash recovered 2026-07-17 — live again)
410
409
  "deepseek-free": "free/deepseek-v4-flash",
411
- // V4 Pro NVIDIA hung 2026-04-30 → flash
412
410
  "deepseek-v4-pro": "free/deepseek-v4-flash",
413
- // free shorthand → flash (pro hung)
411
+ // free shorthand → flash (pro still hung)
414
412
  "deepseek-v4-flash": "free/deepseek-v4-flash",
415
413
  "v4-pro": "free/deepseek-v4-flash",
416
414
  // V4 Pro NVIDIA hung → flash
417
415
  "v4-flash": "free/deepseek-v4-flash",
418
- "mistral-free": "free/llama-4-maverick",
416
+ "mistral-free": "free/mistral-large-3-675b",
417
+ // was llama-4-maverick (died 2026-07) — live Mistral flagship
419
418
  "glm-free": "free/seed-oss-36b",
420
419
  // qwen3-coder retired → live coder successor
421
- "llama-free": "free/llama-4-maverick",
420
+ "llama-free": "free/gpt-oss-120b",
421
+ // no live free Llama left (maverick died 2026-07)
422
422
  "qwen-coder": "free/seed-oss-36b",
423
423
  // qwen3-coder-480b retired → seed-oss-36b
424
424
  "qwen-coder-free": "free/seed-oss-36b",
425
- "qwen-thinking": "free/qwen3-next-80b-a3b-instruct",
425
+ "qwen-thinking": "free/gpt-oss-120b",
426
+ // qwen3-next died 2026-07-17; no live free Qwen left
426
427
  "qwen3-next": "free/qwen3-next-80b-a3b-instruct",
427
- // now a live model (instruct)
428
+ // explicit-ish pin — gateway redirects
428
429
  "qwen3-next-80b": "free/qwen3-next-80b-a3b-instruct",
429
- "mistral-small": "free/llama-4-maverick",
430
+ "mistral-small": "free/mistral-nemotron",
431
+ // closest live Mistral-family free model
430
432
  // New live free models (2026-06-14 BlockRun free-tier refresh)
431
433
  "seed-oss": "free/seed-oss-36b",
432
434
  "seed-oss-36b": "free/seed-oss-36b",
@@ -442,16 +444,19 @@ var init_models = __esm({
442
444
  "nemotron-omni": "free/nemotron-3-nano-omni-30b-a3b-reasoning",
443
445
  "nano-omni": "free/nemotron-3-nano-omni-30b-a3b-reasoning",
444
446
  "vision-free": "free/nemotron-3-nano-omni-30b-a3b-reasoning",
445
- // Retired shorthand aliases redirect to successors
446
- nemotron: "free/llama-4-maverick",
447
- "nemotron-ultra": "free/llama-4-maverick",
448
- "nemotron-253b": "free/llama-4-maverick",
449
- "nemotron-super": "free/llama-4-maverick",
450
- "nemotron-49b": "free/llama-4-maverick",
451
- "nemotron-120b": "free/llama-4-maverick",
447
+ // Retired shorthand aliases redirect to live successors (2026-07-17 map:
448
+ // llama-4-maverick died, so the old catch-all target moved to gpt-oss-120b)
449
+ nemotron: "free/nemotron-3-nano-omni-30b-a3b-reasoning",
450
+ // strongest live Nemotron
451
+ "nemotron-ultra": "free/gpt-oss-120b",
452
+ "nemotron-253b": "free/gpt-oss-120b",
453
+ "nemotron-super": "free/gpt-oss-120b",
454
+ "nemotron-49b": "free/gpt-oss-120b",
455
+ "nemotron-120b": "free/gpt-oss-120b",
452
456
  devstral: "free/seed-oss-36b",
453
457
  "devstral-2": "free/seed-oss-36b",
454
458
  maverick: "free/llama-4-maverick",
459
+ // explicit-ish pin — gateway redirects
455
460
  free: "free/gpt-oss-120b",
456
461
  // MiniMax (minimax → current flagship: M3)
457
462
  minimax: "minimax/minimax-m3",
@@ -1380,6 +1385,8 @@ var init_models = __esm({
1380
1385
  // V4 Flash: 284B / 13B active MoE, 1M context. ~5x faster than V4 Pro.
1381
1386
  // Strong on chat/summarization (MMLU-Pro 86.2). Caveat: weaker factual
1382
1387
  // recall (SimpleQA 34% vs Pro's 58%) — pick V4 Pro for fact-heavy loops.
1388
+ // Recovered in blockrun's 2026-07-17 live re-probe (3.2s both passes) —
1389
+ // un-hidden upstream and back in the advertised free 8.
1383
1390
  id: "free/deepseek-v4-flash",
1384
1391
  name: "[Free] DeepSeek V4 Flash",
1385
1392
  version: "v4-flash",
@@ -1460,10 +1467,12 @@ var init_models = __esm({
1460
1467
  },
1461
1468
  // 2026-06-16: BlockRun's 2026-06-14 free-tier refresh (self-healing health gate
1462
1469
  // + probe-verified lineup, blockrun commit 5817ecd) added these live NVIDIA free
1463
- // models. qwen3-coder-480b was retired (NVIDIA EOL 2026-06-14) and now redirects
1464
- // server-side to seed-oss-36b; deepseek-v4-flash/glm-4.7 stay catalog-only.
1470
+ // models. Status per blockrun's 2026-07-17 live re-probe: qwen3-coder-480b and
1471
+ // glm-4.7 stay dead (server-redirected); deepseek-v4-flash recovered (see above).
1465
1472
  {
1466
- // Qwen3-Next 80B (A3B active MoE): 262K context, strong reasoning + coding.
1473
+ // Qwen3-Next 80B (A3B active MoE): 262K context. DIED in the 2026-07-17
1474
+ // re-probe (">60s / DEGRADED") — hidden upstream, gateway redirects pinned
1475
+ // callers to gpt-oss-120b. Entry kept so pins stay routable; off the picker.
1467
1476
  id: "free/qwen3-next-80b-a3b-instruct",
1468
1477
  name: "[Free] Qwen3-Next 80B Instruct",
1469
1478
  version: "next-80b-a3b",
@@ -35452,10 +35461,10 @@ var init_config = __esm({
35452
35461
  // FREE — smaller, faster
35453
35462
  "free/mistral-large-3-675b",
35454
35463
  // FREE — 675B general flagship (re-featured 2026-06-14)
35455
- "free/qwen3.5-122b-a10b",
35456
- // FREE — newest-gen Qwen, strong general
35457
- "free/qwen3-next-80b-a3b-instruct",
35458
- // FREE — 262K ctx, strong general (deepseek-v4-flash retired)
35464
+ "free/deepseek-v4-flash",
35465
+ // FREE — 1M ctx, recovered in blockrun's 2026-07-17 re-probe
35466
+ "free/seed-oss-36b",
35467
+ // FREE — live coder (qwen3.5-122b + qwen3-next died 2026-07)
35459
35468
  "google/gemini-3.1-flash-lite",
35460
35469
  // $0.25/$1.50 — newest flash-lite
35461
35470
  "openai/gpt-5.4-nano",
@@ -84372,6 +84381,7 @@ function estimateAmount(modelId, bodyLength, maxTokens) {
84372
84381
  const estimatedOutputTokens = maxTokens || model.maxOutput || 4096;
84373
84382
  costUsd = estimatedInputTokens / 1e6 * model.inputPrice + estimatedOutputTokens / 1e6 * model.outputPrice;
84374
84383
  }
84384
+ if (costUsd > 0) costUsd += 2e-3;
84375
84385
  const amountMicros = Math.max(1e3, Math.ceil(costUsd * 1.2 * 1e6));
84376
84386
  return amountMicros.toString();
84377
84387
  }
@@ -87829,12 +87839,8 @@ var init_proxy = __esm({
87829
87839
  "free/gpt-oss-20b",
87830
87840
  "free/mistral-large-3-675b",
87831
87841
  // 675B general flagship (re-featured 2026-06-14)
87832
- "free/qwen3.5-122b-a10b",
87833
- // newest-gen Qwen, strong general
87834
- "free/qwen3-next-80b-a3b-instruct",
87835
- // 262K ctx, strong reasoning + coding
87836
- "free/llama-4-maverick",
87837
- // BlockRun's primary free fallback
87842
+ "free/deepseek-v4-flash",
87843
+ // 1M ctx, recovered 2026-07-17 (3.2s probe)
87838
87844
  "free/seed-oss-36b",
87839
87845
  // live coder (successor to retired qwen3-coder-480b)
87840
87846
  "free/mistral-nemotron",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blockrun/clawrouter",
3
- "version": "0.12.227",
3
+ "version": "0.12.228",
4
4
  "description": "Smart LLM router — save 85% on inference costs. 55+ models (8 free), one wallet, x402 micropayments.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -135,7 +135,7 @@ Rules handle ~~80% of requests in <1ms. Only ambiguous queries hit the LLM class
135
135
 
136
136
  ## Available Models
137
137
 
138
- 55+ models including: gpt-5.6-terra [balanced, stable default], gpt-5.6-sol [flagship], gpt-5.6-luna [cost-efficient], gpt-5.5, gpt-5.4, gpt-4o, o3, claude-fable-5, claude-opus-4.8, claude-opus-4.7, claude-opus-4.5, claude-sonnet-5, claude-sonnet-4.6, gemini-3.1-pro, gemini-2.5-flash, deepseek-v4-pro, deepseek-chat, grok-4.5, grok-4.3, grok-build-0.1, kimi-k2.7, and 8 free NVIDIA models (mistral-large-3-675b [default, 675B flagship], qwen3-next-80b-a3b-instruct, seed-oss-36b [coding], nemotron-3-nano-omni-30b-a3b-reasoning [vision], mistral-nemotron, step-3.7-flash, nemotron-nano-9b-v2, nemotron-nano-12b-v2-vl [vision]).
138
+ 55+ models including: gpt-5.6-terra [balanced, stable default], gpt-5.6-sol [flagship], gpt-5.6-luna [cost-efficient], gpt-5.5, gpt-5.4, gpt-4o, o3, claude-fable-5, claude-opus-4.8, claude-opus-4.7, claude-opus-4.5, claude-sonnet-5, claude-sonnet-4.6, gemini-3.1-pro, gemini-2.5-flash, deepseek-v4-pro, deepseek-chat, grok-4.5, grok-4.3, grok-build-0.1, kimi-k2.7, and 8 free NVIDIA models (mistral-large-3-675b [default, 675B flagship], deepseek-v4-flash [1M context], seed-oss-36b [coding], nemotron-3-nano-omni-30b-a3b-reasoning [vision], mistral-nemotron, step-3.7-flash, nemotron-nano-9b-v2, nemotron-nano-12b-v2-vl [vision]).
139
139
 
140
140
  ## Built-in Agent Tools
141
141
 
@@ -36,7 +36,7 @@
36
36
  "deepseek/deepseek-chat",
37
37
  "deepseek/deepseek-reasoner",
38
38
  "free/mistral-large-3-675b",
39
- "free/qwen3-next-80b-a3b-instruct",
39
+ "free/deepseek-v4-flash",
40
40
  "free/seed-oss-36b",
41
41
  "free/nemotron-3-nano-omni-30b-a3b-reasoning",
42
42
  "free/mistral-nemotron",