codesift-mcp 0.4.0 → 0.5.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 (204) hide show
  1. package/README.md +94 -25
  2. package/dist/cli/help.d.ts.map +1 -1
  3. package/dist/cli/help.js +8 -6
  4. package/dist/cli/help.js.map +1 -1
  5. package/dist/cli/platform.d.ts.map +1 -1
  6. package/dist/cli/platform.js +12 -14
  7. package/dist/cli/platform.js.map +1 -1
  8. package/dist/cli/setup.d.ts +1 -1
  9. package/dist/cli/setup.d.ts.map +1 -1
  10. package/dist/cli/setup.js +30 -6
  11. package/dist/cli/setup.js.map +1 -1
  12. package/dist/formatters.d.ts +2 -2
  13. package/dist/formatters.d.ts.map +1 -1
  14. package/dist/formatters.js +23 -0
  15. package/dist/formatters.js.map +1 -1
  16. package/dist/instructions.d.ts +1 -1
  17. package/dist/instructions.d.ts.map +1 -1
  18. package/dist/instructions.js +21 -21
  19. package/dist/parser/extractors/php.d.ts.map +1 -1
  20. package/dist/parser/extractors/php.js +37 -29
  21. package/dist/parser/extractors/php.js.map +1 -1
  22. package/dist/parser/extractors/typescript.d.ts.map +1 -1
  23. package/dist/parser/extractors/typescript.js +43 -0
  24. package/dist/parser/extractors/typescript.js.map +1 -1
  25. package/dist/parser/parse-cache.d.ts +39 -0
  26. package/dist/parser/parse-cache.d.ts.map +1 -0
  27. package/dist/parser/parse-cache.js +87 -0
  28. package/dist/parser/parse-cache.js.map +1 -0
  29. package/dist/parser/parser-manager.d.ts +1 -1
  30. package/dist/parser/parser-manager.d.ts.map +1 -1
  31. package/dist/parser/parser-manager.js +14 -5
  32. package/dist/parser/parser-manager.js.map +1 -1
  33. package/dist/parser/stub-languages.d.ts +2 -0
  34. package/dist/parser/stub-languages.d.ts.map +1 -0
  35. package/dist/parser/stub-languages.js +5 -0
  36. package/dist/parser/stub-languages.js.map +1 -0
  37. package/dist/register-tool-loaders.d.ts +130 -0
  38. package/dist/register-tool-loaders.d.ts.map +1 -0
  39. package/dist/register-tool-loaders.js +212 -0
  40. package/dist/register-tool-loaders.js.map +1 -0
  41. package/dist/register-tools.d.ts +2 -2
  42. package/dist/register-tools.d.ts.map +1 -1
  43. package/dist/register-tools.js +355 -634
  44. package/dist/register-tools.js.map +1 -1
  45. package/dist/search/tool-ranker.d.ts +90 -0
  46. package/dist/search/tool-ranker.d.ts.map +1 -0
  47. package/dist/search/tool-ranker.js +420 -0
  48. package/dist/search/tool-ranker.js.map +1 -0
  49. package/dist/server.d.ts.map +1 -1
  50. package/dist/server.js +23 -14
  51. package/dist/server.js.map +1 -1
  52. package/dist/storage/usage-tracker.d.ts.map +1 -1
  53. package/dist/storage/usage-tracker.js +4 -1
  54. package/dist/storage/usage-tracker.js.map +1 -1
  55. package/dist/tools/astro-actions.d.ts +54 -0
  56. package/dist/tools/astro-actions.d.ts.map +1 -0
  57. package/dist/tools/astro-actions.js +561 -0
  58. package/dist/tools/astro-actions.js.map +1 -0
  59. package/dist/tools/astro-audit.d.ts +87 -0
  60. package/dist/tools/astro-audit.d.ts.map +1 -0
  61. package/dist/tools/astro-audit.js +345 -0
  62. package/dist/tools/astro-audit.js.map +1 -0
  63. package/dist/tools/astro-content-collections.d.ts +44 -0
  64. package/dist/tools/astro-content-collections.d.ts.map +1 -0
  65. package/dist/tools/astro-content-collections.js +630 -0
  66. package/dist/tools/astro-content-collections.js.map +1 -0
  67. package/dist/tools/astro-islands.d.ts +3 -1
  68. package/dist/tools/astro-islands.d.ts.map +1 -1
  69. package/dist/tools/astro-islands.js +19 -4
  70. package/dist/tools/astro-islands.js.map +1 -1
  71. package/dist/tools/astro-migration.d.ts +31 -0
  72. package/dist/tools/astro-migration.d.ts.map +1 -0
  73. package/dist/tools/astro-migration.js +378 -0
  74. package/dist/tools/astro-migration.js.map +1 -0
  75. package/dist/tools/async-correctness.d.ts +26 -0
  76. package/dist/tools/async-correctness.d.ts.map +1 -0
  77. package/dist/tools/async-correctness.js +166 -0
  78. package/dist/tools/async-correctness.js.map +1 -0
  79. package/dist/tools/django-view-security-tools.d.ts +32 -0
  80. package/dist/tools/django-view-security-tools.d.ts.map +1 -0
  81. package/dist/tools/django-view-security-tools.js +184 -0
  82. package/dist/tools/django-view-security-tools.js.map +1 -0
  83. package/dist/tools/fastapi-depends.d.ts +63 -0
  84. package/dist/tools/fastapi-depends.d.ts.map +1 -0
  85. package/dist/tools/fastapi-depends.js +191 -0
  86. package/dist/tools/fastapi-depends.js.map +1 -0
  87. package/dist/tools/hono-analyze-app.js +1 -9
  88. package/dist/tools/hono-analyze-app.js.map +1 -1
  89. package/dist/tools/hono-api-contract.d.ts.map +1 -1
  90. package/dist/tools/hono-api-contract.js +41 -9
  91. package/dist/tools/hono-api-contract.js.map +1 -1
  92. package/dist/tools/hono-context-flow.js +1 -9
  93. package/dist/tools/hono-context-flow.js.map +1 -1
  94. package/dist/tools/hono-dead-routes.d.ts.map +1 -1
  95. package/dist/tools/hono-dead-routes.js +2 -9
  96. package/dist/tools/hono-dead-routes.js.map +1 -1
  97. package/dist/tools/hono-entry-resolver.d.ts +27 -0
  98. package/dist/tools/hono-entry-resolver.d.ts.map +1 -0
  99. package/dist/tools/hono-entry-resolver.js +31 -0
  100. package/dist/tools/hono-entry-resolver.js.map +1 -0
  101. package/dist/tools/hono-inline-analyze.js +1 -9
  102. package/dist/tools/hono-inline-analyze.js.map +1 -1
  103. package/dist/tools/hono-middleware-chain.d.ts +24 -6
  104. package/dist/tools/hono-middleware-chain.d.ts.map +1 -1
  105. package/dist/tools/hono-middleware-chain.js +77 -40
  106. package/dist/tools/hono-middleware-chain.js.map +1 -1
  107. package/dist/tools/hono-modules.js +1 -9
  108. package/dist/tools/hono-modules.js.map +1 -1
  109. package/dist/tools/hono-response-types.js +1 -9
  110. package/dist/tools/hono-response-types.js.map +1 -1
  111. package/dist/tools/hono-rpc-types.js +1 -9
  112. package/dist/tools/hono-rpc-types.js.map +1 -1
  113. package/dist/tools/hono-security.d.ts +14 -4
  114. package/dist/tools/hono-security.d.ts.map +1 -1
  115. package/dist/tools/hono-security.js +185 -14
  116. package/dist/tools/hono-security.js.map +1 -1
  117. package/dist/tools/hono-visualize.js +1 -9
  118. package/dist/tools/hono-visualize.js.map +1 -1
  119. package/dist/tools/nest-ext-tools.d.ts +115 -0
  120. package/dist/tools/nest-ext-tools.d.ts.map +1 -1
  121. package/dist/tools/nest-ext-tools.js +393 -0
  122. package/dist/tools/nest-ext-tools.js.map +1 -1
  123. package/dist/tools/nest-tools.d.ts +27 -0
  124. package/dist/tools/nest-tools.d.ts.map +1 -1
  125. package/dist/tools/nest-tools.js +137 -37
  126. package/dist/tools/nest-tools.js.map +1 -1
  127. package/dist/tools/nextjs-component-readers.d.ts +101 -0
  128. package/dist/tools/nextjs-component-readers.d.ts.map +1 -0
  129. package/dist/tools/nextjs-component-readers.js +287 -0
  130. package/dist/tools/nextjs-component-readers.js.map +1 -0
  131. package/dist/tools/nextjs-component-tools.d.ts +8 -78
  132. package/dist/tools/nextjs-component-tools.d.ts.map +1 -1
  133. package/dist/tools/nextjs-component-tools.js +9 -257
  134. package/dist/tools/nextjs-component-tools.js.map +1 -1
  135. package/dist/tools/nextjs-framework-audit-tools.d.ts +24 -1
  136. package/dist/tools/nextjs-framework-audit-tools.d.ts.map +1 -1
  137. package/dist/tools/nextjs-framework-audit-tools.js +184 -1
  138. package/dist/tools/nextjs-framework-audit-tools.js.map +1 -1
  139. package/dist/tools/nextjs-route-readers.d.ts +81 -0
  140. package/dist/tools/nextjs-route-readers.d.ts.map +1 -0
  141. package/dist/tools/nextjs-route-readers.js +340 -0
  142. package/dist/tools/nextjs-route-readers.js.map +1 -0
  143. package/dist/tools/nextjs-route-tools.d.ts +7 -71
  144. package/dist/tools/nextjs-route-tools.d.ts.map +1 -1
  145. package/dist/tools/nextjs-route-tools.js +9 -327
  146. package/dist/tools/nextjs-route-tools.js.map +1 -1
  147. package/dist/tools/pattern-tools.d.ts.map +1 -1
  148. package/dist/tools/pattern-tools.js +92 -2
  149. package/dist/tools/pattern-tools.js.map +1 -1
  150. package/dist/tools/php-tools.d.ts +14 -5
  151. package/dist/tools/php-tools.d.ts.map +1 -1
  152. package/dist/tools/php-tools.js +166 -64
  153. package/dist/tools/php-tools.js.map +1 -1
  154. package/dist/tools/plan-turn-tools.d.ts +89 -0
  155. package/dist/tools/plan-turn-tools.d.ts.map +1 -0
  156. package/dist/tools/plan-turn-tools.js +508 -0
  157. package/dist/tools/plan-turn-tools.js.map +1 -0
  158. package/dist/tools/project-tools.d.ts +1 -1
  159. package/dist/tools/project-tools.js +1 -1
  160. package/dist/tools/project-tools.js.map +1 -1
  161. package/dist/tools/pydantic-models.d.ts +46 -0
  162. package/dist/tools/pydantic-models.d.ts.map +1 -0
  163. package/dist/tools/pydantic-models.js +249 -0
  164. package/dist/tools/pydantic-models.js.map +1 -0
  165. package/dist/tools/python-audit.d.ts +40 -0
  166. package/dist/tools/python-audit.d.ts.map +1 -0
  167. package/dist/tools/python-audit.js +244 -0
  168. package/dist/tools/python-audit.js.map +1 -0
  169. package/dist/tools/python-constants-tools.d.ts +44 -0
  170. package/dist/tools/python-constants-tools.d.ts.map +1 -0
  171. package/dist/tools/python-constants-tools.js +525 -0
  172. package/dist/tools/python-constants-tools.js.map +1 -0
  173. package/dist/tools/react-tools.d.ts +46 -1
  174. package/dist/tools/react-tools.d.ts.map +1 -1
  175. package/dist/tools/react-tools.js +126 -1
  176. package/dist/tools/react-tools.js.map +1 -1
  177. package/dist/tools/review-diff-tools.d.ts +5 -0
  178. package/dist/tools/review-diff-tools.d.ts.map +1 -1
  179. package/dist/tools/review-diff-tools.js +109 -3
  180. package/dist/tools/review-diff-tools.js.map +1 -1
  181. package/dist/tools/search-tools.d.ts +3 -2
  182. package/dist/tools/search-tools.d.ts.map +1 -1
  183. package/dist/tools/search-tools.js +16 -3
  184. package/dist/tools/search-tools.js.map +1 -1
  185. package/dist/tools/sql-tools.d.ts +40 -0
  186. package/dist/tools/sql-tools.d.ts.map +1 -1
  187. package/dist/tools/sql-tools.js +123 -0
  188. package/dist/tools/sql-tools.js.map +1 -1
  189. package/dist/tools/symbol-tools.d.ts.map +1 -1
  190. package/dist/tools/symbol-tools.js +7 -10
  191. package/dist/tools/symbol-tools.js.map +1 -1
  192. package/dist/tools/taint-tools.d.ts +43 -0
  193. package/dist/tools/taint-tools.d.ts.map +1 -0
  194. package/dist/tools/taint-tools.js +922 -0
  195. package/dist/tools/taint-tools.js.map +1 -0
  196. package/dist/utils/import-graph.d.ts +6 -0
  197. package/dist/utils/import-graph.d.ts.map +1 -1
  198. package/dist/utils/import-graph.js +43 -7
  199. package/dist/utils/import-graph.js.map +1 -1
  200. package/package.json +3 -3
  201. package/rules/codesift.md +51 -13
  202. package/rules/codesift.mdc +51 -13
  203. package/rules/codex.md +51 -13
  204. package/rules/gemini.md +51 -13
@@ -193,6 +193,39 @@ function getDocstring(node, source) {
193
193
  }
194
194
  return undefined;
195
195
  }
196
+ function getDecoratorText(node) {
197
+ return node.text.trim();
198
+ }
199
+ function collectOwnDecorators(node) {
200
+ return node.namedChildren.filter((child) => child.type === "decorator");
201
+ }
202
+ function collectLeadingSiblingDecorators(node) {
203
+ const decorators = [];
204
+ let sibling = node.previousNamedSibling;
205
+ while (sibling && sibling.type === "decorator") {
206
+ decorators.unshift(sibling);
207
+ sibling = sibling.previousNamedSibling;
208
+ }
209
+ return decorators;
210
+ }
211
+ function getDecorators(node) {
212
+ const decoratorNodes = [
213
+ ...collectOwnDecorators(node),
214
+ ...collectLeadingSiblingDecorators(node),
215
+ ];
216
+ if (decoratorNodes.length === 0)
217
+ return [];
218
+ const seen = new Set();
219
+ const decorators = [];
220
+ for (const decorator of decoratorNodes) {
221
+ const text = getDecoratorText(decorator);
222
+ if (seen.has(text))
223
+ continue;
224
+ seen.add(text);
225
+ decorators.push(text);
226
+ }
227
+ return decorators;
228
+ }
196
229
  /**
197
230
  * Build a trimmed "shell" of a class — keeps field declarations and method
198
231
  * signatures but replaces method bodies with `{ … }`.
@@ -264,10 +297,12 @@ export function extractTypeScriptSymbols(tree, filePath, source, repo) {
264
297
  if (name) {
265
298
  // React detection: hook (useX) or component (PascalCase + JSX return)
266
299
  const kind = classifyReactKind(name, node);
300
+ const decorators = getDecorators(node);
267
301
  const sym = makeSymbol(node, name, kind, filePath, source, repo, {
268
302
  parentId,
269
303
  docstring: getDocstring(node, source),
270
304
  signature: getSignature(node, source),
305
+ decorators: decorators.length > 0 ? decorators : undefined,
271
306
  });
272
307
  symbols.push(sym);
273
308
  }
@@ -332,9 +367,11 @@ export function extractTypeScriptSymbols(tree, filePath, source, repo) {
332
367
  const name = getNodeName(node) ?? "<anonymous>";
333
368
  // React class component: class Foo extends Component / React.Component / PureComponent
334
369
  const kind = isReactClassComponent(node) ? "component" : "class";
370
+ const decorators = getDecorators(node);
335
371
  const sym = makeSymbol(node, name, kind, filePath, source, repo, {
336
372
  parentId,
337
373
  docstring: getDocstring(node, source),
374
+ decorators: decorators.length > 0 ? decorators : undefined,
338
375
  });
339
376
  // Walk class body with this class as parent (before trimming so children get full source)
340
377
  for (const child of node.namedChildren) {
@@ -349,10 +386,12 @@ export function extractTypeScriptSymbols(tree, filePath, source, repo) {
349
386
  // abstract doSomething(): void; inside abstract classes
350
387
  const name = getNodeName(node);
351
388
  if (name) {
389
+ const decorators = getDecorators(node);
352
390
  const sym = makeSymbol(node, name, "method", filePath, source, repo, {
353
391
  parentId,
354
392
  docstring: getDocstring(node, source),
355
393
  signature: getSignature(node, source),
394
+ decorators: decorators.length > 0 ? decorators : undefined,
356
395
  });
357
396
  symbols.push(sym);
358
397
  }
@@ -361,10 +400,12 @@ export function extractTypeScriptSymbols(tree, filePath, source, repo) {
361
400
  case "method_definition": {
362
401
  const name = getNodeName(node);
363
402
  if (name) {
403
+ const decorators = getDecorators(node);
364
404
  const sym = makeSymbol(node, name, "method", filePath, source, repo, {
365
405
  parentId,
366
406
  docstring: getDocstring(node, source),
367
407
  signature: getSignature(node, source),
408
+ decorators: decorators.length > 0 ? decorators : undefined,
368
409
  });
369
410
  symbols.push(sym);
370
411
  }
@@ -373,9 +414,11 @@ export function extractTypeScriptSymbols(tree, filePath, source, repo) {
373
414
  case "public_field_definition": {
374
415
  const name = getNodeName(node);
375
416
  if (name) {
417
+ const decorators = getDecorators(node);
376
418
  const sym = makeSymbol(node, name, "field", filePath, source, repo, {
377
419
  parentId,
378
420
  docstring: getDocstring(node, source),
421
+ decorators: decorators.length > 0 ? decorators : undefined,
379
422
  });
380
423
  symbols.push(sym);
381
424
  }
@@ -1 +1 @@
1
- {"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../src/parser/extractors/typescript.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../src/parser/extractors/typescript.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Parse cache — memoize tree-sitter parse trees by content hash.
3
+ *
4
+ * During indexing, a single Python file may be parsed twice:
5
+ * 1. By extractPythonSymbols() in the symbol extraction pipeline
6
+ * 2. By collectImportEdges() when building the Python import graph
7
+ *
8
+ * This cache stores parsed trees keyed by a cheap content hash so the
9
+ * second call is a no-op. Size-bounded via LRU eviction (default 500
10
+ * entries ≈ 10-50 MB on typical Python codebases).
11
+ *
12
+ * The cache is a singleton used across the indexing pipeline. Tests
13
+ * can reset via `resetParseCache()`.
14
+ */
15
+ import type Parser from "web-tree-sitter";
16
+ /**
17
+ * Get a cached parse tree, or null if not cached.
18
+ * Updates LRU access time on hit.
19
+ */
20
+ export declare function getCachedParse(language: string, source: string): Parser.Tree | null;
21
+ /**
22
+ * Store a parse tree in the cache. Evicts least-recently-accessed
23
+ * entries if the cache exceeds MAX_ENTRIES.
24
+ */
25
+ export declare function setCachedParse(language: string, source: string, tree: Parser.Tree): void;
26
+ /**
27
+ * Reset the cache and stats. Primarily for tests.
28
+ */
29
+ export declare function resetParseCache(): void;
30
+ /**
31
+ * Get cache stats for debugging / observability.
32
+ */
33
+ export declare function getParseCacheStats(): {
34
+ size: number;
35
+ hits: number;
36
+ misses: number;
37
+ hit_rate: number;
38
+ };
39
+ //# sourceMappingURL=parse-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-cache.d.ts","sourceRoot":"","sources":["../../src/parser/parse-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AA8B1C;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,MAAM,CAAC,IAAI,GAAG,IAAI,CAUpB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,CAAC,IAAI,GAChB,IAAI,CA2BN;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAKtC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAQA"}
@@ -0,0 +1,87 @@
1
+ const MAX_ENTRIES = 500;
2
+ const cache = new Map();
3
+ let hits = 0;
4
+ let misses = 0;
5
+ let accessCounter = 0;
6
+ /**
7
+ * Compute a fast 32-bit hash of source + language.
8
+ * Not cryptographic — just collision-resistant enough for cache keys.
9
+ */
10
+ function hashContent(language, source) {
11
+ // djb2 hash variant — fast, good distribution for source text
12
+ let h = 5381;
13
+ for (let i = 0; i < source.length; i++) {
14
+ h = ((h << 5) + h) ^ source.charCodeAt(i);
15
+ }
16
+ // Include language in key since the same source might parse differently
17
+ // (though in practice every file has exactly one language).
18
+ return `${language}:${source.length}:${h >>> 0}`;
19
+ }
20
+ /**
21
+ * Get a cached parse tree, or null if not cached.
22
+ * Updates LRU access time on hit.
23
+ */
24
+ export function getCachedParse(language, source) {
25
+ const key = hashContent(language, source);
26
+ const entry = cache.get(key);
27
+ if (!entry) {
28
+ misses++;
29
+ return null;
30
+ }
31
+ hits++;
32
+ entry.lastAccessed = ++accessCounter;
33
+ return entry.tree;
34
+ }
35
+ /**
36
+ * Store a parse tree in the cache. Evicts least-recently-accessed
37
+ * entries if the cache exceeds MAX_ENTRIES.
38
+ */
39
+ export function setCachedParse(language, source, tree) {
40
+ const key = hashContent(language, source);
41
+ if (cache.has(key)) {
42
+ const existing = cache.get(key);
43
+ existing.lastAccessed = ++accessCounter;
44
+ return;
45
+ }
46
+ // Evict LRU if full
47
+ if (cache.size >= MAX_ENTRIES) {
48
+ let oldestKey = null;
49
+ let oldestTime = Infinity;
50
+ for (const [k, e] of cache) {
51
+ if (e.lastAccessed < oldestTime) {
52
+ oldestTime = e.lastAccessed;
53
+ oldestKey = k;
54
+ }
55
+ }
56
+ if (oldestKey)
57
+ cache.delete(oldestKey);
58
+ }
59
+ cache.set(key, {
60
+ tree,
61
+ language,
62
+ contentHash: key,
63
+ lastAccessed: ++accessCounter,
64
+ });
65
+ }
66
+ /**
67
+ * Reset the cache and stats. Primarily for tests.
68
+ */
69
+ export function resetParseCache() {
70
+ cache.clear();
71
+ hits = 0;
72
+ misses = 0;
73
+ accessCounter = 0;
74
+ }
75
+ /**
76
+ * Get cache stats for debugging / observability.
77
+ */
78
+ export function getParseCacheStats() {
79
+ const total = hits + misses;
80
+ return {
81
+ size: cache.size,
82
+ hits,
83
+ misses,
84
+ hit_rate: total === 0 ? 0 : hits / total,
85
+ };
86
+ }
87
+ //# sourceMappingURL=parse-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-cache.js","sourceRoot":"","sources":["../../src/parser/parse-cache.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,7 @@ export declare function getLanguageForPath(filePath: string): string | null;
26
26
  * language string must be removed from here so H11 stops firing for those
27
27
  * files.
28
28
  */
29
- export declare const STUB_LANGUAGES: ReadonlySet<string>;
29
+ export { STUB_LANGUAGES } from "./stub-languages.js";
30
30
  /**
31
31
  * Returns true when the given `FileEntry.language` value is known to produce
32
32
  * structured symbols (i.e. not in `STUB_LANGUAGES`). This is the dynamic
@@ -1 +1 @@
1
- {"version":3,"file":"parser-manager.d.ts","sourceRoot":"","sources":["../../src/parser/parser-manager.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAyDrC,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAIhD;AAED,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAuBxE;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAElE;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQlE;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,CAG7C,CAAC;AAEH;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,CAoB7B"}
1
+ {"version":3,"file":"parser-manager.d.ts","sourceRoot":"","sources":["../../src/parser/parser-manager.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AA0DrC,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAIhD;AAED,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAuBxE;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAElE;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQlE;AAED;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,CA+B7B"}
@@ -1,6 +1,7 @@
1
1
  import Parser from "web-tree-sitter";
2
2
  import { fileURLToPath } from "node:url";
3
3
  import path from "node:path";
4
+ import { STUB_LANGUAGES } from "./stub-languages.js";
4
5
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
5
6
  let initialized = false;
6
7
  const parserCache = new Map();
@@ -111,10 +112,7 @@ export function getLanguageForPath(filePath) {
111
112
  * language string must be removed from here so H11 stops firing for those
112
113
  * files.
113
114
  */
114
- export const STUB_LANGUAGES = new Set([
115
- "text_stub",
116
- "config",
117
- ]);
115
+ export { STUB_LANGUAGES } from "./stub-languages.js";
118
116
  /**
119
117
  * Returns true when the given `FileEntry.language` value is known to produce
120
118
  * structured symbols (i.e. not in `STUB_LANGUAGES`). This is the dynamic
@@ -138,7 +136,18 @@ export async function parseFile(filePath, source) {
138
136
  if (!parser)
139
137
  return null;
140
138
  try {
141
- return parser.parse(source);
139
+ // Check parse cache first — Python files are parsed twice per index
140
+ // (symbols + imports), so caching the tree saves a second tree-sitter
141
+ // walk. Other languages are also cacheable but currently parse once.
142
+ // Uses dynamic import to avoid a circular dep (parse-cache imports
143
+ // Parser type, parser-manager depends on parse-cache for cache hits).
144
+ const { getCachedParse, setCachedParse } = await import("./parse-cache.js");
145
+ const cached = getCachedParse(language, source);
146
+ if (cached)
147
+ return cached;
148
+ const tree = parser.parse(source);
149
+ setCachedParse(language, source, tree);
150
+ return tree;
142
151
  }
143
152
  catch (err) {
144
153
  const message = err instanceof Error ? err.message : String(err);
@@ -1 +1 @@
1
- {"version":3,"file":"parser-manager.js","sourceRoot":"","sources":["../../src/parser/parser-manager.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/D,IAAI,WAAW,GAAG,KAAK,CAAC;AACxB,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;AAE9C,MAAM,aAAa,GAA2B;IAC5C,KAAK,EAAE,YAAY;IACnB,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,YAAY;IACnB,MAAM,EAAE,YAAY;IACpB,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,MAAM;IACb,OAAO,EAAE,MAAM;IACf,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,UAAU;IACvB,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,QAAQ;IACjB,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,QAAQ;IAChB,aAAa,EAAE,QAAQ;IACvB,oCAAoC;IACpC,4EAA4E;IAC5E,wEAAwE;IACxE,sEAAsE;IACtE,yEAAyE;IACzE,KAAK,EAAE,QAAQ,EAAQ,SAAS;IAChC,MAAM,EAAE,QAAQ,EAAO,gBAAgB;IACvC,QAAQ,EAAE,WAAW,EAAE,QAAQ;IAC/B,OAAO,EAAE,WAAW,EAAG,eAAe;IACtC,QAAQ,EAAE,WAAW,EAAE,QAAQ;IAC/B,MAAM,EAAE,WAAW,EAAI,UAAU;IACjC,OAAO,EAAE,WAAW,EAAG,gBAAgB;IACvC,KAAK,EAAE,WAAW,EAAK,SAAS;IAChC,MAAM,EAAE,WAAW,EAAI,gBAAgB;IACvC,MAAM,EAAE,WAAW,EAAI,MAAM;IAC7B,MAAM,EAAE,WAAW,EAAI,MAAM;IAC7B,MAAM,EAAE,WAAW,EAAI,MAAM;IAC7B,SAAS,EAAE,WAAW,EAAE,uBAAuB;IAC/C,MAAM,EAAE,WAAW,EAAI,oBAAoB;IAC3C,gDAAgD;IAChD,MAAM,EAAE,KAAK,EAAW,cAAc;CACvC,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,IAAI,WAAW;QAAE,OAAO;IACxB,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACpB,WAAW,GAAG,IAAI,CAAC;AACrB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,QAAgB;IAC9C,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAE1B,MAAM,UAAU,EAAE,CAAC;IAEnB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CACxB,SAAS,EACT,WAAW,EACX,eAAe,QAAQ,OAAO,CAC/B,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QAC5B,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACzB,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAClC,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,CAAC,KAAK,CAAC,2CAA2C,QAAQ,KAAK,OAAO,EAAE,CAAC,CAAC;QACjF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,GAAW;IACjD,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,yEAAyE;IACzE,2EAA2E;IAC3E,kDAAkD;IAClD,IAAI,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;QAAE,OAAO,YAAY,CAAC;IAE1D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,cAAc,GAAwB,IAAI,GAAG,CAAC;IACzD,WAAW;IACX,QAAQ;CACT,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAChD,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,QAAgB,EAChB,MAAc;IAEd,0EAA0E;IAC1E,yEAAyE;IACzE,kEAAkE;IAClE,0DAA0D;IAC1D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC,KAAK,YAAY;QAC5D,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpD,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,2BAA2B,QAAQ,KAAK,OAAO,EAAE,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"parser-manager.js","sourceRoot":"","sources":["../../src/parser/parser-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const STUB_LANGUAGES: ReadonlySet<string>;
2
+ //# sourceMappingURL=stub-languages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stub-languages.d.ts","sourceRoot":"","sources":["../../src/parser/stub-languages.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,CAG7C,CAAC"}
@@ -0,0 +1,5 @@
1
+ export const STUB_LANGUAGES = new Set([
2
+ "text_stub",
3
+ "config",
4
+ ]);
5
+ //# sourceMappingURL=stub-languages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stub-languages.js","sourceRoot":"","sources":["../../src/parser/stub-languages.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAwB,IAAI,GAAG,CAAC;IACzD,WAAW;IACX,QAAQ;CACT,CAAC,CAAC"}
@@ -0,0 +1,130 @@
1
+ export declare const indexFolder: typeof import("./tools/index-tools.js").indexFolder;
2
+ export declare const indexFile: typeof import("./tools/index-tools.js").indexFile;
3
+ export declare const indexRepo: typeof import("./tools/index-tools.js").indexRepo;
4
+ export declare const listAllRepos: typeof import("./tools/index-tools.js").listAllRepos;
5
+ export declare const invalidateCache: typeof import("./tools/index-tools.js").invalidateCache;
6
+ export declare const getCodeIndex: typeof import("./tools/index-tools.js").getCodeIndex;
7
+ export declare const searchSymbols: typeof import("./tools/search-tools.js").searchSymbols;
8
+ export declare const searchText: typeof import("./tools/search-tools.js").searchText;
9
+ export declare const semanticSearch: typeof import("./tools/search-tools.js").semanticSearch;
10
+ export declare const getFileTree: typeof import("./tools/outline-tools.js").getFileTree;
11
+ export declare const getFileOutline: typeof import("./tools/outline-tools.js").getFileOutline;
12
+ export declare const getRepoOutline: typeof import("./tools/outline-tools.js").getRepoOutline;
13
+ export declare const suggestQueries: typeof import("./tools/outline-tools.js").suggestQueries;
14
+ export declare const getSymbol: typeof import("./tools/symbol-tools.js").getSymbol;
15
+ export declare const getSymbols: typeof import("./tools/symbol-tools.js").getSymbols;
16
+ export declare const findAndShow: typeof import("./tools/symbol-tools.js").findAndShow;
17
+ export declare const findReferences: typeof import("./tools/symbol-tools.js").findReferences;
18
+ export declare const findReferencesBatch: typeof import("./tools/symbol-tools.js").findReferencesBatch;
19
+ export declare const findDeadCode: typeof import("./tools/symbol-tools.js").findDeadCode;
20
+ export declare const getContextBundle: typeof import("./tools/symbol-tools.js").getContextBundle;
21
+ export declare const formatRefsCompact: typeof import("./tools/symbol-tools.js").formatRefsCompact;
22
+ export declare const formatSymbolCompact: typeof import("./tools/symbol-tools.js").formatSymbolCompact;
23
+ export declare const formatSymbolsCompact: typeof import("./tools/symbol-tools.js").formatSymbolsCompact;
24
+ export declare const formatBundleCompact: typeof import("./tools/symbol-tools.js").formatBundleCompact;
25
+ export declare const traceCallChain: typeof import("./tools/graph-tools.js").traceCallChain;
26
+ export declare const traceComponentTree: typeof import("./tools/react-tools.js").traceComponentTree;
27
+ export declare const analyzeHooks: typeof import("./tools/react-tools.js").analyzeHooks;
28
+ export declare const analyzeRenders: typeof import("./tools/react-tools.js").analyzeRenders;
29
+ export declare const buildContextGraph: typeof import("./tools/react-tools.js").buildContextGraph;
30
+ export declare const auditCompilerReadiness: typeof import("./tools/react-tools.js").auditCompilerReadiness;
31
+ export declare const reactQuickstart: typeof import("./tools/react-tools.js").reactQuickstart;
32
+ export declare const impactAnalysis: typeof import("./tools/impact-tools.js").impactAnalysis;
33
+ export declare const traceRoute: typeof import("./tools/route-tools.js").traceRoute;
34
+ export declare const detectCommunities: typeof import("./tools/community-tools.js").detectCommunities;
35
+ export declare const assembleContext: typeof import("./tools/context-tools.js").assembleContext;
36
+ export declare const getKnowledgeMap: typeof import("./tools/context-tools.js").getKnowledgeMap;
37
+ export declare const diffOutline: typeof import("./tools/diff-tools.js").diffOutline;
38
+ export declare const changedSymbols: typeof import("./tools/diff-tools.js").changedSymbols;
39
+ export declare const generateClaudeMd: typeof import("./tools/generate-tools.js").generateClaudeMd;
40
+ export declare const codebaseRetrieval: typeof import("./retrieval/codebase-retrieval.js").codebaseRetrieval;
41
+ export declare const analyzeComplexity: typeof import("./tools/complexity-tools.js").analyzeComplexity;
42
+ export declare const findClones: typeof import("./tools/clone-tools.js").findClones;
43
+ export declare const analyzeHotspots: typeof import("./tools/hotspot-tools.js").analyzeHotspots;
44
+ export declare const crossRepoSearchSymbols: typeof import("./tools/cross-repo-tools.js").crossRepoSearchSymbols;
45
+ export declare const crossRepoFindReferences: typeof import("./tools/cross-repo-tools.js").crossRepoFindReferences;
46
+ export declare const searchPatterns: typeof import("./tools/pattern-tools.js").searchPatterns;
47
+ export declare const listPatterns: typeof import("./tools/pattern-tools.js").listPatterns;
48
+ export declare const generateReport: typeof import("./tools/report-tools.js").generateReport;
49
+ export declare const goToDefinition: typeof import("./lsp/lsp-tools.js").goToDefinition;
50
+ export declare const getTypeInfo: typeof import("./lsp/lsp-tools.js").getTypeInfo;
51
+ export declare const renameSymbol: typeof import("./lsp/lsp-tools.js").renameSymbol;
52
+ export declare const getCallHierarchy: typeof import("./lsp/lsp-tools.js").getCallHierarchy;
53
+ export declare const indexConversations: typeof import("./tools/conversation-tools.js").indexConversations;
54
+ export declare const searchConversations: typeof import("./tools/conversation-tools.js").searchConversations;
55
+ export declare const searchAllConversations: typeof import("./tools/conversation-tools.js").searchAllConversations;
56
+ export declare const findConversationsForSymbol: typeof import("./tools/conversation-tools.js").findConversationsForSymbol;
57
+ export declare const scanSecrets: typeof import("./tools/secret-tools.js").scanSecrets;
58
+ export declare const resolvePhpNamespace: typeof import("./tools/php-tools.js").resolvePhpNamespace;
59
+ export declare const tracePhpEvent: typeof import("./tools/php-tools.js").tracePhpEvent;
60
+ export declare const findPhpViews: typeof import("./tools/php-tools.js").findPhpViews;
61
+ export declare const resolvePhpService: typeof import("./tools/php-tools.js").resolvePhpService;
62
+ export declare const phpSecurityScan: typeof import("./tools/php-tools.js").phpSecurityScan;
63
+ export declare const phpProjectAudit: typeof import("./tools/php-tools.js").phpProjectAudit;
64
+ export declare const consolidateMemories: typeof import("./tools/memory-tools.js").consolidateMemories;
65
+ export declare const readMemory: typeof import("./tools/memory-tools.js").readMemory;
66
+ export declare const createAnalysisPlan: typeof import("./tools/coordinator-tools.js").createAnalysisPlan;
67
+ export declare const writeScratchpad: typeof import("./tools/coordinator-tools.js").writeScratchpad;
68
+ export declare const readScratchpad: typeof import("./tools/coordinator-tools.js").readScratchpad;
69
+ export declare const listScratchpad: typeof import("./tools/coordinator-tools.js").listScratchpad;
70
+ export declare const updateStepStatus: typeof import("./tools/coordinator-tools.js").updateStepStatus;
71
+ export declare const getPlan: typeof import("./tools/coordinator-tools.js").getPlan;
72
+ export declare const listPlans: typeof import("./tools/coordinator-tools.js").listPlans;
73
+ export declare const frequencyAnalysis: typeof import("./tools/frequency-tools.js").frequencyAnalysis;
74
+ export declare const findExtensionFunctions: typeof import("./tools/kotlin-tools.js").findExtensionFunctions;
75
+ export declare const analyzeSealedHierarchy: typeof import("./tools/kotlin-tools.js").analyzeSealedHierarchy;
76
+ export declare const traceSuspendChain: typeof import("./tools/kotlin-tools.js").traceSuspendChain;
77
+ export declare const analyzeKmpDeclarations: typeof import("./tools/kotlin-tools.js").analyzeKmpDeclarations;
78
+ export declare const traceFlowChain: typeof import("./tools/kotlin-tools.js").traceFlowChain;
79
+ export declare const traceHiltGraph: typeof import("./tools/hilt-tools.js").traceHiltGraph;
80
+ export declare const traceComposeTree: typeof import("./tools/compose-tools.js").traceComposeTree;
81
+ export declare const analyzeComposeRecomposition: typeof import("./tools/compose-tools.js").analyzeComposeRecomposition;
82
+ export declare const traceRoomSchema: typeof import("./tools/room-tools.js").traceRoomSchema;
83
+ export declare const extractKotlinSerializationContract: typeof import("./tools/serialization-tools.js").extractKotlinSerializationContract;
84
+ export declare const astroAnalyzeIslands: typeof import("./tools/astro-islands.js").astroAnalyzeIslands;
85
+ export declare const astroHydrationAudit: typeof import("./tools/astro-islands.js").astroHydrationAudit;
86
+ export declare const astroRouteMap: typeof import("./tools/astro-routes.js").astroRouteMap;
87
+ export declare const astroActionsAudit: typeof import("./tools/astro-actions.js").astroActionsAudit;
88
+ export declare const astroAudit: typeof import("./tools/astro-audit.js").astroAudit;
89
+ export declare const nextjsRouteMap: typeof import("./tools/nextjs-route-tools.js").nextjsRouteMap;
90
+ export declare const nextjsMetadataAudit: typeof import("./tools/nextjs-metadata-tools.js").nextjsMetadataAudit;
91
+ export declare const frameworkAudit: typeof import("./tools/nextjs-framework-audit-tools.js").frameworkAudit;
92
+ export declare const astroConfigAnalyze: typeof import("./tools/astro-config.js").astroConfigAnalyze;
93
+ export declare const astroContentCollections: typeof import("./tools/astro-content-collections.js").astroContentCollections;
94
+ export declare const analyzeProject: typeof import("./tools/project-tools.js").analyzeProject;
95
+ export declare const getExtractorVersions: typeof import("./tools/project-tools.js").getExtractorVersions;
96
+ export declare const getModelGraph: typeof import("./tools/model-tools.js").getModelGraph;
97
+ export declare const getTestFixtures: typeof import("./tools/pytest-tools.js").getTestFixtures;
98
+ export declare const findFrameworkWiring: typeof import("./tools/wiring-tools.js").findFrameworkWiring;
99
+ export declare const runRuff: typeof import("./tools/ruff-tools.js").runRuff;
100
+ export declare const parsePyproject: typeof import("./tools/pyproject-tools.js").parsePyproject;
101
+ export declare const resolveConstantValue: typeof import("./tools/python-constants-tools.js").resolveConstantValue;
102
+ export declare const effectiveDjangoViewSecurity: typeof import("./tools/django-view-security-tools.js").effectiveDjangoViewSecurity;
103
+ export declare const findPythonCallers: typeof import("./tools/python-callers.js").findPythonCallers;
104
+ export declare const taintTrace: typeof import("./tools/taint-tools.js").taintTrace;
105
+ export declare const analyzeDjangoSettings: typeof import("./tools/django-settings.js").analyzeDjangoSettings;
106
+ export declare const runMypy: typeof import("./tools/typecheck-tools.js").runMypy;
107
+ export declare const runPyright: typeof import("./tools/typecheck-tools.js").runPyright;
108
+ export declare const analyzePythonDeps: typeof import("./tools/python-deps-analyzer.js").analyzePythonDeps;
109
+ export declare const pythonAudit: typeof import("./tools/python-audit.js").pythonAudit;
110
+ export declare const traceFastAPIDepends: typeof import("./tools/fastapi-depends.js").traceFastAPIDepends;
111
+ export declare const analyzeAsyncCorrectness: typeof import("./tools/async-correctness.js").analyzeAsyncCorrectness;
112
+ export declare const getPydanticModels: typeof import("./tools/pydantic-models.js").getPydanticModels;
113
+ export declare const reviewDiff: typeof import("./tools/review-diff-tools.js").reviewDiff;
114
+ export declare const auditScan: typeof import("./tools/audit-tools.js").auditScan;
115
+ export declare const indexStatus: typeof import("./tools/status-tools.js").indexStatus;
116
+ export declare const auditAgentConfig: typeof import("./tools/agent-config-tools.js").auditAgentConfig;
117
+ export declare const testImpactAnalysis: typeof import("./tools/test-impact-tools.js").testImpactAnalysis;
118
+ export declare const dependencyAudit: typeof import("./tools/dependency-audit-tools.js").dependencyAudit;
119
+ export declare const migrationLint: typeof import("./tools/migration-lint-tools.js").migrationLint;
120
+ export declare const planTurn: typeof import("./tools/plan-turn-tools.js").planTurn;
121
+ export declare const formatPlanTurnResult: typeof import("./tools/plan-turn-tools.js").formatPlanTurnResult;
122
+ export declare const astroMigrationCheck: typeof import("./tools/astro-migration.js").astroMigrationCheck;
123
+ export declare const analyzePrismaSchema: typeof import("./tools/prisma-schema-tools.js").analyzePrismaSchema;
124
+ export declare const findPerfHotspots: typeof import("./tools/perf-tools.js").findPerfHotspots;
125
+ export declare const fanInFanOut: typeof import("./tools/coupling-tools.js").fanInFanOut;
126
+ export declare const coChangeAnalysis: typeof import("./tools/coupling-tools.js").coChangeAnalysis;
127
+ export declare const architectureSummary: typeof import("./tools/architecture-tools.js").architectureSummary;
128
+ export declare const nestAudit: typeof import("./tools/nest-tools.js").nestAudit;
129
+ export declare const explainQuery: typeof import("./tools/query-tools.js").explainQuery;
130
+ //# sourceMappingURL=register-tool-loaders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-tool-loaders.d.ts","sourceRoot":"","sources":["../src/register-tool-loaders.ts"],"names":[],"mappings":"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"}