@vm0/cli 9.62.3 → 9.62.5
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/index.js +69 -46
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -45,7 +45,7 @@ if (DSN) {
|
|
|
45
45
|
Sentry.init({
|
|
46
46
|
dsn: DSN,
|
|
47
47
|
environment: process.env.SENTRY_ENVIRONMENT ?? "production",
|
|
48
|
-
release: "9.62.
|
|
48
|
+
release: "9.62.5",
|
|
49
49
|
sendDefaultPii: false,
|
|
50
50
|
tracesSampleRate: 0,
|
|
51
51
|
shutdownTimeout: 500,
|
|
@@ -64,7 +64,7 @@ if (DSN) {
|
|
|
64
64
|
}
|
|
65
65
|
});
|
|
66
66
|
Sentry.setContext("cli", {
|
|
67
|
-
version: "9.62.
|
|
67
|
+
version: "9.62.5",
|
|
68
68
|
command: process.argv.slice(2).join(" ")
|
|
69
69
|
});
|
|
70
70
|
Sentry.setContext("runtime", {
|
|
@@ -673,7 +673,7 @@ function getConfigPath() {
|
|
|
673
673
|
return join2(homedir2(), ".vm0", "config.json");
|
|
674
674
|
}
|
|
675
675
|
var infoCommand = new Command6().name("info").description("Display environment and debug information").action(async () => {
|
|
676
|
-
console.log(chalk4.bold(`VM0 CLI v${"9.62.
|
|
676
|
+
console.log(chalk4.bold(`VM0 CLI v${"9.62.5"}`));
|
|
677
677
|
console.log();
|
|
678
678
|
const config = await loadConfig();
|
|
679
679
|
const hasEnvToken = !!process.env.VM0_TOKEN;
|
|
@@ -801,7 +801,7 @@ var firewallSchema = z3.object({
|
|
|
801
801
|
ref: z3.string(),
|
|
802
802
|
apis: z3.array(firewallApiSchema)
|
|
803
803
|
});
|
|
804
|
-
var
|
|
804
|
+
var experimentalFirewallsSchema = z3.array(firewallSchema);
|
|
805
805
|
var firewallConfigSchema = z3.object({
|
|
806
806
|
name: z3.string().min(1, "Firewall name is required"),
|
|
807
807
|
description: z3.string().optional(),
|
|
@@ -817,10 +817,10 @@ var composeVersionQuerySchema = z4.string().min(1, "Missing version query parame
|
|
|
817
817
|
);
|
|
818
818
|
var AGENT_NAME_REGEX = /^[a-zA-Z0-9][a-zA-Z0-9-]{1,62}[a-zA-Z0-9]$/;
|
|
819
819
|
var VALID_CAPABILITIES = [
|
|
820
|
-
"storage:read",
|
|
821
|
-
"storage:write",
|
|
822
820
|
"agent:read",
|
|
823
821
|
"agent:write",
|
|
822
|
+
"artifact:read",
|
|
823
|
+
"artifact:write",
|
|
824
824
|
"agent-run:read",
|
|
825
825
|
"agent-run:write",
|
|
826
826
|
"schedule:read",
|
|
@@ -869,7 +869,7 @@ var agentDefinitionSchema = z4.object({
|
|
|
869
869
|
* CLI input: map format { slack: { permissions: [...] | "all" } }
|
|
870
870
|
* — expanded by CLI to full ExpandedFirewallConfig[] before API call.
|
|
871
871
|
*/
|
|
872
|
-
|
|
872
|
+
experimental_firewalls: z4.record(
|
|
873
873
|
z4.string(),
|
|
874
874
|
z4.object({
|
|
875
875
|
permissions: z4.union([z4.literal("all"), z4.array(z4.string()).min(1)])
|
|
@@ -928,7 +928,7 @@ var agentComposeApiContentSchema = z4.object({
|
|
|
928
928
|
agents: z4.record(
|
|
929
929
|
z4.string(),
|
|
930
930
|
agentDefinitionSchema.extend({
|
|
931
|
-
|
|
931
|
+
experimental_firewalls: z4.array(expandedFirewallConfigSchema).optional()
|
|
932
932
|
})
|
|
933
933
|
),
|
|
934
934
|
volumes: z4.record(z4.string(), volumeConfigSchema).optional()
|
|
@@ -1169,11 +1169,11 @@ var orgDefaultAgentContract = c2.router({
|
|
|
1169
1169
|
org: z5.string().optional()
|
|
1170
1170
|
}),
|
|
1171
1171
|
body: z5.object({
|
|
1172
|
-
agentComposeId: z5.
|
|
1172
|
+
agentComposeId: z5.uuid().nullable()
|
|
1173
1173
|
}),
|
|
1174
1174
|
responses: {
|
|
1175
1175
|
200: z5.object({
|
|
1176
|
-
agentComposeId: z5.
|
|
1176
|
+
agentComposeId: z5.uuid().nullable()
|
|
1177
1177
|
}),
|
|
1178
1178
|
400: apiErrorSchema,
|
|
1179
1179
|
401: apiErrorSchema,
|
|
@@ -1723,7 +1723,7 @@ var storageChangesSchema = z7.object({
|
|
|
1723
1723
|
});
|
|
1724
1724
|
var presignedUploadSchema = z7.object({
|
|
1725
1725
|
key: z7.string(),
|
|
1726
|
-
presignedUrl: z7.
|
|
1726
|
+
presignedUrl: z7.url()
|
|
1727
1727
|
});
|
|
1728
1728
|
var storagesPrepareContract = c4.router({
|
|
1729
1729
|
prepare: {
|
|
@@ -1808,7 +1808,7 @@ var storagesDownloadContract = c4.router({
|
|
|
1808
1808
|
// Normal response with presigned URL
|
|
1809
1809
|
200: z7.union([
|
|
1810
1810
|
z7.object({
|
|
1811
|
-
url: z7.
|
|
1811
|
+
url: z7.url(),
|
|
1812
1812
|
versionId: z7.string(),
|
|
1813
1813
|
fileCount: z7.number(),
|
|
1814
1814
|
size: z7.number()
|
|
@@ -2313,7 +2313,7 @@ var secretNameSchema = z12.string().min(1, "Secret name is required").max(255, "
|
|
|
2313
2313
|
);
|
|
2314
2314
|
var secretTypeSchema = z12.enum(["user", "model-provider", "connector"]);
|
|
2315
2315
|
var secretResponseSchema = z12.object({
|
|
2316
|
-
id: z12.
|
|
2316
|
+
id: z12.uuid(),
|
|
2317
2317
|
name: z12.string(),
|
|
2318
2318
|
description: z12.string().nullable(),
|
|
2319
2319
|
type: secretTypeSchema,
|
|
@@ -2412,7 +2412,7 @@ var variableNameSchema = z13.string().min(1, "Variable name is required").max(25
|
|
|
2412
2412
|
"Variable name must contain only uppercase letters, numbers, and underscores, and must start with a letter (e.g., MY_VAR)"
|
|
2413
2413
|
);
|
|
2414
2414
|
var variableResponseSchema = z13.object({
|
|
2415
|
-
id: z13.
|
|
2415
|
+
id: z13.uuid(),
|
|
2416
2416
|
name: z13.string(),
|
|
2417
2417
|
value: z13.string(),
|
|
2418
2418
|
description: z13.string().nullable(),
|
|
@@ -2538,6 +2538,8 @@ var MODEL_PROVIDER_TYPES = {
|
|
|
2538
2538
|
CLAUDE_CODE_SUBAGENT_MODEL: "$model"
|
|
2539
2539
|
},
|
|
2540
2540
|
models: [
|
|
2541
|
+
"anthropic/claude-sonnet-4.6",
|
|
2542
|
+
"anthropic/claude-opus-4.6",
|
|
2541
2543
|
"anthropic/claude-sonnet-4.5",
|
|
2542
2544
|
"anthropic/claude-opus-4.5",
|
|
2543
2545
|
"anthropic/claude-haiku-4.5"
|
|
@@ -2625,6 +2627,21 @@ var MODEL_PROVIDER_TYPES = {
|
|
|
2625
2627
|
models: ["glm-5", "glm-4.7", "glm-4.5-air"],
|
|
2626
2628
|
defaultModel: "glm-4.7"
|
|
2627
2629
|
},
|
|
2630
|
+
"vercel-ai-gateway": {
|
|
2631
|
+
framework: "claude-code",
|
|
2632
|
+
secretName: "VERCEL_AI_GATEWAY_API_KEY",
|
|
2633
|
+
label: "Vercel AI Gateway",
|
|
2634
|
+
secretLabel: "API key",
|
|
2635
|
+
helpText: "Get your API key from the Vercel AI Gateway dashboard",
|
|
2636
|
+
featureFlag: "vercelAiGateway" /* VercelAiGateway */,
|
|
2637
|
+
environmentMapping: {
|
|
2638
|
+
ANTHROPIC_AUTH_TOKEN: "$secret",
|
|
2639
|
+
ANTHROPIC_BASE_URL: "https://ai-gateway.vercel.sh",
|
|
2640
|
+
ANTHROPIC_API_KEY: "",
|
|
2641
|
+
ANTHROPIC_MODEL: "moonshotai/kimi-k2.5",
|
|
2642
|
+
ANTHROPIC_CUSTOM_HEADERS: "x-ai-gateway-providers-only: moonshot"
|
|
2643
|
+
}
|
|
2644
|
+
},
|
|
2628
2645
|
"azure-foundry": {
|
|
2629
2646
|
framework: "claude-code",
|
|
2630
2647
|
label: "Azure Foundry",
|
|
@@ -2734,6 +2751,7 @@ var modelProviderTypeSchema = z14.enum([
|
|
|
2734
2751
|
"minimax-api-key",
|
|
2735
2752
|
"deepseek-api-key",
|
|
2736
2753
|
"zai-api-key",
|
|
2754
|
+
"vercel-ai-gateway",
|
|
2737
2755
|
"azure-foundry",
|
|
2738
2756
|
"aws-bedrock"
|
|
2739
2757
|
]);
|
|
@@ -2779,7 +2797,7 @@ function getCustomModelPlaceholder(type2) {
|
|
|
2779
2797
|
return "customModelPlaceholder" in config ? config.customModelPlaceholder : void 0;
|
|
2780
2798
|
}
|
|
2781
2799
|
var modelProviderResponseSchema = z14.object({
|
|
2782
|
-
id: z14.
|
|
2800
|
+
id: z14.uuid(),
|
|
2783
2801
|
type: modelProviderTypeSchema,
|
|
2784
2802
|
framework: modelProviderFrameworkSchema,
|
|
2785
2803
|
secretName: z14.string().nullable(),
|
|
@@ -3081,11 +3099,11 @@ var runnerGroupSchema = z16.string().regex(
|
|
|
3081
3099
|
"Runner group must be in org/name format (e.g., acme/production)"
|
|
3082
3100
|
);
|
|
3083
3101
|
var jobSchema = z16.object({
|
|
3084
|
-
runId: z16.
|
|
3102
|
+
runId: z16.uuid(),
|
|
3085
3103
|
prompt: z16.string(),
|
|
3086
3104
|
agentComposeVersionId: z16.string().nullable(),
|
|
3087
3105
|
vars: z16.record(z16.string(), z16.string()).nullable(),
|
|
3088
|
-
checkpointId: z16.
|
|
3106
|
+
checkpointId: z16.uuid().nullable()
|
|
3089
3107
|
});
|
|
3090
3108
|
var runnersPollContract = c13.router({
|
|
3091
3109
|
poll: {
|
|
@@ -3147,16 +3165,16 @@ var storedExecutionContextSchema = z16.object({
|
|
|
3147
3165
|
// Memory storage name (for first-run when manifest.memory is null)
|
|
3148
3166
|
memoryName: z16.string().optional(),
|
|
3149
3167
|
// Experimental firewall for proxy-side token replacement
|
|
3150
|
-
|
|
3168
|
+
experimentalFirewalls: experimentalFirewallsSchema.optional(),
|
|
3151
3169
|
// Experimental capabilities for agent permission enforcement
|
|
3152
3170
|
experimentalCapabilities: z16.array(z16.enum(VALID_CAPABILITIES)).optional()
|
|
3153
3171
|
});
|
|
3154
3172
|
var executionContextSchema = z16.object({
|
|
3155
|
-
runId: z16.
|
|
3173
|
+
runId: z16.uuid(),
|
|
3156
3174
|
prompt: z16.string(),
|
|
3157
3175
|
agentComposeVersionId: z16.string().nullable(),
|
|
3158
3176
|
vars: z16.record(z16.string(), z16.string()).nullable(),
|
|
3159
|
-
checkpointId: z16.
|
|
3177
|
+
checkpointId: z16.uuid().nullable(),
|
|
3160
3178
|
sandboxToken: z16.string(),
|
|
3161
3179
|
// New fields for E2B parity:
|
|
3162
3180
|
workingDir: z16.string(),
|
|
@@ -3181,7 +3199,7 @@ var executionContextSchema = z16.object({
|
|
|
3181
3199
|
// Memory storage name (for first-run when manifest.memory is null)
|
|
3182
3200
|
memoryName: z16.string().optional(),
|
|
3183
3201
|
// Experimental firewall for proxy-side token replacement
|
|
3184
|
-
|
|
3202
|
+
experimentalFirewalls: experimentalFirewallsSchema.optional(),
|
|
3185
3203
|
// Experimental capabilities for agent permission enforcement
|
|
3186
3204
|
experimentalCapabilities: z16.array(z16.enum(VALID_CAPABILITIES)).optional()
|
|
3187
3205
|
});
|
|
@@ -3191,7 +3209,7 @@ var runnersJobClaimContract = c13.router({
|
|
|
3191
3209
|
path: "/api/runners/jobs/:id/claim",
|
|
3192
3210
|
headers: authHeadersSchema,
|
|
3193
3211
|
pathParams: z16.object({
|
|
3194
|
-
id: z16.
|
|
3212
|
+
id: z16.uuid()
|
|
3195
3213
|
}),
|
|
3196
3214
|
body: z16.object({}),
|
|
3197
3215
|
responses: {
|
|
@@ -3275,8 +3293,8 @@ var deployScheduleRequestSchema = z17.object({
|
|
|
3275
3293
|
}
|
|
3276
3294
|
);
|
|
3277
3295
|
var scheduleResponseSchema = z17.object({
|
|
3278
|
-
id: z17.
|
|
3279
|
-
composeId: z17.
|
|
3296
|
+
id: z17.uuid(),
|
|
3297
|
+
composeId: z17.uuid(),
|
|
3280
3298
|
composeName: z17.string(),
|
|
3281
3299
|
orgSlug: z17.string(),
|
|
3282
3300
|
userId: z17.string(),
|
|
@@ -3304,7 +3322,7 @@ var scheduleResponseSchema = z17.object({
|
|
|
3304
3322
|
updatedAt: z17.string()
|
|
3305
3323
|
});
|
|
3306
3324
|
var runSummarySchema = z17.object({
|
|
3307
|
-
id: z17.
|
|
3325
|
+
id: z17.uuid(),
|
|
3308
3326
|
status: z17.enum([
|
|
3309
3327
|
"queued",
|
|
3310
3328
|
"pending",
|
|
@@ -3544,7 +3562,7 @@ var platformLogStatusSchema = z19.enum([
|
|
|
3544
3562
|
"cancelled"
|
|
3545
3563
|
]);
|
|
3546
3564
|
var platformLogEntrySchema = z19.object({
|
|
3547
|
-
id: z19.
|
|
3565
|
+
id: z19.uuid(),
|
|
3548
3566
|
sessionId: z19.string().nullable(),
|
|
3549
3567
|
agentName: z19.string(),
|
|
3550
3568
|
orgSlug: z19.string().nullable(),
|
|
@@ -3563,7 +3581,7 @@ var artifactSchema = z19.object({
|
|
|
3563
3581
|
version: z19.string().nullable()
|
|
3564
3582
|
});
|
|
3565
3583
|
var platformLogDetailSchema = z19.object({
|
|
3566
|
-
id: z19.
|
|
3584
|
+
id: z19.uuid(),
|
|
3567
3585
|
sessionId: z19.string().nullable(),
|
|
3568
3586
|
agentName: z19.string(),
|
|
3569
3587
|
framework: z19.string().nullable(),
|
|
@@ -3610,7 +3628,7 @@ var platformLogsByIdContract = c16.router({
|
|
|
3610
3628
|
}
|
|
3611
3629
|
});
|
|
3612
3630
|
var artifactDownloadResponseSchema = z19.object({
|
|
3613
|
-
url: z19.
|
|
3631
|
+
url: z19.url(),
|
|
3614
3632
|
expiresAt: z19.string()
|
|
3615
3633
|
});
|
|
3616
3634
|
var platformArtifactDownloadContract = c16.router({
|
|
@@ -3648,7 +3666,7 @@ var composeJobResultSchema = z20.object({
|
|
|
3648
3666
|
var composeJobSourceSchema = z20.enum(["github", "platform", "slack"]);
|
|
3649
3667
|
var createComposeJobRequestSchema = z20.union([
|
|
3650
3668
|
z20.object({
|
|
3651
|
-
githubUrl: z20.
|
|
3669
|
+
githubUrl: z20.url().check(z20.startsWith("https://github.com/")),
|
|
3652
3670
|
overwrite: z20.boolean().optional().default(false)
|
|
3653
3671
|
}),
|
|
3654
3672
|
z20.object({
|
|
@@ -3697,7 +3715,7 @@ var composeJobsByIdContract = c17.router({
|
|
|
3697
3715
|
path: "/api/compose/jobs/:jobId",
|
|
3698
3716
|
headers: authHeadersSchema,
|
|
3699
3717
|
pathParams: z20.object({
|
|
3700
|
-
jobId: z20.
|
|
3718
|
+
jobId: z20.uuid()
|
|
3701
3719
|
}),
|
|
3702
3720
|
responses: {
|
|
3703
3721
|
200: composeJobResponseSchema,
|
|
@@ -3717,7 +3735,7 @@ var webhookComposeCompleteContract = c17.router({
|
|
|
3717
3735
|
path: "/api/webhooks/compose/complete",
|
|
3718
3736
|
headers: authHeadersSchema,
|
|
3719
3737
|
body: z20.object({
|
|
3720
|
-
jobId: z20.
|
|
3738
|
+
jobId: z20.uuid(),
|
|
3721
3739
|
success: z20.boolean(),
|
|
3722
3740
|
// Result from CLI compose command
|
|
3723
3741
|
result: composeJobResultSchema.optional(),
|
|
@@ -6350,7 +6368,7 @@ function getConnectorDerivedNames(secretName) {
|
|
|
6350
6368
|
return null;
|
|
6351
6369
|
}
|
|
6352
6370
|
var connectorResponseSchema = z21.object({
|
|
6353
|
-
id: z21.
|
|
6371
|
+
id: z21.uuid().nullable(),
|
|
6354
6372
|
type: connectorTypeSchema,
|
|
6355
6373
|
authMethod: z21.string(),
|
|
6356
6374
|
externalId: z21.string().nullable(),
|
|
@@ -6417,7 +6435,7 @@ var connectorSessionStatusSchema = z21.enum([
|
|
|
6417
6435
|
"error"
|
|
6418
6436
|
]);
|
|
6419
6437
|
var connectorSessionResponseSchema = z21.object({
|
|
6420
|
-
id: z21.
|
|
6438
|
+
id: z21.uuid(),
|
|
6421
6439
|
code: z21.string(),
|
|
6422
6440
|
type: connectorTypeSchema,
|
|
6423
6441
|
status: connectorSessionStatusSchema,
|
|
@@ -6463,7 +6481,7 @@ var connectorSessionByIdContract = c18.router({
|
|
|
6463
6481
|
headers: authHeadersSchema,
|
|
6464
6482
|
pathParams: z21.object({
|
|
6465
6483
|
type: connectorTypeSchema,
|
|
6466
|
-
sessionId: z21.
|
|
6484
|
+
sessionId: z21.uuid()
|
|
6467
6485
|
}),
|
|
6468
6486
|
responses: {
|
|
6469
6487
|
200: connectorSessionStatusResponseSchema,
|
|
@@ -6476,7 +6494,7 @@ var connectorSessionByIdContract = c18.router({
|
|
|
6476
6494
|
}
|
|
6477
6495
|
});
|
|
6478
6496
|
var computerConnectorCreateResponseSchema = z21.object({
|
|
6479
|
-
id: z21.
|
|
6497
|
+
id: z21.uuid(),
|
|
6480
6498
|
ngrokToken: z21.string(),
|
|
6481
6499
|
bridgeToken: z21.string(),
|
|
6482
6500
|
endpointPrefix: z21.string(),
|
|
@@ -6817,7 +6835,7 @@ async function expandFirewallConfigs(config, fetchFn) {
|
|
|
6817
6835
|
const compose = config;
|
|
6818
6836
|
if (!compose?.agents) return;
|
|
6819
6837
|
for (const agent of Object.values(compose.agents)) {
|
|
6820
|
-
const configs = agent.
|
|
6838
|
+
const configs = agent.experimental_firewalls;
|
|
6821
6839
|
if (!configs) continue;
|
|
6822
6840
|
if (Array.isArray(configs)) continue;
|
|
6823
6841
|
const expanded = [];
|
|
@@ -6859,7 +6877,7 @@ async function expandFirewallConfigs(config, fetchFn) {
|
|
|
6859
6877
|
entry.placeholders = serviceConfig.placeholders;
|
|
6860
6878
|
expanded.push(entry);
|
|
6861
6879
|
}
|
|
6862
|
-
agent.
|
|
6880
|
+
agent.experimental_firewalls = expanded;
|
|
6863
6881
|
}
|
|
6864
6882
|
}
|
|
6865
6883
|
|
|
@@ -7098,7 +7116,7 @@ var skillsResolveContract = c23.router({
|
|
|
7098
7116
|
path: "/api/skills/resolve",
|
|
7099
7117
|
headers: authHeadersSchema,
|
|
7100
7118
|
body: z26.object({
|
|
7101
|
-
skills: z26.array(z26.
|
|
7119
|
+
skills: z26.array(z26.url()).min(1).max(100)
|
|
7102
7120
|
}),
|
|
7103
7121
|
responses: {
|
|
7104
7122
|
200: z26.object({
|
|
@@ -7363,6 +7381,11 @@ var FEATURE_SWITCHES = {
|
|
|
7363
7381
|
enabled: false,
|
|
7364
7382
|
enabledUserHashes: STAFF_USER_HASHES
|
|
7365
7383
|
},
|
|
7384
|
+
["vercelAiGateway" /* VercelAiGateway */]: {
|
|
7385
|
+
maintainer: "ethan@vm0.ai",
|
|
7386
|
+
enabled: false,
|
|
7387
|
+
enabledUserHashes: STAFF_USER_HASHES
|
|
7388
|
+
},
|
|
7366
7389
|
["zero" /* Zero */]: {
|
|
7367
7390
|
maintainer: "ethan@vm0.ai",
|
|
7368
7391
|
enabled: false,
|
|
@@ -9510,7 +9533,7 @@ var composeCommand = new Command7().name("compose").description("Create or updat
|
|
|
9510
9533
|
options.autoUpdate = false;
|
|
9511
9534
|
}
|
|
9512
9535
|
if (options.autoUpdate !== false) {
|
|
9513
|
-
await startSilentUpgrade("9.62.
|
|
9536
|
+
await startSilentUpgrade("9.62.5");
|
|
9514
9537
|
}
|
|
9515
9538
|
try {
|
|
9516
9539
|
let result;
|
|
@@ -10332,7 +10355,7 @@ var mainRunCommand = new Command8().name("run").description("Run an agent").argu
|
|
|
10332
10355
|
withErrorHandler(
|
|
10333
10356
|
async (identifier, prompt, options) => {
|
|
10334
10357
|
if (options.autoUpdate !== false) {
|
|
10335
|
-
await startSilentUpgrade("9.62.
|
|
10358
|
+
await startSilentUpgrade("9.62.5");
|
|
10336
10359
|
}
|
|
10337
10360
|
const { org, name, version } = parseIdentifier(identifier);
|
|
10338
10361
|
let composeId;
|
|
@@ -12052,7 +12075,7 @@ var cookAction = new Command35().name("cook").description("Quick start: prepare,
|
|
|
12052
12075
|
withErrorHandler(
|
|
12053
12076
|
async (prompt, options) => {
|
|
12054
12077
|
if (options.autoUpdate !== false) {
|
|
12055
|
-
const shouldExit = await checkAndUpgrade("9.62.
|
|
12078
|
+
const shouldExit = await checkAndUpgrade("9.62.5", prompt);
|
|
12056
12079
|
if (shouldExit) {
|
|
12057
12080
|
process.exit(0);
|
|
12058
12081
|
}
|
|
@@ -17186,13 +17209,13 @@ var upgradeCommand = new Command86().name("upgrade").description("Upgrade vm0 CL
|
|
|
17186
17209
|
if (latestVersion === null) {
|
|
17187
17210
|
throw new Error("Could not check for updates. Please try again later.");
|
|
17188
17211
|
}
|
|
17189
|
-
if (latestVersion === "9.62.
|
|
17190
|
-
console.log(chalk79.green(`\u2713 Already up to date (${"9.62.
|
|
17212
|
+
if (latestVersion === "9.62.5") {
|
|
17213
|
+
console.log(chalk79.green(`\u2713 Already up to date (${"9.62.5"})`));
|
|
17191
17214
|
return;
|
|
17192
17215
|
}
|
|
17193
17216
|
console.log(
|
|
17194
17217
|
chalk79.yellow(
|
|
17195
|
-
`Current version: ${"9.62.
|
|
17218
|
+
`Current version: ${"9.62.5"} -> Latest version: ${latestVersion}`
|
|
17196
17219
|
)
|
|
17197
17220
|
);
|
|
17198
17221
|
console.log();
|
|
@@ -17219,7 +17242,7 @@ var upgradeCommand = new Command86().name("upgrade").description("Upgrade vm0 CL
|
|
|
17219
17242
|
const success = await performUpgrade(packageManager);
|
|
17220
17243
|
if (success) {
|
|
17221
17244
|
console.log(
|
|
17222
|
-
chalk79.green(`\u2713 Upgraded from ${"9.62.
|
|
17245
|
+
chalk79.green(`\u2713 Upgraded from ${"9.62.5"} to ${latestVersion}`)
|
|
17223
17246
|
);
|
|
17224
17247
|
return;
|
|
17225
17248
|
}
|
|
@@ -17233,7 +17256,7 @@ var upgradeCommand = new Command86().name("upgrade").description("Upgrade vm0 CL
|
|
|
17233
17256
|
|
|
17234
17257
|
// src/index.ts
|
|
17235
17258
|
var program = new Command87();
|
|
17236
|
-
program.name("vm0").description("VM0 CLI - Build and run agents with natural language").version("9.62.
|
|
17259
|
+
program.name("vm0").description("VM0 CLI - Build and run agents with natural language").version("9.62.5");
|
|
17237
17260
|
program.addCommand(authCommand);
|
|
17238
17261
|
program.addCommand(infoCommand);
|
|
17239
17262
|
program.addCommand(composeCommand);
|