@vm0/cli 5.1.0 → 5.1.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.
Files changed (2) hide show
  1. package/index.js +39 -339
  2. package/package.json +1 -1
package/index.js CHANGED
@@ -2760,7 +2760,7 @@ var $ZodBase64 = /* @__PURE__ */ $constructor("$ZodBase64", (inst, def) => {
2760
2760
  function isValidBase64URL(data) {
2761
2761
  if (!base64url.test(data))
2762
2762
  return false;
2763
- const base643 = data.replace(/[-_]/g, (c16) => c16 === "-" ? "+" : "/");
2763
+ const base643 = data.replace(/[-_]/g, (c15) => c15 === "-" ? "+" : "/");
2764
2764
  const padded = base643.padEnd(Math.ceil(base643.length / 4) * 4, "=");
2765
2765
  return isValidBase64(padded);
2766
2766
  }
@@ -11672,9 +11672,9 @@ var ZodDate = /* @__PURE__ */ $constructor("ZodDate", (inst, def) => {
11672
11672
  ZodType.init(inst, def);
11673
11673
  inst.min = (value, params) => inst.check(_gte(value, params));
11674
11674
  inst.max = (value, params) => inst.check(_lte(value, params));
11675
- const c16 = inst._zod.bag;
11676
- inst.minDate = c16.minimum ? new Date(c16.minimum) : null;
11677
- inst.maxDate = c16.maximum ? new Date(c16.maximum) : null;
11675
+ const c15 = inst._zod.bag;
11676
+ inst.minDate = c15.minimum ? new Date(c15.minimum) : null;
11677
+ inst.maxDate = c15.maximum ? new Date(c15.maximum) : null;
11678
11678
  });
11679
11679
  function date3(params) {
11680
11680
  return _date(ZodDate, params);
@@ -12339,9 +12339,7 @@ var storedExecutionContextSchema = external_exports.object({
12339
12339
  encryptedSecrets: external_exports.string().nullable(),
12340
12340
  // AES-256-GCM encrypted secrets
12341
12341
  cliAgentType: external_exports.string(),
12342
- experimentalFirewall: experimentalFirewallSchema.optional(),
12343
- postCreateCommand: external_exports.string().nullable().optional()
12344
- // Lifecycle hook
12342
+ experimentalFirewall: experimentalFirewallSchema.optional()
12345
12343
  });
12346
12344
  var executionContextSchema = external_exports.object({
12347
12345
  runId: external_exports.string().uuid(),
@@ -12359,9 +12357,7 @@ var executionContextSchema = external_exports.object({
12359
12357
  secretValues: external_exports.array(external_exports.string()).nullable(),
12360
12358
  cliAgentType: external_exports.string(),
12361
12359
  // Experimental firewall configuration
12362
- experimentalFirewall: experimentalFirewallSchema.optional(),
12363
- // Lifecycle hook - command to run after working dir creation
12364
- postCreateCommand: external_exports.string().nullable().optional()
12360
+ experimentalFirewall: experimentalFirewallSchema.optional()
12365
12361
  });
12366
12362
  var runnersJobClaimContract = c.router({
12367
12363
  claim: {
@@ -13735,19 +13731,11 @@ var agentVersionSchema = external_exports.object({
13735
13731
  id: external_exports.string(),
13736
13732
  agent_id: external_exports.string(),
13737
13733
  version_number: external_exports.number(),
13738
- config: external_exports.unknown(),
13739
- // Agent YAML configuration
13740
13734
  created_at: timestampSchema
13741
13735
  });
13742
- var publicAgentDetailSchema = publicAgentSchema.extend({
13743
- config: external_exports.unknown().optional()
13744
- });
13736
+ var publicAgentDetailSchema = publicAgentSchema;
13745
13737
  var paginatedAgentsSchema = createPaginatedResponseSchema(publicAgentSchema);
13746
13738
  var paginatedAgentVersionsSchema = createPaginatedResponseSchema(agentVersionSchema);
13747
- var updateAgentRequestSchema = external_exports.object({
13748
- config: external_exports.unknown()
13749
- // New agent configuration (creates new version)
13750
- });
13751
13739
  var agentListQuerySchema = listQuerySchema.extend({
13752
13740
  name: external_exports.string().optional()
13753
13741
  });
@@ -13780,23 +13768,6 @@ var publicAgentByIdContract = c11.router({
13780
13768
  },
13781
13769
  summary: "Get agent",
13782
13770
  description: "Get agent details by ID"
13783
- },
13784
- update: {
13785
- method: "PUT",
13786
- path: "/v1/agents/:id",
13787
- pathParams: external_exports.object({
13788
- id: external_exports.string().min(1, "Agent ID is required")
13789
- }),
13790
- body: updateAgentRequestSchema,
13791
- responses: {
13792
- 200: publicAgentDetailSchema,
13793
- 400: publicApiErrorSchema,
13794
- 401: publicApiErrorSchema,
13795
- 404: publicApiErrorSchema,
13796
- 500: publicApiErrorSchema
13797
- },
13798
- summary: "Update agent",
13799
- description: "Update agent configuration. Creates a new version if config changes."
13800
13771
  }
13801
13772
  });
13802
13773
  var publicAgentVersionsContract = c11.router({
@@ -13839,12 +13810,12 @@ var publicRunSchema = external_exports.object({
13839
13810
  completed_at: timestampSchema.nullable()
13840
13811
  });
13841
13812
  var publicRunDetailSchema = publicRunSchema.extend({
13842
- output: external_exports.string().nullable(),
13843
13813
  error: external_exports.string().nullable(),
13844
13814
  execution_time_ms: external_exports.number().nullable(),
13845
13815
  checkpoint_id: external_exports.string().nullable(),
13846
13816
  session_id: external_exports.string().nullable(),
13847
- artifacts: external_exports.record(external_exports.string(), external_exports.string()).optional(),
13817
+ artifact_name: external_exports.string().nullable(),
13818
+ artifact_version: external_exports.string().nullable(),
13848
13819
  volumes: external_exports.record(external_exports.string(), external_exports.string()).optional()
13849
13820
  });
13850
13821
  var paginatedRunsSchema = createPaginatedResponseSchema(publicRunSchema);
@@ -13865,8 +13836,10 @@ var createRunRequestSchema = external_exports.object({
13865
13836
  // Optional configuration
13866
13837
  variables: external_exports.record(external_exports.string(), external_exports.string()).optional(),
13867
13838
  secrets: external_exports.record(external_exports.string(), external_exports.string()).optional(),
13868
- artifacts: external_exports.record(external_exports.string(), external_exports.string()).optional(),
13869
- // artifact_name -> version
13839
+ artifact_name: external_exports.string().optional(),
13840
+ // Artifact name to mount
13841
+ artifact_version: external_exports.string().optional(),
13842
+ // Artifact version (defaults to latest)
13870
13843
  volumes: external_exports.record(external_exports.string(), external_exports.string()).optional()
13871
13844
  // volume_name -> version
13872
13845
  });
@@ -14079,51 +14052,6 @@ var paginatedArtifactsSchema = createPaginatedResponseSchema(publicArtifactSchem
14079
14052
  var paginatedArtifactVersionsSchema = createPaginatedResponseSchema(
14080
14053
  artifactVersionSchema
14081
14054
  );
14082
- var createArtifactRequestSchema = external_exports.object({
14083
- name: external_exports.string().min(1).max(100).regex(
14084
- /^[a-z0-9][a-z0-9-]*[a-z0-9]$|^[a-z0-9]$/,
14085
- "Name must be lowercase alphanumeric with hyphens, not starting or ending with hyphen"
14086
- )
14087
- });
14088
- var fileEntrySchema = external_exports.object({
14089
- path: external_exports.string(),
14090
- size: external_exports.number(),
14091
- hash: external_exports.string().optional()
14092
- // SHA-256 hash of file content
14093
- });
14094
- var prepareUploadRequestSchema = external_exports.object({
14095
- files: external_exports.array(fileEntrySchema),
14096
- message: external_exports.string().optional()
14097
- // Optional commit message
14098
- });
14099
- var presignedUploadSchema2 = external_exports.object({
14100
- path: external_exports.string(),
14101
- upload_url: external_exports.string(),
14102
- // Presigned S3 URL
14103
- upload_id: external_exports.string()
14104
- // For multi-part uploads
14105
- });
14106
- var prepareUploadResponseSchema = external_exports.object({
14107
- upload_session_id: external_exports.string(),
14108
- files: external_exports.array(presignedUploadSchema2),
14109
- expires_at: timestampSchema
14110
- });
14111
- var commitUploadRequestSchema = external_exports.object({
14112
- upload_session_id: external_exports.string(),
14113
- message: external_exports.string().optional()
14114
- });
14115
- var downloadResponseSchema = external_exports.object({
14116
- version_id: external_exports.string(),
14117
- files: external_exports.array(
14118
- external_exports.object({
14119
- path: external_exports.string(),
14120
- size: external_exports.number(),
14121
- download_url: external_exports.string()
14122
- // Presigned S3 URL
14123
- })
14124
- ),
14125
- expires_at: timestampSchema
14126
- });
14127
14055
  var publicArtifactsListContract = c13.router({
14128
14056
  list: {
14129
14057
  method: "GET",
@@ -14136,20 +14064,6 @@ var publicArtifactsListContract = c13.router({
14136
14064
  },
14137
14065
  summary: "List artifacts",
14138
14066
  description: "List all artifacts in the current scope with pagination"
14139
- },
14140
- create: {
14141
- method: "POST",
14142
- path: "/v1/artifacts",
14143
- body: createArtifactRequestSchema,
14144
- responses: {
14145
- 201: publicArtifactDetailSchema,
14146
- 400: publicApiErrorSchema,
14147
- 401: publicApiErrorSchema,
14148
- 409: publicApiErrorSchema,
14149
- 500: publicApiErrorSchema
14150
- },
14151
- summary: "Create artifact",
14152
- description: "Create a new empty artifact container"
14153
14067
  }
14154
14068
  });
14155
14069
  var publicArtifactByIdContract = c13.router({
@@ -14187,44 +14101,6 @@ var publicArtifactVersionsContract = c13.router({
14187
14101
  description: "List all versions of an artifact with pagination"
14188
14102
  }
14189
14103
  });
14190
- var publicArtifactUploadContract = c13.router({
14191
- prepareUpload: {
14192
- method: "POST",
14193
- path: "/v1/artifacts/:id/upload",
14194
- pathParams: external_exports.object({
14195
- id: external_exports.string().min(1, "Artifact ID is required")
14196
- }),
14197
- body: prepareUploadRequestSchema,
14198
- responses: {
14199
- 200: prepareUploadResponseSchema,
14200
- 400: publicApiErrorSchema,
14201
- 401: publicApiErrorSchema,
14202
- 404: publicApiErrorSchema,
14203
- 500: publicApiErrorSchema
14204
- },
14205
- summary: "Prepare artifact upload",
14206
- description: "Get presigned URLs for direct S3 upload. Returns upload URLs for each file."
14207
- }
14208
- });
14209
- var publicArtifactCommitContract = c13.router({
14210
- commitUpload: {
14211
- method: "POST",
14212
- path: "/v1/artifacts/:id/commit",
14213
- pathParams: external_exports.object({
14214
- id: external_exports.string().min(1, "Artifact ID is required")
14215
- }),
14216
- body: commitUploadRequestSchema,
14217
- responses: {
14218
- 200: artifactVersionSchema,
14219
- 400: publicApiErrorSchema,
14220
- 401: publicApiErrorSchema,
14221
- 404: publicApiErrorSchema,
14222
- 500: publicApiErrorSchema
14223
- },
14224
- summary: "Commit artifact upload",
14225
- description: "Finalize an upload session and create a new artifact version."
14226
- }
14227
- });
14228
14104
  var publicArtifactDownloadContract = c13.router({
14229
14105
  download: {
14230
14106
  method: "GET",
@@ -14237,13 +14113,14 @@ var publicArtifactDownloadContract = c13.router({
14237
14113
  // Defaults to current version
14238
14114
  }),
14239
14115
  responses: {
14240
- 200: downloadResponseSchema,
14116
+ 302: external_exports.undefined(),
14117
+ // Redirect to presigned URL
14241
14118
  401: publicApiErrorSchema,
14242
14119
  404: publicApiErrorSchema,
14243
14120
  500: publicApiErrorSchema
14244
14121
  },
14245
14122
  summary: "Download artifact",
14246
- description: "Get presigned URLs for downloading artifact files. Defaults to current version."
14123
+ description: "Redirect to presigned URL for downloading artifact as tar.gz archive. Defaults to current version."
14247
14124
  }
14248
14125
  });
14249
14126
 
@@ -14276,51 +14153,6 @@ var publicVolumeDetailSchema = publicVolumeSchema.extend({
14276
14153
  });
14277
14154
  var paginatedVolumesSchema = createPaginatedResponseSchema(publicVolumeSchema);
14278
14155
  var paginatedVolumeVersionsSchema = createPaginatedResponseSchema(volumeVersionSchema);
14279
- var createVolumeRequestSchema = external_exports.object({
14280
- name: external_exports.string().min(1).max(100).regex(
14281
- /^[a-z0-9][a-z0-9-]*[a-z0-9]$|^[a-z0-9]$/,
14282
- "Name must be lowercase alphanumeric with hyphens, not starting or ending with hyphen"
14283
- )
14284
- });
14285
- var fileEntrySchema2 = external_exports.object({
14286
- path: external_exports.string(),
14287
- size: external_exports.number(),
14288
- hash: external_exports.string().optional()
14289
- // SHA-256 hash of file content
14290
- });
14291
- var prepareUploadRequestSchema2 = external_exports.object({
14292
- files: external_exports.array(fileEntrySchema2),
14293
- message: external_exports.string().optional()
14294
- // Optional commit message
14295
- });
14296
- var presignedUploadSchema3 = external_exports.object({
14297
- path: external_exports.string(),
14298
- upload_url: external_exports.string(),
14299
- // Presigned S3 URL
14300
- upload_id: external_exports.string()
14301
- // For multi-part uploads
14302
- });
14303
- var prepareUploadResponseSchema2 = external_exports.object({
14304
- upload_session_id: external_exports.string(),
14305
- files: external_exports.array(presignedUploadSchema3),
14306
- expires_at: timestampSchema
14307
- });
14308
- var commitUploadRequestSchema2 = external_exports.object({
14309
- upload_session_id: external_exports.string(),
14310
- message: external_exports.string().optional()
14311
- });
14312
- var downloadResponseSchema2 = external_exports.object({
14313
- version_id: external_exports.string(),
14314
- files: external_exports.array(
14315
- external_exports.object({
14316
- path: external_exports.string(),
14317
- size: external_exports.number(),
14318
- download_url: external_exports.string()
14319
- // Presigned S3 URL
14320
- })
14321
- ),
14322
- expires_at: timestampSchema
14323
- });
14324
14156
  var publicVolumesListContract = c14.router({
14325
14157
  list: {
14326
14158
  method: "GET",
@@ -14333,20 +14165,6 @@ var publicVolumesListContract = c14.router({
14333
14165
  },
14334
14166
  summary: "List volumes",
14335
14167
  description: "List all volumes in the current scope with pagination"
14336
- },
14337
- create: {
14338
- method: "POST",
14339
- path: "/v1/volumes",
14340
- body: createVolumeRequestSchema,
14341
- responses: {
14342
- 201: publicVolumeDetailSchema,
14343
- 400: publicApiErrorSchema,
14344
- 401: publicApiErrorSchema,
14345
- 409: publicApiErrorSchema,
14346
- 500: publicApiErrorSchema
14347
- },
14348
- summary: "Create volume",
14349
- description: "Create a new empty volume container"
14350
14168
  }
14351
14169
  });
14352
14170
  var publicVolumeByIdContract = c14.router({
@@ -14384,44 +14202,6 @@ var publicVolumeVersionsContract = c14.router({
14384
14202
  description: "List all versions of a volume with pagination"
14385
14203
  }
14386
14204
  });
14387
- var publicVolumeUploadContract = c14.router({
14388
- prepareUpload: {
14389
- method: "POST",
14390
- path: "/v1/volumes/:id/upload",
14391
- pathParams: external_exports.object({
14392
- id: external_exports.string().min(1, "Volume ID is required")
14393
- }),
14394
- body: prepareUploadRequestSchema2,
14395
- responses: {
14396
- 200: prepareUploadResponseSchema2,
14397
- 400: publicApiErrorSchema,
14398
- 401: publicApiErrorSchema,
14399
- 404: publicApiErrorSchema,
14400
- 500: publicApiErrorSchema
14401
- },
14402
- summary: "Prepare volume upload",
14403
- description: "Get presigned URLs for direct S3 upload. Returns upload URLs for each file."
14404
- }
14405
- });
14406
- var publicVolumeCommitContract = c14.router({
14407
- commitUpload: {
14408
- method: "POST",
14409
- path: "/v1/volumes/:id/commit",
14410
- pathParams: external_exports.object({
14411
- id: external_exports.string().min(1, "Volume ID is required")
14412
- }),
14413
- body: commitUploadRequestSchema2,
14414
- responses: {
14415
- 200: volumeVersionSchema,
14416
- 400: publicApiErrorSchema,
14417
- 401: publicApiErrorSchema,
14418
- 404: publicApiErrorSchema,
14419
- 500: publicApiErrorSchema
14420
- },
14421
- summary: "Commit volume upload",
14422
- description: "Finalize an upload session and create a new volume version."
14423
- }
14424
- });
14425
14205
  var publicVolumeDownloadContract = c14.router({
14426
14206
  download: {
14427
14207
  method: "GET",
@@ -14434,92 +14214,14 @@ var publicVolumeDownloadContract = c14.router({
14434
14214
  // Defaults to current version
14435
14215
  }),
14436
14216
  responses: {
14437
- 200: downloadResponseSchema2,
14217
+ 302: external_exports.undefined(),
14218
+ // Redirect to presigned URL
14438
14219
  401: publicApiErrorSchema,
14439
14220
  404: publicApiErrorSchema,
14440
14221
  500: publicApiErrorSchema
14441
14222
  },
14442
14223
  summary: "Download volume",
14443
- description: "Get presigned URLs for downloading volume files. Defaults to current version."
14444
- }
14445
- });
14446
-
14447
- // ../../packages/core/src/contracts/public/tokens.ts
14448
- var c15 = initContract();
14449
- var publicTokenSchema = external_exports.object({
14450
- id: external_exports.string(),
14451
- name: external_exports.string(),
14452
- token_prefix: external_exports.string(),
14453
- // First 12 chars for identification (e.g., "vm0_live_abc")
14454
- last_used_at: timestampSchema.nullable(),
14455
- expires_at: timestampSchema,
14456
- created_at: timestampSchema
14457
- });
14458
- var publicTokenDetailSchema = publicTokenSchema.extend({
14459
- token: external_exports.string().optional()
14460
- // Full token value, only returned on creation
14461
- });
14462
- var paginatedTokensSchema = createPaginatedResponseSchema(publicTokenSchema);
14463
- var createTokenRequestSchema = external_exports.object({
14464
- name: external_exports.string().min(1, "Name is required").max(100, "Name too long"),
14465
- expires_in_days: external_exports.number().min(1).max(365).optional()
14466
- // null for no expiry (default 90 days)
14467
- });
14468
- var publicTokensListContract = c15.router({
14469
- list: {
14470
- method: "GET",
14471
- path: "/v1/tokens",
14472
- query: listQuerySchema,
14473
- responses: {
14474
- 200: paginatedTokensSchema,
14475
- 401: publicApiErrorSchema
14476
- },
14477
- summary: "List API tokens",
14478
- description: "List all API tokens for the authenticated user"
14479
- },
14480
- create: {
14481
- method: "POST",
14482
- path: "/v1/tokens",
14483
- body: createTokenRequestSchema,
14484
- responses: {
14485
- 201: publicTokenDetailSchema,
14486
- // Includes full token value
14487
- 400: publicApiErrorSchema,
14488
- 401: publicApiErrorSchema
14489
- },
14490
- summary: "Create API token",
14491
- description: "Create a new API token. The token value is only returned once on creation."
14492
- }
14493
- });
14494
- var publicTokenByIdContract = c15.router({
14495
- get: {
14496
- method: "GET",
14497
- path: "/v1/tokens/:id",
14498
- pathParams: external_exports.object({
14499
- id: external_exports.string()
14500
- }),
14501
- responses: {
14502
- 200: publicTokenSchema,
14503
- // Does NOT include token value
14504
- 401: publicApiErrorSchema,
14505
- 404: publicApiErrorSchema
14506
- },
14507
- summary: "Get API token",
14508
- description: "Get details of an API token (does not include the token value)"
14509
- },
14510
- delete: {
14511
- method: "DELETE",
14512
- path: "/v1/tokens/:id",
14513
- pathParams: external_exports.object({
14514
- id: external_exports.string()
14515
- }),
14516
- responses: {
14517
- 204: external_exports.undefined(),
14518
- 401: publicApiErrorSchema,
14519
- 404: publicApiErrorSchema
14520
- },
14521
- summary: "Revoke API token",
14522
- description: "Permanently revoke an API token. This action cannot be undone."
14224
+ description: "Redirect to presigned URL for downloading volume as tar.gz archive. Defaults to current version."
14523
14225
  }
14524
14226
  });
14525
14227
 
@@ -15179,19 +14881,17 @@ function validateAgentCompose(config2) {
15179
14881
  error: "Missing agent.image (required when provider is not auto-configured)"
15180
14882
  };
15181
14883
  }
15182
- if (agent.postCreateCommand !== void 0) {
15183
- if (typeof agent.postCreateCommand !== "string") {
15184
- return {
15185
- valid: false,
15186
- error: "agent.postCreateCommand must be a string"
15187
- };
15188
- }
15189
- if (agent.postCreateCommand.length === 0) {
15190
- return {
15191
- valid: false,
15192
- error: "agent.postCreateCommand cannot be empty"
15193
- };
15194
- }
14884
+ if (agent.working_dir !== void 0 && typeof agent.working_dir !== "string") {
14885
+ return {
14886
+ valid: false,
14887
+ error: "agent.working_dir must be a string if provided"
14888
+ };
14889
+ }
14890
+ if (!agent.working_dir && !providerIsSupported) {
14891
+ return {
14892
+ valid: false,
14893
+ error: "Missing agent.working_dir (required when provider is not auto-configured)"
14894
+ };
15195
14895
  }
15196
14896
  if (agent.instructions !== void 0) {
15197
14897
  if (typeof agent.instructions !== "string") {
@@ -16360,9 +16060,9 @@ var CodexEventParser = class {
16360
16060
  }
16361
16061
  }
16362
16062
  if (itemType === "file_change" && item.changes && item.changes.length > 0) {
16363
- const changes = item.changes.map((c16) => {
16364
- const action = c16.kind === "add" ? "Created" : c16.kind === "modify" ? "Modified" : "Deleted";
16365
- return `${action}: ${c16.path}`;
16063
+ const changes = item.changes.map((c15) => {
16064
+ const action = c15.kind === "add" ? "Created" : c15.kind === "modify" ? "Modified" : "Deleted";
16065
+ return `${action}: ${c15.path}`;
16366
16066
  }).join("\n");
16367
16067
  return {
16368
16068
  type: "text",
@@ -16703,9 +16403,9 @@ var CodexEventRenderer = class {
16703
16403
  return;
16704
16404
  }
16705
16405
  if (itemType === "file_change" && item.changes && item.changes.length > 0) {
16706
- const summary = item.changes.map((c16) => {
16707
- const icon = c16.kind === "add" ? "+" : c16.kind === "delete" ? "-" : "~";
16708
- return `${icon}${c16.path}`;
16406
+ const summary = item.changes.map((c15) => {
16407
+ const icon = c15.kind === "add" ? "+" : c15.kind === "delete" ? "-" : "~";
16408
+ return `${icon}${c15.path}`;
16709
16409
  }).join(", ");
16710
16410
  console.log(chalk4.green("[files]") + ` ${summary}`);
16711
16411
  return;
@@ -18594,7 +18294,7 @@ async function autoPullArtifact(runOutput, artifactDir) {
18594
18294
  }
18595
18295
  var cookCmd = new Command17().name("cook").description("One-click agent preparation and execution from vm0.yaml");
18596
18296
  cookCmd.argument("[prompt]", "Prompt for the agent").option("-y, --yes", "Skip confirmation prompts").action(async (prompt, options) => {
18597
- const shouldExit = await checkAndUpgrade("5.1.0", prompt);
18297
+ const shouldExit = await checkAndUpgrade("5.1.1", prompt);
18598
18298
  if (shouldExit) {
18599
18299
  process.exit(0);
18600
18300
  }
@@ -19278,7 +18978,7 @@ var listCommand3 = new Command22().name("list").alias("ls").description("List al
19278
18978
  );
19279
18979
  return;
19280
18980
  }
19281
- const nameWidth = Math.max(4, ...data.composes.map((c16) => c16.name.length));
18981
+ const nameWidth = Math.max(4, ...data.composes.map((c15) => c15.name.length));
19282
18982
  const header = ["NAME".padEnd(nameWidth), "VERSION", "UPDATED"].join(
19283
18983
  " "
19284
18984
  );
@@ -20157,7 +19857,7 @@ var setupGithubCommand = new Command26().name("setup-github").description("Initi
20157
19857
 
20158
19858
  // src/index.ts
20159
19859
  var program = new Command27();
20160
- program.name("vm0").description("VM0 CLI - A modern build tool").version("5.1.0");
19860
+ program.name("vm0").description("VM0 CLI - A modern build tool").version("5.1.1");
20161
19861
  program.command("info").description("Display environment information").action(async () => {
20162
19862
  console.log(chalk29.bold("System Information:"));
20163
19863
  console.log(`Node Version: ${process.version}`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vm0/cli",
3
- "version": "5.1.0",
3
+ "version": "5.1.1",
4
4
  "description": "CLI application",
5
5
  "repository": {
6
6
  "type": "git",