@runtypelabs/cli 2.35.0 → 2.35.1
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/dist/index.js +382 -34
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -15212,7 +15212,7 @@ var CANONICAL_LOG_COLUMN_SET = {
|
|
|
15212
15212
|
};
|
|
15213
15213
|
var CANONICAL_LOG_COLUMNS = Object.keys(CANONICAL_LOG_COLUMN_SET);
|
|
15214
15214
|
|
|
15215
|
-
// ../shared/dist/chunk-
|
|
15215
|
+
// ../shared/dist/chunk-Q5ZS77L4.mjs
|
|
15216
15216
|
var MODEL_FAMILY_PROVIDER_IDS = {
|
|
15217
15217
|
"claude-fable-5": {
|
|
15218
15218
|
"anthropic": "claude-fable-5",
|
|
@@ -15498,6 +15498,9 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
15498
15498
|
"glm-5-3": {
|
|
15499
15499
|
"vercel": "zai/glm-5.3"
|
|
15500
15500
|
},
|
|
15501
|
+
"glm-5-3-flash": {
|
|
15502
|
+
"vercel": "zai/glm-5.3-flash"
|
|
15503
|
+
},
|
|
15501
15504
|
"glm-5.2": {
|
|
15502
15505
|
"mixlayer": "z-ai/glm-5.2",
|
|
15503
15506
|
"vercel": "zai/glm-5.2"
|
|
@@ -15508,6 +15511,9 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
15508
15511
|
"glm-5.3": {
|
|
15509
15512
|
"vercel": "zai/glm-5.3"
|
|
15510
15513
|
},
|
|
15514
|
+
"glm-5.3-flash": {
|
|
15515
|
+
"vercel": "zai/glm-5.3-flash"
|
|
15516
|
+
},
|
|
15511
15517
|
"gpt-4-1": {
|
|
15512
15518
|
"openai": "gpt-4.1",
|
|
15513
15519
|
"vercel": "openai/gpt-4.1"
|
|
@@ -15564,12 +15570,6 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
15564
15570
|
"gpt-4o-mini-fast": {
|
|
15565
15571
|
"vercel": "openai/gpt-4o-mini-fast"
|
|
15566
15572
|
},
|
|
15567
|
-
"gpt-4o-mini-search": {
|
|
15568
|
-
"vercel": "openai/gpt-4o-mini-search-preview"
|
|
15569
|
-
},
|
|
15570
|
-
"gpt-4o-mini-search-preview": {
|
|
15571
|
-
"vercel": "openai/gpt-4o-mini-search-preview"
|
|
15572
|
-
},
|
|
15573
15573
|
"gpt-5": {
|
|
15574
15574
|
"openai": "gpt-5",
|
|
15575
15575
|
"vercel": "openai/gpt-5"
|
|
@@ -15796,6 +15796,9 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
15796
15796
|
"gpt-image-1.5": {
|
|
15797
15797
|
"openai": "gpt-image-1.5"
|
|
15798
15798
|
},
|
|
15799
|
+
"gpt-oss-safeguard-120b": {
|
|
15800
|
+
"vercel": "openai/gpt-oss-safeguard-120b"
|
|
15801
|
+
},
|
|
15799
15802
|
"grok-4-20-0309-non-reasoning": {
|
|
15800
15803
|
"xai": "grok-4.20-0309-non-reasoning"
|
|
15801
15804
|
},
|
|
@@ -15996,12 +15999,6 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
15996
15999
|
"lyria-3-pro-preview": {
|
|
15997
16000
|
"google": "lyria-3-pro-preview"
|
|
15998
16001
|
},
|
|
15999
|
-
"magistral-medium": {
|
|
16000
|
-
"vercel": "mistral/magistral-medium"
|
|
16001
|
-
},
|
|
16002
|
-
"magistral-small": {
|
|
16003
|
-
"vercel": "mistral/magistral-small"
|
|
16004
|
-
},
|
|
16005
16002
|
"mercury-2": {
|
|
16006
16003
|
"vercel": "inception/mercury-2"
|
|
16007
16004
|
},
|
|
@@ -16023,18 +16020,27 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
16023
16020
|
"minimax-m2-7": {
|
|
16024
16021
|
"vercel": "minimax/minimax-m2.7"
|
|
16025
16022
|
},
|
|
16023
|
+
"minimax-m2-7-free": {
|
|
16024
|
+
"vercel": "minimax/minimax-m2.7-free"
|
|
16025
|
+
},
|
|
16026
16026
|
"minimax-m2-7-highspeed": {
|
|
16027
16027
|
"vercel": "minimax/minimax-m2.7-highspeed"
|
|
16028
16028
|
},
|
|
16029
16029
|
"minimax-m2.7": {
|
|
16030
16030
|
"vercel": "minimax/minimax-m2.7"
|
|
16031
16031
|
},
|
|
16032
|
+
"minimax-m2.7-free": {
|
|
16033
|
+
"vercel": "minimax/minimax-m2.7-free"
|
|
16034
|
+
},
|
|
16032
16035
|
"minimax-m2.7-highspeed": {
|
|
16033
16036
|
"vercel": "minimax/minimax-m2.7-highspeed"
|
|
16034
16037
|
},
|
|
16035
16038
|
"minimax-m3": {
|
|
16036
16039
|
"vercel": "minimax/minimax-m3"
|
|
16037
16040
|
},
|
|
16041
|
+
"minimax-m3-free": {
|
|
16042
|
+
"vercel": "minimax/minimax-m3-free"
|
|
16043
|
+
},
|
|
16038
16044
|
"ministral-14b": {
|
|
16039
16045
|
"vercel": "mistral/ministral-14b"
|
|
16040
16046
|
},
|
|
@@ -16089,9 +16095,6 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
16089
16095
|
"nemotron-3-5-lightning": {
|
|
16090
16096
|
"vercel": "nvidia/nemotron-3.5-lightning"
|
|
16091
16097
|
},
|
|
16092
|
-
"nemotron-3-5-lightning-free": {
|
|
16093
|
-
"vercel": "nvidia/nemotron-3.5-lightning-free"
|
|
16094
|
-
},
|
|
16095
16098
|
"nemotron-3-nano-30b-a3b": {
|
|
16096
16099
|
"vercel": "nvidia/nemotron-3-nano-30b-a3b"
|
|
16097
16100
|
},
|
|
@@ -16104,9 +16107,6 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
16104
16107
|
"nemotron-3.5-lightning": {
|
|
16105
16108
|
"vercel": "nvidia/nemotron-3.5-lightning"
|
|
16106
16109
|
},
|
|
16107
|
-
"nemotron-3.5-lightning-free": {
|
|
16108
|
-
"vercel": "nvidia/nemotron-3.5-lightning-free"
|
|
16109
|
-
},
|
|
16110
16110
|
"nemotron-nano-12b-v2-vl": {
|
|
16111
16111
|
"vercel": "nvidia/nemotron-nano-12b-v2-vl"
|
|
16112
16112
|
},
|
|
@@ -16204,6 +16204,9 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
16204
16204
|
"qwen3-8-27b": {
|
|
16205
16205
|
"vercel": "alibaba/qwen3.8-27b"
|
|
16206
16206
|
},
|
|
16207
|
+
"qwen3-8-flash": {
|
|
16208
|
+
"vercel": "alibaba/qwen3.8-flash"
|
|
16209
|
+
},
|
|
16207
16210
|
"qwen3-8-max": {
|
|
16208
16211
|
"vercel": "alibaba/qwen3.8-max"
|
|
16209
16212
|
},
|
|
@@ -16295,6 +16298,9 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
16295
16298
|
"qwen3.8-27b": {
|
|
16296
16299
|
"vercel": "alibaba/qwen3.8-27b"
|
|
16297
16300
|
},
|
|
16301
|
+
"qwen3.8-flash": {
|
|
16302
|
+
"vercel": "alibaba/qwen3.8-flash"
|
|
16303
|
+
},
|
|
16298
16304
|
"qwen3.8-max": {
|
|
16299
16305
|
"vercel": "alibaba/qwen3.8-max"
|
|
16300
16306
|
},
|
|
@@ -16357,9 +16363,6 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
16357
16363
|
},
|
|
16358
16364
|
"trinity-large-thinking": {
|
|
16359
16365
|
"vercel": "arcee-ai/trinity-large-thinking"
|
|
16360
|
-
},
|
|
16361
|
-
"trinity-mini": {
|
|
16362
|
-
"vercel": "arcee-ai/trinity-mini"
|
|
16363
16366
|
}
|
|
16364
16367
|
};
|
|
16365
16368
|
var PLATFORM_KEY_PROVIDER_MAP = {
|
|
@@ -16387,6 +16390,333 @@ var PLATFORM_KEY_PROVIDER_MAP = {
|
|
|
16387
16390
|
var PLATFORM_KEY_PROVIDERS = new Set(
|
|
16388
16391
|
Object.entries(PLATFORM_KEY_PROVIDER_MAP).filter(([, v2]) => v2).map(([k2]) => k2)
|
|
16389
16392
|
);
|
|
16393
|
+
function workersAiPrimary(ids, fallback = ["vercel"]) {
|
|
16394
|
+
const config3 = {
|
|
16395
|
+
providers: [{ provider: "workers-ai", weight: 100 }],
|
|
16396
|
+
fallback
|
|
16397
|
+
};
|
|
16398
|
+
return Object.fromEntries(ids.map((id) => [id, config3]));
|
|
16399
|
+
}
|
|
16400
|
+
function workersAiAliases(cfId, ids) {
|
|
16401
|
+
return Object.fromEntries(
|
|
16402
|
+
ids.map((id) => [
|
|
16403
|
+
id,
|
|
16404
|
+
id.includes("/") ? { "workers-ai": cfId, vercel: id } : { "workers-ai": cfId }
|
|
16405
|
+
])
|
|
16406
|
+
);
|
|
16407
|
+
}
|
|
16408
|
+
var DEEPSEEK_V4_FLASH_IDS = [
|
|
16409
|
+
"deepseek-v4-flash",
|
|
16410
|
+
"deepseek-v4-flash-0731",
|
|
16411
|
+
"deepseek/deepseek-v4-flash",
|
|
16412
|
+
"deepseek/deepseek-v4-flash-0731"
|
|
16413
|
+
];
|
|
16414
|
+
var GLM_5_3_FLASH_IDS = ["glm-5.3-flash", "glm-5-3-flash", "zai/glm-5.3-flash"];
|
|
16415
|
+
var PROVIDER_ROUTING_CONFIG = {
|
|
16416
|
+
// Claude 4.5 Sonnet - Route through Vercel AI Gateway
|
|
16417
|
+
"claude-sonnet-4-5": {
|
|
16418
|
+
providers: [
|
|
16419
|
+
{ provider: "vercel", weight: 100 }
|
|
16420
|
+
],
|
|
16421
|
+
fallback: ["anthropic"]
|
|
16422
|
+
},
|
|
16423
|
+
// Claude 4.5 Haiku - Route through Vercel AI Gateway
|
|
16424
|
+
"claude-haiku-4-5": {
|
|
16425
|
+
providers: [
|
|
16426
|
+
{ provider: "vercel", weight: 100 }
|
|
16427
|
+
],
|
|
16428
|
+
fallback: ["anthropic"]
|
|
16429
|
+
},
|
|
16430
|
+
// Claude 4.5 Opus - Route through Vercel AI Gateway
|
|
16431
|
+
"claude-opus-4-5": {
|
|
16432
|
+
providers: [
|
|
16433
|
+
{ provider: "vercel", weight: 100 }
|
|
16434
|
+
],
|
|
16435
|
+
fallback: ["anthropic"]
|
|
16436
|
+
},
|
|
16437
|
+
// Claude Fable 5 - Route through Vercel AI Gateway
|
|
16438
|
+
"claude-fable-5": {
|
|
16439
|
+
providers: [
|
|
16440
|
+
{ provider: "vercel", weight: 100 }
|
|
16441
|
+
],
|
|
16442
|
+
fallback: ["anthropic"]
|
|
16443
|
+
},
|
|
16444
|
+
// GPT-5.4 Nano - CF Gateway primary for testing, Vercel + OpenAI as fallback
|
|
16445
|
+
"gpt-5.4-nano": {
|
|
16446
|
+
providers: [
|
|
16447
|
+
{ provider: "cloudflare", weight: 100 }
|
|
16448
|
+
],
|
|
16449
|
+
fallback: ["vercel", "openai"]
|
|
16450
|
+
},
|
|
16451
|
+
"gpt-5-4-nano": {
|
|
16452
|
+
providers: [
|
|
16453
|
+
{ provider: "cloudflare", weight: 100 }
|
|
16454
|
+
],
|
|
16455
|
+
fallback: ["vercel", "openai"]
|
|
16456
|
+
},
|
|
16457
|
+
// Gemini 2.5 Pro - Route through Vercel AI Gateway
|
|
16458
|
+
"gemini-2.5-pro": {
|
|
16459
|
+
providers: [
|
|
16460
|
+
{ provider: "vercel", weight: 100 }
|
|
16461
|
+
],
|
|
16462
|
+
fallback: ["google"]
|
|
16463
|
+
},
|
|
16464
|
+
// Gemini 2.5 Flash - Route through Vercel AI Gateway
|
|
16465
|
+
"gemini-2.5-flash": {
|
|
16466
|
+
providers: [
|
|
16467
|
+
{ provider: "vercel", weight: 100 }
|
|
16468
|
+
],
|
|
16469
|
+
fallback: ["google"]
|
|
16470
|
+
},
|
|
16471
|
+
// Gemini 2.5 Flash Image - Route through Vercel AI Gateway only
|
|
16472
|
+
// Note: No Google fallback - this image model is only available via Vercel gateway
|
|
16473
|
+
"gemini-2.5-flash-image": {
|
|
16474
|
+
providers: [
|
|
16475
|
+
{ provider: "vercel", weight: 100 }
|
|
16476
|
+
],
|
|
16477
|
+
fallback: []
|
|
16478
|
+
},
|
|
16479
|
+
// Gemini 3 Flash - the Vercel gateway alias is advertised but fails live
|
|
16480
|
+
// dispatch. Route the family through Google's still-live preview id instead.
|
|
16481
|
+
"gemini-3-flash": {
|
|
16482
|
+
providers: [
|
|
16483
|
+
{ provider: "google", weight: 100 }
|
|
16484
|
+
],
|
|
16485
|
+
fallback: []
|
|
16486
|
+
},
|
|
16487
|
+
// Gemini 3.1 Flash-Lite - Vercel AI Gateway (3.1 generation fast text).
|
|
16488
|
+
// Google fallback mirrors gemini-3-flash: the model exists on the google
|
|
16489
|
+
// provider, so a missing/unavailable gateway key degrades to direct Google
|
|
16490
|
+
// instead of a guaranteed dispatch failure (also what makes local dev work
|
|
16491
|
+
// with only PLATFORM_GOOGLE_KEY set).
|
|
16492
|
+
"gemini-3-1-flash-lite": {
|
|
16493
|
+
providers: [
|
|
16494
|
+
{ provider: "vercel", weight: 100 }
|
|
16495
|
+
],
|
|
16496
|
+
fallback: ["google"]
|
|
16497
|
+
},
|
|
16498
|
+
// Gemini 3 Pro Image - Route through Vercel AI Gateway only
|
|
16499
|
+
// Note: No Google fallback - this image model is only available via Vercel gateway
|
|
16500
|
+
"gemini-3-pro-image": {
|
|
16501
|
+
providers: [
|
|
16502
|
+
{ provider: "vercel", weight: 100 }
|
|
16503
|
+
],
|
|
16504
|
+
fallback: []
|
|
16505
|
+
},
|
|
16506
|
+
// Gemini 3.1 Flash Image - Vercel AI Gateway only
|
|
16507
|
+
"gemini-3-1-flash-image": {
|
|
16508
|
+
providers: [
|
|
16509
|
+
{ provider: "vercel", weight: 100 }
|
|
16510
|
+
],
|
|
16511
|
+
fallback: []
|
|
16512
|
+
},
|
|
16513
|
+
// Gemini 3 Pro Preview - Deprecated March 9, 2026. Aliased to gemini-3.1-pro in router.
|
|
16514
|
+
"gemini-3-pro-preview": {
|
|
16515
|
+
providers: [
|
|
16516
|
+
{ provider: "vercel", weight: 100 }
|
|
16517
|
+
],
|
|
16518
|
+
fallback: ["google"]
|
|
16519
|
+
},
|
|
16520
|
+
// Gemini 3.1 Pro - Route through Vercel AI Gateway (successor to gemini-3-pro-preview)
|
|
16521
|
+
"gemini-3.1-pro": {
|
|
16522
|
+
providers: [
|
|
16523
|
+
{ provider: "vercel", weight: 100 }
|
|
16524
|
+
],
|
|
16525
|
+
fallback: ["google"]
|
|
16526
|
+
},
|
|
16527
|
+
// Grok 4 legacy alias - route to the current Grok 4.3 successor.
|
|
16528
|
+
"grok-4": {
|
|
16529
|
+
providers: [
|
|
16530
|
+
{ provider: "vercel", weight: 100 }
|
|
16531
|
+
],
|
|
16532
|
+
fallback: ["xai"]
|
|
16533
|
+
},
|
|
16534
|
+
// Grok 4.3 - Route through Vercel AI Gateway with xAI fallback
|
|
16535
|
+
"grok-4.3": {
|
|
16536
|
+
providers: [
|
|
16537
|
+
{ provider: "vercel", weight: 100 }
|
|
16538
|
+
],
|
|
16539
|
+
fallback: ["xai"]
|
|
16540
|
+
},
|
|
16541
|
+
// Grok 4 Fast legacy aliases - route to the live 4.20 non-reasoning
|
|
16542
|
+
// successor; Vercel still advertises the 4.1 ids but rejects dispatch.
|
|
16543
|
+
"grok-4-fast": {
|
|
16544
|
+
providers: [
|
|
16545
|
+
{ provider: "vercel", weight: 100 }
|
|
16546
|
+
],
|
|
16547
|
+
fallback: []
|
|
16548
|
+
},
|
|
16549
|
+
"grok-4.1-fast-non-reasoning": {
|
|
16550
|
+
providers: [
|
|
16551
|
+
{ provider: "vercel", weight: 100 }
|
|
16552
|
+
],
|
|
16553
|
+
fallback: []
|
|
16554
|
+
},
|
|
16555
|
+
// GPT 5.1 Codex Max - Route through Vercel AI Gateway
|
|
16556
|
+
"gpt-5.1-codex-max": {
|
|
16557
|
+
providers: [
|
|
16558
|
+
{ provider: "vercel", weight: 100 }
|
|
16559
|
+
],
|
|
16560
|
+
fallback: ["openai"]
|
|
16561
|
+
},
|
|
16562
|
+
// Kimi K2.5 is RETIRED — see EXCLUDED_MODELS in scripts/update-models.ts.
|
|
16563
|
+
// Cloudflare deprecated it on 2026-05-30 and silently served K2.6 in its
|
|
16564
|
+
// place, so the id no longer meant what it said. `resolveModelAlias` maps
|
|
16565
|
+
// kimi-k2.5 → kimi-k2.6 for any stored reference that outlives migration 0120.
|
|
16566
|
+
// Kimi K2.6 - Route through Cloudflare Workers AI
|
|
16567
|
+
"kimi-k2.6": {
|
|
16568
|
+
providers: [
|
|
16569
|
+
{ provider: "workers-ai", weight: 100 }
|
|
16570
|
+
],
|
|
16571
|
+
fallback: ["vercel"]
|
|
16572
|
+
},
|
|
16573
|
+
// Kimi K2.7 Code - Route through Mixlayer, fall back to Cloudflare Workers AI.
|
|
16574
|
+
// Vercel renamed its listing to `moonshotai/kimi-k2.7-code-highspeed`, so the
|
|
16575
|
+
// bare `kimi-k2.7-code` base model no longer resolves to a Vercel gateway id;
|
|
16576
|
+
// Mixlayer (a platform-key provider) serves `moonshotai/kimi-k2.7-code`.
|
|
16577
|
+
// Workers AI (`@cf/moonshotai/kimi-k2.7-code`) was the original primary but
|
|
16578
|
+
// was removed from models.dev upstream in 2026-08, so its pricing data no
|
|
16579
|
+
// longer flows into the generated config — moved to fallback.
|
|
16580
|
+
"kimi-k2.7-code": {
|
|
16581
|
+
providers: [
|
|
16582
|
+
{ provider: "mixlayer", weight: 100 }
|
|
16583
|
+
],
|
|
16584
|
+
fallback: ["workers-ai"]
|
|
16585
|
+
},
|
|
16586
|
+
// NVIDIA Nemotron-3 120B - Route through Cloudflare Workers AI (no Vercel equivalent)
|
|
16587
|
+
"nemotron-3-120b-a12b": {
|
|
16588
|
+
providers: [
|
|
16589
|
+
{ provider: "workers-ai", weight: 100 }
|
|
16590
|
+
]
|
|
16591
|
+
},
|
|
16592
|
+
// Google Gemma 4 26B - Route through Cloudflare Workers AI
|
|
16593
|
+
"gemma-4-26b-a4b-it": {
|
|
16594
|
+
providers: [
|
|
16595
|
+
{ provider: "workers-ai", weight: 100 }
|
|
16596
|
+
],
|
|
16597
|
+
fallback: ["vercel"]
|
|
16598
|
+
},
|
|
16599
|
+
// OpenAI GPT OSS 120B - Route through Tinfoil, fall back to Workers AI.
|
|
16600
|
+
// Workers AI (`@cf/openai/gpt-oss-120b`) was the original primary but was
|
|
16601
|
+
// removed from models.dev upstream in 2026-08, so its pricing data no longer
|
|
16602
|
+
// flows into the generated config — moved to fallback.
|
|
16603
|
+
"gpt-oss-120b": {
|
|
16604
|
+
providers: [
|
|
16605
|
+
{ provider: "tinfoil", weight: 100 }
|
|
16606
|
+
],
|
|
16607
|
+
fallback: ["workers-ai"]
|
|
16608
|
+
},
|
|
16609
|
+
// Z.ai GLM-5.2 - Route through Cloudflare Workers AI, then Mixlayer, then the
|
|
16610
|
+
// Vercel AI Gateway. All three serve the same base model, so a Workers AI
|
|
16611
|
+
// rate-limit / capacity failure fast-fails to the next provider on the SAME
|
|
16612
|
+
// model rather than erroring the run (see `getPlatformDefaultStallFallback`,
|
|
16613
|
+
// which derives its same-model failover chain from this ordered list).
|
|
16614
|
+
// Mixlayer sits in the middle because it is the most reliable GLM host we
|
|
16615
|
+
// measured; Vercel is the last-resort gateway.
|
|
16616
|
+
//
|
|
16617
|
+
// This route is curated independently of generated upstream listings. The
|
|
16618
|
+
// Workers AI variant disappeared from models.dev in 2026-08, but the binding
|
|
16619
|
+
// endpoint remains executable and its pricing is preserved in the static
|
|
16620
|
+
// WORKERS_AI_MODEL_MAPPINGS table in @runtypelabs/model-execution.
|
|
16621
|
+
//
|
|
16622
|
+
// `providers` is the selection-time primary (Workers AI); `fallback` is the
|
|
16623
|
+
// ORDERED remaining-provider chain, used both for selection-time key
|
|
16624
|
+
// fallback AND as the runtime same-model failover order.
|
|
16625
|
+
//
|
|
16626
|
+
// All three id forms of this model resolve to the same route:
|
|
16627
|
+
// - `glm-5.2` — bare routed family (this entry)
|
|
16628
|
+
// - `glm-5-2` — dashed alias form
|
|
16629
|
+
// - `zai/glm-5.2` — gateway/catalog id (what surfaces like Persona pin);
|
|
16630
|
+
// the explicit entry overrides the static catalog provider (`vercel`) via
|
|
16631
|
+
// the PROVIDER_ROUTING_CONFIG-wins branch in resolveRoutedFamily.
|
|
16632
|
+
"glm-5.2": {
|
|
16633
|
+
providers: [
|
|
16634
|
+
{ provider: "workers-ai", weight: 100 }
|
|
16635
|
+
],
|
|
16636
|
+
fallback: ["mixlayer", "vercel"]
|
|
16637
|
+
},
|
|
16638
|
+
"glm-5-2": {
|
|
16639
|
+
providers: [
|
|
16640
|
+
{ provider: "workers-ai", weight: 100 }
|
|
16641
|
+
],
|
|
16642
|
+
fallback: ["mixlayer", "vercel"]
|
|
16643
|
+
},
|
|
16644
|
+
"zai/glm-5.2": {
|
|
16645
|
+
providers: [
|
|
16646
|
+
{ provider: "workers-ai", weight: 100 }
|
|
16647
|
+
],
|
|
16648
|
+
fallback: ["mixlayer", "vercel"]
|
|
16649
|
+
},
|
|
16650
|
+
// DeepSeek V4 Pro - Route through Cloudflare Workers AI, fall back to the
|
|
16651
|
+
// Vercel AI Gateway. Cloudflare serves the date-pinned build
|
|
16652
|
+
// (`@cf/deepseek-ai/deepseek-v4-pro-0813`) as its only V4 Pro variant, so every
|
|
16653
|
+
// id form maps onto it; the Vercel listing is the ordered fallback, used both
|
|
16654
|
+
// for selection-time key/binding fallback and as the runtime same-model
|
|
16655
|
+
// failover rung (`getPlatformDefaultStallFallback`).
|
|
16656
|
+
//
|
|
16657
|
+
// All four id forms of this model resolve to the same Workers-AI-primary route:
|
|
16658
|
+
// - `deepseek-v4-pro` — bare routed family
|
|
16659
|
+
// - `deepseek-v4-pro-0813` — date-pinned family
|
|
16660
|
+
// - `deepseek/deepseek-v4-pro` — catalog/gateway id (what surfaces pin)
|
|
16661
|
+
// - `deepseek/deepseek-v4-pro-0813`— date-pinned catalog id
|
|
16662
|
+
//
|
|
16663
|
+
// The two slash forms are the interesting case: `deepseek` is a DIRECT
|
|
16664
|
+
// provider, so they parse as direct access and resolve through
|
|
16665
|
+
// `resolveDirectAccessModel`, which short-circuits slash-form catalog ids to
|
|
16666
|
+
// their catalog provider (`vercel`). An explicit entry here now wins over that
|
|
16667
|
+
// short-circuit — the same PROVIDER_ROUTING_CONFIG-wins precedence
|
|
16668
|
+
// `resolveRoutedFamily` already applies. The COLON form
|
|
16669
|
+
// (`deepseek:deepseek-v4-pro`) stays explicit direct-access by design.
|
|
16670
|
+
"deepseek-v4-pro": {
|
|
16671
|
+
providers: [
|
|
16672
|
+
{ provider: "workers-ai", weight: 100 }
|
|
16673
|
+
],
|
|
16674
|
+
fallback: ["vercel"]
|
|
16675
|
+
},
|
|
16676
|
+
"deepseek-v4-pro-0813": {
|
|
16677
|
+
providers: [
|
|
16678
|
+
{ provider: "workers-ai", weight: 100 }
|
|
16679
|
+
],
|
|
16680
|
+
fallback: ["vercel"]
|
|
16681
|
+
},
|
|
16682
|
+
"deepseek/deepseek-v4-pro": {
|
|
16683
|
+
providers: [
|
|
16684
|
+
{ provider: "workers-ai", weight: 100 }
|
|
16685
|
+
],
|
|
16686
|
+
fallback: ["vercel"]
|
|
16687
|
+
},
|
|
16688
|
+
"deepseek/deepseek-v4-pro-0813": {
|
|
16689
|
+
providers: [
|
|
16690
|
+
{ provider: "workers-ai", weight: 100 }
|
|
16691
|
+
],
|
|
16692
|
+
fallback: ["vercel"]
|
|
16693
|
+
},
|
|
16694
|
+
// DeepSeek V4 Flash - Route through Cloudflare Workers AI, fall back to the
|
|
16695
|
+
// Vercel AI Gateway. Same shape as V4 Pro above: Cloudflare serves the
|
|
16696
|
+
// date-pinned `@cf/deepseek-ai/deepseek-v4-flash-0731` build as its only V4
|
|
16697
|
+
// Flash variant, so every id form maps onto it and each slash form falls back
|
|
16698
|
+
// to its OWN Vercel listing (`deepseek` is a DIRECT provider, so the slash
|
|
16699
|
+
// forms need an explicit entry to escape `resolveDirectAccessModel`'s catalog
|
|
16700
|
+
// short-circuit).
|
|
16701
|
+
...workersAiPrimary(DEEPSEEK_V4_FLASH_IDS),
|
|
16702
|
+
// Qwen 3.8 27B is deliberately NOT routed to Workers AI: Cloudflare's build
|
|
16703
|
+
// accepts 262,144 tokens against the Vercel listing's 1,000,000, and the
|
|
16704
|
+
// fallback rung only engages when the AI binding is absent, so a long prompt
|
|
16705
|
+
// that succeeds on Vercel would fail outright. It stays on the generated
|
|
16706
|
+
// Vercel route.
|
|
16707
|
+
// Z.ai GLM-5.3 Flash - Route through Cloudflare Workers AI
|
|
16708
|
+
// (`@cf/zai-org/glm-5.3-flash`), fall back to the Vercel AI Gateway listing
|
|
16709
|
+
// (`zai/glm-5.3-flash`). Three id forms: bare family, dashed alias, and the
|
|
16710
|
+
// `zai/` gateway/catalog id surfaces pin.
|
|
16711
|
+
...workersAiPrimary(GLM_5_3_FLASH_IDS),
|
|
16712
|
+
// MiniMax M2.7 - Route exclusively through the Vercel AI Gateway.
|
|
16713
|
+
"minimax-m2.7": {
|
|
16714
|
+
providers: [
|
|
16715
|
+
{ provider: "vercel", weight: 100 }
|
|
16716
|
+
],
|
|
16717
|
+
fallback: []
|
|
16718
|
+
}
|
|
16719
|
+
};
|
|
16390
16720
|
var MANUAL_PROVIDER_MAP_OVERRIDES = {
|
|
16391
16721
|
// Bedrock uses different model ID format
|
|
16392
16722
|
"claude-sonnet-4-5": {
|
|
@@ -16476,6 +16806,11 @@ var MANUAL_PROVIDER_MAP_OVERRIDES = {
|
|
|
16476
16806
|
"workers-ai": "@cf/deepseek-ai/deepseek-v4-pro-0813",
|
|
16477
16807
|
"vercel": "deepseek/deepseek-v4-pro-0813"
|
|
16478
16808
|
},
|
|
16809
|
+
// Batch 2 of the Workers-AI-primary routes. Same rule as V4 Pro: Cloudflare
|
|
16810
|
+
// publishes only the date-pinned DeepSeek build, the bare families inherit
|
|
16811
|
+
// their `vercel` id from the generated map, and the slash forms declare it.
|
|
16812
|
+
...workersAiAliases("@cf/deepseek-ai/deepseek-v4-flash-0731", DEEPSEEK_V4_FLASH_IDS),
|
|
16813
|
+
...workersAiAliases("@cf/zai-org/glm-5.3-flash", GLM_5_3_FLASH_IDS),
|
|
16479
16814
|
// MiniMax M2.7: Vercel's gateway-form id.
|
|
16480
16815
|
"minimax-m2.7": {
|
|
16481
16816
|
"vercel": "minimax/minimax-m2.7"
|
|
@@ -16601,7 +16936,7 @@ var CREATOR_TO_PROVIDER = {
|
|
|
16601
16936
|
// Default fallback
|
|
16602
16937
|
};
|
|
16603
16938
|
|
|
16604
|
-
// ../shared/dist/chunk-
|
|
16939
|
+
// ../shared/dist/chunk-V4HDWTHW.mjs
|
|
16605
16940
|
var BUILTIN_TOOLS_LEAN = [
|
|
16606
16941
|
{ "id": "gpt-image-2", "name": "GPT Image 2", "category": "image_generation", "providers": ["multi"], "defaultConfig": { "size": "1024x1024", "quality": "low", "outputFormat": "png", "background": "auto" }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true },
|
|
16607
16942
|
{ "id": "dalle", "name": "DALL-E Image Generation", "category": "image_generation", "providers": ["multi"], "defaultConfig": { "size": "1024x1024", "quality": "standard", "style": "vivid" }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true, "hidden": true, "deprecated": true },
|
|
@@ -16638,8 +16973,8 @@ var BUILTIN_TOOLS_LEAN = [
|
|
|
16638
16973
|
{ "id": "search_runtype_docs", "name": "Search Runtype Docs", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false, "experimental": true },
|
|
16639
16974
|
{ "id": "elevenlabs-tts", "name": "ElevenLabs Text-to-Speech", "category": "text_to_speech", "toolGroup": "voice", "providers": ["multi"], "defaultConfig": { "voice_id": "rachel", "model_id": "eleven_multilingual_v2", "stability": 0.5, "similarity_boost": 0.75 }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true, "marginPercent": 20, "hidden": true },
|
|
16640
16975
|
{ "id": "elevenlabs-stt", "name": "ElevenLabs Speech-to-Text", "category": "text_to_speech", "toolGroup": "voice", "providers": ["multi"], "defaultConfig": { "format": "wav", "model_id": "scribe_v2" }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true, "marginPercent": 20, "hidden": true },
|
|
16641
|
-
{ "id": "emit_artifact_markdown", "name": "Emit Artifact (Markdown)", "category": "artifact", "providers": ["multi"], "executionHint": "platform"
|
|
16642
|
-
{ "id": "emit_artifact_component", "name": "Emit Artifact (Component)", "category": "artifact", "providers": ["multi"], "executionHint": "platform"
|
|
16976
|
+
{ "id": "emit_artifact_markdown", "name": "Emit Artifact (Markdown)", "category": "artifact", "providers": ["multi"], "executionHint": "platform" },
|
|
16977
|
+
{ "id": "emit_artifact_component", "name": "Emit Artifact (Component)", "category": "artifact", "providers": ["multi"], "executionHint": "platform" },
|
|
16643
16978
|
{ "id": "get_current_time", "name": "Get Current Time", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
16644
16979
|
{ "id": "convert_time", "name": "Convert Time Between Zones", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
16645
16980
|
{ "id": "time_difference", "name": "Time Difference", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
@@ -16827,7 +17162,7 @@ var BuiltInToolIdPrefix = {
|
|
|
16827
17162
|
PLATFORM: "platform"
|
|
16828
17163
|
};
|
|
16829
17164
|
|
|
16830
|
-
// ../shared/dist/chunk-
|
|
17165
|
+
// ../shared/dist/chunk-NWSU7U4C.mjs
|
|
16831
17166
|
function sanitizeToolNameForAiSdk(name) {
|
|
16832
17167
|
return name.replace(/[^a-zA-Z0-9_]/g, "_").toLowerCase().replace(/_+/g, "_").replace(/^_|_$/g, "");
|
|
16833
17168
|
}
|
|
@@ -19690,7 +20025,7 @@ var GRANOLA_INTEGRATION = {
|
|
|
19690
20025
|
]
|
|
19691
20026
|
};
|
|
19692
20027
|
|
|
19693
|
-
// ../shared/dist/chunk-
|
|
20028
|
+
// ../shared/dist/chunk-JXGM7PL7.mjs
|
|
19694
20029
|
var DEFAULT_MODELS_FOR_NEW_ACCOUNTS = [
|
|
19695
20030
|
// Mixlayer models
|
|
19696
20031
|
{
|
|
@@ -19769,7 +20104,8 @@ var DEFAULT_MODELS_FOR_NEW_ACCOUNTS = [
|
|
|
19769
20104
|
strengths: "Large open-weight reasoning and tool-use flagship with a 1M context at a low price \u2014 strong analytical depth where an open model is preferred.",
|
|
19770
20105
|
bestFor: ["deep-reasoning", "agentic-tools", "long-context"]
|
|
19771
20106
|
},
|
|
19772
|
-
// DeepSeek
|
|
20107
|
+
// DeepSeek V4 Flash (routed via Cloudflare Workers AI, Vercel fallback). The
|
|
20108
|
+
// bare routed name resolves to `@cf/deepseek-ai/deepseek-v4-flash-0731`.
|
|
19773
20109
|
{
|
|
19774
20110
|
provider: "runtype",
|
|
19775
20111
|
modelId: "deepseek-v4-flash",
|
|
@@ -22005,6 +22341,10 @@ function neutralizeCsvFormula(value) {
|
|
|
22005
22341
|
if (STRICT_NUMBER.test(value)) return value;
|
|
22006
22342
|
return `'${value}`;
|
|
22007
22343
|
}
|
|
22344
|
+
var REPLAY_FROM_START = Object.freeze({
|
|
22345
|
+
row: 0,
|
|
22346
|
+
sub: Number.POSITIVE_INFINITY
|
|
22347
|
+
});
|
|
22008
22348
|
var agUiRoleSchema = external_exports.enum(["developer", "system", "assistant", "user", "tool"]);
|
|
22009
22349
|
var runStartedEventSchema = external_exports.object({
|
|
22010
22350
|
type: external_exports.literal("RUN_STARTED"),
|
|
@@ -29135,7 +29475,14 @@ var userProfileFeaturesSchema = external_exports.object({
|
|
|
29135
29475
|
// marker column has been dropped. Both are kept on the wire for compatibility
|
|
29136
29476
|
// with deployed SPA bundles and the published SDK.
|
|
29137
29477
|
workspaceModelReady: external_exports.boolean(),
|
|
29138
|
-
workspaceModelEligible: external_exports.boolean()
|
|
29478
|
+
workspaceModelEligible: external_exports.boolean(),
|
|
29479
|
+
// Active model credit promo factor for this account (ADR 0021): `0.5` means
|
|
29480
|
+
// promo-eligible models (Workers AI, Gemini) bill at 50% of nominal
|
|
29481
|
+
// platform-key cost; `1` means no promo. Driven by the
|
|
29482
|
+
// `model-credit-promo-multiplier` number flag, already clamped to `[0, 1]`.
|
|
29483
|
+
// The dashboard renders discount badges from it using the shared
|
|
29484
|
+
// `isModelCreditPromoEligible` predicate; billing never trusts the client.
|
|
29485
|
+
modelCreditPromoMultiplier: external_exports.number().min(0).max(1).optional()
|
|
29139
29486
|
});
|
|
29140
29487
|
var SLACK_REQUIRED_BOT_SCOPES = [
|
|
29141
29488
|
"channels:history",
|
|
@@ -29295,11 +29642,12 @@ var sandboxConfigSchema = external_exports.object({
|
|
|
29295
29642
|
// stored `'named'` config still loads; it just behaves as `'ephemeral'`.
|
|
29296
29643
|
persistence: external_exports.enum(["ephemeral", "conversation", "named"]).optional(),
|
|
29297
29644
|
// INERT on the agent sandbox path: `instanceType` is NOT honored — the agent
|
|
29298
|
-
// sandbox always provisions `standard-
|
|
29299
|
-
//
|
|
29300
|
-
//
|
|
29301
|
-
//
|
|
29302
|
-
//
|
|
29645
|
+
// sandbox always provisions `standard-4` (the blanket default fixed by
|
|
29646
|
+
// apps/sandbox/wrangler.toml `[[containers]]`) regardless of this value (the
|
|
29647
|
+
// value is read for the transform-data/deploy sandbox billing paths, not for
|
|
29648
|
+
// the agent builtin tools). Kept parseable for forward-compat + mirror
|
|
29649
|
+
// alignment; treat it as a no-op author-time hint until the agent path wires
|
|
29650
|
+
// per-plan container sizing.
|
|
29303
29651
|
instanceType: external_exports.enum(["standard-1", "standard-2", "standard-3", "standard-4"]).optional(),
|
|
29304
29652
|
networkAccess: sandboxNetworkAccessSchema.optional(),
|
|
29305
29653
|
ttl: external_exports.enum(["5m", "1h", "24h", "unlimited"]).optional(),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@runtypelabs/cli",
|
|
3
|
-
"version": "2.35.
|
|
3
|
+
"version": "2.35.1",
|
|
4
4
|
"description": "Command-line interface for Runtype AI platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -26,9 +26,9 @@
|
|
|
26
26
|
"react": "^19.2.8",
|
|
27
27
|
"rosie-skills": "0.8.1",
|
|
28
28
|
"yaml": "^2.9.0",
|
|
29
|
+
"@runtypelabs/sdk": "9.2.1",
|
|
29
30
|
"@runtypelabs/ink-components": "0.3.7",
|
|
30
|
-
"@runtypelabs/terminal-animations": "0.2.4"
|
|
31
|
-
"@runtypelabs/sdk": "9.2.0"
|
|
31
|
+
"@runtypelabs/terminal-animations": "0.2.4"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@modelcontextprotocol/server": "2.0.0",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"tsx": "^4.7.1",
|
|
44
44
|
"typescript": "^6.0.3",
|
|
45
45
|
"vitest": "^4.1.0",
|
|
46
|
-
"@runtypelabs/shared": "3.
|
|
46
|
+
"@runtypelabs/shared": "3.34.2"
|
|
47
47
|
},
|
|
48
48
|
"engines": {
|
|
49
49
|
"node": ">=22.12.0"
|