@defai.digital/cli 13.3.0 → 13.4.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 (64) hide show
  1. package/dist/bootstrap.d.ts +12 -0
  2. package/dist/bootstrap.d.ts.map +1 -1
  3. package/dist/bootstrap.js +23 -0
  4. package/dist/bootstrap.js.map +1 -1
  5. package/dist/cli.d.ts.map +1 -1
  6. package/dist/cli.js +5 -1
  7. package/dist/cli.js.map +1 -1
  8. package/dist/commands/agent.d.ts +1 -0
  9. package/dist/commands/agent.d.ts.map +1 -1
  10. package/dist/commands/agent.js +211 -27
  11. package/dist/commands/agent.js.map +1 -1
  12. package/dist/commands/call.d.ts +2 -1
  13. package/dist/commands/call.d.ts.map +1 -1
  14. package/dist/commands/call.js +199 -10
  15. package/dist/commands/call.js.map +1 -1
  16. package/dist/commands/cleanup.d.ts +3 -1
  17. package/dist/commands/cleanup.d.ts.map +1 -1
  18. package/dist/commands/cleanup.js +123 -11
  19. package/dist/commands/cleanup.js.map +1 -1
  20. package/dist/commands/discuss.d.ts +2 -1
  21. package/dist/commands/discuss.d.ts.map +1 -1
  22. package/dist/commands/discuss.js +604 -105
  23. package/dist/commands/discuss.js.map +1 -1
  24. package/dist/commands/doctor.d.ts +11 -2
  25. package/dist/commands/doctor.d.ts.map +1 -1
  26. package/dist/commands/doctor.js +272 -38
  27. package/dist/commands/doctor.js.map +1 -1
  28. package/dist/commands/index.d.ts +1 -0
  29. package/dist/commands/index.d.ts.map +1 -1
  30. package/dist/commands/index.js +2 -0
  31. package/dist/commands/index.js.map +1 -1
  32. package/dist/commands/init.d.ts.map +1 -1
  33. package/dist/commands/init.js +136 -122
  34. package/dist/commands/init.js.map +1 -1
  35. package/dist/commands/monitor.d.ts +22 -0
  36. package/dist/commands/monitor.d.ts.map +1 -0
  37. package/dist/commands/monitor.js +255 -0
  38. package/dist/commands/monitor.js.map +1 -0
  39. package/dist/commands/setup.d.ts.map +1 -1
  40. package/dist/commands/setup.js +107 -2
  41. package/dist/commands/setup.js.map +1 -1
  42. package/dist/commands/status.d.ts +6 -5
  43. package/dist/commands/status.d.ts.map +1 -1
  44. package/dist/commands/status.js +260 -75
  45. package/dist/commands/status.js.map +1 -1
  46. package/dist/parser.d.ts.map +1 -1
  47. package/dist/parser.js +30 -0
  48. package/dist/parser.js.map +1 -1
  49. package/dist/types.d.ts +4 -0
  50. package/dist/types.d.ts.map +1 -1
  51. package/dist/types.js +1 -0
  52. package/dist/types.js.map +1 -1
  53. package/dist/utils/database.d.ts.map +1 -1
  54. package/dist/utils/database.js +5 -0
  55. package/dist/utils/database.js.map +1 -1
  56. package/dist/web/api.d.ts +12 -0
  57. package/dist/web/api.d.ts.map +1 -0
  58. package/dist/web/api.js +1189 -0
  59. package/dist/web/api.js.map +1 -0
  60. package/dist/web/dashboard.d.ts +13 -0
  61. package/dist/web/dashboard.d.ts.map +1 -0
  62. package/dist/web/dashboard.js +5290 -0
  63. package/dist/web/dashboard.js.map +1 -0
  64. package/package.json +21 -21
@@ -1 +1 @@
1
- {"version":3,"file":"discuss.js","sourceRoot":"","sources":["../../src/commands/discuss.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discuss.js","sourceRoot":"","sources":["../../src/commands/discuss.ts"],"names":[],"mappings":"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"}
@@ -28,11 +28,15 @@ export interface ProviderCheck {
28
28
  installHint: string;
29
29
  }
30
30
  /**
31
- * All provider CLIs to check
31
+ * AI provider CLIs to check
32
32
  */
33
33
  export declare const PROVIDER_CHECKS: readonly ProviderCheck[];
34
34
  /**
35
- * Checks a single provider CLI
35
+ * IDE integrations to check (not providers, but MCP-enabled IDEs)
36
+ */
37
+ export declare const IDE_CHECKS: readonly ProviderCheck[];
38
+ /**
39
+ * Checks a single provider CLI or GUI app
36
40
  * Exported for use by other commands like 'setup'
37
41
  */
38
42
  export declare function checkProviderCLI(provider: ProviderCheck): Promise<CheckResult>;
@@ -41,6 +45,11 @@ export declare function checkProviderCLI(provider: ProviderCheck): Promise<Check
41
45
  * Exported for use by other commands like 'setup'
42
46
  */
43
47
  export declare function checkAllProviders(specificProvider?: string): Promise<CheckResult[]>;
48
+ /**
49
+ * Checks all IDE integrations
50
+ * Exported for use by other commands like 'init'
51
+ */
52
+ export declare function checkAllIDEs(): Promise<CheckResult[]>;
44
53
  /**
45
54
  * Doctor command handler
46
55
  */
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM7D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,aAAa,EAqCnD,CAAC;AAgGF;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CA0CpF;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,WAAW,EAAE,CAAC,CAUxB;AAmFD;;GAEG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,aAAa,CAAC,CA8GxB"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM7D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,aAAa,EAqCnD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,SAAS,aAAa,EAa9C,CAAC;AAsPF;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CA6FpF;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,WAAW,EAAE,CAAC,CAUxB;AAED;;;GAGG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAM3D;AA+GD;;GAEG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,aAAa,CAAC,CA4IxB"}
@@ -17,7 +17,7 @@ import { DATA_DIR_NAME } from '@defai.digital/contracts';
17
17
  import { COLORS } from '../utils/terminal.js';
18
18
  const execAsync = promisify(exec);
19
19
  /**
20
- * All provider CLIs to check
20
+ * AI provider CLIs to check
21
21
  */
22
22
  export const PROVIDER_CHECKS = [
23
23
  {
@@ -57,10 +57,51 @@ export const PROVIDER_CHECKS = [
57
57
  installHint: 'npm install -g @defai.digital/ax-cli',
58
58
  },
59
59
  ];
60
+ /**
61
+ * IDE integrations to check (not providers, but MCP-enabled IDEs)
62
+ */
63
+ export const IDE_CHECKS = [
64
+ {
65
+ id: 'antigravity',
66
+ name: 'Antigravity',
67
+ command: 'antigravity',
68
+ installHint: 'Install from https://antigravity.google',
69
+ },
70
+ {
71
+ id: 'cursor',
72
+ name: 'Cursor',
73
+ command: 'cursor',
74
+ installHint: 'Install from https://cursor.com',
75
+ },
76
+ ];
60
77
  /**
61
78
  * Minimum required Node.js version
62
79
  */
63
80
  const MIN_NODE_VERSION = 18;
81
+ /**
82
+ * Status messages for provider/IDE checks
83
+ */
84
+ const STATUS_MESSAGES = {
85
+ notDetected: 'not detected',
86
+ notInstalled: 'not installed',
87
+ installed: 'installed',
88
+ noCredentials: 'no credentials',
89
+ };
90
+ /**
91
+ * Platform-specific command lookup utilities
92
+ */
93
+ const PLATFORM_COMMANDS = {
94
+ which: 'which',
95
+ where: 'where',
96
+ };
97
+ /**
98
+ * Version flag for CLI commands
99
+ */
100
+ const VERSION_FLAG = '--version';
101
+ /**
102
+ * Timeout for credential checks (ms)
103
+ */
104
+ const CREDENTIAL_CHECK_TIMEOUT = 5000;
64
105
  /**
65
106
  * Doctor-specific status icons
66
107
  */
@@ -69,13 +110,18 @@ const DOCTOR_ICONS = {
69
110
  fail: `${COLORS.red}\u2717${COLORS.reset}`,
70
111
  warn: `${COLORS.yellow}\u26A0${COLORS.reset}`,
71
112
  };
113
+ /**
114
+ * Gets the platform-specific command lookup utility
115
+ */
116
+ function getWhichCommand() {
117
+ return process.platform === 'win32' ? PLATFORM_COMMANDS.where : PLATFORM_COMMANDS.which;
118
+ }
72
119
  /**
73
120
  * Checks if a command is available on PATH
74
121
  */
75
122
  async function isCommandAvailable(command) {
76
123
  try {
77
- const whichCommand = process.platform === 'win32' ? 'where' : 'which';
78
- await execAsync(`${whichCommand} ${command}`);
124
+ await execAsync(`${getWhichCommand()} ${command}`);
79
125
  return true;
80
126
  }
81
127
  catch {
@@ -87,7 +133,7 @@ async function isCommandAvailable(command) {
87
133
  */
88
134
  async function getCommandVersion(command) {
89
135
  try {
90
- const { stdout } = await execAsync(`${command} --version 2>&1`);
136
+ const { stdout } = await execAsync(`${command} ${VERSION_FLAG} 2>&1`);
91
137
  const versionMatch = /(\d+\.\d+\.\d+)/.exec(stdout);
92
138
  return versionMatch?.[1];
93
139
  }
@@ -100,8 +146,7 @@ async function getCommandVersion(command) {
100
146
  */
101
147
  async function getCommandPath(command) {
102
148
  try {
103
- const whichCommand = process.platform === 'win32' ? 'where' : 'which';
104
- const { stdout } = await execAsync(`${whichCommand} ${command}`);
149
+ const { stdout } = await execAsync(`${getWhichCommand()} ${command}`);
105
150
  return stdout.trim().split('\n')[0];
106
151
  }
107
152
  catch {
@@ -114,7 +159,7 @@ async function getCommandPath(command) {
114
159
  */
115
160
  async function checkOpencodeCredentials() {
116
161
  try {
117
- const { stdout } = await execAsync('opencode auth list 2>&1', { timeout: 5000 });
162
+ const { stdout } = await execAsync('opencode auth list 2>&1', { timeout: CREDENTIAL_CHECK_TIMEOUT });
118
163
  // Parse output like "0 credentials" or "2 credentials"
119
164
  const match = /(\d+)\s*credentials?/i.exec(stdout);
120
165
  if (match?.[1] !== undefined) {
@@ -126,6 +171,100 @@ async function checkOpencodeCredentials() {
126
171
  return -1;
127
172
  }
128
173
  }
174
+ // ============================================================================
175
+ // GUI App Detection
176
+ // ============================================================================
177
+ /** Common application directories by platform */
178
+ const APP_DIRECTORIES = {
179
+ darwin: {
180
+ system: '/Applications',
181
+ user: join(homedir(), 'Applications'),
182
+ },
183
+ win32: {
184
+ programs: join(homedir(), 'AppData', 'Local', 'Programs'),
185
+ },
186
+ linux: {
187
+ system: '/usr/share',
188
+ user: join(homedir(), '.local', 'share'),
189
+ },
190
+ };
191
+ /** Common config directories */
192
+ const CONFIG_DIRECTORIES = {
193
+ gemini: join(homedir(), '.gemini'),
194
+ };
195
+ const GUI_APP_CONFIGS = {
196
+ antigravity: {
197
+ appPaths: {
198
+ darwin: [
199
+ join(APP_DIRECTORIES.darwin.system, 'Antigravity.app'),
200
+ join(APP_DIRECTORIES.darwin.system, 'Google Antigravity.app'),
201
+ join(APP_DIRECTORIES.darwin.user, 'Antigravity.app'),
202
+ join(APP_DIRECTORIES.darwin.user, 'Google Antigravity.app'),
203
+ ],
204
+ win32: [
205
+ join(APP_DIRECTORIES.win32.programs, 'Antigravity', 'Antigravity.exe'),
206
+ join(APP_DIRECTORIES.win32.programs, 'Google Antigravity', 'Antigravity.exe'),
207
+ ],
208
+ linux: [
209
+ join(APP_DIRECTORIES.linux.system, 'antigravity'),
210
+ join(APP_DIRECTORIES.linux.user, 'antigravity'),
211
+ ],
212
+ },
213
+ fallbackConfigDir: join(CONFIG_DIRECTORIES.gemini, 'antigravity'),
214
+ },
215
+ cursor: {
216
+ appPaths: {
217
+ darwin: [
218
+ join(APP_DIRECTORIES.darwin.system, 'Cursor.app'),
219
+ join(APP_DIRECTORIES.darwin.user, 'Cursor.app'),
220
+ ],
221
+ win32: [
222
+ join(APP_DIRECTORIES.win32.programs, 'Cursor', 'Cursor.exe'),
223
+ ],
224
+ linux: [
225
+ join(APP_DIRECTORIES.linux.system, 'cursor'),
226
+ join(APP_DIRECTORIES.linux.user, 'cursor'),
227
+ ],
228
+ },
229
+ },
230
+ };
231
+ /**
232
+ * Checks a single path for existence, returns path if found
233
+ */
234
+ async function checkPathExists(pathToCheck) {
235
+ try {
236
+ await stat(pathToCheck);
237
+ return pathToCheck;
238
+ }
239
+ catch {
240
+ return null;
241
+ }
242
+ }
243
+ /**
244
+ * Checks if a GUI app is installed by looking for app paths or config directory
245
+ * Uses parallel checking with early termination for better performance
246
+ */
247
+ async function checkGUIAppInstalled(appId) {
248
+ const config = GUI_APP_CONFIGS[appId];
249
+ if (!config) {
250
+ return { installed: false };
251
+ }
252
+ // Get paths for current platform
253
+ const platform = process.platform;
254
+ const appPaths = config.appPaths[platform] ?? config.appPaths.linux;
255
+ // Include fallback config directory in paths to check
256
+ const allPaths = config.fallbackConfigDir
257
+ ? [...appPaths, config.fallbackConfigDir]
258
+ : appPaths;
259
+ // Check all paths in parallel - first found wins
260
+ const results = await Promise.all(allPaths.map(checkPathExists));
261
+ // Find first successful result (maintains priority order)
262
+ const foundPath = results.find((result) => result !== null);
263
+ if (foundPath) {
264
+ return { installed: true, path: foundPath };
265
+ }
266
+ return { installed: false };
267
+ }
129
268
  /**
130
269
  * Checks Node.js version
131
270
  */
@@ -146,17 +285,63 @@ function checkNodeVersion() {
146
285
  fix: `Install Node.js ${String(MIN_NODE_VERSION)}+ from https://nodejs.org`,
147
286
  };
148
287
  }
288
+ /** IDs of GUI apps (derived from IDE_CHECKS) */
289
+ const GUI_APP_IDS = new Set(IDE_CHECKS.map(ide => ide.id));
149
290
  /**
150
- * Checks a single provider CLI
291
+ * Checks a single provider CLI or GUI app
151
292
  * Exported for use by other commands like 'setup'
152
293
  */
153
294
  export async function checkProviderCLI(provider) {
295
+ const isGUIApp = GUI_APP_IDS.has(provider.id);
296
+ // For GUI apps, first try CLI if available, then check app installation
297
+ if (isGUIApp) {
298
+ // Try CLI command first (some GUI apps like Cursor have CLI)
299
+ const cliAvailable = await isCommandAvailable(provider.command);
300
+ if (cliAvailable) {
301
+ // Parallelize version and path checks for GUI CLI
302
+ const [versionResult, pathResult] = await Promise.allSettled([
303
+ getCommandVersion(provider.command),
304
+ getCommandPath(provider.command),
305
+ ]);
306
+ const version = versionResult.status === 'fulfilled' ? versionResult.value : undefined;
307
+ const cmdPath = pathResult.status === 'fulfilled' ? pathResult.value : undefined;
308
+ const result = {
309
+ name: `${provider.name} (GUI)`,
310
+ status: 'pass',
311
+ message: version !== undefined ? `v${version}` : STATUS_MESSAGES.installed,
312
+ };
313
+ if (cmdPath !== undefined) {
314
+ result.details = cmdPath;
315
+ }
316
+ return result;
317
+ }
318
+ // Fall back to checking GUI app installation
319
+ const { installed, path: appPath } = await checkGUIAppInstalled(provider.id);
320
+ if (!installed) {
321
+ return {
322
+ name: `${provider.name} (GUI)`,
323
+ status: 'fail',
324
+ message: STATUS_MESSAGES.notDetected,
325
+ fix: provider.installHint,
326
+ };
327
+ }
328
+ const result = {
329
+ name: `${provider.name} (GUI)`,
330
+ status: 'pass',
331
+ message: STATUS_MESSAGES.installed,
332
+ };
333
+ if (appPath !== undefined) {
334
+ result.details = appPath;
335
+ }
336
+ return result;
337
+ }
338
+ // Standard CLI provider check
154
339
  const available = await isCommandAvailable(provider.command);
155
340
  if (!available) {
156
341
  return {
157
342
  name: `${provider.name} CLI (${provider.command})`,
158
343
  status: 'fail',
159
- message: 'not installed',
344
+ message: STATUS_MESSAGES.notInstalled,
160
345
  fix: provider.installHint,
161
346
  };
162
347
  }
@@ -170,7 +355,7 @@ export async function checkProviderCLI(provider) {
170
355
  const result = {
171
356
  name: `${provider.name} CLI (${provider.command})`,
172
357
  status: 'pass',
173
- message: version !== undefined ? `v${version}` : 'installed',
358
+ message: version !== undefined ? `v${version}` : STATUS_MESSAGES.installed,
174
359
  };
175
360
  if (cmdPath !== undefined) {
176
361
  result.details = cmdPath;
@@ -180,7 +365,9 @@ export async function checkProviderCLI(provider) {
180
365
  const credentialCount = await checkOpencodeCredentials();
181
366
  if (credentialCount === 0) {
182
367
  result.status = 'warn';
183
- result.message = version !== undefined ? `v${version} (no credentials)` : 'installed (no credentials)';
368
+ result.message = version !== undefined
369
+ ? `v${version} (${STATUS_MESSAGES.noCredentials})`
370
+ : `${STATUS_MESSAGES.installed} (${STATUS_MESSAGES.noCredentials})`;
184
371
  result.fix = 'Run: opencode auth login';
185
372
  }
186
373
  }
@@ -197,6 +384,14 @@ export async function checkAllProviders(specificProvider) {
197
384
  const results = await Promise.all(providers.map((provider) => checkProviderCLI(provider)));
198
385
  return results;
199
386
  }
387
+ /**
388
+ * Checks all IDE integrations
389
+ * Exported for use by other commands like 'init'
390
+ */
391
+ export async function checkAllIDEs() {
392
+ const results = await Promise.all(IDE_CHECKS.map((ide) => checkProviderCLI(ide)));
393
+ return results;
394
+ }
200
395
  /**
201
396
  * Checks .automatosx directory
202
397
  */
@@ -263,13 +458,28 @@ function formatCheckResult(result, verbose) {
263
458
  return line;
264
459
  }
265
460
  /**
266
- * Formats fix suggestions
461
+ * Computes summary statistics and collects fixes in a single pass
462
+ * More efficient than multiple filter() calls
267
463
  */
268
- function formatFixes(results) {
269
- const fixes = results
270
- .filter((checkResult) => checkResult.status === 'fail' && checkResult.fix !== undefined)
271
- .map((checkResult) => ` ${COLORS.dim}\u2022${COLORS.reset} ${checkResult.name}: ${COLORS.cyan}${checkResult.fix}${COLORS.reset}`);
272
- return fixes;
464
+ function computeCheckSummary(results) {
465
+ const summary = { passed: 0, failed: 0, warned: 0, fixes: [] };
466
+ for (const result of results) {
467
+ switch (result.status) {
468
+ case 'pass':
469
+ summary.passed++;
470
+ break;
471
+ case 'fail':
472
+ summary.failed++;
473
+ if (result.fix !== undefined) {
474
+ summary.fixes.push(` ${COLORS.dim}\u2022${COLORS.reset} ${result.name}: ${COLORS.cyan}${result.fix}${COLORS.reset}`);
475
+ }
476
+ break;
477
+ case 'warn':
478
+ summary.warned++;
479
+ break;
480
+ }
481
+ }
482
+ return summary;
273
483
  }
274
484
  /**
275
485
  * Doctor command handler
@@ -295,52 +505,76 @@ export async function doctorCommand(args, options) {
295
505
  if (!isJson) {
296
506
  output.push(formatCheckResult(nodeCheck, verbose));
297
507
  }
508
+ // Run all independent checks in parallel for better performance
509
+ const checkingSpecificProvider = specificProvider !== undefined;
510
+ // Build parallel check tasks
511
+ const parallelChecks = [
512
+ // Provider CLIs - always run
513
+ checkAllProviders(specificProvider).then(results => ({ category: 'providers', results })),
514
+ ];
515
+ // Add IDE and file system checks only when not checking specific provider
516
+ if (!checkingSpecificProvider) {
517
+ parallelChecks.push(checkAllIDEs().then(results => ({ category: 'ides', results })), Promise.all([checkAutomatosxDir(), checkWritePermissions()])
518
+ .then(results => ({ category: 'filesystem', results })));
519
+ }
520
+ // Execute all checks in parallel
521
+ const checkResults = await Promise.all(parallelChecks);
522
+ // Process results in order for consistent output
523
+ const resultsMap = new Map(checkResults.map(r => [r.category, r.results]));
298
524
  // Provider CLIs
525
+ const providerResults = resultsMap.get('providers') ?? [];
299
526
  if (!isJson) {
300
527
  output.push('');
301
528
  output.push(`${COLORS.bold}Provider CLIs${COLORS.reset}`);
302
529
  }
303
- const providerResults = await checkAllProviders(specificProvider);
304
530
  allResults.push(...providerResults);
305
531
  if (!isJson) {
306
532
  for (const result of providerResults) {
307
533
  output.push(formatCheckResult(result, verbose));
308
534
  }
309
535
  }
310
- // File System (only if not checking specific provider)
311
- if (specificProvider === undefined) {
536
+ // IDE Integrations
537
+ if (!checkingSpecificProvider) {
538
+ const ideResults = resultsMap.get('ides') ?? [];
539
+ if (!isJson) {
540
+ output.push('');
541
+ output.push(`${COLORS.bold}IDE Integrations${COLORS.reset}`);
542
+ }
543
+ allResults.push(...ideResults);
544
+ if (!isJson) {
545
+ for (const result of ideResults) {
546
+ output.push(formatCheckResult(result, verbose));
547
+ }
548
+ }
549
+ }
550
+ // File System
551
+ if (!checkingSpecificProvider) {
552
+ const fsResults = resultsMap.get('filesystem') ?? [];
312
553
  if (!isJson) {
313
554
  output.push('');
314
555
  output.push(`${COLORS.bold}File System${COLORS.reset}`);
315
556
  }
316
- // Run file system checks in parallel
317
- const [dirCheck, writeCheck] = await Promise.all([
318
- checkAutomatosxDir(),
319
- checkWritePermissions(),
320
- ]);
321
- allResults.push(dirCheck, writeCheck);
557
+ allResults.push(...fsResults);
322
558
  if (!isJson) {
323
- output.push(formatCheckResult(dirCheck, verbose));
324
- output.push(formatCheckResult(writeCheck, verbose));
559
+ for (const result of fsResults) {
560
+ output.push(formatCheckResult(result, verbose));
561
+ }
325
562
  }
326
563
  }
327
- // Summary
328
- const passed = allResults.filter((checkResult) => checkResult.status === 'pass').length;
329
- const failed = allResults.filter((checkResult) => checkResult.status === 'fail').length;
330
- const warned = allResults.filter((checkResult) => checkResult.status === 'warn').length;
564
+ // Compute summary in single pass (more efficient than multiple filter calls)
565
+ const { passed, failed, warned, fixes } = computeCheckSummary(allResults);
331
566
  if (!isJson) {
332
567
  output.push('');
333
568
  output.push('\u2500'.repeat(50));
334
- let summary = `Summary: ${COLORS.green}${String(passed)} passed${COLORS.reset}`;
569
+ let summaryLine = `Summary: ${COLORS.green}${String(passed)} passed${COLORS.reset}`;
335
570
  if (failed > 0) {
336
- summary += `, ${COLORS.red}${String(failed)} failed${COLORS.reset}`;
571
+ summaryLine += `, ${COLORS.red}${String(failed)} failed${COLORS.reset}`;
337
572
  }
338
573
  if (warned > 0) {
339
- summary += `, ${COLORS.yellow}${String(warned)} warnings${COLORS.reset}`;
574
+ summaryLine += `, ${COLORS.yellow}${String(warned)} warnings${COLORS.reset}`;
340
575
  }
341
- output.push(summary);
342
- // Fix suggestions
343
- const fixes = formatFixes(allResults);
576
+ output.push(summaryLine);
577
+ // Fix suggestions (already collected in summary computation)
344
578
  if (fixes.length > 0) {
345
579
  output.push('');
346
580
  output.push(`${COLORS.bold}Suggested Fixes:${COLORS.reset}`);