@ornncompute/cli 1.0.97 → 1.0.109

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.
@@ -1,5 +1,5 @@
1
- // ../../packages/capabilities/dist/capabilities/admin.js
2
- import { z as z5 } from "zod";
1
+ // ../../packages/capabilities/dist/capabilities/admin-ssh.js
2
+ import { z } from "zod";
3
3
 
4
4
  // ../../packages/capabilities/dist/names.js
5
5
  function namesFromId(id) {
@@ -55,6 +55,38 @@ function byCliCommand(catalog2, command) {
55
55
  return catalog2.find((capability) => capability.cli != null && capability.cli.command.length === command.length && capability.cli.command.every((part, index) => part === command[index]));
56
56
  }
57
57
 
58
+ // ../../packages/capabilities/dist/capabilities/admin-ssh.js
59
+ var adminSshCapability = defineCapability({
60
+ id: "node.ssh",
61
+ domain: "fleet",
62
+ roles: ["admin"],
63
+ description: "Open staff SSH using a temporary local key and a short-lived node certificate.",
64
+ mutation: "local",
65
+ http: { method: "POST", path: "/nodes/{node_id}/ssh-certificates" },
66
+ mcp: false,
67
+ slack: false,
68
+ cli: {
69
+ command: ["admin", "ssh"],
70
+ vnext: {
71
+ command: ["admin", "ssh"],
72
+ audience: "admin",
73
+ category: "journey",
74
+ arguments: "semantic",
75
+ outcome: "Open an SSH session to one opted-in node with a 15-minute certificate.",
76
+ human: "ornn admin ssh <node-id>",
77
+ automation: "Requires an interactive terminal."
78
+ }
79
+ },
80
+ input: z.object({ node_id: z.string().uuid(), public_key: z.string().min(1) }),
81
+ execute: (ctx, input) => ctx.fetch(`/nodes/${encodeURIComponent(input.node_id)}/ssh-certificates`, {
82
+ method: "POST",
83
+ body: { public_key: input.public_key }
84
+ })
85
+ });
86
+
87
+ // ../../packages/capabilities/dist/capabilities/admin.js
88
+ import { z as z6 } from "zod";
89
+
58
90
  // ../../packages/api-client/dist/commerce/client.js
59
91
  var BASE = "/commerce/v2/listings";
60
92
  var listingPath = (id) => `${BASE}/${encodeURIComponent(id)}`;
@@ -224,7 +256,7 @@ async function listSupplierOrganizations(fetch) {
224
256
  }
225
257
 
226
258
  // ../../packages/capabilities/dist/capabilities/fleet.js
227
- import { z } from "zod";
259
+ import { z as z2 } from "zod";
228
260
  function queryPath(path, params) {
229
261
  const parts = [];
230
262
  for (const [key, value] of Object.entries(params)) {
@@ -233,45 +265,45 @@ function queryPath(path, params) {
233
265
  }
234
266
  return parts.length ? `${path}?${parts.join("&")}` : path;
235
267
  }
236
- var suppliersInput = z.object({
237
- q: z.string().optional(),
238
- offset: z.number().int().min(0).optional(),
239
- limit: z.number().int().min(1).max(1e3).optional()
240
- });
241
- var facilitiesInput = z.object({
242
- organization_id: z.string().optional(),
243
- cursor: z.string().optional(),
244
- limit: z.number().int().min(1).max(100).optional()
245
- });
246
- var nodesInput = z.object({
247
- organization_id: z.string().optional(),
248
- facility_id: z.string().optional(),
249
- status: z.string().optional(),
250
- reservation_id: z.string().optional(),
251
- cursor: z.string().optional(),
252
- max: z.number().int().positive().max(5e3).optional(),
253
- limit: z.number().int().positive().max(5e3).optional()
254
- });
255
- var nodeLifecycleInput = z.object({
256
- node_id: z.string().min(1),
257
- maintenance_batch_id: z.string().uuid().optional(),
258
- node_ref: z.string().optional(),
259
- reason: z.string().optional(),
260
- delete_node_record: z.literal(true).optional(),
261
- idempotency_key: z.string().optional(),
262
- yes: z.boolean().optional(),
263
- wait: z.boolean().optional(),
264
- timeout_seconds: z.number().positive().optional()
265
- });
266
- var nodeExecInput = z.object({
267
- node_id: z.string().min(1).optional(),
268
- host: z.string().min(1).optional(),
269
- username: z.string().min(1).optional(),
270
- port: z.number().int().min(1).max(65535).optional(),
271
- private_key: z.string().min(1).optional(),
272
- command: z.string().min(1),
273
- timeout_seconds: z.number().int().positive(),
274
- yes: z.boolean().optional()
268
+ var suppliersInput = z2.object({
269
+ q: z2.string().optional(),
270
+ offset: z2.number().int().min(0).optional(),
271
+ limit: z2.number().int().min(1).max(1e3).optional()
272
+ });
273
+ var facilitiesInput = z2.object({
274
+ organization_id: z2.string().optional(),
275
+ cursor: z2.string().optional(),
276
+ limit: z2.number().int().min(1).max(100).optional()
277
+ });
278
+ var nodesInput = z2.object({
279
+ organization_id: z2.string().optional(),
280
+ facility_id: z2.string().optional(),
281
+ status: z2.string().optional(),
282
+ reservation_id: z2.string().optional(),
283
+ cursor: z2.string().optional(),
284
+ max: z2.number().int().positive().max(5e3).optional(),
285
+ limit: z2.number().int().positive().max(5e3).optional()
286
+ });
287
+ var nodeLifecycleInput = z2.object({
288
+ node_id: z2.string().min(1),
289
+ maintenance_batch_id: z2.string().uuid().optional(),
290
+ node_ref: z2.string().optional(),
291
+ reason: z2.string().optional(),
292
+ delete_node_record: z2.literal(true).optional(),
293
+ idempotency_key: z2.string().optional(),
294
+ yes: z2.boolean().optional(),
295
+ wait: z2.boolean().optional(),
296
+ timeout_seconds: z2.number().positive().optional()
297
+ });
298
+ var nodeExecInput = z2.object({
299
+ node_id: z2.string().min(1).optional(),
300
+ host: z2.string().min(1).optional(),
301
+ username: z2.string().min(1).optional(),
302
+ port: z2.number().int().min(1).max(65535).optional(),
303
+ private_key: z2.string().min(1).optional(),
304
+ command: z2.string().min(1),
305
+ timeout_seconds: z2.number().int().positive(),
306
+ yes: z2.boolean().optional()
275
307
  });
276
308
  var listSuppliersCapability = defineCapability({
277
309
  id: "supplier.list",
@@ -341,7 +373,7 @@ var listFacilitiesCapability = defineCapability({
341
373
  });
342
374
  }
343
375
  });
344
- var facilityShowInput = z.object({ facilityId: z.uuid() });
376
+ var facilityShowInput = z2.object({ facilityId: z2.uuid() });
345
377
  var facilityShowCapability = defineCapability({
346
378
  id: "facilities.show",
347
379
  domain: "fleet",
@@ -510,44 +542,82 @@ var fleetCapabilities = [
510
542
  nodeTerminateCapability
511
543
  ];
512
544
 
513
- // ../../packages/capabilities/dist/capabilities/observability.js
514
- import { z as z2 } from "zod";
515
- function queryPath2(path, params) {
516
- const parts = [];
517
- for (const [key, value] of Object.entries(params)) {
518
- if (value?.trim())
519
- parts.push(`${encodeURIComponent(key)}=${encodeURIComponent(value.trim())}`);
545
+ // ../../packages/api-client/dist/observability/index.js
546
+ var base = "/v1/observability";
547
+ var nodePath = (id) => `${base}/nodes/${encodeURIComponent(id)}`;
548
+ function queryPath2(path, input) {
549
+ const query2 = new URLSearchParams();
550
+ for (const [key, value] of Object.entries(input)) {
551
+ if (value !== void 0)
552
+ query2.set(key, String(value));
520
553
  }
521
- return parts.length ? `${path}?${parts.join("&")}` : path;
554
+ return query2.size ? `${path}?${query2}` : path;
522
555
  }
523
- function nodePrefix(role, id) {
524
- const encoded = encodeURIComponent(id);
525
- return role === "user" ? `/v1/observability/machines/${encoded}` : `/v1/observability/nodes/${encoded}`;
556
+ function getNodeLatestTelemetry(request, id, input = {}, signal) {
557
+ return request(queryPath2(`${nodePath(id)}/telemetry/latest`, input), {
558
+ method: "GET",
559
+ signal
560
+ });
526
561
  }
527
- var latestInput = z2.object({
528
- node_id: z2.string().min(1),
529
- start: z2.string().optional(),
530
- end: z2.string().optional(),
531
- span: z2.string().optional(),
532
- max_points: z2.number().int().min(1).max(500).optional(),
533
- metrics: z2.string().optional()
534
- });
535
- var logsLatestInput = z2.object({
536
- node_id: z2.string().min(1),
537
- stream: z2.enum(["serial", "kernel"]).default("kernel"),
538
- count: z2.number().int().min(1).max(1e3).optional(),
539
- before: z2.string().optional(),
540
- start: z2.string().optional(),
541
- cursor: z2.string().optional()
542
- });
543
- var tailInput = z2.object({
544
- node_id: z2.string().min(1),
545
- duration: z2.number().int().min(1).max(120).optional(),
546
- max_events: z2.number().int().min(1).max(200).optional(),
547
- fields: z2.string().optional()
562
+ function getLatestTelemetry(request, body2, signal) {
563
+ return request(`${base}/nodes/telemetry/latest`, {
564
+ method: "POST",
565
+ body: body2,
566
+ signal
567
+ });
568
+ }
569
+ function queryNodeTelemetry(request, id, input, signal) {
570
+ return request(queryPath2(`${nodePath(id)}/telemetry/query`, input), {
571
+ method: "GET",
572
+ signal
573
+ });
574
+ }
575
+ function queryNodeLogs(request, id, stream, input, signal) {
576
+ return request(queryPath2(`${nodePath(id)}/logs/${stream}/query`, input), {
577
+ method: "GET",
578
+ signal
579
+ });
580
+ }
581
+ function nodeTelemetrySubscribePath(id, fields) {
582
+ return queryPath2(`${nodePath(id)}/telemetry/subscribe`, { fields });
583
+ }
584
+ function nodeLogsSubscribePath(id, stream) {
585
+ return `${nodePath(id)}/logs/${stream}/subscribe`;
586
+ }
587
+
588
+ // ../../packages/capabilities/dist/capabilities/observability.js
589
+ import { z as z3 } from "zod";
590
+ function tailPath(path, input) {
591
+ const query2 = new URLSearchParams({
592
+ duration: String(input.duration ?? 20),
593
+ max_events: String(input.max_events ?? 40)
594
+ });
595
+ return `${path}${path.includes("?") ? "&" : "?"}${query2}`;
596
+ }
597
+ var latestInput = z3.object({
598
+ node_id: z3.string().min(1),
599
+ start: z3.string().optional(),
600
+ end: z3.string().optional(),
601
+ span: z3.string().optional(),
602
+ max_points: z3.number().int().min(1).max(500).optional(),
603
+ metrics: z3.string().optional()
604
+ });
605
+ var logsLatestInput = z3.object({
606
+ node_id: z3.string().min(1),
607
+ stream: z3.enum(["serial", "kernel"]).default("kernel"),
608
+ count: z3.number().int().min(1).max(1e3).optional(),
609
+ before: z3.string().optional(),
610
+ start: z3.string().optional(),
611
+ cursor: z3.string().optional()
612
+ });
613
+ var tailInput = z3.object({
614
+ node_id: z3.string().min(1),
615
+ duration: z3.number().int().min(1).max(120).optional(),
616
+ max_events: z3.number().int().min(1).max(200).optional(),
617
+ fields: z3.string().optional()
548
618
  });
549
619
  var logsTailInput = tailInput.extend({
550
- stream: z2.enum(["serial", "kernel"]).default("kernel")
620
+ stream: z3.enum(["serial", "kernel"]).default("kernel")
551
621
  });
552
622
  function expandSpan(span, start, end) {
553
623
  if (start?.trim() && end?.trim()) {
@@ -589,12 +659,12 @@ var telemetryLatestCapability = defineCapability({
589
659
  const parsed = latestInput.parse(input);
590
660
  const id = parsed.node_id.trim();
591
661
  const range = expandSpan(parsed.span, parsed.start, parsed.end);
592
- return ctx.fetch(queryPath2(`${nodePrefix(ctx.role, id)}/telemetry/query`, {
662
+ return queryNodeTelemetry(ctx.fetch, id, {
593
663
  start: range.start,
594
664
  end: range.end,
595
- max_points: String(parsed.max_points ?? 240),
596
- metrics: parsed.metrics
597
- }), { method: "GET" });
665
+ max_points: parsed.max_points ?? 240,
666
+ metrics: parsed.metrics?.trim() || void 0
667
+ });
598
668
  }
599
669
  });
600
670
  var telemetryLatestBatchCapability = defineCapability({
@@ -619,11 +689,8 @@ var telemetryLatestBatchCapability = defineCapability({
619
689
  required: ["node_ids"]
620
690
  }
621
691
  },
622
- input: z2.object({ node_ids: z2.array(z2.uuid()).min(1).max(100) }),
623
- execute: async (ctx, input) => ctx.fetch("/v1/observability/nodes/telemetry/latest", {
624
- method: "POST",
625
- body: { node_ids: input.node_ids }
626
- })
692
+ input: z3.object({ node_ids: z3.array(z3.uuid()).min(1).max(100) }),
693
+ execute: async (ctx, input) => getLatestTelemetry(ctx.fetch, { node_ids: input.node_ids })
627
694
  });
628
695
  var logsLatestCapability = defineCapability({
629
696
  id: "logs.latest",
@@ -658,13 +725,13 @@ var logsLatestCapability = defineCapability({
658
725
  const id = parsed.node_id.trim();
659
726
  const end = parsed.before?.trim() || (/* @__PURE__ */ new Date()).toISOString();
660
727
  const start = parsed.start?.trim() || new Date(Date.parse(end) - 7 * 864e5).toISOString();
661
- return ctx.fetch(queryPath2(`${nodePrefix(ctx.role, id)}/logs/${parsed.stream}/query`, {
728
+ return queryNodeLogs(ctx.fetch, id, parsed.stream, {
662
729
  start,
663
730
  end,
664
- limit: String(parsed.count ?? 200),
731
+ limit: parsed.count ?? 200,
665
732
  order: "desc",
666
- cursor: parsed.cursor
667
- }), { method: "GET" });
733
+ cursor: parsed.cursor?.trim() || void 0
734
+ });
668
735
  }
669
736
  });
670
737
  var telemetrySnapshotCapability = defineCapability({
@@ -685,13 +752,11 @@ var telemetrySnapshotCapability = defineCapability({
685
752
  required: ["node_id"]
686
753
  }
687
754
  },
688
- input: z2.object({
689
- node_id: z2.string().min(1),
690
- limit: z2.number().int().min(1).max(1e3).optional()
755
+ input: z3.object({
756
+ node_id: z3.string().min(1),
757
+ limit: z3.number().int().min(1).max(1e3).optional()
691
758
  }),
692
- execute: async (ctx, input) => ctx.fetch(queryPath2(`/v1/observability/nodes/${encodeURIComponent(input.node_id)}/telemetry/latest`, {
693
- limit: String(input.limit ?? 1)
694
- }), { method: "GET" })
759
+ execute: async (ctx, input) => getNodeLatestTelemetry(ctx.fetch, input.node_id, { limit: input.limit ?? 1 })
695
760
  });
696
761
  var telemetryTailCapability = defineCapability({
697
762
  id: "telemetry.tail",
@@ -716,11 +781,7 @@ var telemetryTailCapability = defineCapability({
716
781
  execute: async (ctx, input) => {
717
782
  const parsed = tailInput.parse(input);
718
783
  const id = parsed.node_id.trim();
719
- return ctx.fetch(queryPath2(`${nodePrefix(ctx.role, id)}/telemetry/subscribe`, {
720
- fields: parsed.fields,
721
- duration: String(parsed.duration ?? 20),
722
- max_events: String(parsed.max_events ?? 40)
723
- }), { method: "GET", headers: { Accept: "text/event-stream" } });
784
+ return ctx.fetch(tailPath(nodeTelemetrySubscribePath(id, parsed.fields?.trim() || void 0), parsed), { method: "GET", headers: { Accept: "text/event-stream" } });
724
785
  }
725
786
  });
726
787
  var logsTailCapability = defineCapability({
@@ -746,10 +807,10 @@ var logsTailCapability = defineCapability({
746
807
  execute: async (ctx, input) => {
747
808
  const parsed = logsTailInput.parse(input);
748
809
  const id = parsed.node_id.trim();
749
- return ctx.fetch(queryPath2(`${nodePrefix(ctx.role, id)}/logs/${parsed.stream}/subscribe`, {
750
- duration: String(parsed.duration ?? 20),
751
- max_events: String(parsed.max_events ?? 40)
752
- }), { method: "GET", headers: { Accept: "text/event-stream" } });
810
+ return ctx.fetch(tailPath(nodeLogsSubscribePath(id, parsed.stream), parsed), {
811
+ method: "GET",
812
+ headers: { Accept: "text/event-stream" }
813
+ });
753
814
  }
754
815
  });
755
816
  var observabilityCapabilities = [
@@ -762,25 +823,25 @@ var observabilityCapabilities = [
762
823
  ];
763
824
 
764
825
  // ../../packages/capabilities/dist/capabilities/tokens.js
765
- import { z as z3 } from "zod";
766
- var optionalText = z3.string().nullish();
767
- var tokenCreateInput = z3.object({
768
- organization_id: z3.string().min(1),
826
+ import { z as z4 } from "zod";
827
+ var optionalText = z4.string().nullish();
828
+ var tokenCreateInput = z4.object({
829
+ organization_id: z4.string().min(1),
769
830
  facility_id: optionalText,
770
- expires_in_seconds: z3.number().int().positive().nullish(),
771
- filter: z3.string().nullish(),
831
+ expires_in_seconds: z4.number().int().positive().nullish(),
832
+ filter: z4.string().nullish(),
772
833
  ip: optionalText,
773
834
  installer_base: optionalText,
774
835
  host: optionalText,
775
- hosts: z3.array(z3.string()).nullish(),
836
+ hosts: z4.array(z4.string()).nullish(),
776
837
  username: optionalText,
777
- port: z3.number().int().min(1).max(65535).nullish(),
838
+ port: z4.number().int().min(1).max(65535).nullish(),
778
839
  private_key: optionalText,
779
- yes: z3.boolean().optional()
840
+ yes: z4.boolean().optional()
780
841
  });
781
- var emptyInput = z3.object({});
842
+ var emptyInput = z4.object({});
782
843
  function buildEnrollmentInstallCommand(options) {
783
- const base = (options.base ?? "https://api.ornn.com/v1/orchestrator").replace(/\/+$/, "");
844
+ const base3 = (options.base ?? "https://api.ornn.com/v1/orchestrator").replace(/\/+$/, "");
784
845
  const params = [`token=${encodeURIComponent(options.token)}`];
785
846
  if (options.facilityId)
786
847
  params.push(`facility_id=${encodeURIComponent(options.facilityId)}`);
@@ -792,7 +853,7 @@ function buildEnrollmentInstallCommand(options) {
792
853
  params.push(`restore_node_id=${encodeURIComponent(options.restoreNodeId)}`);
793
854
  if (options.force)
794
855
  params.push("force=true");
795
- const href = `${base}/enrollment/install?${params.join("&")}`;
856
+ const href = `${base3}/enrollment/install?${params.join("&")}`;
796
857
  return `set -o pipefail; curl -fsSL '${href.replace(/'/g, "'\\''")}' | sudo bash`;
797
858
  }
798
859
  function tokenString(row, keys) {
@@ -919,20 +980,20 @@ var tokensCreateCapability = defineCapability({
919
980
  var tokenCapabilities = [tokensListCapability, tokensCreateCapability];
920
981
 
921
982
  // ../../packages/capabilities/dist/capabilities/users.js
922
- import { z as z4 } from "zod";
923
- var directoryLimit = z4.number().int().min(1).max(100).default(25);
924
- var directoryOffset = z4.number().int().nonnegative().optional();
925
- var organizationListInput = z4.object({
926
- q: z4.string().trim().optional().describe("Company name, contact/member name, or email."),
927
- role: z4.enum(["consumer", "supplier"]).optional(),
928
- approved: z4.boolean().optional(),
929
- ids: z4.array(z4.uuid()).min(1).max(100).optional(),
983
+ import { z as z5 } from "zod";
984
+ var directoryLimit = z5.number().int().min(1).max(100).default(25);
985
+ var directoryOffset = z5.number().int().nonnegative().optional();
986
+ var organizationListInput = z5.object({
987
+ q: z5.string().trim().optional().describe("Company name, contact/member name, or email."),
988
+ role: z5.enum(["consumer", "supplier"]).optional(),
989
+ approved: z5.boolean().optional(),
990
+ ids: z5.array(z5.uuid()).min(1).max(100).optional(),
930
991
  limit: directoryLimit,
931
992
  offset: directoryOffset
932
993
  });
933
- var usersListInput = z4.object({
934
- q: z4.string().trim().optional().describe("Person name, email, or company name."),
935
- organization_id: z4.uuid().optional(),
994
+ var usersListInput = z5.object({
995
+ q: z5.string().trim().optional().describe("Person name, email, or company name."),
996
+ organization_id: z5.uuid().optional(),
936
997
  limit: directoryLimit,
937
998
  offset: directoryOffset
938
999
  });
@@ -1078,7 +1139,8 @@ var ADMIN_CLI_ROOTS = [
1078
1139
  { name: "nodes" },
1079
1140
  { name: "enrollment-tokens" },
1080
1141
  { name: "capacity-offers" },
1081
- { name: "reservations" }
1142
+ { name: "reservations" },
1143
+ { name: "ssh" }
1082
1144
  ];
1083
1145
  function adminHelp(command, outcome, human, automation, acceptedReferences = []) {
1084
1146
  return {
@@ -1107,7 +1169,7 @@ var adminOrganizationsListCapability = withAdminBinding(organizationListCapabili
1107
1169
  var adminSuppliersListCapability = withAdminBinding(listSuppliersCapability, adminHelp(["admin", "suppliers", "list"], "List supplier organizations visible to staff; pass next_offset as --offset to continue.", "ornn admin suppliers list [--limit 50] [--offset OFFSET]", "ornn admin suppliers list --limit 50 --offset OFFSET --format json"));
1108
1170
  var adminFacilitiesListCapability = withAdminBinding(listFacilitiesCapability, adminHelp(["admin", "facilities", "list"], "List facilities visible to staff.", "ornn admin facilities list [--supplier UUID] [--limit 50] [--cursor CURSOR]", "ornn admin facilities list --limit 50 --format json"));
1109
1171
  var adminNodesListCapability = withAdminBinding(listNodesCapability, adminHelp(["admin", "nodes", "list"], "List enrolled and ghost nodes.", "ornn admin nodes list [--supplier UUID] [--facility FACILITY] [--status STATUS] [--reservation UUID] [--limit 50] [--cursor CURSOR]", "ornn admin nodes list --limit 50 [--cursor CURSOR] --format json"));
1110
- var nodeInput = z5.object({ node_id: z5.string().min(1) });
1172
+ var nodeInput = z6.object({ node_id: z6.string().min(1) });
1111
1173
  var adminNodeHealthCapability = defineCapability({
1112
1174
  id: "nodes.health",
1113
1175
  domain: "fleet",
@@ -1236,7 +1298,7 @@ function listOffers(request, filter = {}) {
1236
1298
  }
1237
1299
 
1238
1300
  // ../../packages/capabilities/dist/capabilities/admin-capacity-reservations.js
1239
- import { z as z8 } from "zod";
1301
+ import { z as z9 } from "zod";
1240
1302
 
1241
1303
  // ../../packages/capabilities/dist/capabilities/staff-shared.js
1242
1304
  function statusOf(error) {
@@ -1279,7 +1341,7 @@ function ensureFacility2(fetch, organizationId, region2) {
1279
1341
  }
1280
1342
 
1281
1343
  // ../../packages/capabilities/dist/capabilities/native-listing.js
1282
- import { z as z7 } from "zod";
1344
+ import { z as z8 } from "zod";
1283
1345
 
1284
1346
  // ../../packages/capabilities/dist/compute-units.js
1285
1347
  var CPU_SLUG = "cpu";
@@ -1295,10 +1357,10 @@ function unitsPerNode(listing) {
1295
1357
  }
1296
1358
 
1297
1359
  // ../../packages/capabilities/dist/capabilities/market-shared.js
1298
- import { z as z6 } from "zod";
1299
- var positionals = z6.array(z6.string()).max(0).default([]);
1300
- var microUsd = z6.coerce.number().int().positive();
1301
- var flag = z6.preprocess((value) => value === "true" ? true : value === "false" ? false : value, z6.boolean());
1360
+ import { z as z7 } from "zod";
1361
+ var positionals = z7.array(z7.string()).max(0).default([]);
1362
+ var microUsd = z7.coerce.number().int().positive();
1363
+ var flag = z7.preprocess((value) => value === "true" ? true : value === "false" ? false : value, z7.boolean());
1302
1364
  function resolveIdempotencyKey(ctx, supplied) {
1303
1365
  return ctx.cli?.interaction?.idempotencyKey(supplied) ?? supplied?.trim();
1304
1366
  }
@@ -1323,17 +1385,17 @@ function microUsdLabel(value) {
1323
1385
 
1324
1386
  // ../../packages/capabilities/dist/capabilities/native-listing.js
1325
1387
  var nativeTermFields = {
1326
- type: z7.enum(["reserved", "spot", "on-demand"]).nullable().optional(),
1327
- minDurationHours: z7.coerce.number().nonnegative(),
1328
- maxDurationHours: z7.coerce.number().nonnegative(),
1329
- pricePerGpuHourMicroUsd: z7.coerce.number().int().positive().describe("Micro-USD per unit-hour: per GPU, or per vCPU on CPU capacity."),
1330
- downPaymentCents: z7.coerce.number().int().nonnegative().nullable().optional(),
1388
+ type: z8.enum(["reserved", "spot", "on-demand"]).nullable().optional(),
1389
+ minDurationHours: z8.coerce.number().nonnegative(),
1390
+ maxDurationHours: z8.coerce.number().nonnegative(),
1391
+ pricePerGpuHourMicroUsd: z8.coerce.number().int().positive().describe("Micro-USD per unit-hour: per GPU, or per vCPU on CPU capacity."),
1392
+ downPaymentCents: z8.coerce.number().int().nonnegative().nullable().optional(),
1331
1393
  renewable: flag,
1332
- preemptNoticeSeconds: z7.coerce.number().int().nonnegative().optional()
1394
+ preemptNoticeSeconds: z8.coerce.number().int().nonnegative().optional()
1333
1395
  };
1334
- var nativeTermInput = z7.object(nativeTermFields).strict();
1396
+ var nativeTermInput = z8.object(nativeTermFields).strict();
1335
1397
  function jsonArray(item) {
1336
- return z7.preprocess((value) => {
1398
+ return z8.preprocess((value) => {
1337
1399
  if (typeof value !== "string")
1338
1400
  return value;
1339
1401
  try {
@@ -1341,36 +1403,36 @@ function jsonArray(item) {
1341
1403
  } catch {
1342
1404
  return value;
1343
1405
  }
1344
- }, z7.array(item));
1406
+ }, z8.array(item));
1345
1407
  }
1346
1408
  var nativeTermsInput = jsonArray(nativeTermInput);
1347
1409
  var listingWriteControls = {
1348
- confirm: z7.boolean().optional(),
1349
- idempotencyKey: z7.string().min(1).max(200)
1410
+ confirm: z8.boolean().optional(),
1411
+ idempotencyKey: z8.string().min(1).max(200)
1350
1412
  };
1351
- var listingLocation = z7.string().trim().min(1).max(256).optional().describe("Instead of facilityId: a state, city, address, or catalog region such as us-west-3. Ornn places it in a catalog region and uses the supplier's facility there.");
1413
+ var listingLocation = z8.string().trim().min(1).max(256).optional().describe("Instead of facilityId: a state, city, address, or catalog region such as us-west-3. Ornn places it in a catalog region and uses the supplier's facility there.");
1352
1414
  var CPU_CORES_MESSAGE = "CPU capacity is sold in whole cores (2 vCPUs each).";
1353
- var coresPerNode = z7.coerce.number().int(CPU_CORES_MESSAGE).min(1, CPU_CORES_MESSAGE).nullable().optional().describe("CPU capacity only: cores per node (2 vCPUs each), priced per vCPU-hour.");
1354
- var nativeListingCreateInput = z7.object({
1355
- organizationId: z7.string().uuid().nullable().optional(),
1356
- kind: z7.enum(["primary", "secondary"]).default("primary"),
1357
- gpuSlug: z7.string().min(1).nullable().describe('Catalog GPU slug; null or "cpu" lists CPU capacity sold per vCPU-hour.'),
1358
- gpusPerNode: z7.coerce.number().int().nonnegative().optional().describe("GPUs per node; 0 or omitted on CPU capacity."),
1415
+ var coresPerNode = z8.coerce.number().int(CPU_CORES_MESSAGE).min(1, CPU_CORES_MESSAGE).nullable().optional().describe("CPU capacity only: cores per node (2 vCPUs each), priced per vCPU-hour.");
1416
+ var nativeListingCreateInput = z8.object({
1417
+ organizationId: z8.string().uuid().nullable().optional(),
1418
+ kind: z8.enum(["primary", "secondary"]).default("primary"),
1419
+ gpuSlug: z8.string().min(1).nullable().describe('Catalog GPU slug; null or "cpu" lists CPU capacity sold per vCPU-hour.'),
1420
+ gpusPerNode: z8.coerce.number().int().nonnegative().optional().describe("GPUs per node; 0 or omitted on CPU capacity."),
1359
1421
  coresPerNode,
1360
- capacityNodeCount: z7.coerce.number().int().positive().optional().describe("Defaults to the number of nodeIds."),
1361
- nodeIds: jsonArray(z7.string().uuid()).optional(),
1362
- facilityId: z7.string().uuid().optional(),
1422
+ capacityNodeCount: z8.coerce.number().int().positive().optional().describe("Defaults to the number of nodeIds."),
1423
+ nodeIds: jsonArray(z8.string().uuid()).optional(),
1424
+ facilityId: z8.string().uuid().optional(),
1363
1425
  location: listingLocation,
1364
- provisioningType: z7.enum(["bare-metal", "virtual-machine"]),
1365
- state: z7.enum(["draft", "available"]),
1366
- availableAt: z7.iso.datetime({ offset: true }).nullable().optional().describe("Primary capacity takes availableAt and availableUntil, or daysToRfs, not both."),
1367
- availableUntil: z7.iso.datetime({ offset: true }).nullable().optional(),
1368
- daysToRfs: z7.coerce.number().int().nonnegative().optional().describe("Days until ready for service; 0 when ready now. Required unless both dates are set."),
1369
- cpu: z7.string().optional(),
1370
- ram: z7.string().optional(),
1371
- storage: z7.string().optional(),
1372
- fabricType: z7.string().optional(),
1373
- internet: z7.string().optional(),
1426
+ provisioningType: z8.enum(["bare-metal", "virtual-machine"]),
1427
+ state: z8.enum(["draft", "available"]),
1428
+ availableAt: z8.iso.datetime({ offset: true }).nullable().optional().describe("Primary capacity takes availableAt and availableUntil, or daysToRfs, not both."),
1429
+ availableUntil: z8.iso.datetime({ offset: true }).nullable().optional(),
1430
+ daysToRfs: z8.coerce.number().int().nonnegative().optional().describe("Days until ready for service; 0 when ready now. Required unless both dates are set."),
1431
+ cpu: z8.string().optional(),
1432
+ ram: z8.string().optional(),
1433
+ storage: z8.string().optional(),
1434
+ fabricType: z8.string().optional(),
1435
+ internet: z8.string().optional(),
1374
1436
  terms: nativeTermsInput,
1375
1437
  ...listingWriteControls
1376
1438
  }).strict().refine((value) => Boolean(value.facilityId) !== Boolean(value.location), {
@@ -1409,22 +1471,22 @@ var nativeListingCreateInput = z7.object({
1409
1471
  });
1410
1472
  });
1411
1473
  var nativeListingUpdateFields = {
1412
- state: z7.enum(["draft", "available", "delisted"]).optional(),
1413
- nodeCount: z7.coerce.number().int().positive().optional(),
1414
- gpuSlug: z7.string().min(1).nullable().optional().describe('Catalog GPU slug; null or "cpu" for CPU capacity.'),
1415
- gpusPerNode: z7.coerce.number().int().nonnegative().optional(),
1474
+ state: z8.enum(["draft", "available", "delisted"]).optional(),
1475
+ nodeCount: z8.coerce.number().int().positive().optional(),
1476
+ gpuSlug: z8.string().min(1).nullable().optional().describe('Catalog GPU slug; null or "cpu" for CPU capacity.'),
1477
+ gpusPerNode: z8.coerce.number().int().nonnegative().optional(),
1416
1478
  coresPerNode,
1417
- facilityId: z7.string().uuid().optional(),
1479
+ facilityId: z8.string().uuid().optional(),
1418
1480
  location: listingLocation,
1419
- provisioningType: z7.enum(["bare-metal", "virtual-machine"]).optional(),
1420
- availableAt: z7.iso.datetime({ offset: true }).optional(),
1421
- availableUntil: z7.iso.datetime({ offset: true }).nullable().optional(),
1422
- daysToRfs: z7.coerce.number().int().nonnegative().optional(),
1423
- cpu: z7.string().optional(),
1424
- ram: z7.string().optional(),
1425
- storage: z7.string().optional(),
1426
- fabricType: z7.string().optional(),
1427
- internet: z7.string().optional()
1481
+ provisioningType: z8.enum(["bare-metal", "virtual-machine"]).optional(),
1482
+ availableAt: z8.iso.datetime({ offset: true }).optional(),
1483
+ availableUntil: z8.iso.datetime({ offset: true }).nullable().optional(),
1484
+ daysToRfs: z8.coerce.number().int().nonnegative().optional(),
1485
+ cpu: z8.string().optional(),
1486
+ ram: z8.string().optional(),
1487
+ storage: z8.string().optional(),
1488
+ fabricType: z8.string().optional(),
1489
+ internet: z8.string().optional()
1428
1490
  };
1429
1491
 
1430
1492
  // ../../packages/capabilities/dist/capabilities/admin-capacity-reservations.js
@@ -1464,16 +1526,16 @@ var adminCapacityOffersCreateCapability = defineCapability({
1464
1526
  return createCapacityListing(ctx.fetch, { ...body2, facilityId }, resolveIdempotencyKey(ctx, idempotencyKey));
1465
1527
  }
1466
1528
  });
1467
- var wholeSecondInstant = z8.iso.datetime({ offset: true }).refine((value) => !/\.\d*[1-9]/.test(value), "Use a time in whole seconds.");
1468
- var reservationCreateInput = z8.object({
1469
- organizationId: z8.string().uuid().describe("The customer organization the window is booked for."),
1470
- listingId: z8.string().uuid().describe("The listing's capacityListingId. Staff may book any available listing."),
1471
- listingTermId: z8.string().uuid().describe("The listingTermsId of a non-renewable Reserved term on that listing."),
1472
- nodes: z8.number().int().positive().max(2147483647).describe("Whole nodes to book."),
1529
+ var wholeSecondInstant = z9.iso.datetime({ offset: true }).refine((value) => !/\.\d*[1-9]/.test(value), "Use a time in whole seconds.");
1530
+ var reservationCreateInput = z9.object({
1531
+ organizationId: z9.string().uuid().describe("The customer organization the window is booked for."),
1532
+ listingId: z9.string().uuid().describe("The listing's capacityListingId. Staff may book any available listing."),
1533
+ listingTermId: z9.string().uuid().describe("The listingTermsId of a non-renewable Reserved term on that listing."),
1534
+ nodes: z9.number().int().positive().max(2147483647).describe("Whole nodes to book."),
1473
1535
  startsAt: wholeSecondInstant.describe("RFC 3339 start of the window in whole seconds, no more than five minutes ago."),
1474
1536
  endsAt: wholeSecondInstant.describe("RFC 3339 end of the window in whole seconds, at least an hour after the start and within the term's duration range."),
1475
1537
  pricePerGpuHourMicroUsd: microUsd.describe("The term's price in micro-USD per GPU-hour (per vCPU-hour on CPU capacity). A changed price refuses the booking."),
1476
- idempotencyKey: z8.string().trim().min(1).max(200).describe("Reuse this key when retrying the same booking.")
1538
+ idempotencyKey: z9.string().trim().min(1).max(200).describe("Reuse this key when retrying the same booking.")
1477
1539
  });
1478
1540
  var adminReservationsCreateCapability = defineCapability({
1479
1541
  id: "reservations.create",
@@ -1501,7 +1563,7 @@ var adminCapacityReservationCapabilities = [
1501
1563
  ];
1502
1564
 
1503
1565
  // ../../packages/capabilities/dist/capabilities/commerce-market.js
1504
- import { z as z9 } from "zod";
1566
+ import { z as z10 } from "zod";
1505
1567
  function help(command, outcome, human, automation, related, order, acceptedReferences = []) {
1506
1568
  return {
1507
1569
  arguments: "semantic",
@@ -1516,15 +1578,15 @@ function help(command, outcome, human, automation, related, order, acceptedRefer
1516
1578
  order
1517
1579
  };
1518
1580
  }
1519
- var pageLimit = z9.coerce.number().int().min(1).max(200).optional();
1520
- var listingsListInput = z9.object({
1581
+ var pageLimit = z10.coerce.number().int().min(1).max(200).optional();
1582
+ var listingsListInput = z10.object({
1521
1583
  $positionals: positionals,
1522
- kind: z9.enum(["primary", "secondary", "on_demand"]).optional(),
1523
- state: z9.enum(["draft", "available", "held", "sold", "delisted"]).optional(),
1524
- sourceReservationId: z9.string().uuid().optional(),
1525
- sourceListingId: z9.string().uuid().optional(),
1526
- limit: z9.coerce.number().int().min(1).max(100).optional(),
1527
- cursor: z9.string().min(1).optional()
1584
+ kind: z10.enum(["primary", "secondary", "on_demand"]).optional(),
1585
+ state: z10.enum(["draft", "available", "held", "sold", "delisted"]).optional(),
1586
+ sourceReservationId: z10.string().uuid().optional(),
1587
+ sourceListingId: z10.string().uuid().optional(),
1588
+ limit: z10.coerce.number().int().min(1).max(100).optional(),
1589
+ cursor: z10.string().min(1).optional()
1528
1590
  });
1529
1591
  var listingsListCapability = defineCapability({
1530
1592
  id: "listings.list",
@@ -1551,9 +1613,9 @@ var listingsListCapability = defineCapability({
1551
1613
  });
1552
1614
  }
1553
1615
  });
1554
- var listingShowInput = z9.object({
1616
+ var listingShowInput = z10.object({
1555
1617
  $positionals: positionals,
1556
- listingId: z9.string().uuid()
1618
+ listingId: z10.string().uuid()
1557
1619
  });
1558
1620
  var listingShowCapability = defineCapability({
1559
1621
  id: "listings.show",
@@ -1591,11 +1653,11 @@ var listingTermsCapability = defineCapability({
1591
1653
  return listCapacityTerms(ctx.fetch, parsed.listingId);
1592
1654
  }
1593
1655
  });
1594
- var listingAvailabilityInput = z9.object({
1656
+ var listingAvailabilityInput = z10.object({
1595
1657
  $positionals: positionals,
1596
- listingId: z9.string().uuid(),
1597
- from: z9.iso.datetime({ offset: true }).optional().describe("RFC 3339 start of the range to read. Defaults to now or the listing's start."),
1598
- to: z9.iso.datetime({ offset: true }).optional().describe("RFC 3339 end of the range to read. Defaults to the listing's end.")
1658
+ listingId: z10.string().uuid(),
1659
+ from: z10.iso.datetime({ offset: true }).optional().describe("RFC 3339 start of the range to read. Defaults to now or the listing's start."),
1660
+ to: z10.iso.datetime({ offset: true }).optional().describe("RFC 3339 end of the range to read. Defaults to the listing's end.")
1599
1661
  });
1600
1662
  var listingAvailabilityCapability = defineCapability({
1601
1663
  id: "listings.availability",
@@ -1617,16 +1679,16 @@ var listingAvailabilityCapability = defineCapability({
1617
1679
  });
1618
1680
  }
1619
1681
  });
1620
- var listingRelistInput = z9.strictObject({
1682
+ var listingRelistInput = z10.strictObject({
1621
1683
  $positionals: positionals,
1622
- reservationId: z9.string().uuid(),
1623
- startsAt: z9.iso.datetime({ offset: true }),
1624
- endsAt: z9.iso.datetime({ offset: true }),
1625
- nodeCount: z9.coerce.number().int().positive(),
1684
+ reservationId: z10.string().uuid(),
1685
+ startsAt: z10.iso.datetime({ offset: true }),
1686
+ endsAt: z10.iso.datetime({ offset: true }),
1687
+ nodeCount: z10.coerce.number().int().positive(),
1626
1688
  terms: nativeTermsInput,
1627
- idempotencyKey: z9.string().min(1).max(200).optional(),
1628
- confirm: z9.boolean().optional(),
1629
- yes: z9.boolean().optional()
1689
+ idempotencyKey: z10.string().min(1).max(200).optional(),
1690
+ confirm: z10.boolean().optional(),
1691
+ yes: z10.boolean().optional()
1630
1692
  });
1631
1693
  var listingRelistCapability = defineCapability({
1632
1694
  id: "listings.relist",
@@ -1652,10 +1714,10 @@ var listingRelistCapability = defineCapability({
1652
1714
  return relistReservation(ctx.fetch, reservationId, body2, resolveIdempotencyKey(ctx, idempotencyKey));
1653
1715
  }
1654
1716
  });
1655
- var listingUpdateInput = z9.object({
1717
+ var listingUpdateInput = z10.object({
1656
1718
  $positionals: positionals,
1657
- listingId: z9.string().uuid(),
1658
- listingTermsId: z9.string().uuid(),
1719
+ listingId: z10.string().uuid(),
1720
+ listingTermsId: z10.string().uuid(),
1659
1721
  ...nativeTermFields,
1660
1722
  ...listingWriteControls
1661
1723
  }).strict();
@@ -1683,10 +1745,10 @@ var listingUpdateCapability = defineCapability({
1683
1745
  return editCapacityTerms(ctx.fetch, listingId, listingTermsId, body2, resolveIdempotencyKey(ctx, idempotencyKey));
1684
1746
  }
1685
1747
  });
1686
- var listingDelistInput = z9.object({
1748
+ var listingDelistInput = z10.object({
1687
1749
  $positionals: positionals,
1688
- listingId: z9.string().uuid(),
1689
- confirm: z9.boolean().optional()
1750
+ listingId: z10.string().uuid(),
1751
+ confirm: z10.boolean().optional()
1690
1752
  });
1691
1753
  var listingDelistCapability = defineCapability({
1692
1754
  id: "listings.delist",
@@ -1715,10 +1777,10 @@ var listingDelistCapability = defineCapability({
1715
1777
  return delistCapacityListing(ctx.fetch, parsed.listingId);
1716
1778
  }
1717
1779
  });
1718
- var reservationsListInput = z9.object({
1780
+ var reservationsListInput = z10.object({
1719
1781
  $positionals: positionals,
1720
- kind: z9.enum(["schedule", "spot"]).optional(),
1721
- status: z9.enum([
1782
+ kind: z10.enum(["schedule", "spot"]).optional(),
1783
+ status: z10.enum([
1722
1784
  "awaiting_down_payment",
1723
1785
  "awaiting_payment",
1724
1786
  "confirmed",
@@ -1726,9 +1788,9 @@ var reservationsListInput = z9.object({
1726
1788
  "completed",
1727
1789
  "cancelled"
1728
1790
  ]).optional(),
1729
- listingId: z9.string().uuid().optional().describe("Trades on a listing you own."),
1791
+ listingId: z10.string().uuid().optional().describe("Trades on a listing you own."),
1730
1792
  limit: pageLimit,
1731
- cursor: z9.string().min(1).optional()
1793
+ cursor: z10.string().min(1).optional()
1732
1794
  });
1733
1795
  var reservationsListCapability = defineCapability({
1734
1796
  id: "reservations.list",
@@ -1749,9 +1811,9 @@ var reservationsListCapability = defineCapability({
1749
1811
  return listReservations(ctx.fetch, filter);
1750
1812
  }
1751
1813
  });
1752
- var reservationLookupInput = z9.object({
1814
+ var reservationLookupInput = z10.object({
1753
1815
  $positionals: positionals,
1754
- reservationId: z9.string().uuid()
1816
+ reservationId: z10.string().uuid()
1755
1817
  });
1756
1818
  var reservationsShowCapability = defineCapability({
1757
1819
  id: "reservations.show",
@@ -1789,16 +1851,16 @@ var reservationInvoicesCapability = defineCapability({
1789
1851
  return listReservationInvoices(ctx.fetch, parsed.reservationId);
1790
1852
  }
1791
1853
  });
1792
- var reservationPurchaseInput = z9.object({
1854
+ var reservationPurchaseInput = z10.object({
1793
1855
  $positionals: positionals,
1794
- listingId: z9.string().uuid().describe("The relisted (secondary) listing's capacityListingId, from listings.list."),
1795
- listingTermId: z9.string().uuid().describe("The listingTermsId of the listing's term, from listings.terms."),
1796
- nodeCount: z9.coerce.number().int().positive().optional().describe("Whole nodes to book for the window. Defaults to every node the listing sells."),
1797
- startsAt: z9.iso.datetime({ offset: true }).describe("RFC 3339 start of the window, in whole seconds, inside the listing and not in the past."),
1798
- endsAt: z9.iso.datetime({ offset: true }).describe("RFC 3339 end of the window, at least an hour after the start and within the term's duration range, or at the listing's end."),
1856
+ listingId: z10.string().uuid().describe("The relisted (secondary) listing's capacityListingId, from listings.list."),
1857
+ listingTermId: z10.string().uuid().describe("The listingTermsId of the listing's term, from listings.terms."),
1858
+ nodeCount: z10.coerce.number().int().positive().optional().describe("Whole nodes to book for the window. Defaults to every node the listing sells."),
1859
+ startsAt: z10.iso.datetime({ offset: true }).describe("RFC 3339 start of the window, in whole seconds, inside the listing and not in the past."),
1860
+ endsAt: z10.iso.datetime({ offset: true }).describe("RFC 3339 end of the window, at least an hour after the start and within the term's duration range, or at the listing's end."),
1799
1861
  pricePerGpuHourMicroUsd: microUsd.describe("The term's price from listings.terms, in micro-USD per GPU-hour (per vCPU-hour on CPU capacity). A changed price refuses the purchase."),
1800
- idempotencyKey: z9.string().min(1).max(200).optional(),
1801
- confirm: z9.boolean().optional()
1862
+ idempotencyKey: z10.string().min(1).max(200).optional(),
1863
+ confirm: z10.boolean().optional()
1802
1864
  });
1803
1865
  var reservationPurchaseCapability = defineCapability({
1804
1866
  id: "reservations.purchase",
@@ -1856,7 +1918,7 @@ var commerceMarketCapabilities = [
1856
1918
  ];
1857
1919
 
1858
1920
  // ../../packages/capabilities/dist/capabilities/markets.js
1859
- import { z as z10 } from "zod";
1921
+ import { z as z11 } from "zod";
1860
1922
 
1861
1923
  // ../../packages/capabilities/dist/spec-catalog.js
1862
1924
  var HARDWARE_CATALOG_PATH = "/v1/orchestrator/catalog/hardware";
@@ -1978,10 +2040,10 @@ function projectCatalogTerms(terms, kind) {
1978
2040
  }
1979
2041
 
1980
2042
  // ../../packages/capabilities/dist/capabilities/markets.js
1981
- var saleType = z10.enum(["spot", "on-demand"]).optional().describe("spot (the default) yields to scheduled bookings; on-demand runs until stopped or the listing ends.");
1982
- var region = z10.string().min(1).optional().describe("A region slug, for example us-east-11. Omit for every region.");
1983
- var nodes = z10.coerce.number().int().min(1).describe("Nodes to buy, each the GPUs (or vCPUs on the cpu book) of one whole machine.");
1984
- var bookSlug = z10.string().min(1).describe('Catalog GPU slug, for example nvidia_h100_sxm, or "cpu" for CPU capacity sold per vCPU-hour.');
2043
+ var saleType = z11.enum(["spot", "on-demand"]).optional().describe("spot (the default) yields to scheduled bookings; on-demand runs until stopped or the listing ends.");
2044
+ var region = z11.string().min(1).optional().describe("A region slug, for example us-east-11. Omit for every region.");
2045
+ var nodes = z11.coerce.number().int().min(1).describe("Nodes to buy, each the GPUs (or vCPUs on the cpu book) of one whole machine.");
2046
+ var bookSlug = z11.string().min(1).describe('Catalog GPU slug, for example nvidia_h100_sxm, or "cpu" for CPU capacity sold per vCPU-hour.');
1985
2047
  function help2(command, outcome, human, automation, related, order, acceptedReferences = []) {
1986
2048
  return {
1987
2049
  arguments: "semantic",
@@ -1996,11 +2058,11 @@ function help2(command, outcome, human, automation, related, order, acceptedRefe
1996
2058
  order
1997
2059
  };
1998
2060
  }
1999
- var marketBooksInput = z10.object({
2061
+ var marketBooksInput = z11.object({
2000
2062
  $positionals: positionals,
2001
- gpuSlug: z10.string().min(1).optional().describe('Only this catalog GPU slug, or "cpu".'),
2063
+ gpuSlug: z11.string().min(1).optional().describe('Only this catalog GPU slug, or "cpu".'),
2002
2064
  saleType,
2003
- region: z10.string().min(1).optional().describe("Only this region slug, or any for the books of bids in any region.")
2065
+ region: z11.string().min(1).optional().describe("Only this region slug, or any for the books of bids in any region.")
2004
2066
  });
2005
2067
  var marketBooksCapability = defineCapability({
2006
2068
  id: "market.books",
@@ -2019,7 +2081,7 @@ var marketBooksCapability = defineCapability({
2019
2081
  return listOrderBooks(ctx.fetch, parsed);
2020
2082
  }
2021
2083
  });
2022
- var marketBookInput = z10.object({
2084
+ var marketBookInput = z11.object({
2023
2085
  $positionals: positionals,
2024
2086
  gpuSlug: bookSlug,
2025
2087
  saleType,
@@ -2059,11 +2121,11 @@ var marketTradesCapability = defineCapability({
2059
2121
  return listTrades(ctx.fetch, parsed.gpuSlug, parsed);
2060
2122
  }
2061
2123
  });
2062
- var marketQuoteInput = z10.object({
2124
+ var marketQuoteInput = z11.object({
2063
2125
  $positionals: positionals,
2064
2126
  gpuSlug: bookSlug,
2065
2127
  saleType,
2066
- region: z10.string().min(1).optional().describe("A region with an order book (see market books). Omit for any region."),
2128
+ region: z11.string().min(1).optional().describe("A region with an order book (see market books). Omit for any region."),
2067
2129
  nodes
2068
2130
  });
2069
2131
  var marketQuoteCapability = defineCapability({
@@ -2083,15 +2145,15 @@ var marketQuoteCapability = defineCapability({
2083
2145
  return quoteBid(ctx.fetch, { ...parsed, orderType: "market" });
2084
2146
  }
2085
2147
  });
2086
- var marketBidInput = z10.object({
2148
+ var marketBidInput = z11.object({
2087
2149
  $positionals: positionals,
2088
2150
  gpuSlug: bookSlug,
2089
2151
  saleType,
2090
- region: z10.string().min(1).optional().describe("A region with an order book (see market books), for example us-east-11. Omit to fill in any region."),
2152
+ region: z11.string().min(1).optional().describe("A region with an order book (see market books), for example us-east-11. Omit to fill in any region."),
2091
2153
  nodes,
2092
- diskId: z10.string().uuid().optional().describe("The disk every VM boots. Omit to boot your newest disk, else Ornn's newest."),
2093
- idempotencyKey: z10.string().min(1).max(200).optional(),
2094
- confirm: z10.boolean().optional()
2154
+ diskId: z11.string().uuid().optional().describe("The disk every VM boots. Omit to boot your newest disk, else Ornn's newest."),
2155
+ idempotencyKey: z11.string().min(1).max(200).optional(),
2156
+ confirm: z11.boolean().optional()
2095
2157
  });
2096
2158
  var marketBidCapability = defineCapability({
2097
2159
  id: "market.bid",
@@ -2128,7 +2190,7 @@ var marketBidCapability = defineCapability({
2128
2190
  return placeBid(ctx.fetch, body2, resolveIdempotencyKey(ctx, parsed.idempotencyKey));
2129
2191
  }
2130
2192
  });
2131
- var marketOrdersInput = z10.object({ $positionals: positionals });
2193
+ var marketOrdersInput = z11.object({ $positionals: positionals });
2132
2194
  var marketOrdersCapability = defineCapability({
2133
2195
  id: "market.orders",
2134
2196
  domain: "markets",
@@ -2143,10 +2205,10 @@ var marketOrdersCapability = defineCapability({
2143
2205
  slack: false,
2144
2206
  execute: async (ctx) => listOrders(ctx.fetch)
2145
2207
  });
2146
- var marketCancelInput = z10.object({
2208
+ var marketCancelInput = z11.object({
2147
2209
  $positionals: positionals,
2148
- orderId: z10.string().uuid().describe("A resting bid ID."),
2149
- confirm: z10.boolean().optional()
2210
+ orderId: z11.string().uuid().describe("A resting bid ID."),
2211
+ confirm: z11.boolean().optional()
2150
2212
  });
2151
2213
  var marketCancelCapability = defineCapability({
2152
2214
  id: "market.cancel",
@@ -2174,9 +2236,9 @@ var marketCancelCapability = defineCapability({
2174
2236
  return cancelOrder(ctx.fetch, parsed.orderId);
2175
2237
  }
2176
2238
  });
2177
- var marketFillsInput = z10.object({
2239
+ var marketFillsInput = z11.object({
2178
2240
  $positionals: positionals,
2179
- orderId: z10.string().uuid().optional().describe("Only this bid's fills.")
2241
+ orderId: z11.string().uuid().optional().describe("Only this bid's fills.")
2180
2242
  });
2181
2243
  var marketFillsCapability = defineCapability({
2182
2244
  id: "market.fills",
@@ -2195,10 +2257,10 @@ var marketFillsCapability = defineCapability({
2195
2257
  return listFills(ctx.fetch, { orderId: parsed.orderId });
2196
2258
  }
2197
2259
  });
2198
- var marketEndInput = z10.object({
2260
+ var marketEndInput = z11.object({
2199
2261
  $positionals: positionals,
2200
- fillId: z10.string().uuid().describe("A fill ID; it is also its reservation ID."),
2201
- confirm: z10.boolean().optional()
2262
+ fillId: z11.string().uuid().describe("A fill ID; it is also its reservation ID."),
2263
+ confirm: z11.boolean().optional()
2202
2264
  });
2203
2265
  var marketEndCapability = defineCapability({
2204
2266
  id: "market.end",
@@ -2224,9 +2286,9 @@ var marketEndCapability = defineCapability({
2224
2286
  return stopReservation(ctx.fetch, parsed.fillId);
2225
2287
  }
2226
2288
  });
2227
- var offersListInput = z10.object({
2289
+ var offersListInput = z11.object({
2228
2290
  $positionals: positionals,
2229
- listingId: z10.string().uuid().optional().describe("A primary listing whose offer book to read. Omit for your organization's offers.")
2291
+ listingId: z11.string().uuid().optional().describe("A primary listing whose offer book to read. Omit for your organization's offers.")
2230
2292
  });
2231
2293
  var offersListCapability = defineCapability({
2232
2294
  id: "offers.list",
@@ -2245,15 +2307,15 @@ var offersListCapability = defineCapability({
2245
2307
  return listOffers(ctx.fetch, { listingId: parsed.listingId });
2246
2308
  }
2247
2309
  });
2248
- var offerPostInput = z10.object({
2310
+ var offerPostInput = z11.object({
2249
2311
  $positionals: positionals,
2250
- listingId: z10.string().uuid().describe("A primary listing."),
2251
- listingTermId: z10.string().uuid().describe("The listingTermsId of a non-spot term of that listing, from listings.terms."),
2252
- durationSeconds: z10.coerce.number().int().positive().optional().describe("How long the reservation runs, within the term's minimum and maximum duration. Omit only when they are equal, or when the term has none (the rest of the listing)."),
2312
+ listingId: z11.string().uuid().describe("A primary listing."),
2313
+ listingTermId: z11.string().uuid().describe("The listingTermsId of a non-spot term of that listing, from listings.terms."),
2314
+ durationSeconds: z11.coerce.number().int().positive().optional().describe("How long the reservation runs, within the term's minimum and maximum duration. Omit only when they are equal, or when the term has none (the rest of the listing)."),
2253
2315
  pricePerGpuHourMicroUsd: microUsd.describe("Offer price in micro-USD per GPU-hour, or per vCPU-hour on CPU capacity (1000000 = $1.00). Covers every node on the listing."),
2254
- downPaymentCents: z10.coerce.number().int().min(0).optional().describe("The down payment you offer, in cents."),
2255
- idempotencyKey: z10.string().min(1).max(200).optional(),
2256
- confirm: z10.boolean().optional()
2316
+ downPaymentCents: z11.coerce.number().int().min(0).optional().describe("The down payment you offer, in cents."),
2317
+ idempotencyKey: z11.string().min(1).max(200).optional(),
2318
+ confirm: z11.boolean().optional()
2257
2319
  });
2258
2320
  var offerPostCapability = defineCapability({
2259
2321
  id: "offers.post",
@@ -2291,10 +2353,10 @@ var offerPostCapability = defineCapability({
2291
2353
  return postOffer(ctx.fetch, body2, resolveIdempotencyKey(ctx, parsed.idempotencyKey));
2292
2354
  }
2293
2355
  });
2294
- var offerDecisionInput = z10.object({
2356
+ var offerDecisionInput = z11.object({
2295
2357
  $positionals: positionals,
2296
- offerId: z10.string().uuid(),
2297
- confirm: z10.boolean().optional()
2358
+ offerId: z11.string().uuid(),
2359
+ confirm: z11.boolean().optional()
2298
2360
  });
2299
2361
  var offerAcceptCapability = defineCapability({
2300
2362
  id: "offers.accept",
@@ -2359,10 +2421,10 @@ var marketCapabilities = [
2359
2421
  ];
2360
2422
 
2361
2423
  // ../../packages/capabilities/dist/capabilities/admin-enrollment.js
2362
- import { z as z11 } from "zod";
2363
- var UUID = z11.string().uuid();
2364
- var nonEmpty = z11.string().trim().min(1);
2365
- var tokenTtl = z11.number().int().min(60).max(24 * 60 * 60);
2424
+ import { z as z12 } from "zod";
2425
+ var UUID = z12.string().uuid();
2426
+ var nonEmpty = z12.string().trim().min(1);
2427
+ var tokenTtl = z12.number().int().min(60).max(24 * 60 * 60);
2366
2428
  function adminHelp3(command, outcome, human, automation, acceptedReferences = [], review) {
2367
2429
  return {
2368
2430
  audience: "admin",
@@ -2398,12 +2460,12 @@ var adminEnrollmentTokensListCapability2 = {
2398
2460
  }
2399
2461
  };
2400
2462
  var adminEnrollmentTokenCreateCapability = withVnextBinding(tokensCreateCapability, adminHelp3(["admin", "enrollment-tokens", "create"], "Create one expiring enrollment token through an explicit secret export.", "ornn admin enrollment-tokens create --supplier UUID --expires-in SECONDS (--print | --output PATH) [--overwrite] []", "Unsupported: token creation requires an eligible human terminal.", ["canonical supplier organization UUID"], "Review the supplier, expiry, and secret destination before minting the token."));
2401
- var tokenRevokeInput = z11.object({
2402
- tokenId: z11.string().min(1),
2463
+ var tokenRevokeInput = z12.object({
2464
+ tokenId: z12.string().min(1),
2403
2465
  token_id: UUID.optional(),
2404
2466
  expected_created_at: nonEmpty.optional(),
2405
2467
  idempotency_key: nonEmpty.optional(),
2406
- confirm: z11.boolean().optional()
2468
+ confirm: z12.boolean().optional()
2407
2469
  });
2408
2470
  function rowsFromTokenList(payload) {
2409
2471
  if (Array.isArray(payload))
@@ -2504,20 +2566,20 @@ var adminEnrollmentTokenRevokeCapability = defineCapability({
2504
2566
  };
2505
2567
  }
2506
2568
  });
2507
- var nodeEnrollInput = z11.object({
2569
+ var nodeEnrollInput = z12.object({
2508
2570
  node_id: UUID,
2509
2571
  host: nonEmpty,
2510
2572
  organization_id: UUID,
2511
2573
  facility_id: UUID,
2512
- filter: z11.string().optional(),
2574
+ filter: z12.string().optional(),
2513
2575
  identity_file: nonEmpty,
2514
- private_key: z11.string().min(1).optional(),
2576
+ private_key: z12.string().min(1).optional(),
2515
2577
  username: nonEmpty.default("root"),
2516
- port: z11.number().int().min(1).max(65535).default(22),
2578
+ port: z12.number().int().min(1).max(65535).default(22),
2517
2579
  expires_in_seconds: tokenTtl,
2518
2580
  installer_base: nonEmpty.optional(),
2519
- replace_existing_management: z11.literal(true),
2520
- verbose: z11.boolean().default(false)
2581
+ replace_existing_management: z12.literal(true),
2582
+ verbose: z12.boolean().default(false)
2521
2583
  });
2522
2584
  function safeRemoteResult(value) {
2523
2585
  if (!value || typeof value !== "object")
@@ -2607,7 +2669,7 @@ var adminNodeEnrollCapability = defineCapability({
2607
2669
  };
2608
2670
  }
2609
2671
  });
2610
- var nodeKeyInput = z11.object({ node_id: UUID });
2672
+ var nodeKeyInput = z12.object({ node_id: UUID });
2611
2673
  var adminNodeExportKeyCapability = defineCapability({
2612
2674
  id: "nodes.export-key",
2613
2675
  domain: "fleet",
@@ -2666,18 +2728,25 @@ var adminEnrollmentCapabilities = [
2666
2728
  adminNodeRotateKeyCapability
2667
2729
  ];
2668
2730
 
2731
+ // ../../packages/api-client/dist/benchmark/index.js
2732
+ var base2 = "/v1/benchmark";
2733
+ var benchmarkJobsPath = `${base2}/jobs`;
2734
+ function createJob(request, body2) {
2735
+ return request(benchmarkJobsPath, { method: "POST", body: body2 });
2736
+ }
2737
+
2669
2738
  // ../../packages/capabilities/dist/capabilities/admin-node-diagnostics.js
2670
- import { z as z12 } from "zod";
2671
- var nodeId = z12.string().min(1).refine((value) => value === value.trim(), {
2739
+ import { z as z13 } from "zod";
2740
+ var nodeId = z13.string().min(1).refine((value) => value === value.trim(), {
2672
2741
  message: "node_id must be an exact canonical node ID without surrounding whitespace"
2673
2742
  });
2674
- var adminNodeDiagnoseInput = z12.object({
2743
+ var adminNodeDiagnoseInput = z13.object({
2675
2744
  node_id: nodeId
2676
2745
  });
2677
- var adminNodeExecInput = z12.object({
2746
+ var adminNodeExecInput = z13.object({
2678
2747
  node_id: nodeId,
2679
- command: z12.string().min(1),
2680
- timeout_seconds: z12.number().int().min(1).max(900)
2748
+ command: z13.string().min(1),
2749
+ timeout_seconds: z13.number().int().min(1).max(900)
2681
2750
  });
2682
2751
  function adminNodeHelp(command, outcome, human, automation, review) {
2683
2752
  return {
@@ -2697,7 +2766,7 @@ var adminNodeDiagnoseCapability = defineCapability({
2697
2766
  roles: ["admin"],
2698
2767
  description: "Queue the staff-authorized diagnosis workflow for one exact node after a live review.",
2699
2768
  mutation: "preview-confirm",
2700
- http: { method: "POST", path: "/jobs" },
2769
+ http: { method: "POST", path: "/v1/benchmark/jobs" },
2701
2770
  cli: {
2702
2771
  command: ["admin", "nodes", "diagnose"],
2703
2772
  vnext: adminNodeHelp(["admin", "nodes", "diagnose"], "Queue diagnosis for one exact node.", "ornn admin nodes diagnose <node-id>", "Unavailable in machine and redirected modes; use an eligible human terminal.", "Exact node, lifecycle, reachability, and diagnosis workflow.")
@@ -2707,16 +2776,14 @@ var adminNodeDiagnoseCapability = defineCapability({
2707
2776
  input: adminNodeDiagnoseInput,
2708
2777
  execute: async (ctx, input) => {
2709
2778
  const parsed = adminNodeDiagnoseInput.parse(input);
2779
+ const body2 = { node_id: parsed.node_id, burn_time_minutes: 0 };
2710
2780
  if (!ctx.confirmed) {
2711
2781
  return {
2712
2782
  action: "node.diagnose",
2713
- payload: { node_id: parsed.node_id, source: { mode: "cli" }, burn_time_minutes: 0 }
2783
+ payload: body2
2714
2784
  };
2715
2785
  }
2716
- return ctx.fetch("/jobs", {
2717
- method: "POST",
2718
- body: { node_id: parsed.node_id, source: { mode: "cli" }, burn_time_minutes: 0 }
2719
- });
2786
+ return createJob(ctx.fetch, body2);
2720
2787
  }
2721
2788
  });
2722
2789
  var adminNodeExecCapability = {
@@ -2752,8 +2819,8 @@ var adminNodeDiagnosticCapabilities = [
2752
2819
  ];
2753
2820
 
2754
2821
  // ../../packages/capabilities/dist/capabilities/admin-node-sanitize.js
2755
- import { z as z13 } from "zod";
2756
- var uuid = z13.string().uuid();
2822
+ import { z as z14 } from "zod";
2823
+ var uuid = z14.string().uuid();
2757
2824
  var sanitizeOperations = ["data_wipe", "ram_roundtrip", "node_turnover", "host_restore"];
2758
2825
  var sanitizeConfirmations = [
2759
2826
  "SANITIZE",
@@ -2772,13 +2839,13 @@ var startConfirmation = {
2772
2839
  node_turnover: "WIPE AND RESTORE",
2773
2840
  host_restore: "RESTORE HOST"
2774
2841
  };
2775
- var nodeSanitizeStartInput = z13.object({
2842
+ var nodeSanitizeStartInput = z14.object({
2776
2843
  node_id: uuid.describe("Node UUID whose drives will be sanitized."),
2777
2844
  job_id: uuid.describe("Caller-supplied stable sanitize job UUID; reuse it when retrying."),
2778
- operation: z13.enum(sanitizeOperations).optional().describe("Sanitize operation; omission defaults to data_wipe."),
2845
+ operation: z14.enum(sanitizeOperations).optional().describe("Sanitize operation; omission defaults to data_wipe."),
2779
2846
  maintenance_batch_id: uuid.optional().describe("Optional maintenance batch UUID recorded by the audit middleware."),
2780
2847
  recovery_uuid: uuid.optional().describe("Recovery boot identity: required for ram_roundtrip, optional for node_turnover and host_restore, rejected for data_wipe."),
2781
- confirmation: z13.enum(sanitizeConfirmations).describe("Exact confirmation phrase required for the selected operation.")
2848
+ confirmation: z14.enum(sanitizeConfirmations).describe("Exact confirmation phrase required for the selected operation.")
2782
2849
  }).strict().refine((input) => input.confirmation === startConfirmation[input.operation ?? "data_wipe"], {
2783
2850
  message: "confirmation must exactly match the selected sanitize operation.",
2784
2851
  path: ["confirmation"]
@@ -2791,30 +2858,30 @@ var nodeSanitizeStartInput = z13.object({
2791
2858
  message: "recovery_uuid is required for ram_roundtrip and not accepted for data_wipe.",
2792
2859
  path: ["recovery_uuid"]
2793
2860
  });
2794
- var nodeSanitizeShowInput = z13.object({
2861
+ var nodeSanitizeShowInput = z14.object({
2795
2862
  node_id: uuid.describe("Node UUID associated with the sanitize job."),
2796
2863
  job_id: uuid.describe("Sanitize job UUID to read.")
2797
2864
  }).strict();
2798
- var manualCleanupInput = z13.object({
2865
+ var manualCleanupInput = z14.object({
2799
2866
  reservation_id: uuid.describe("Reservation whose Bare Metal release this turnover job holds."),
2800
2867
  lifecycle_operation_id: uuid.describe("The current orchestrator release operation UUID that owns the hold, not a Commerce operation."),
2801
- reason: z13.string().trim().min(20).max(2e3).describe("Cleanup performed and why the existing OS must be retained."),
2802
- evidence_sha256: z13.string().regex(/^[0-9a-f]{64}$/, "evidence_sha256 must be 64 lowercase hex characters.").describe("Lowercase SHA-256 of the immutable cleanup evidence file kept outside the host."),
2803
- acknowledge_retained_os: z13.literal(true).describe("The existing OS is retained; OS integrity and full-media erasure are not established."),
2804
- tenant_access_revoked: z13.literal(true).describe("Former tenant workloads, keys, and active access were removed and verified."),
2805
- data_drives_sanitized: z13.literal(true).describe("Every local data drive was sanitized with retained per-drive receipts.")
2868
+ reason: z14.string().trim().min(20).max(2e3).describe("Cleanup performed and why the existing OS must be retained."),
2869
+ evidence_sha256: z14.string().regex(/^[0-9a-f]{64}$/, "evidence_sha256 must be 64 lowercase hex characters.").describe("Lowercase SHA-256 of the immutable cleanup evidence file kept outside the host."),
2870
+ acknowledge_retained_os: z14.literal(true).describe("The existing OS is retained; OS integrity and full-media erasure are not established."),
2871
+ tenant_access_revoked: z14.literal(true).describe("Former tenant workloads, keys, and active access were removed and verified."),
2872
+ data_drives_sanitized: z14.literal(true).describe("Every local data drive was sanitized with retained per-drive receipts.")
2806
2873
  }).strict();
2807
- var nodeSanitizeUpdateInput = z13.object({
2874
+ var nodeSanitizeUpdateInput = z14.object({
2808
2875
  node_id: uuid.describe("Node UUID associated with the sanitize job."),
2809
2876
  job_id: uuid.describe("Sanitize job UUID to decide."),
2810
- confirmation: z13.enum(sanitizeDecisions).describe("APPROVE SANITIZATION runs the held job, SKIP SANITIZATION skips an eligible first-use wipe, ACCEPT MANUAL CLEANUP attests manual cleanup with the OS retained."),
2877
+ confirmation: z14.enum(sanitizeDecisions).describe("APPROVE SANITIZATION runs the held job, SKIP SANITIZATION skips an eligible first-use wipe, ACCEPT MANUAL CLEANUP attests manual cleanup with the OS retained."),
2811
2878
  manual_cleanup: manualCleanupInput.optional().describe("Required with ACCEPT MANUAL CLEANUP and rejected with any other decision.")
2812
2879
  }).strict().refine((input) => input.confirmation === "ACCEPT MANUAL CLEANUP" === (input.manual_cleanup !== void 0), {
2813
2880
  message: "manual_cleanup is required with ACCEPT MANUAL CLEANUP and allowed only with it.",
2814
2881
  path: ["manual_cleanup"]
2815
2882
  });
2816
2883
  function slackParameters(schema) {
2817
- const json = z13.toJSONSchema(schema);
2884
+ const json = z14.toJSONSchema(schema);
2818
2885
  return {
2819
2886
  type: "object",
2820
2887
  properties: json.properties,
@@ -2839,8 +2906,8 @@ function requireAdmin(ctx) {
2839
2906
  throw new Error("Admin role required.");
2840
2907
  }
2841
2908
  function sanitizePath(nodeId3, jobId) {
2842
- const base = `/nodes/${encodeURIComponent(nodeId3)}/sanitize-drives`;
2843
- return jobId ? `${base}/${encodeURIComponent(jobId)}` : base;
2909
+ const base3 = `/nodes/${encodeURIComponent(nodeId3)}/sanitize-drives`;
2910
+ return jobId ? `${base3}/${encodeURIComponent(jobId)}` : base3;
2844
2911
  }
2845
2912
  var nodeSanitizeStartCapability = defineCapability({
2846
2913
  id: "node.sanitize.start",
@@ -2910,28 +2977,28 @@ var adminNodeSanitizeCapabilities = [
2910
2977
  ];
2911
2978
 
2912
2979
  // ../../packages/capabilities/dist/capabilities/admin-nodes-lifecycle.js
2913
- import { z as z14 } from "zod";
2914
- var nodeReference = z14.string().trim().min(1);
2915
- var optionalText2 = z14.string().trim().min(1).optional();
2980
+ import { z as z15 } from "zod";
2981
+ var nodeReference = z15.string().trim().min(1);
2982
+ var optionalText2 = z15.string().trim().min(1).optional();
2916
2983
  var commonInput = {
2917
2984
  node_ref: nodeReference,
2918
2985
  node_id: optionalText2,
2919
2986
  idempotency_key: optionalText2,
2920
2987
  reason: optionalText2,
2921
- yes: z14.boolean().optional(),
2922
- wait: z14.boolean().optional(),
2923
- timeout_seconds: z14.number().positive().optional()
2988
+ yes: z15.boolean().optional(),
2989
+ wait: z15.boolean().optional(),
2990
+ timeout_seconds: z15.number().positive().optional()
2924
2991
  };
2925
- var rebootInput = z14.object({
2992
+ var rebootInput = z15.object({
2926
2993
  ...commonInput,
2927
2994
  machine_id: optionalText2
2928
2995
  });
2929
2996
  var hardResetInput = rebootInput.extend({
2930
- erase_local_data: z14.literal(true)
2997
+ erase_local_data: z15.literal(true)
2931
2998
  });
2932
- var assignmentInput = z14.object({
2999
+ var assignmentInput = z15.object({
2933
3000
  ...commonInput,
2934
- reservation_id: z14.string().trim().min(1)
3001
+ reservation_id: z15.string().trim().min(1)
2935
3002
  });
2936
3003
  function adminLifecycleHelp(command, outcome, human, automation, review) {
2937
3004
  return {
@@ -3048,7 +3115,7 @@ var adminNodeLifecycleCapabilities = [
3048
3115
  ];
3049
3116
 
3050
3117
  // ../../packages/capabilities/dist/capabilities/billing.js
3051
- import { z as z15 } from "zod";
3118
+ import { z as z16 } from "zod";
3052
3119
  var INVOICES_ROUTE = "/commerce/invoices";
3053
3120
  var SHOWBACK_ROUTE = "/commerce/billing/showback";
3054
3121
  var DATE_ONLY = /^\d{4}-\d{2}-\d{2}$/;
@@ -3060,7 +3127,7 @@ var billingCapabilities = [
3060
3127
  description: "Read account billing totals: open balance, earliest due date, and paid monthly totals grouped by currency. Usage estimates are available separately through billing_showback.",
3061
3128
  mutation: "read",
3062
3129
  http: { method: "GET", path: "/commerce/billing/summary" },
3063
- input: z15.object({}),
3130
+ input: z16.object({}),
3064
3131
  slack: false,
3065
3132
  execute: (ctx) => getBillingSummary(ctx.fetch)
3066
3133
  }),
@@ -3071,9 +3138,9 @@ var billingCapabilities = [
3071
3138
  description: "List a page of this tenant's invoices.",
3072
3139
  mutation: "read",
3073
3140
  http: { method: "GET", path: INVOICES_ROUTE },
3074
- input: z15.object({
3075
- limit: z15.number().int().min(1).max(500).optional(),
3076
- cursor: z15.string().trim().min(1).max(2048).optional()
3141
+ input: z16.object({
3142
+ limit: z16.number().int().min(1).max(500).optional(),
3143
+ cursor: z16.string().trim().min(1).max(2048).optional()
3077
3144
  }),
3078
3145
  slack: false,
3079
3146
  execute: (ctx, input) => listInvoices(ctx.fetch, input)
@@ -3085,9 +3152,9 @@ var billingCapabilities = [
3085
3152
  description: "Get a showback report of this tenant's usage for a date range: per-reservation unit-hours, estimated cost, and share of total. Each row's unit is a GPU, or a vCPU when its `unit` is `vcpu` (CPU capacity); gpuCount and gpuHours count that unit. Unit-hours are the billable reservation interval that falls inside the inclusive dates, not a whole calendar day. This is an estimate from reservation windows, not a bill. Use billing_summary or billing_invoices for amounts actually charged.",
3086
3153
  mutation: "read",
3087
3154
  http: { method: "GET", path: SHOWBACK_ROUTE },
3088
- input: z15.object({
3089
- start: z15.string().regex(DATE_ONLY, "start must be a date in yyyy-mm-dd format."),
3090
- end: z15.string().regex(DATE_ONLY, "end must be a date in yyyy-mm-dd format.")
3155
+ input: z16.object({
3156
+ start: z16.string().regex(DATE_ONLY, "start must be a date in yyyy-mm-dd format."),
3157
+ end: z16.string().regex(DATE_ONLY, "end must be a date in yyyy-mm-dd format.")
3091
3158
  }).refine((input) => input.start <= input.end, { message: "start must be on or before end." }),
3092
3159
  slack: false,
3093
3160
  execute: (ctx, input) => getShowback(ctx.fetch, input)
@@ -3095,83 +3162,83 @@ var billingCapabilities = [
3095
3162
  ];
3096
3163
 
3097
3164
  // ../../packages/capabilities/dist/capabilities/compute.js
3098
- import { z as z16 } from "zod";
3099
- var positionals2 = z16.array(z16.string()).default([]);
3100
- var launchInput = z16.object({
3165
+ import { z as z17 } from "zod";
3166
+ var positionals2 = z17.array(z17.string()).default([]);
3167
+ var launchInput = z17.object({
3101
3168
  $positionals: positionals2,
3102
- guided: z16.boolean().optional(),
3103
- idempotencyKey: z16.string().optional(),
3104
- key: z16.string().optional(),
3105
- keyId: z16.string().optional(),
3106
- label: z16.string().optional(),
3107
- machine: z16.string().optional(),
3108
- machines: z16.string().optional(),
3109
- mode: z16.string().optional(),
3110
- mountAccess: z16.string().optional(),
3111
- network: z16.string().optional(),
3112
- noWait: z16.boolean().optional(),
3113
- nodes: z16.union([z16.string(), z16.number()]).optional(),
3114
- publicKey: z16.string().optional(),
3115
- publicKeyFile: z16.string().optional(),
3116
- reservation: z16.string().optional(),
3117
- resume: z16.union([z16.string().min(1), z16.literal(true)]).optional(),
3118
- timeout: z16.string().optional(),
3119
- username: z16.string().optional(),
3120
- vms: z16.string().optional(),
3121
- wait: z16.boolean().optional(),
3122
- yes: z16.boolean().optional(),
3123
- volume: z16.string().optional()
3169
+ guided: z17.boolean().optional(),
3170
+ idempotencyKey: z17.string().optional(),
3171
+ key: z17.string().optional(),
3172
+ keyId: z17.string().optional(),
3173
+ label: z17.string().optional(),
3174
+ machine: z17.string().optional(),
3175
+ machines: z17.string().optional(),
3176
+ mode: z17.string().optional(),
3177
+ mountAccess: z17.string().optional(),
3178
+ network: z17.string().optional(),
3179
+ noWait: z17.boolean().optional(),
3180
+ nodes: z17.union([z17.string(), z17.number()]).optional(),
3181
+ publicKey: z17.string().optional(),
3182
+ publicKeyFile: z17.string().optional(),
3183
+ reservation: z17.string().optional(),
3184
+ resume: z17.union([z17.string().min(1), z17.literal(true)]).optional(),
3185
+ timeout: z17.string().optional(),
3186
+ username: z17.string().optional(),
3187
+ vms: z17.string().optional(),
3188
+ wait: z17.boolean().optional(),
3189
+ yes: z17.boolean().optional(),
3190
+ volume: z17.string().optional()
3124
3191
  }).strict();
3125
- var keyListInput = z16.object({
3192
+ var keyListInput = z17.object({
3126
3193
  $positionals: positionals2,
3127
- cursor: z16.string().optional(),
3128
- limit: z16.coerce.number().int().min(1).max(500).optional()
3194
+ cursor: z17.string().optional(),
3195
+ limit: z17.coerce.number().int().min(1).max(500).optional()
3129
3196
  }).strict();
3130
- var keyMutationInput = z16.object({
3197
+ var keyMutationInput = z17.object({
3131
3198
  $positionals: positionals2,
3132
- idempotencyKey: z16.string().optional(),
3133
- key: z16.string().optional(),
3134
- keyId: z16.string().optional(),
3135
- label: z16.string().optional(),
3136
- publicKey: z16.string().optional(),
3137
- publicKeyFile: z16.string().optional(),
3138
- yes: z16.boolean().optional()
3199
+ idempotencyKey: z17.string().optional(),
3200
+ key: z17.string().optional(),
3201
+ keyId: z17.string().optional(),
3202
+ label: z17.string().optional(),
3203
+ publicKey: z17.string().optional(),
3204
+ publicKeyFile: z17.string().optional(),
3205
+ yes: z17.boolean().optional()
3139
3206
  }).strict();
3140
- var machineListInput = z16.object({
3207
+ var machineListInput = z17.object({
3141
3208
  $positionals: positionals2,
3142
- cursor: z16.string().optional(),
3143
- limit: z16.coerce.number().int().min(1).max(500).optional()
3209
+ cursor: z17.string().optional(),
3210
+ limit: z17.coerce.number().int().min(1).max(500).optional()
3144
3211
  }).strict();
3145
- var machineShowInput = z16.object({
3212
+ var machineShowInput = z17.object({
3146
3213
  $positionals: positionals2,
3147
- guided: z16.boolean().optional()
3214
+ guided: z17.boolean().optional()
3148
3215
  }).strict();
3149
- var machineWaitInput = z16.object({
3216
+ var machineWaitInput = z17.object({
3150
3217
  $positionals: positionals2,
3151
- guided: z16.boolean().optional(),
3152
- timeout: z16.string().optional()
3218
+ guided: z17.boolean().optional(),
3219
+ timeout: z17.string().optional()
3153
3220
  }).strict();
3154
- var machineSwitchInput = z16.object({
3221
+ var machineSwitchInput = z17.object({
3155
3222
  $positionals: positionals2,
3156
- guided: z16.boolean().optional(),
3157
- eraseLocalData: z16.boolean().optional(),
3158
- idempotencyKey: z16.string().optional(),
3159
- mode: z16.string().optional(),
3160
- network: z16.string().optional(),
3161
- noWait: z16.boolean().optional(),
3162
- timeout: z16.string().optional(),
3163
- wait: z16.boolean().optional(),
3164
- yes: z16.boolean().optional()
3223
+ guided: z17.boolean().optional(),
3224
+ eraseLocalData: z17.boolean().optional(),
3225
+ idempotencyKey: z17.string().optional(),
3226
+ mode: z17.string().optional(),
3227
+ network: z17.string().optional(),
3228
+ noWait: z17.boolean().optional(),
3229
+ timeout: z17.string().optional(),
3230
+ wait: z17.boolean().optional(),
3231
+ yes: z17.boolean().optional()
3165
3232
  }).strict();
3166
- var machineMaintenanceInput = z16.object({
3233
+ var machineMaintenanceInput = z17.object({
3167
3234
  $positionals: positionals2,
3168
- eraseLocalData: z16.boolean().optional(),
3169
- guided: z16.boolean().optional(),
3170
- idempotencyKey: z16.string().optional(),
3171
- noWait: z16.boolean().optional(),
3172
- timeout: z16.string().optional(),
3173
- wait: z16.boolean().optional(),
3174
- yes: z16.boolean().optional()
3235
+ eraseLocalData: z17.boolean().optional(),
3236
+ guided: z17.boolean().optional(),
3237
+ idempotencyKey: z17.string().optional(),
3238
+ noWait: z17.boolean().optional(),
3239
+ timeout: z17.string().optional(),
3240
+ wait: z17.boolean().optional(),
3241
+ yes: z17.boolean().optional()
3175
3242
  }).strict();
3176
3243
  function runtime(context) {
3177
3244
  const interaction2 = context.cli?.interaction;
@@ -3613,17 +3680,17 @@ function pagedQuery(input) {
3613
3680
  query2.set("cursor", input.cursor);
3614
3681
  return query2.toString();
3615
3682
  }
3616
- var pageInput = z16.object({
3617
- limit: z16.number().int().min(1).max(500).optional(),
3618
- cursor: z16.string().optional()
3683
+ var pageInput = z17.object({
3684
+ limit: z17.number().int().min(1).max(500).optional(),
3685
+ cursor: z17.string().optional()
3619
3686
  });
3620
- var publicKeyInput = z16.object({
3621
- publicKey: z16.string(),
3622
- label: z16.string().optional(),
3623
- confirm: z16.boolean().optional()
3687
+ var publicKeyInput = z17.object({
3688
+ publicKey: z17.string(),
3689
+ label: z17.string().optional(),
3690
+ confirm: z17.boolean().optional()
3624
3691
  });
3625
- var keyIdInput = z16.object({ keyId: z16.string(), confirm: z16.boolean().optional() });
3626
- var nodeIdInput = z16.object({ nodeId: z16.string(), confirm: z16.boolean().optional() });
3692
+ var keyIdInput = z17.object({ keyId: z17.string(), confirm: z17.boolean().optional() });
3693
+ var nodeIdInput = z17.object({ nodeId: z17.string(), confirm: z17.boolean().optional() });
3627
3694
  var ADDED_KEY_OUTCOME = "The response's outcome field says whether the key was created, was already_registered (returned unchanged, so the submitted label is not applied), or was reactivated from a revoked key.";
3628
3695
  function rebootMachine(mode) {
3629
3696
  return (ctx, input) => ctx.fetch(`${NODES_ROUTE}/${encodeURIComponent(input.nodeId)}/reboot`, {
@@ -3639,7 +3706,7 @@ var accessVerbCapabilities = [
3639
3706
  description: "Show VM and Bare Metal SSH access machines for a reservation.",
3640
3707
  mutation: "read",
3641
3708
  http: { method: "GET", path: NODES_ROUTE },
3642
- input: z16.object({ reservationId: z16.string() }),
3709
+ input: z17.object({ reservationId: z17.string() }),
3643
3710
  slack: false,
3644
3711
  execute: (ctx, input) => ctx.fetch(`${NODES_ROUTE}?reservation_id=${encodeURIComponent(input.reservationId)}`, {
3645
3712
  method: "GET"
@@ -3652,18 +3719,18 @@ var accessVerbCapabilities = [
3652
3719
  description: "Activate access (bare-metal by default, or VM via accessMode) for a reservation and launch machine(s) with the given SSH key(s), optionally on the private network via networkMode. A VM launches on the reservation's saved disk; pass diskId to choose one, which a reservation without a saved disk needs.",
3653
3720
  mutation: "preview-confirm",
3654
3721
  http: { method: "POST", path: `${NODES_ROUTE}/reservations/{reservationId}/launch` },
3655
- input: z16.object({
3656
- reservationId: z16.string(),
3657
- sshKeyIds: z16.array(z16.string()).min(1),
3658
- username: z16.string().optional(),
3659
- machineCount: z16.number().int().positive().optional(),
3660
- requestId: z16.string().optional(),
3661
- accessMode: z16.enum(["bare-metal", "vm"]).optional(),
3662
- networkMode: z16.enum(["public", "private"]).optional(),
3663
- diskId: z16.string().optional(),
3664
- storageLoadDriveId: z16.string().optional(),
3665
- storageSaveDriveId: z16.string().optional(),
3666
- confirm: z16.boolean().optional()
3722
+ input: z17.object({
3723
+ reservationId: z17.string(),
3724
+ sshKeyIds: z17.array(z17.string()).min(1),
3725
+ username: z17.string().optional(),
3726
+ machineCount: z17.number().int().positive().optional(),
3727
+ requestId: z17.string().optional(),
3728
+ accessMode: z17.enum(["bare-metal", "vm"]).optional(),
3729
+ networkMode: z17.enum(["public", "private"]).optional(),
3730
+ diskId: z17.string().optional(),
3731
+ storageLoadDriveId: z17.string().optional(),
3732
+ storageSaveDriveId: z17.string().optional(),
3733
+ confirm: z17.boolean().optional()
3667
3734
  }),
3668
3735
  slack: false,
3669
3736
  // Without disk_id the orchestrator boots "virtual-machine" from the
@@ -3689,14 +3756,14 @@ var accessVerbCapabilities = [
3689
3756
  description: "Switch a live reservation between public/private network mode (and optionally VM/Bare Metal) via switch-access. Use this instead of re-launching when machines are already running. Supply a unique requestId and keep it to check progress, including after a timeout. Acceptance does not confirm completion.",
3690
3757
  mutation: "preview-confirm",
3691
3758
  http: { method: "POST", path: `${NODES_ROUTE}/reservations/{reservationId}/switch-access` },
3692
- input: z16.object({
3693
- reservationId: z16.string(),
3694
- networkMode: z16.enum(["public", "private"]),
3695
- sshKeyIds: z16.array(z16.string()).min(1),
3696
- accessMode: z16.enum(["bare-metal", "virtual-machine"]).optional(),
3697
- username: z16.string().optional(),
3698
- requestId: z16.string().regex(/\S/),
3699
- confirm: z16.boolean().optional()
3759
+ input: z17.object({
3760
+ reservationId: z17.string(),
3761
+ networkMode: z17.enum(["public", "private"]),
3762
+ sshKeyIds: z17.array(z17.string()).min(1),
3763
+ accessMode: z17.enum(["bare-metal", "virtual-machine"]).optional(),
3764
+ username: z17.string().optional(),
3765
+ requestId: z17.string().regex(/\S/),
3766
+ confirm: z17.boolean().optional()
3700
3767
  }),
3701
3768
  slack: false,
3702
3769
  execute: (ctx, input) => ctx.fetch(reservationNodesRoute(input.reservationId, "switch-access"), {
@@ -3716,7 +3783,7 @@ var accessVerbCapabilities = [
3716
3783
  description: "List SSH keys registered for a reservation.",
3717
3784
  mutation: "read",
3718
3785
  http: { method: "GET", path: `${NODES_ROUTE}/reservations/{reservationId}/ssh-keys` },
3719
- input: z16.object({ reservationId: z16.string() }),
3786
+ input: z17.object({ reservationId: z17.string() }),
3720
3787
  slack: false,
3721
3788
  execute: (ctx, input) => ctx.fetch(reservationNodesRoute(input.reservationId, "ssh-keys"), { method: "GET" })
3722
3789
  }),
@@ -3727,7 +3794,7 @@ var accessVerbCapabilities = [
3727
3794
  description: `Add an SSH key to a reservation. ${ADDED_KEY_OUTCOME}`,
3728
3795
  mutation: "preview-confirm",
3729
3796
  http: { method: "POST", path: `${NODES_ROUTE}/reservations/{reservationId}/ssh-keys` },
3730
- input: publicKeyInput.extend({ reservationId: z16.string() }),
3797
+ input: publicKeyInput.extend({ reservationId: z17.string() }),
3731
3798
  slack: false,
3732
3799
  execute: (ctx, input) => ctx.fetch(reservationNodesRoute(input.reservationId, "ssh-keys"), {
3733
3800
  method: "POST",
@@ -3842,11 +3909,11 @@ var machinePushKeysCapability = defineCapability({
3842
3909
  description: "Push SSH keys onto one reservation machine.",
3843
3910
  mutation: "preview-confirm",
3844
3911
  http: { method: "POST", path: `${NODES_ROUTE}/{nodeId}/push-keys` },
3845
- input: z16.object({
3846
- nodeId: z16.string(),
3847
- sshKeyIds: z16.array(z16.string()).min(1),
3848
- requestId: z16.string(),
3849
- confirm: z16.boolean().optional()
3912
+ input: z17.object({
3913
+ nodeId: z17.string(),
3914
+ sshKeyIds: z17.array(z17.string()).min(1),
3915
+ requestId: z17.string(),
3916
+ confirm: z17.boolean().optional()
3850
3917
  }),
3851
3918
  mcp: false,
3852
3919
  slack: false,
@@ -3863,7 +3930,7 @@ var machineMetricsCapabilities = [
3863
3930
  description: "Fetch a live metrics snapshot for one reservation machine.",
3864
3931
  mutation: "read",
3865
3932
  http: { method: "GET", path: `${NODES_ROUTE}/reservations/{reservationId}/live-metrics` },
3866
- input: z16.object({ reservationId: z16.string(), machineId: z16.string() }),
3933
+ input: z17.object({ reservationId: z17.string(), machineId: z17.string() }),
3867
3934
  mcp: false,
3868
3935
  slack: false,
3869
3936
  execute: (ctx, input) => ctx.fetch(`${reservationNodesRoute(input.reservationId, "live-metrics")}?machine_id=${encodeURIComponent(input.machineId)}`, { method: "GET" })
@@ -3875,12 +3942,12 @@ var machineMetricsCapabilities = [
3875
3942
  description: "Fetch historical telemetry for one reservation machine over a time range.",
3876
3943
  mutation: "read",
3877
3944
  http: { method: "GET", path: `${NODES_ROUTE}/reservations/{reservationId}/telemetry-history` },
3878
- input: z16.object({
3879
- reservationId: z16.string(),
3880
- machineId: z16.string(),
3881
- start: z16.string().optional(),
3882
- end: z16.string().optional(),
3883
- maxPoints: z16.number().int().positive().optional()
3945
+ input: z17.object({
3946
+ reservationId: z17.string(),
3947
+ machineId: z17.string(),
3948
+ start: z17.string().optional(),
3949
+ end: z17.string().optional(),
3950
+ maxPoints: z17.number().int().positive().optional()
3884
3951
  }),
3885
3952
  mcp: false,
3886
3953
  slack: false,
@@ -3900,14 +3967,14 @@ var machineMetricsCapabilities = [
3900
3967
  ];
3901
3968
 
3902
3969
  // ../../packages/capabilities/dist/capabilities/credits.js
3903
- import { z as z17 } from "zod";
3904
- var creditGrantInput = z17.object({
3905
- organizationId: z17.uuid().describe("Customer organization UUID. Resolve names or emails with organization_list; ask which organization if matches are ambiguous."),
3906
- adjustmentId: z17.uuid().describe("The credit-adjustment API's required grant UUID. Keep the same UUID when confirming this grant."),
3907
- amountCents: z17.number().int().min(1).max(1e8).describe("USD cents: 10000 grants $100.00."),
3908
- direction: z17.enum(["credit", "debit"]).optional().describe("credit adds funds (default); debit removes funds. Choose explicitly for a debit."),
3909
- note: z17.string().trim().min(1).refine((value) => new TextEncoder().encode(value).length <= 500, "Keep the note under 500 UTF-8 bytes.").describe("Reason for the credit grant."),
3910
- confirm: z17.boolean().optional()
3970
+ import { z as z18 } from "zod";
3971
+ var creditGrantInput = z18.object({
3972
+ organizationId: z18.uuid().describe("Customer organization UUID. Resolve names or emails with organization_list; ask which organization if matches are ambiguous."),
3973
+ adjustmentId: z18.uuid().describe("The credit-adjustment API's required grant UUID. Keep the same UUID when confirming this grant."),
3974
+ amountCents: z18.number().int().min(1).max(1e8).describe("USD cents: 10000 grants $100.00."),
3975
+ direction: z18.enum(["credit", "debit"]).optional().describe("credit adds funds (default); debit removes funds. Choose explicitly for a debit."),
3976
+ note: z18.string().trim().min(1).refine((value) => new TextEncoder().encode(value).length <= 500, "Keep the note under 500 UTF-8 bytes.").describe("Reason for the credit grant."),
3977
+ confirm: z18.boolean().optional()
3911
3978
  });
3912
3979
  var creditGrantCapability = defineCapability({
3913
3980
  id: "credits.grant",
@@ -3969,20 +4036,20 @@ var creditGrantCapability = defineCapability({
3969
4036
  });
3970
4037
 
3971
4038
  // ../../packages/capabilities/dist/capabilities/cli.js
3972
- import { z as z18 } from "zod";
3973
- var emptyInput2 = z18.object({});
4039
+ import { z as z19 } from "zod";
4040
+ var emptyInput2 = z19.object({});
3974
4041
  function requireCliRuntime(context) {
3975
4042
  if (!context.cli) {
3976
4043
  throw new Error("This capability must execute through the Ornn CLI runtime.");
3977
4044
  }
3978
4045
  return context.cli;
3979
4046
  }
3980
- var updateInput = z18.object({
3981
- $positionals: z18.array(z18.string()).max(0).default([]),
3982
- major: z18.boolean().optional()
4047
+ var updateInput = z19.object({
4048
+ $positionals: z19.array(z19.string()).max(0).default([]),
4049
+ major: z19.boolean().optional()
3983
4050
  });
3984
- var completionInput = z18.object({
3985
- $positionals: z18.tuple([z18.enum(["bash", "fish", "zsh"])])
4051
+ var completionInput = z19.object({
4052
+ $positionals: z19.tuple([z19.enum(["bash", "fish", "zsh"])])
3986
4053
  }).transform(({ $positionals }) => ({ shell: $positionals[0] }));
3987
4054
  var versionCapability = defineCapability({
3988
4055
  id: "cli.version",
@@ -4123,23 +4190,23 @@ var cliShellCapabilities = [
4123
4190
  ];
4124
4191
 
4125
4192
  // ../../packages/capabilities/dist/capabilities/clusters.js
4126
- import { z as z19 } from "zod";
4127
- var clusterCliInput = z19.object({
4128
- $positionals: z19.array(z19.string()).optional(),
4129
- cursor: z19.string().optional(),
4130
- guided: z19.boolean().optional(),
4131
- idempotencyKey: z19.string().optional(),
4132
- limit: z19.union([z19.string(), z19.number()]).optional(),
4133
- machine: z19.string().optional(),
4134
- machines: z19.string().optional(),
4135
- network: z19.enum(["public", "private"]).optional(),
4136
- noWait: z19.boolean().optional(),
4137
- nodes: z19.union([z19.string(), z19.number()]).optional(),
4138
- output: z19.string().optional(),
4139
- overwrite: z19.boolean().optional(),
4140
- timeout: z19.string().optional(),
4141
- wait: z19.boolean().optional(),
4142
- yes: z19.boolean().optional()
4193
+ import { z as z20 } from "zod";
4194
+ var clusterCliInput = z20.object({
4195
+ $positionals: z20.array(z20.string()).optional(),
4196
+ cursor: z20.string().optional(),
4197
+ guided: z20.boolean().optional(),
4198
+ idempotencyKey: z20.string().optional(),
4199
+ limit: z20.union([z20.string(), z20.number()]).optional(),
4200
+ machine: z20.string().optional(),
4201
+ machines: z20.string().optional(),
4202
+ network: z20.enum(["public", "private"]).optional(),
4203
+ noWait: z20.boolean().optional(),
4204
+ nodes: z20.union([z20.string(), z20.number()]).optional(),
4205
+ output: z20.string().optional(),
4206
+ overwrite: z20.boolean().optional(),
4207
+ timeout: z20.string().optional(),
4208
+ wait: z20.boolean().optional(),
4209
+ yes: z20.boolean().optional()
4143
4210
  }).strict();
4144
4211
  function clusterExecutor(context) {
4145
4212
  const runtime3 = context.cli?.interaction;
@@ -4267,12 +4334,12 @@ var clusterCliCapabilities = [
4267
4334
  related: ["clusters show", "reservations show"]
4268
4335
  })
4269
4336
  ];
4270
- var clusterType = z19.enum(["kubernetes", "slurm"]);
4271
- var reservationCluster = z19.object({ reservationId: z19.string(), type: clusterType });
4272
- var controllerNode = z19.object({
4273
- controllerId: z19.string(),
4274
- nodeId: z19.string(),
4275
- confirm: z19.boolean().optional()
4337
+ var clusterType = z20.enum(["kubernetes", "slurm"]);
4338
+ var reservationCluster = z20.object({ reservationId: z20.string(), type: clusterType });
4339
+ var controllerNode = z20.object({
4340
+ controllerId: z20.string(),
4341
+ nodeId: z20.string(),
4342
+ confirm: z20.boolean().optional()
4276
4343
  });
4277
4344
  function reservationClusterPath(input, suffix) {
4278
4345
  return `/v1/workflows/compute/${input.type}/reservations/${encodeURIComponent(input.reservationId)}/${suffix}`;
@@ -4288,7 +4355,7 @@ var clusterCapabilities = [
4288
4355
  description: "List this tenant's kubernetes/slurm clusters.",
4289
4356
  mutation: "read",
4290
4357
  http: { method: "GET", path: "/v1/workflows/compute/clusters" },
4291
- input: z19.object({}),
4358
+ input: z20.object({}),
4292
4359
  mcp: { name: "clusters_list" },
4293
4360
  slack: false,
4294
4361
  execute: (ctx) => ctx.fetch("/v1/workflows/compute/clusters", { method: "GET" })
@@ -4300,8 +4367,8 @@ var clusterCapabilities = [
4300
4367
  description: "List active reservations eligible for cluster creation (kubernetes/slurm), 100 per page. Pass the response's nextCursor as cursor for the next page.",
4301
4368
  mutation: "read",
4302
4369
  http: { method: "GET", path: "/commerce/reservations" },
4303
- input: z19.object({
4304
- cursor: z19.string().min(1).optional().describe("nextCursor from the previous page.")
4370
+ input: z20.object({
4371
+ cursor: z20.string().min(1).optional().describe("nextCursor from the previous page.")
4305
4372
  }),
4306
4373
  mcp: { name: "clusters_reservations_list" },
4307
4374
  slack: false,
@@ -4317,14 +4384,14 @@ var clusterCapabilities = [
4317
4384
  description: "Launch a kubernetes or slurm cluster on a reservation.",
4318
4385
  mutation: "preview-confirm",
4319
4386
  http: { method: "POST", path: "/v1/orchestrator/controllers" },
4320
- input: z19.object({
4321
- reservationId: z19.string(),
4387
+ input: z20.object({
4388
+ reservationId: z20.string(),
4322
4389
  type: clusterType,
4323
- networkMode: z19.enum(["public", "private"]).optional(),
4324
- nodeIds: z19.array(z19.string()).optional(),
4325
- nodeCount: z19.number().int().positive().optional(),
4326
- storageLoadSizeBytes: z19.number().int().nonnegative().optional(),
4327
- confirm: z19.boolean().optional()
4390
+ networkMode: z20.enum(["public", "private"]).optional(),
4391
+ nodeIds: z20.array(z20.string()).optional(),
4392
+ nodeCount: z20.number().int().positive().optional(),
4393
+ storageLoadSizeBytes: z20.number().int().nonnegative().optional(),
4394
+ confirm: z20.boolean().optional()
4328
4395
  }),
4329
4396
  mcp: { name: "clusters_create" },
4330
4397
  slack: false,
@@ -4380,7 +4447,7 @@ var clusterCapabilities = [
4380
4447
  method: "GET",
4381
4448
  path: "/v1/workflows/compute/kubernetes/reservations/{reservationId}/credentials"
4382
4449
  },
4383
- input: z19.object({ reservationId: z19.string() }),
4450
+ input: z20.object({ reservationId: z20.string() }),
4384
4451
  mcp: { name: "clusters_kubeconfig" },
4385
4452
  slack: false,
4386
4453
  execute: async (ctx, input) => {
@@ -4425,7 +4492,7 @@ var clusterCapabilities = [
4425
4492
  method: "POST",
4426
4493
  path: "/v1/workflows/compute/{type}/reservations/{reservationId}/cluster/teardown"
4427
4494
  },
4428
- input: reservationCluster.extend({ confirm: z19.boolean().optional() }),
4495
+ input: reservationCluster.extend({ confirm: z20.boolean().optional() }),
4429
4496
  mcp: { name: "clusters_teardown" },
4430
4497
  slack: false,
4431
4498
  execute: (ctx, input) => ctx.fetch(reservationClusterPath(input, "cluster/teardown"), { method: "POST" })
@@ -4433,55 +4500,55 @@ var clusterCapabilities = [
4433
4500
  ];
4434
4501
 
4435
4502
  // ../../packages/capabilities/dist/capabilities/external-buckets.js
4436
- import { z as z20 } from "zod";
4437
- var pageInput2 = z20.object({
4438
- $positionals: z20.array(z20.string()).optional(),
4439
- cursor: z20.string().optional(),
4440
- limit: z20.union([z20.string(), z20.number()]).optional()
4503
+ import { z as z21 } from "zod";
4504
+ var pageInput2 = z21.object({
4505
+ $positionals: z21.array(z21.string()).optional(),
4506
+ cursor: z21.string().optional(),
4507
+ limit: z21.union([z21.string(), z21.number()]).optional()
4441
4508
  }).strict();
4442
- var showInput = z20.object({
4443
- $positionals: z20.array(z20.string()).optional()
4509
+ var showInput = z21.object({
4510
+ $positionals: z21.array(z21.string()).optional()
4444
4511
  }).strict();
4445
- var verificationInput = z20.object({
4446
- $positionals: z20.array(z20.string()).optional(),
4447
- idempotencyKey: z20.string().optional()
4512
+ var verificationInput = z21.object({
4513
+ $positionals: z21.array(z21.string()).optional(),
4514
+ idempotencyKey: z21.string().optional()
4448
4515
  }).strict();
4449
- var disconnectInput = z20.object({
4450
- $positionals: z20.array(z20.string()).optional(),
4451
- idempotencyKey: z20.string().optional(),
4452
- yes: z20.boolean().optional()
4516
+ var disconnectInput = z21.object({
4517
+ $positionals: z21.array(z21.string()).optional(),
4518
+ idempotencyKey: z21.string().optional(),
4519
+ yes: z21.boolean().optional()
4453
4520
  }).strict();
4454
- var connectInput = z20.object({
4455
- $positionals: z20.array(z20.string()).optional(),
4456
- accessKeyId: z20.string().optional(),
4457
- accountId: z20.string().optional(),
4458
- bucket: z20.string().optional(),
4459
- endpointUrl: z20.string().optional(),
4460
- idempotencyKey: z20.string().optional(),
4461
- name: z20.string().optional(),
4462
- prefix: z20.string().optional(),
4463
- readOnly: z20.boolean().optional(),
4464
- readWrite: z20.boolean().optional(),
4465
- region: z20.string().optional(),
4466
- secretAccessKeyFile: z20.string().optional(),
4467
- url: z20.string().optional(),
4468
- yes: z20.boolean().optional()
4521
+ var connectInput = z21.object({
4522
+ $positionals: z21.array(z21.string()).optional(),
4523
+ accessKeyId: z21.string().optional(),
4524
+ accountId: z21.string().optional(),
4525
+ bucket: z21.string().optional(),
4526
+ endpointUrl: z21.string().optional(),
4527
+ idempotencyKey: z21.string().optional(),
4528
+ name: z21.string().optional(),
4529
+ prefix: z21.string().optional(),
4530
+ readOnly: z21.boolean().optional(),
4531
+ readWrite: z21.boolean().optional(),
4532
+ region: z21.string().optional(),
4533
+ secretAccessKeyFile: z21.string().optional(),
4534
+ url: z21.string().optional(),
4535
+ yes: z21.boolean().optional()
4469
4536
  }).strict();
4470
- var credentialInput = z20.object({
4471
- $positionals: z20.array(z20.string()).optional(),
4472
- accessKeyId: z20.string().optional(),
4473
- idempotencyKey: z20.string().optional(),
4474
- secretAccessKeyFile: z20.string().optional(),
4475
- yes: z20.boolean().optional()
4537
+ var credentialInput = z21.object({
4538
+ $positionals: z21.array(z21.string()).optional(),
4539
+ accessKeyId: z21.string().optional(),
4540
+ idempotencyKey: z21.string().optional(),
4541
+ secretAccessKeyFile: z21.string().optional(),
4542
+ yes: z21.boolean().optional()
4476
4543
  }).strict();
4477
- var importInput = z20.object({
4478
- $positionals: z20.array(z20.string()).optional(),
4479
- idempotencyKey: z20.string().optional(),
4480
- noWait: z20.boolean().optional(),
4481
- reservation: z20.string().optional(),
4482
- timeout: z20.string().optional(),
4483
- wait: z20.boolean().optional(),
4484
- yes: z20.boolean().optional()
4544
+ var importInput = z21.object({
4545
+ $positionals: z21.array(z21.string()).optional(),
4546
+ idempotencyKey: z21.string().optional(),
4547
+ noWait: z21.boolean().optional(),
4548
+ reservation: z21.string().optional(),
4549
+ timeout: z21.string().optional(),
4550
+ wait: z21.boolean().optional(),
4551
+ yes: z21.boolean().optional()
4485
4552
  }).strict();
4486
4553
  function externalBucketExecutor(context) {
4487
4554
  const interaction2 = context.cli?.interaction;
@@ -4611,22 +4678,22 @@ var externalBucketCapabilities = [
4611
4678
  ];
4612
4679
 
4613
4680
  // ../../packages/capabilities/dist/capabilities/evidence.js
4614
- import { z as z21 } from "zod";
4615
- var positionals3 = z21.array(z21.string()).default([]);
4616
- var evidenceInput = z21.object({
4681
+ import { z as z22 } from "zod";
4682
+ var positionals3 = z22.array(z22.string()).default([]);
4683
+ var evidenceInput = z22.object({
4617
4684
  $positionals: positionals3,
4618
- before: z21.string().optional(),
4619
- count: z21.string().optional(),
4620
- cursor: z21.string().optional(),
4621
- end: z21.string().optional(),
4622
- follow: z21.boolean().optional(),
4623
- guided: z21.boolean().optional(),
4624
- interval: z21.string().optional(),
4625
- limit: z21.string().optional(),
4626
- maxPoints: z21.string().optional(),
4627
- start: z21.string().optional(),
4628
- stream: z21.enum(["kernel", "serial"]).optional(),
4629
- timeout: z21.string().optional()
4685
+ before: z22.string().optional(),
4686
+ count: z22.string().optional(),
4687
+ cursor: z22.string().optional(),
4688
+ end: z22.string().optional(),
4689
+ follow: z22.boolean().optional(),
4690
+ guided: z22.boolean().optional(),
4691
+ interval: z22.string().optional(),
4692
+ limit: z22.string().optional(),
4693
+ maxPoints: z22.string().optional(),
4694
+ start: z22.string().optional(),
4695
+ stream: z22.enum(["kernel", "serial"]).optional(),
4696
+ timeout: z22.string().optional()
4630
4697
  }).strict();
4631
4698
  function runtime2(context) {
4632
4699
  const interaction2 = context.cli?.interaction;
@@ -4755,20 +4822,20 @@ var evidenceCapabilities = [
4755
4822
  ];
4756
4823
 
4757
4824
  // ../../packages/capabilities/dist/capabilities/mounts.js
4758
- import { z as z22 } from "zod";
4759
- var mountInput = z22.object({
4760
- $positionals: z22.array(z22.string()).default([]),
4761
- access: z22.string().optional(),
4762
- capacityGib: z22.union([z22.string(), z22.number()]).optional(),
4763
- cursor: z22.string().optional(),
4764
- idempotencyKey: z22.string().optional(),
4765
- limit: z22.union([z22.string(), z22.number()]).optional(),
4766
- noWait: z22.boolean().optional(),
4767
- performanceTier: z22.string().optional(),
4768
- timeout: z22.string().optional(),
4769
- volume: z22.string().optional(),
4770
- wait: z22.boolean().optional(),
4771
- yes: z22.boolean().optional()
4825
+ import { z as z23 } from "zod";
4826
+ var mountInput = z23.object({
4827
+ $positionals: z23.array(z23.string()).default([]),
4828
+ access: z23.string().optional(),
4829
+ capacityGib: z23.union([z23.string(), z23.number()]).optional(),
4830
+ cursor: z23.string().optional(),
4831
+ idempotencyKey: z23.string().optional(),
4832
+ limit: z23.union([z23.string(), z23.number()]).optional(),
4833
+ noWait: z23.boolean().optional(),
4834
+ performanceTier: z23.string().optional(),
4835
+ timeout: z23.string().optional(),
4836
+ volume: z23.string().optional(),
4837
+ wait: z23.boolean().optional(),
4838
+ yes: z23.boolean().optional()
4772
4839
  }).strict();
4773
4840
  function mountExecutor(context) {
4774
4841
  const interaction2 = context.cli?.interaction;
@@ -4930,13 +4997,13 @@ var mountCapabilities = [
4930
4997
  ];
4931
4998
 
4932
4999
  // ../../packages/capabilities/dist/capabilities/identity.js
4933
- import { z as z23 } from "zod";
4934
- var emptyInput3 = z23.object({});
4935
- var loginInput = z23.object({
4936
- authBase: z23.string().min(1).optional(),
4937
- noBrowser: z23.boolean().optional(),
4938
- pollInterval: z23.number().positive().optional(),
4939
- timeout: z23.number().positive().optional()
5000
+ import { z as z24 } from "zod";
5001
+ var emptyInput3 = z24.object({});
5002
+ var loginInput = z24.object({
5003
+ authBase: z24.string().min(1).optional(),
5004
+ noBrowser: z24.boolean().optional(),
5005
+ pollInterval: z24.number().positive().optional(),
5006
+ timeout: z24.number().positive().optional()
4940
5007
  });
4941
5008
  function executeSession(context, command, input) {
4942
5009
  if (!context.cli?.session) {
@@ -5060,50 +5127,50 @@ var identityCapabilities = [
5060
5127
  ];
5061
5128
 
5062
5129
  // ../../packages/capabilities/dist/capabilities/listings.js
5063
- import { z as z24 } from "zod";
5064
- var listingCreateInput = z24.object({
5065
- organizationId: z24.string().optional(),
5066
- organization_id: z24.string().optional(),
5067
- facilityId: z24.string().optional(),
5068
- facility_id: z24.string().optional(),
5069
- kind: z24.enum(["gpu", "cpu", "node", "link"]).optional(),
5070
- gpu: z24.string().optional(),
5071
- cpu: z24.string().optional(),
5072
- site: z24.string().optional(),
5073
- fabric: z24.string().optional(),
5074
- min_nodes: z24.number().int().optional(),
5075
- starts_after: z24.string().optional(),
5076
- starts_before: z24.string().optional(),
5077
- ends_after: z24.string().optional(),
5078
- ends_before: z24.string().optional(),
5079
- gpu_type: z24.string().optional(),
5080
- node_model: z24.string().optional(),
5081
- fabric_type: z24.string().optional(),
5082
- node_count: z24.number().int().optional(),
5083
- gpus_per_node: z24.number().int().optional(),
5084
- cores_per_node: z24.number().int().optional().describe('CPU listings: cores per node (2 vCPUs each), at least 1, priced per vCPU-hour. Omit gpu_type or set it to "cpu".'),
5085
- site_nickname: z24.string().optional().describe("A state, city, address, or catalog region such as us-west-3."),
5086
- site_supplier: z24.string().optional(),
5087
- ram: z24.string().optional(),
5088
- storage: z24.string().optional(),
5089
- internet: z24.string().optional(),
5090
- network_hardware: z24.string().optional(),
5091
- available_start_at: z24.string().optional().describe("Start of the availability window. YYYY-MM-DD or RFC3339."),
5092
- available_end_at: z24.string().optional().describe("End of the availability window. YYYY-MM-DD or RFC3339."),
5093
- available_from: z24.string().optional().describe("Alias for available_start_at."),
5094
- available_to: z24.string().optional().describe("Alias for available_end_at."),
5095
- buy_now_price_per_gpu_hour: z24.number().optional().describe("Price buyers pay, USD per GPU-hour (per vCPU-hour on CPU listings)."),
5096
- deposit_percent: z24.number().optional(),
5097
- down_payment_cents: z24.number().int().nonnegative().optional(),
5098
- access_mode: z24.enum(["bare-metal", "virtual-machine"]).optional(),
5099
- state: z24.enum(["available", "draft"]).optional(),
5100
- price_omitted: z24.boolean().optional(),
5101
- announce: z24.boolean().optional(),
5102
- text: z24.string().optional(),
5103
- confirm: z24.boolean().optional(),
5104
- idempotencyKey: z24.string().min(1).max(200).optional()
5105
- });
5106
- var catalogTermsInput = z24.object({ kind: z24.enum(["gpu", "cpu", "node", "link"]).optional() });
5130
+ import { z as z25 } from "zod";
5131
+ var listingCreateInput = z25.object({
5132
+ organizationId: z25.string().optional(),
5133
+ organization_id: z25.string().optional(),
5134
+ facilityId: z25.string().optional(),
5135
+ facility_id: z25.string().optional(),
5136
+ kind: z25.enum(["gpu", "cpu", "node", "link"]).optional(),
5137
+ gpu: z25.string().optional(),
5138
+ cpu: z25.string().optional(),
5139
+ site: z25.string().optional(),
5140
+ fabric: z25.string().optional(),
5141
+ min_nodes: z25.number().int().optional(),
5142
+ starts_after: z25.string().optional(),
5143
+ starts_before: z25.string().optional(),
5144
+ ends_after: z25.string().optional(),
5145
+ ends_before: z25.string().optional(),
5146
+ gpu_type: z25.string().optional(),
5147
+ node_model: z25.string().optional(),
5148
+ fabric_type: z25.string().optional(),
5149
+ node_count: z25.number().int().optional(),
5150
+ gpus_per_node: z25.number().int().optional(),
5151
+ cores_per_node: z25.number().int().optional().describe('CPU listings: cores per node (2 vCPUs each), at least 1, priced per vCPU-hour. Omit gpu_type or set it to "cpu".'),
5152
+ site_nickname: z25.string().optional().describe("A state, city, address, or catalog region such as us-west-3."),
5153
+ site_supplier: z25.string().optional(),
5154
+ ram: z25.string().optional(),
5155
+ storage: z25.string().optional(),
5156
+ internet: z25.string().optional(),
5157
+ network_hardware: z25.string().optional(),
5158
+ available_start_at: z25.string().optional().describe("Start of the availability window. YYYY-MM-DD or RFC3339."),
5159
+ available_end_at: z25.string().optional().describe("End of the availability window. YYYY-MM-DD or RFC3339."),
5160
+ available_from: z25.string().optional().describe("Alias for available_start_at."),
5161
+ available_to: z25.string().optional().describe("Alias for available_end_at."),
5162
+ buy_now_price_per_gpu_hour: z25.number().optional().describe("Price buyers pay, USD per GPU-hour (per vCPU-hour on CPU listings)."),
5163
+ deposit_percent: z25.number().optional(),
5164
+ down_payment_cents: z25.number().int().nonnegative().optional(),
5165
+ access_mode: z25.enum(["bare-metal", "virtual-machine"]).optional(),
5166
+ state: z25.enum(["available", "draft"]).optional(),
5167
+ price_omitted: z25.boolean().optional(),
5168
+ announce: z25.boolean().optional(),
5169
+ text: z25.string().optional(),
5170
+ confirm: z25.boolean().optional(),
5171
+ idempotencyKey: z25.string().min(1).max(200).optional()
5172
+ });
5173
+ var catalogTermsInput = z25.object({ kind: z25.enum(["gpu", "cpu", "node", "link"]).optional() });
5107
5174
  var slackListingCreateParams = {
5108
5175
  type: "object",
5109
5176
  properties: {
@@ -5403,12 +5470,12 @@ var listingCapabilities = [
5403
5470
  ];
5404
5471
 
5405
5472
  // ../../packages/capabilities/dist/capabilities/organization-invites.js
5406
- import { z as z25 } from "zod";
5407
- var organizationInviteInput = z25.object({
5408
- organization_id: z25.uuid().optional(),
5409
- email: z25.string().trim().toLowerCase().pipe(z25.email()),
5410
- organization_role: z25.enum(["consumer", "supplier"]).optional(),
5411
- send_email: z25.boolean().optional().describe("Defaults to true for an existing organization; false returns a link. Signup invites cannot be emailed.")
5473
+ import { z as z26 } from "zod";
5474
+ var organizationInviteInput = z26.object({
5475
+ organization_id: z26.uuid().optional(),
5476
+ email: z26.string().trim().toLowerCase().pipe(z26.email()),
5477
+ organization_role: z26.enum(["consumer", "supplier"]).optional(),
5478
+ send_email: z26.boolean().optional().describe("Defaults to true for an existing organization; false returns a link. Signup invites cannot be emailed.")
5412
5479
  }).superRefine((input, ctx) => {
5413
5480
  if (!input.organization_id && input.send_email === true) {
5414
5481
  ctx.addIssue({
@@ -5469,38 +5536,38 @@ var organizationInviteCapability = defineCapability({
5469
5536
  });
5470
5537
 
5471
5538
  // ../../packages/capabilities/dist/capabilities/networks.js
5472
- import { z as z26 } from "zod";
5539
+ import { z as z27 } from "zod";
5473
5540
  var CANONICAL_ID = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
5474
5541
  var DEFAULT_LIMIT = 50;
5475
- var unknownRecordSchema = z26.record(z26.string(), z26.unknown());
5542
+ var unknownRecordSchema = z27.record(z27.string(), z27.unknown());
5476
5543
  var MAX_LIMIT = 500;
5477
5544
  var NETWORKS_PATH = "/v1/workflows/compute/networks";
5478
5545
  var globalInput = {
5479
- $positionals: z26.array(z26.string()).optional(),
5480
- guided: z26.boolean().optional(),
5481
- idempotencyKey: z26.string().optional(),
5482
- noBrowser: z26.boolean().optional(),
5483
- noWait: z26.boolean().optional(),
5484
- overwrite: z26.boolean().optional(),
5485
- print: z26.boolean().optional(),
5486
- wait: z26.boolean().optional(),
5487
- yes: z26.boolean().optional()
5546
+ $positionals: z27.array(z27.string()).optional(),
5547
+ guided: z27.boolean().optional(),
5548
+ idempotencyKey: z27.string().optional(),
5549
+ noBrowser: z27.boolean().optional(),
5550
+ noWait: z27.boolean().optional(),
5551
+ overwrite: z27.boolean().optional(),
5552
+ print: z27.boolean().optional(),
5553
+ wait: z27.boolean().optional(),
5554
+ yes: z27.boolean().optional()
5488
5555
  };
5489
- var noOptionsInput = z26.object(globalInput).strict();
5490
- var connectInput2 = z26.object({
5556
+ var noOptionsInput = z27.object(globalInput).strict();
5557
+ var connectInput2 = z27.object({
5491
5558
  ...globalInput,
5492
- identityFile: z26.string().optional(),
5493
- output: z26.string().optional(),
5494
- user: z26.string().optional()
5559
+ identityFile: z27.string().optional(),
5560
+ output: z27.string().optional(),
5561
+ user: z27.string().optional()
5495
5562
  }).strict();
5496
- var listInput = z26.object({ ...globalInput, cursor: z26.string().optional(), limit: z26.string().optional() }).strict();
5497
- var networkCreateInput = z26.object({ ...globalInput, cidr: z26.string().optional(), name: z26.string().optional() }).strict();
5498
- var networkUpdateInput = z26.object({ ...globalInput, name: z26.string().optional() }).strict();
5499
- var vpnConfigureInput = z26.object({
5563
+ var listInput = z27.object({ ...globalInput, cursor: z27.string().optional(), limit: z27.string().optional() }).strict();
5564
+ var networkCreateInput = z27.object({ ...globalInput, cidr: z27.string().optional(), name: z27.string().optional() }).strict();
5565
+ var networkUpdateInput = z27.object({ ...globalInput, name: z27.string().optional() }).strict();
5566
+ var vpnConfigureInput = z27.object({
5500
5567
  ...globalInput,
5501
- name: z26.string().optional(),
5502
- output: z26.string().optional(),
5503
- privateKey: z26.string().optional()
5568
+ name: z27.string().optional(),
5569
+ output: z27.string().optional(),
5570
+ privateKey: z27.string().optional()
5504
5571
  }).strict();
5505
5572
  function responseStatus(error) {
5506
5573
  if (!error || typeof error !== "object" || !("status" in error))
@@ -6632,12 +6699,12 @@ function networkPath(networkId) {
6632
6699
  function vpnPeersPath(reservationId) {
6633
6700
  return `/v1/workflows/compute/nodes/reservations/${encodeURIComponent(reservationId)}/vpn/peers`;
6634
6701
  }
6635
- var networkUpdateFields = z26.object({
6636
- networkId: z26.string(),
6637
- name: z26.string().optional(),
6638
- description: z26.string().optional(),
6639
- clearDescription: z26.boolean().optional(),
6640
- confirm: z26.boolean().optional()
6702
+ var networkUpdateFields = z27.object({
6703
+ networkId: z27.string(),
6704
+ name: z27.string().optional(),
6705
+ description: z27.string().optional(),
6706
+ clearDescription: z27.boolean().optional(),
6707
+ confirm: z27.boolean().optional()
6641
6708
  }).refine((input) => !(input.clearDescription && input.description !== void 0), {
6642
6709
  message: "Use either description or clearDescription, not both."
6643
6710
  }).refine((input) => input.name !== void 0 || input.description !== void 0 || input.clearDescription, { message: "Provide name, description, or clearDescription." });
@@ -6649,7 +6716,7 @@ var networkVerbCapabilities = [
6649
6716
  description: "List this tenant's private networks.",
6650
6717
  mutation: "read",
6651
6718
  http: { method: "GET", path: NETWORKS_PATH },
6652
- input: z26.object({}),
6719
+ input: z27.object({}),
6653
6720
  mcp: { name: "networks_list" },
6654
6721
  slack: false,
6655
6722
  execute: (ctx) => ctx.fetch(NETWORKS_PATH, { method: "GET" })
@@ -6661,7 +6728,7 @@ var networkVerbCapabilities = [
6661
6728
  description: "Show a single private network by id.",
6662
6729
  mutation: "read",
6663
6730
  http: { method: "GET", path: `${NETWORKS_PATH}/{networkId}` },
6664
- input: z26.object({ networkId: z26.string() }),
6731
+ input: z27.object({ networkId: z27.string() }),
6665
6732
  mcp: { name: "networks_show" },
6666
6733
  slack: false,
6667
6734
  execute: (ctx, input) => ctx.fetch(networkPath(input.networkId), { method: "GET" })
@@ -6673,11 +6740,11 @@ var networkVerbCapabilities = [
6673
6740
  description: "Create a private network.",
6674
6741
  mutation: "preview-confirm",
6675
6742
  http: { method: "POST", path: NETWORKS_PATH },
6676
- input: z26.object({
6677
- name: z26.string(),
6678
- cidr: z26.string().optional(),
6679
- description: z26.string().optional(),
6680
- confirm: z26.boolean().optional()
6743
+ input: z27.object({
6744
+ name: z27.string(),
6745
+ cidr: z27.string().optional(),
6746
+ description: z27.string().optional(),
6747
+ confirm: z27.boolean().optional()
6681
6748
  }),
6682
6749
  mcp: { name: "networks_create" },
6683
6750
  slack: false,
@@ -6715,7 +6782,7 @@ var networkVerbCapabilities = [
6715
6782
  description: "Delete a private network.",
6716
6783
  mutation: "preview-confirm",
6717
6784
  http: { method: "DELETE", path: `${NETWORKS_PATH}/{networkId}` },
6718
- input: z26.object({ networkId: z26.string(), confirm: z26.boolean().optional() }),
6785
+ input: z27.object({ networkId: z27.string(), confirm: z27.boolean().optional() }),
6719
6786
  mcp: { name: "networks_delete" },
6720
6787
  slack: false,
6721
6788
  // The route answers 204, so report which network went.
@@ -6734,7 +6801,7 @@ var networkVerbCapabilities = [
6734
6801
  method: "GET",
6735
6802
  path: "/v1/workflows/compute/nodes/reservations/{reservationId}/vpn/peers"
6736
6803
  },
6737
- input: z26.object({ reservationId: z26.string() }),
6804
+ input: z27.object({ reservationId: z27.string() }),
6738
6805
  mcp: { name: "vpn_peers_list" },
6739
6806
  slack: false,
6740
6807
  execute: (ctx, input) => ctx.fetch(vpnPeersPath(input.reservationId), { method: "GET" })
@@ -6749,11 +6816,11 @@ var networkVerbCapabilities = [
6749
6816
  method: "POST",
6750
6817
  path: "/v1/workflows/compute/nodes/reservations/{reservationId}/vpn/peers"
6751
6818
  },
6752
- input: z26.object({
6753
- reservationId: z26.string(),
6754
- publicKey: z26.string(),
6755
- label: z26.string().optional(),
6756
- confirm: z26.boolean().optional()
6819
+ input: z27.object({
6820
+ reservationId: z27.string(),
6821
+ publicKey: z27.string(),
6822
+ label: z27.string().optional(),
6823
+ confirm: z27.boolean().optional()
6757
6824
  }),
6758
6825
  mcp: { name: "vpn_peers_create" },
6759
6826
  slack: false,
@@ -6772,10 +6839,10 @@ var networkVerbCapabilities = [
6772
6839
  method: "DELETE",
6773
6840
  path: "/v1/workflows/compute/nodes/reservations/{reservationId}/vpn/peers/{peerId}"
6774
6841
  },
6775
- input: z26.object({
6776
- reservationId: z26.string(),
6777
- peerId: z26.string(),
6778
- confirm: z26.boolean().optional()
6842
+ input: z27.object({
6843
+ reservationId: z27.string(),
6844
+ peerId: z27.string(),
6845
+ confirm: z27.boolean().optional()
6779
6846
  }),
6780
6847
  mcp: { name: "vpn_peers_delete" },
6781
6848
  slack: false,
@@ -6786,14 +6853,14 @@ var networkVerbCapabilities = [
6786
6853
  ];
6787
6854
 
6788
6855
  // ../../packages/capabilities/dist/capabilities/reservation-list.js
6789
- import { z as z27 } from "zod";
6790
- var reservationListInput = z27.object({
6791
- customerId: z27.string().uuid().optional(),
6792
- listingId: z27.string().uuid().optional(),
6793
- listingTermId: z27.string().uuid().optional(),
6794
- status: z27.enum(["confirmed", "active", "completed", "cancelled"]).optional(),
6795
- cursor: z27.string().optional(),
6796
- limit: z27.number().int().min(1).max(100).optional()
6856
+ import { z as z28 } from "zod";
6857
+ var reservationListInput = z28.object({
6858
+ customerId: z28.string().uuid().optional(),
6859
+ listingId: z28.string().uuid().optional(),
6860
+ listingTermId: z28.string().uuid().optional(),
6861
+ status: z28.enum(["confirmed", "active", "completed", "cancelled"]).optional(),
6862
+ cursor: z28.string().optional(),
6863
+ limit: z28.number().int().min(1).max(100).optional()
6797
6864
  });
6798
6865
  var reservationListCapability = defineCapability({
6799
6866
  id: "reservation.list",
@@ -6845,20 +6912,20 @@ var reservationListCapability = defineCapability({
6845
6912
  });
6846
6913
 
6847
6914
  // ../../packages/capabilities/dist/capabilities/volumes.js
6848
- import { z as z28 } from "zod";
6849
- var storageCliInput = z28.object({
6850
- $positionals: z28.array(z28.string()).optional(),
6851
- contentType: z28.string().optional(),
6852
- cursor: z28.string().optional(),
6853
- idempotencyKey: z28.string().optional(),
6854
- limit: z28.union([z28.string(), z28.number()]).optional(),
6855
- name: z28.string().optional(),
6856
- output: z28.string().optional(),
6857
- overwrite: z28.boolean().optional(),
6858
- path: z28.string().optional(),
6859
- prefix: z28.string().optional(),
6860
- source: z28.string().optional(),
6861
- yes: z28.boolean().optional()
6915
+ import { z as z29 } from "zod";
6916
+ var storageCliInput = z29.object({
6917
+ $positionals: z29.array(z29.string()).optional(),
6918
+ contentType: z29.string().optional(),
6919
+ cursor: z29.string().optional(),
6920
+ idempotencyKey: z29.string().optional(),
6921
+ limit: z29.union([z29.string(), z29.number()]).optional(),
6922
+ name: z29.string().optional(),
6923
+ output: z29.string().optional(),
6924
+ overwrite: z29.boolean().optional(),
6925
+ path: z29.string().optional(),
6926
+ prefix: z29.string().optional(),
6927
+ source: z29.string().optional(),
6928
+ yes: z29.boolean().optional()
6862
6929
  }).strict();
6863
6930
  function storageExecutor(context) {
6864
6931
  const interaction2 = context.cli?.interaction;
@@ -7031,22 +7098,22 @@ function storageDrivePath(driveId, action) {
7031
7098
  function reservationStorageRoute(reservationId, suffix) {
7032
7099
  return `/v1/workflows/compute/nodes/reservations/${encodeURIComponent(reservationId)}/${suffix}`;
7033
7100
  }
7034
- var reservationInput = z28.object({ reservationId: z28.string() });
7035
- var reservationWrite = reservationInput.extend({ confirm: z28.boolean().optional() });
7036
- var driveInput = z28.object({ driveId: z28.string() });
7037
- var driveWrite = driveInput.extend({ confirm: z28.boolean().optional() });
7038
- var bucketConnectInput = z28.object({
7039
- provider: z28.enum(["gcs", "s3", "r2"]),
7040
- bucket: z28.string(),
7041
- name: z28.string().optional(),
7042
- prefix: z28.string().optional(),
7043
- region: z28.string().optional(),
7044
- endpointUrl: z28.string().optional(),
7045
- accountId: z28.string().optional(),
7046
- accessKeyId: z28.string().optional(),
7047
- secretAccessKey: z28.string().optional(),
7048
- readOnly: z28.boolean().optional(),
7049
- confirm: z28.boolean().optional()
7101
+ var reservationInput = z29.object({ reservationId: z29.string() });
7102
+ var reservationWrite = reservationInput.extend({ confirm: z29.boolean().optional() });
7103
+ var driveInput = z29.object({ driveId: z29.string() });
7104
+ var driveWrite = driveInput.extend({ confirm: z29.boolean().optional() });
7105
+ var bucketConnectInput = z29.object({
7106
+ provider: z29.enum(["gcs", "s3", "r2"]),
7107
+ bucket: z29.string(),
7108
+ name: z29.string().optional(),
7109
+ prefix: z29.string().optional(),
7110
+ region: z29.string().optional(),
7111
+ endpointUrl: z29.string().optional(),
7112
+ accountId: z29.string().optional(),
7113
+ accessKeyId: z29.string().optional(),
7114
+ secretAccessKey: z29.string().optional(),
7115
+ readOnly: z29.boolean().optional(),
7116
+ confirm: z29.boolean().optional()
7050
7117
  }).refine((input) => !(input.provider === "gcs" && (input.accessKeyId || input.secretAccessKey)), {
7051
7118
  message: "Access key credentials are only supported for S3-compatible buckets."
7052
7119
  }).refine((input) => Boolean(input.accessKeyId) === Boolean(input.secretAccessKey), {
@@ -7065,7 +7132,7 @@ var storageVerbCapabilities = [
7065
7132
  method: "POST",
7066
7133
  path: "/v1/workflows/compute/nodes/reservations/{reservationId}/storage-deployment"
7067
7134
  },
7068
- input: reservationWrite.extend({ driveId: z28.string(), readOnly: z28.boolean().optional() }),
7135
+ input: reservationWrite.extend({ driveId: z29.string(), readOnly: z29.boolean().optional() }),
7069
7136
  slack: false,
7070
7137
  execute: (ctx, input) => ctx.fetch(reservationStorageRoute(input.reservationId, "storage-deployment"), {
7071
7138
  method: "POST",
@@ -7115,8 +7182,8 @@ var storageVerbCapabilities = [
7115
7182
  path: "/v1/workflows/compute/nodes/reservations/{reservationId}/filesystem-deployment"
7116
7183
  },
7117
7184
  input: reservationWrite.extend({
7118
- performanceTier: z28.enum(["standard", "performance", "enterprise"]),
7119
- capacityGib: z28.number().int().positive()
7185
+ performanceTier: z29.enum(["standard", "performance", "enterprise"]),
7186
+ capacityGib: z29.number().int().positive()
7120
7187
  }),
7121
7188
  slack: false,
7122
7189
  execute: (ctx, input) => ctx.fetch(reservationStorageRoute(input.reservationId, "filesystem-deployment"), {
@@ -7147,7 +7214,7 @@ var storageVerbCapabilities = [
7147
7214
  description: "List reservations that can receive a storage deploy, grouped the same way as the console picker.",
7148
7215
  mutation: "read",
7149
7216
  http: { method: "GET", path: "/v1/orchestrator/storage-targets" },
7150
- input: z28.object({}),
7217
+ input: z29.object({}),
7151
7218
  slack: false,
7152
7219
  execute: (ctx) => ctx.fetch("/v1/orchestrator/storage-targets", { method: "GET" })
7153
7220
  }),
@@ -7158,9 +7225,9 @@ var storageVerbCapabilities = [
7158
7225
  description: "List a page of storage volumes, newest updated first. Pass next_cursor as cursor to continue.",
7159
7226
  mutation: "read",
7160
7227
  http: { method: "GET", path: DRIVES_ROUTE },
7161
- input: z28.object({
7162
- limit: z28.number().int().min(1).max(100).optional(),
7163
- cursor: z28.string().optional()
7228
+ input: z29.object({
7229
+ limit: z29.number().int().min(1).max(100).optional(),
7230
+ cursor: z29.string().optional()
7164
7231
  }),
7165
7232
  mcp: { name: "storage_volumes_list" },
7166
7233
  slack: false,
@@ -7190,10 +7257,10 @@ var storageVerbCapabilities = [
7190
7257
  description: "Create a storage volume (drive), optionally cloned from an existing source drive.",
7191
7258
  mutation: "preview-confirm",
7192
7259
  http: { method: "POST", path: DRIVES_ROUTE },
7193
- input: z28.object({
7194
- name: z28.string(),
7195
- sourceDriveId: z28.string().optional(),
7196
- confirm: z28.boolean().optional()
7260
+ input: z29.object({
7261
+ name: z29.string(),
7262
+ sourceDriveId: z29.string().optional(),
7263
+ confirm: z29.boolean().optional()
7197
7264
  }),
7198
7265
  mcp: { name: "storage_volumes_create" },
7199
7266
  slack: false,
@@ -7295,7 +7362,7 @@ var storageVerbCapabilities = [
7295
7362
  description: "Update a connected S3-compatible bucket's access key credentials.",
7296
7363
  mutation: "preview-confirm",
7297
7364
  http: { method: "PATCH", path: `${STORAGE_DRIVES_ROUTE}/{driveId}/source-credentials` },
7298
- input: driveWrite.extend({ accessKeyId: z28.string(), secretAccessKey: z28.string() }),
7365
+ input: driveWrite.extend({ accessKeyId: z29.string(), secretAccessKey: z29.string() }),
7299
7366
  mcp: { name: "storage_buckets_update_credentials" },
7300
7367
  slack: false,
7301
7368
  execute: (ctx, input) => ctx.fetch(storageDrivePath(input.driveId, "source-credentials"), {
@@ -7315,9 +7382,9 @@ var storageCompositionCapabilities = [
7315
7382
  description: "List a page of connected external buckets.",
7316
7383
  mutation: "read",
7317
7384
  http: { method: "GET", path: DRIVES_ROUTE },
7318
- input: z28.object({
7319
- limit: z28.number().int().min(1).max(100).optional(),
7320
- cursor: z28.string().optional()
7385
+ input: z29.object({
7386
+ limit: z29.number().int().min(1).max(100).optional(),
7387
+ cursor: z29.string().optional()
7321
7388
  }),
7322
7389
  mcp: false,
7323
7390
  slack: false,
@@ -7335,10 +7402,10 @@ var storageCompositionCapabilities = [
7335
7402
  description: "List one page of a storage volume's contents.",
7336
7403
  mutation: "read",
7337
7404
  http: { method: "GET", path: `${DRIVES_ROUTE}/{driveId}/contents` },
7338
- input: z28.object({
7339
- driveId: z28.string(),
7340
- path: z28.string().optional(),
7341
- cursor: z28.union([z28.string(), z28.number()]).optional()
7405
+ input: z29.object({
7406
+ driveId: z29.string(),
7407
+ path: z29.string().optional(),
7408
+ cursor: z29.union([z29.string(), z29.number()]).optional()
7342
7409
  }),
7343
7410
  mcp: false,
7344
7411
  slack: false,
@@ -7405,6 +7472,7 @@ var catalog = [
7405
7472
  ...adminNodeDiagnosticCapabilities,
7406
7473
  ...adminNodeSanitizeCapabilities,
7407
7474
  ...adminEnrollmentCapabilities,
7475
+ adminSshCapability,
7408
7476
  organizationInviteCapability,
7409
7477
  creditGrantCapability
7410
7478
  ])