checkly 8.10.0 → 8.11.0

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 (71) hide show
  1. package/dist/ai-context/skills-command/references/initialize.md +1 -10
  2. package/dist/commands/baseCommand.d.ts +1 -0
  3. package/dist/commands/baseCommand.js +31 -2
  4. package/dist/commands/baseCommand.js.map +1 -1
  5. package/dist/commands/destroy.d.ts +1 -0
  6. package/dist/commands/destroy.js +30 -3
  7. package/dist/commands/destroy.js.map +1 -1
  8. package/dist/commands/init.js +7 -5
  9. package/dist/commands/init.js.map +1 -1
  10. package/dist/commands/login.js +6 -6
  11. package/dist/commands/login.js.map +1 -1
  12. package/dist/commands/logout.js +3 -0
  13. package/dist/commands/logout.js.map +1 -1
  14. package/dist/commands/rules.d.ts +1 -2
  15. package/dist/commands/rules.js +5 -119
  16. package/dist/commands/rules.js.map +1 -1
  17. package/dist/commands/skills/install.d.ts +0 -6
  18. package/dist/commands/skills/install.js +3 -82
  19. package/dist/commands/skills/install.js.map +1 -1
  20. package/dist/commands/switch.js +0 -5
  21. package/dist/commands/switch.js.map +1 -1
  22. package/dist/commands/whoami.js +6 -0
  23. package/dist/commands/whoami.js.map +1 -1
  24. package/dist/helpers/onboarding/detect-project.d.ts +1 -1
  25. package/dist/helpers/onboarding/detect-project.js +4 -13
  26. package/dist/helpers/onboarding/detect-project.js.map +1 -1
  27. package/dist/helpers/onboarding/skill-install.js +1 -1
  28. package/dist/helpers/onboarding/skill-install.js.map +1 -1
  29. package/dist/helpers/result-assets.js.map +1 -1
  30. package/dist/messages/common-messages.d.ts +1 -0
  31. package/dist/messages/common-messages.js +2 -0
  32. package/dist/messages/common-messages.js.map +1 -1
  33. package/dist/reporters/abstract-list.d.ts +1 -0
  34. package/dist/reporters/abstract-list.js +14 -1
  35. package/dist/reporters/abstract-list.js.map +1 -1
  36. package/dist/reporters/dot.js +1 -0
  37. package/dist/reporters/dot.js.map +1 -1
  38. package/dist/reporters/github.d.ts +1 -0
  39. package/dist/reporters/github.js +16 -4
  40. package/dist/reporters/github.js.map +1 -1
  41. package/dist/reporters/util.d.ts +1 -0
  42. package/dist/reporters/util.js +1 -1
  43. package/dist/reporters/util.js.map +1 -1
  44. package/dist/rest/assets.js +3 -2
  45. package/dist/rest/assets.js.map +1 -1
  46. package/dist/rest/errors.d.ts +6 -0
  47. package/dist/rest/errors.js +80 -0
  48. package/dist/rest/errors.js.map +1 -1
  49. package/dist/rest/projects.d.ts +23 -4
  50. package/dist/rest/projects.js +52 -15
  51. package/dist/rest/projects.js.map +1 -1
  52. package/dist/services/check-parser/package-files/jsconfig-json-file.d.ts +2 -2
  53. package/dist/services/check-parser/package-files/jsconfig-json-file.js +3 -3
  54. package/dist/services/check-parser/package-files/jsconfig-json-file.js.map +1 -1
  55. package/dist/services/check-parser/package-files/resolver.d.ts +8 -1
  56. package/dist/services/check-parser/package-files/resolver.js +100 -4
  57. package/dist/services/check-parser/package-files/resolver.js.map +1 -1
  58. package/dist/services/check-parser/package-files/tsconfig-json-file.d.ts +53 -3
  59. package/dist/services/check-parser/package-files/tsconfig-json-file.js +107 -32
  60. package/dist/services/check-parser/package-files/tsconfig-json-file.js.map +1 -1
  61. package/dist/services/proxy.d.ts +32 -2
  62. package/dist/services/proxy.js +59 -26
  63. package/dist/services/proxy.js.map +1 -1
  64. package/dist/services/skills.d.ts +12 -0
  65. package/dist/services/skills.js +127 -0
  66. package/dist/services/skills.js.map +1 -0
  67. package/dist/services/socket-client.js +6 -27
  68. package/dist/services/socket-client.js.map +1 -1
  69. package/oclif.manifest.json +214 -207
  70. package/package.json +16 -15
  71. package/dist/ai-context/checkly.rules.md +0 -916
@@ -0,0 +1,127 @@
1
+ import chalk from 'chalk';
2
+ import { existsSync } from 'fs';
3
+ import { mkdir, readFile, writeFile } from 'fs/promises';
4
+ import { join, dirname } from 'path';
5
+ import prompts from 'prompts';
6
+ import { fileURLToPath } from 'node:url';
7
+ const __dirname = dirname(fileURLToPath(import.meta.url));
8
+ export const SKILL_FILE_PATH = join(__dirname, '../ai-context/public-skills/checkly/SKILL.md');
9
+ const SKILL_FILENAME = 'SKILL.md';
10
+ export const PLATFORM_TARGETS = {
11
+ 'amp': '.agents/skills/checkly',
12
+ 'claude': '.claude/skills/checkly',
13
+ 'cline': '.agents/skills/checkly',
14
+ 'codex': '.agents/skills/checkly',
15
+ 'continue': '.continue/skills/checkly',
16
+ 'cursor': '.cursor/skills/checkly',
17
+ 'gemini-cli': '.agents/skills/checkly',
18
+ 'github-copilot': '.agents/skills/checkly',
19
+ 'goose': '.goose/skills/checkly',
20
+ 'opencode': '.agents/skills/checkly',
21
+ 'roo': '.roo/skills/checkly',
22
+ 'windsurf': '.windsurf/skills/checkly',
23
+ };
24
+ // Multiple platforms share the same target dir (e.g. .agents/skills/checkly),
25
+ // so dedupe before comparing to avoid reporting the same file twice.
26
+ const SKILL_DIRECTORIES = [...new Set(Object.values(PLATFORM_TARGETS))];
27
+ export async function readSkillFile() {
28
+ try {
29
+ return await readFile(SKILL_FILE_PATH, 'utf8');
30
+ }
31
+ catch {
32
+ throw new Error(`Failed to read skill file at ${SKILL_FILE_PATH}`);
33
+ }
34
+ }
35
+ export async function writeSkillToTarget(targetDir, content) {
36
+ const absoluteDir = join(process.cwd(), targetDir);
37
+ const targetPath = join(absoluteDir, SKILL_FILENAME);
38
+ try {
39
+ await mkdir(absoluteDir, { recursive: true });
40
+ }
41
+ catch {
42
+ throw new Error(`Failed to create directory ${absoluteDir}`);
43
+ }
44
+ try {
45
+ await writeFile(targetPath, content, 'utf8');
46
+ }
47
+ catch {
48
+ throw new Error(`Failed to write skill file to ${targetPath}`);
49
+ }
50
+ return targetPath;
51
+ }
52
+ export function formatPlatformName(platform) {
53
+ return platform
54
+ .split('-')
55
+ .map(word => word.charAt(0).toUpperCase() + word.slice(1))
56
+ .join(' ');
57
+ }
58
+ export async function promptForPlatformTarget(onCancel) {
59
+ const choices = [
60
+ ...Object.entries(PLATFORM_TARGETS).map(([platform, dir]) => ({
61
+ title: `${formatPlatformName(platform)} ${chalk.dim(`(${dir}/)`)}`,
62
+ value: platform,
63
+ })),
64
+ {
65
+ title: 'Custom path',
66
+ value: '__custom__',
67
+ },
68
+ ];
69
+ const promptOptions = onCancel ? { onCancel } : {};
70
+ const { platform } = await prompts({
71
+ type: 'select',
72
+ name: 'platform',
73
+ message: 'Which AI coding agent do you use?',
74
+ choices,
75
+ initial: 0,
76
+ }, promptOptions);
77
+ if (platform === undefined)
78
+ return undefined;
79
+ if (platform === '__custom__') {
80
+ const { customPath } = await prompts({
81
+ type: 'text',
82
+ name: 'customPath',
83
+ message: 'Enter the target directory:',
84
+ }, promptOptions);
85
+ return customPath || undefined;
86
+ }
87
+ return PLATFORM_TARGETS[platform];
88
+ }
89
+ // Returns the SKILL.md path for every agent directory that has one installed.
90
+ // A project can carry the skill in several dirs at once (e.g. one per agent),
91
+ // so this returns all of them rather than the first match.
92
+ export function findInstalledSkills(projectDir) {
93
+ return SKILL_DIRECTORIES
94
+ .map(dir => join(projectDir, dir, SKILL_FILENAME))
95
+ .filter(targetPath => existsSync(targetPath));
96
+ }
97
+ // Compares each installed SKILL.md against the skill bundled with this CLI
98
+ // version. Any byte difference means the installed skill is out of date (the
99
+ // install path writes the bundled file verbatim, so a fresh install matches
100
+ // exactly). Mirrors playwright-cli's content-based staleness check.
101
+ export async function findStaleSkills(projectDir) {
102
+ let bundled;
103
+ try {
104
+ bundled = await readSkillFile();
105
+ }
106
+ catch {
107
+ // No bundled skill to compare against — nothing we can assert.
108
+ return [];
109
+ }
110
+ const stale = [];
111
+ for (const dir of SKILL_DIRECTORIES) {
112
+ const targetPath = join(projectDir, dir, SKILL_FILENAME);
113
+ let installed;
114
+ try {
115
+ installed = await readFile(targetPath, 'utf8');
116
+ }
117
+ catch {
118
+ // Not installed in this dir — don't nag about skills the user never added.
119
+ continue;
120
+ }
121
+ if (installed !== bundled) {
122
+ stale.push({ dir, targetPath });
123
+ }
124
+ }
125
+ return stale;
126
+ }
127
+ //# sourceMappingURL=skills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/services/skills.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,6 @@
1
1
  import * as mqtt from 'mqtt';
2
2
  import config from '../services/config.js';
3
- // @ts-ignore
4
- import { getProxyForUrl } from 'proxy-from-env';
5
- import { httpsOverHttp, httpsOverHttps } from 'tunnel';
6
- const isHttps = (protocol) => protocol.startsWith('https');
3
+ import { createProxyAgent } from '../services/proxy.js';
7
4
  const wait = (ms) => new Promise(resolve => setTimeout(resolve, ms));
8
5
  async function backOffConnect(url, options, retryCount = 0) {
9
6
  try {
@@ -28,29 +25,11 @@ export class SocketClient {
28
25
  username: accountId,
29
26
  password: apiKey,
30
27
  };
31
- // Replace wss with https so the get proxy url thing the env path
32
- const proxyUrlEnv = getProxyForUrl(url.replace('wss', 'https'));
33
- if (proxyUrlEnv) {
34
- const parsedProxyUrl = new URL(proxyUrlEnv);
35
- const isProxyHttps = isHttps(parsedProxyUrl.protocol);
36
- const proxy = {
37
- host: parsedProxyUrl.hostname,
38
- port: parsedProxyUrl.port,
39
- protocol: parsedProxyUrl.protocol,
40
- };
41
- if (parsedProxyUrl.username && parsedProxyUrl.password) {
42
- proxy.proxyAuth = `${parsedProxyUrl.username}:${parsedProxyUrl.password}`;
43
- }
44
- if (isProxyHttps) {
45
- options.wsOptions = {
46
- agent: httpsOverHttps({ proxy }),
47
- };
48
- }
49
- else {
50
- options.wsOptions = {
51
- agent: httpsOverHttp({ proxy }),
52
- };
53
- }
28
+ // Route the WebSocket upgrade through a proxy when the proxy environment
29
+ // variables apply to this URL; otherwise connect directly.
30
+ const agent = createProxyAgent(url);
31
+ if (agent) {
32
+ options.wsOptions = { agent };
54
33
  }
55
34
  return backOffConnect(`${url}?authenticationScheme=userApiKey`, options, 0);
56
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"socket-client.js","sourceRoot":"","sources":["../../src/services/socket-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,MAAM,MAAM,uBAAuB,CAAA;AAC1C,aAAa;AACb,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAEtD,MAAM,OAAO,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;AAElE,MAAM,IAAI,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;AAE5E,KAAK,UAAU,cAAc,CAAE,GAAW,EAAE,OAA4B,EAAE,UAAU,GAAG,CAAC;IAEtF,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,KAAK,CAAA;QACb,CAAC;QACD,UAAU,IAAI,CAAC,CAAA;QACf,MAAM,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,CAAA;QAC5B,OAAO,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;IACjD,CAAC;AACH,CAAC;AAED,MAAM,OAAO,YAAY;IACvB,MAAM,CAAC,OAAO;QACZ,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAA;QAC/B,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,CAAA;QACvC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;QACjC,MAAM,OAAO,GAAwB;YACnC,eAAe,EAAE,GAAG;YACpB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,MAAM;SACjB,CAAA;QAED,iEAAiE;QACjE,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;QAC/D,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAA;YAC3C,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAA;YACrD,MAAM,KAAK,GAAQ;gBACjB,IAAI,EAAE,cAAc,CAAC,QAAQ;gBAC7B,IAAI,EAAE,cAAc,CAAC,IAAI;gBACzB,QAAQ,EAAE,cAAc,CAAC,QAAQ;aAClC,CAAA;YACD,IAAI,cAAc,CAAC,QAAQ,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC;gBACvD,KAAK,CAAC,SAAS,GAAG,GAAG,cAAc,CAAC,QAAQ,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAA;YAC3E,CAAC;YACD,IAAI,YAAY,EAAE,CAAC;gBACjB,OAAO,CAAC,SAAS,GAAG;oBAClB,KAAK,EAAE,cAAc,CAAC,EAAE,KAAK,EAAE,CAAC;iBACjC,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,SAAS,GAAG;oBAClB,KAAK,EAAE,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;iBAChC,CAAA;YACH,CAAC;QACH,CAAC;QACD,OAAO,cAAc,CAAC,GAAG,GAAG,kCAAkC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;IAC7E,CAAC;CACF"}
1
+ {"version":3,"file":"socket-client.js","sourceRoot":"","sources":["../../src/services/socket-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,MAAM,MAAM,uBAAuB,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,MAAM,IAAI,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;AAE5E,KAAK,UAAU,cAAc,CAAE,GAAW,EAAE,OAA4B,EAAE,UAAU,GAAG,CAAC;IAEtF,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,KAAK,CAAA;QACb,CAAC;QACD,UAAU,IAAI,CAAC,CAAA;QACf,MAAM,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,CAAA;QAC5B,OAAO,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;IACjD,CAAC;AACH,CAAC;AAED,MAAM,OAAO,YAAY;IACvB,MAAM,CAAC,OAAO;QACZ,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAA;QAC/B,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,CAAA;QACvC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;QACjC,MAAM,OAAO,GAAwB;YACnC,eAAe,EAAE,GAAG;YACpB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,MAAM;SACjB,CAAA;QAED,yEAAyE;QACzE,2DAA2D;QAC3D,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;QACnC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,SAAS,GAAG,EAAE,KAAK,EAAE,CAAA;QAC/B,CAAC;QAED,OAAO,cAAc,CAAC,GAAG,GAAG,kCAAkC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;IAC7E,CAAC;CACF"}
@@ -269,6 +269,12 @@
269
269
  "name": "preserve-resources",
270
270
  "allowNo": false,
271
271
  "type": "boolean"
272
+ },
273
+ "cancel-in-progress-deployment": {
274
+ "description": "If a deployment for this project is already in progress, cancel it instead of waiting for it to finish.",
275
+ "name": "cancel-in-progress-deployment",
276
+ "allowNo": false,
277
+ "type": "boolean"
272
278
  }
273
279
  },
274
280
  "hasDynamicHelp": false,
@@ -687,7 +693,7 @@
687
693
  "rules": {
688
694
  "aliases": [],
689
695
  "args": {},
690
- "description": "Generate a rules file to use with AI IDEs and Copilots.",
696
+ "description": "Deprecated. Use `checkly skills` instead.",
691
697
  "flags": {},
692
698
  "hasDynamicHelp": false,
693
699
  "hidden": false,
@@ -696,6 +702,7 @@
696
702
  "pluginAlias": "checkly",
697
703
  "pluginName": "checkly",
698
704
  "pluginType": "core",
705
+ "state": "deprecated",
699
706
  "strict": true,
700
707
  "enableJsonFlag": false,
701
708
  "coreCommand": false,
@@ -1475,6 +1482,211 @@
1475
1482
  "logs.js"
1476
1483
  ]
1477
1484
  },
1485
+ "assets:download": {
1486
+ "aliases": [],
1487
+ "args": {},
1488
+ "description": "Download result assets.",
1489
+ "flags": {
1490
+ "check-id": {
1491
+ "description": "Check ID for a scheduled check result.",
1492
+ "name": "check-id",
1493
+ "hasDynamicHelp": false,
1494
+ "multiple": false,
1495
+ "type": "option"
1496
+ },
1497
+ "test-session-id": {
1498
+ "description": "Test session ID for a test-session result.",
1499
+ "name": "test-session-id",
1500
+ "hasDynamicHelp": false,
1501
+ "multiple": false,
1502
+ "type": "option"
1503
+ },
1504
+ "result-id": {
1505
+ "description": "Check result ID or test-session result ID.",
1506
+ "name": "result-id",
1507
+ "required": true,
1508
+ "hasDynamicHelp": false,
1509
+ "multiple": false,
1510
+ "type": "option"
1511
+ },
1512
+ "type": {
1513
+ "description": "Select assets by type.",
1514
+ "name": "type",
1515
+ "hasDynamicHelp": false,
1516
+ "multiple": false,
1517
+ "options": [
1518
+ "log",
1519
+ "trace",
1520
+ "video",
1521
+ "screenshot",
1522
+ "pcap",
1523
+ "report",
1524
+ "file",
1525
+ "all"
1526
+ ],
1527
+ "type": "option"
1528
+ },
1529
+ "asset": {
1530
+ "description": "Select an asset by exact Asset/Name value or glob.",
1531
+ "name": "asset",
1532
+ "hasDynamicHelp": false,
1533
+ "multiple": false,
1534
+ "type": "option"
1535
+ },
1536
+ "dir": {
1537
+ "description": "Directory to write assets into.",
1538
+ "name": "dir",
1539
+ "hasDynamicHelp": false,
1540
+ "multiple": false,
1541
+ "type": "option"
1542
+ },
1543
+ "force": {
1544
+ "description": "Overwrite existing files.",
1545
+ "name": "force",
1546
+ "allowNo": false,
1547
+ "type": "boolean"
1548
+ },
1549
+ "skip-existing": {
1550
+ "description": "Skip files that already exist.",
1551
+ "name": "skip-existing",
1552
+ "allowNo": false,
1553
+ "type": "boolean"
1554
+ },
1555
+ "output": {
1556
+ "char": "o",
1557
+ "description": "Output format.",
1558
+ "name": "output",
1559
+ "default": "table",
1560
+ "hasDynamicHelp": false,
1561
+ "multiple": false,
1562
+ "options": [
1563
+ "table",
1564
+ "json"
1565
+ ],
1566
+ "type": "option"
1567
+ }
1568
+ },
1569
+ "hasDynamicHelp": false,
1570
+ "hidden": false,
1571
+ "hiddenAliases": [],
1572
+ "id": "assets:download",
1573
+ "pluginAlias": "checkly",
1574
+ "pluginName": "checkly",
1575
+ "pluginType": "core",
1576
+ "strict": true,
1577
+ "enableJsonFlag": false,
1578
+ "coreCommand": false,
1579
+ "readOnly": true,
1580
+ "destructive": false,
1581
+ "idempotent": true,
1582
+ "isESM": true,
1583
+ "relativePath": [
1584
+ "dist",
1585
+ "commands",
1586
+ "assets",
1587
+ "download.js"
1588
+ ]
1589
+ },
1590
+ "assets:list": {
1591
+ "aliases": [],
1592
+ "args": {},
1593
+ "description": "List result assets.",
1594
+ "flags": {
1595
+ "check-id": {
1596
+ "description": "Check ID for a scheduled check result.",
1597
+ "name": "check-id",
1598
+ "hasDynamicHelp": false,
1599
+ "multiple": false,
1600
+ "type": "option"
1601
+ },
1602
+ "test-session-id": {
1603
+ "description": "Test session ID for a test-session result.",
1604
+ "name": "test-session-id",
1605
+ "hasDynamicHelp": false,
1606
+ "multiple": false,
1607
+ "type": "option"
1608
+ },
1609
+ "result-id": {
1610
+ "description": "Check result ID or test-session result ID.",
1611
+ "name": "result-id",
1612
+ "required": true,
1613
+ "hasDynamicHelp": false,
1614
+ "multiple": false,
1615
+ "type": "option"
1616
+ },
1617
+ "type": {
1618
+ "description": "Filter assets by type.",
1619
+ "name": "type",
1620
+ "default": "all",
1621
+ "hasDynamicHelp": false,
1622
+ "multiple": false,
1623
+ "options": [
1624
+ "log",
1625
+ "trace",
1626
+ "video",
1627
+ "screenshot",
1628
+ "pcap",
1629
+ "report",
1630
+ "file",
1631
+ "all"
1632
+ ],
1633
+ "type": "option"
1634
+ },
1635
+ "asset": {
1636
+ "description": "Filter assets by exact Asset/Name value or glob.",
1637
+ "name": "asset",
1638
+ "hasDynamicHelp": false,
1639
+ "multiple": false,
1640
+ "type": "option"
1641
+ },
1642
+ "view": {
1643
+ "description": "Human output view. Ignored with --output json.",
1644
+ "name": "view",
1645
+ "default": "table",
1646
+ "hasDynamicHelp": false,
1647
+ "multiple": false,
1648
+ "options": [
1649
+ "table",
1650
+ "tree"
1651
+ ],
1652
+ "type": "option"
1653
+ },
1654
+ "output": {
1655
+ "char": "o",
1656
+ "description": "Output format.",
1657
+ "name": "output",
1658
+ "default": "table",
1659
+ "hasDynamicHelp": false,
1660
+ "multiple": false,
1661
+ "options": [
1662
+ "table",
1663
+ "json",
1664
+ "md"
1665
+ ],
1666
+ "type": "option"
1667
+ }
1668
+ },
1669
+ "hasDynamicHelp": false,
1670
+ "hidden": false,
1671
+ "hiddenAliases": [],
1672
+ "id": "assets:list",
1673
+ "pluginAlias": "checkly",
1674
+ "pluginName": "checkly",
1675
+ "pluginType": "core",
1676
+ "strict": true,
1677
+ "enableJsonFlag": false,
1678
+ "coreCommand": false,
1679
+ "readOnly": true,
1680
+ "destructive": false,
1681
+ "idempotent": true,
1682
+ "isESM": true,
1683
+ "relativePath": [
1684
+ "dist",
1685
+ "commands",
1686
+ "assets",
1687
+ "list.js"
1688
+ ]
1689
+ },
1478
1690
  "checks:delete": {
1479
1691
  "aliases": [],
1480
1692
  "args": {
@@ -2047,211 +2259,6 @@
2047
2259
  "parse-project.js"
2048
2260
  ]
2049
2261
  },
2050
- "assets:download": {
2051
- "aliases": [],
2052
- "args": {},
2053
- "description": "Download result assets.",
2054
- "flags": {
2055
- "check-id": {
2056
- "description": "Check ID for a scheduled check result.",
2057
- "name": "check-id",
2058
- "hasDynamicHelp": false,
2059
- "multiple": false,
2060
- "type": "option"
2061
- },
2062
- "test-session-id": {
2063
- "description": "Test session ID for a test-session result.",
2064
- "name": "test-session-id",
2065
- "hasDynamicHelp": false,
2066
- "multiple": false,
2067
- "type": "option"
2068
- },
2069
- "result-id": {
2070
- "description": "Check result ID or test-session result ID.",
2071
- "name": "result-id",
2072
- "required": true,
2073
- "hasDynamicHelp": false,
2074
- "multiple": false,
2075
- "type": "option"
2076
- },
2077
- "type": {
2078
- "description": "Select assets by type.",
2079
- "name": "type",
2080
- "hasDynamicHelp": false,
2081
- "multiple": false,
2082
- "options": [
2083
- "log",
2084
- "trace",
2085
- "video",
2086
- "screenshot",
2087
- "pcap",
2088
- "report",
2089
- "file",
2090
- "all"
2091
- ],
2092
- "type": "option"
2093
- },
2094
- "asset": {
2095
- "description": "Select an asset by exact Asset/Name value or glob.",
2096
- "name": "asset",
2097
- "hasDynamicHelp": false,
2098
- "multiple": false,
2099
- "type": "option"
2100
- },
2101
- "dir": {
2102
- "description": "Directory to write assets into.",
2103
- "name": "dir",
2104
- "hasDynamicHelp": false,
2105
- "multiple": false,
2106
- "type": "option"
2107
- },
2108
- "force": {
2109
- "description": "Overwrite existing files.",
2110
- "name": "force",
2111
- "allowNo": false,
2112
- "type": "boolean"
2113
- },
2114
- "skip-existing": {
2115
- "description": "Skip files that already exist.",
2116
- "name": "skip-existing",
2117
- "allowNo": false,
2118
- "type": "boolean"
2119
- },
2120
- "output": {
2121
- "char": "o",
2122
- "description": "Output format.",
2123
- "name": "output",
2124
- "default": "table",
2125
- "hasDynamicHelp": false,
2126
- "multiple": false,
2127
- "options": [
2128
- "table",
2129
- "json"
2130
- ],
2131
- "type": "option"
2132
- }
2133
- },
2134
- "hasDynamicHelp": false,
2135
- "hidden": false,
2136
- "hiddenAliases": [],
2137
- "id": "assets:download",
2138
- "pluginAlias": "checkly",
2139
- "pluginName": "checkly",
2140
- "pluginType": "core",
2141
- "strict": true,
2142
- "enableJsonFlag": false,
2143
- "coreCommand": false,
2144
- "readOnly": true,
2145
- "destructive": false,
2146
- "idempotent": true,
2147
- "isESM": true,
2148
- "relativePath": [
2149
- "dist",
2150
- "commands",
2151
- "assets",
2152
- "download.js"
2153
- ]
2154
- },
2155
- "assets:list": {
2156
- "aliases": [],
2157
- "args": {},
2158
- "description": "List result assets.",
2159
- "flags": {
2160
- "check-id": {
2161
- "description": "Check ID for a scheduled check result.",
2162
- "name": "check-id",
2163
- "hasDynamicHelp": false,
2164
- "multiple": false,
2165
- "type": "option"
2166
- },
2167
- "test-session-id": {
2168
- "description": "Test session ID for a test-session result.",
2169
- "name": "test-session-id",
2170
- "hasDynamicHelp": false,
2171
- "multiple": false,
2172
- "type": "option"
2173
- },
2174
- "result-id": {
2175
- "description": "Check result ID or test-session result ID.",
2176
- "name": "result-id",
2177
- "required": true,
2178
- "hasDynamicHelp": false,
2179
- "multiple": false,
2180
- "type": "option"
2181
- },
2182
- "type": {
2183
- "description": "Filter assets by type.",
2184
- "name": "type",
2185
- "default": "all",
2186
- "hasDynamicHelp": false,
2187
- "multiple": false,
2188
- "options": [
2189
- "log",
2190
- "trace",
2191
- "video",
2192
- "screenshot",
2193
- "pcap",
2194
- "report",
2195
- "file",
2196
- "all"
2197
- ],
2198
- "type": "option"
2199
- },
2200
- "asset": {
2201
- "description": "Filter assets by exact Asset/Name value or glob.",
2202
- "name": "asset",
2203
- "hasDynamicHelp": false,
2204
- "multiple": false,
2205
- "type": "option"
2206
- },
2207
- "view": {
2208
- "description": "Human output view. Ignored with --output json.",
2209
- "name": "view",
2210
- "default": "table",
2211
- "hasDynamicHelp": false,
2212
- "multiple": false,
2213
- "options": [
2214
- "table",
2215
- "tree"
2216
- ],
2217
- "type": "option"
2218
- },
2219
- "output": {
2220
- "char": "o",
2221
- "description": "Output format.",
2222
- "name": "output",
2223
- "default": "table",
2224
- "hasDynamicHelp": false,
2225
- "multiple": false,
2226
- "options": [
2227
- "table",
2228
- "json",
2229
- "md"
2230
- ],
2231
- "type": "option"
2232
- }
2233
- },
2234
- "hasDynamicHelp": false,
2235
- "hidden": false,
2236
- "hiddenAliases": [],
2237
- "id": "assets:list",
2238
- "pluginAlias": "checkly",
2239
- "pluginName": "checkly",
2240
- "pluginType": "core",
2241
- "strict": true,
2242
- "enableJsonFlag": false,
2243
- "coreCommand": false,
2244
- "readOnly": true,
2245
- "destructive": false,
2246
- "idempotent": true,
2247
- "isESM": true,
2248
- "relativePath": [
2249
- "dist",
2250
- "commands",
2251
- "assets",
2252
- "list.js"
2253
- ]
2254
- },
2255
2262
  "env:add": {
2256
2263
  "aliases": [],
2257
2264
  "args": {
@@ -3704,5 +3711,5 @@
3704
3711
  ]
3705
3712
  }
3706
3713
  },
3707
- "version": "8.10.0"
3714
+ "version": "8.11.0"
3708
3715
  }