ai-mind-map 1.4.0 → 1.4.2

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/README.md CHANGED
@@ -165,13 +165,13 @@ After running `install`, each agent's config file contains:
165
165
  "mcpServers": {
166
166
  "ai-mind-map": {
167
167
  "command": "npx",
168
- "args": ["-y", "ai-mind-map-server"]
168
+ "args": ["-y", "ai-mind-map"]
169
169
  }
170
170
  }
171
171
  }
172
172
  ```
173
173
 
174
- This tells the agent: *"When you need MCP tools, run `npx ai-mind-map-server`"*. It downloads from npm on first use, then uses cache.
174
+ This tells the agent: *"When you need MCP tools, run `npx ai-mind-map`"*. It downloads from npm on first use, then uses cache.
175
175
 
176
176
  ### Manual Setup (If You Prefer)
177
177
 
@@ -185,7 +185,7 @@ If you want to configure manually, add this to your agent's config:
185
185
  "mcpServers": {
186
186
  "ai-mind-map": {
187
187
  "command": "npx",
188
- "args": ["-y", "ai-mind-map-server"]
188
+ "args": ["-y", "ai-mind-map"]
189
189
  }
190
190
  }
191
191
  }
@@ -200,7 +200,7 @@ If you want to configure manually, add this to your agent's config:
200
200
  "mcpServers": {
201
201
  "ai-mind-map": {
202
202
  "command": "npx",
203
- "args": ["-y", "ai-mind-map-server"]
203
+ "args": ["-y", "ai-mind-map"]
204
204
  }
205
205
  }
206
206
  }
@@ -215,7 +215,7 @@ If you want to configure manually, add this to your agent's config:
215
215
  "mcp.servers": {
216
216
  "ai-mind-map": {
217
217
  "command": "npx",
218
- "args": ["-y", "ai-mind-map-server"]
218
+ "args": ["-y", "ai-mind-map"]
219
219
  }
220
220
  }
221
221
  }
@@ -230,7 +230,7 @@ If you want to configure manually, add this to your agent's config:
230
230
  "mcpServers": {
231
231
  "ai-mind-map": {
232
232
  "command": "npx",
233
- "args": ["-y", "ai-mind-map-server"]
233
+ "args": ["-y", "ai-mind-map"]
234
234
  }
235
235
  }
236
236
  }
@@ -245,7 +245,7 @@ If you want to configure manually, add this to your agent's config:
245
245
  "mcp.servers": {
246
246
  "ai-mind-map": {
247
247
  "command": "npx",
248
- "args": ["-y", "ai-mind-map-server"]
248
+ "args": ["-y", "ai-mind-map"]
249
249
  }
250
250
  }
251
251
  }
@@ -257,7 +257,7 @@ If you want to configure manually, add this to your agent's config:
257
257
 
258
258
  ```
259
259
  Command: npx
260
- Args: -y ai-mind-map-server
260
+ Args: -y ai-mind-map
261
261
  Transport: stdio
262
262
  ```
263
263
  </details>
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AA+hBH;;;;;GAKG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAuEnD;AAMD;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAkCrD;AAMD,wCAAwC;AACxC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,WAAW,EAAE,CAqB1C;AAaD;;;;;;;;;GASG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAwP/C;AA2GD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAoG3D"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AA+5BH;;;;;GAKG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAsHnD;AAMD;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAkCrD;AAMD,wCAAwC;AACxC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,WAAW,EAAE,CAqB1C;AAaD;;;;;;;;;GASG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CA+R/C;AA2GD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAoG3D"}
package/dist/install.js CHANGED
@@ -85,7 +85,7 @@ const IS_MAC = platform() === 'darwin';
85
85
  * Resolve how to run the MCP server.
86
86
  *
87
87
  * Returns either:
88
- * - { mode: 'npx' } — use `npx ai-mind-map-server` (stable, no hardcoded path)
88
+ * - { mode: 'npx' } — use `npx ai-mind-map` (stable, no hardcoded path)
89
89
  * - { mode: 'global', path: ... } — globally installed, use absolute path to dist/index.js
90
90
  * - { mode: 'local', path: ... } — git clone, use absolute path to dist/index.js
91
91
  */
@@ -164,7 +164,7 @@ function mcpServerEntry(serverEntry) {
164
164
  return {
165
165
  'ai-mind-map': {
166
166
  command: 'npx',
167
- args: ['-y', 'ai-mind-map-server'],
167
+ args: ['-y', NPM_PACKAGE_NAME],
168
168
  env: {},
169
169
  },
170
170
  };
@@ -198,6 +198,337 @@ function writeJsonFile(filePath, data) {
198
198
  }
199
199
  writeFileSync(filePath, JSON.stringify(data, null, 2) + '\n', 'utf-8');
200
200
  }
201
+ // ============================================================
202
+ // Robustness: Dynamic Config Path Detection
203
+ // ============================================================
204
+ /** The npm package name — single source of truth to prevent wrong-name bugs */
205
+ const NPM_PACKAGE_NAME = 'ai-mind-map';
206
+ /**
207
+ * Dynamically find the correct MCP config file for Gemini/Antigravity.
208
+ * Scans candidate files and uses whichever already has mcpServers defined.
209
+ * Falls back to mcp_config.json (Gemini's primary config file).
210
+ */
211
+ function findGeminiMcpConfigPath() {
212
+ const configDir = path.join(HOME, '.gemini', 'config');
213
+ // Order matters: prefer mcp_config.json (Gemini's primary), then mcp.json
214
+ const candidates = ['mcp_config.json', 'mcp.json'];
215
+ for (const file of candidates) {
216
+ const filePath = path.join(configDir, file);
217
+ const content = readJsonFile(filePath);
218
+ if (content?.mcpServers && typeof content.mcpServers === 'object') {
219
+ return filePath;
220
+ }
221
+ }
222
+ // Default to mcp_config.json (confirmed working with Firebase/SpriteAI)
223
+ return path.join(configDir, 'mcp_config.json');
224
+ }
225
+ /**
226
+ * Dynamically find the MCP config file for VS Code / Copilot.
227
+ * VS Code may store MCP config in settings.json or a dedicated mcp.json.
228
+ */
229
+ function findVSCodeMcpConfigPath() {
230
+ const settingsDir = getVSCodeSettingsDir();
231
+ // Check for dedicated mcp.json first, then settings.json
232
+ const candidates = [
233
+ path.join(settingsDir, 'mcp.json'),
234
+ path.join(settingsDir, 'settings.json'),
235
+ ];
236
+ for (const filePath of candidates) {
237
+ const content = readJsonFile(filePath);
238
+ if (content?.['mcp.servers'] && typeof content['mcp.servers'] === 'object') {
239
+ return filePath;
240
+ }
241
+ }
242
+ return path.join(settingsDir, 'settings.json');
243
+ }
244
+ /**
245
+ * Verify that a config file was written correctly after install.
246
+ * Checks: file exists, entry exists under correct key, package name is correct.
247
+ */
248
+ function verifyConfigEntry(configPath, mcpKey) {
249
+ // 1. Can we read the file?
250
+ const config = readJsonFile(configPath);
251
+ if (!config) {
252
+ return { ok: false, error: `Config file not readable: ${configPath}` };
253
+ }
254
+ // 2. Does our key exist?
255
+ const servers = config[mcpKey];
256
+ if (!servers || !servers['ai-mind-map']) {
257
+ return { ok: false, error: `Entry 'ai-mind-map' not found under '${mcpKey}' in ${configPath}` };
258
+ }
259
+ // 3. Is the package name correct?
260
+ const entry = servers['ai-mind-map'];
261
+ const args = entry.args;
262
+ if (args && args.includes('ai-mind-map-server')) {
263
+ return { ok: false, error: `Wrong package name 'ai-mind-map-server' in args (should be '${NPM_PACKAGE_NAME}')` };
264
+ }
265
+ // 4. Is the command valid?
266
+ const command = entry.command;
267
+ if (!command || (command !== 'npx' && command !== 'node')) {
268
+ return { ok: false, error: `Invalid command '${command}' (expected 'npx' or 'node')` };
269
+ }
270
+ return { ok: true };
271
+ }
272
+ /**
273
+ * Auto-fix common config problems in a config file.
274
+ * Returns true if any fixes were applied.
275
+ */
276
+ function autoFixConfig(configPath, mcpKey) {
277
+ const config = readJsonFile(configPath);
278
+ if (!config)
279
+ return { ok: false, error: 'Cannot read config file' };
280
+ const servers = config[mcpKey];
281
+ if (!servers || !servers['ai-mind-map'])
282
+ return { ok: true }; // nothing to fix
283
+ const entry = servers['ai-mind-map'];
284
+ let fixed = false;
285
+ // Fix 1: Wrong package name
286
+ const args = entry.args;
287
+ if (args) {
288
+ const idx = args.indexOf('ai-mind-map-server');
289
+ if (idx !== -1) {
290
+ args[idx] = NPM_PACKAGE_NAME;
291
+ entry.args = args;
292
+ fixed = true;
293
+ }
294
+ }
295
+ // Fix 2: Add version metadata
296
+ if (!entry._version) {
297
+ entry._version = getPackageVersion();
298
+ entry._installedAt = new Date().toISOString();
299
+ fixed = true;
300
+ }
301
+ if (fixed) {
302
+ servers['ai-mind-map'] = entry;
303
+ config[mcpKey] = servers;
304
+ writeJsonFile(configPath, config);
305
+ }
306
+ return { ok: true, autoFixed: fixed };
307
+ }
308
+ /** Get the current package version */
309
+ function getPackageVersion() {
310
+ try {
311
+ const pkgPath = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', 'package.json');
312
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
313
+ return pkg.version ?? '0.0.0';
314
+ }
315
+ catch {
316
+ return '0.0.0';
317
+ }
318
+ }
319
+ // ============================================================
320
+ // Robustness: Server Smoke Test
321
+ // ============================================================
322
+ /**
323
+ * Spawn the MCP server as a child process and verify it responds correctly.
324
+ * Returns diagnostic info about the server's health.
325
+ */
326
+ async function smokeTestServer() {
327
+ const result = { ok: false, serverStarts: false, toolCount: 0, hasInstructions: false, error: '' };
328
+ try {
329
+ const runConfig = getServerRunConfig();
330
+ let cmd;
331
+ let args;
332
+ if (runConfig.mode === 'npx') {
333
+ cmd = IS_WIN ? 'npx.cmd' : 'npx';
334
+ args = ['-y', NPM_PACKAGE_NAME];
335
+ }
336
+ else {
337
+ cmd = 'node';
338
+ args = [runConfig.path];
339
+ }
340
+ // We'll try to spawn the server with a timeout
341
+ const { spawn } = await import('node:child_process');
342
+ return new Promise((resolve) => {
343
+ const timeout = setTimeout(() => {
344
+ child.kill();
345
+ result.error = 'Server did not respond within 10 seconds';
346
+ resolve(result);
347
+ }, 10_000);
348
+ const child = spawn(cmd, args, {
349
+ stdio: ['pipe', 'pipe', 'pipe'],
350
+ env: { ...process.env, MINDMAP_PROJECT_ROOT: process.cwd() },
351
+ });
352
+ let stdout = '';
353
+ child.stdout.on('data', (data) => {
354
+ stdout += data.toString();
355
+ });
356
+ child.stderr.on('data', (data) => {
357
+ const line = data.toString();
358
+ // Server logs to stderr via MCP protocol
359
+ if (line.includes('MCP tools registered') || line.includes('tools registered')) {
360
+ result.serverStarts = true;
361
+ }
362
+ if (line.includes('instructions')) {
363
+ result.hasInstructions = true;
364
+ }
365
+ });
366
+ // Send initialize request via stdin (MCP JSON-RPC over stdio)
367
+ const initRequest = JSON.stringify({
368
+ jsonrpc: '2.0',
369
+ id: 1,
370
+ method: 'initialize',
371
+ params: {
372
+ protocolVersion: '2024-11-05',
373
+ capabilities: {},
374
+ clientInfo: { name: 'smoke-test', version: '1.0.0' },
375
+ },
376
+ });
377
+ child.stdin.write(initRequest + '\n');
378
+ // Give it a moment then send tools/list
379
+ setTimeout(() => {
380
+ const toolsRequest = JSON.stringify({
381
+ jsonrpc: '2.0',
382
+ id: 2,
383
+ method: 'tools/list',
384
+ params: {},
385
+ });
386
+ child.stdin.write(toolsRequest + '\n');
387
+ }, 2000);
388
+ // After 5 seconds, check what we got
389
+ setTimeout(() => {
390
+ clearTimeout(timeout);
391
+ child.kill();
392
+ // Try to parse responses from stdout
393
+ try {
394
+ const lines = stdout.split('\n').filter(l => l.trim());
395
+ for (const line of lines) {
396
+ try {
397
+ const msg = JSON.parse(line);
398
+ if (msg.id === 1 && msg.result) {
399
+ result.serverStarts = true;
400
+ if (msg.result.instructions) {
401
+ result.hasInstructions = true;
402
+ }
403
+ }
404
+ if (msg.id === 2 && msg.result?.tools) {
405
+ result.toolCount = msg.result.tools.length;
406
+ }
407
+ }
408
+ catch {
409
+ // skip unparseable lines
410
+ }
411
+ }
412
+ }
413
+ catch {
414
+ // parsing failed
415
+ }
416
+ result.ok = result.serverStarts;
417
+ resolve(result);
418
+ }, 5000);
419
+ child.on('error', (err) => {
420
+ clearTimeout(timeout);
421
+ result.error = `Failed to start: ${err.message}`;
422
+ resolve(result);
423
+ });
424
+ });
425
+ }
426
+ catch (err) {
427
+ result.error = `Smoke test error: ${err instanceof Error ? err.message : String(err)}`;
428
+ return result;
429
+ }
430
+ }
431
+ // ============================================================
432
+ // Robustness: Misconfig Detection & Migration
433
+ // ============================================================
434
+ /**
435
+ * Check for common misconfigurations and return diagnostics.
436
+ * Called by `doctor` to detect problems.
437
+ */
438
+ function detectMisconfigs() {
439
+ const issues = [];
440
+ // Check 1: Gemini config in wrong file (mcp.json instead of mcp_config.json)
441
+ const geminiWrongFile = path.join(HOME, '.gemini', 'config', 'mcp.json');
442
+ const geminiRightFile = path.join(HOME, '.gemini', 'config', 'mcp_config.json');
443
+ const wrongConfig = readJsonFile(geminiWrongFile);
444
+ if (wrongConfig?.mcpServers) {
445
+ const servers = wrongConfig.mcpServers;
446
+ if (servers['ai-mind-map']) {
447
+ const rightConfig = readJsonFile(geminiRightFile);
448
+ const rightServers = rightConfig?.mcpServers ?? {};
449
+ if (!rightServers['ai-mind-map']) {
450
+ issues.push({
451
+ agent: 'Antigravity (Gemini)',
452
+ problem: `Config in mcp.json but Gemini reads mcp_config.json`,
453
+ fix: 'Move entry to mcp_config.json',
454
+ fixFn: () => {
455
+ // Copy entry to correct file
456
+ const config = readJsonFile(geminiRightFile) ?? { mcpServers: {} };
457
+ const mcpServers = config.mcpServers ?? {};
458
+ mcpServers['ai-mind-map'] = servers['ai-mind-map'];
459
+ config.mcpServers = mcpServers;
460
+ writeJsonFile(geminiRightFile, config);
461
+ // Remove from wrong file
462
+ delete servers['ai-mind-map'];
463
+ if (Object.keys(servers).length === 0)
464
+ delete wrongConfig.mcpServers;
465
+ writeJsonFile(geminiWrongFile, wrongConfig);
466
+ },
467
+ });
468
+ }
469
+ }
470
+ }
471
+ // Check 2: Wrong package name in any config
472
+ const configsToCheck = [
473
+ { agent: 'Claude Code', path: path.join(HOME, '.claude', 'claude_desktop_config.json'), key: 'mcpServers' },
474
+ { agent: 'Cursor', path: path.join(HOME, '.cursor', 'mcp.json'), key: 'mcpServers' },
475
+ { agent: 'Antigravity', path: geminiRightFile, key: 'mcpServers' },
476
+ { agent: 'VS Code', path: path.join(getVSCodeSettingsDir(), 'settings.json'), key: 'mcp.servers' },
477
+ ];
478
+ for (const check of configsToCheck) {
479
+ const content = readJsonFile(check.path);
480
+ if (!content)
481
+ continue;
482
+ const servers = content[check.key];
483
+ if (!servers?.['ai-mind-map'])
484
+ continue;
485
+ const entry = servers['ai-mind-map'];
486
+ const args = entry.args;
487
+ if (args?.includes('ai-mind-map-server')) {
488
+ issues.push({
489
+ agent: check.agent,
490
+ problem: `Wrong package name 'ai-mind-map-server' in args`,
491
+ fix: `Change to '${NPM_PACKAGE_NAME}'`,
492
+ fixFn: () => {
493
+ const idx = args.indexOf('ai-mind-map-server');
494
+ if (idx !== -1)
495
+ args[idx] = NPM_PACKAGE_NAME;
496
+ entry.args = args;
497
+ servers['ai-mind-map'] = entry;
498
+ content[check.key] = servers;
499
+ writeJsonFile(check.path, content);
500
+ },
501
+ });
502
+ }
503
+ }
504
+ // Check 3: Outdated version metadata
505
+ for (const check of configsToCheck) {
506
+ const content = readJsonFile(check.path);
507
+ if (!content)
508
+ continue;
509
+ const servers = content[check.key];
510
+ if (!servers?.['ai-mind-map'])
511
+ continue;
512
+ const entry = servers['ai-mind-map'];
513
+ const configVersion = entry._version;
514
+ const currentVersion = getPackageVersion();
515
+ if (configVersion && configVersion !== currentVersion && currentVersion !== '0.0.0') {
516
+ issues.push({
517
+ agent: check.agent,
518
+ problem: `Config version ${configVersion} is outdated (current: ${currentVersion})`,
519
+ fix: 'Update version metadata',
520
+ fixFn: () => {
521
+ entry._version = currentVersion;
522
+ entry._installedAt = new Date().toISOString();
523
+ servers['ai-mind-map'] = entry;
524
+ content[check.key] = servers;
525
+ writeJsonFile(check.path, content);
526
+ },
527
+ });
528
+ }
529
+ }
530
+ return issues;
531
+ }
201
532
  /**
202
533
  * Merge an MCP server entry into an existing JSON config.
203
534
  * Creates the file if it doesn't exist.
@@ -218,7 +549,7 @@ function mergeMcpConfig(configPath, mcpKey, serverEntry) {
218
549
  if (runConfig.mode === 'npx') {
219
550
  servers['ai-mind-map'] = {
220
551
  command: 'npx',
221
- args: ['-y', 'ai-mind-map-server'],
552
+ args: ['-y', NPM_PACKAGE_NAME],
222
553
  env: {},
223
554
  };
224
555
  }
@@ -310,7 +641,7 @@ function getAgentDefinitions(serverEntry) {
310
641
  const mcpServers = existing['mcp.servers'] ?? {};
311
642
  const runConfig = getServerRunConfig();
312
643
  mcpServers['ai-mind-map'] = runConfig.mode === 'npx'
313
- ? { command: 'npx', args: ['-y', 'ai-mind-map-server'], env: {} }
644
+ ? { command: 'npx', args: ['-y', NPM_PACKAGE_NAME], env: {} }
314
645
  : { command: 'node', args: [serverEntry], env: {} };
315
646
  existing['mcp.servers'] = mcpServers;
316
647
  return JSON.stringify(existing, null, 2);
@@ -332,7 +663,7 @@ function getAgentDefinitions(serverEntry) {
332
663
  const mcpServers = existing['mcp.servers'] ?? {};
333
664
  const runConfig = getServerRunConfig();
334
665
  mcpServers['ai-mind-map'] = runConfig.mode === 'npx'
335
- ? { command: 'npx', args: ['-y', 'ai-mind-map-server'], env: {} }
666
+ ? { command: 'npx', args: ['-y', NPM_PACKAGE_NAME], env: {} }
336
667
  : { command: 'node', args: [serverEntry], env: {} };
337
668
  existing['mcp.servers'] = mcpServers;
338
669
  return JSON.stringify(existing, null, 2);
@@ -341,6 +672,7 @@ function getAgentDefinitions(serverEntry) {
341
672
  removeConfig: () => removeMcpConfig(path.join(getWindsurfSettingsDir(), 'settings.json'), 'mcp.servers'),
342
673
  },
343
674
  // 5. Antigravity (Gemini)
675
+ // Gemini reads MCP servers from mcp_config.json (not mcp.json)
344
676
  {
345
677
  name: 'Antigravity (Gemini)',
346
678
  id: 'antigravity',
@@ -348,10 +680,10 @@ function getAgentDefinitions(serverEntry) {
348
680
  path.join(HOME, '.gemini', 'config'),
349
681
  path.join(HOME, '.gemini'),
350
682
  ],
351
- configPath: path.join(HOME, '.gemini', 'config', 'mcp.json'),
683
+ configPath: findGeminiMcpConfigPath(),
352
684
  generateConfig: () => JSON.stringify({ mcpServers: mcpServerEntry(serverEntry) }, null, 2),
353
- isConfigured: () => hasMcpConfig(path.join(HOME, '.gemini', 'config', 'mcp.json'), 'mcpServers'),
354
- removeConfig: () => removeMcpConfig(path.join(HOME, '.gemini', 'config', 'mcp.json'), 'mcpServers'),
685
+ isConfigured: () => hasMcpConfig(findGeminiMcpConfigPath(), 'mcpServers'),
686
+ removeConfig: () => removeMcpConfig(findGeminiMcpConfigPath(), 'mcpServers'),
355
687
  },
356
688
  // 6. Zed
357
689
  {
@@ -366,7 +698,7 @@ function getAgentDefinitions(serverEntry) {
366
698
  const contextServers = existing['context_servers'] ?? {};
367
699
  const runConfig = getServerRunConfig();
368
700
  const serverConfig = runConfig.mode === 'npx'
369
- ? { path: 'npx', args: ['-y', 'ai-mind-map-server'], env: {} }
701
+ ? { path: 'npx', args: ['-y', NPM_PACKAGE_NAME], env: {} }
370
702
  : { path: 'node', args: [serverEntry], env: {} };
371
703
  contextServers['ai-mind-map'] = {
372
704
  command: serverConfig,
@@ -415,7 +747,7 @@ function getAgentDefinitions(serverEntry) {
415
747
  if (!exists) {
416
748
  const runConfig = getServerRunConfig();
417
749
  const serverEntryConfig = runConfig.mode === 'npx'
418
- ? { command: 'npx', args: ['-y', 'ai-mind-map-server'], env: {} }
750
+ ? { command: 'npx', args: ['-y', NPM_PACKAGE_NAME], env: {} }
419
751
  : { command: 'node', args: [serverEntry], env: {} };
420
752
  modelContextProtocolServers.push({
421
753
  name: 'ai-mind-map',
@@ -477,6 +809,7 @@ export async function installAgents() {
477
809
  const agents = getAgentDefinitions(serverEntry);
478
810
  let foundCount = 0;
479
811
  let configuredCount = 0;
812
+ let verifyFailCount = 0;
480
813
  for (const agent of agents) {
481
814
  const detected = agent.probePaths.some((p) => existsSync(p));
482
815
  if (!detected) {
@@ -489,6 +822,16 @@ export async function installAgents() {
489
822
  // Check if already configured
490
823
  if (agent.isConfigured()) {
491
824
  logSkipped(agent.name, 'already configured');
825
+ // Still verify existing config is correct
826
+ const mcpKey = ['claude-code', 'cursor', 'antigravity'].includes(agent.id) ? 'mcpServers' : 'mcp.servers';
827
+ const verifyResult = verifyConfigEntry(agent.configPath, mcpKey);
828
+ if (!verifyResult.ok) {
829
+ console.log(` ${c.yellow}⚠${c.reset} ${c.dim}Verification issue: ${verifyResult.error}${c.reset}`);
830
+ const fixResult = autoFixConfig(agent.configPath, mcpKey);
831
+ if (fixResult.autoFixed) {
832
+ console.log(` ${c.green}✔${c.reset} ${c.dim}Auto-fixed!${c.reset}`);
833
+ }
834
+ }
492
835
  continue;
493
836
  }
494
837
  // Write the configuration
@@ -510,7 +853,25 @@ export async function installAgents() {
510
853
  const configContent = agent.generateConfig(serverEntry);
511
854
  writeFileSync(agent.configPath, configContent + '\n', 'utf-8');
512
855
  }
513
- logConfigured(agent.name);
856
+ // ── Post-write verification ──
857
+ const mcpKey = ['claude-code', 'cursor', 'antigravity'].includes(agent.id) ? 'mcpServers' : 'mcp.servers';
858
+ const verifyResult = verifyConfigEntry(agent.configPath, mcpKey);
859
+ if (verifyResult.ok) {
860
+ logConfigured(agent.name);
861
+ console.log(` ${c.green}✔${c.reset} ${c.dim}Verified: config entry is correct${c.reset}`);
862
+ }
863
+ else {
864
+ logConfigured(agent.name);
865
+ console.log(` ${c.yellow}⚠${c.reset} ${c.dim}Verify warning: ${verifyResult.error}${c.reset}`);
866
+ // Attempt auto-fix
867
+ const fixResult = autoFixConfig(agent.configPath, mcpKey);
868
+ if (fixResult.autoFixed) {
869
+ console.log(` ${c.green}✔${c.reset} ${c.dim}Auto-fixed!${c.reset}`);
870
+ }
871
+ else {
872
+ verifyFailCount++;
873
+ }
874
+ }
514
875
  configuredCount++;
515
876
  }
516
877
  catch (err) {
@@ -525,6 +886,26 @@ export async function installAgents() {
525
886
  }
526
887
  else {
527
888
  logOk(`${foundCount} agent(s) detected, ${configuredCount} newly configured.`);
889
+ if (verifyFailCount > 0) {
890
+ logWarn(`${verifyFailCount} config(s) have verification warnings — run "ai-mind-map doctor --fix" to repair.`);
891
+ }
892
+ }
893
+ // Check for misconfigurations from older versions
894
+ const misconfigs = detectMisconfigs();
895
+ if (misconfigs.length > 0) {
896
+ console.log('');
897
+ heading('⚠️ Misconfigurations Detected');
898
+ divider();
899
+ for (const issue of misconfigs) {
900
+ console.log(` ${c.yellow}⚠${c.reset} ${c.bold}${issue.agent}${c.reset}: ${issue.problem}`);
901
+ if (issue.fixFn) {
902
+ issue.fixFn();
903
+ console.log(` ${c.green}✔${c.reset} AUTO-FIXED: ${issue.fix}`);
904
+ }
905
+ else {
906
+ console.log(` ${c.dim}Fix: ${issue.fix}${c.reset}`);
907
+ }
908
+ }
528
909
  }
529
910
  // Deploy rules files so agents know about our capabilities
530
911
  console.log('');
@@ -797,24 +1178,6 @@ export async function runDoctor() {
797
1178
  logFail(`${paddedName} ${result.message}`);
798
1179
  }
799
1180
  }
800
- // Summary
801
- const okCount = results.filter((r) => r.status === 'ok').length;
802
- const warnCount = results.filter((r) => r.status === 'warn').length;
803
- const failCount = results.filter((r) => r.status === 'fail').length;
804
- console.log('');
805
- divider();
806
- if (failCount > 0) {
807
- logFail(`${okCount} passed, ${warnCount} warnings, ${failCount} failures`);
808
- logInfo('Fix the failures above before using AI Mind Map.');
809
- }
810
- else if (warnCount > 0) {
811
- logWarn(`${okCount} passed, ${warnCount} warnings`);
812
- logInfo('AI Mind Map should work, but address warnings for best experience.');
813
- }
814
- else {
815
- logOk(`All ${okCount} checks passed!`);
816
- logInfo('AI Mind Map is ready to use.');
817
- }
818
1181
  // Agent detail table
819
1182
  if (agentStatuses.some((a) => a.detected)) {
820
1183
  console.log('');
@@ -837,6 +1200,59 @@ export async function runDoctor() {
837
1200
  }
838
1201
  }
839
1202
  }
1203
+ // 8. Misconfig detection
1204
+ const misconfigs = detectMisconfigs();
1205
+ if (misconfigs.length > 0) {
1206
+ console.log('');
1207
+ heading('⚠️ Configuration Issues Found');
1208
+ divider();
1209
+ const shouldFix = process.argv.includes('--fix');
1210
+ for (const issue of misconfigs) {
1211
+ results.push({
1212
+ name: `Config: ${issue.agent}`,
1213
+ status: 'warn',
1214
+ message: issue.problem,
1215
+ });
1216
+ console.log(` ${c.yellow}⚠${c.reset} ${c.bold}${issue.agent}${c.reset}: ${issue.problem}`);
1217
+ if (shouldFix && issue.fixFn) {
1218
+ issue.fixFn();
1219
+ console.log(` ${c.green}✔${c.reset} AUTO-FIXED: ${issue.fix}`);
1220
+ }
1221
+ else if (issue.fixFn) {
1222
+ console.log(` ${c.dim}Run with --fix to auto-repair: ${issue.fix}${c.reset}`);
1223
+ }
1224
+ else {
1225
+ console.log(` ${c.dim}Manual fix required: ${issue.fix}${c.reset}`);
1226
+ }
1227
+ }
1228
+ }
1229
+ else {
1230
+ results.push({
1231
+ name: 'Config Integrity',
1232
+ status: 'ok',
1233
+ message: 'No misconfigurations detected',
1234
+ });
1235
+ }
1236
+ // Re-print summary with updated results
1237
+ const finalOk = results.filter((r) => r.status === 'ok').length;
1238
+ const finalWarn = results.filter((r) => r.status === 'warn').length;
1239
+ const finalFail = results.filter((r) => r.status === 'fail').length;
1240
+ console.log('');
1241
+ divider();
1242
+ if (finalFail > 0) {
1243
+ logFail(`${finalOk} passed, ${finalWarn} warnings, ${finalFail} failures`);
1244
+ logInfo('Fix the failures above before using AI Mind Map.');
1245
+ }
1246
+ else if (finalWarn > 0) {
1247
+ logWarn(`${finalOk} passed, ${finalWarn} warnings`);
1248
+ if (!process.argv.includes('--fix')) {
1249
+ logInfo('Run "ai-mind-map doctor --fix" to auto-repair warnings.');
1250
+ }
1251
+ }
1252
+ else {
1253
+ logOk(`All ${finalOk} checks passed!`);
1254
+ logInfo('AI Mind Map is ready to use.');
1255
+ }
840
1256
  console.log('');
841
1257
  }
842
1258
  // ============================================================
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ai-mind-map",
3
- "version": "1.4.0",
3
+ "version": "1.4.2",
4
4
  "description": "AI Mind Map — MCP server that reduces AI coding agent token usage by 80-99% through persistent codebase memory, knowledge graphs, and intelligent context management",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",