@skrr-ai/cli 0.1.22 → 0.1.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (281) hide show
  1. package/README.md +83 -73
  2. package/bin/dev-fallback.js +221 -0
  3. package/bin/run.js +96 -0
  4. package/dist/base-command.d.ts +15 -0
  5. package/dist/base-command.js +145 -11
  6. package/dist/commands/agents/attach-harness.d.ts +37 -0
  7. package/dist/commands/agents/attach-harness.js +102 -3
  8. package/dist/commands/agents/chat.d.ts +69 -1
  9. package/dist/commands/agents/chat.js +202 -22
  10. package/dist/commands/agents/create.d.ts +38 -0
  11. package/dist/commands/agents/create.js +95 -2
  12. package/dist/commands/agents/schedule-trace.js +11 -0
  13. package/dist/commands/agents/show.js +29 -1
  14. package/dist/commands/api-keys/create.d.ts +24 -0
  15. package/dist/commands/api-keys/create.js +80 -0
  16. package/dist/commands/api-keys/list.d.ts +11 -0
  17. package/dist/commands/api-keys/list.js +42 -0
  18. package/dist/commands/api-keys/revoke.d.ts +14 -0
  19. package/dist/commands/api-keys/revoke.js +33 -0
  20. package/dist/commands/api-keys/rotate.d.ts +19 -0
  21. package/dist/commands/api-keys/rotate.js +42 -0
  22. package/dist/commands/balance/index.d.ts +18 -0
  23. package/dist/commands/balance/index.js +29 -0
  24. package/dist/commands/balance/show.d.ts +25 -0
  25. package/dist/commands/balance/show.js +60 -0
  26. package/dist/commands/balance/statement.d.ts +19 -0
  27. package/dist/commands/balance/statement.js +52 -0
  28. package/dist/commands/browser/doctor.d.ts +11 -0
  29. package/dist/commands/browser/doctor.js +11 -0
  30. package/dist/commands/code/jobs/approve.d.ts +25 -0
  31. package/dist/commands/code/jobs/approve.js +52 -0
  32. package/dist/commands/code/jobs/cancel.d.ts +12 -0
  33. package/dist/commands/code/jobs/cancel.js +39 -0
  34. package/dist/commands/code/jobs/index.d.ts +19 -0
  35. package/dist/commands/code/jobs/index.js +38 -0
  36. package/dist/commands/code/jobs/list.d.ts +12 -0
  37. package/dist/commands/code/jobs/list.js +87 -0
  38. package/dist/commands/code/jobs/run.d.ts +32 -0
  39. package/dist/commands/code/jobs/run.js +151 -0
  40. package/dist/commands/code/jobs/show.d.ts +12 -0
  41. package/dist/commands/code/jobs/show.js +86 -0
  42. package/dist/commands/commitments/preflight.js +18 -4
  43. package/dist/commands/commitments/receipt-metrics.d.ts +39 -0
  44. package/dist/commands/commitments/receipt-metrics.js +78 -0
  45. package/dist/commands/convos/search.js +5 -5
  46. package/dist/commands/harnesses/leases/list.d.ts +3 -0
  47. package/dist/commands/harnesses/leases/list.js +59 -12
  48. package/dist/commands/harnesses/leases/show.js +36 -0
  49. package/dist/commands/harnesses/list.d.ts +18 -0
  50. package/dist/commands/harnesses/list.js +30 -0
  51. package/dist/commands/harnesses/products.js +49 -3
  52. package/dist/commands/harnesses/quota.d.ts +16 -0
  53. package/dist/commands/harnesses/quota.js +26 -1
  54. package/dist/commands/harnesses/usage.js +17 -0
  55. package/dist/commands/inbox/index.d.ts +2 -1
  56. package/dist/commands/inbox/index.js +27 -4
  57. package/dist/commands/login.js +4 -1
  58. package/dist/commands/machines/dedicated/create.d.ts +18 -0
  59. package/dist/commands/machines/dedicated/create.js +90 -0
  60. package/dist/commands/machines/dedicated/destroy.d.ts +14 -0
  61. package/dist/commands/machines/dedicated/destroy.js +56 -0
  62. package/dist/commands/machines/dedicated/grow.d.ts +13 -0
  63. package/dist/commands/machines/dedicated/grow.js +46 -0
  64. package/dist/commands/machines/dedicated/health-check.d.ts +12 -0
  65. package/dist/commands/machines/dedicated/health-check.js +42 -0
  66. package/dist/commands/machines/dedicated/incident-close.d.ts +12 -0
  67. package/dist/commands/machines/dedicated/incident-close.js +42 -0
  68. package/dist/commands/machines/dedicated/index.d.ts +6 -0
  69. package/dist/commands/machines/dedicated/index.js +39 -0
  70. package/dist/commands/machines/dedicated/list.d.ts +11 -0
  71. package/dist/commands/machines/dedicated/list.js +58 -0
  72. package/dist/commands/machines/dedicated/restart.d.ts +12 -0
  73. package/dist/commands/machines/dedicated/restart.js +42 -0
  74. package/dist/commands/machines/dedicated/show.d.ts +12 -0
  75. package/dist/commands/machines/dedicated/show.js +58 -0
  76. package/dist/commands/machines/dedicated/snapshot.d.ts +12 -0
  77. package/dist/commands/machines/dedicated/snapshot.js +42 -0
  78. package/dist/commands/machines/dedicated/start.d.ts +12 -0
  79. package/dist/commands/machines/dedicated/start.js +42 -0
  80. package/dist/commands/machines/dedicated/stop.d.ts +12 -0
  81. package/dist/commands/machines/dedicated/stop.js +42 -0
  82. package/dist/commands/machines/hosted/index.js +4 -1
  83. package/dist/commands/machines/list.d.ts +1 -0
  84. package/dist/commands/machines/list.js +33 -5
  85. package/dist/commands/memory/approvals/issue.d.ts +18 -0
  86. package/dist/commands/memory/approvals/issue.js +63 -0
  87. package/dist/commands/memory/commit.js +5 -2
  88. package/dist/commands/memory/context.d.ts +3 -2
  89. package/dist/commands/memory/context.js +9 -11
  90. package/dist/commands/memory/delete.d.ts +1 -1
  91. package/dist/commands/memory/list.d.ts +1 -1
  92. package/dist/commands/memory/list.js +1 -1
  93. package/dist/commands/memory/mounts/resolve.d.ts +10 -0
  94. package/dist/commands/memory/mounts/resolve.js +27 -0
  95. package/dist/commands/memory/proposals/commit.d.ts +18 -0
  96. package/dist/commands/memory/proposals/commit.js +32 -0
  97. package/dist/commands/memory/proposals/create.d.ts +18 -0
  98. package/dist/commands/memory/proposals/create.js +56 -0
  99. package/dist/commands/memory/proposals/list.d.ts +13 -0
  100. package/dist/commands/memory/proposals/list.js +31 -0
  101. package/dist/commands/memory/proposals/promote.d.ts +22 -0
  102. package/dist/commands/memory/proposals/promote.js +33 -0
  103. package/dist/commands/memory/proposals/reject.d.ts +16 -0
  104. package/dist/commands/memory/proposals/reject.js +28 -0
  105. package/dist/commands/memory/rebuild-index.d.ts +20 -0
  106. package/dist/commands/memory/rebuild-index.js +25 -0
  107. package/dist/commands/memory/save.d.ts +1 -1
  108. package/dist/commands/memory/save.js +1 -1
  109. package/dist/commands/memory/search.d.ts +6 -3
  110. package/dist/commands/memory/search.js +27 -3
  111. package/dist/commands/memory/show.d.ts +1 -1
  112. package/dist/commands/memory/stores/archive.d.ts +14 -0
  113. package/dist/commands/memory/stores/archive.js +31 -0
  114. package/dist/commands/memory/stores/create.d.ts +12 -0
  115. package/dist/commands/memory/stores/create.js +30 -0
  116. package/dist/commands/memory/stores/delete.d.ts +15 -0
  117. package/dist/commands/memory/stores/delete.js +38 -0
  118. package/dist/commands/memory/stores/list.d.ts +10 -0
  119. package/dist/commands/memory/stores/list.js +29 -0
  120. package/dist/commands/memory/stores/show.d.ts +12 -0
  121. package/dist/commands/memory/stores/show.js +14 -0
  122. package/dist/commands/memory/stores/update.d.ts +15 -0
  123. package/dist/commands/memory/stores/update.js +39 -0
  124. package/dist/commands/memory/sync/delete.d.ts +13 -0
  125. package/dist/commands/memory/sync/delete.js +35 -0
  126. package/dist/commands/memory/sync/pull.d.ts +19 -0
  127. package/dist/commands/memory/sync/pull.js +52 -0
  128. package/dist/commands/memory/sync/push.d.ts +18 -0
  129. package/dist/commands/memory/sync/push.js +115 -0
  130. package/dist/commands/memory/sync/resolve.d.ts +23 -0
  131. package/dist/commands/memory/sync/resolve.js +27 -0
  132. package/dist/commands/memory/sync/status.d.ts +9 -0
  133. package/dist/commands/memory/sync/status.js +22 -0
  134. package/dist/commands/memory/topics/archive.d.ts +20 -0
  135. package/dist/commands/memory/topics/archive.js +29 -0
  136. package/dist/commands/memory/topics/create.d.ts +23 -0
  137. package/dist/commands/memory/topics/create.js +46 -0
  138. package/dist/commands/memory/topics/delete.d.ts +22 -0
  139. package/dist/commands/memory/topics/delete.js +30 -0
  140. package/dist/commands/memory/topics/forget.d.ts +22 -0
  141. package/dist/commands/memory/topics/forget.js +29 -0
  142. package/dist/commands/memory/topics/list.d.ts +13 -0
  143. package/dist/commands/memory/topics/list.js +22 -0
  144. package/dist/commands/memory/topics/move.d.ts +22 -0
  145. package/dist/commands/memory/topics/move.js +26 -0
  146. package/dist/commands/memory/topics/show.d.ts +17 -0
  147. package/dist/commands/memory/topics/show.js +21 -0
  148. package/dist/commands/memory/topics/update.d.ts +23 -0
  149. package/dist/commands/memory/topics/update.js +27 -0
  150. package/dist/commands/memory/tree.d.ts +5 -2
  151. package/dist/commands/memory/tree.js +20 -2
  152. package/dist/commands/memory/update.d.ts +1 -1
  153. package/dist/commands/memory/versions/list.d.ts +16 -0
  154. package/dist/commands/memory/versions/list.js +22 -0
  155. package/dist/commands/memory/versions/redact.d.ts +21 -0
  156. package/dist/commands/memory/versions/redact.js +22 -0
  157. package/dist/commands/memory/versions/restore.d.ts +20 -0
  158. package/dist/commands/memory/versions/restore.js +16 -0
  159. package/dist/commands/memory/versions/show.d.ts +15 -0
  160. package/dist/commands/memory/versions/show.js +17 -0
  161. package/dist/commands/messages/list.js +25 -8
  162. package/dist/commands/messages/show.js +10 -0
  163. package/dist/commands/spaces/update.js +16 -12
  164. package/dist/commands/spaces/work-sync/reconcile.d.ts +38 -0
  165. package/dist/commands/spaces/work-sync/reconcile.js +90 -0
  166. package/dist/commands/spaces/work-sync/telemetry.d.ts +29 -0
  167. package/dist/commands/spaces/work-sync/telemetry.js +96 -0
  168. package/dist/commands/store/install.js +5 -1
  169. package/dist/commands/store/releases.js +1 -1
  170. package/dist/commands/store/update.js +5 -1
  171. package/dist/commands/subscriptions/cancel.js +5 -1
  172. package/dist/commands/subscriptions/health.js +5 -1
  173. package/dist/commands/subscriptions/status.js +5 -1
  174. package/dist/commands/subscriptions/subscribe.js +5 -1
  175. package/dist/commands/tasks/activity.d.ts +2 -3
  176. package/dist/commands/tasks/activity.js +20 -6
  177. package/dist/commands/tasks/complete.d.ts +22 -150
  178. package/dist/commands/tasks/complete.js +174 -599
  179. package/dist/commands/tasks/create.d.ts +6 -0
  180. package/dist/commands/tasks/create.js +114 -4
  181. package/dist/commands/tasks/deliverable/add.d.ts +8 -0
  182. package/dist/commands/tasks/deliverable/add.js +62 -11
  183. package/dist/commands/tasks/deliverable/confirm.d.ts +5 -5
  184. package/dist/commands/tasks/deliverable/confirm.js +9 -18
  185. package/dist/commands/tasks/deliverable/list.d.ts +12 -0
  186. package/dist/commands/tasks/deliverable/list.js +58 -0
  187. package/dist/commands/tasks/events/append.d.ts +2 -0
  188. package/dist/commands/tasks/events/append.js +41 -6
  189. package/dist/commands/tasks/events/list.d.ts +1 -0
  190. package/dist/commands/tasks/events/list.js +1 -0
  191. package/dist/commands/tasks/events/tail.d.ts +1 -0
  192. package/dist/commands/tasks/events/tail.js +1 -0
  193. package/dist/commands/tasks/expectations/assess.d.ts +21 -0
  194. package/dist/commands/tasks/expectations/assess.js +103 -0
  195. package/dist/commands/tasks/expectations.js +121 -25
  196. package/dist/commands/tasks/judge.d.ts +1 -0
  197. package/dist/commands/tasks/judge.js +2 -1
  198. package/dist/commands/tasks/output.d.ts +1 -11
  199. package/dist/commands/tasks/output.js +80 -141
  200. package/dist/commands/tasks/report.d.ts +3 -3
  201. package/dist/commands/tasks/report.js +66 -41
  202. package/dist/commands/tasks/resource/add.d.ts +23 -0
  203. package/dist/commands/tasks/resource/add.js +76 -0
  204. package/dist/commands/tasks/resource/list.d.ts +13 -0
  205. package/dist/commands/tasks/resource/list.js +41 -0
  206. package/dist/commands/tasks/result/show.d.ts +13 -0
  207. package/dist/commands/tasks/result/show.js +64 -0
  208. package/dist/commands/tasks/result/submit.d.ts +26 -0
  209. package/dist/commands/tasks/result/submit.js +134 -0
  210. package/dist/commands/tasks/resume/save.d.ts +16 -0
  211. package/dist/commands/tasks/resume/save.js +69 -0
  212. package/dist/commands/tasks/resume/show.d.ts +13 -0
  213. package/dist/commands/tasks/resume/show.js +35 -0
  214. package/dist/commands/tasks/review.d.ts +17 -0
  215. package/dist/commands/tasks/review.js +54 -0
  216. package/dist/commands/tasks/runs.js +5 -0
  217. package/dist/commands/tasks/self-schedule.js +7 -4
  218. package/dist/commands/tasks/show.js +19 -0
  219. package/dist/commands/tasks/timeline.d.ts +2 -2
  220. package/dist/commands/tasks/timeline.js +19 -24
  221. package/dist/commands/tasks/updates/add.d.ts +22 -0
  222. package/dist/commands/tasks/updates/add.js +122 -0
  223. package/dist/commands/tasks/updates/list.d.ts +15 -0
  224. package/dist/commands/tasks/updates/list.js +57 -0
  225. package/dist/commands/tasks/waive.d.ts +1 -0
  226. package/dist/commands/tasks/waive.js +2 -1
  227. package/dist/lib/agentic-stream.d.ts +257 -0
  228. package/dist/lib/agentic-stream.js +490 -33
  229. package/dist/lib/balance.d.ts +8 -0
  230. package/dist/lib/commitment-product.d.ts +10 -1
  231. package/dist/lib/commitment-product.js +66 -2
  232. package/dist/lib/commitments.d.ts +2 -1
  233. package/dist/lib/commitments.js +1 -0
  234. package/dist/lib/conversation-search.d.ts +3 -0
  235. package/dist/lib/conversation-search.js +75 -0
  236. package/dist/lib/dedicated-machines.d.ts +66 -0
  237. package/dist/lib/dedicated-machines.js +161 -0
  238. package/dist/lib/execution-target.d.ts +21 -0
  239. package/dist/lib/execution-target.js +22 -6
  240. package/dist/lib/harnesses.d.ts +87 -6
  241. package/dist/lib/harnesses.js +32 -1
  242. package/dist/lib/hosted-machines.js +9 -0
  243. package/dist/lib/inbox.d.ts +2 -1
  244. package/dist/lib/machines.d.ts +17 -0
  245. package/dist/lib/machines.js +29 -0
  246. package/dist/lib/managed-agent-keys.d.ts +104 -0
  247. package/dist/lib/managed-agent-keys.js +50 -0
  248. package/dist/lib/memory-scope.d.ts +4 -3
  249. package/dist/lib/memory-scope.js +9 -9
  250. package/dist/lib/memory-sync.d.ts +114 -0
  251. package/dist/lib/memory-sync.js +730 -0
  252. package/dist/lib/message-provenance.d.ts +42 -0
  253. package/dist/lib/message-provenance.js +89 -0
  254. package/dist/lib/scoped-memory-command.d.ts +68 -0
  255. package/dist/lib/scoped-memory-command.js +183 -0
  256. package/dist/lib/session-task-endpoints.d.ts +1 -1
  257. package/dist/lib/session-task-endpoints.js +7 -0
  258. package/dist/lib/sky-code-broker.d.ts +47 -0
  259. package/dist/lib/sky-code-broker.js +50 -0
  260. package/dist/lib/sky-code-doctor.js +10 -1
  261. package/dist/lib/task-artifact-flags.d.ts +2 -0
  262. package/dist/lib/task-artifact-flags.js +7 -0
  263. package/dist/lib/task-execution.d.ts +4 -5
  264. package/dist/lib/task-execution.js +4 -5
  265. package/dist/lib/task-extras.d.ts +1 -5
  266. package/dist/lib/task-extras.js +1 -5
  267. package/dist/lib/task-legacy.d.ts +24 -0
  268. package/dist/lib/task-legacy.js +48 -0
  269. package/dist/lib/task-transcript.d.ts +5 -7
  270. package/dist/lib/task-transcript.js +8 -16
  271. package/dist/lib/tasks.d.ts +39 -21
  272. package/dist/lib/tasks.js +64 -21
  273. package/dist/lib/triggers.d.ts +39 -1
  274. package/dist/lib/triggers.js +70 -2
  275. package/dist/lib/usage-discovery.d.ts +17 -1
  276. package/dist/lib/usage-discovery.js +17 -1
  277. package/dist/lib/work-sync.d.ts +70 -0
  278. package/dist/lib/work-sync.js +29 -0
  279. package/dist/node_modules/@skrr-ai/data-provider/index.js +3760 -3621
  280. package/oclif.manifest.json +14653 -7813
  281. package/package.json +26 -5
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const node_crypto_1 = require("node:crypto");
5
+ const base_command_1 = require("../../../base-command");
6
+ const dedicated_machines_1 = require("../../../lib/dedicated-machines");
7
+ class DedicatedMachinesCreate extends base_command_1.BaseCommand {
8
+ static description = 'Request a Dedicated Runtime lease';
9
+ static examples = [
10
+ '<%= config.bin %> machines dedicated create --name dev-box --size-preset standard --spending-limit-cents 20000',
11
+ '<%= config.bin %> machines dedicated create --name dev-box --size-preset standard --spending-limit-cents 20000 --json',
12
+ ];
13
+ static flags = {
14
+ name: core_1.Flags.string({ description: 'Display name for the dedicated machine', required: true }),
15
+ 'size-preset': core_1.Flags.string({
16
+ description: 'Instance size preset (from harnesses products)',
17
+ required: true,
18
+ }),
19
+ // None of these four carry a client-side default, deliberately.
20
+ //
21
+ // The server already defaults every one of them, and a CLI that restates a
22
+ // default it does not own cannot be right for long. `--storage-gb` proved
23
+ // it: it defaulted to 100 while the product's default is 50, so a user who
24
+ // never chose a size was billed for twice the documented disk, the server's
25
+ // own `workspaceDefaultGb` was unreachable through the CLI, and the
26
+ // decision record that set the number was wrong for CLI users. The other
27
+ // three happened to agree, which is worse rather than better — it is the
28
+ // same bug with the symptom switched off until someone moves a default.
29
+ 'region-class': core_1.Flags.string({
30
+ description: 'Region class. Defaults to the product catalog value (usually primary).',
31
+ }),
32
+ 'storage-gb': core_1.Flags.integer({
33
+ description: 'Workspace storage size in GB. Defaults to the product catalog size.',
34
+ }),
35
+ 'retention-class': core_1.Flags.string({
36
+ description: 'Retention class for stopped instances. Defaults to the product catalog value.',
37
+ }),
38
+ 'backup-profile': core_1.Flags.string({
39
+ description: 'crash-consistent (AWS Backup) or application-consistent (guest fsfreeze while the daemon is reachable; scheduled DLM when that plan is enabled). Defaults to the product catalog value.',
40
+ }),
41
+ 'spending-limit-cents': core_1.Flags.integer({
42
+ description: 'Monthly spending limit in cents. Required before start.',
43
+ required: true,
44
+ }),
45
+ workspace: core_1.Flags.string({ description: 'Workspace scope' }),
46
+ 'request-id': core_1.Flags.string({
47
+ description: 'Idempotency key. Reuse it to safely retry the same create request.',
48
+ }),
49
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
50
+ };
51
+ async run() {
52
+ this.requireAuth();
53
+ const { flags } = await this.parse(DedicatedMachinesCreate);
54
+ const body = (0, dedicated_machines_1.dedicatedRuntimeCreateInput)({
55
+ requestId: flags['request-id'] || newRequestId(),
56
+ displayName: flags.name,
57
+ sizePreset: flags['size-preset'],
58
+ monthlySpendingLimitCents: flags['spending-limit-cents'],
59
+ regionClass: flags['region-class'],
60
+ storageGb: flags['storage-gb'],
61
+ retentionClass: flags['retention-class'],
62
+ backupProfile: flags['backup-profile'],
63
+ workspaceId: flags.workspace,
64
+ });
65
+ let response;
66
+ try {
67
+ response = await (0, dedicated_machines_1.createDedicatedRuntime)(body);
68
+ }
69
+ catch (err) {
70
+ const message = (0, dedicated_machines_1.formatDedicatedRuntimeApiError)(err);
71
+ if (message)
72
+ this.error(message, { exit: 1 });
73
+ this.handleApiError(err);
74
+ }
75
+ const lease = response?.lease;
76
+ if (flags.json) {
77
+ this.log(JSON.stringify(response, null, 2));
78
+ return;
79
+ }
80
+ const id = (0, dedicated_machines_1.dedicatedLeaseId)(lease);
81
+ this.log(`Dedicated Runtime ${(0, dedicated_machines_1.dedicatedLeaseDisplayName)(lease)} (${id || 'unknown'}) ${(0, dedicated_machines_1.dedicatedLeaseState)(lease)}.`);
82
+ if (id) {
83
+ this.log(`Poll: ${this.config.bin} machines dedicated show ${id}`);
84
+ }
85
+ }
86
+ }
87
+ exports.default = DedicatedMachinesCreate;
88
+ function newRequestId() {
89
+ return `dedicated-machine:${Date.now()}:${(0, node_crypto_1.randomBytes)(6).toString('hex')}`;
90
+ }
@@ -0,0 +1,14 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class DedicatedMachinesDestroy extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ lease: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static flags: {
9
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
10
+ 'retain-storage': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
+ 'purge-storage': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
12
+ };
13
+ run(): Promise<void>;
14
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const dedicated_machines_1 = require("../../../lib/dedicated-machines");
6
+ class DedicatedMachinesDestroy extends base_command_1.BaseCommand {
7
+ static description = 'Destroy a Dedicated Runtime lease. Retention class standard/extended archives the lease and keeps the workspace volume; destroy an archived lease to purge storage.';
8
+ static examples = [
9
+ '<%= config.bin %> machines dedicated destroy <lease-id>',
10
+ '<%= config.bin %> machines dedicated destroy <lease-id> --json',
11
+ ];
12
+ static args = {
13
+ lease: core_1.Args.string({
14
+ description: 'Dedicated Runtime lease id',
15
+ required: true,
16
+ ignoreStdin: true,
17
+ }),
18
+ };
19
+ static flags = {
20
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
21
+ 'retain-storage': core_1.Flags.boolean({
22
+ description: 'Archive the lease and keep the workspace volume',
23
+ exclusive: ['purge-storage'],
24
+ }),
25
+ 'purge-storage': core_1.Flags.boolean({
26
+ description: 'Permanently delete the workspace volume',
27
+ exclusive: ['retain-storage'],
28
+ }),
29
+ };
30
+ async run() {
31
+ this.requireAuth();
32
+ const { args, flags } = await this.parse(DedicatedMachinesDestroy);
33
+ let response;
34
+ try {
35
+ response = await (0, dedicated_machines_1.destroyDedicatedRuntime)(args.lease, {
36
+ retentionIntent: flags['purge-storage']
37
+ ? 'purge'
38
+ : flags['retain-storage']
39
+ ? 'retain'
40
+ : undefined,
41
+ });
42
+ }
43
+ catch (err) {
44
+ const message = (0, dedicated_machines_1.formatDedicatedRuntimeApiError)(err);
45
+ if (message)
46
+ this.error(message, { exit: 1 });
47
+ this.handleApiError(err);
48
+ }
49
+ if (flags.json) {
50
+ this.log(JSON.stringify(response, null, 2));
51
+ return;
52
+ }
53
+ this.log(`Dedicated Runtime ${(0, dedicated_machines_1.dedicatedLeaseId)(response?.lease)} ${(0, dedicated_machines_1.dedicatedLeaseState)(response?.lease)}.`);
54
+ }
55
+ }
56
+ exports.default = DedicatedMachinesDestroy;
@@ -0,0 +1,13 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class DedicatedMachinesGrow extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ lease: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static flags: {
9
+ 'storage-gb': import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
10
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
+ };
12
+ run(): Promise<void>;
13
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const dedicated_machines_1 = require("../../../lib/dedicated-machines");
6
+ class DedicatedMachinesGrow extends base_command_1.BaseCommand {
7
+ static description = 'Increase Dedicated Runtime workspace storage. Shrink is unsupported.';
8
+ static examples = [
9
+ '<%= config.bin %> machines dedicated grow <lease-id> --storage-gb 200',
10
+ '<%= config.bin %> machines dedicated grow <lease-id> --storage-gb 200 --json',
11
+ ];
12
+ static args = {
13
+ lease: core_1.Args.string({
14
+ description: 'Dedicated Runtime lease id',
15
+ required: true,
16
+ ignoreStdin: true,
17
+ }),
18
+ };
19
+ static flags = {
20
+ 'storage-gb': core_1.Flags.integer({
21
+ description: 'New workspace size in GiB. Must be larger than the current size.',
22
+ required: true,
23
+ }),
24
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
25
+ };
26
+ async run() {
27
+ this.requireAuth();
28
+ const { args, flags } = await this.parse(DedicatedMachinesGrow);
29
+ let response;
30
+ try {
31
+ response = await (0, dedicated_machines_1.growDedicatedRuntime)(args.lease, flags['storage-gb']);
32
+ }
33
+ catch (err) {
34
+ const message = (0, dedicated_machines_1.formatDedicatedRuntimeApiError)(err);
35
+ if (message)
36
+ this.error(message, { exit: 1 });
37
+ this.handleApiError(err);
38
+ }
39
+ if (flags.json) {
40
+ this.log(JSON.stringify(response, null, 2));
41
+ return;
42
+ }
43
+ this.log(`Dedicated Runtime ${(0, dedicated_machines_1.dedicatedLeaseId)(response?.lease)} ${(0, dedicated_machines_1.dedicatedLeaseState)(response?.lease)}.`);
44
+ }
45
+ }
46
+ exports.default = DedicatedMachinesGrow;
@@ -0,0 +1,12 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class DedicatedMachinesHealthCheck extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ lease: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static flags: {
9
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
10
+ };
11
+ run(): Promise<void>;
12
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const dedicated_machines_1 = require("../../../lib/dedicated-machines");
6
+ class DedicatedMachinesHealthCheck extends base_command_1.BaseCommand {
7
+ static description = 'Health-check a Dedicated Runtime lease';
8
+ static examples = [
9
+ '<%= config.bin %> machines dedicated health-check <lease-id>',
10
+ '<%= config.bin %> machines dedicated health-check <lease-id> --json',
11
+ ];
12
+ static args = {
13
+ lease: core_1.Args.string({
14
+ description: 'Dedicated Runtime lease id',
15
+ required: true,
16
+ ignoreStdin: true,
17
+ }),
18
+ };
19
+ static flags = {
20
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
21
+ };
22
+ async run() {
23
+ this.requireAuth();
24
+ const { args, flags } = await this.parse(DedicatedMachinesHealthCheck);
25
+ let response;
26
+ try {
27
+ response = await (0, dedicated_machines_1.performDedicatedLeaseAction)(args.lease, 'health-check');
28
+ }
29
+ catch (err) {
30
+ const message = (0, dedicated_machines_1.formatDedicatedRuntimeApiError)(err);
31
+ if (message)
32
+ this.error(message, { exit: 1 });
33
+ this.handleApiError(err);
34
+ }
35
+ if (flags.json) {
36
+ this.log(JSON.stringify(response, null, 2));
37
+ return;
38
+ }
39
+ this.log(`Dedicated Runtime ${(0, dedicated_machines_1.dedicatedLeaseId)(response?.lease)} ${(0, dedicated_machines_1.dedicatedLeaseState)(response?.lease)}.`);
40
+ }
41
+ }
42
+ exports.default = DedicatedMachinesHealthCheck;
@@ -0,0 +1,12 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class DedicatedMachinesIncidentClose extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ lease: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static flags: {
9
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
10
+ };
11
+ run(): Promise<void>;
12
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const dedicated_machines_1 = require("../../../lib/dedicated-machines");
6
+ class DedicatedMachinesIncidentClose extends base_command_1.BaseCommand {
7
+ static description = 'Close a Dedicated Runtime AZ-recovery incident hold. Does not delete the workspace.';
8
+ static examples = [
9
+ '<%= config.bin %> machines dedicated incident-close <lease-id>',
10
+ '<%= config.bin %> machines dedicated incident-close <lease-id> --json',
11
+ ];
12
+ static args = {
13
+ lease: core_1.Args.string({
14
+ description: 'Dedicated Runtime lease id',
15
+ required: true,
16
+ ignoreStdin: true,
17
+ }),
18
+ };
19
+ static flags = {
20
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
21
+ };
22
+ async run() {
23
+ this.requireAuth();
24
+ const { args, flags } = await this.parse(DedicatedMachinesIncidentClose);
25
+ let response;
26
+ try {
27
+ response = await (0, dedicated_machines_1.closeDedicatedRuntimeIncidentHold)(args.lease);
28
+ }
29
+ catch (err) {
30
+ const message = (0, dedicated_machines_1.formatDedicatedRuntimeApiError)(err);
31
+ if (message)
32
+ this.error(message, { exit: 1 });
33
+ this.handleApiError(err);
34
+ }
35
+ if (flags.json) {
36
+ this.log(JSON.stringify(response, null, 2));
37
+ return;
38
+ }
39
+ this.log(`Dedicated Runtime ${(0, dedicated_machines_1.dedicatedLeaseId)(response?.lease)} ${(0, dedicated_machines_1.dedicatedLeaseState)(response?.lease)}.`);
40
+ }
41
+ }
42
+ exports.default = DedicatedMachinesIncidentClose;
@@ -0,0 +1,6 @@
1
+ import { Command } from '@oclif/core';
2
+ export default class DedicatedMachines extends Command {
3
+ static description: string;
4
+ static examples: string[];
5
+ run(): Promise<void>;
6
+ }
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ class DedicatedMachines extends core_1.Command {
5
+ // This line is read at the moment someone CHOOSES between the two products,
6
+ // so it states the trade rather than restating the product name. "Manage
7
+ // Dedicated Runtime leases" told a user nothing they could decide on, and the
8
+ // difference that matters — files survive a restart, running processes do not
9
+ // — was invisible until a restart lost their work.
10
+ static description = 'A private VM with a durable workspace — files survive restart, running processes do not';
11
+ static examples = [
12
+ '<%= config.bin %> machines dedicated list',
13
+ '<%= config.bin %> machines dedicated show <lease-id>',
14
+ '<%= config.bin %> machines dedicated create --name dev-box --size-preset standard --spending-limit-cents 20000',
15
+ '<%= config.bin %> machines dedicated stop <lease-id>',
16
+ '<%= config.bin %> machines dedicated start <lease-id>',
17
+ '<%= config.bin %> machines dedicated restart <lease-id>',
18
+ '<%= config.bin %> machines dedicated snapshot <lease-id>',
19
+ '<%= config.bin %> machines dedicated grow <lease-id> --storage-gb 200',
20
+ '<%= config.bin %> machines dedicated incident-close <lease-id>',
21
+ '<%= config.bin %> machines dedicated health-check <lease-id>',
22
+ '<%= config.bin %> machines dedicated destroy <lease-id>',
23
+ ];
24
+ async run() {
25
+ this.log('skrr Dedicated Runtime commands:');
26
+ this.log(' skrr machines dedicated list list Dedicated Runtime leases');
27
+ this.log(' skrr machines dedicated show show one Dedicated Runtime lease');
28
+ this.log(' skrr machines dedicated create request a Dedicated Runtime');
29
+ this.log(' skrr machines dedicated start start a stopped runtime');
30
+ this.log(' skrr machines dedicated stop stop compute and keep the disk');
31
+ this.log(' skrr machines dedicated restart restart the instance; files stay');
32
+ this.log(' skrr machines dedicated snapshot create a recovery point');
33
+ this.log(' skrr machines dedicated grow increase workspace storage; shrink is unsupported');
34
+ this.log(' skrr machines dedicated incident-close close AZ-recovery evidence hold');
35
+ this.log(' skrr machines dedicated health-check probe daemon and disk liveness');
36
+ this.log(' skrr machines dedicated destroy stop compute; keep or purge the workspace disk');
37
+ }
38
+ }
39
+ exports.default = DedicatedMachines;
@@ -0,0 +1,11 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class DedicatedMachinesList extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
7
+ state: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
8
+ limit: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
9
+ };
10
+ run(): Promise<void>;
11
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const format_1 = require("../../../lib/format");
6
+ const dedicated_machines_1 = require("../../../lib/dedicated-machines");
7
+ class DedicatedMachinesList extends base_command_1.BaseCommand {
8
+ static description = 'List Dedicated Runtime leases';
9
+ static examples = [
10
+ '<%= config.bin %> machines dedicated list',
11
+ '<%= config.bin %> machines dedicated list --json',
12
+ ];
13
+ static flags = {
14
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
15
+ state: core_1.Flags.string({ description: 'Filter by lease state' }),
16
+ limit: core_1.Flags.integer({ description: 'Max leases to return', default: 50 }),
17
+ };
18
+ async run() {
19
+ this.requireAuth();
20
+ const { flags } = await this.parse(DedicatedMachinesList);
21
+ let response;
22
+ try {
23
+ response = await (0, dedicated_machines_1.listDedicatedRuntimes)({
24
+ limit: flags.limit,
25
+ state: flags.state,
26
+ });
27
+ }
28
+ catch (err) {
29
+ const message = (0, dedicated_machines_1.formatDedicatedRuntimeApiError)(err);
30
+ if (message)
31
+ this.error(message, { exit: 1 });
32
+ this.handleApiError(err);
33
+ }
34
+ if (flags.json) {
35
+ this.log(JSON.stringify(response, null, 2));
36
+ return;
37
+ }
38
+ const leases = response?.leases ?? [];
39
+ if (leases.length === 0) {
40
+ this.log('No Dedicated Runtime leases.');
41
+ return;
42
+ }
43
+ (0, format_1.renderTable)(leases.map((lease) => ({
44
+ id: (0, format_1.formatCell)((0, dedicated_machines_1.dedicatedLeaseId)(lease)),
45
+ status: (0, format_1.formatCell)((0, dedicated_machines_1.dedicatedLeaseState)(lease)),
46
+ name: (0, format_1.formatCell)((0, dedicated_machines_1.dedicatedLeaseDisplayName)(lease)),
47
+ retention: (0, format_1.formatCell)(lease.storage?.retentionClass || '-'),
48
+ backup: (0, format_1.formatCell)(lease.storage?.lastBackupAt || '-'),
49
+ })), [
50
+ { key: 'id', header: 'ID' },
51
+ { key: 'status', header: 'STATUS' },
52
+ { key: 'name', header: 'NAME', maxWidth: 28 },
53
+ { key: 'retention', header: 'RETENTION', maxWidth: 14 },
54
+ { key: 'backup', header: 'LAST BACKUP', maxWidth: 24 },
55
+ ], (line) => this.log(line));
56
+ }
57
+ }
58
+ exports.default = DedicatedMachinesList;
@@ -0,0 +1,12 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class DedicatedMachinesRestart extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ lease: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static flags: {
9
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
10
+ };
11
+ run(): Promise<void>;
12
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const dedicated_machines_1 = require("../../../lib/dedicated-machines");
6
+ class DedicatedMachinesRestart extends base_command_1.BaseCommand {
7
+ static description = 'Restart a Dedicated Runtime lease';
8
+ static examples = [
9
+ '<%= config.bin %> machines dedicated restart <lease-id>',
10
+ '<%= config.bin %> machines dedicated restart <lease-id> --json',
11
+ ];
12
+ static args = {
13
+ lease: core_1.Args.string({
14
+ description: 'Dedicated Runtime lease id',
15
+ required: true,
16
+ ignoreStdin: true,
17
+ }),
18
+ };
19
+ static flags = {
20
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
21
+ };
22
+ async run() {
23
+ this.requireAuth();
24
+ const { args, flags } = await this.parse(DedicatedMachinesRestart);
25
+ let response;
26
+ try {
27
+ response = await (0, dedicated_machines_1.performDedicatedLeaseAction)(args.lease, 'restart');
28
+ }
29
+ catch (err) {
30
+ const message = (0, dedicated_machines_1.formatDedicatedRuntimeApiError)(err);
31
+ if (message)
32
+ this.error(message, { exit: 1 });
33
+ this.handleApiError(err);
34
+ }
35
+ if (flags.json) {
36
+ this.log(JSON.stringify(response, null, 2));
37
+ return;
38
+ }
39
+ this.log(`Dedicated Runtime ${(0, dedicated_machines_1.dedicatedLeaseId)(response?.lease)} ${(0, dedicated_machines_1.dedicatedLeaseState)(response?.lease)}.`);
40
+ }
41
+ }
42
+ exports.default = DedicatedMachinesRestart;
@@ -0,0 +1,12 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class DedicatedMachinesShow extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ lease: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static flags: {
9
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
10
+ };
11
+ run(): Promise<void>;
12
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const dedicated_machines_1 = require("../../../lib/dedicated-machines");
6
+ class DedicatedMachinesShow extends base_command_1.BaseCommand {
7
+ static description = 'Show one Dedicated Runtime lease';
8
+ static examples = [
9
+ '<%= config.bin %> machines dedicated show <lease-id>',
10
+ '<%= config.bin %> machines dedicated show <lease-id> --json',
11
+ ];
12
+ static args = {
13
+ lease: core_1.Args.string({
14
+ ignoreStdin: true,
15
+ description: 'Dedicated Runtime lease id',
16
+ required: true,
17
+ }),
18
+ };
19
+ static flags = { json: core_1.Flags.boolean({ description: 'Output as JSON' }) };
20
+ async run() {
21
+ this.requireAuth();
22
+ const { args, flags } = await this.parse(DedicatedMachinesShow);
23
+ let response;
24
+ try {
25
+ response = await (0, dedicated_machines_1.getDedicatedRuntime)(args.lease);
26
+ }
27
+ catch (err) {
28
+ const message = (0, dedicated_machines_1.formatDedicatedRuntimeApiError)(err);
29
+ if (message)
30
+ this.error(message, { exit: 1 });
31
+ this.handleApiError(err);
32
+ }
33
+ const lease = response?.lease;
34
+ if (!lease) {
35
+ this.error('Dedicated Runtime lease not found.', { exit: 1 });
36
+ }
37
+ if (flags.json) {
38
+ this.log(JSON.stringify(response, null, 2));
39
+ return;
40
+ }
41
+ this.log((0, dedicated_machines_1.dedicatedLeaseDisplayName)(lease));
42
+ this.log(` id ${(0, dedicated_machines_1.dedicatedLeaseId)(lease)}`);
43
+ this.log(` status ${(0, dedicated_machines_1.dedicatedLeaseState)(lease)}`);
44
+ if (lease.storage?.retentionClass) {
45
+ this.log(` retention ${lease.storage.retentionClass}`);
46
+ }
47
+ if (lease.storage?.backupProfile) {
48
+ this.log(` backup ${lease.storage.backupProfile}`);
49
+ }
50
+ if (lease.storage?.lastBackupAt) {
51
+ this.log(` last backup ${lease.storage.lastBackupAt}`);
52
+ }
53
+ if (lease.billing?.monthlySpendLimitCents != null) {
54
+ this.log(` monthly cap ${lease.billing.monthlySpendLimitCents} cents`);
55
+ }
56
+ }
57
+ }
58
+ exports.default = DedicatedMachinesShow;
@@ -0,0 +1,12 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class DedicatedMachinesSnapshot extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ lease: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static flags: {
9
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
10
+ };
11
+ run(): Promise<void>;
12
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const dedicated_machines_1 = require("../../../lib/dedicated-machines");
6
+ class DedicatedMachinesSnapshot extends base_command_1.BaseCommand {
7
+ static description = 'Snapshot a Dedicated Runtime lease workspace';
8
+ static examples = [
9
+ '<%= config.bin %> machines dedicated snapshot <lease-id>',
10
+ '<%= config.bin %> machines dedicated snapshot <lease-id> --json',
11
+ ];
12
+ static args = {
13
+ lease: core_1.Args.string({
14
+ description: 'Dedicated Runtime lease id',
15
+ required: true,
16
+ ignoreStdin: true,
17
+ }),
18
+ };
19
+ static flags = {
20
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
21
+ };
22
+ async run() {
23
+ this.requireAuth();
24
+ const { args, flags } = await this.parse(DedicatedMachinesSnapshot);
25
+ let response;
26
+ try {
27
+ response = await (0, dedicated_machines_1.performDedicatedLeaseAction)(args.lease, 'snapshot');
28
+ }
29
+ catch (err) {
30
+ const message = (0, dedicated_machines_1.formatDedicatedRuntimeApiError)(err);
31
+ if (message)
32
+ this.error(message, { exit: 1 });
33
+ this.handleApiError(err);
34
+ }
35
+ if (flags.json) {
36
+ this.log(JSON.stringify(response, null, 2));
37
+ return;
38
+ }
39
+ this.log(`Dedicated Runtime ${(0, dedicated_machines_1.dedicatedLeaseId)(response?.lease)} ${(0, dedicated_machines_1.dedicatedLeaseState)(response?.lease)}.`);
40
+ }
41
+ }
42
+ exports.default = DedicatedMachinesSnapshot;
@@ -0,0 +1,12 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class DedicatedMachinesStart extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ lease: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static flags: {
9
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
10
+ };
11
+ run(): Promise<void>;
12
+ }