src-mcp 1.0.1 → 1.0.3

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 (250) hide show
  1. package/README.md +8 -18
  2. package/dist/bin.d.mts +1 -0
  3. package/dist/bin.mjs +205 -0
  4. package/dist/bin.mjs.map +1 -0
  5. package/dist/index.d.mts +1 -0
  6. package/dist/index.mjs +8 -0
  7. package/dist/index.mjs.map +1 -0
  8. package/dist/server-DL8hfycz.mjs +3791 -0
  9. package/dist/server-DL8hfycz.mjs.map +1 -0
  10. package/package.json +10 -9
  11. package/dist/bin.d.ts +0 -3
  12. package/dist/bin.d.ts.map +0 -1
  13. package/dist/bin.js +0 -4
  14. package/dist/bin.js.map +0 -1
  15. package/dist/cli/adapter.d.ts +0 -7
  16. package/dist/cli/adapter.d.ts.map +0 -1
  17. package/dist/cli/adapter.js +0 -39
  18. package/dist/cli/adapter.js.map +0 -1
  19. package/dist/cli/commands/index.d.ts +0 -24
  20. package/dist/cli/commands/index.d.ts.map +0 -1
  21. package/dist/cli/commands/index.js +0 -13
  22. package/dist/cli/commands/index.js.map +0 -1
  23. package/dist/cli/commands/serve.command.d.ts +0 -21
  24. package/dist/cli/commands/serve.command.d.ts.map +0 -1
  25. package/dist/cli/commands/serve.command.js +0 -62
  26. package/dist/cli/commands/serve.command.js.map +0 -1
  27. package/dist/cli/commands/version.command.d.ts +0 -2
  28. package/dist/cli/commands/version.command.d.ts.map +0 -1
  29. package/dist/cli/commands/version.command.js +0 -12
  30. package/dist/cli/commands/version.command.js.map +0 -1
  31. package/dist/cli/index.d.ts +0 -2
  32. package/dist/cli/index.d.ts.map +0 -1
  33. package/dist/cli/index.js +0 -15
  34. package/dist/cli/index.js.map +0 -1
  35. package/dist/cli/parser.d.ts +0 -7
  36. package/dist/cli/parser.d.ts.map +0 -1
  37. package/dist/cli/parser.js +0 -99
  38. package/dist/cli/parser.js.map +0 -1
  39. package/dist/config/index.d.ts +0 -24
  40. package/dist/config/index.d.ts.map +0 -1
  41. package/dist/config/index.js +0 -38
  42. package/dist/config/index.js.map +0 -1
  43. package/dist/core/ast/index.d.ts +0 -82
  44. package/dist/core/ast/index.d.ts.map +0 -1
  45. package/dist/core/ast/index.js +0 -204
  46. package/dist/core/ast/index.js.map +0 -1
  47. package/dist/core/ast/types.d.ts +0 -152
  48. package/dist/core/ast/types.d.ts.map +0 -1
  49. package/dist/core/ast/types.js +0 -5
  50. package/dist/core/ast/types.js.map +0 -1
  51. package/dist/core/constants.d.ts +0 -17
  52. package/dist/core/constants.d.ts.map +0 -1
  53. package/dist/core/constants.js +0 -49
  54. package/dist/core/constants.js.map +0 -1
  55. package/dist/core/embeddings/callgraph.d.ts +0 -98
  56. package/dist/core/embeddings/callgraph.d.ts.map +0 -1
  57. package/dist/core/embeddings/callgraph.js +0 -415
  58. package/dist/core/embeddings/callgraph.js.map +0 -1
  59. package/dist/core/embeddings/chunker.d.ts +0 -37
  60. package/dist/core/embeddings/chunker.d.ts.map +0 -1
  61. package/dist/core/embeddings/chunker.js +0 -298
  62. package/dist/core/embeddings/chunker.js.map +0 -1
  63. package/dist/core/embeddings/client.d.ts +0 -30
  64. package/dist/core/embeddings/client.d.ts.map +0 -1
  65. package/dist/core/embeddings/client.js +0 -65
  66. package/dist/core/embeddings/client.js.map +0 -1
  67. package/dist/core/embeddings/crossfile.d.ts +0 -58
  68. package/dist/core/embeddings/crossfile.d.ts.map +0 -1
  69. package/dist/core/embeddings/crossfile.js +0 -202
  70. package/dist/core/embeddings/crossfile.js.map +0 -1
  71. package/dist/core/embeddings/enricher.d.ts +0 -53
  72. package/dist/core/embeddings/enricher.d.ts.map +0 -1
  73. package/dist/core/embeddings/enricher.js +0 -308
  74. package/dist/core/embeddings/enricher.js.map +0 -1
  75. package/dist/core/embeddings/index.d.ts +0 -13
  76. package/dist/core/embeddings/index.d.ts.map +0 -1
  77. package/dist/core/embeddings/index.js +0 -20
  78. package/dist/core/embeddings/index.js.map +0 -1
  79. package/dist/core/embeddings/reranker.d.ts +0 -41
  80. package/dist/core/embeddings/reranker.d.ts.map +0 -1
  81. package/dist/core/embeddings/reranker.js +0 -117
  82. package/dist/core/embeddings/reranker.js.map +0 -1
  83. package/dist/core/embeddings/store.d.ts +0 -93
  84. package/dist/core/embeddings/store.d.ts.map +0 -1
  85. package/dist/core/embeddings/store.js +0 -304
  86. package/dist/core/embeddings/store.js.map +0 -1
  87. package/dist/core/embeddings/types.d.ts +0 -77
  88. package/dist/core/embeddings/types.d.ts.map +0 -1
  89. package/dist/core/embeddings/types.js +0 -5
  90. package/dist/core/embeddings/types.js.map +0 -1
  91. package/dist/core/embeddings/watcher.d.ts +0 -130
  92. package/dist/core/embeddings/watcher.d.ts.map +0 -1
  93. package/dist/core/embeddings/watcher.js +0 -448
  94. package/dist/core/embeddings/watcher.js.map +0 -1
  95. package/dist/core/fallback/index.d.ts +0 -26
  96. package/dist/core/fallback/index.d.ts.map +0 -1
  97. package/dist/core/fallback/index.js +0 -76
  98. package/dist/core/fallback/index.js.map +0 -1
  99. package/dist/core/parser/index.d.ts +0 -64
  100. package/dist/core/parser/index.d.ts.map +0 -1
  101. package/dist/core/parser/index.js +0 -205
  102. package/dist/core/parser/index.js.map +0 -1
  103. package/dist/core/parser/languages.d.ts +0 -26
  104. package/dist/core/parser/languages.d.ts.map +0 -1
  105. package/dist/core/parser/languages.js +0 -101
  106. package/dist/core/parser/languages.js.map +0 -1
  107. package/dist/core/queries/helpers.d.ts +0 -72
  108. package/dist/core/queries/helpers.d.ts.map +0 -1
  109. package/dist/core/queries/helpers.js +0 -101
  110. package/dist/core/queries/helpers.js.map +0 -1
  111. package/dist/core/queries/index.d.ts +0 -144
  112. package/dist/core/queries/index.d.ts.map +0 -1
  113. package/dist/core/queries/index.js +0 -396
  114. package/dist/core/queries/index.js.map +0 -1
  115. package/dist/core/queries/loader.d.ts +0 -46
  116. package/dist/core/queries/loader.d.ts.map +0 -1
  117. package/dist/core/queries/loader.js +0 -216
  118. package/dist/core/queries/loader.js.map +0 -1
  119. package/dist/core/queries/patterns.d.ts +0 -10
  120. package/dist/core/queries/patterns.d.ts.map +0 -1
  121. package/dist/core/queries/patterns.js +0 -112
  122. package/dist/core/queries/patterns.js.map +0 -1
  123. package/dist/core/symbols/index.d.ts +0 -70
  124. package/dist/core/symbols/index.d.ts.map +0 -1
  125. package/dist/core/symbols/index.js +0 -359
  126. package/dist/core/symbols/index.js.map +0 -1
  127. package/dist/core/unified/index.d.ts +0 -118
  128. package/dist/core/unified/index.d.ts.map +0 -1
  129. package/dist/core/unified/index.js +0 -428
  130. package/dist/core/unified/index.js.map +0 -1
  131. package/dist/core/utils/assets.d.ts +0 -34
  132. package/dist/core/utils/assets.d.ts.map +0 -1
  133. package/dist/core/utils/assets.js +0 -85
  134. package/dist/core/utils/assets.js.map +0 -1
  135. package/dist/core/utils/cache.d.ts +0 -43
  136. package/dist/core/utils/cache.d.ts.map +0 -1
  137. package/dist/core/utils/cache.js +0 -60
  138. package/dist/core/utils/cache.js.map +0 -1
  139. package/dist/core/utils/index.d.ts +0 -7
  140. package/dist/core/utils/index.d.ts.map +0 -1
  141. package/dist/core/utils/index.js +0 -10
  142. package/dist/core/utils/index.js.map +0 -1
  143. package/dist/core/utils/tsconfig.d.ts +0 -34
  144. package/dist/core/utils/tsconfig.d.ts.map +0 -1
  145. package/dist/core/utils/tsconfig.js +0 -173
  146. package/dist/core/utils/tsconfig.js.map +0 -1
  147. package/dist/features/analyze-file/index.d.ts +0 -15
  148. package/dist/features/analyze-file/index.d.ts.map +0 -1
  149. package/dist/features/analyze-file/index.js +0 -164
  150. package/dist/features/analyze-file/index.js.map +0 -1
  151. package/dist/features/get-call-graph/index.d.ts +0 -24
  152. package/dist/features/get-call-graph/index.d.ts.map +0 -1
  153. package/dist/features/get-call-graph/index.js +0 -246
  154. package/dist/features/get-call-graph/index.js.map +0 -1
  155. package/dist/features/get-index-status/index.d.ts +0 -20
  156. package/dist/features/get-index-status/index.d.ts.map +0 -1
  157. package/dist/features/get-index-status/index.js +0 -90
  158. package/dist/features/get-index-status/index.js.map +0 -1
  159. package/dist/features/index-codebase/index.d.ts +0 -24
  160. package/dist/features/index-codebase/index.d.ts.map +0 -1
  161. package/dist/features/index-codebase/index.js +0 -283
  162. package/dist/features/index-codebase/index.js.map +0 -1
  163. package/dist/features/index.d.ts +0 -15
  164. package/dist/features/index.d.ts.map +0 -1
  165. package/dist/features/index.js +0 -28
  166. package/dist/features/index.js.map +0 -1
  167. package/dist/features/info/index.d.ts +0 -19
  168. package/dist/features/info/index.d.ts.map +0 -1
  169. package/dist/features/info/index.js +0 -41
  170. package/dist/features/info/index.js.map +0 -1
  171. package/dist/features/list-symbols/index.d.ts +0 -22
  172. package/dist/features/list-symbols/index.d.ts.map +0 -1
  173. package/dist/features/list-symbols/index.js +0 -74
  174. package/dist/features/list-symbols/index.js.map +0 -1
  175. package/dist/features/parse-ast/index.d.ts +0 -12
  176. package/dist/features/parse-ast/index.d.ts.map +0 -1
  177. package/dist/features/parse-ast/index.js +0 -71
  178. package/dist/features/parse-ast/index.js.map +0 -1
  179. package/dist/features/query-code/index.d.ts +0 -23
  180. package/dist/features/query-code/index.d.ts.map +0 -1
  181. package/dist/features/query-code/index.js +0 -96
  182. package/dist/features/query-code/index.js.map +0 -1
  183. package/dist/features/search-code/index.d.ts +0 -39
  184. package/dist/features/search-code/index.d.ts.map +0 -1
  185. package/dist/features/search-code/index.js +0 -258
  186. package/dist/features/search-code/index.js.map +0 -1
  187. package/dist/features/types.d.ts +0 -14
  188. package/dist/features/types.d.ts.map +0 -1
  189. package/dist/features/types.js +0 -2
  190. package/dist/features/types.js.map +0 -1
  191. package/dist/features/update-index/index.d.ts +0 -24
  192. package/dist/features/update-index/index.d.ts.map +0 -1
  193. package/dist/features/update-index/index.js +0 -358
  194. package/dist/features/update-index/index.js.map +0 -1
  195. package/dist/features/utils/content.d.ts +0 -30
  196. package/dist/features/utils/content.d.ts.map +0 -1
  197. package/dist/features/utils/content.js +0 -49
  198. package/dist/features/utils/content.js.map +0 -1
  199. package/dist/features/utils/index.d.ts +0 -6
  200. package/dist/features/utils/index.d.ts.map +0 -1
  201. package/dist/features/utils/index.js +0 -8
  202. package/dist/features/utils/index.js.map +0 -1
  203. package/dist/features/utils/result.d.ts +0 -37
  204. package/dist/features/utils/result.d.ts.map +0 -1
  205. package/dist/features/utils/result.js +0 -53
  206. package/dist/features/utils/result.js.map +0 -1
  207. package/dist/index.d.ts +0 -2
  208. package/dist/index.d.ts.map +0 -1
  209. package/dist/index.js +0 -4
  210. package/dist/index.js.map +0 -1
  211. package/dist/prompts/index.d.ts +0 -9
  212. package/dist/prompts/index.d.ts.map +0 -1
  213. package/dist/prompts/index.js +0 -188
  214. package/dist/prompts/index.js.map +0 -1
  215. package/dist/resources/index.d.ts +0 -3
  216. package/dist/resources/index.d.ts.map +0 -1
  217. package/dist/resources/index.js +0 -17
  218. package/dist/resources/index.js.map +0 -1
  219. package/dist/server.d.ts +0 -4
  220. package/dist/server.d.ts.map +0 -1
  221. package/dist/server.js +0 -24
  222. package/dist/server.js.map +0 -1
  223. package/dist/tools/adapter.d.ts +0 -4
  224. package/dist/tools/adapter.d.ts.map +0 -1
  225. package/dist/tools/adapter.js +0 -28
  226. package/dist/tools/adapter.js.map +0 -1
  227. package/dist/tools/index.d.ts +0 -5
  228. package/dist/tools/index.d.ts.map +0 -1
  229. package/dist/tools/index.js +0 -9
  230. package/dist/tools/index.js.map +0 -1
  231. package/dist/types/index.d.ts +0 -20
  232. package/dist/types/index.d.ts.map +0 -1
  233. package/dist/types/index.js +0 -2
  234. package/dist/types/index.js.map +0 -1
  235. package/dist/utils/colors.d.ts +0 -24
  236. package/dist/utils/colors.d.ts.map +0 -1
  237. package/dist/utils/colors.js +0 -30
  238. package/dist/utils/colors.js.map +0 -1
  239. package/dist/utils/index.d.ts +0 -4
  240. package/dist/utils/index.d.ts.map +0 -1
  241. package/dist/utils/index.js +0 -4
  242. package/dist/utils/index.js.map +0 -1
  243. package/dist/utils/logger.d.ts +0 -8
  244. package/dist/utils/logger.d.ts.map +0 -1
  245. package/dist/utils/logger.js +0 -57
  246. package/dist/utils/logger.js.map +0 -1
  247. package/dist/utils/spinner.d.ts +0 -11
  248. package/dist/utils/spinner.d.ts.map +0 -1
  249. package/dist/utils/spinner.js +0 -36
  250. package/dist/utils/spinner.js.map +0 -1
@@ -1,204 +0,0 @@
1
- import { toPosition } from "@core/parser";
2
- /**
3
- * Traverse AST tree in depth-first order
4
- * Return false from callback to stop traversal
5
- */
6
- export function traverseAST(node, callback, depth = 0) {
7
- const result = callback(node, depth);
8
- if (result === false) {
9
- return false;
10
- }
11
- if (node.children) {
12
- for (const child of node.children) {
13
- const shouldContinue = traverseAST(child, callback, depth + 1);
14
- if (!shouldContinue) {
15
- return false;
16
- }
17
- }
18
- }
19
- return true;
20
- }
21
- /**
22
- * Find all nodes matching a predicate
23
- */
24
- export function findNodes(root, predicate) {
25
- const matches = [];
26
- traverseAST(root, (node) => {
27
- if (predicate(node)) {
28
- matches.push(node);
29
- }
30
- return undefined;
31
- });
32
- return matches;
33
- }
34
- /**
35
- * Find all nodes of a specific type
36
- */
37
- export function findNodesByType(root, type) {
38
- return findNodes(root, (node) => node.type === type);
39
- }
40
- /**
41
- * Find all nodes of multiple types
42
- */
43
- export function findNodesByTypes(root, types) {
44
- const typeSet = new Set(types);
45
- return findNodes(root, (node) => typeSet.has(node.type));
46
- }
47
- /**
48
- * Find the first node matching a predicate
49
- */
50
- export function findFirstNode(root, predicate) {
51
- let found;
52
- traverseAST(root, (node) => {
53
- if (predicate(node)) {
54
- found = node;
55
- return false; // Stop traversal
56
- }
57
- return true;
58
- });
59
- return found;
60
- }
61
- /**
62
- * Find node at a specific position
63
- */
64
- export function findNodeAtPosition(root, line, column) {
65
- let found;
66
- traverseAST(root, (node) => {
67
- const startLine = node.start.line;
68
- const endLine = node.end.line;
69
- const startCol = node.start.column;
70
- const endCol = node.end.column;
71
- // Check if position is within node range
72
- const afterStart = line > startLine || (line === startLine && column >= startCol);
73
- const beforeEnd = line < endLine || (line === endLine && column <= endCol);
74
- if (afterStart && beforeEnd) {
75
- found = node; // Keep updating to get the most specific (deepest) node
76
- }
77
- return true;
78
- });
79
- return found;
80
- }
81
- /**
82
- * Get the path from root to a node
83
- */
84
- export function getNodePath(root, target) {
85
- const path = [];
86
- function search(node) {
87
- path.push(node);
88
- if (node.start.offset === target.start.offset &&
89
- node.end.offset === target.end.offset &&
90
- node.type === target.type) {
91
- return true;
92
- }
93
- if (node.children) {
94
- for (const child of node.children) {
95
- if (search(child)) {
96
- return true;
97
- }
98
- }
99
- }
100
- path.pop();
101
- return false;
102
- }
103
- return search(root) ? path : undefined;
104
- }
105
- /**
106
- * Get all ancestor types from a node to root
107
- */
108
- export function getAncestorTypes(root, target) {
109
- const path = getNodePath(root, target);
110
- return path ? path.map((n) => n.type) : [];
111
- }
112
- /**
113
- * Extract text from a position range
114
- */
115
- export function extractText(source, start, end) {
116
- return source.slice(start.offset, end.offset);
117
- }
118
- /**
119
- * Get line count of source code
120
- */
121
- export function getLineCount(source) {
122
- // Normalize line endings (handle CRLF and CR)
123
- const normalizedSource = source.replace(/\r\n/g, "\n").replace(/\r/g, "\n");
124
- return normalizedSource.split("\n").length;
125
- }
126
- /**
127
- * Extract a filtered/limited AST from a Tree-sitter tree
128
- */
129
- export function extractAST(rootNode, options = {}) {
130
- const { maxDepth, namedOnly = true, includeTypes, excludeTypes } = options;
131
- function shouldInclude(node) {
132
- if (namedOnly && !node.isNamed) {
133
- return false;
134
- }
135
- if (includeTypes && !includeTypes.includes(node.type)) {
136
- return false;
137
- }
138
- if (excludeTypes?.includes(node.type)) {
139
- return false;
140
- }
141
- return true;
142
- }
143
- function extract(node, depth) {
144
- const astNode = {
145
- type: node.type,
146
- text: node.text,
147
- start: toPosition(node.startPosition, node.startIndex),
148
- end: toPosition(node.endPosition, node.endIndex),
149
- isNamed: node.isNamed,
150
- };
151
- // Check depth limit
152
- if (maxDepth !== undefined && depth >= maxDepth) {
153
- return astNode;
154
- }
155
- // Process children
156
- const children = [];
157
- for (const child of node.namedChildren) {
158
- if (shouldInclude(child)) {
159
- children.push(extract(child, depth + 1));
160
- }
161
- }
162
- if (children.length > 0) {
163
- astNode.children = children;
164
- }
165
- return astNode;
166
- }
167
- return extract(rootNode, 0);
168
- }
169
- /**
170
- * Serialize AST to a compact string representation
171
- */
172
- export function serializeAST(node, indent = 0) {
173
- const prefix = " ".repeat(indent);
174
- let result = `${prefix}(${node.type}`;
175
- if (node.children && node.children.length > 0) {
176
- result += "\n";
177
- for (const child of node.children) {
178
- result += serializeAST(child, indent + 1) + "\n";
179
- }
180
- result += `${prefix})`;
181
- }
182
- else {
183
- // Leaf node - show text excerpt
184
- const text = node.text.length > 30 ? node.text.slice(0, 30) + "..." : node.text;
185
- const escaped = text.replace(/\n/g, "\\n").replace(/"/g, '\\"');
186
- result += ` "${escaped}")`;
187
- }
188
- return result;
189
- }
190
- export function getASTStats(root) {
191
- const stats = {
192
- totalNodes: 0,
193
- maxDepth: 0,
194
- nodeTypes: new Map(),
195
- };
196
- traverseAST(root, (node, depth) => {
197
- stats.totalNodes++;
198
- stats.maxDepth = Math.max(stats.maxDepth, depth);
199
- stats.nodeTypes.set(node.type, (stats.nodeTypes.get(node.type) ?? 0) + 1);
200
- return true;
201
- });
202
- return stats;
203
- }
204
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/ast/index.ts"],"names":[],"mappings":"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"}
@@ -1,152 +0,0 @@
1
- /**
2
- * Core AST types for Tree-sitter parsing
3
- */
4
- /**
5
- * Position in source code
6
- */
7
- export interface Position {
8
- /** Line number (1-based) */
9
- line: number;
10
- /** Column number (0-based) */
11
- column: number;
12
- /** Byte offset in the source */
13
- offset: number;
14
- }
15
- /**
16
- * AST Node representation
17
- */
18
- export interface ASTNode {
19
- /** Node type (e.g., function_declaration, class_definition) */
20
- type: string;
21
- /** Source text of this node */
22
- text: string;
23
- /** Start position */
24
- start: Position;
25
- /** End position */
26
- end: Position;
27
- /** Child nodes */
28
- children?: ASTNode[];
29
- /** Named fields (e.g., name, body, parameters) */
30
- fields?: Record<string, ASTNode | ASTNode[]>;
31
- /** Whether this is a named node */
32
- isNamed?: boolean;
33
- }
34
- /**
35
- * Symbol types that can be extracted from code
36
- */
37
- export type SymbolType = "function" | "class" | "variable" | "constant" | "interface" | "type" | "enum" | "method" | "property";
38
- /**
39
- * Code symbol (function, class, variable, etc.)
40
- */
41
- export interface Symbol {
42
- /** Symbol name */
43
- name: string;
44
- /** Symbol type */
45
- type: SymbolType;
46
- /** Start position */
47
- start: Position;
48
- /** End position */
49
- end: Position;
50
- /** Function/method signature (params and return type) */
51
- signature?: string;
52
- /** Modifiers (public, private, async, export, etc.) */
53
- modifiers?: string[];
54
- /** Documentation comment if present */
55
- documentation?: string;
56
- }
57
- /**
58
- * Import statement information
59
- */
60
- export interface Import {
61
- /** Module/package being imported */
62
- source: string;
63
- /** Imported names (empty for side-effect imports) */
64
- names: ImportedName[];
65
- /** Whether this is a default import */
66
- isDefault?: boolean;
67
- /** Whether this is a namespace import (import * as X) */
68
- isNamespace?: boolean;
69
- /** Start position */
70
- start: Position;
71
- /** End position */
72
- end: Position;
73
- }
74
- /**
75
- * Single imported name
76
- */
77
- export interface ImportedName {
78
- /** Original name in the module */
79
- name: string;
80
- /** Alias if renamed (import { x as y }) */
81
- alias?: string;
82
- }
83
- /**
84
- * Export statement information
85
- */
86
- export interface Export {
87
- /** Exported name */
88
- name: string;
89
- /** Whether this is a default export */
90
- isDefault?: boolean;
91
- /** Whether this is a re-export (export { x } from 'y') */
92
- isReExport?: boolean;
93
- /** Source module for re-exports */
94
- source?: string;
95
- /** Start position */
96
- start: Position;
97
- /** End position */
98
- end: Position;
99
- }
100
- /**
101
- * Query match result
102
- */
103
- export interface QueryMatch {
104
- /** Pattern index that matched */
105
- pattern: number;
106
- /** Captured nodes */
107
- captures: QueryCapture[];
108
- }
109
- /**
110
- * Single capture from a query
111
- */
112
- export interface QueryCapture {
113
- /** Capture name (e.g., @function.name) */
114
- name: string;
115
- /** Captured AST node */
116
- node: ASTNode;
117
- }
118
- /**
119
- * File analysis result
120
- */
121
- export interface FileAnalysis {
122
- /** File path */
123
- filePath: string;
124
- /** Detected language */
125
- language: string;
126
- /** Extracted symbols */
127
- symbols: Symbol[];
128
- /** Import statements */
129
- imports: Import[];
130
- /** Export statements */
131
- exports: Export[];
132
- /** Code metrics */
133
- metrics: CodeMetrics;
134
- /** Full AST (if requested) */
135
- ast?: ASTNode;
136
- }
137
- /**
138
- * Code metrics
139
- */
140
- export interface CodeMetrics {
141
- /** Total lines */
142
- lines: number;
143
- /** Number of functions/methods */
144
- functions: number;
145
- /** Number of classes */
146
- classes: number;
147
- /** Number of imports */
148
- imports: number;
149
- /** Number of exports */
150
- exports: number;
151
- }
152
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/ast/types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * Core AST types for Tree-sitter parsing
3
- */
4
- export {};
5
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/ast/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,17 +0,0 @@
1
- /**
2
- * Core constants used across modules
3
- */
4
- /**
5
- * Keywords to skip when extracting names from AST nodes
6
- * Used in symbol extraction to filter out language keywords
7
- */
8
- export declare const SKIP_KEYWORDS: Set<string>;
9
- /**
10
- * Default chunk size for text splitting fallback
11
- */
12
- export declare const DEFAULT_CHUNK_SIZE = 1000;
13
- /**
14
- * Default chunk overlap for text splitting fallback
15
- */
16
- export declare const DEFAULT_CHUNK_OVERLAP = 200;
17
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,eAAO,MAAM,aAAa,aAgCxB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB,OAAO,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,qBAAqB,MAAM,CAAC"}
@@ -1,49 +0,0 @@
1
- /**
2
- * Core constants used across modules
3
- */
4
- /**
5
- * Keywords to skip when extracting names from AST nodes
6
- * Used in symbol extraction to filter out language keywords
7
- */
8
- export const SKIP_KEYWORDS = new Set([
9
- // Function keywords
10
- "function",
11
- "func",
12
- "fn",
13
- "def",
14
- "fun",
15
- "async",
16
- "export",
17
- "public",
18
- "private",
19
- "protected",
20
- "static",
21
- "abstract",
22
- "override",
23
- "final",
24
- "let",
25
- "const",
26
- "var",
27
- // Class keywords
28
- "class",
29
- "struct",
30
- "interface",
31
- "trait",
32
- "object",
33
- "enum",
34
- "type",
35
- "module",
36
- "namespace",
37
- "protocol",
38
- "extension",
39
- "impl",
40
- ]);
41
- /**
42
- * Default chunk size for text splitting fallback
43
- */
44
- export const DEFAULT_CHUNK_SIZE = 1000;
45
- /**
46
- * Default chunk overlap for text splitting fallback
47
- */
48
- export const DEFAULT_CHUNK_OVERLAP = 200;
49
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IACnC,oBAAoB;IACpB,UAAU;IACV,MAAM;IACN,IAAI;IACJ,KAAK;IACL,KAAK;IACL,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,WAAW;IACX,QAAQ;IACR,UAAU;IACV,UAAU;IACV,OAAO;IACP,KAAK;IACL,OAAO;IACP,KAAK;IACL,iBAAiB;IACjB,OAAO;IACP,QAAQ;IACR,WAAW;IACX,OAAO;IACP,QAAQ;IACR,MAAM;IACN,MAAM;IACN,QAAQ;IACR,WAAW;IACX,UAAU;IACV,WAAW;IACX,MAAM;CACP,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEvC;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC"}
@@ -1,98 +0,0 @@
1
- /**
2
- * Call graph extraction and storage
3
- *
4
- * Extracts function call relationships from code using tree-sitter
5
- * to build a graph showing which functions call which.
6
- *
7
- * Features:
8
- * - Persistent caching in .src-index/call-graph.json
9
- * - Hash-based invalidation for changed files
10
- */
11
- import type { Position, Symbol } from "@core/ast/types";
12
- /**
13
- * A function call found in code
14
- */
15
- export interface FunctionCall {
16
- /** Name of the called function */
17
- callee: string;
18
- /** Position of the call */
19
- position: Position;
20
- /** Arguments passed (if extractable) */
21
- arguments?: string[];
22
- }
23
- /**
24
- * A node in the call graph
25
- */
26
- export interface CallGraphNode {
27
- /** Function/method name */
28
- name: string;
29
- /** Full qualified name (file:function) */
30
- qualifiedName: string;
31
- /** File path */
32
- filePath: string;
33
- /** Function type */
34
- type: string;
35
- /** Start position */
36
- start: Position;
37
- /** End position */
38
- end: Position;
39
- /** Functions this node calls */
40
- calls: string[];
41
- /** Functions that call this node */
42
- calledBy: string[];
43
- }
44
- /**
45
- * The complete call graph for a codebase
46
- */
47
- export interface CallGraph {
48
- /** All nodes in the graph */
49
- nodes: Map<string, CallGraphNode>;
50
- /** File paths included in the graph */
51
- files: string[];
52
- /** Total number of call edges */
53
- edgeCount: number;
54
- }
55
- /**
56
- * Call graph cache per file
57
- */
58
- interface FileCallData {
59
- symbols: Symbol[];
60
- calls: Map<string, FunctionCall[]>;
61
- }
62
- /**
63
- * Clear the call graph cache
64
- */
65
- export declare function clearCallGraphCache(): void;
66
- /**
67
- * Analyze a file and extract call graph data
68
- */
69
- export declare function analyzeFileForCallGraph(filePath: string, content: string): Promise<FileCallData | null>;
70
- /**
71
- * Build a call graph from multiple files
72
- *
73
- * Uses persistent caching with hash-based invalidation for performance.
74
- */
75
- export declare function buildCallGraph(files: {
76
- path: string;
77
- content: string;
78
- }[]): Promise<CallGraph>;
79
- /**
80
- * Get callers and callees for a specific function
81
- */
82
- export declare function getCallContext(graph: CallGraph, filePath: string, functionName: string): {
83
- callers: CallGraphNode[];
84
- callees: CallGraphNode[];
85
- } | null;
86
- /**
87
- * Format call context as a string for enrichment
88
- */
89
- export declare function formatCallContext(callers: CallGraphNode[], callees: CallGraphNode[], maxItems?: number): string;
90
- /**
91
- * Get call graph cache statistics
92
- */
93
- export declare function getCallGraphCacheStats(): {
94
- files: number;
95
- entries: string[];
96
- };
97
- export {};
98
- //# sourceMappingURL=callgraph.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"callgraph.d.ts","sourceRoot":"","sources":["../../../src/core/embeddings/callgraph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAMxD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,KAAK,EAAE,QAAQ,CAAC;IAChB,mBAAmB;IACnB,GAAG,EAAE,QAAQ,CAAC;IACd,gCAAgC;IAChC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,oCAAoC;IACpC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,6BAA6B;IAC7B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAClC,uCAAuC;IACvC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB;AAiHD;;GAEG;AACH,UAAU,YAAY;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;CACpC;AAID;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAiID;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAuC9B;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,GACzC,OAAO,CAAC,SAAS,CAAC,CA8FpB;AAuDD;;GAEG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACnB;IACD,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B,GAAG,IAAI,CA0BP;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,aAAa,EAAE,EACxB,OAAO,EAAE,aAAa,EAAE,EACxB,QAAQ,SAAI,GACX,MAAM,CAoBR;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAKA"}