indexer-cli 0.3.8 → 0.3.10

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.
@@ -38,14 +38,23 @@ const ts_morph_1 = require("ts-morph");
38
38
  const path = __importStar(require("node:path"));
39
39
  const fs = __importStar(require("node:fs"));
40
40
  class TypeScriptPlugin {
41
- id = 'typescript';
42
- fileExtensions = ['.ts', '.tsx', '.mts', '.cts', '.js', '.jsx'];
41
+ id = "typescript";
42
+ fileExtensions = [
43
+ ".ts",
44
+ ".tsx",
45
+ ".mts",
46
+ ".cts",
47
+ ".js",
48
+ ".jsx",
49
+ ];
43
50
  project;
44
51
  constructor() {
45
52
  this.project = new ts_morph_1.Project({ useInMemoryFileSystem: true });
46
53
  }
47
54
  parse(file) {
48
- const sourceFile = this.project.createSourceFile(file.path, file.content, { overwrite: true });
55
+ const sourceFile = this.project.createSourceFile(file.path, file.content, {
56
+ overwrite: true,
57
+ });
49
58
  return {
50
59
  languageId: this.id,
51
60
  path: file.path,
@@ -54,42 +63,45 @@ class TypeScriptPlugin {
54
63
  }
55
64
  getEntrypoints(filePaths) {
56
65
  const entrypointPatterns = {
57
- 'App.tsx': 8,
58
- 'app.tsx': 8,
59
- 'main.ts': 7,
60
- 'main.mts': 7,
61
- 'main.cts': 7,
62
- 'main.js': 6,
63
- 'main.jsx': 6,
64
- 'main.tsx': 6,
65
- 'server.ts': 7,
66
- 'server.mts': 7,
67
- 'server.cts': 7,
68
- 'server.js': 6,
69
- 'server.jsx': 6,
70
- 'app.ts': 6,
71
- 'app.mts': 6,
72
- 'app.cts': 6,
73
- 'cli.ts': 6,
74
- 'cli.mts': 6,
75
- 'cli.cts': 6,
76
- 'cli.js': 5,
77
- 'index.tsx': 5,
78
- 'index.ts': 5,
79
- 'index.mts': 5,
80
- 'index.cts': 5,
81
- 'index.js': 4,
82
- 'index.jsx': 4,
66
+ "App.tsx": 8,
67
+ "app.tsx": 8,
68
+ "main.ts": 7,
69
+ "main.mts": 7,
70
+ "main.cts": 7,
71
+ "main.js": 6,
72
+ "main.jsx": 6,
73
+ "main.tsx": 6,
74
+ "server.ts": 7,
75
+ "server.mts": 7,
76
+ "server.cts": 7,
77
+ "server.js": 6,
78
+ "server.jsx": 6,
79
+ "app.ts": 6,
80
+ "app.mts": 6,
81
+ "app.cts": 6,
82
+ "cli.ts": 6,
83
+ "cli.mts": 6,
84
+ "cli.cts": 6,
85
+ "cli.js": 5,
86
+ "index.tsx": 5,
87
+ "index.ts": 5,
88
+ "index.mts": 5,
89
+ "index.cts": 5,
90
+ "index.js": 4,
91
+ "index.jsx": 4,
83
92
  };
84
93
  const ranked = filePaths
85
94
  .map((filePath) => {
86
95
  const fileName = path.basename(filePath);
87
- const baseScore = entrypointPatterns[fileName] ?? 0;
96
+ const fileContent = this.readEntrypointCandidate(filePath);
97
+ const nameScore = entrypointPatterns[fileName] ?? 0;
98
+ const mainScore = this.hasMainEntrypointPattern(fileContent) ? 6 : 0;
99
+ const baseScore = Math.max(nameScore, mainScore);
88
100
  if (!baseScore)
89
101
  return null;
90
- const depth = filePath.split('/').length;
91
- const bonus = filePath.includes('/src/') ? 1 : 0;
92
- const penalty = filePath.includes('/dist/') ? 3 : 0;
102
+ const depth = filePath.split("/").length;
103
+ const bonus = filePath.includes("/src/") ? 1 : 0;
104
+ const penalty = filePath.includes("/dist/") ? 3 : 0;
93
105
  const score = baseScore * 10 - depth + bonus - penalty;
94
106
  return { path: filePath, score };
95
107
  })
@@ -103,29 +115,49 @@ class TypeScriptPlugin {
103
115
  const sourceFile = parsed.ast;
104
116
  const symbols = [];
105
117
  const isExportedSafe = (node) => {
106
- if (node && typeof node.isExported === 'function') {
118
+ if (node && typeof node.isExported === "function") {
107
119
  return node.isExported();
108
120
  }
109
- if (node && typeof node.hasModifier === 'function') {
121
+ if (node && typeof node.hasModifier === "function") {
110
122
  return node.hasModifier(ts_morph_1.SyntaxKind.ExportKeyword);
111
123
  }
112
124
  return false;
113
125
  };
114
126
  for (const f of sourceFile.getFunctions()) {
115
127
  symbols.push({
116
- id: `${sourceFile.getFilePath()}:func:${f.getName() || 'anon'}:${f.getStart()}`,
117
- name: f.getName() || 'anonymous',
118
- kind: 'function',
128
+ id: `${sourceFile.getFilePath()}:func:${f.getName() || "anon"}:${f.getStart()}`,
129
+ name: f.getName() || "anonymous",
130
+ kind: "function",
119
131
  filePath: sourceFile.getFilePath(),
120
132
  range: this.getRange(f),
121
133
  exported: isExportedSafe(f),
122
134
  });
123
135
  }
136
+ for (const iface of sourceFile.getInterfaces()) {
137
+ symbols.push({
138
+ id: `${sourceFile.getFilePath()}:interface:${iface.getName() || "anon"}:${iface.getStart()}`,
139
+ name: iface.getName() || "anonymous",
140
+ kind: "interface",
141
+ filePath: sourceFile.getFilePath(),
142
+ range: this.getRange(iface),
143
+ exported: isExportedSafe(iface),
144
+ });
145
+ }
146
+ for (const typeAlias of sourceFile.getTypeAliases()) {
147
+ symbols.push({
148
+ id: `${sourceFile.getFilePath()}:type:${typeAlias.getName() || "anon"}:${typeAlias.getStart()}`,
149
+ name: typeAlias.getName() || "anonymous",
150
+ kind: "type",
151
+ filePath: sourceFile.getFilePath(),
152
+ range: this.getRange(typeAlias),
153
+ exported: isExportedSafe(typeAlias),
154
+ });
155
+ }
124
156
  for (const c of sourceFile.getClasses()) {
125
157
  symbols.push({
126
- id: `${sourceFile.getFilePath()}:class:${c.getName() || 'anon'}:${c.getStart()}`,
127
- name: c.getName() || 'anonymous',
128
- kind: 'class',
158
+ id: `${sourceFile.getFilePath()}:class:${c.getName() || "anon"}:${c.getStart()}`,
159
+ name: c.getName() || "anonymous",
160
+ kind: "class",
129
161
  filePath: sourceFile.getFilePath(),
130
162
  range: this.getRange(c),
131
163
  exported: isExportedSafe(c),
@@ -134,7 +166,7 @@ class TypeScriptPlugin {
134
166
  symbols.push({
135
167
  id: `${sourceFile.getFilePath()}:method:${c.getName()}:${m.getName()}:${m.getStart()}`,
136
168
  name: m.getName(),
137
- kind: 'method',
169
+ kind: "method",
138
170
  filePath: sourceFile.getFilePath(),
139
171
  range: this.getRange(m),
140
172
  containerName: c.getName(),
@@ -148,8 +180,8 @@ class TypeScriptPlugin {
148
180
  const sourceFile = parsed.ast;
149
181
  const imports = [];
150
182
  const toRelative = (p) => {
151
- const normalized = p.replace(/\\/g, '/');
152
- return normalized.startsWith('/') ? normalized.substring(1) : normalized;
183
+ const normalized = p.replace(/\\/g, "/");
184
+ return normalized.startsWith("/") ? normalized.substring(1) : normalized;
153
185
  };
154
186
  const handleDeclaration = (decl, kind) => {
155
187
  const spec = decl.getModuleSpecifierValue();
@@ -163,7 +195,7 @@ class TypeScriptPlugin {
163
195
  }
164
196
  }
165
197
  catch (e) { }
166
- if (!resolvedPath && spec.startsWith('.')) {
198
+ if (!resolvedPath && spec.startsWith(".")) {
167
199
  try {
168
200
  const currentFileDir = path.dirname(path.resolve(process.cwd(), parsed.path));
169
201
  const absPath = path.resolve(currentFileDir, spec);
@@ -171,7 +203,7 @@ class TypeScriptPlugin {
171
203
  resolvedPath = path.relative(process.cwd(), absPath);
172
204
  }
173
205
  else {
174
- const extensions = ['.ts', '.tsx', '.js', '.jsx', '.d.ts'];
206
+ const extensions = [".ts", ".tsx", ".js", ".jsx", ".d.ts"];
175
207
  for (const ext of extensions) {
176
208
  const candidate = absPath + ext;
177
209
  if (fs.existsSync(candidate) && fs.statSync(candidate).isFile()) {
@@ -181,7 +213,7 @@ class TypeScriptPlugin {
181
213
  }
182
214
  }
183
215
  if (!resolvedPath) {
184
- const extensions = ['.ts', '.tsx', '.js', '.jsx', '.d.ts'];
216
+ const extensions = [".ts", ".tsx", ".js", ".jsx", ".d.ts"];
185
217
  for (const ext of extensions) {
186
218
  const candidate = path.join(absPath, `index${ext}`);
187
219
  if (fs.existsSync(candidate) && fs.statSync(candidate).isFile()) {
@@ -206,10 +238,10 @@ class TypeScriptPlugin {
206
238
  });
207
239
  };
208
240
  for (const decl of sourceFile.getImportDeclarations()) {
209
- handleDeclaration(decl, 'import');
241
+ handleDeclaration(decl, "import");
210
242
  }
211
243
  for (const decl of sourceFile.getExportDeclarations()) {
212
- handleDeclaration(decl, 'export');
244
+ handleDeclaration(decl, "export");
213
245
  }
214
246
  return imports;
215
247
  }
@@ -250,7 +282,7 @@ class TypeScriptPlugin {
250
282
  classifyChunkType(text) {
251
283
  const trimmed = text.trim();
252
284
  if (!trimmed)
253
- return 'impl';
285
+ return "impl";
254
286
  const lines = trimmed
255
287
  .split(/\r?\n/)
256
288
  .map((line) => line.trim())
@@ -258,13 +290,13 @@ class TypeScriptPlugin {
258
290
  if (lines.length > 0) {
259
291
  const importLikeLines = lines.filter((line) => /^(import\b|export\b.+\bfrom\b|const\s+.+\s*=\s*require\()/i.test(line)).length;
260
292
  if (importLikeLines / lines.length >= 0.75) {
261
- return 'imports';
293
+ return "imports";
262
294
  }
263
295
  }
264
296
  if (/(^|\s)(interface|type|enum)\b/.test(trimmed)) {
265
- return 'types';
297
+ return "types";
266
298
  }
267
- return 'impl';
299
+ return "impl";
268
300
  }
269
301
  extractPrimarySymbol(text) {
270
302
  const trimmed = text.trim();
@@ -290,6 +322,20 @@ class TypeScriptPlugin {
290
322
  buildChunkId(filePath, range) {
291
323
  return `${filePath}:${range.startLine}-${range.endLine}`;
292
324
  }
325
+ readEntrypointCandidate(filePath) {
326
+ try {
327
+ return fs.readFileSync(path.resolve(process.cwd(), filePath), "utf8");
328
+ }
329
+ catch {
330
+ return "";
331
+ }
332
+ }
333
+ hasMainEntrypointPattern(fileContent) {
334
+ if (!fileContent) {
335
+ return false;
336
+ }
337
+ return /export\s+(?:async\s+)?function\s+main\s*\(/.test(fileContent);
338
+ }
293
339
  splitOversizedSegment(segment, maxTokens, overlapTokens) {
294
340
  if (segment.estimatedTokens <= maxTokens) {
295
341
  return [segment];
@@ -324,7 +370,7 @@ class TypeScriptPlugin {
324
370
  const nextTokens = lineTokens[i] ?? 0;
325
371
  if (currentLines.length > 0 && currentTokens + nextTokens > maxTokens) {
326
372
  const endIndex = currentStartIndex + currentLines.length - 1;
327
- const chunkText = currentLines.join('\n');
373
+ const chunkText = currentLines.join("\n");
328
374
  results.push({
329
375
  text: chunkText,
330
376
  range: {
@@ -338,7 +384,8 @@ class TypeScriptPlugin {
338
384
  const overlapStart = overlapStartIndexFor(currentStartIndex, endIndex);
339
385
  currentStartIndex = overlapStart;
340
386
  currentLines = lines.slice(currentStartIndex, i);
341
- currentTokens = currentLines.length > 0 ? sumTokens(currentStartIndex, i - 1) : 0;
387
+ currentTokens =
388
+ currentLines.length > 0 ? sumTokens(currentStartIndex, i - 1) : 0;
342
389
  }
343
390
  currentLines.push(lines[i]);
344
391
  currentTokens += nextTokens;
@@ -346,7 +393,7 @@ class TypeScriptPlugin {
346
393
  if (currentLines.length > 0) {
347
394
  const endIndex = currentStartIndex + currentLines.length - 1;
348
395
  results.push({
349
- text: currentLines.join('\n'),
396
+ text: currentLines.join("\n"),
350
397
  range: {
351
398
  startLine: segment.range.startLine + currentStartIndex,
352
399
  startCol: 0,
@@ -369,7 +416,7 @@ class TypeScriptPlugin {
369
416
  const first = buffer[0];
370
417
  const last = buffer[buffer.length - 1];
371
418
  merged.push({
372
- text: buffer.map((segment) => segment.text).join(''),
419
+ text: buffer.map((segment) => segment.text).join(""),
373
420
  range: {
374
421
  startLine: first.range.startLine,
375
422
  startCol: first.range.startCol,
@@ -390,7 +437,8 @@ class TypeScriptPlugin {
390
437
  merged.push(segment);
391
438
  continue;
392
439
  }
393
- if (bufferTokens + segment.estimatedTokens <= maxTokens || bufferTokens < minTokens) {
440
+ if (bufferTokens + segment.estimatedTokens <= maxTokens ||
441
+ bufferTokens < minTokens) {
394
442
  buffer.push(segment);
395
443
  bufferTokens += segment.estimatedTokens;
396
444
  if (bufferTokens >= targetTokens) {
@@ -1 +1 @@
1
- {"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../src/languages/typescript.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../src/languages/typescript.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,53 +1,58 @@
1
1
  {
2
- "name": "indexer-cli",
3
- "version": "0.3.8",
4
- "description": "Lightweight CLI project indexer with semantic search via Ollama",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "bin": {
8
- "indexer-cli": "./bin/indexer-cli.js"
9
- },
10
- "files": [
11
- "bin",
12
- "dist",
13
- "README.md"
14
- ],
15
- "engines": {
16
- "node": ">=18"
17
- },
18
- "publishConfig": {
19
- "access": "public"
20
- },
21
- "scripts": {
22
- "build": "tsc",
23
- "dev": "tsc --watch",
24
- "start": "tsx bin/indexer-cli.js",
25
- "indexer-cli": "tsx bin/indexer-cli.js",
26
- "refresh-skills": "tsx bin/indexer-cli.js init --refresh-skills",
27
- "install:global": "npm run build && npm link --force",
28
- "uninstall:global": "npm unlink -g indexer-cli",
29
- "test": "vitest run",
30
- "test:watch": "vitest",
31
- "release": "bash scripts/publish.sh"
32
- },
33
- "dependencies": {
34
- "better-sqlite3": "^12.0.0",
35
- "commander": "^12.1.0",
36
- "p-limit": "^4.0.0",
37
- "sqlite-vec": "^0.1.9",
38
- "tree-sitter": "^0.21.1",
39
- "tree-sitter-c-sharp": "^0.23.1",
40
- "tree-sitter-gdscript": "^6.1.0",
41
- "tree-sitter-python": "^0.21.0",
42
- "tree-sitter-ruby": "^0.23.1",
43
- "ts-morph": "^21.0.0"
44
- },
45
- "devDependencies": {
46
- "@types/better-sqlite3": "^7.6.12",
47
- "@types/node": "^22.10.0",
48
- "@vitest/coverage-v8": "^4.1.3",
49
- "tsx": "^4.19.0",
50
- "typescript": "^5.7.0",
51
- "vitest": "^4.1.3"
52
- }
2
+ "name": "indexer-cli",
3
+ "version": "0.3.10",
4
+ "description": "Lightweight CLI project indexer with semantic search via Ollama",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "bin": {
8
+ "indexer-cli": "./bin/indexer-cli.js"
9
+ },
10
+ "files": [
11
+ "bin",
12
+ "dist",
13
+ "README.md"
14
+ ],
15
+ "engines": {
16
+ "node": ">=18"
17
+ },
18
+ "publishConfig": {
19
+ "access": "public"
20
+ },
21
+ "scripts": {
22
+ "build": "tsc",
23
+ "dev": "tsc --watch",
24
+ "start": "tsx bin/indexer-cli.js",
25
+ "indexer-cli": "tsx bin/indexer-cli.js",
26
+ "refresh-skills": "tsx bin/indexer-cli.js init --refresh-skills",
27
+ "install:global": "npm run build && npm link --force",
28
+ "uninstall:global": "npm unlink -g indexer-cli",
29
+ "test": "vitest run tests/unit/",
30
+ "test:watch": "vitest",
31
+ "test:cli": "vitest run tests/cli/ --testTimeout=180000 --no-file-parallelism",
32
+ "test:cli:python": "vitest run tests/cli/commands-python.test.ts --testTimeout=180000 --no-file-parallelism",
33
+ "test:cli:gdscript": "vitest run tests/cli/commands-gdscript.test.ts --testTimeout=180000 --no-file-parallelism",
34
+ "test:cli:csharp": "vitest run tests/cli/commands-csharp.test.ts --testTimeout=180000 --no-file-parallelism",
35
+ "test:cli:ruby": "vitest run tests/cli/commands-ruby.test.ts --testTimeout=180000 --no-file-parallelism",
36
+ "release": "bash scripts/publish.sh"
37
+ },
38
+ "dependencies": {
39
+ "better-sqlite3": "^12.0.0",
40
+ "commander": "^12.1.0",
41
+ "p-limit": "^4.0.0",
42
+ "sqlite-vec": "^0.1.9",
43
+ "tree-sitter": "^0.21.1",
44
+ "tree-sitter-c-sharp": "^0.23.1",
45
+ "tree-sitter-gdscript": "^6.1.0",
46
+ "tree-sitter-python": "^0.21.0",
47
+ "tree-sitter-ruby": "^0.23.1",
48
+ "ts-morph": "^21.0.0"
49
+ },
50
+ "devDependencies": {
51
+ "@types/better-sqlite3": "^7.6.12",
52
+ "@types/node": "^22.10.0",
53
+ "@vitest/coverage-v8": "^4.1.3",
54
+ "tsx": "^4.19.0",
55
+ "typescript": "^5.7.0",
56
+ "vitest": "^4.1.3"
57
+ }
53
58
  }