@asteroidai/cli 1.9.33 → 1.9.67
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/asteroid.js +1182 -51
- package/dist/core.js +1181 -50
- package/package.json +1 -1
package/dist/asteroid.js
CHANGED
|
@@ -168,7 +168,23 @@ var COMMANDS = [
|
|
|
168
168
|
flag: "base",
|
|
169
169
|
type: "json",
|
|
170
170
|
required: true,
|
|
171
|
-
description: "The base machine: a browser, or a Linux / Windows OS environment. For non-admins, an OS base's `snapshotName` must be one of the organisation's snapshots or a public one; admins may name any snapshot. Omit it for the default image."
|
|
171
|
+
description: "The base machine: a browser, or a Linux / Windows OS environment. For non-admins, an OS base's `snapshotName` must be one of the organisation's snapshots or a public one; admins may name any snapshot. Omit it for the default image.",
|
|
172
|
+
fields: [
|
|
173
|
+
{
|
|
174
|
+
name: "type",
|
|
175
|
+
flag: "type",
|
|
176
|
+
type: "string",
|
|
177
|
+
required: false,
|
|
178
|
+
description: "Type of execution environment",
|
|
179
|
+
enum: ["browser", "os"]
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
name: "config",
|
|
183
|
+
flag: "config",
|
|
184
|
+
type: "json",
|
|
185
|
+
required: false
|
|
186
|
+
}
|
|
187
|
+
]
|
|
172
188
|
},
|
|
173
189
|
{
|
|
174
190
|
name: "profiles",
|
|
@@ -189,21 +205,272 @@ var COMMANDS = [
|
|
|
189
205
|
flag: "warm-pool",
|
|
190
206
|
type: "json",
|
|
191
207
|
required: false,
|
|
192
|
-
description: "Warm pool configuration. Absent means the environment is not kept warm. Exclusive with warmCache and dedicated."
|
|
208
|
+
description: "Warm pool configuration. Absent means the environment is not kept warm. Exclusive with warmCache and dedicated.",
|
|
209
|
+
fields: [
|
|
210
|
+
{
|
|
211
|
+
name: "targetSize",
|
|
212
|
+
flag: "target-size",
|
|
213
|
+
type: "integer",
|
|
214
|
+
required: false,
|
|
215
|
+
description: "Baseline number of warm environments to keep ready per profile row outside any scheduled window. An environment with no rows keeps this many in total. 0 drains the pool while no window is open; with no schedule, 0 drains it fully so keep-warm can be turned off or the environment deleted"
|
|
216
|
+
},
|
|
217
|
+
{
|
|
218
|
+
name: "schedule",
|
|
219
|
+
flag: "schedule",
|
|
220
|
+
type: "json",
|
|
221
|
+
required: false,
|
|
222
|
+
description: "Hour windows that override the baseline target size. Absent means the baseline applies around the clock.",
|
|
223
|
+
fields: [
|
|
224
|
+
{
|
|
225
|
+
name: "timezone",
|
|
226
|
+
flag: "timezone",
|
|
227
|
+
type: "string",
|
|
228
|
+
required: false,
|
|
229
|
+
description: "IANA time zone the windows are evaluated in, such as Europe/London"
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
name: "windows",
|
|
233
|
+
flag: "windows",
|
|
234
|
+
type: "json",
|
|
235
|
+
required: false
|
|
236
|
+
}
|
|
237
|
+
]
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
name: "maxAgeMins",
|
|
241
|
+
flag: "max-age-mins",
|
|
242
|
+
type: "integer",
|
|
243
|
+
required: false,
|
|
244
|
+
description: "Member max age in minutes, not a hard retirement time. The replacement boots ahead of it, by the pool's recent warmup time; the member stays claimable past it until the replacement is ready, for a grace of at most half the max age or 15 minutes."
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
name: "reuse",
|
|
248
|
+
flag: "reuse",
|
|
249
|
+
type: "json",
|
|
250
|
+
required: false,
|
|
251
|
+
description: "How long a pooled environment lives: retired on its first claim, or reused until maxAgeMins and its replacement is ready."
|
|
252
|
+
},
|
|
253
|
+
{
|
|
254
|
+
name: "initialization",
|
|
255
|
+
flag: "initialization",
|
|
256
|
+
type: "json",
|
|
257
|
+
required: false,
|
|
258
|
+
description: "Agent that initialises each member. Absent means a member is available as soon as it has booted.",
|
|
259
|
+
fields: [
|
|
260
|
+
{
|
|
261
|
+
name: "workflowId",
|
|
262
|
+
flag: "workflow-id",
|
|
263
|
+
type: "string",
|
|
264
|
+
required: false,
|
|
265
|
+
description: "The initialising workflow"
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
name: "inputs",
|
|
269
|
+
flag: "inputs",
|
|
270
|
+
type: "json",
|
|
271
|
+
required: false,
|
|
272
|
+
description: "Fixed inputs for the initialising run",
|
|
273
|
+
record: "json"
|
|
274
|
+
},
|
|
275
|
+
{
|
|
276
|
+
name: "successOutcomes",
|
|
277
|
+
flag: "success-outcomes",
|
|
278
|
+
type: "string[]",
|
|
279
|
+
required: false,
|
|
280
|
+
description: "Outcomes of the initialising run that count as a success. A run that completes with any other outcome is treated as a failed run: a warm pool tears the member down, a warm cache records a failed login. Each must be an outcome of the agent's published version. Absent or empty means any completed run counts."
|
|
281
|
+
}
|
|
282
|
+
]
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
name: "keepAlive",
|
|
286
|
+
flag: "keep-alive",
|
|
287
|
+
type: "json",
|
|
288
|
+
required: false,
|
|
289
|
+
description: "Periodic probe that keeps an idle member's session alive and retires a member whose session is dead. Needs an Anchor browser base or a Daytona desktop base. Absent means members are never touched between warmup and retirement.",
|
|
290
|
+
fields: [
|
|
291
|
+
{
|
|
292
|
+
name: "intervalMins",
|
|
293
|
+
flag: "interval-mins",
|
|
294
|
+
type: "integer",
|
|
295
|
+
required: false,
|
|
296
|
+
description: "Minutes between probes of the same member, whether the last one passed or failed. The sweep runs once a minute, so 1 is the shortest effective interval. Must be below the pool's maxAgeMins."
|
|
297
|
+
},
|
|
298
|
+
{
|
|
299
|
+
name: "script",
|
|
300
|
+
flag: "script",
|
|
301
|
+
type: "string",
|
|
302
|
+
required: false,
|
|
303
|
+
description: "On a browser base: a JavaScript expression evaluated in the member's open page. `await` is allowed. It must evaluate, or resolve, to true while the session is live and to false once it is not. Example: `fetch('/api/session', {credentials: 'include'}).then(r => r.ok)`. It runs with no attached execution, so it must not navigate. On a Linux base: a bash script. On a Windows base: a PowerShell script. Exit code 0 means the session is live; any other exit code means it is dead."
|
|
304
|
+
}
|
|
305
|
+
]
|
|
306
|
+
}
|
|
307
|
+
]
|
|
193
308
|
},
|
|
194
309
|
{
|
|
195
310
|
name: "warmCache",
|
|
196
311
|
flag: "warm-cache",
|
|
197
312
|
type: "json",
|
|
198
313
|
required: false,
|
|
199
|
-
description: "Warm cache configuration. Absent means no login agent keeps the profiles' cookies fresh. Exclusive with warmPool and dedicated."
|
|
314
|
+
description: "Warm cache configuration. Absent means no login agent keeps the profiles' cookies fresh. Exclusive with warmPool and dedicated.",
|
|
315
|
+
fields: [
|
|
316
|
+
{
|
|
317
|
+
name: "intervalMins",
|
|
318
|
+
flag: "interval-mins",
|
|
319
|
+
type: "integer",
|
|
320
|
+
required: false,
|
|
321
|
+
description: "Minutes between logins of the same profile"
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
name: "activeHours",
|
|
325
|
+
flag: "active-hours",
|
|
326
|
+
type: "json",
|
|
327
|
+
required: false,
|
|
328
|
+
description: "Hours during which logins run. Absent means around the clock.",
|
|
329
|
+
fields: [
|
|
330
|
+
{
|
|
331
|
+
name: "timezone",
|
|
332
|
+
flag: "timezone",
|
|
333
|
+
type: "string",
|
|
334
|
+
required: false,
|
|
335
|
+
description: "IANA time zone the windows are evaluated in, such as Europe/London"
|
|
336
|
+
},
|
|
337
|
+
{
|
|
338
|
+
name: "windows",
|
|
339
|
+
flag: "windows",
|
|
340
|
+
type: "json",
|
|
341
|
+
required: false
|
|
342
|
+
}
|
|
343
|
+
]
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
name: "initialization",
|
|
347
|
+
flag: "initialization",
|
|
348
|
+
type: "json",
|
|
349
|
+
required: false,
|
|
350
|
+
description: "The login agent, run on each profile's own environment",
|
|
351
|
+
fields: [
|
|
352
|
+
{
|
|
353
|
+
name: "workflowId",
|
|
354
|
+
flag: "workflow-id",
|
|
355
|
+
type: "string",
|
|
356
|
+
required: false,
|
|
357
|
+
description: "The initialising workflow"
|
|
358
|
+
},
|
|
359
|
+
{
|
|
360
|
+
name: "inputs",
|
|
361
|
+
flag: "inputs",
|
|
362
|
+
type: "json",
|
|
363
|
+
required: false,
|
|
364
|
+
description: "Fixed inputs for the initialising run",
|
|
365
|
+
record: "json"
|
|
366
|
+
},
|
|
367
|
+
{
|
|
368
|
+
name: "successOutcomes",
|
|
369
|
+
flag: "success-outcomes",
|
|
370
|
+
type: "string[]",
|
|
371
|
+
required: false,
|
|
372
|
+
description: "Outcomes of the initialising run that count as a success. A run that completes with any other outcome is treated as a failed run: a warm pool tears the member down, a warm cache records a failed login. Each must be an outcome of the agent's published version. Absent or empty means any completed run counts."
|
|
373
|
+
}
|
|
374
|
+
]
|
|
375
|
+
},
|
|
376
|
+
{
|
|
377
|
+
name: "executionsWriteBack",
|
|
378
|
+
flag: "executions-write-back",
|
|
379
|
+
type: "boolean",
|
|
380
|
+
required: false,
|
|
381
|
+
description: "Whether executions on the environment save the browser profile when they stop. Off by default: only the login agent saves it, so a run that ends logged out cannot overwrite the session for later runs. Must be on with an Anchor sticky IP, which saves every session."
|
|
382
|
+
}
|
|
383
|
+
]
|
|
200
384
|
},
|
|
201
385
|
{
|
|
202
386
|
name: "dedicated",
|
|
203
387
|
flag: "dedicated",
|
|
204
388
|
type: "json",
|
|
205
389
|
required: false,
|
|
206
|
-
description: "Admin only, and returned to admins only. Dedicated worker configuration. Absent means no workers are kept. Exclusive with warmPool and warmCache."
|
|
390
|
+
description: "Admin only, and returned to admins only. Dedicated worker configuration. Absent means no workers are kept. Exclusive with warmPool and warmCache.",
|
|
391
|
+
fields: [
|
|
392
|
+
{
|
|
393
|
+
name: "workflowId",
|
|
394
|
+
flag: "workflow-id",
|
|
395
|
+
type: "string",
|
|
396
|
+
required: false,
|
|
397
|
+
description: "The workflow the workers keep loaded"
|
|
398
|
+
},
|
|
399
|
+
{
|
|
400
|
+
name: "targetSize",
|
|
401
|
+
flag: "target-size",
|
|
402
|
+
type: "integer",
|
|
403
|
+
required: false,
|
|
404
|
+
description: "Baseline number of workers to keep ready outside any scheduled window. 0 drains the environment."
|
|
405
|
+
},
|
|
406
|
+
{
|
|
407
|
+
name: "schedule",
|
|
408
|
+
flag: "schedule",
|
|
409
|
+
type: "json",
|
|
410
|
+
required: false,
|
|
411
|
+
description: "Hour windows that override the baseline target size. Absent means the baseline applies around the clock.",
|
|
412
|
+
fields: [
|
|
413
|
+
{
|
|
414
|
+
name: "timezone",
|
|
415
|
+
flag: "timezone",
|
|
416
|
+
type: "string",
|
|
417
|
+
required: false,
|
|
418
|
+
description: "IANA time zone the windows are evaluated in, such as Europe/London"
|
|
419
|
+
},
|
|
420
|
+
{
|
|
421
|
+
name: "windows",
|
|
422
|
+
flag: "windows",
|
|
423
|
+
type: "json",
|
|
424
|
+
required: false
|
|
425
|
+
}
|
|
426
|
+
]
|
|
427
|
+
},
|
|
428
|
+
{
|
|
429
|
+
name: "maxAgeMins",
|
|
430
|
+
flag: "max-age-mins",
|
|
431
|
+
type: "integer",
|
|
432
|
+
required: false,
|
|
433
|
+
description: "Member max age in minutes. As for a warm pool, the replacement boots ahead of it."
|
|
434
|
+
},
|
|
435
|
+
{
|
|
436
|
+
name: "executionsPerWorker",
|
|
437
|
+
flag: "executions-per-worker",
|
|
438
|
+
type: "integer",
|
|
439
|
+
required: false,
|
|
440
|
+
description: "Executions one worker runs at once, each on its own page of the member's browser"
|
|
441
|
+
},
|
|
442
|
+
{
|
|
443
|
+
name: "initialization",
|
|
444
|
+
flag: "initialization",
|
|
445
|
+
type: "json",
|
|
446
|
+
required: false,
|
|
447
|
+
description: "Workflow that initialises each member before its worker loads, such as a sign-in. Absent means the worker loads as soon as the browser has booted.",
|
|
448
|
+
fields: [
|
|
449
|
+
{
|
|
450
|
+
name: "workflowId",
|
|
451
|
+
flag: "workflow-id",
|
|
452
|
+
type: "string",
|
|
453
|
+
required: false,
|
|
454
|
+
description: "The initialising workflow"
|
|
455
|
+
},
|
|
456
|
+
{
|
|
457
|
+
name: "inputs",
|
|
458
|
+
flag: "inputs",
|
|
459
|
+
type: "json",
|
|
460
|
+
required: false,
|
|
461
|
+
description: "Fixed inputs for the initialising run",
|
|
462
|
+
record: "json"
|
|
463
|
+
},
|
|
464
|
+
{
|
|
465
|
+
name: "successOutcomes",
|
|
466
|
+
flag: "success-outcomes",
|
|
467
|
+
type: "string[]",
|
|
468
|
+
required: false,
|
|
469
|
+
description: "Outcomes of the initialising run that count as a success. A run that completes with any other outcome is treated as a failed run: a warm pool tears the member down, a warm cache records a failed login. Each must be an outcome of the agent's published version. Absent or empty means any completed run counts."
|
|
470
|
+
}
|
|
471
|
+
]
|
|
472
|
+
}
|
|
473
|
+
]
|
|
207
474
|
}
|
|
208
475
|
],
|
|
209
476
|
files: [],
|
|
@@ -318,7 +585,23 @@ var COMMANDS = [
|
|
|
318
585
|
flag: "base",
|
|
319
586
|
type: "json",
|
|
320
587
|
required: true,
|
|
321
|
-
description: "The base machine: a browser, or a Linux / Windows OS environment. For non-admins, an OS base's `snapshotName` must be one of the organisation's snapshots or a public one; admins may name any snapshot. Omit it for the default image."
|
|
588
|
+
description: "The base machine: a browser, or a Linux / Windows OS environment. For non-admins, an OS base's `snapshotName` must be one of the organisation's snapshots or a public one; admins may name any snapshot. Omit it for the default image.",
|
|
589
|
+
fields: [
|
|
590
|
+
{
|
|
591
|
+
name: "type",
|
|
592
|
+
flag: "type",
|
|
593
|
+
type: "string",
|
|
594
|
+
required: false,
|
|
595
|
+
description: "Type of execution environment",
|
|
596
|
+
enum: ["browser", "os"]
|
|
597
|
+
},
|
|
598
|
+
{
|
|
599
|
+
name: "config",
|
|
600
|
+
flag: "config",
|
|
601
|
+
type: "json",
|
|
602
|
+
required: false
|
|
603
|
+
}
|
|
604
|
+
]
|
|
322
605
|
},
|
|
323
606
|
{
|
|
324
607
|
name: "profiles",
|
|
@@ -339,21 +622,272 @@ var COMMANDS = [
|
|
|
339
622
|
flag: "warm-pool",
|
|
340
623
|
type: "json",
|
|
341
624
|
required: false,
|
|
342
|
-
description: "Warm pool configuration. Absent means the environment is not kept warm. Exclusive with warmCache and dedicated."
|
|
625
|
+
description: "Warm pool configuration. Absent means the environment is not kept warm. Exclusive with warmCache and dedicated.",
|
|
626
|
+
fields: [
|
|
627
|
+
{
|
|
628
|
+
name: "targetSize",
|
|
629
|
+
flag: "target-size",
|
|
630
|
+
type: "integer",
|
|
631
|
+
required: false,
|
|
632
|
+
description: "Baseline number of warm environments to keep ready per profile row outside any scheduled window. An environment with no rows keeps this many in total. 0 drains the pool while no window is open; with no schedule, 0 drains it fully so keep-warm can be turned off or the environment deleted"
|
|
633
|
+
},
|
|
634
|
+
{
|
|
635
|
+
name: "schedule",
|
|
636
|
+
flag: "schedule",
|
|
637
|
+
type: "json",
|
|
638
|
+
required: false,
|
|
639
|
+
description: "Hour windows that override the baseline target size. Absent means the baseline applies around the clock.",
|
|
640
|
+
fields: [
|
|
641
|
+
{
|
|
642
|
+
name: "timezone",
|
|
643
|
+
flag: "timezone",
|
|
644
|
+
type: "string",
|
|
645
|
+
required: false,
|
|
646
|
+
description: "IANA time zone the windows are evaluated in, such as Europe/London"
|
|
647
|
+
},
|
|
648
|
+
{
|
|
649
|
+
name: "windows",
|
|
650
|
+
flag: "windows",
|
|
651
|
+
type: "json",
|
|
652
|
+
required: false
|
|
653
|
+
}
|
|
654
|
+
]
|
|
655
|
+
},
|
|
656
|
+
{
|
|
657
|
+
name: "maxAgeMins",
|
|
658
|
+
flag: "max-age-mins",
|
|
659
|
+
type: "integer",
|
|
660
|
+
required: false,
|
|
661
|
+
description: "Member max age in minutes, not a hard retirement time. The replacement boots ahead of it, by the pool's recent warmup time; the member stays claimable past it until the replacement is ready, for a grace of at most half the max age or 15 minutes."
|
|
662
|
+
},
|
|
663
|
+
{
|
|
664
|
+
name: "reuse",
|
|
665
|
+
flag: "reuse",
|
|
666
|
+
type: "json",
|
|
667
|
+
required: false,
|
|
668
|
+
description: "How long a pooled environment lives: retired on its first claim, or reused until maxAgeMins and its replacement is ready."
|
|
669
|
+
},
|
|
670
|
+
{
|
|
671
|
+
name: "initialization",
|
|
672
|
+
flag: "initialization",
|
|
673
|
+
type: "json",
|
|
674
|
+
required: false,
|
|
675
|
+
description: "Agent that initialises each member. Absent means a member is available as soon as it has booted.",
|
|
676
|
+
fields: [
|
|
677
|
+
{
|
|
678
|
+
name: "workflowId",
|
|
679
|
+
flag: "workflow-id",
|
|
680
|
+
type: "string",
|
|
681
|
+
required: false,
|
|
682
|
+
description: "The initialising workflow"
|
|
683
|
+
},
|
|
684
|
+
{
|
|
685
|
+
name: "inputs",
|
|
686
|
+
flag: "inputs",
|
|
687
|
+
type: "json",
|
|
688
|
+
required: false,
|
|
689
|
+
description: "Fixed inputs for the initialising run",
|
|
690
|
+
record: "json"
|
|
691
|
+
},
|
|
692
|
+
{
|
|
693
|
+
name: "successOutcomes",
|
|
694
|
+
flag: "success-outcomes",
|
|
695
|
+
type: "string[]",
|
|
696
|
+
required: false,
|
|
697
|
+
description: "Outcomes of the initialising run that count as a success. A run that completes with any other outcome is treated as a failed run: a warm pool tears the member down, a warm cache records a failed login. Each must be an outcome of the agent's published version. Absent or empty means any completed run counts."
|
|
698
|
+
}
|
|
699
|
+
]
|
|
700
|
+
},
|
|
701
|
+
{
|
|
702
|
+
name: "keepAlive",
|
|
703
|
+
flag: "keep-alive",
|
|
704
|
+
type: "json",
|
|
705
|
+
required: false,
|
|
706
|
+
description: "Periodic probe that keeps an idle member's session alive and retires a member whose session is dead. Needs an Anchor browser base or a Daytona desktop base. Absent means members are never touched between warmup and retirement.",
|
|
707
|
+
fields: [
|
|
708
|
+
{
|
|
709
|
+
name: "intervalMins",
|
|
710
|
+
flag: "interval-mins",
|
|
711
|
+
type: "integer",
|
|
712
|
+
required: false,
|
|
713
|
+
description: "Minutes between probes of the same member, whether the last one passed or failed. The sweep runs once a minute, so 1 is the shortest effective interval. Must be below the pool's maxAgeMins."
|
|
714
|
+
},
|
|
715
|
+
{
|
|
716
|
+
name: "script",
|
|
717
|
+
flag: "script",
|
|
718
|
+
type: "string",
|
|
719
|
+
required: false,
|
|
720
|
+
description: "On a browser base: a JavaScript expression evaluated in the member's open page. `await` is allowed. It must evaluate, or resolve, to true while the session is live and to false once it is not. Example: `fetch('/api/session', {credentials: 'include'}).then(r => r.ok)`. It runs with no attached execution, so it must not navigate. On a Linux base: a bash script. On a Windows base: a PowerShell script. Exit code 0 means the session is live; any other exit code means it is dead."
|
|
721
|
+
}
|
|
722
|
+
]
|
|
723
|
+
}
|
|
724
|
+
]
|
|
343
725
|
},
|
|
344
726
|
{
|
|
345
727
|
name: "warmCache",
|
|
346
728
|
flag: "warm-cache",
|
|
347
729
|
type: "json",
|
|
348
730
|
required: false,
|
|
349
|
-
description: "Warm cache configuration. Absent means no login agent keeps the profiles' cookies fresh. Exclusive with warmPool and dedicated."
|
|
731
|
+
description: "Warm cache configuration. Absent means no login agent keeps the profiles' cookies fresh. Exclusive with warmPool and dedicated.",
|
|
732
|
+
fields: [
|
|
733
|
+
{
|
|
734
|
+
name: "intervalMins",
|
|
735
|
+
flag: "interval-mins",
|
|
736
|
+
type: "integer",
|
|
737
|
+
required: false,
|
|
738
|
+
description: "Minutes between logins of the same profile"
|
|
739
|
+
},
|
|
740
|
+
{
|
|
741
|
+
name: "activeHours",
|
|
742
|
+
flag: "active-hours",
|
|
743
|
+
type: "json",
|
|
744
|
+
required: false,
|
|
745
|
+
description: "Hours during which logins run. Absent means around the clock.",
|
|
746
|
+
fields: [
|
|
747
|
+
{
|
|
748
|
+
name: "timezone",
|
|
749
|
+
flag: "timezone",
|
|
750
|
+
type: "string",
|
|
751
|
+
required: false,
|
|
752
|
+
description: "IANA time zone the windows are evaluated in, such as Europe/London"
|
|
753
|
+
},
|
|
754
|
+
{
|
|
755
|
+
name: "windows",
|
|
756
|
+
flag: "windows",
|
|
757
|
+
type: "json",
|
|
758
|
+
required: false
|
|
759
|
+
}
|
|
760
|
+
]
|
|
761
|
+
},
|
|
762
|
+
{
|
|
763
|
+
name: "initialization",
|
|
764
|
+
flag: "initialization",
|
|
765
|
+
type: "json",
|
|
766
|
+
required: false,
|
|
767
|
+
description: "The login agent, run on each profile's own environment",
|
|
768
|
+
fields: [
|
|
769
|
+
{
|
|
770
|
+
name: "workflowId",
|
|
771
|
+
flag: "workflow-id",
|
|
772
|
+
type: "string",
|
|
773
|
+
required: false,
|
|
774
|
+
description: "The initialising workflow"
|
|
775
|
+
},
|
|
776
|
+
{
|
|
777
|
+
name: "inputs",
|
|
778
|
+
flag: "inputs",
|
|
779
|
+
type: "json",
|
|
780
|
+
required: false,
|
|
781
|
+
description: "Fixed inputs for the initialising run",
|
|
782
|
+
record: "json"
|
|
783
|
+
},
|
|
784
|
+
{
|
|
785
|
+
name: "successOutcomes",
|
|
786
|
+
flag: "success-outcomes",
|
|
787
|
+
type: "string[]",
|
|
788
|
+
required: false,
|
|
789
|
+
description: "Outcomes of the initialising run that count as a success. A run that completes with any other outcome is treated as a failed run: a warm pool tears the member down, a warm cache records a failed login. Each must be an outcome of the agent's published version. Absent or empty means any completed run counts."
|
|
790
|
+
}
|
|
791
|
+
]
|
|
792
|
+
},
|
|
793
|
+
{
|
|
794
|
+
name: "executionsWriteBack",
|
|
795
|
+
flag: "executions-write-back",
|
|
796
|
+
type: "boolean",
|
|
797
|
+
required: false,
|
|
798
|
+
description: "Whether executions on the environment save the browser profile when they stop. Off by default: only the login agent saves it, so a run that ends logged out cannot overwrite the session for later runs. Must be on with an Anchor sticky IP, which saves every session."
|
|
799
|
+
}
|
|
800
|
+
]
|
|
350
801
|
},
|
|
351
802
|
{
|
|
352
803
|
name: "dedicated",
|
|
353
804
|
flag: "dedicated",
|
|
354
805
|
type: "json",
|
|
355
806
|
required: false,
|
|
356
|
-
description: "Admin only, and returned to admins only. Dedicated worker configuration. Absent means no workers are kept. Exclusive with warmPool and warmCache."
|
|
807
|
+
description: "Admin only, and returned to admins only. Dedicated worker configuration. Absent means no workers are kept. Exclusive with warmPool and warmCache.",
|
|
808
|
+
fields: [
|
|
809
|
+
{
|
|
810
|
+
name: "workflowId",
|
|
811
|
+
flag: "workflow-id",
|
|
812
|
+
type: "string",
|
|
813
|
+
required: false,
|
|
814
|
+
description: "The workflow the workers keep loaded"
|
|
815
|
+
},
|
|
816
|
+
{
|
|
817
|
+
name: "targetSize",
|
|
818
|
+
flag: "target-size",
|
|
819
|
+
type: "integer",
|
|
820
|
+
required: false,
|
|
821
|
+
description: "Baseline number of workers to keep ready outside any scheduled window. 0 drains the environment."
|
|
822
|
+
},
|
|
823
|
+
{
|
|
824
|
+
name: "schedule",
|
|
825
|
+
flag: "schedule",
|
|
826
|
+
type: "json",
|
|
827
|
+
required: false,
|
|
828
|
+
description: "Hour windows that override the baseline target size. Absent means the baseline applies around the clock.",
|
|
829
|
+
fields: [
|
|
830
|
+
{
|
|
831
|
+
name: "timezone",
|
|
832
|
+
flag: "timezone",
|
|
833
|
+
type: "string",
|
|
834
|
+
required: false,
|
|
835
|
+
description: "IANA time zone the windows are evaluated in, such as Europe/London"
|
|
836
|
+
},
|
|
837
|
+
{
|
|
838
|
+
name: "windows",
|
|
839
|
+
flag: "windows",
|
|
840
|
+
type: "json",
|
|
841
|
+
required: false
|
|
842
|
+
}
|
|
843
|
+
]
|
|
844
|
+
},
|
|
845
|
+
{
|
|
846
|
+
name: "maxAgeMins",
|
|
847
|
+
flag: "max-age-mins",
|
|
848
|
+
type: "integer",
|
|
849
|
+
required: false,
|
|
850
|
+
description: "Member max age in minutes. As for a warm pool, the replacement boots ahead of it."
|
|
851
|
+
},
|
|
852
|
+
{
|
|
853
|
+
name: "executionsPerWorker",
|
|
854
|
+
flag: "executions-per-worker",
|
|
855
|
+
type: "integer",
|
|
856
|
+
required: false,
|
|
857
|
+
description: "Executions one worker runs at once, each on its own page of the member's browser"
|
|
858
|
+
},
|
|
859
|
+
{
|
|
860
|
+
name: "initialization",
|
|
861
|
+
flag: "initialization",
|
|
862
|
+
type: "json",
|
|
863
|
+
required: false,
|
|
864
|
+
description: "Workflow that initialises each member before its worker loads, such as a sign-in. Absent means the worker loads as soon as the browser has booted.",
|
|
865
|
+
fields: [
|
|
866
|
+
{
|
|
867
|
+
name: "workflowId",
|
|
868
|
+
flag: "workflow-id",
|
|
869
|
+
type: "string",
|
|
870
|
+
required: false,
|
|
871
|
+
description: "The initialising workflow"
|
|
872
|
+
},
|
|
873
|
+
{
|
|
874
|
+
name: "inputs",
|
|
875
|
+
flag: "inputs",
|
|
876
|
+
type: "json",
|
|
877
|
+
required: false,
|
|
878
|
+
description: "Fixed inputs for the initialising run",
|
|
879
|
+
record: "json"
|
|
880
|
+
},
|
|
881
|
+
{
|
|
882
|
+
name: "successOutcomes",
|
|
883
|
+
flag: "success-outcomes",
|
|
884
|
+
type: "string[]",
|
|
885
|
+
required: false,
|
|
886
|
+
description: "Outcomes of the initialising run that count as a success. A run that completes with any other outcome is treated as a failed run: a warm pool tears the member down, a warm cache records a failed login. Each must be an outcome of the agent's published version. Absent or empty means any completed run counts."
|
|
887
|
+
}
|
|
888
|
+
]
|
|
889
|
+
}
|
|
890
|
+
]
|
|
357
891
|
}
|
|
358
892
|
],
|
|
359
893
|
files: [],
|
|
@@ -1206,7 +1740,8 @@ var COMMANDS = [
|
|
|
1206
1740
|
flag: "inputs",
|
|
1207
1741
|
type: "json",
|
|
1208
1742
|
required: false,
|
|
1209
|
-
description: "Input variables for the new execution. Replaces the original inputs when set."
|
|
1743
|
+
description: "Input variables for the new execution. Replaces the original inputs when set.",
|
|
1744
|
+
record: "json"
|
|
1210
1745
|
},
|
|
1211
1746
|
{
|
|
1212
1747
|
name: "profileId",
|
|
@@ -2069,21 +2604,69 @@ var COMMANDS = [
|
|
|
2069
2604
|
name: "inputs",
|
|
2070
2605
|
flag: "inputs",
|
|
2071
2606
|
type: "json",
|
|
2072
|
-
required: false
|
|
2607
|
+
required: false,
|
|
2608
|
+
record: "json"
|
|
2073
2609
|
},
|
|
2074
2610
|
{
|
|
2075
2611
|
name: "batchSource",
|
|
2076
2612
|
flag: "batch-source",
|
|
2077
2613
|
type: "json",
|
|
2078
2614
|
required: false,
|
|
2079
|
-
description: "Set to make each tick create a batch from a spreadsheet instead of one execution"
|
|
2615
|
+
description: "Set to make each tick create a batch from a spreadsheet instead of one execution",
|
|
2616
|
+
fields: [
|
|
2617
|
+
{
|
|
2618
|
+
name: "sheetUrl",
|
|
2619
|
+
flag: "sheet-url",
|
|
2620
|
+
type: "string",
|
|
2621
|
+
required: false,
|
|
2622
|
+
description: "Google Sheets URL. The gid selects the tab; without one the first tab is used."
|
|
2623
|
+
},
|
|
2624
|
+
{
|
|
2625
|
+
name: "columnMappings",
|
|
2626
|
+
flag: "column-mappings",
|
|
2627
|
+
type: "json",
|
|
2628
|
+
required: false,
|
|
2629
|
+
description: "Maps a sheet column header to the workflow input it fills. Unmapped columns are ignored.",
|
|
2630
|
+
record: "string"
|
|
2631
|
+
},
|
|
2632
|
+
{
|
|
2633
|
+
name: "requiredInputs",
|
|
2634
|
+
flag: "required-inputs",
|
|
2635
|
+
type: "string[]",
|
|
2636
|
+
required: false,
|
|
2637
|
+
description: "Inputs a row must supply non-empty to count as valid. Rows missing any of them\nare skipped for that tick rather than failing the whole run."
|
|
2638
|
+
},
|
|
2639
|
+
{
|
|
2640
|
+
name: "config",
|
|
2641
|
+
flag: "config",
|
|
2642
|
+
type: "json",
|
|
2643
|
+
required: false,
|
|
2644
|
+
description: "How the resulting batch paces its executions"
|
|
2645
|
+
}
|
|
2646
|
+
]
|
|
2080
2647
|
},
|
|
2081
2648
|
{
|
|
2082
2649
|
name: "executionOptions",
|
|
2083
2650
|
flag: "execution-options",
|
|
2084
2651
|
type: "json",
|
|
2085
2652
|
required: false,
|
|
2086
|
-
description: "Per-execution runtime options applied to every run this schedule triggers."
|
|
2653
|
+
description: "Per-execution runtime options applied to every run this schedule triggers.",
|
|
2654
|
+
fields: [
|
|
2655
|
+
{
|
|
2656
|
+
name: "variantKey",
|
|
2657
|
+
flag: "variant-key",
|
|
2658
|
+
type: "string",
|
|
2659
|
+
required: false,
|
|
2660
|
+
description: "Identifies which variant this execution is for, scoping its shared files and scripts to a per-variant subdirectory under each node's shared folder. It does not change which workflow or version runs. Normalised to a filesystem-safe slug by the server. Requires the workflow to have `variant_mode` enabled, and a variant-mode workflow requires it on every execution."
|
|
2661
|
+
},
|
|
2662
|
+
{
|
|
2663
|
+
name: "softTimeoutMins",
|
|
2664
|
+
flag: "soft-timeout-mins",
|
|
2665
|
+
type: "integer",
|
|
2666
|
+
required: false,
|
|
2667
|
+
description: "Soft timeout in minutes. When the execution has been running longer than this value, a message is injected on every subsequent step urging the agent to wrap up and produce output. Must be greater than 0 and less than the agent's hard timeout (max_timeout_mins)."
|
|
2668
|
+
}
|
|
2669
|
+
]
|
|
2087
2670
|
}
|
|
2088
2671
|
],
|
|
2089
2672
|
files: [],
|
|
@@ -2264,14 +2847,46 @@ var COMMANDS = [
|
|
|
2264
2847
|
name: "inputs",
|
|
2265
2848
|
flag: "inputs",
|
|
2266
2849
|
type: "json",
|
|
2267
|
-
required: false
|
|
2850
|
+
required: false,
|
|
2851
|
+
record: "json"
|
|
2268
2852
|
},
|
|
2269
2853
|
{
|
|
2270
2854
|
name: "batchSource",
|
|
2271
2855
|
flag: "batch-source",
|
|
2272
2856
|
type: "json",
|
|
2273
2857
|
required: false,
|
|
2274
|
-
description: "Replaces the batch source. Omit to leave it unchanged; use clearBatchSource to remove it."
|
|
2858
|
+
description: "Replaces the batch source. Omit to leave it unchanged; use clearBatchSource to remove it.",
|
|
2859
|
+
fields: [
|
|
2860
|
+
{
|
|
2861
|
+
name: "sheetUrl",
|
|
2862
|
+
flag: "sheet-url",
|
|
2863
|
+
type: "string",
|
|
2864
|
+
required: false,
|
|
2865
|
+
description: "Google Sheets URL. The gid selects the tab; without one the first tab is used."
|
|
2866
|
+
},
|
|
2867
|
+
{
|
|
2868
|
+
name: "columnMappings",
|
|
2869
|
+
flag: "column-mappings",
|
|
2870
|
+
type: "json",
|
|
2871
|
+
required: false,
|
|
2872
|
+
description: "Maps a sheet column header to the workflow input it fills. Unmapped columns are ignored.",
|
|
2873
|
+
record: "string"
|
|
2874
|
+
},
|
|
2875
|
+
{
|
|
2876
|
+
name: "requiredInputs",
|
|
2877
|
+
flag: "required-inputs",
|
|
2878
|
+
type: "string[]",
|
|
2879
|
+
required: false,
|
|
2880
|
+
description: "Inputs a row must supply non-empty to count as valid. Rows missing any of them\nare skipped for that tick rather than failing the whole run."
|
|
2881
|
+
},
|
|
2882
|
+
{
|
|
2883
|
+
name: "config",
|
|
2884
|
+
flag: "config",
|
|
2885
|
+
type: "json",
|
|
2886
|
+
required: false,
|
|
2887
|
+
description: "How the resulting batch paces its executions"
|
|
2888
|
+
}
|
|
2889
|
+
]
|
|
2275
2890
|
},
|
|
2276
2891
|
{
|
|
2277
2892
|
name: "clearBatchSource",
|
|
@@ -2292,7 +2907,23 @@ var COMMANDS = [
|
|
|
2292
2907
|
flag: "execution-options",
|
|
2293
2908
|
type: "json",
|
|
2294
2909
|
required: false,
|
|
2295
|
-
description: "Per-execution runtime options applied to every run this schedule triggers. Replaces the stored options in full, so send every field you want to keep."
|
|
2910
|
+
description: "Per-execution runtime options applied to every run this schedule triggers. Replaces the stored options in full, so send every field you want to keep.",
|
|
2911
|
+
fields: [
|
|
2912
|
+
{
|
|
2913
|
+
name: "variantKey",
|
|
2914
|
+
flag: "variant-key",
|
|
2915
|
+
type: "string",
|
|
2916
|
+
required: false,
|
|
2917
|
+
description: "Identifies which variant this execution is for, scoping its shared files and scripts to a per-variant subdirectory under each node's shared folder. It does not change which workflow or version runs. Normalised to a filesystem-safe slug by the server. Requires the workflow to have `variant_mode` enabled, and a variant-mode workflow requires it on every execution."
|
|
2918
|
+
},
|
|
2919
|
+
{
|
|
2920
|
+
name: "softTimeoutMins",
|
|
2921
|
+
flag: "soft-timeout-mins",
|
|
2922
|
+
type: "integer",
|
|
2923
|
+
required: false,
|
|
2924
|
+
description: "Soft timeout in minutes. When the execution has been running longer than this value, a message is injected on every subsequent step urging the agent to wrap up and produce output. Must be greater than 0 and less than the agent's hard timeout (max_timeout_mins)."
|
|
2925
|
+
}
|
|
2926
|
+
]
|
|
2296
2927
|
}
|
|
2297
2928
|
],
|
|
2298
2929
|
files: [],
|
|
@@ -2361,14 +2992,16 @@ var COMMANDS = [
|
|
|
2361
2992
|
name: "inputs",
|
|
2362
2993
|
flag: "inputs",
|
|
2363
2994
|
type: "json",
|
|
2364
|
-
required: false
|
|
2995
|
+
required: false,
|
|
2996
|
+
record: "json"
|
|
2365
2997
|
},
|
|
2366
2998
|
{
|
|
2367
2999
|
name: "metadata",
|
|
2368
3000
|
flag: "metadata",
|
|
2369
3001
|
type: "json",
|
|
2370
3002
|
required: false,
|
|
2371
|
-
description: "String key/value pairs to label and filter executions."
|
|
3003
|
+
description: "String key/value pairs to label and filter executions.",
|
|
3004
|
+
record: "string"
|
|
2372
3005
|
},
|
|
2373
3006
|
{
|
|
2374
3007
|
name: "executeAt",
|
|
@@ -2382,7 +3015,23 @@ var COMMANDS = [
|
|
|
2382
3015
|
flag: "execution-options",
|
|
2383
3016
|
type: "json",
|
|
2384
3017
|
required: false,
|
|
2385
|
-
description: "Per-execution runtime options applied when this execution is triggered."
|
|
3018
|
+
description: "Per-execution runtime options applied when this execution is triggered.",
|
|
3019
|
+
fields: [
|
|
3020
|
+
{
|
|
3021
|
+
name: "variantKey",
|
|
3022
|
+
flag: "variant-key",
|
|
3023
|
+
type: "string",
|
|
3024
|
+
required: false,
|
|
3025
|
+
description: "Identifies which variant this execution is for, scoping its shared files and scripts to a per-variant subdirectory under each node's shared folder. It does not change which workflow or version runs. Normalised to a filesystem-safe slug by the server. Requires the workflow to have `variant_mode` enabled, and a variant-mode workflow requires it on every execution."
|
|
3026
|
+
},
|
|
3027
|
+
{
|
|
3028
|
+
name: "softTimeoutMins",
|
|
3029
|
+
flag: "soft-timeout-mins",
|
|
3030
|
+
type: "integer",
|
|
3031
|
+
required: false,
|
|
3032
|
+
description: "Soft timeout in minutes. When the execution has been running longer than this value, a message is injected on every subsequent step urging the agent to wrap up and produce output. Must be greater than 0 and less than the agent's hard timeout (max_timeout_mins)."
|
|
3033
|
+
}
|
|
3034
|
+
]
|
|
2386
3035
|
}
|
|
2387
3036
|
],
|
|
2388
3037
|
files: [],
|
|
@@ -2513,7 +3162,8 @@ var COMMANDS = [
|
|
|
2513
3162
|
name: "schema",
|
|
2514
3163
|
flag: "schema",
|
|
2515
3164
|
type: "json",
|
|
2516
|
-
required: true
|
|
3165
|
+
required: true,
|
|
3166
|
+
record: "json"
|
|
2517
3167
|
}
|
|
2518
3168
|
],
|
|
2519
3169
|
files: [],
|
|
@@ -2631,7 +3281,51 @@ var COMMANDS = [
|
|
|
2631
3281
|
flag: "field",
|
|
2632
3282
|
type: "json",
|
|
2633
3283
|
required: true,
|
|
2634
|
-
description: "Write shape for a field. The server derives key from label."
|
|
3284
|
+
description: "Write shape for a field. The server derives key from label.",
|
|
3285
|
+
fields: [
|
|
3286
|
+
{
|
|
3287
|
+
name: "type",
|
|
3288
|
+
flag: "type",
|
|
3289
|
+
type: "string",
|
|
3290
|
+
required: false,
|
|
3291
|
+
description: "Type of a vault field. Sensitivity is derived from the type: username, email, url, phone, text, card_expiry, and cardholder_name are readable; password, hidden, totp_seed, api_key, card_number, and card_cvv are write-only. There is no separate hidden flag.",
|
|
3292
|
+
enum: [
|
|
3293
|
+
"username",
|
|
3294
|
+
"email",
|
|
3295
|
+
"url",
|
|
3296
|
+
"phone",
|
|
3297
|
+
"text",
|
|
3298
|
+
"password",
|
|
3299
|
+
"hidden",
|
|
3300
|
+
"totp_seed",
|
|
3301
|
+
"api_key",
|
|
3302
|
+
"card_number",
|
|
3303
|
+
"card_expiry",
|
|
3304
|
+
"card_cvv",
|
|
3305
|
+
"cardholder_name"
|
|
3306
|
+
]
|
|
3307
|
+
},
|
|
3308
|
+
{
|
|
3309
|
+
name: "label",
|
|
3310
|
+
flag: "label",
|
|
3311
|
+
type: "string",
|
|
3312
|
+
required: false,
|
|
3313
|
+
description: "Human label shown in forms. The field key is UPPER_SNAKE of this label."
|
|
3314
|
+
},
|
|
3315
|
+
{
|
|
3316
|
+
name: "required",
|
|
3317
|
+
flag: "required",
|
|
3318
|
+
type: "boolean",
|
|
3319
|
+
required: false
|
|
3320
|
+
},
|
|
3321
|
+
{
|
|
3322
|
+
name: "hint",
|
|
3323
|
+
flag: "hint",
|
|
3324
|
+
type: "string",
|
|
3325
|
+
required: false,
|
|
3326
|
+
description: "Optional guidance shown next to the field, copied from catalog credentials when generating masters."
|
|
3327
|
+
}
|
|
3328
|
+
]
|
|
2635
3329
|
},
|
|
2636
3330
|
{
|
|
2637
3331
|
name: "value",
|
|
@@ -2898,6 +3592,26 @@ var COMMANDS = [
|
|
|
2898
3592
|
credentialOrganization: true
|
|
2899
3593
|
}
|
|
2900
3594
|
},
|
|
3595
|
+
{
|
|
3596
|
+
command: "secret-request delete",
|
|
3597
|
+
tool: "secret_request_delete",
|
|
3598
|
+
title: "Delete request",
|
|
3599
|
+
description: "Delete a secret request in any state. A pending request stops working at once. The secret a completed request created is kept.",
|
|
3600
|
+
method: "DELETE",
|
|
3601
|
+
path: "/agents/v2/secret-requests/{requestId}",
|
|
3602
|
+
args: [
|
|
3603
|
+
{
|
|
3604
|
+
name: "requestId",
|
|
3605
|
+
flag: "request-id",
|
|
3606
|
+
type: "string",
|
|
3607
|
+
required: true
|
|
3608
|
+
}
|
|
3609
|
+
],
|
|
3610
|
+
query: [],
|
|
3611
|
+
binary: false,
|
|
3612
|
+
readOnly: false,
|
|
3613
|
+
destructive: true
|
|
3614
|
+
},
|
|
2901
3615
|
{
|
|
2902
3616
|
command: "secret-request list",
|
|
2903
3617
|
tool: "secret_requests_list",
|
|
@@ -3479,7 +4193,115 @@ var COMMANDS = [
|
|
|
3479
4193
|
flag: "version",
|
|
3480
4194
|
type: "json",
|
|
3481
4195
|
required: false,
|
|
3482
|
-
description: "The first version of the workflow. Omit it to start from a blank workflow with a single start node."
|
|
4196
|
+
description: "The first version of the workflow. Omit it to start from a blank workflow with a single start node.",
|
|
4197
|
+
fields: [
|
|
4198
|
+
{
|
|
4199
|
+
name: "parentId",
|
|
4200
|
+
flag: "parent-id",
|
|
4201
|
+
type: "string",
|
|
4202
|
+
required: false,
|
|
4203
|
+
description: "Optional parent workflow ID to derive from"
|
|
4204
|
+
},
|
|
4205
|
+
{
|
|
4206
|
+
name: "rules",
|
|
4207
|
+
flag: "rules",
|
|
4208
|
+
type: "string",
|
|
4209
|
+
required: false
|
|
4210
|
+
},
|
|
4211
|
+
{
|
|
4212
|
+
name: "graph",
|
|
4213
|
+
flag: "graph",
|
|
4214
|
+
type: "json",
|
|
4215
|
+
required: false,
|
|
4216
|
+
fields: [
|
|
4217
|
+
{
|
|
4218
|
+
name: "nodes",
|
|
4219
|
+
flag: "nodes",
|
|
4220
|
+
type: "json",
|
|
4221
|
+
required: false
|
|
4222
|
+
},
|
|
4223
|
+
{
|
|
4224
|
+
name: "transitions",
|
|
4225
|
+
flag: "transitions",
|
|
4226
|
+
type: "json",
|
|
4227
|
+
required: false
|
|
4228
|
+
},
|
|
4229
|
+
{
|
|
4230
|
+
name: "sticky_notes",
|
|
4231
|
+
flag: "sticky_notes",
|
|
4232
|
+
type: "json",
|
|
4233
|
+
required: false
|
|
4234
|
+
}
|
|
4235
|
+
]
|
|
4236
|
+
},
|
|
4237
|
+
{
|
|
4238
|
+
name: "inputs",
|
|
4239
|
+
flag: "inputs",
|
|
4240
|
+
type: "json",
|
|
4241
|
+
required: false,
|
|
4242
|
+
description: "Typed input definitions for this workflow. Names referenced in prompts but omitted here default to optional strings."
|
|
4243
|
+
},
|
|
4244
|
+
{
|
|
4245
|
+
name: "settings",
|
|
4246
|
+
flag: "settings",
|
|
4247
|
+
type: "json",
|
|
4248
|
+
required: false,
|
|
4249
|
+
description: "Configuration settings for workflow execution",
|
|
4250
|
+
fields: [
|
|
4251
|
+
{
|
|
4252
|
+
name: "viewport_width",
|
|
4253
|
+
flag: "viewport_width",
|
|
4254
|
+
type: "integer",
|
|
4255
|
+
required: false,
|
|
4256
|
+
description: "Browser viewport width in pixels"
|
|
4257
|
+
},
|
|
4258
|
+
{
|
|
4259
|
+
name: "viewport_height",
|
|
4260
|
+
flag: "viewport_height",
|
|
4261
|
+
type: "integer",
|
|
4262
|
+
required: false,
|
|
4263
|
+
description: "Browser viewport height in pixels"
|
|
4264
|
+
},
|
|
4265
|
+
{
|
|
4266
|
+
name: "max_timeout_mins",
|
|
4267
|
+
flag: "max_timeout_mins",
|
|
4268
|
+
type: "integer",
|
|
4269
|
+
required: false,
|
|
4270
|
+
description: "Maximum timeout in minutes"
|
|
4271
|
+
},
|
|
4272
|
+
{
|
|
4273
|
+
name: "custom_environment_id",
|
|
4274
|
+
flag: "custom_environment_id",
|
|
4275
|
+
type: "string",
|
|
4276
|
+
required: false,
|
|
4277
|
+
description: "Custom environment executions of this workflow boot on: its environment type and snapshot replace the workflow's own environment, its profile rows restrict which profile an execution may use, and a kept-warm environment hands out a pre-warmed copy. On a new version, omit it to keep the environment of the workflow's latest version (its editable head, which can be newer than the published one), or send null to boot the workflow's own environment. On a new workflow, there is nothing to keep: omit it or send null for no custom environment."
|
|
4278
|
+
}
|
|
4279
|
+
]
|
|
4280
|
+
},
|
|
4281
|
+
{
|
|
4282
|
+
name: "environmentTemplate",
|
|
4283
|
+
flag: "environment-template",
|
|
4284
|
+
type: "json",
|
|
4285
|
+
required: false,
|
|
4286
|
+
description: "Optional environment template. On a new version, omit it to keep the template of the workflow's latest version (its editable head); on a new workflow, omitting it means a browser. Omits admin-only OS fields.",
|
|
4287
|
+
fields: [
|
|
4288
|
+
{
|
|
4289
|
+
name: "type",
|
|
4290
|
+
flag: "type",
|
|
4291
|
+
type: "string",
|
|
4292
|
+
required: false,
|
|
4293
|
+
description: "Type of execution environment",
|
|
4294
|
+
enum: ["browser", "os"]
|
|
4295
|
+
},
|
|
4296
|
+
{
|
|
4297
|
+
name: "config",
|
|
4298
|
+
flag: "config",
|
|
4299
|
+
type: "json",
|
|
4300
|
+
required: false
|
|
4301
|
+
}
|
|
4302
|
+
]
|
|
4303
|
+
}
|
|
4304
|
+
]
|
|
3483
4305
|
}
|
|
3484
4306
|
],
|
|
3485
4307
|
files: [],
|
|
@@ -3583,7 +4405,8 @@ var COMMANDS = [
|
|
|
3583
4405
|
flag: "inputs",
|
|
3584
4406
|
type: "json",
|
|
3585
4407
|
required: false,
|
|
3586
|
-
description: "Inputs to be merged into the placeholders defined in prompts"
|
|
4408
|
+
description: "Inputs to be merged into the placeholders defined in prompts",
|
|
4409
|
+
record: "json"
|
|
3587
4410
|
},
|
|
3588
4411
|
{
|
|
3589
4412
|
name: "tempFiles",
|
|
@@ -3597,7 +4420,8 @@ var COMMANDS = [
|
|
|
3597
4420
|
flag: "metadata",
|
|
3598
4421
|
type: "json",
|
|
3599
4422
|
required: false,
|
|
3600
|
-
description: "Optional metadata key-value pairs (string keys and string values) for organizing and filtering executions"
|
|
4423
|
+
description: "Optional metadata key-value pairs (string keys and string values) for organizing and filtering executions",
|
|
4424
|
+
record: "string"
|
|
3601
4425
|
},
|
|
3602
4426
|
{
|
|
3603
4427
|
name: "version",
|
|
@@ -3618,7 +4442,23 @@ var COMMANDS = [
|
|
|
3618
4442
|
flag: "execution-options",
|
|
3619
4443
|
type: "json",
|
|
3620
4444
|
required: false,
|
|
3621
|
-
description: "Per-execution runtime options that override or extend the workflow's default settings."
|
|
4445
|
+
description: "Per-execution runtime options that override or extend the workflow's default settings.",
|
|
4446
|
+
fields: [
|
|
4447
|
+
{
|
|
4448
|
+
name: "variantKey",
|
|
4449
|
+
flag: "variant-key",
|
|
4450
|
+
type: "string",
|
|
4451
|
+
required: false,
|
|
4452
|
+
description: "Identifies which variant this execution is for, scoping its shared files and scripts to a per-variant subdirectory under each node's shared folder. It does not change which workflow or version runs. Normalised to a filesystem-safe slug by the server. Requires the workflow to have `variant_mode` enabled, and a variant-mode workflow requires it on every execution."
|
|
4453
|
+
},
|
|
4454
|
+
{
|
|
4455
|
+
name: "softTimeoutMins",
|
|
4456
|
+
flag: "soft-timeout-mins",
|
|
4457
|
+
type: "integer",
|
|
4458
|
+
required: false,
|
|
4459
|
+
description: "Soft timeout in minutes. When the execution has been running longer than this value, a message is injected on every subsequent step urging the agent to wrap up and produce output. Must be greater than 0 and less than the agent's hard timeout (max_timeout_mins)."
|
|
4460
|
+
}
|
|
4461
|
+
]
|
|
3622
4462
|
},
|
|
3623
4463
|
{
|
|
3624
4464
|
name: "onCapacityLimit",
|
|
@@ -3676,7 +4516,8 @@ var COMMANDS = [
|
|
|
3676
4516
|
flag: "inputs",
|
|
3677
4517
|
type: "json",
|
|
3678
4518
|
required: false,
|
|
3679
|
-
description: "Inputs to be merged into the placeholders defined in prompts"
|
|
4519
|
+
description: "Inputs to be merged into the placeholders defined in prompts",
|
|
4520
|
+
record: "json"
|
|
3680
4521
|
},
|
|
3681
4522
|
{
|
|
3682
4523
|
name: "tempFiles",
|
|
@@ -3690,7 +4531,8 @@ var COMMANDS = [
|
|
|
3690
4531
|
flag: "metadata",
|
|
3691
4532
|
type: "json",
|
|
3692
4533
|
required: false,
|
|
3693
|
-
description: "Optional metadata key-value pairs (string keys and string values) for organizing and filtering executions"
|
|
4534
|
+
description: "Optional metadata key-value pairs (string keys and string values) for organizing and filtering executions",
|
|
4535
|
+
record: "string"
|
|
3694
4536
|
},
|
|
3695
4537
|
{
|
|
3696
4538
|
name: "version",
|
|
@@ -3711,7 +4553,23 @@ var COMMANDS = [
|
|
|
3711
4553
|
flag: "execution-options",
|
|
3712
4554
|
type: "json",
|
|
3713
4555
|
required: false,
|
|
3714
|
-
description: "Per-execution runtime options that override or extend the workflow's default settings."
|
|
4556
|
+
description: "Per-execution runtime options that override or extend the workflow's default settings.",
|
|
4557
|
+
fields: [
|
|
4558
|
+
{
|
|
4559
|
+
name: "variantKey",
|
|
4560
|
+
flag: "variant-key",
|
|
4561
|
+
type: "string",
|
|
4562
|
+
required: false,
|
|
4563
|
+
description: "Identifies which variant this execution is for, scoping its shared files and scripts to a per-variant subdirectory under each node's shared folder. It does not change which workflow or version runs. Normalised to a filesystem-safe slug by the server. Requires the workflow to have `variant_mode` enabled, and a variant-mode workflow requires it on every execution."
|
|
4564
|
+
},
|
|
4565
|
+
{
|
|
4566
|
+
name: "softTimeoutMins",
|
|
4567
|
+
flag: "soft-timeout-mins",
|
|
4568
|
+
type: "integer",
|
|
4569
|
+
required: false,
|
|
4570
|
+
description: "Soft timeout in minutes. When the execution has been running longer than this value, a message is injected on every subsequent step urging the agent to wrap up and produce output. Must be greater than 0 and less than the agent's hard timeout (max_timeout_mins)."
|
|
4571
|
+
}
|
|
4572
|
+
]
|
|
3715
4573
|
},
|
|
3716
4574
|
{
|
|
3717
4575
|
name: "onCapacityLimit",
|
|
@@ -4213,7 +5071,27 @@ var COMMANDS = [
|
|
|
4213
5071
|
name: "graph",
|
|
4214
5072
|
flag: "graph",
|
|
4215
5073
|
type: "json",
|
|
4216
|
-
required: true
|
|
5074
|
+
required: true,
|
|
5075
|
+
fields: [
|
|
5076
|
+
{
|
|
5077
|
+
name: "nodes",
|
|
5078
|
+
flag: "nodes",
|
|
5079
|
+
type: "json",
|
|
5080
|
+
required: false
|
|
5081
|
+
},
|
|
5082
|
+
{
|
|
5083
|
+
name: "transitions",
|
|
5084
|
+
flag: "transitions",
|
|
5085
|
+
type: "json",
|
|
5086
|
+
required: false
|
|
5087
|
+
},
|
|
5088
|
+
{
|
|
5089
|
+
name: "sticky_notes",
|
|
5090
|
+
flag: "sticky_notes",
|
|
5091
|
+
type: "json",
|
|
5092
|
+
required: false
|
|
5093
|
+
}
|
|
5094
|
+
]
|
|
4217
5095
|
},
|
|
4218
5096
|
{
|
|
4219
5097
|
name: "inputs",
|
|
@@ -4227,14 +5105,60 @@ var COMMANDS = [
|
|
|
4227
5105
|
flag: "settings",
|
|
4228
5106
|
type: "json",
|
|
4229
5107
|
required: true,
|
|
4230
|
-
description: "Configuration settings for workflow execution"
|
|
5108
|
+
description: "Configuration settings for workflow execution",
|
|
5109
|
+
fields: [
|
|
5110
|
+
{
|
|
5111
|
+
name: "viewport_width",
|
|
5112
|
+
flag: "viewport_width",
|
|
5113
|
+
type: "integer",
|
|
5114
|
+
required: false,
|
|
5115
|
+
description: "Browser viewport width in pixels"
|
|
5116
|
+
},
|
|
5117
|
+
{
|
|
5118
|
+
name: "viewport_height",
|
|
5119
|
+
flag: "viewport_height",
|
|
5120
|
+
type: "integer",
|
|
5121
|
+
required: false,
|
|
5122
|
+
description: "Browser viewport height in pixels"
|
|
5123
|
+
},
|
|
5124
|
+
{
|
|
5125
|
+
name: "max_timeout_mins",
|
|
5126
|
+
flag: "max_timeout_mins",
|
|
5127
|
+
type: "integer",
|
|
5128
|
+
required: false,
|
|
5129
|
+
description: "Maximum timeout in minutes"
|
|
5130
|
+
},
|
|
5131
|
+
{
|
|
5132
|
+
name: "custom_environment_id",
|
|
5133
|
+
flag: "custom_environment_id",
|
|
5134
|
+
type: "string",
|
|
5135
|
+
required: false,
|
|
5136
|
+
description: "Custom environment executions of this workflow boot on: its environment type and snapshot replace the workflow's own environment, its profile rows restrict which profile an execution may use, and a kept-warm environment hands out a pre-warmed copy. On a new version, omit it to keep the environment of the workflow's latest version (its editable head, which can be newer than the published one), or send null to boot the workflow's own environment. On a new workflow, there is nothing to keep: omit it or send null for no custom environment."
|
|
5137
|
+
}
|
|
5138
|
+
]
|
|
4231
5139
|
},
|
|
4232
5140
|
{
|
|
4233
5141
|
name: "environmentTemplate",
|
|
4234
5142
|
flag: "environment-template",
|
|
4235
5143
|
type: "json",
|
|
4236
5144
|
required: false,
|
|
4237
|
-
description: "Optional environment template. On a new version, omit it to keep the template of the workflow's latest version (its editable head); on a new workflow, omitting it means a browser. Omits admin-only OS fields."
|
|
5145
|
+
description: "Optional environment template. On a new version, omit it to keep the template of the workflow's latest version (its editable head); on a new workflow, omitting it means a browser. Omits admin-only OS fields.",
|
|
5146
|
+
fields: [
|
|
5147
|
+
{
|
|
5148
|
+
name: "type",
|
|
5149
|
+
flag: "type",
|
|
5150
|
+
type: "string",
|
|
5151
|
+
required: false,
|
|
5152
|
+
description: "Type of execution environment",
|
|
5153
|
+
enum: ["browser", "os"]
|
|
5154
|
+
},
|
|
5155
|
+
{
|
|
5156
|
+
name: "config",
|
|
5157
|
+
flag: "config",
|
|
5158
|
+
type: "json",
|
|
5159
|
+
required: false
|
|
5160
|
+
}
|
|
5161
|
+
]
|
|
4238
5162
|
}
|
|
4239
5163
|
],
|
|
4240
5164
|
files: [],
|
|
@@ -4281,7 +5205,27 @@ var COMMANDS = [
|
|
|
4281
5205
|
name: "graph",
|
|
4282
5206
|
flag: "graph",
|
|
4283
5207
|
type: "json",
|
|
4284
|
-
required: true
|
|
5208
|
+
required: true,
|
|
5209
|
+
fields: [
|
|
5210
|
+
{
|
|
5211
|
+
name: "nodes",
|
|
5212
|
+
flag: "nodes",
|
|
5213
|
+
type: "json",
|
|
5214
|
+
required: false
|
|
5215
|
+
},
|
|
5216
|
+
{
|
|
5217
|
+
name: "transitions",
|
|
5218
|
+
flag: "transitions",
|
|
5219
|
+
type: "json",
|
|
5220
|
+
required: false
|
|
5221
|
+
},
|
|
5222
|
+
{
|
|
5223
|
+
name: "sticky_notes",
|
|
5224
|
+
flag: "sticky_notes",
|
|
5225
|
+
type: "json",
|
|
5226
|
+
required: false
|
|
5227
|
+
}
|
|
5228
|
+
]
|
|
4285
5229
|
},
|
|
4286
5230
|
{
|
|
4287
5231
|
name: "inputs",
|
|
@@ -4295,14 +5239,60 @@ var COMMANDS = [
|
|
|
4295
5239
|
flag: "settings",
|
|
4296
5240
|
type: "json",
|
|
4297
5241
|
required: true,
|
|
4298
|
-
description: "Configuration settings for workflow execution"
|
|
5242
|
+
description: "Configuration settings for workflow execution",
|
|
5243
|
+
fields: [
|
|
5244
|
+
{
|
|
5245
|
+
name: "viewport_width",
|
|
5246
|
+
flag: "viewport_width",
|
|
5247
|
+
type: "integer",
|
|
5248
|
+
required: false,
|
|
5249
|
+
description: "Browser viewport width in pixels"
|
|
5250
|
+
},
|
|
5251
|
+
{
|
|
5252
|
+
name: "viewport_height",
|
|
5253
|
+
flag: "viewport_height",
|
|
5254
|
+
type: "integer",
|
|
5255
|
+
required: false,
|
|
5256
|
+
description: "Browser viewport height in pixels"
|
|
5257
|
+
},
|
|
5258
|
+
{
|
|
5259
|
+
name: "max_timeout_mins",
|
|
5260
|
+
flag: "max_timeout_mins",
|
|
5261
|
+
type: "integer",
|
|
5262
|
+
required: false,
|
|
5263
|
+
description: "Maximum timeout in minutes"
|
|
5264
|
+
},
|
|
5265
|
+
{
|
|
5266
|
+
name: "custom_environment_id",
|
|
5267
|
+
flag: "custom_environment_id",
|
|
5268
|
+
type: "string",
|
|
5269
|
+
required: false,
|
|
5270
|
+
description: "Custom environment executions of this workflow boot on: its environment type and snapshot replace the workflow's own environment, its profile rows restrict which profile an execution may use, and a kept-warm environment hands out a pre-warmed copy. On a new version, omit it to keep the environment of the workflow's latest version (its editable head, which can be newer than the published one), or send null to boot the workflow's own environment. On a new workflow, there is nothing to keep: omit it or send null for no custom environment."
|
|
5271
|
+
}
|
|
5272
|
+
]
|
|
4299
5273
|
},
|
|
4300
5274
|
{
|
|
4301
5275
|
name: "environmentTemplate",
|
|
4302
5276
|
flag: "environment-template",
|
|
4303
5277
|
type: "json",
|
|
4304
5278
|
required: false,
|
|
4305
|
-
description: "Optional environment template. On a new version, omit it to keep the template of the workflow's latest version (its editable head); on a new workflow, omitting it means a browser. Omits admin-only OS fields."
|
|
5279
|
+
description: "Optional environment template. On a new version, omit it to keep the template of the workflow's latest version (its editable head); on a new workflow, omitting it means a browser. Omits admin-only OS fields.",
|
|
5280
|
+
fields: [
|
|
5281
|
+
{
|
|
5282
|
+
name: "type",
|
|
5283
|
+
flag: "type",
|
|
5284
|
+
type: "string",
|
|
5285
|
+
required: false,
|
|
5286
|
+
description: "Type of execution environment",
|
|
5287
|
+
enum: ["browser", "os"]
|
|
5288
|
+
},
|
|
5289
|
+
{
|
|
5290
|
+
name: "config",
|
|
5291
|
+
flag: "config",
|
|
5292
|
+
type: "json",
|
|
5293
|
+
required: false
|
|
5294
|
+
}
|
|
5295
|
+
]
|
|
4306
5296
|
}
|
|
4307
5297
|
],
|
|
4308
5298
|
files: [],
|
|
@@ -4369,14 +5359,16 @@ var COMMANDS = [
|
|
|
4369
5359
|
flag: "inputs",
|
|
4370
5360
|
type: "json",
|
|
4371
5361
|
required: false,
|
|
4372
|
-
description: "Inputs to be merged into the placeholders defined in prompts. Do not set together with inputVariables."
|
|
5362
|
+
description: "Inputs to be merged into the placeholders defined in prompts. Do not set together with inputVariables.",
|
|
5363
|
+
record: "json"
|
|
4373
5364
|
},
|
|
4374
5365
|
{
|
|
4375
5366
|
name: "metadata",
|
|
4376
5367
|
flag: "metadata",
|
|
4377
5368
|
type: "json",
|
|
4378
5369
|
required: false,
|
|
4379
|
-
description: "Optional metadata key-value pairs for organizing and filtering executions"
|
|
5370
|
+
description: "Optional metadata key-value pairs for organizing and filtering executions",
|
|
5371
|
+
record: "string"
|
|
4380
5372
|
},
|
|
4381
5373
|
{
|
|
4382
5374
|
name: "profileId",
|
|
@@ -4404,7 +5396,23 @@ var COMMANDS = [
|
|
|
4404
5396
|
flag: "execution-options",
|
|
4405
5397
|
type: "json",
|
|
4406
5398
|
required: false,
|
|
4407
|
-
description: "Per-execution runtime options that override or extend the workflow's default settings."
|
|
5399
|
+
description: "Per-execution runtime options that override or extend the workflow's default settings.",
|
|
5400
|
+
fields: [
|
|
5401
|
+
{
|
|
5402
|
+
name: "variantKey",
|
|
5403
|
+
flag: "variant-key",
|
|
5404
|
+
type: "string",
|
|
5405
|
+
required: false,
|
|
5406
|
+
description: "Identifies which variant this execution is for, scoping its shared files and scripts to a per-variant subdirectory under each node's shared folder. It does not change which workflow or version runs. Normalised to a filesystem-safe slug by the server. Requires the workflow to have `variant_mode` enabled, and a variant-mode workflow requires it on every execution."
|
|
5407
|
+
},
|
|
5408
|
+
{
|
|
5409
|
+
name: "softTimeoutMins",
|
|
5410
|
+
flag: "soft-timeout-mins",
|
|
5411
|
+
type: "integer",
|
|
5412
|
+
required: false,
|
|
5413
|
+
description: "Soft timeout in minutes. When the execution has been running longer than this value, a message is injected on every subsequent step urging the agent to wrap up and produce output. Must be greater than 0 and less than the agent's hard timeout (max_timeout_mins)."
|
|
5414
|
+
}
|
|
5415
|
+
]
|
|
4408
5416
|
},
|
|
4409
5417
|
{
|
|
4410
5418
|
name: "parentExecutionId",
|
|
@@ -4680,7 +5688,27 @@ var COMMANDS = [
|
|
|
4680
5688
|
name: "graph",
|
|
4681
5689
|
flag: "graph",
|
|
4682
5690
|
type: "json",
|
|
4683
|
-
required: true
|
|
5691
|
+
required: true,
|
|
5692
|
+
fields: [
|
|
5693
|
+
{
|
|
5694
|
+
name: "nodes",
|
|
5695
|
+
flag: "nodes",
|
|
5696
|
+
type: "json",
|
|
5697
|
+
required: false
|
|
5698
|
+
},
|
|
5699
|
+
{
|
|
5700
|
+
name: "transitions",
|
|
5701
|
+
flag: "transitions",
|
|
5702
|
+
type: "json",
|
|
5703
|
+
required: false
|
|
5704
|
+
},
|
|
5705
|
+
{
|
|
5706
|
+
name: "sticky_notes",
|
|
5707
|
+
flag: "sticky_notes",
|
|
5708
|
+
type: "json",
|
|
5709
|
+
required: false
|
|
5710
|
+
}
|
|
5711
|
+
]
|
|
4684
5712
|
},
|
|
4685
5713
|
{
|
|
4686
5714
|
name: "inputs",
|
|
@@ -4694,14 +5722,60 @@ var COMMANDS = [
|
|
|
4694
5722
|
flag: "settings",
|
|
4695
5723
|
type: "json",
|
|
4696
5724
|
required: true,
|
|
4697
|
-
description: "Configuration settings for workflow execution"
|
|
5725
|
+
description: "Configuration settings for workflow execution",
|
|
5726
|
+
fields: [
|
|
5727
|
+
{
|
|
5728
|
+
name: "viewport_width",
|
|
5729
|
+
flag: "viewport_width",
|
|
5730
|
+
type: "integer",
|
|
5731
|
+
required: false,
|
|
5732
|
+
description: "Browser viewport width in pixels"
|
|
5733
|
+
},
|
|
5734
|
+
{
|
|
5735
|
+
name: "viewport_height",
|
|
5736
|
+
flag: "viewport_height",
|
|
5737
|
+
type: "integer",
|
|
5738
|
+
required: false,
|
|
5739
|
+
description: "Browser viewport height in pixels"
|
|
5740
|
+
},
|
|
5741
|
+
{
|
|
5742
|
+
name: "max_timeout_mins",
|
|
5743
|
+
flag: "max_timeout_mins",
|
|
5744
|
+
type: "integer",
|
|
5745
|
+
required: false,
|
|
5746
|
+
description: "Maximum timeout in minutes"
|
|
5747
|
+
},
|
|
5748
|
+
{
|
|
5749
|
+
name: "custom_environment_id",
|
|
5750
|
+
flag: "custom_environment_id",
|
|
5751
|
+
type: "string",
|
|
5752
|
+
required: false,
|
|
5753
|
+
description: "Custom environment executions of this workflow boot on: its environment type and snapshot replace the workflow's own environment, its profile rows restrict which profile an execution may use, and a kept-warm environment hands out a pre-warmed copy. On a new version, omit it to keep the environment of the workflow's latest version (its editable head, which can be newer than the published one), or send null to boot the workflow's own environment. On a new workflow, there is nothing to keep: omit it or send null for no custom environment."
|
|
5754
|
+
}
|
|
5755
|
+
]
|
|
4698
5756
|
},
|
|
4699
5757
|
{
|
|
4700
5758
|
name: "environmentTemplate",
|
|
4701
5759
|
flag: "environment-template",
|
|
4702
5760
|
type: "json",
|
|
4703
5761
|
required: false,
|
|
4704
|
-
description: "Optional environment template. On a new version, omit it to keep the template of the workflow's latest version (its editable head); on a new workflow, omitting it means a browser. Omits admin-only OS fields."
|
|
5762
|
+
description: "Optional environment template. On a new version, omit it to keep the template of the workflow's latest version (its editable head); on a new workflow, omitting it means a browser. Omits admin-only OS fields.",
|
|
5763
|
+
fields: [
|
|
5764
|
+
{
|
|
5765
|
+
name: "type",
|
|
5766
|
+
flag: "type",
|
|
5767
|
+
type: "string",
|
|
5768
|
+
required: false,
|
|
5769
|
+
description: "Type of execution environment",
|
|
5770
|
+
enum: ["browser", "os"]
|
|
5771
|
+
},
|
|
5772
|
+
{
|
|
5773
|
+
name: "config",
|
|
5774
|
+
flag: "config",
|
|
5775
|
+
type: "json",
|
|
5776
|
+
required: false
|
|
5777
|
+
}
|
|
5778
|
+
]
|
|
4705
5779
|
}
|
|
4706
5780
|
],
|
|
4707
5781
|
files: [],
|
|
@@ -5065,6 +6139,23 @@ var GLOBAL_FLAGS = [
|
|
|
5065
6139
|
["--output <file>", "Write a downloaded file here, not to stdout."],
|
|
5066
6140
|
["-h, --help", "Show help."]
|
|
5067
6141
|
];
|
|
6142
|
+
function childFlags(option2, prefix = option2.flag) {
|
|
6143
|
+
if (option2.record) {
|
|
6144
|
+
return [
|
|
6145
|
+
{
|
|
6146
|
+
name: option2.name,
|
|
6147
|
+
flag: `${prefix}.<key>`,
|
|
6148
|
+
type: option2.record,
|
|
6149
|
+
required: false,
|
|
6150
|
+
description: "One entry. The key is sent as written."
|
|
6151
|
+
}
|
|
6152
|
+
];
|
|
6153
|
+
}
|
|
6154
|
+
return (option2.fields ?? []).flatMap((child) => {
|
|
6155
|
+
const flag2 = `${prefix}.${child.flag}`;
|
|
6156
|
+
return [{ ...child, flag: flag2 }, ...childFlags(child, flag2)];
|
|
6157
|
+
});
|
|
6158
|
+
}
|
|
5068
6159
|
|
|
5069
6160
|
// src/program.ts
|
|
5070
6161
|
var DOTTED = /^--([a-z0-9-]+\.[a-z0-9.-]+)(?:=(.*))?$/;
|
|
@@ -5081,7 +6172,7 @@ function optionText(option2) {
|
|
|
5081
6172
|
}
|
|
5082
6173
|
function splitDotted(argv2) {
|
|
5083
6174
|
const rest = [];
|
|
5084
|
-
const
|
|
6175
|
+
const dotted2 = /* @__PURE__ */ new Map();
|
|
5085
6176
|
for (let i = 0; i < argv2.length; i++) {
|
|
5086
6177
|
const match = DOTTED.exec(argv2[i]);
|
|
5087
6178
|
if (!match) {
|
|
@@ -5091,9 +6182,9 @@ function splitDotted(argv2) {
|
|
|
5091
6182
|
const value2 = match[2] ?? argv2[++i];
|
|
5092
6183
|
if (value2 === void 0)
|
|
5093
6184
|
throw new UsageError(`--${match[1]} needs a value`);
|
|
5094
|
-
|
|
6185
|
+
dotted2.set(match[1], [...dotted2.get(match[1]) ?? [], value2]);
|
|
5095
6186
|
}
|
|
5096
|
-
return { argv: rest, dotted };
|
|
6187
|
+
return { argv: rest, dotted: dotted2 };
|
|
5097
6188
|
}
|
|
5098
6189
|
function group(parent, name, groups, path) {
|
|
5099
6190
|
const existing = groups.get(path);
|
|
@@ -5117,6 +6208,10 @@ function leafOptions(leaf, command) {
|
|
|
5117
6208
|
);
|
|
5118
6209
|
if (option2.negatable)
|
|
5119
6210
|
leaf.option(`--no-${option2.flag}`, `Skip ${option2.flag}.`);
|
|
6211
|
+
for (const child of childFlags(option2)) {
|
|
6212
|
+
const placeholder2 = child.enum ? child.enum.join("|") : child.type.replace("[]", "");
|
|
6213
|
+
leaf.option(`--${child.flag} <${placeholder2}>`, optionText(child));
|
|
6214
|
+
}
|
|
5120
6215
|
}
|
|
5121
6216
|
for (const file of command.body?.files ?? []) {
|
|
5122
6217
|
leaf.option(`--${file} <path>`, "File to upload. Repeatable.", collect);
|
|
@@ -5132,10 +6227,10 @@ function leafOptions(leaf, command) {
|
|
|
5132
6227
|
"The pulled head folder to push. Defaults to the current folder."
|
|
5133
6228
|
);
|
|
5134
6229
|
}
|
|
5135
|
-
function toParsed(leaf, positionals,
|
|
6230
|
+
function toParsed(leaf, positionals, dotted2) {
|
|
5136
6231
|
const globals = leaf.optsWithGlobals();
|
|
5137
6232
|
const own = leaf.opts();
|
|
5138
|
-
const flags = new Map(
|
|
6233
|
+
const flags = new Map(dotted2);
|
|
5139
6234
|
for (const option2 of leaf.options) {
|
|
5140
6235
|
const flag2 = option2.long?.replace(/^--(no-)?/, "");
|
|
5141
6236
|
const value2 = own[option2.attributeName()];
|
|
@@ -5151,7 +6246,7 @@ function toParsed(leaf, positionals, dotted) {
|
|
|
5151
6246
|
output: globals.output
|
|
5152
6247
|
};
|
|
5153
6248
|
}
|
|
5154
|
-
function defineCommands(root, options,
|
|
6249
|
+
function defineCommands(root, options, dotted2 = /* @__PURE__ */ new Map(), onInvocation = () => void 0) {
|
|
5155
6250
|
if (options.description) root.description(options.description);
|
|
5156
6251
|
if (options.version)
|
|
5157
6252
|
root.addHelpText(
|
|
@@ -5220,7 +6315,7 @@ ${notes.join("\n")}`);
|
|
|
5220
6315
|
`expected ${expected}, got ${cmd.args.length} argument(s)`
|
|
5221
6316
|
);
|
|
5222
6317
|
}
|
|
5223
|
-
const unknownDotted = [...
|
|
6318
|
+
const unknownDotted = [...dotted2.keys()].filter(
|
|
5224
6319
|
(flag2) => !(command.body?.fields ?? []).some(
|
|
5225
6320
|
(f) => flag2.startsWith(`${f.flag}.`)
|
|
5226
6321
|
)
|
|
@@ -5233,7 +6328,7 @@ ${notes.join("\n")}`);
|
|
|
5233
6328
|
onInvocation({
|
|
5234
6329
|
kind: "command",
|
|
5235
6330
|
command,
|
|
5236
|
-
parsed: toParsed(cmd, positionals,
|
|
6331
|
+
parsed: toParsed(cmd, positionals, dotted2)
|
|
5237
6332
|
});
|
|
5238
6333
|
});
|
|
5239
6334
|
}
|
|
@@ -5252,12 +6347,12 @@ async function parseInvocation(argv2, options) {
|
|
|
5252
6347
|
stderr: ""
|
|
5253
6348
|
};
|
|
5254
6349
|
}
|
|
5255
|
-
const { argv: rest, dotted } = splitDotted(argv2);
|
|
6350
|
+
const { argv: rest, dotted: dotted2 } = splitDotted(argv2);
|
|
5256
6351
|
const root = new Command("asteroid").exitOverride().helpCommand(false).configureOutput({
|
|
5257
6352
|
writeOut: (text3) => stdout += text3,
|
|
5258
6353
|
writeErr: (text3) => stderr += text3
|
|
5259
6354
|
});
|
|
5260
|
-
defineCommands(root, options,
|
|
6355
|
+
defineCommands(root, options, dotted2, (invocation) => {
|
|
5261
6356
|
result = invocation;
|
|
5262
6357
|
});
|
|
5263
6358
|
try {
|
|
@@ -5737,7 +6832,7 @@ var ApiError = class extends Error {
|
|
|
5737
6832
|
status;
|
|
5738
6833
|
body;
|
|
5739
6834
|
};
|
|
5740
|
-
var VERSION = "1.9.
|
|
6835
|
+
var VERSION = "1.9.67";
|
|
5741
6836
|
function problem(status, body, fallback) {
|
|
5742
6837
|
if (body && typeof body === "object") {
|
|
5743
6838
|
const record2 = body;
|
|
@@ -6297,6 +7392,41 @@ function setPath(target, path, value2) {
|
|
|
6297
7392
|
}
|
|
6298
7393
|
node[path.at(-1)] = value2;
|
|
6299
7394
|
}
|
|
7395
|
+
async function dotted(field, segments, flag2, raws, io) {
|
|
7396
|
+
const path = [];
|
|
7397
|
+
let option2 = field;
|
|
7398
|
+
for (const [i, segment] of segments.entries()) {
|
|
7399
|
+
if (option2?.record) {
|
|
7400
|
+
const key = segments.slice(i).join(".");
|
|
7401
|
+
const entry = { ...option2, flag: flag2, type: option2.record };
|
|
7402
|
+
delete entry.enum;
|
|
7403
|
+
return [
|
|
7404
|
+
[...path, key],
|
|
7405
|
+
entry.type === "json" ? loose(raws.at(-1)) : value(entry, raws)
|
|
7406
|
+
];
|
|
7407
|
+
}
|
|
7408
|
+
if (option2?.fields) {
|
|
7409
|
+
const child = option2.fields.find(
|
|
7410
|
+
(f) => f.flag === segment
|
|
7411
|
+
);
|
|
7412
|
+
if (!child) throw new UsageError(`unknown flag: --${flag2}`);
|
|
7413
|
+
path.push(child.name);
|
|
7414
|
+
option2 = child;
|
|
7415
|
+
continue;
|
|
7416
|
+
}
|
|
7417
|
+
if (option2 && option2.type !== "json") {
|
|
7418
|
+
throw new UsageError(`unknown flag: --${flag2}`);
|
|
7419
|
+
}
|
|
7420
|
+
path.push(camel(segment));
|
|
7421
|
+
option2 = void 0;
|
|
7422
|
+
}
|
|
7423
|
+
if (!option2) return [path, loose(raws.at(-1))];
|
|
7424
|
+
if (option2.fields || option2.record) {
|
|
7425
|
+
throw new UsageError(`--${flag2} needs a field, as --${flag2}.<name>`);
|
|
7426
|
+
}
|
|
7427
|
+
const inputs = option2.type === "json" ? await Promise.all(raws.map((raw) => readInput(raw, io))) : raws;
|
|
7428
|
+
return [path, value({ ...option2, flag: flag2 }, inputs)];
|
|
7429
|
+
}
|
|
6300
7430
|
async function buildRequest(command, input, context = {}) {
|
|
6301
7431
|
const io = context.io ?? nodeReader;
|
|
6302
7432
|
const parsed = await resolveInputs(command, input, io);
|
|
@@ -6383,7 +7513,8 @@ async function buildRequest(command, input, context = {}) {
|
|
|
6383
7513
|
flags.delete(flag2);
|
|
6384
7514
|
const current = json[field.name];
|
|
6385
7515
|
json[field.name] = typeof current === "object" && current !== null ? current : {};
|
|
6386
|
-
|
|
7516
|
+
const [path2, value2] = await dotted(field, rest, flag2, raws, io);
|
|
7517
|
+
setPath(json, [field.name, ...path2], value2);
|
|
6387
7518
|
}
|
|
6388
7519
|
rejectUnknown(flags);
|
|
6389
7520
|
delete json.organizationId;
|