@runtypelabs/cli 2.10.8 → 2.10.9
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 +82 -5
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -57,6 +57,7 @@ var require_default_models = __commonJS({
|
|
|
57
57
|
// OpenAI models (routed via OpenAI direct, with Vercel fallback)
|
|
58
58
|
{ provider: "runtype", modelId: "gpt-5.4", isDefault: false },
|
|
59
59
|
{ provider: "runtype", modelId: "gpt-5.4-mini", isDefault: false },
|
|
60
|
+
{ provider: "runtype", modelId: "gpt-5.4-nano", isDefault: false },
|
|
60
61
|
// Anthropic models (routed via Anthropic direct, with Vertex/Bedrock fallback)
|
|
61
62
|
{ provider: "runtype", modelId: "claude-sonnet-4-6", isDefault: false },
|
|
62
63
|
{ provider: "runtype", modelId: "claude-haiku-4-5", isDefault: false },
|
|
@@ -69,7 +70,13 @@ var require_default_models = __commonJS({
|
|
|
69
70
|
{ provider: "runtype", modelId: "grok-4", isDefault: false },
|
|
70
71
|
{ provider: "runtype", modelId: "grok-4-fast", isDefault: false },
|
|
71
72
|
// Inception models (routed via Vercel)
|
|
72
|
-
{ provider: "runtype", modelId: "mercury-2", isDefault: false }
|
|
73
|
+
{ provider: "runtype", modelId: "mercury-2", isDefault: false },
|
|
74
|
+
// Moonshot models (routed via Cloudflare Workers AI)
|
|
75
|
+
{ provider: "runtype", modelId: "kimi-k2.5", isDefault: false },
|
|
76
|
+
// NVIDIA models (routed via Cloudflare Workers AI)
|
|
77
|
+
{ provider: "runtype", modelId: "nemotron-3-120b-a12b", isDefault: false },
|
|
78
|
+
// Google models (routed via Cloudflare Workers AI)
|
|
79
|
+
{ provider: "runtype", modelId: "gemma-4-26b-a4b-it", isDefault: false }
|
|
73
80
|
];
|
|
74
81
|
exports.DEFAULT_MODEL_ID = (_b = (_a = exports.DEFAULT_MODELS_FOR_NEW_ACCOUNTS.find((m) => m.isDefault)) === null || _a === void 0 ? void 0 : _a.modelId) !== null && _b !== void 0 ? _b : "qwen/qwen3.5-9b";
|
|
75
82
|
exports.FALLBACK_MODEL_ID = "gpt-5.4-nano";
|
|
@@ -14448,7 +14455,7 @@ var require_provider_routing = __commonJS({
|
|
|
14448
14455
|
"../shared/dist/provider-routing.js"(exports) {
|
|
14449
14456
|
"use strict";
|
|
14450
14457
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14451
|
-
exports.GATEWAY_PROVIDERS = exports.INFERENCE_PROVIDERS = exports.DIRECT_PROVIDERS = exports.ROUTED_MODEL_DISPLAY_NAMES = exports.BASE_MODEL_PROVIDER_MAP = exports.PROVIDER_ROUTING_CONFIG = exports.PROVIDER_API_KEY_MAP = exports.PLATFORM_KEY_PROVIDERS = void 0;
|
|
14458
|
+
exports.GATEWAY_PROVIDERS = exports.INFERENCE_PROVIDERS = exports.DIRECT_PROVIDERS = exports.ROUTED_MODEL_DISPLAY_NAMES = exports.BASE_MODEL_PROVIDER_MAP = exports.PROVIDER_ROUTING_CONFIG = exports.CLOUDFLARE_GATEWAY_ALLOWLIST = exports.PROVIDER_API_KEY_MAP = exports.PLATFORM_KEY_PROVIDERS = void 0;
|
|
14452
14459
|
exports.isRoutedModel = isRoutedModel;
|
|
14453
14460
|
exports.isDirectAccess = isDirectAccess;
|
|
14454
14461
|
exports.isGatewayAccess = isGatewayAccess;
|
|
@@ -14470,8 +14477,10 @@ var require_provider_routing = __commonJS({
|
|
|
14470
14477
|
exports.inferModelCreator = inferModelCreator2;
|
|
14471
14478
|
exports.getDefaultProvider = getDefaultProvider;
|
|
14472
14479
|
exports.isVercelSupported = isVercelSupported;
|
|
14480
|
+
exports.isCloudflareSupported = isCloudflareSupported;
|
|
14473
14481
|
exports.generateVercelModelId = generateVercelModelId;
|
|
14474
14482
|
exports.getDefaultRoutingConfig = getDefaultRoutingConfig;
|
|
14483
|
+
exports.generateCloudflareModelId = generateCloudflareModelId;
|
|
14475
14484
|
exports.getDefaultProviderMapping = getDefaultProviderMapping;
|
|
14476
14485
|
exports.getRoutingConfigWithDefaults = getRoutingConfigWithDefaults;
|
|
14477
14486
|
exports.getProviderModelIdWithDefaults = getProviderModelIdWithDefaults;
|
|
@@ -14482,7 +14491,8 @@ var require_provider_routing = __commonJS({
|
|
|
14482
14491
|
"anthropic",
|
|
14483
14492
|
"google",
|
|
14484
14493
|
"xai",
|
|
14485
|
-
"vercel"
|
|
14494
|
+
"vercel",
|
|
14495
|
+
"cloudflare"
|
|
14486
14496
|
]);
|
|
14487
14497
|
exports.PROVIDER_API_KEY_MAP = {
|
|
14488
14498
|
"openai": "openaiKey",
|
|
@@ -14491,6 +14501,7 @@ var require_provider_routing = __commonJS({
|
|
|
14491
14501
|
"xai": "xaiKey",
|
|
14492
14502
|
"mixlayer": "modelsocketKey",
|
|
14493
14503
|
"vercel": "vercelGatewayKey",
|
|
14504
|
+
"cloudflare": "cloudflareGatewayToken",
|
|
14494
14505
|
"togetherai": "togetheraiKey",
|
|
14495
14506
|
"bedrock": "bedrockAccessKey",
|
|
14496
14507
|
// Also needs bedrockSecretKey
|
|
@@ -14507,6 +14518,9 @@ var require_provider_routing = __commonJS({
|
|
|
14507
14518
|
"mock": null
|
|
14508
14519
|
// Dev-only, no API key needed
|
|
14509
14520
|
};
|
|
14521
|
+
exports.CLOUDFLARE_GATEWAY_ALLOWLIST = /* @__PURE__ */ new Set([
|
|
14522
|
+
"gpt-5.4-nano"
|
|
14523
|
+
]);
|
|
14510
14524
|
exports.PROVIDER_ROUTING_CONFIG = {
|
|
14511
14525
|
// Claude 4.5 Sonnet - Route through Vercel AI Gateway
|
|
14512
14526
|
"claude-sonnet-4-5": {
|
|
@@ -14556,6 +14570,20 @@ var require_provider_routing = __commonJS({
|
|
|
14556
14570
|
],
|
|
14557
14571
|
fallback: ["openai"]
|
|
14558
14572
|
},
|
|
14573
|
+
// GPT-5.3 Codex - completion model, route through Vercel + OpenAI fallback
|
|
14574
|
+
"gpt-5.3-codex": {
|
|
14575
|
+
providers: [
|
|
14576
|
+
{ provider: "vercel", weight: 100 }
|
|
14577
|
+
],
|
|
14578
|
+
fallback: ["openai"]
|
|
14579
|
+
},
|
|
14580
|
+
// GPT-5.4 Nano - CF Gateway primary for testing, Vercel + OpenAI as fallback
|
|
14581
|
+
"gpt-5.4-nano": {
|
|
14582
|
+
providers: [
|
|
14583
|
+
{ provider: "cloudflare", weight: 100 }
|
|
14584
|
+
],
|
|
14585
|
+
fallback: ["vercel", "openai"]
|
|
14586
|
+
},
|
|
14559
14587
|
// Gemini 2.5 Pro - Route through Vercel AI Gateway
|
|
14560
14588
|
"gemini-2.5-pro": {
|
|
14561
14589
|
providers: [
|
|
@@ -14653,6 +14681,26 @@ var require_provider_routing = __commonJS({
|
|
|
14653
14681
|
{ provider: "vercel", weight: 100 }
|
|
14654
14682
|
],
|
|
14655
14683
|
fallback: ["openai"]
|
|
14684
|
+
},
|
|
14685
|
+
// Kimi K2.5 - Route through Cloudflare Workers AI
|
|
14686
|
+
"kimi-k2.5": {
|
|
14687
|
+
providers: [
|
|
14688
|
+
{ provider: "workers-ai", weight: 100 }
|
|
14689
|
+
],
|
|
14690
|
+
fallback: ["vercel"]
|
|
14691
|
+
},
|
|
14692
|
+
// NVIDIA Nemotron-3 120B - Route through Cloudflare Workers AI (no Vercel equivalent)
|
|
14693
|
+
"nemotron-3-120b-a12b": {
|
|
14694
|
+
providers: [
|
|
14695
|
+
{ provider: "workers-ai", weight: 100 }
|
|
14696
|
+
]
|
|
14697
|
+
},
|
|
14698
|
+
// Google Gemma 4 26B - Route through Cloudflare Workers AI
|
|
14699
|
+
"gemma-4-26b-a4b-it": {
|
|
14700
|
+
providers: [
|
|
14701
|
+
{ provider: "workers-ai", weight: 100 }
|
|
14702
|
+
],
|
|
14703
|
+
fallback: ["vercel"]
|
|
14656
14704
|
}
|
|
14657
14705
|
};
|
|
14658
14706
|
var MANUAL_PROVIDER_MAP_OVERRIDES = {
|
|
@@ -14677,6 +14725,15 @@ var require_provider_routing = __commonJS({
|
|
|
14677
14725
|
},
|
|
14678
14726
|
"deepseek-v3": {
|
|
14679
14727
|
"togetherai": "togetherai/deepseek-ai/DeepSeek-V3"
|
|
14728
|
+
},
|
|
14729
|
+
"kimi-k2.5": {
|
|
14730
|
+
"workers-ai": "@cf/moonshotai/kimi-k2.5"
|
|
14731
|
+
},
|
|
14732
|
+
"nemotron-3-120b-a12b": {
|
|
14733
|
+
"workers-ai": "@cf/nvidia/nemotron-3-120b-a12b"
|
|
14734
|
+
},
|
|
14735
|
+
"gemma-4-26b-a4b-it": {
|
|
14736
|
+
"workers-ai": "@cf/google/gemma-4-26b-a4b-it"
|
|
14680
14737
|
}
|
|
14681
14738
|
};
|
|
14682
14739
|
exports.BASE_MODEL_PROVIDER_MAP = (() => {
|
|
@@ -14802,10 +14859,12 @@ var require_provider_routing = __commonJS({
|
|
|
14802
14859
|
"vertex-anthropic",
|
|
14803
14860
|
"tinfoil",
|
|
14804
14861
|
"generic-openai",
|
|
14805
|
-
"mock"
|
|
14862
|
+
"mock",
|
|
14863
|
+
"workers-ai"
|
|
14806
14864
|
]);
|
|
14807
14865
|
exports.GATEWAY_PROVIDERS = /* @__PURE__ */ new Set([
|
|
14808
14866
|
"vercel",
|
|
14867
|
+
"cloudflare",
|
|
14809
14868
|
"openrouter",
|
|
14810
14869
|
"azure"
|
|
14811
14870
|
]);
|
|
@@ -15145,6 +15204,9 @@ var require_provider_routing = __commonJS({
|
|
|
15145
15204
|
const creator = inferModelCreator2(modelId);
|
|
15146
15205
|
return !NON_VERCEL_CREATORS.has(creator);
|
|
15147
15206
|
}
|
|
15207
|
+
function isCloudflareSupported(modelId) {
|
|
15208
|
+
return exports.CLOUDFLARE_GATEWAY_ALLOWLIST.has(modelId);
|
|
15209
|
+
}
|
|
15148
15210
|
var CREATOR_TO_VERCEL_PROVIDER = {
|
|
15149
15211
|
"openai": "openai",
|
|
15150
15212
|
"anthropic": "anthropic",
|
|
@@ -15177,18 +15239,33 @@ var require_provider_routing = __commonJS({
|
|
|
15177
15239
|
const config2 = {
|
|
15178
15240
|
providers: [{ provider: "vercel", weight: 100 }]
|
|
15179
15241
|
};
|
|
15242
|
+
const fallbacks = [];
|
|
15243
|
+
if (isCloudflareSupported(baseModel)) {
|
|
15244
|
+
fallbacks.push("cloudflare");
|
|
15245
|
+
}
|
|
15180
15246
|
const fallbackProvider = getFallbackProvider(creator);
|
|
15181
15247
|
if (fallbackProvider) {
|
|
15182
|
-
|
|
15248
|
+
fallbacks.push(fallbackProvider);
|
|
15249
|
+
}
|
|
15250
|
+
if (fallbacks.length > 0) {
|
|
15251
|
+
config2.fallback = fallbacks;
|
|
15183
15252
|
}
|
|
15184
15253
|
return config2;
|
|
15185
15254
|
}
|
|
15255
|
+
function generateCloudflareModelId(modelId) {
|
|
15256
|
+
const creator = inferModelCreator2(modelId);
|
|
15257
|
+
const cfProvider = CREATOR_TO_VERCEL_PROVIDER[creator] || creator;
|
|
15258
|
+
return `${cfProvider}/${modelId}`;
|
|
15259
|
+
}
|
|
15186
15260
|
function getDefaultProviderMapping(baseModel) {
|
|
15187
15261
|
const creator = inferModelCreator2(baseModel);
|
|
15188
15262
|
const mapping = {};
|
|
15189
15263
|
if (isVercelSupported(baseModel)) {
|
|
15190
15264
|
mapping["vercel"] = generateVercelModelId(baseModel);
|
|
15191
15265
|
}
|
|
15266
|
+
if (isCloudflareSupported(baseModel)) {
|
|
15267
|
+
mapping["cloudflare"] = generateCloudflareModelId(baseModel);
|
|
15268
|
+
}
|
|
15192
15269
|
const fallbackProvider = getFallbackProvider(creator);
|
|
15193
15270
|
if (fallbackProvider) {
|
|
15194
15271
|
mapping[fallbackProvider] = baseModel;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@runtypelabs/cli",
|
|
3
|
-
"version": "2.10.
|
|
3
|
+
"version": "2.10.9",
|
|
4
4
|
"description": "Command-line interface for Runtype AI platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"micromatch": "^4.0.8",
|
|
24
24
|
"yaml": "^2.8.3",
|
|
25
25
|
"@runtypelabs/ink-components": "0.3.1",
|
|
26
|
-
"@runtypelabs/sdk": "1.
|
|
26
|
+
"@runtypelabs/sdk": "1.16.0",
|
|
27
27
|
"@runtypelabs/terminal-animations": "0.2.0"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"tsx": "^4.7.1",
|
|
38
38
|
"typescript": "^5.3.3",
|
|
39
39
|
"vitest": "^4.0.18",
|
|
40
|
-
"@runtypelabs/shared": "1.4.
|
|
40
|
+
"@runtypelabs/shared": "1.4.3"
|
|
41
41
|
},
|
|
42
42
|
"engines": {
|
|
43
43
|
"node": ">=18.0.0"
|