@monoes/monomindcli 2.10.13 → 2.10.15

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.
@@ -18,7 +18,19 @@
18
18
 
19
19
  const fs = require('fs');
20
20
  const path = require('path');
21
- const { appendAuditEvent } = require('../audit-log-writer.cjs');
21
+ // Audit logging must never be able to take the gates down with it. This
22
+ // handler runs inside hook-handler.cjs's fail-closed PreToolUse path, so a
23
+ // throw at module load — MODULE_NOT_FOUND when audit-log-writer.cjs is absent
24
+ // (issue #225) — blocked every Bash and Write call for the rest of the
25
+ // session, including the write that would have restored the file. The gate
26
+ // decisions themselves do not depend on the audit log, so degrade to a no-op
27
+ // writer and keep enforcing them.
28
+ let appendAuditEvent;
29
+ try {
30
+ ({ appendAuditEvent } = require('../audit-log-writer.cjs'));
31
+ } catch {
32
+ appendAuditEvent = () => {};
33
+ }
22
34
 
23
35
  // ─── monofence-ai integration (additional layer on top of regex gates) ───────
24
36
  //
@@ -28,11 +28,20 @@
28
28
  // Selection: MONODESIGN_BROWSER_DRIVER=monobrowse|puppeteer forces one;
29
29
  // otherwise monobrowse is tried first and puppeteer is the fallback.
30
30
 
31
- import { Socket } from 'node:net';
31
+ import { createServer } from 'node:net';
32
+ import { mkdtempSync, rmSync } from 'node:fs';
33
+ import { tmpdir } from 'node:os';
34
+ import { join } from 'node:path';
32
35
 
33
36
  const DRIVER_ENV = 'MONODESIGN_BROWSER_DRIVER';
34
- const CDP_PORT_RELEASE_TIMEOUT_MS = 5_000;
37
+ // Windows CI teardown is the slow case: Chrome acknowledges Browser.close long
38
+ // before the process exits and hands the socket back, and closeBrowser()'s
39
+ // force-kill safety net is itself a deferred 1s timer. 5s is comfortable
40
+ // locally but cuts into a loaded runner's teardown, so give CI more runway —
41
+ // same reasoning as launchTimeoutMs below.
42
+ const CDP_PORT_RELEASE_TIMEOUT_MS = process.env.CI ? 15_000 : 5_000;
35
43
  const CDP_PORT_RELEASE_POLL_MS = 25;
44
+ const PROFILE_CLEANUP_RETRY_MS = 2_000;
36
45
 
37
46
  // Ports we launch headless Chrome on for detection runs. Deliberately away
38
47
  // from 9222 (the default `monomind browse` port): we must never attach to a
@@ -60,25 +69,36 @@ function withTimeout(promise, ms, label) {
60
69
  return Promise.race([promise, timeout]).finally(() => clearTimeout(handle));
61
70
  }
62
71
 
63
- function isPortListening(port) {
72
+ // "Released" has to mean BINDABLE, not merely unreachable. A connect probe
73
+ // stops succeeding as soon as Chrome's listener socket closes, which happens
74
+ // early in its shutdown — while the process is still alive holding both the
75
+ // port and the --user-data-dir singleton lock for this port. On Windows that
76
+ // gap is wide and the socket stays unbindable across it (node does not set
77
+ // SO_REUSEADDR there), so close() reported success and the next launch on the
78
+ // same forced port sat until its timeout: "Chrome failed to start on port N
79
+ // within 30000ms". Binding is the question the next launch actually asks, so
80
+ // ask it directly. A listener that never accepted a connection leaves no
81
+ // TIME_WAIT behind, so probing this way does not itself hold the port.
82
+ function isPortBindable(port) {
64
83
  return new Promise((resolve) => {
65
- const socket = new Socket();
66
- const done = (listening) => {
67
- socket.removeAllListeners();
68
- socket.destroy();
69
- resolve(listening);
70
- };
71
- socket.once('connect', () => done(true));
72
- socket.once('error', () => done(false));
73
- socket.setTimeout(250, () => done(false));
74
- socket.connect(port, '127.0.0.1');
84
+ const server = createServer();
85
+ server.once('error', () => resolve(false));
86
+ server.listen(port, '127.0.0.1', () => server.close(() => resolve(true)));
75
87
  });
76
88
  }
77
89
 
90
+ function removeProfileDir(dir) {
91
+ try {
92
+ rmSync(dir, { recursive: true, force: true });
93
+ } catch {
94
+ /* reclaimed by the OS's temp cleanup instead */
95
+ }
96
+ }
97
+
78
98
  async function waitForCdpPortRelease(port) {
79
99
  const deadline = Date.now() + CDP_PORT_RELEASE_TIMEOUT_MS;
80
100
  while (Date.now() < deadline) {
81
- if (!(await isPortListening(port))) return;
101
+ if (await isPortBindable(port)) return;
82
102
  await new Promise(resolve => setTimeout(resolve, CDP_PORT_RELEASE_POLL_MS));
83
103
  }
84
104
  throw new Error(`Chrome did not release CDP port ${port} within ${CDP_PORT_RELEASE_TIMEOUT_MS}ms`);
@@ -178,7 +198,20 @@ async function launchMonobrowseBrowser(options = {}) {
178
198
  // browser starts fine, just later. Give CI more runway; local dev keeps
179
199
  // the tighter default so a genuinely broken launch still fails fast.
180
200
  const launchTimeoutMs = options.launchTimeoutMs ?? (process.env.CI ? 30000 : undefined);
181
- const launchedPort = await mb.launchBrowser({ port, headless, args: launchArgs, launchTimeoutMs });
201
+ // Throwaway profile per launch. monobrowse defaults --user-data-dir to
202
+ // tmpdir()/monomind-browser-<port>, which is right for `monomind browse`
203
+ // (a later process reattaches to the same session by port) but wrong here:
204
+ // detection launches are stateless, and keying the profile on the port
205
+ // means two launches on the SAME port share one profile. Chrome enforces
206
+ // single-instance-per-profile, so the second launch rendezvouses with the
207
+ // first instead of starting its own — it hands over its command line and
208
+ // exits without ever opening a debugging port, which surfaces as "Chrome
209
+ // failed to start on port N" after the full launch timeout. Windows is
210
+ // where this bites: its singleton lock survives the previous Chrome being
211
+ // force-killed, and outlives the port being released. A unique dir removes
212
+ // the sharing entirely rather than racing the lock's cleanup.
213
+ const userDataDir = mkdtempSync(join(tmpdir(), 'monodesign-cdp-'));
214
+ const launchedPort = await mb.launchBrowser({ port, headless, args: launchArgs, launchTimeoutMs, userDataDir });
182
215
  // Control connection (to the initial about:blank tab) — used for lifecycle
183
216
  // commands; detection pages get their own dedicated connections.
184
217
  const control = await mb.connectToTarget(launchedPort);
@@ -217,6 +250,14 @@ async function launchMonobrowseBrowser(options = {}) {
217
250
  await waitForCdpPortRelease(launchedPort);
218
251
  } finally {
219
252
  control.client.close();
253
+ // Best effort, twice: Chrome is still flushing profile data when the
254
+ // port comes back, so an immediate delete gets a few files recreated
255
+ // under it. The unref'd retry lands after that (same pattern as
256
+ // monobrowse's own post-close force-kill net) and never holds the
257
+ // process open. Whatever still survives is a few KB under tmpdir that
258
+ // nothing reuses, so neither attempt may fail close().
259
+ removeProfileDir(userDataDir);
260
+ setTimeout(() => removeProfileDir(userDataDir), PROFILE_CLEANUP_RETRY_MS).unref?.();
220
261
  }
221
262
  },
222
263
  };
@@ -1 +1 @@
1
- {"version":3,"file":"doctor-project-checks.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor-project-checks.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkBH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAQ1D,YAAY,EAAE,WAAW,EAAE,CAAC;AAE5B,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC,CA4B5D;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,CAkBhE;AAED;;2CAE2C;AAC3C,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,WAAW,CAAC,CAqDtE;AAeD;;;wEAGwE;AACxE,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,WAAW,CAAC,CAgElE;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC,CAiDzD;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC,CAuC5D;AAwCD,wBAAsB,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CAe3D;AAED,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,WAAW,CAAC,CA6EpE;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,CAkB9D;AAsFD,wBAAsB,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC,CAkBxD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,CA+B9D;AAiFD,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoBnE;AA2CD,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,WAAW,CAAC,CAqCnE;AA2BD;6EAC6E;AAC7E,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC,CA2B7D;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC,CA0D/D;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoF/D;AAmBD;;;;;GAKG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoDlE;AAED;;GAEG;AACH,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,WAAW,CAAC,CAwCvE;AAED;;GAEG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,WAAW,CAAC,CA6BnE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,WAAW,CAAC,CAcrE;AAED;;sBAEsB;AACtB,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAyB7D;AAED,6EAA6E;AAC7E,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAW1D;AAiBD;;;;;yDAKyD;AACzD,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAoBtE"}
1
+ {"version":3,"file":"doctor-project-checks.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor-project-checks.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAmBH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAQ1D,YAAY,EAAE,WAAW,EAAE,CAAC;AAE5B,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC,CA4B5D;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,CAkBhE;AAED;;2CAE2C;AAC3C,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,WAAW,CAAC,CAqDtE;AAeD;;;wEAGwE;AACxE,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,WAAW,CAAC,CAgElE;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC,CAiDzD;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC,CAuC5D;AAwCD,wBAAsB,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CAe3D;AAUD,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,WAAW,CAAC,CAmJpE;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,CAkB9D;AA4GD,wBAAsB,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC,CAkBxD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,CA+B9D;AAiFD,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoBnE;AA2CD,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,WAAW,CAAC,CAqCnE;AA2BD;6EAC6E;AAC7E,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC,CA2B7D;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC,CA0D/D;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoF/D;AAmBD;;;;;GAKG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoDlE;AAED;;GAEG;AACH,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,WAAW,CAAC,CAwCvE;AAED;;GAEG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,WAAW,CAAC,CA6BnE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,WAAW,CAAC,CAcrE;AAED;;sBAEsB;AACtB,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAyB7D;AAED,6EAA6E;AAC7E,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAW1D;AAiBD;;;;;yDAKyD;AACzD,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAoBtE"}
@@ -8,6 +8,7 @@ import { homedir } from 'node:os';
8
8
  import { dirname, join } from 'node:path';
9
9
  import { fileURLToPath } from 'node:url';
10
10
  import { DOCTOR_TRACKED_HELPERS } from '../init/helpers-generator.js';
11
+ import { classifyNativeModuleError } from '../utils/native-error.js';
11
12
  import { MAX_DOCTOR_CONFIG_BYTES, MAX_DOCTOR_GITIGNORE_BYTES, MAX_DOCTOR_HELPER_BYTES, MAX_DOCTOR_PKG_BYTES, } from './doctor-env-checks.js';
12
13
  export async function checkConfigFile() {
13
14
  const jsonPaths = ['.monomind/config.json', 'monomind.config.json', '.monomind.json'];
@@ -241,7 +242,7 @@ export async function checkApiKeys() {
241
242
  name: 'API Keys',
242
243
  status: 'warn',
243
244
  message: `Found: ${found.join(', ')} (no Claude key)`,
244
- fix: 'export ANTHROPIC_API_KEY=your_key',
245
+ fix: 'export ANTHROPIC_API_KEY=...',
245
246
  };
246
247
  }
247
248
  return {
@@ -347,14 +348,96 @@ export async function checkMonograph() {
347
348
  fix: 'npm install -g monomind@latest',
348
349
  };
349
350
  }
351
+ function formatAge(ms) {
352
+ // Filesystem mtime can round to whole seconds and land a hair ahead of
353
+ // Date.now() for a file written moments ago — clamp so that never reads
354
+ // as a negative, nonsensical age.
355
+ const minutes = Math.floor(Math.max(0, ms) / 60000);
356
+ return minutes < 60 ? `${minutes}m` : `${Math.floor(minutes / 60)}h`;
357
+ }
350
358
  export async function checkMonographFreshness() {
351
359
  try {
352
360
  const cwd = process.cwd();
353
361
  const dbPath = join(cwd, '.monomind', 'monograph.db');
354
- const lockPath = join(cwd, '.monomind', 'graph', '.rebuild-lock');
362
+ const lockPath = join(cwd, '.monomind', 'graph', 'build.lock');
355
363
  const statsPath = join(cwd, '.monomind', 'graph', 'stats.json');
364
+ const logPath = join(cwd, '.monomind', 'graph', 'build.log');
356
365
  const hasDb = existsSync(dbPath);
357
366
  if (!hasDb && !existsSync(statsPath)) {
367
+ // No graph yet — but that's one of three very different situations: a
368
+ // build is genuinely still running, one already ran and crashed (e.g.
369
+ // executor.ts's initKnowledgeGraph or graphify-freshen.cjs's detached
370
+ // spawn hit a native-module ABI mismatch), or nothing was ever
371
+ // attempted. Both spawners share this same build.lock/build.log pair,
372
+ // so this one check covers either origin.
373
+ //
374
+ // Lock existence (not freshness) is the right signal here: both
375
+ // spawners write build.lock with their OWN pid (the short-lived parent
376
+ // that immediately exits after spawning a detached child — not the
377
+ // child actually doing the build, so checking that pid's liveness
378
+ // would be checking the wrong process) and unlink it in a `finally`
379
+ // that runs on both success and a thrown/rejected build — so it's only
380
+ // ever left behind while the child is still actually running, or in
381
+ // the rare case of a hard OS-level kill that bypassed the `finally`.
382
+ // A large monorepo's first index can legitimately run well past any
383
+ // fixed "freshness" window, so age must not turn a live build into a
384
+ // false failure report. Neither spawner passes buildAsync an
385
+ // onProgress callback, so a clean run writes nothing to build.log
386
+ // until it's done — there's no heartbeat to check the log against, so
387
+ // this is worded to cover both "still running" and "was killed
388
+ // without cleaning up" rather than asserting liveness that can't
389
+ // actually be confirmed from disk.
390
+ if (existsSync(lockPath)) {
391
+ const ageMs = (() => {
392
+ try {
393
+ return Date.now() - statSync(lockPath).mtimeMs;
394
+ }
395
+ catch {
396
+ return 0;
397
+ }
398
+ })();
399
+ return {
400
+ name: 'Graph freshness',
401
+ status: 'warn',
402
+ message: `Monograph build in progress, or was interrupted — started ${formatAge(ageMs)} ago`,
403
+ };
404
+ }
405
+ if (existsSync(logPath)) {
406
+ let logTail = '';
407
+ try {
408
+ const raw = readFileSync(logPath, 'utf8');
409
+ logTail = raw.length > 4000 ? raw.slice(-4000) : raw;
410
+ }
411
+ catch {
412
+ /* unreadable log — treat as no evidence, fall through below */
413
+ }
414
+ // build.log only proves a build ran at some point — a *successful*
415
+ // build also writes into it before producing monograph.db, so its
416
+ // mere existence isn't evidence of failure (e.g. monograph.db was
417
+ // deleted afterward, leaving a clean run's log behind). Only treat
418
+ // this as a failure when the tail actually looks error-shaped;
419
+ // otherwise this isn't distinguishable from "never built" and
420
+ // should read that way rather than as an unsupported "fail".
421
+ const classified = logTail ? classifyNativeModuleError(logTail) : null;
422
+ const looksLikeFailure = classified !== null || /error|exception|traceback/i.test(logTail);
423
+ if (looksLikeFailure) {
424
+ let logAgeStr = '';
425
+ try {
426
+ logAgeStr = ` (${formatAge(Date.now() - statSync(logPath).mtimeMs)} ago)`;
427
+ }
428
+ catch {
429
+ /* ignore */
430
+ }
431
+ return classified
432
+ ? { name: 'Graph freshness', status: 'fail', message: `${classified}${logAgeStr}` }
433
+ : {
434
+ name: 'Graph freshness',
435
+ status: 'fail',
436
+ message: `Monograph build failed${logAgeStr} — see .monomind/graph/build.log for details`,
437
+ fix: 'cat .monomind/graph/build.log',
438
+ };
439
+ }
440
+ }
358
441
  return {
359
442
  name: 'Graph freshness',
360
443
  status: 'warn',
@@ -362,6 +445,10 @@ export async function checkMonographFreshness() {
362
445
  fix: 'mcp__monomind__monograph_build codeOnly:true',
363
446
  };
364
447
  }
448
+ // Deliberately NOT folding build.lock's mtime into this — a lock only
449
+ // means "a build started," not "the graph was built at this time," and
450
+ // counting it here would report a stale graph as freshly-built the
451
+ // moment a rebuild kicks off, before it's actually produced anything.
365
452
  let buildMs = 0;
366
453
  if (hasDb) {
367
454
  try {
@@ -371,12 +458,6 @@ export async function checkMonographFreshness() {
371
458
  /* ignore */
372
459
  }
373
460
  }
374
- try {
375
- buildMs = Math.max(buildMs, statSync(lockPath).mtimeMs);
376
- }
377
- catch {
378
- /* ignore */
379
- }
380
461
  try {
381
462
  buildMs = Math.max(buildMs, statSync(statsPath).mtimeMs);
382
463
  }
@@ -402,8 +483,7 @@ export async function checkMonographFreshness() {
402
483
  catch {
403
484
  /* git unavailable */
404
485
  }
405
- const ageMinutes = Math.floor((Date.now() - buildMs) / 60000);
406
- const ageStr = ageMinutes < 60 ? `${ageMinutes}m ago` : `${Math.floor(ageMinutes / 60)}h ago`;
486
+ const ageStr = `${formatAge(Date.now() - buildMs)} ago`;
407
487
  if (commitsBehind === 0)
408
488
  return {
409
489
  name: 'Graph freshness',
@@ -503,11 +583,33 @@ function _allTrackedHelperNames() {
503
583
  }
504
584
  return names;
505
585
  }
586
+ // Top-level helpers the bundle ships. Their mere ABSENCE is a defect no
587
+ // matter which one it is — handlers/ scripts require() some of them at module
588
+ // load, and a missing one fails the hook closed (issue #225: doctor reported
589
+ // "helpers match bundled version" while audit-log-writer.cjs was absent and
590
+ // every PreToolUse hook was crashing). Existence is checked for all of them;
591
+ // content is still only hash-compared for _allTrackedHelperNames(), because
592
+ // the rest are user-editable scaffolds (memory.cjs, session.cjs) whose local
593
+ // edits are legitimate and must not be reported as staleness.
594
+ function _bundledTopLevelHelperNames() {
595
+ const bundledDir = _resolveBundledHelper(join('.claude', 'helpers'));
596
+ if (!bundledDir)
597
+ return [];
598
+ try {
599
+ return readdirSync(bundledDir, { withFileTypes: true })
600
+ .filter((e) => e.isFile() && !e.name.startsWith('._'))
601
+ .map((e) => e.name);
602
+ }
603
+ catch {
604
+ return [];
605
+ }
606
+ }
506
607
  async function _detectStaleHelpers() {
507
608
  const stale = [];
508
609
  const missing = [];
509
610
  const crypto = await import('node:crypto');
510
- for (const name of _allTrackedHelperNames()) {
611
+ const hashChecked = new Set(_allTrackedHelperNames());
612
+ for (const name of new Set([..._allTrackedHelperNames(), ..._bundledTopLevelHelperNames()])) {
511
613
  const bundled = _resolveBundledHelper(join('.claude', 'helpers', name));
512
614
  // Oversized-bundled is reported the same as missing-bundled: doctor can't
513
615
  // verify freshness either way, and silently excluding it from both `stale`
@@ -522,6 +624,8 @@ async function _detectStaleHelpers() {
522
624
  stale.push(name);
523
625
  continue;
524
626
  } // bundled has it, project doesn't — needs creating
627
+ if (!hashChecked.has(name))
628
+ continue; // existence-only (see above)
525
629
  if (statSync(local).size > MAX_DOCTOR_HELPER_BYTES)
526
630
  continue;
527
631
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"doctor-project-checks.js","sourceRoot":"","sources":["../../../src/commands/doctor-project-checks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor-project-checks.js","sourceRoot":"","sources":["../../../src/commands/doctor-project-checks.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/commands/mcp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AAiqB1E,eAAO,MAAM,WAAW,EAAE,OA4JzB,CAAC;AA2IF,eAAO,MAAM,UAAU,EAAE,OAoDxB,CAAC;eAEa,UAAU"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/commands/mcp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AAiqB1E,eAAO,MAAM,WAAW,EAAE,OA4JzB,CAAC;AAuJF,eAAO,MAAM,UAAU,EAAE,OAoDxB,CAAC;eAEa,UAAU"}
@@ -817,7 +817,19 @@ const verifyCommand = {
817
817
  try {
818
818
  const { spawnSync } = await import('node:child_process');
819
819
  const result = spawnSync('claude', ['mcp', 'list'], { encoding: 'utf8', timeout: 5000 });
820
- if (result.error || result.status !== 0) {
820
+ const claudeMissing = result.error?.code === 'ENOENT';
821
+ if (claudeMissing) {
822
+ // Not a failure: this sandbox may not have `claude` on PATH at all (e.g. a
823
+ // fresh CI/container shell), and a project with .mcp.json gets monomind
824
+ // registered per-project by Claude Code itself — no user-level `claude mcp
825
+ // add` or PATH entry required.
826
+ checks.push({
827
+ label: 'claude mcp registration',
828
+ ok: true,
829
+ detail: 'claude CLI not on PATH — skipped, not an error (a project .mcp.json registers monomind automatically; user-level `claude mcp add` is only needed without one)',
830
+ });
831
+ }
832
+ else if (result.error || result.status !== 0) {
821
833
  checks.push({
822
834
  label: 'claude mcp registration',
823
835
  ok: false,
@@ -839,8 +851,8 @@ const verifyCommand = {
839
851
  catch {
840
852
  checks.push({
841
853
  label: 'claude mcp registration',
842
- ok: false,
843
- detail: 'claude CLI not found — install Claude Code or register manually',
854
+ ok: true,
855
+ detail: 'claude CLI not found — skipped, not an error (install Claude Code or register manually if needed)',
844
856
  });
845
857
  }
846
858
  // Render