ai-mind-map 1.1.3 → 1.4.1

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 (61) hide show
  1. package/README.md +74 -41
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +52 -0
  4. package/dist/cli.js.map +1 -1
  5. package/dist/config.d.ts.map +1 -1
  6. package/dist/config.js +3 -0
  7. package/dist/config.js.map +1 -1
  8. package/dist/index.js +273 -23
  9. package/dist/index.js.map +1 -1
  10. package/dist/install.d.ts.map +1 -1
  11. package/dist/install.js +80 -66
  12. package/dist/install.js.map +1 -1
  13. package/dist/knowledge-graph/changelog.d.ts +175 -0
  14. package/dist/knowledge-graph/changelog.d.ts.map +1 -0
  15. package/dist/knowledge-graph/changelog.js +509 -0
  16. package/dist/knowledge-graph/changelog.js.map +1 -0
  17. package/dist/knowledge-graph/graph.d.ts +40 -0
  18. package/dist/knowledge-graph/graph.d.ts.map +1 -1
  19. package/dist/knowledge-graph/graph.js +73 -10
  20. package/dist/knowledge-graph/graph.js.map +1 -1
  21. package/dist/knowledge-graph/indexer.d.ts +15 -0
  22. package/dist/knowledge-graph/indexer.d.ts.map +1 -1
  23. package/dist/knowledge-graph/indexer.js +155 -34
  24. package/dist/knowledge-graph/indexer.js.map +1 -1
  25. package/dist/knowledge-graph/parser.d.ts +11 -0
  26. package/dist/knowledge-graph/parser.d.ts.map +1 -1
  27. package/dist/knowledge-graph/parser.js +70 -11
  28. package/dist/knowledge-graph/parser.js.map +1 -1
  29. package/dist/knowledge-graph/semantic-search.d.ts +166 -0
  30. package/dist/knowledge-graph/semantic-search.d.ts.map +1 -0
  31. package/dist/knowledge-graph/semantic-search.js +601 -0
  32. package/dist/knowledge-graph/semantic-search.js.map +1 -0
  33. package/dist/memory/shared-sync.d.ts +47 -0
  34. package/dist/memory/shared-sync.d.ts.map +1 -0
  35. package/dist/memory/shared-sync.js +219 -0
  36. package/dist/memory/shared-sync.js.map +1 -0
  37. package/dist/tools/advanced-tools.d.ts +2 -1
  38. package/dist/tools/advanced-tools.d.ts.map +1 -1
  39. package/dist/tools/advanced-tools.js +38 -1
  40. package/dist/tools/advanced-tools.js.map +1 -1
  41. package/dist/tools/digest-tools.d.ts +15 -0
  42. package/dist/tools/digest-tools.d.ts.map +1 -0
  43. package/dist/tools/digest-tools.js +332 -0
  44. package/dist/tools/digest-tools.js.map +1 -0
  45. package/dist/tools/semantic-tools.d.ts +20 -0
  46. package/dist/tools/semantic-tools.d.ts.map +1 -0
  47. package/dist/tools/semantic-tools.js +141 -0
  48. package/dist/tools/semantic-tools.js.map +1 -0
  49. package/dist/tools/session-tools.d.ts +17 -0
  50. package/dist/tools/session-tools.d.ts.map +1 -0
  51. package/dist/tools/session-tools.js +233 -0
  52. package/dist/tools/session-tools.js.map +1 -0
  53. package/dist/tools/smart-tools.d.ts +2 -1
  54. package/dist/tools/smart-tools.d.ts.map +1 -1
  55. package/dist/tools/smart-tools.js +55 -3
  56. package/dist/tools/smart-tools.js.map +1 -1
  57. package/dist/types.d.ts +6 -0
  58. package/dist/types.d.ts.map +1 -1
  59. package/dist/types.js +3 -0
  60. package/dist/types.js.map +1 -1
  61. package/package.json +9 -3
@@ -0,0 +1,233 @@
1
+ /**
2
+ * AI Mind Map — Session Tools (MCP)
3
+ *
4
+ * Tools for AI agent session management:
5
+ * - mindmap_session_start — Start tracking an AI session
6
+ * - mindmap_session_resume — Resume from last session (returns what changed)
7
+ * - mindmap_session_end — End session with summary
8
+ * - mindmap_changelog — What changed since a given time
9
+ * - mindmap_hotspots — Most frequently changed files
10
+ */
11
+ import { z } from 'zod';
12
+ import { relative } from 'node:path';
13
+ // ── Helpers ─────────────────────────────────────────────────
14
+ const defaultEstimator = {
15
+ estimate: (s) => Math.ceil(s.length / 4),
16
+ };
17
+ function ok(data, estimator) {
18
+ const json = JSON.stringify(data, null, 2);
19
+ const tokens = estimator.estimate(json);
20
+ return JSON.stringify({ success: true, data, tokenCount: tokens });
21
+ }
22
+ function fail(message) {
23
+ return JSON.stringify({ success: false, error: message });
24
+ }
25
+ function mcpText(text) {
26
+ return { content: [{ type: 'text', text }] };
27
+ }
28
+ // ============================================================
29
+ // Registration
30
+ // ============================================================
31
+ export function registerSessionTools(server, graph, changelog, config, estimator = defaultEstimator) {
32
+ // ── mindmap_session_start ──────────────────────────────────
33
+ server.tool('mindmap_session_start', 'Start a new AI coding session. Records the agent name and task ' +
34
+ 'for session tracking. Changes made during this session will be ' +
35
+ 'attributed to it. Returns the session ID.', {
36
+ agent: z.string().optional().describe('Name of the AI agent (e.g., "cursor", "claude", "copilot")'),
37
+ task: z.string().optional().describe('Brief description of what you\'re working on'),
38
+ }, async (args) => {
39
+ try {
40
+ const sessionId = changelog.startSession(args.agent || 'ai-agent', args.task);
41
+ return mcpText(ok({
42
+ sessionId,
43
+ message: `Session started. Changes will be tracked under this session.`,
44
+ tip: 'Call mindmap_session_end when done to save a summary for next time.',
45
+ }, estimator));
46
+ }
47
+ catch (err) {
48
+ return mcpText(fail(`Failed to start session: ${err instanceof Error ? err.message : String(err)}`));
49
+ }
50
+ });
51
+ // ── mindmap_session_resume ─────────────────────────────────
52
+ server.tool('mindmap_session_resume', 'Resume from the last AI coding session. Returns what was worked on, ' +
53
+ 'what files changed since then, and relevant memories. ' +
54
+ 'THIS IS THE FIRST TOOL AN AI AGENT SHOULD CALL to avoid re-reading the codebase.', {
55
+ agent: z.string().optional().describe('Name of the AI agent resuming'),
56
+ }, async (args) => {
57
+ try {
58
+ // 1. Get last completed session
59
+ const lastSession = changelog.getLastSession();
60
+ // 2. Start a new session
61
+ const newSessionId = changelog.startSession(args.agent || 'ai-agent');
62
+ // 3. Get changes since last session ended
63
+ const sinceTime = lastSession?.endedAt || lastSession?.startedAt || (Date.now() - 24 * 3600_000);
64
+ const changes = changelog.getChangesSince(sinceTime);
65
+ // 4. Get project stats for context
66
+ const stats = graph.getStats();
67
+ // 5. Get hotspots
68
+ const hotspots = changelog.getHotspots(5);
69
+ // 6. Build resume package
70
+ const result = {
71
+ newSessionId,
72
+ project: {
73
+ root: config.projectRoot,
74
+ totalFiles: stats.totalFiles,
75
+ totalNodes: stats.totalNodes,
76
+ totalEdges: stats.totalEdges,
77
+ languages: stats.languageBreakdown,
78
+ },
79
+ };
80
+ if (lastSession) {
81
+ result.lastSession = {
82
+ agent: lastSession.agentName,
83
+ task: lastSession.taskDescription,
84
+ startedAt: new Date(lastSession.startedAt).toISOString(),
85
+ endedAt: lastSession.endedAt ? new Date(lastSession.endedAt).toISOString() : null,
86
+ filesModified: lastSession.filesModified.map(f => relative(config.projectRoot, f).replace(/\\/g, '/')),
87
+ summary: lastSession.summary,
88
+ };
89
+ }
90
+ else {
91
+ result.lastSession = null;
92
+ result.message = 'No previous session found. This appears to be the first session.';
93
+ }
94
+ if (changes.totalChanges > 0) {
95
+ result.changesSinceLastSession = {
96
+ totalChanges: changes.totalChanges,
97
+ filesChanged: changes.filesChanged,
98
+ sinceLabel: changes.sinceLabel,
99
+ files: changes.files.map(f => ({
100
+ file: relative(config.projectRoot, f.filePath).replace(/\\/g, '/'),
101
+ added: f.added.map(a => `+ ${a.type} ${a.name}${a.signature ? `: ${a.signature}` : ''}`),
102
+ modified: f.modified.map(m => {
103
+ if (m.oldSignature !== m.newSignature) {
104
+ return `~ ${m.type} ${m.name}: ${m.oldSignature} → ${m.newSignature}`;
105
+ }
106
+ return `~ ${m.type} ${m.name} (body changed)`;
107
+ }),
108
+ deleted: f.deleted.map(d => `- ${d.type} ${d.name}`),
109
+ })),
110
+ };
111
+ }
112
+ else {
113
+ result.changesSinceLastSession = {
114
+ totalChanges: 0,
115
+ message: 'No code changes detected since last session.',
116
+ };
117
+ }
118
+ if (hotspots.length > 0) {
119
+ result.hotFiles = hotspots.map(h => ({
120
+ file: relative(config.projectRoot, h.filePath).replace(/\\/g, '/'),
121
+ changes: h.changeCount,
122
+ topSymbols: Object.entries(h.symbolChanges)
123
+ .sort(([, a], [, b]) => b - a)
124
+ .slice(0, 3)
125
+ .map(([name, count]) => `${name} (${count}x)`),
126
+ }));
127
+ }
128
+ return mcpText(ok(result, estimator));
129
+ }
130
+ catch (err) {
131
+ return mcpText(fail(`Failed to resume session: ${err instanceof Error ? err.message : String(err)}`));
132
+ }
133
+ });
134
+ // ── mindmap_session_end ────────────────────────────────────
135
+ server.tool('mindmap_session_end', 'End the current AI coding session with a summary. ' +
136
+ 'The summary will be shown to the next AI agent that calls mindmap_session_resume.', {
137
+ summary: z.string().optional().describe('Summary of what was accomplished in this session'),
138
+ }, async (args) => {
139
+ try {
140
+ const currentSession = changelog.getCurrentSession();
141
+ if (!currentSession) {
142
+ return mcpText(fail('No active session to end.'));
143
+ }
144
+ // Get session changes for stats
145
+ const changes = changelog.getSessionChanges(currentSession.id);
146
+ changelog.endSession(currentSession.id, args.summary);
147
+ // Prune old entries
148
+ const pruned = changelog.pruneChangelog();
149
+ return mcpText(ok({
150
+ sessionId: currentSession.id,
151
+ duration: currentSession.startedAt
152
+ ? `${Math.round((Date.now() - currentSession.startedAt) / 60_000)} minutes`
153
+ : 'unknown',
154
+ changesRecorded: changes.length,
155
+ filesModified: currentSession.filesModified.length,
156
+ summary: args.summary || 'No summary provided',
157
+ entriesPruned: pruned,
158
+ }, estimator));
159
+ }
160
+ catch (err) {
161
+ return mcpText(fail(`Failed to end session: ${err instanceof Error ? err.message : String(err)}`));
162
+ }
163
+ });
164
+ // ── mindmap_changelog ──────────────────────────────────────
165
+ server.tool('mindmap_changelog', 'Get a detailed changelog of what symbols (functions, classes, methods) ' +
166
+ 'were added, modified, or deleted since a given time. ' +
167
+ 'Use this instead of re-reading files to see what changed.', {
168
+ since: z.string().optional().describe('ISO timestamp or relative: "1h", "30m", "1d", "last_session". Default: "last_session"'),
169
+ file: z.string().optional().describe('Filter to a specific file path (relative to project root)'),
170
+ }, async (args) => {
171
+ try {
172
+ let sinceMs;
173
+ if (!args.since || args.since === 'last_session') {
174
+ const lastSession = changelog.getLastSession();
175
+ sinceMs = lastSession?.endedAt || lastSession?.startedAt || (Date.now() - 3600_000);
176
+ }
177
+ else if (args.since.match(/^\d+[mhd]$/)) {
178
+ const num = parseInt(args.since);
179
+ const unit = args.since.slice(-1);
180
+ const multipliers = { m: 60_000, h: 3600_000, d: 86400_000 };
181
+ sinceMs = Date.now() - (num * (multipliers[unit] || 3600_000));
182
+ }
183
+ else {
184
+ sinceMs = new Date(args.since).getTime();
185
+ if (isNaN(sinceMs))
186
+ sinceMs = Date.now() - 3600_000;
187
+ }
188
+ if (args.file) {
189
+ const filePath = args.file.includes(config.projectRoot)
190
+ ? args.file
191
+ : `${config.projectRoot}/${args.file}`.replace(/\//g, '\\');
192
+ const changes = changelog.getFileChanges(filePath);
193
+ return mcpText(ok({ file: args.file, changes }, estimator));
194
+ }
195
+ const changes = changelog.getChangesSince(sinceMs);
196
+ // Make file paths relative
197
+ const result = {
198
+ ...changes,
199
+ files: changes.files.map(f => ({
200
+ ...f,
201
+ filePath: relative(config.projectRoot, f.filePath).replace(/\\/g, '/'),
202
+ })),
203
+ };
204
+ return mcpText(ok(result, estimator));
205
+ }
206
+ catch (err) {
207
+ return mcpText(fail(`Failed to get changelog: ${err instanceof Error ? err.message : String(err)}`));
208
+ }
209
+ });
210
+ // ── mindmap_hotspots ───────────────────────────────────────
211
+ server.tool('mindmap_hotspots', 'Get the most frequently changed files and symbols in the codebase. ' +
212
+ 'Hot files are more likely to have bugs and benefit from closer review.', {
213
+ limit: z.number().optional().describe('Number of hotspots to return (default: 15)'),
214
+ }, async (args) => {
215
+ try {
216
+ const hotspots = changelog.getHotspots(args.limit || 15);
217
+ const result = hotspots.map(h => ({
218
+ file: relative(config.projectRoot, h.filePath).replace(/\\/g, '/'),
219
+ totalChanges: h.changeCount,
220
+ lastChanged: new Date(h.lastChangedAt).toISOString(),
221
+ hotSymbols: Object.entries(h.symbolChanges)
222
+ .sort(([, a], [, b]) => b - a)
223
+ .slice(0, 5)
224
+ .map(([name, count]) => ({ name, changes: count })),
225
+ }));
226
+ return mcpText(ok({ hotspots: result, tip: 'Files with high change frequency are more likely to contain bugs.' }, estimator));
227
+ }
228
+ catch (err) {
229
+ return mcpText(fail(`Failed to get hotspots: ${err instanceof Error ? err.message : String(err)}`));
230
+ }
231
+ });
232
+ }
233
+ //# sourceMappingURL=session-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-tools.js","sourceRoot":"","sources":["../../src/tools/session-tools.ts"],"names":[],"mappings":"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"}
@@ -13,11 +13,12 @@
13
13
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
14
14
  import type { MindMapConfig } from '../types.js';
15
15
  import { KnowledgeGraph } from '../knowledge-graph/graph.js';
16
+ import type { SemanticSearchEngine } from '../knowledge-graph/semantic-search.js';
16
17
  export interface ITokenEstimator {
17
18
  estimate(text: string): number;
18
19
  }
19
20
  /**
20
21
  * Register Smart tools — the "never read files" toolkit.
21
22
  */
22
- export declare function registerSmartTools(server: McpServer, graph: KnowledgeGraph, config: MindMapConfig, estimator?: ITokenEstimator): void;
23
+ export declare function registerSmartTools(server: McpServer, graph: KnowledgeGraph, config: MindMapConfig, estimator?: ITokenEstimator, semanticEngine?: SemanticSearchEngine): void;
23
24
  //# sourceMappingURL=smart-tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"smart-tools.d.ts","sourceRoot":"","sources":["../../src/tools/smart-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAOH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAc,aAAa,EAAwB,MAAM,aAAa,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAO7D,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CAChC;AAmDD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,aAAa,EACrB,SAAS,GAAE,eAAkC,GAC5C,IAAI,CAigBN"}
1
+ {"version":3,"file":"smart-tools.d.ts","sourceRoot":"","sources":["../../src/tools/smart-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAOH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAc,aAAa,EAAwB,MAAM,aAAa,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAMlF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CAChC;AAmDD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,aAAa,EACrB,SAAS,GAAE,eAAkC,EAC7C,cAAc,CAAC,EAAE,oBAAoB,GACpC,IAAI,CAyjBN"}
@@ -56,7 +56,7 @@ function gitExec(args, cwd) {
56
56
  /**
57
57
  * Register Smart tools — the "never read files" toolkit.
58
58
  */
59
- export function registerSmartTools(server, graph, config, estimator = defaultEstimator) {
59
+ export function registerSmartTools(server, graph, config, estimator = defaultEstimator, semanticEngine) {
60
60
  // ── mindmap_explain ──────────────────────────────────────────
61
61
  server.tool('mindmap_explain', 'Get EVERYTHING about a symbol in one call: signature, doc, callers, callees, ' +
62
62
  'layer classification, blast radius, related symbols, and recent git changes. ' +
@@ -363,6 +363,8 @@ export function registerSmartTools(server, graph, config, estimator = defaultEst
363
363
  'This replaces: search → get_signature → trace_dependencies → read file.', {
364
364
  query: z.string().describe('Search query (name, keyword, or free text)'),
365
365
  limit: z.number().int().min(1).max(20).default(5).describe('Max results (default 5, keep small for rich data)'),
366
+ mode: z.enum(['keyword', 'semantic', 'hybrid']).default('hybrid').describe('Search mode: keyword (exact FTS5 matching), semantic (TF-IDF concept matching), '
367
+ + 'or hybrid (both merged, best of both worlds). Default: hybrid.'),
366
368
  include: z.array(z.enum([
367
369
  'signature', // function signature (always included)
368
370
  'doc', // doc comment
@@ -372,9 +374,52 @@ export function registerSmartTools(server, graph, config, estimator = defaultEst
372
374
  'code', // actual source code lines
373
375
  'git', // git history
374
376
  ])).default(['signature', 'doc', 'callers', 'layer']).describe('What to include in each result'),
375
- }, async ({ query, limit, include }) => {
377
+ }, async ({ query, limit, mode, include }) => {
376
378
  try {
377
- const searchResults = graph.search(query, limit);
379
+ // ── Hybrid/Semantic/Keyword search routing ───────────
380
+ let searchResults = [];
381
+ const semanticScores = new Map();
382
+ let synonymsExpanded = [];
383
+ if (mode === 'keyword' || !semanticEngine) {
384
+ // Pure keyword search (existing behavior)
385
+ searchResults = graph.search(query, limit);
386
+ }
387
+ else if (mode === 'semantic') {
388
+ // Pure semantic search
389
+ const semResults = semanticEngine.search(query, limit);
390
+ synonymsExpanded = semResults[0]?.expandedSynonyms ?? [];
391
+ for (const sr of semResults) {
392
+ const node = graph.getNode(sr.nodeId);
393
+ if (node) {
394
+ searchResults.push(node);
395
+ semanticScores.set(sr.nodeId, sr.score);
396
+ }
397
+ }
398
+ }
399
+ else {
400
+ // Hybrid: merge keyword + semantic results
401
+ const keywordResults = graph.search(query, limit);
402
+ const semResults = semanticEngine.search(query, limit);
403
+ synonymsExpanded = semResults[0]?.expandedSynonyms ?? [];
404
+ // Build merged set (keyword results first, then semantic-only results)
405
+ const seen = new Set();
406
+ for (const node of keywordResults) {
407
+ seen.add(node.id);
408
+ searchResults.push(node);
409
+ }
410
+ for (const sr of semResults) {
411
+ semanticScores.set(sr.nodeId, sr.score);
412
+ if (!seen.has(sr.nodeId)) {
413
+ const node = graph.getNode(sr.nodeId);
414
+ if (node) {
415
+ seen.add(sr.nodeId);
416
+ searchResults.push(node);
417
+ }
418
+ }
419
+ }
420
+ // Trim to limit
421
+ searchResults = searchResults.slice(0, limit);
422
+ }
378
423
  if (searchResults.length === 0) {
379
424
  return mcpText(ok({
380
425
  query,
@@ -399,6 +444,11 @@ export function registerSmartTools(server, graph, config, estimator = defaultEst
399
444
  visibility: node.visibility,
400
445
  isExported: node.isExported,
401
446
  };
447
+ // Semantic score (only present in semantic/hybrid modes)
448
+ const semScore = semanticScores.get(node.id);
449
+ if (semScore !== undefined) {
450
+ result.semanticScore = Math.round(semScore * 1000) / 1000;
451
+ }
402
452
  // Optional: doc comment
403
453
  if (include.includes('doc') && node.docComment) {
404
454
  result.docComment = node.docComment;
@@ -473,6 +523,8 @@ export function registerSmartTools(server, graph, config, estimator = defaultEst
473
523
  results,
474
524
  totalResults: results.length,
475
525
  includes: include,
526
+ searchMode: mode,
527
+ synonymsExpanded: synonymsExpanded.length > 0 ? synonymsExpanded : undefined,
476
528
  };
477
529
  return mcpText(okWithSavings(response, Math.max(0, totalTokensSaved), estimator));
478
530
  }
@@ -1 +1 @@
1
- {"version":3,"file":"smart-tools.js","sourceRoot":"","sources":["../../src/tools/smart-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smart-tools.js","sourceRoot":"","sources":["../../src/tools/smart-tools.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -156,6 +156,12 @@ export interface MindMapConfig {
156
156
  maxFileSize: number;
157
157
  /** Enable PageRank relevance ranking */
158
158
  pageRankEnabled: boolean;
159
+ /** Disable parsing/indexing and run only memory/context services */
160
+ memoryOnly: boolean;
161
+ /** File path for team-shared Git-trackable context (relative to projectRoot) */
162
+ sharedContextFile: string;
163
+ /** Auto-sync sharedContextFile on startup */
164
+ autoSyncSharedContext: boolean;
159
165
  }
160
166
  export declare const DEFAULT_CONFIG: MindMapConfig;
161
167
  export interface MindMapStats {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -41,5 +41,8 @@ export const DEFAULT_CONFIG = {
41
41
  watchDebounceMs: 500,
42
42
  maxFileSize: 512 * 1024, // 512KB
43
43
  pageRankEnabled: true,
44
+ memoryOnly: false,
45
+ sharedContextFile: '.mindmap-shared.json',
46
+ autoSyncSharedContext: true,
44
47
  };
45
48
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA6PH,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;IAC1B,SAAS,EAAE,EAAE,EAAG,cAAc;IAC9B,MAAM,EAAE;QACN,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO;QACnE,aAAa,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;QACtD,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,KAAK;QAC3C,OAAO,EAAE,SAAS,EAAE,KAAK;QACzB,UAAU,EAAE,aAAa;QACzB,UAAU,EAAE,WAAW,EAAE,OAAO;QAChC,QAAQ,EAAE,mBAAmB,EAAE,WAAW,EAAE,gBAAgB;QAC5D,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;QACrD,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO;QACrC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM;QACjC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS;QACnC,OAAO,EAAE,OAAO,EAAE,SAAS;QAC3B,MAAM,EAAE,YAAY,EAAE,iBAAiB;KACxC;IACD,YAAY,EAAE;QACZ,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,IAAI;QACnB,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,IAAI;QACjB,YAAY,EAAE,KAAK;KACpB;IACD,MAAM,EAAE;QACN,WAAW,EAAE,GAAG;QAChB,SAAS,EAAE,IAAI;QACf,mBAAmB,EAAE,GAAG;QACxB,YAAY,EAAE,GAAG;KAClB;IACD,WAAW,EAAE,UAAU;IACvB,MAAM,EAAE,qBAAqB;IAC7B,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,GAAG;IACpB,WAAW,EAAE,GAAG,GAAG,IAAI,EAAG,QAAQ;IAClC,eAAe,EAAE,IAAI;CACtB,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAsQH,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;IAC1B,SAAS,EAAE,EAAE,EAAG,cAAc;IAC9B,MAAM,EAAE;QACN,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO;QACnE,aAAa,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;QACtD,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,KAAK;QAC3C,OAAO,EAAE,SAAS,EAAE,KAAK;QACzB,UAAU,EAAE,aAAa;QACzB,UAAU,EAAE,WAAW,EAAE,OAAO;QAChC,QAAQ,EAAE,mBAAmB,EAAE,WAAW,EAAE,gBAAgB;QAC5D,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;QACrD,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO;QACrC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM;QACjC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS;QACnC,OAAO,EAAE,OAAO,EAAE,SAAS;QAC3B,MAAM,EAAE,YAAY,EAAE,iBAAiB;KACxC;IACD,YAAY,EAAE;QACZ,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,IAAI;QACnB,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,IAAI;QACjB,YAAY,EAAE,KAAK;KACpB;IACD,MAAM,EAAE;QACN,WAAW,EAAE,GAAG;QAChB,SAAS,EAAE,IAAI;QACf,mBAAmB,EAAE,GAAG;QACxB,YAAY,EAAE,GAAG;KAClB;IACD,WAAW,EAAE,UAAU;IACvB,MAAM,EAAE,qBAAqB;IAC7B,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,GAAG;IACpB,WAAW,EAAE,GAAG,GAAG,IAAI,EAAG,QAAQ;IAClC,eAAe,EAAE,IAAI;IACrB,UAAU,EAAE,KAAK;IACjB,iBAAiB,EAAE,sBAAsB;IACzC,qBAAqB,EAAE,IAAI;CAC5B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ai-mind-map",
3
- "version": "1.1.3",
3
+ "version": "1.4.1",
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",
@@ -64,7 +64,10 @@
64
64
  "tree-sitter-python": "*",
65
65
  "tree-sitter-ruby": "*",
66
66
  "tree-sitter-rust": "*",
67
- "tree-sitter-typescript": "*"
67
+ "tree-sitter-typescript": "*",
68
+ "@tree-sitter-grammars/tree-sitter-kotlin": "*",
69
+ "tree-sitter-swift": "*",
70
+ "tree-sitter-dart": "*"
68
71
  },
69
72
  "overrides": {
70
73
  "tree-sitter": "^0.22.4"
@@ -92,7 +95,10 @@
92
95
  "coding-assistant",
93
96
  "persistent-memory",
94
97
  "pagerank",
95
- "ast-parser"
98
+ "ast-parser",
99
+ "semantic-search",
100
+ "synonym-expansion",
101
+ "tfidf"
96
102
  ],
97
103
  "license": "MIT"
98
104
  }