@softerist/heuristic-mcp 3.2.3 → 3.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +387 -376
- package/config.jsonc +800 -800
- package/features/ann-config.js +102 -110
- package/features/clear-cache.js +81 -84
- package/features/find-similar-code.js +265 -286
- package/features/hybrid-search.js +487 -536
- package/features/index-codebase.js +3139 -3270
- package/features/lifecycle.js +1011 -1063
- package/features/package-version.js +277 -291
- package/features/register.js +351 -370
- package/features/resources.js +115 -130
- package/features/set-workspace.js +214 -240
- package/index.js +693 -758
- package/lib/cache-ops.js +22 -22
- package/lib/cache-utils.js +465 -519
- package/lib/cache.js +1749 -1849
- package/lib/call-graph.js +396 -396
- package/lib/cli.js +232 -226
- package/lib/config.js +1483 -1495
- package/lib/constants.js +511 -493
- package/lib/embed-query-process.js +206 -212
- package/lib/embedding-process.js +434 -451
- package/lib/embedding-worker.js +862 -934
- package/lib/ignore-patterns.js +276 -316
- package/lib/json-worker.js +14 -14
- package/lib/json-writer.js +302 -310
- package/lib/logging.js +116 -127
- package/lib/memory-logger.js +13 -13
- package/lib/onnx-backend.js +188 -193
- package/lib/path-utils.js +18 -23
- package/lib/project-detector.js +82 -84
- package/lib/server-lifecycle.js +133 -145
- package/lib/settings-editor.js +738 -739
- package/lib/slice-normalize.js +25 -31
- package/lib/tokenizer.js +168 -203
- package/lib/utils.js +364 -409
- package/lib/vector-store-binary.js +973 -991
- package/lib/vector-store-sqlite.js +377 -414
- package/lib/workspace-env.js +32 -34
- package/mcp_config.json +9 -9
- package/package.json +86 -86
- package/scripts/clear-cache.js +20 -20
- package/scripts/download-model.js +43 -43
- package/scripts/mcp-launcher.js +49 -49
- package/scripts/postinstall.js +12 -12
- package/search-configs.js +36 -36
package/config.jsonc
CHANGED
|
@@ -1,800 +1,800 @@
|
|
|
1
|
-
{
|
|
2
|
-
// Root directory to index (relative or absolute).
|
|
3
|
-
// Keep "." for dynamic workspace behavior so MCP roots / IDE workspace selection works.
|
|
4
|
-
"searchDirectory": ".",
|
|
5
|
-
// File extensions to include (without dot).
|
|
6
|
-
"fileExtensions": [
|
|
7
|
-
"js",
|
|
8
|
-
"ts",
|
|
9
|
-
"jsx",
|
|
10
|
-
"tsx",
|
|
11
|
-
"mjs",
|
|
12
|
-
"cjs",
|
|
13
|
-
"mts",
|
|
14
|
-
"cts",
|
|
15
|
-
"mjsx",
|
|
16
|
-
"cjsx",
|
|
17
|
-
"css",
|
|
18
|
-
"scss",
|
|
19
|
-
"sass",
|
|
20
|
-
"less",
|
|
21
|
-
"styl",
|
|
22
|
-
"stylus",
|
|
23
|
-
"postcss",
|
|
24
|
-
"html",
|
|
25
|
-
"htm",
|
|
26
|
-
"xml",
|
|
27
|
-
"svg",
|
|
28
|
-
"xhtml",
|
|
29
|
-
"vue",
|
|
30
|
-
"svelte",
|
|
31
|
-
"astro",
|
|
32
|
-
"wxml",
|
|
33
|
-
"wxs",
|
|
34
|
-
"py",
|
|
35
|
-
"pyw",
|
|
36
|
-
"pyx",
|
|
37
|
-
"pxd",
|
|
38
|
-
"pxi",
|
|
39
|
-
"ipynb",
|
|
40
|
-
"java",
|
|
41
|
-
"kt",
|
|
42
|
-
"kts",
|
|
43
|
-
"groovy",
|
|
44
|
-
"gvy",
|
|
45
|
-
"gradle",
|
|
46
|
-
"j",
|
|
47
|
-
"class",
|
|
48
|
-
"c",
|
|
49
|
-
"cpp",
|
|
50
|
-
"cc",
|
|
51
|
-
"cxx",
|
|
52
|
-
"h",
|
|
53
|
-
"hpp",
|
|
54
|
-
"hxx",
|
|
55
|
-
"h++",
|
|
56
|
-
"m",
|
|
57
|
-
"mm",
|
|
58
|
-
"objc",
|
|
59
|
-
"metal",
|
|
60
|
-
"cu",
|
|
61
|
-
"cuh",
|
|
62
|
-
"cs",
|
|
63
|
-
"csx",
|
|
64
|
-
"vb",
|
|
65
|
-
"vbs",
|
|
66
|
-
"vba",
|
|
67
|
-
"fs",
|
|
68
|
-
"fsx",
|
|
69
|
-
"fsi",
|
|
70
|
-
"go",
|
|
71
|
-
"rs",
|
|
72
|
-
"rlib",
|
|
73
|
-
"rb",
|
|
74
|
-
"erb",
|
|
75
|
-
"rake",
|
|
76
|
-
"gemspec",
|
|
77
|
-
"php",
|
|
78
|
-
"phtml",
|
|
79
|
-
"php3",
|
|
80
|
-
"php4",
|
|
81
|
-
"php5",
|
|
82
|
-
"phps",
|
|
83
|
-
"swift",
|
|
84
|
-
"sh",
|
|
85
|
-
"bash",
|
|
86
|
-
"zsh",
|
|
87
|
-
"fish",
|
|
88
|
-
"ksh",
|
|
89
|
-
"csh",
|
|
90
|
-
"tcsh",
|
|
91
|
-
"bat",
|
|
92
|
-
"cmd",
|
|
93
|
-
"ps1",
|
|
94
|
-
"psm1",
|
|
95
|
-
"psd1",
|
|
96
|
-
"json",
|
|
97
|
-
"json5",
|
|
98
|
-
"jsonc",
|
|
99
|
-
"yaml",
|
|
100
|
-
"yml",
|
|
101
|
-
"toml",
|
|
102
|
-
"ini",
|
|
103
|
-
"cfg",
|
|
104
|
-
"conf",
|
|
105
|
-
"properties",
|
|
106
|
-
"env",
|
|
107
|
-
"dhall",
|
|
108
|
-
"jsonnet",
|
|
109
|
-
"cue",
|
|
110
|
-
"kdl",
|
|
111
|
-
"sql",
|
|
112
|
-
"pgsql",
|
|
113
|
-
"mysql",
|
|
114
|
-
"sqlite",
|
|
115
|
-
"sqlpl",
|
|
116
|
-
"md",
|
|
117
|
-
"markdown",
|
|
118
|
-
"mdx",
|
|
119
|
-
"txt",
|
|
120
|
-
"rst",
|
|
121
|
-
"adoc",
|
|
122
|
-
"asciidoc",
|
|
123
|
-
"tex",
|
|
124
|
-
"latex",
|
|
125
|
-
"sty",
|
|
126
|
-
"r",
|
|
127
|
-
"rmd",
|
|
128
|
-
"rdata",
|
|
129
|
-
"rds",
|
|
130
|
-
"rda",
|
|
131
|
-
"jl",
|
|
132
|
-
"lua",
|
|
133
|
-
"pl",
|
|
134
|
-
"pm",
|
|
135
|
-
"t",
|
|
136
|
-
"pl6",
|
|
137
|
-
"pm6",
|
|
138
|
-
"clj",
|
|
139
|
-
"cljs",
|
|
140
|
-
"cljc",
|
|
141
|
-
"edn",
|
|
142
|
-
"scala",
|
|
143
|
-
"sbt",
|
|
144
|
-
"dart",
|
|
145
|
-
"drt",
|
|
146
|
-
"el",
|
|
147
|
-
"elc",
|
|
148
|
-
"lisp",
|
|
149
|
-
"lsp",
|
|
150
|
-
"scm",
|
|
151
|
-
"ss",
|
|
152
|
-
"erl",
|
|
153
|
-
"hrl",
|
|
154
|
-
"ex",
|
|
155
|
-
"exs",
|
|
156
|
-
"hs",
|
|
157
|
-
"lhs",
|
|
158
|
-
"ml",
|
|
159
|
-
"mli",
|
|
160
|
-
"v",
|
|
161
|
-
"vh",
|
|
162
|
-
"sv",
|
|
163
|
-
"svh",
|
|
164
|
-
"vhd",
|
|
165
|
-
"vhdl",
|
|
166
|
-
"coffee",
|
|
167
|
-
"litcoffee",
|
|
168
|
-
"pug",
|
|
169
|
-
"jade",
|
|
170
|
-
"handlebars",
|
|
171
|
-
"hbs",
|
|
172
|
-
"mustache",
|
|
173
|
-
"ejs",
|
|
174
|
-
"njk",
|
|
175
|
-
"liquid",
|
|
176
|
-
"jinja",
|
|
177
|
-
"jinja2",
|
|
178
|
-
"j2",
|
|
179
|
-
"twig",
|
|
180
|
-
"razor",
|
|
181
|
-
"cshtml",
|
|
182
|
-
"asp",
|
|
183
|
-
"aspx",
|
|
184
|
-
"jsp",
|
|
185
|
-
"jspx",
|
|
186
|
-
"haml",
|
|
187
|
-
"slim",
|
|
188
|
-
"rhtml",
|
|
189
|
-
"blade",
|
|
190
|
-
"webc",
|
|
191
|
-
"marko",
|
|
192
|
-
"proto",
|
|
193
|
-
"graphql",
|
|
194
|
-
"gql",
|
|
195
|
-
"sol",
|
|
196
|
-
"vy",
|
|
197
|
-
"tf",
|
|
198
|
-
"tfvars",
|
|
199
|
-
"hcl",
|
|
200
|
-
"nix",
|
|
201
|
-
"nixos",
|
|
202
|
-
"wasm",
|
|
203
|
-
"wat",
|
|
204
|
-
"asm",
|
|
205
|
-
"s",
|
|
206
|
-
"vim",
|
|
207
|
-
"vimrc",
|
|
208
|
-
"elm",
|
|
209
|
-
"pas",
|
|
210
|
-
"pp",
|
|
211
|
-
"p",
|
|
212
|
-
"ada",
|
|
213
|
-
"adb",
|
|
214
|
-
"ads",
|
|
215
|
-
"f",
|
|
216
|
-
"f77",
|
|
217
|
-
"f90",
|
|
218
|
-
"f95",
|
|
219
|
-
"f03",
|
|
220
|
-
"f08",
|
|
221
|
-
"for",
|
|
222
|
-
"fortran",
|
|
223
|
-
"d",
|
|
224
|
-
"di",
|
|
225
|
-
"nim",
|
|
226
|
-
"nimble",
|
|
227
|
-
"cr",
|
|
228
|
-
"crystal",
|
|
229
|
-
"ecr",
|
|
230
|
-
"zig",
|
|
231
|
-
"odin",
|
|
232
|
-
"glsl",
|
|
233
|
-
"hlsl",
|
|
234
|
-
"wgsl",
|
|
235
|
-
"prisma",
|
|
236
|
-
"bicep",
|
|
237
|
-
"pkl",
|
|
238
|
-
"ron",
|
|
239
|
-
"dockerfile",
|
|
240
|
-
"containerfile",
|
|
241
|
-
"mk",
|
|
242
|
-
"cmake",
|
|
243
|
-
"cmake.in",
|
|
244
|
-
"diff",
|
|
245
|
-
"patch",
|
|
246
|
-
"dot",
|
|
247
|
-
"gv",
|
|
248
|
-
"graphviz",
|
|
249
|
-
"awk",
|
|
250
|
-
"gawk",
|
|
251
|
-
"tcl",
|
|
252
|
-
"exp",
|
|
253
|
-
"ps",
|
|
254
|
-
"eps",
|
|
255
|
-
"mat",
|
|
256
|
-
"mata",
|
|
257
|
-
"abap",
|
|
258
|
-
"acds",
|
|
259
|
-
"asa",
|
|
260
|
-
"applescript",
|
|
261
|
-
"scpt",
|
|
262
|
-
"au3",
|
|
263
|
-
"bas",
|
|
264
|
-
"bi",
|
|
265
|
-
"bm",
|
|
266
|
-
"cls",
|
|
267
|
-
"frm",
|
|
268
|
-
"ctl",
|
|
269
|
-
"blitzbasic",
|
|
270
|
-
"bb",
|
|
271
|
-
"chpl",
|
|
272
|
-
"cbl",
|
|
273
|
-
"cob",
|
|
274
|
-
"cpy",
|
|
275
|
-
"cobol",
|
|
276
|
-
"cfm",
|
|
277
|
-
"cfc",
|
|
278
|
-
"cl",
|
|
279
|
-
"coq",
|
|
280
|
-
"dylan",
|
|
281
|
-
"dyl",
|
|
282
|
-
"intr",
|
|
283
|
-
"e",
|
|
284
|
-
"ecl",
|
|
285
|
-
"eclxml",
|
|
286
|
-
"eiffel",
|
|
287
|
-
"fancy",
|
|
288
|
-
"fy",
|
|
289
|
-
"factor",
|
|
290
|
-
"forth",
|
|
291
|
-
"fth",
|
|
292
|
-
"4th",
|
|
293
|
-
"frege",
|
|
294
|
-
"fr",
|
|
295
|
-
"gml",
|
|
296
|
-
"gnuplot",
|
|
297
|
-
"gp",
|
|
298
|
-
"gpi",
|
|
299
|
-
"gd",
|
|
300
|
-
"tres",
|
|
301
|
-
"tscn",
|
|
302
|
-
"golo",
|
|
303
|
-
"gosu",
|
|
304
|
-
"gs",
|
|
305
|
-
"gst",
|
|
306
|
-
"gsx",
|
|
307
|
-
"hack",
|
|
308
|
-
"hh",
|
|
309
|
-
"haxe",
|
|
310
|
-
"hx",
|
|
311
|
-
"hxsl",
|
|
312
|
-
"hy",
|
|
313
|
-
"idr",
|
|
314
|
-
"lidr",
|
|
315
|
-
"io",
|
|
316
|
-
"ioke",
|
|
317
|
-
"ik",
|
|
318
|
-
"isabelle",
|
|
319
|
-
"thy",
|
|
320
|
-
"ijs",
|
|
321
|
-
"jflex",
|
|
322
|
-
"flex",
|
|
323
|
-
"labview",
|
|
324
|
-
"lvproj",
|
|
325
|
-
"lfe",
|
|
326
|
-
"livecode",
|
|
327
|
-
"livescript",
|
|
328
|
-
"ls",
|
|
329
|
-
"llvm",
|
|
330
|
-
"ll",
|
|
331
|
-
"logos",
|
|
332
|
-
"xm",
|
|
333
|
-
"xmi",
|
|
334
|
-
"logtalk",
|
|
335
|
-
"lgt",
|
|
336
|
-
"lookml",
|
|
337
|
-
"mako",
|
|
338
|
-
"mao",
|
|
339
|
-
"mathematica",
|
|
340
|
-
"nb",
|
|
341
|
-
"cdf",
|
|
342
|
-
"nbp",
|
|
343
|
-
"ma",
|
|
344
|
-
"matlab",
|
|
345
|
-
"maxscript",
|
|
346
|
-
"ms",
|
|
347
|
-
"mercury",
|
|
348
|
-
"meson",
|
|
349
|
-
"wrap",
|
|
350
|
-
"mirah",
|
|
351
|
-
"druby",
|
|
352
|
-
"modelica",
|
|
353
|
-
"mo",
|
|
354
|
-
"modula2",
|
|
355
|
-
"mod",
|
|
356
|
-
"monkey",
|
|
357
|
-
"monkey2",
|
|
358
|
-
"nanomsg",
|
|
359
|
-
"nesc",
|
|
360
|
-
"nc",
|
|
361
|
-
"nginx",
|
|
362
|
-
"nginxconf",
|
|
363
|
-
"nit",
|
|
364
|
-
"nu",
|
|
365
|
-
"objdump",
|
|
366
|
-
"omgrofl",
|
|
367
|
-
"lol",
|
|
368
|
-
"ooc",
|
|
369
|
-
"opal",
|
|
370
|
-
"oxygene",
|
|
371
|
-
"oz",
|
|
372
|
-
"pan",
|
|
373
|
-
"papyrus",
|
|
374
|
-
"psc",
|
|
375
|
-
"parrot",
|
|
376
|
-
"pasm",
|
|
377
|
-
"pir",
|
|
378
|
-
"pawn",
|
|
379
|
-
"pwn",
|
|
380
|
-
"inc",
|
|
381
|
-
"pig",
|
|
382
|
-
"pike",
|
|
383
|
-
"pogoscript",
|
|
384
|
-
"pogo",
|
|
385
|
-
"pony",
|
|
386
|
-
"postscript",
|
|
387
|
-
"povray",
|
|
388
|
-
"pov",
|
|
389
|
-
"powerbuilder",
|
|
390
|
-
"pbl",
|
|
391
|
-
"srw",
|
|
392
|
-
"processing",
|
|
393
|
-
"pde",
|
|
394
|
-
"prolog",
|
|
395
|
-
"pro",
|
|
396
|
-
"propeller",
|
|
397
|
-
"spin",
|
|
398
|
-
"puppet",
|
|
399
|
-
"purebasic",
|
|
400
|
-
"pb",
|
|
401
|
-
"pbi",
|
|
402
|
-
"purescript",
|
|
403
|
-
"purs",
|
|
404
|
-
"q",
|
|
405
|
-
"k",
|
|
406
|
-
"qmake",
|
|
407
|
-
"pri",
|
|
408
|
-
"qml",
|
|
409
|
-
"racket",
|
|
410
|
-
"rkt",
|
|
411
|
-
"rktl",
|
|
412
|
-
"rktd",
|
|
413
|
-
"scrbl",
|
|
414
|
-
"ragel",
|
|
415
|
-
"rl",
|
|
416
|
-
"raml",
|
|
417
|
-
"rdoc",
|
|
418
|
-
"realbasic",
|
|
419
|
-
"rbbas",
|
|
420
|
-
"rbfrm",
|
|
421
|
-
"rbmnu",
|
|
422
|
-
"rbres",
|
|
423
|
-
"rbtbar",
|
|
424
|
-
"rbuistate",
|
|
425
|
-
"rebol",
|
|
426
|
-
"r2",
|
|
427
|
-
"r3",
|
|
428
|
-
"red",
|
|
429
|
-
"reds",
|
|
430
|
-
"redcode",
|
|
431
|
-
"cw",
|
|
432
|
-
"renpy",
|
|
433
|
-
"rpy",
|
|
434
|
-
"rexx",
|
|
435
|
-
"pprx",
|
|
436
|
-
"rex",
|
|
437
|
-
"roboconf",
|
|
438
|
-
"graph",
|
|
439
|
-
"instances",
|
|
440
|
-
"robot",
|
|
441
|
-
"rg",
|
|
442
|
-
"sage",
|
|
443
|
-
"sagews",
|
|
444
|
-
"saltstack",
|
|
445
|
-
"sls",
|
|
446
|
-
"sas",
|
|
447
|
-
"scheme",
|
|
448
|
-
"scilab",
|
|
449
|
-
"sci",
|
|
450
|
-
"sce",
|
|
451
|
-
"self",
|
|
452
|
-
"shen",
|
|
453
|
-
"slash",
|
|
454
|
-
"sl",
|
|
455
|
-
"smalltalk",
|
|
456
|
-
"st",
|
|
457
|
-
"smarty",
|
|
458
|
-
"tpl",
|
|
459
|
-
"sourcepawn",
|
|
460
|
-
"sp",
|
|
461
|
-
"sparql",
|
|
462
|
-
"rq",
|
|
463
|
-
"splunk",
|
|
464
|
-
"spl",
|
|
465
|
-
"sqf",
|
|
466
|
-
"squirrel",
|
|
467
|
-
"nut",
|
|
468
|
-
"stan",
|
|
469
|
-
"stata",
|
|
470
|
-
"do",
|
|
471
|
-
"ado",
|
|
472
|
-
"supercollider",
|
|
473
|
-
"sc",
|
|
474
|
-
"scd",
|
|
475
|
-
"systemverilog",
|
|
476
|
-
"tea",
|
|
477
|
-
"terra",
|
|
478
|
-
"textile",
|
|
479
|
-
"thrift",
|
|
480
|
-
"ti",
|
|
481
|
-
"tl",
|
|
482
|
-
"turing",
|
|
483
|
-
"tu",
|
|
484
|
-
"txl",
|
|
485
|
-
"unifiedparallelc",
|
|
486
|
-
"upc",
|
|
487
|
-
"unity3d",
|
|
488
|
-
"shader",
|
|
489
|
-
"unrealscript",
|
|
490
|
-
"uc",
|
|
491
|
-
"vala",
|
|
492
|
-
"vapi",
|
|
493
|
-
"vcl",
|
|
494
|
-
"volt",
|
|
495
|
-
"webidl",
|
|
496
|
-
"wisp",
|
|
497
|
-
"x10",
|
|
498
|
-
"xc",
|
|
499
|
-
"xojo_code",
|
|
500
|
-
"xojo_menu",
|
|
501
|
-
"xojo_report",
|
|
502
|
-
"xojo_script",
|
|
503
|
-
"xojo_toolbar",
|
|
504
|
-
"xojo_window",
|
|
505
|
-
"xquery",
|
|
506
|
-
"xq",
|
|
507
|
-
"xql",
|
|
508
|
-
"xqm",
|
|
509
|
-
"xqy",
|
|
510
|
-
"xs",
|
|
511
|
-
"xslt",
|
|
512
|
-
"xsl",
|
|
513
|
-
"xtend",
|
|
514
|
-
"yacc",
|
|
515
|
-
"y",
|
|
516
|
-
"yara",
|
|
517
|
-
"yar",
|
|
518
|
-
"zephir",
|
|
519
|
-
"zep",
|
|
520
|
-
"zimpl",
|
|
521
|
-
"webmanifest",
|
|
522
|
-
"manifest",
|
|
523
|
-
"lock",
|
|
524
|
-
"sum",
|
|
525
|
-
"log",
|
|
526
|
-
"csv",
|
|
527
|
-
"tsv",
|
|
528
|
-
"xls",
|
|
529
|
-
"xlsx",
|
|
530
|
-
"xlsm",
|
|
531
|
-
"xlsb",
|
|
532
|
-
"doc",
|
|
533
|
-
"docx",
|
|
534
|
-
"pdf",
|
|
535
|
-
"ppt",
|
|
536
|
-
"pptx",
|
|
537
|
-
"rtf",
|
|
538
|
-
"odt",
|
|
539
|
-
"ods",
|
|
540
|
-
"odp",
|
|
541
|
-
"ics",
|
|
542
|
-
"vcf",
|
|
543
|
-
"idx",
|
|
544
|
-
"sub",
|
|
545
|
-
"srt",
|
|
546
|
-
"ass",
|
|
547
|
-
"ssa",
|
|
548
|
-
"avs",
|
|
549
|
-
"d2v",
|
|
550
|
-
"m3u",
|
|
551
|
-
"m3u8",
|
|
552
|
-
"pls",
|
|
553
|
-
"nfo",
|
|
554
|
-
"sfv",
|
|
555
|
-
"md5",
|
|
556
|
-
"torrent",
|
|
557
|
-
"magnet",
|
|
558
|
-
"dockerignore",
|
|
559
|
-
"babelrc",
|
|
560
|
-
"eslintrc",
|
|
561
|
-
"prettierrc",
|
|
562
|
-
"stylelintrc",
|
|
563
|
-
"gitignore",
|
|
564
|
-
"gitattributes",
|
|
565
|
-
"editorconfig",
|
|
566
|
-
"npmrc",
|
|
567
|
-
"yarnrc",
|
|
568
|
-
],
|
|
569
|
-
// Specific filenames to include regardless of extension.
|
|
570
|
-
"fileNames": [
|
|
571
|
-
"Dockerfile",
|
|
572
|
-
"Containerfile",
|
|
573
|
-
"Makefile",
|
|
574
|
-
"Jenkinsfile",
|
|
575
|
-
"Vagrantfile",
|
|
576
|
-
"CMakeLists.txt",
|
|
577
|
-
".gitignore",
|
|
578
|
-
".gitattributes",
|
|
579
|
-
".editorconfig",
|
|
580
|
-
".npmrc",
|
|
581
|
-
".yarnrc",
|
|
582
|
-
".npmignore",
|
|
583
|
-
".dockerignore",
|
|
584
|
-
".eslintignore",
|
|
585
|
-
".prettierignore",
|
|
586
|
-
".env",
|
|
587
|
-
".env.example",
|
|
588
|
-
".env.local",
|
|
589
|
-
".env.development",
|
|
590
|
-
".env.production",
|
|
591
|
-
".babelrc",
|
|
592
|
-
".eslintrc",
|
|
593
|
-
".prettierrc",
|
|
594
|
-
".stylelintrc",
|
|
595
|
-
"browserslistrc",
|
|
596
|
-
"tsconfig.json",
|
|
597
|
-
"jsconfig.json",
|
|
598
|
-
"package.json",
|
|
599
|
-
"composer.json",
|
|
600
|
-
"Cargo.toml",
|
|
601
|
-
"go.mod",
|
|
602
|
-
"pom.xml",
|
|
603
|
-
"build.gradle",
|
|
604
|
-
"build.gradle.kts",
|
|
605
|
-
"settings.gradle",
|
|
606
|
-
"settings.gradle.kts",
|
|
607
|
-
"requirements.txt",
|
|
608
|
-
"Pipfile",
|
|
609
|
-
"pyproject.toml",
|
|
610
|
-
"Gemfile",
|
|
611
|
-
"mix.exs",
|
|
612
|
-
"pubspec.yaml",
|
|
613
|
-
"docker-compose.yml",
|
|
614
|
-
"docker-compose.yaml",
|
|
615
|
-
"makefile.am",
|
|
616
|
-
"makefile.in",
|
|
617
|
-
],
|
|
618
|
-
// Glob patterns to exclude from indexing.
|
|
619
|
-
"excludePatterns": [
|
|
620
|
-
"**/node_modules/**",
|
|
621
|
-
"**/dist/**",
|
|
622
|
-
"**/build/**",
|
|
623
|
-
"**/.git/**",
|
|
624
|
-
"**/coverage/**",
|
|
625
|
-
"**/.next/**",
|
|
626
|
-
"**/target/**",
|
|
627
|
-
"**/vendor/**",
|
|
628
|
-
"**/.smart-coding-cache/**",
|
|
629
|
-
],
|
|
630
|
-
// Indexing controls.
|
|
631
|
-
"indexing": {
|
|
632
|
-
// Enable project-type detection + smart ignore patterns.
|
|
633
|
-
"smartIndexing": true,
|
|
634
|
-
// Lines per chunk.
|
|
635
|
-
"chunkSize": 16,
|
|
636
|
-
// Overlapping lines between chunks.
|
|
637
|
-
"chunkOverlap": 4,
|
|
638
|
-
// Files per indexing batch.
|
|
639
|
-
"batchSize": 50,
|
|
640
|
-
// Skip files larger than this many bytes.
|
|
641
|
-
"maxFileSize": 1048576,
|
|
642
|
-
// Maximum number of search results.
|
|
643
|
-
"maxResults": 5,
|
|
644
|
-
// Enable file watcher for incremental indexing.
|
|
645
|
-
"watchFiles": true,
|
|
646
|
-
// Save incremental index checkpoints every 2s so interrupted runs can resume with minimal rework.
|
|
647
|
-
// Increase to 5000-10000 on slower disks if checkpoint writes feel too frequent.
|
|
648
|
-
"indexCheckpointIntervalMs": 2000,
|
|
649
|
-
},
|
|
650
|
-
// Logging and diagnostics.
|
|
651
|
-
"logging": {
|
|
652
|
-
// Enable verbose logging.
|
|
653
|
-
"verbose": true,
|
|
654
|
-
},
|
|
655
|
-
// Cache engine and serialization controls.
|
|
656
|
-
"cache": {
|
|
657
|
-
// NOTE: leave top-level "cacheDirectory" unset to keep per-workspace global cache hashing.
|
|
658
|
-
// This preserves resume/incremental indexing across IDE restarts.
|
|
659
|
-
// Persist embeddings between sessions.
|
|
660
|
-
"enableCache": true,
|
|
661
|
-
// Assume vectors are finite (skip validation).
|
|
662
|
-
"cacheVectorAssumeFinite": true,
|
|
663
|
-
// Decimal precision for cached vectors (null = default).
|
|
664
|
-
"cacheVectorFloatDigits": null,
|
|
665
|
-
// Write stream highWaterMark for cache files.
|
|
666
|
-
"cacheWriteHighWaterMark": 262144,
|
|
667
|
-
// Flush threshold (chars) for JSON writer.
|
|
668
|
-
"cacheVectorFlushChars": 262144,
|
|
669
|
-
// Validate vectors contain only finite numbers.
|
|
670
|
-
"cacheVectorCheckFinite": true,
|
|
671
|
-
// Avoid mutating vectors during serialization.
|
|
672
|
-
"cacheVectorNoMutation": false,
|
|
673
|
-
// Join threshold for JSON array chunks.
|
|
674
|
-
"cacheVectorJoinThreshold": 8192,
|
|
675
|
-
// Chunk size for JSON join optimization.
|
|
676
|
-
"cacheVectorJoinChunkSize": 2048,
|
|
677
|
-
// Wait time for active readers before saving cache (ms).
|
|
678
|
-
"saveReaderWaitTimeoutMs": 5000,
|
|
679
|
-
},
|
|
680
|
-
// Stale cache cleanup policy.
|
|
681
|
-
"cacheCleanup": {
|
|
682
|
-
// Remove stale caches automatically.
|
|
683
|
-
"autoCleanup": true,
|
|
684
|
-
},
|
|
685
|
-
// Worker-thread controls.
|
|
686
|
-
"worker": {
|
|
687
|
-
// Number of embedding workers (0 disables).
|
|
688
|
-
// Windows + heavy Jina models are more stable with child-process embedding than worker pools.
|
|
689
|
-
"workerThreads": 0,
|
|
690
|
-
// Worker batch timeout in milliseconds.
|
|
691
|
-
"workerBatchTimeoutMs": 120000,
|
|
692
|
-
// Failures before worker circuit opens.
|
|
693
|
-
"workerFailureThreshold": 1,
|
|
694
|
-
// Cooldown before re-enabling workers (ms).
|
|
695
|
-
"workerFailureCooldownMs": 600000,
|
|
696
|
-
// Max chunks per worker batch.
|
|
697
|
-
"workerMaxChunksPerBatch": 20,
|
|
698
|
-
// Allow fallback to main-thread embeddings.
|
|
699
|
-
"allowSingleThreadFallback": false,
|
|
700
|
-
// Abort worker embedding batches after repeated consecutive embedding failures.
|
|
701
|
-
"failFastEmbeddingErrors": false,
|
|
702
|
-
},
|
|
703
|
-
// Embedding/runtime controls.
|
|
704
|
-
"embedding": {
|
|
705
|
-
// Embedding model identifier.
|
|
706
|
-
"embeddingModel": "jinaai/jina-embeddings-v2-base-code",
|
|
707
|
-
// Preload the embedding model on startup. Set to false when using child processes for memory savings.
|
|
708
|
-
"preloadEmbeddingModel": false,
|
|
709
|
-
// Use child process per batch for memory isolation.
|
|
710
|
-
"embeddingProcessPerBatch": true,
|
|
711
|
-
// Auto-enable child process when no workers + heavy model.
|
|
712
|
-
"autoEmbeddingProcessPerBatch": false,
|
|
713
|
-
// Override embedding batch size (null = auto).
|
|
714
|
-
"embeddingBatchSize": null,
|
|
715
|
-
// ONNX threads used by embedding child process.
|
|
716
|
-
// 8 is a practical balance on 24-thread desktop CPUs for this workspace size.
|
|
717
|
-
"embeddingProcessNumThreads": 8,
|
|
718
|
-
// Embedding-child adaptive GC RSS threshold in MB (higher = less frequent GC).
|
|
719
|
-
"embeddingProcessGcRssThresholdMb": 2048,
|
|
720
|
-
// Minimum interval between embedding-child GC runs.
|
|
721
|
-
"embeddingProcessGcMinIntervalMs": 15000,
|
|
722
|
-
// Backstop GC cadence if threshold is not crossed.
|
|
723
|
-
"embeddingProcessGcMaxRequestsWithoutCollection": 8,
|
|
724
|
-
},
|
|
725
|
-
// Vector store backend controls.
|
|
726
|
-
"vectorStore": {
|
|
727
|
-
// Vector store format: json, binary, or sqlite.
|
|
728
|
-
"vectorStoreFormat": "binary",
|
|
729
|
-
// Content storage: external or inline.
|
|
730
|
-
"vectorStoreContentMode": "external",
|
|
731
|
-
// In-memory content cache entries (binary store).
|
|
732
|
-
"contentCacheEntries": 256,
|
|
733
|
-
// Vector loading mode: "disk" keeps RAM lower by streaming vectors as needed.
|
|
734
|
-
"vectorStoreLoadMode": "disk",
|
|
735
|
-
},
|
|
736
|
-
// Search scoring controls.
|
|
737
|
-
"search": {
|
|
738
|
-
// Weight for semantic similarity scoring.
|
|
739
|
-
"semanticWeight": 0.7,
|
|
740
|
-
// Score boost for exact text matches.
|
|
741
|
-
"exactMatchBoost": 1.5,
|
|
742
|
-
},
|
|
743
|
-
// Memory cleanup and memory-footprint controls.
|
|
744
|
-
"memoryCleanup": {
|
|
745
|
-
// Enable explicit GC (requires --expose-gc).
|
|
746
|
-
"enableExplicitGc": true,
|
|
747
|
-
// Drop in-memory vectors after indexing completes.
|
|
748
|
-
"clearCacheAfterIndex": true,
|
|
749
|
-
// Unload embedding model after indexing.
|
|
750
|
-
"unloadModelAfterIndex": true,
|
|
751
|
-
// Shutdown persistent query embedding child pool after indexing.
|
|
752
|
-
"shutdownQueryEmbeddingPoolAfterIndex": true,
|
|
753
|
-
// Unload embedding model after searches.
|
|
754
|
-
"unloadModelAfterSearch": true,
|
|
755
|
-
// Idle timeout before query embedding child process exits (ms).
|
|
756
|
-
"embeddingPoolIdleTimeoutMs": 2000,
|
|
757
|
-
// RSS threshold for optional incremental GC.
|
|
758
|
-
"incrementalGcThresholdMb": 512,
|
|
759
|
-
// Optional: print detailed phase memory traces for incremental indexing/update paths.
|
|
760
|
-
"incrementalMemoryProfile": false,
|
|
761
|
-
// Optional: recycle server process when RSS stays too high after incremental cleanup.
|
|
762
|
-
// Safe default is disabled.
|
|
763
|
-
"recycleServerOnHighRssAfterIncremental": false,
|
|
764
|
-
// RSS threshold (MB) for incremental recycle trigger.
|
|
765
|
-
"recycleServerOnHighRssThresholdMb": 4096,
|
|
766
|
-
// Minimum interval between recycle attempts (ms).
|
|
767
|
-
"recycleServerOnHighRssCooldownMs": 300000,
|
|
768
|
-
// Delay before recycle to let logs/responses flush (ms).
|
|
769
|
-
"recycleServerOnHighRssDelayMs": 2000,
|
|
770
|
-
},
|
|
771
|
-
// Call graph proximity boosting controls.
|
|
772
|
-
"callGraph": {
|
|
773
|
-
"callGraphEnabled": true,
|
|
774
|
-
"callGraphBoost": 0.15,
|
|
775
|
-
"callGraphMaxHops": 1,
|
|
776
|
-
},
|
|
777
|
-
// ANN index controls.
|
|
778
|
-
"ann": {
|
|
779
|
-
// Enable ANN index for large codebases.
|
|
780
|
-
"annEnabled": true,
|
|
781
|
-
// Minimum chunks required to build ANN.
|
|
782
|
-
"annMinChunks": 5000,
|
|
783
|
-
// Minimum ANN candidates to retrieve.
|
|
784
|
-
"annMinCandidates": 50,
|
|
785
|
-
// Maximum ANN candidates to retrieve.
|
|
786
|
-
"annMaxCandidates": 200,
|
|
787
|
-
// Scale ANN candidates by this multiplier.
|
|
788
|
-
"annCandidateMultiplier": 20,
|
|
789
|
-
// HNSW efConstruction value.
|
|
790
|
-
"annEfConstruction": 200,
|
|
791
|
-
// HNSW efSearch value.
|
|
792
|
-
"annEfSearch": 64,
|
|
793
|
-
// HNSW M parameter (graph degree).
|
|
794
|
-
"annM": 16,
|
|
795
|
-
// Persist ANN index to disk.
|
|
796
|
-
"annIndexCache": true,
|
|
797
|
-
// ANN distance metric.
|
|
798
|
-
"annMetric": "cosine",
|
|
799
|
-
},
|
|
800
|
-
}
|
|
1
|
+
{
|
|
2
|
+
// Root directory to index (relative or absolute).
|
|
3
|
+
// Keep "." for dynamic workspace behavior so MCP roots / IDE workspace selection works.
|
|
4
|
+
"searchDirectory": ".",
|
|
5
|
+
// File extensions to include (without dot).
|
|
6
|
+
"fileExtensions": [
|
|
7
|
+
"js",
|
|
8
|
+
"ts",
|
|
9
|
+
"jsx",
|
|
10
|
+
"tsx",
|
|
11
|
+
"mjs",
|
|
12
|
+
"cjs",
|
|
13
|
+
"mts",
|
|
14
|
+
"cts",
|
|
15
|
+
"mjsx",
|
|
16
|
+
"cjsx",
|
|
17
|
+
"css",
|
|
18
|
+
"scss",
|
|
19
|
+
"sass",
|
|
20
|
+
"less",
|
|
21
|
+
"styl",
|
|
22
|
+
"stylus",
|
|
23
|
+
"postcss",
|
|
24
|
+
"html",
|
|
25
|
+
"htm",
|
|
26
|
+
"xml",
|
|
27
|
+
"svg",
|
|
28
|
+
"xhtml",
|
|
29
|
+
"vue",
|
|
30
|
+
"svelte",
|
|
31
|
+
"astro",
|
|
32
|
+
"wxml",
|
|
33
|
+
"wxs",
|
|
34
|
+
"py",
|
|
35
|
+
"pyw",
|
|
36
|
+
"pyx",
|
|
37
|
+
"pxd",
|
|
38
|
+
"pxi",
|
|
39
|
+
"ipynb",
|
|
40
|
+
"java",
|
|
41
|
+
"kt",
|
|
42
|
+
"kts",
|
|
43
|
+
"groovy",
|
|
44
|
+
"gvy",
|
|
45
|
+
"gradle",
|
|
46
|
+
"j",
|
|
47
|
+
"class",
|
|
48
|
+
"c",
|
|
49
|
+
"cpp",
|
|
50
|
+
"cc",
|
|
51
|
+
"cxx",
|
|
52
|
+
"h",
|
|
53
|
+
"hpp",
|
|
54
|
+
"hxx",
|
|
55
|
+
"h++",
|
|
56
|
+
"m",
|
|
57
|
+
"mm",
|
|
58
|
+
"objc",
|
|
59
|
+
"metal",
|
|
60
|
+
"cu",
|
|
61
|
+
"cuh",
|
|
62
|
+
"cs",
|
|
63
|
+
"csx",
|
|
64
|
+
"vb",
|
|
65
|
+
"vbs",
|
|
66
|
+
"vba",
|
|
67
|
+
"fs",
|
|
68
|
+
"fsx",
|
|
69
|
+
"fsi",
|
|
70
|
+
"go",
|
|
71
|
+
"rs",
|
|
72
|
+
"rlib",
|
|
73
|
+
"rb",
|
|
74
|
+
"erb",
|
|
75
|
+
"rake",
|
|
76
|
+
"gemspec",
|
|
77
|
+
"php",
|
|
78
|
+
"phtml",
|
|
79
|
+
"php3",
|
|
80
|
+
"php4",
|
|
81
|
+
"php5",
|
|
82
|
+
"phps",
|
|
83
|
+
"swift",
|
|
84
|
+
"sh",
|
|
85
|
+
"bash",
|
|
86
|
+
"zsh",
|
|
87
|
+
"fish",
|
|
88
|
+
"ksh",
|
|
89
|
+
"csh",
|
|
90
|
+
"tcsh",
|
|
91
|
+
"bat",
|
|
92
|
+
"cmd",
|
|
93
|
+
"ps1",
|
|
94
|
+
"psm1",
|
|
95
|
+
"psd1",
|
|
96
|
+
"json",
|
|
97
|
+
"json5",
|
|
98
|
+
"jsonc",
|
|
99
|
+
"yaml",
|
|
100
|
+
"yml",
|
|
101
|
+
"toml",
|
|
102
|
+
"ini",
|
|
103
|
+
"cfg",
|
|
104
|
+
"conf",
|
|
105
|
+
"properties",
|
|
106
|
+
"env",
|
|
107
|
+
"dhall",
|
|
108
|
+
"jsonnet",
|
|
109
|
+
"cue",
|
|
110
|
+
"kdl",
|
|
111
|
+
"sql",
|
|
112
|
+
"pgsql",
|
|
113
|
+
"mysql",
|
|
114
|
+
"sqlite",
|
|
115
|
+
"sqlpl",
|
|
116
|
+
"md",
|
|
117
|
+
"markdown",
|
|
118
|
+
"mdx",
|
|
119
|
+
"txt",
|
|
120
|
+
"rst",
|
|
121
|
+
"adoc",
|
|
122
|
+
"asciidoc",
|
|
123
|
+
"tex",
|
|
124
|
+
"latex",
|
|
125
|
+
"sty",
|
|
126
|
+
"r",
|
|
127
|
+
"rmd",
|
|
128
|
+
"rdata",
|
|
129
|
+
"rds",
|
|
130
|
+
"rda",
|
|
131
|
+
"jl",
|
|
132
|
+
"lua",
|
|
133
|
+
"pl",
|
|
134
|
+
"pm",
|
|
135
|
+
"t",
|
|
136
|
+
"pl6",
|
|
137
|
+
"pm6",
|
|
138
|
+
"clj",
|
|
139
|
+
"cljs",
|
|
140
|
+
"cljc",
|
|
141
|
+
"edn",
|
|
142
|
+
"scala",
|
|
143
|
+
"sbt",
|
|
144
|
+
"dart",
|
|
145
|
+
"drt",
|
|
146
|
+
"el",
|
|
147
|
+
"elc",
|
|
148
|
+
"lisp",
|
|
149
|
+
"lsp",
|
|
150
|
+
"scm",
|
|
151
|
+
"ss",
|
|
152
|
+
"erl",
|
|
153
|
+
"hrl",
|
|
154
|
+
"ex",
|
|
155
|
+
"exs",
|
|
156
|
+
"hs",
|
|
157
|
+
"lhs",
|
|
158
|
+
"ml",
|
|
159
|
+
"mli",
|
|
160
|
+
"v",
|
|
161
|
+
"vh",
|
|
162
|
+
"sv",
|
|
163
|
+
"svh",
|
|
164
|
+
"vhd",
|
|
165
|
+
"vhdl",
|
|
166
|
+
"coffee",
|
|
167
|
+
"litcoffee",
|
|
168
|
+
"pug",
|
|
169
|
+
"jade",
|
|
170
|
+
"handlebars",
|
|
171
|
+
"hbs",
|
|
172
|
+
"mustache",
|
|
173
|
+
"ejs",
|
|
174
|
+
"njk",
|
|
175
|
+
"liquid",
|
|
176
|
+
"jinja",
|
|
177
|
+
"jinja2",
|
|
178
|
+
"j2",
|
|
179
|
+
"twig",
|
|
180
|
+
"razor",
|
|
181
|
+
"cshtml",
|
|
182
|
+
"asp",
|
|
183
|
+
"aspx",
|
|
184
|
+
"jsp",
|
|
185
|
+
"jspx",
|
|
186
|
+
"haml",
|
|
187
|
+
"slim",
|
|
188
|
+
"rhtml",
|
|
189
|
+
"blade",
|
|
190
|
+
"webc",
|
|
191
|
+
"marko",
|
|
192
|
+
"proto",
|
|
193
|
+
"graphql",
|
|
194
|
+
"gql",
|
|
195
|
+
"sol",
|
|
196
|
+
"vy",
|
|
197
|
+
"tf",
|
|
198
|
+
"tfvars",
|
|
199
|
+
"hcl",
|
|
200
|
+
"nix",
|
|
201
|
+
"nixos",
|
|
202
|
+
"wasm",
|
|
203
|
+
"wat",
|
|
204
|
+
"asm",
|
|
205
|
+
"s",
|
|
206
|
+
"vim",
|
|
207
|
+
"vimrc",
|
|
208
|
+
"elm",
|
|
209
|
+
"pas",
|
|
210
|
+
"pp",
|
|
211
|
+
"p",
|
|
212
|
+
"ada",
|
|
213
|
+
"adb",
|
|
214
|
+
"ads",
|
|
215
|
+
"f",
|
|
216
|
+
"f77",
|
|
217
|
+
"f90",
|
|
218
|
+
"f95",
|
|
219
|
+
"f03",
|
|
220
|
+
"f08",
|
|
221
|
+
"for",
|
|
222
|
+
"fortran",
|
|
223
|
+
"d",
|
|
224
|
+
"di",
|
|
225
|
+
"nim",
|
|
226
|
+
"nimble",
|
|
227
|
+
"cr",
|
|
228
|
+
"crystal",
|
|
229
|
+
"ecr",
|
|
230
|
+
"zig",
|
|
231
|
+
"odin",
|
|
232
|
+
"glsl",
|
|
233
|
+
"hlsl",
|
|
234
|
+
"wgsl",
|
|
235
|
+
"prisma",
|
|
236
|
+
"bicep",
|
|
237
|
+
"pkl",
|
|
238
|
+
"ron",
|
|
239
|
+
"dockerfile",
|
|
240
|
+
"containerfile",
|
|
241
|
+
"mk",
|
|
242
|
+
"cmake",
|
|
243
|
+
"cmake.in",
|
|
244
|
+
"diff",
|
|
245
|
+
"patch",
|
|
246
|
+
"dot",
|
|
247
|
+
"gv",
|
|
248
|
+
"graphviz",
|
|
249
|
+
"awk",
|
|
250
|
+
"gawk",
|
|
251
|
+
"tcl",
|
|
252
|
+
"exp",
|
|
253
|
+
"ps",
|
|
254
|
+
"eps",
|
|
255
|
+
"mat",
|
|
256
|
+
"mata",
|
|
257
|
+
"abap",
|
|
258
|
+
"acds",
|
|
259
|
+
"asa",
|
|
260
|
+
"applescript",
|
|
261
|
+
"scpt",
|
|
262
|
+
"au3",
|
|
263
|
+
"bas",
|
|
264
|
+
"bi",
|
|
265
|
+
"bm",
|
|
266
|
+
"cls",
|
|
267
|
+
"frm",
|
|
268
|
+
"ctl",
|
|
269
|
+
"blitzbasic",
|
|
270
|
+
"bb",
|
|
271
|
+
"chpl",
|
|
272
|
+
"cbl",
|
|
273
|
+
"cob",
|
|
274
|
+
"cpy",
|
|
275
|
+
"cobol",
|
|
276
|
+
"cfm",
|
|
277
|
+
"cfc",
|
|
278
|
+
"cl",
|
|
279
|
+
"coq",
|
|
280
|
+
"dylan",
|
|
281
|
+
"dyl",
|
|
282
|
+
"intr",
|
|
283
|
+
"e",
|
|
284
|
+
"ecl",
|
|
285
|
+
"eclxml",
|
|
286
|
+
"eiffel",
|
|
287
|
+
"fancy",
|
|
288
|
+
"fy",
|
|
289
|
+
"factor",
|
|
290
|
+
"forth",
|
|
291
|
+
"fth",
|
|
292
|
+
"4th",
|
|
293
|
+
"frege",
|
|
294
|
+
"fr",
|
|
295
|
+
"gml",
|
|
296
|
+
"gnuplot",
|
|
297
|
+
"gp",
|
|
298
|
+
"gpi",
|
|
299
|
+
"gd",
|
|
300
|
+
"tres",
|
|
301
|
+
"tscn",
|
|
302
|
+
"golo",
|
|
303
|
+
"gosu",
|
|
304
|
+
"gs",
|
|
305
|
+
"gst",
|
|
306
|
+
"gsx",
|
|
307
|
+
"hack",
|
|
308
|
+
"hh",
|
|
309
|
+
"haxe",
|
|
310
|
+
"hx",
|
|
311
|
+
"hxsl",
|
|
312
|
+
"hy",
|
|
313
|
+
"idr",
|
|
314
|
+
"lidr",
|
|
315
|
+
"io",
|
|
316
|
+
"ioke",
|
|
317
|
+
"ik",
|
|
318
|
+
"isabelle",
|
|
319
|
+
"thy",
|
|
320
|
+
"ijs",
|
|
321
|
+
"jflex",
|
|
322
|
+
"flex",
|
|
323
|
+
"labview",
|
|
324
|
+
"lvproj",
|
|
325
|
+
"lfe",
|
|
326
|
+
"livecode",
|
|
327
|
+
"livescript",
|
|
328
|
+
"ls",
|
|
329
|
+
"llvm",
|
|
330
|
+
"ll",
|
|
331
|
+
"logos",
|
|
332
|
+
"xm",
|
|
333
|
+
"xmi",
|
|
334
|
+
"logtalk",
|
|
335
|
+
"lgt",
|
|
336
|
+
"lookml",
|
|
337
|
+
"mako",
|
|
338
|
+
"mao",
|
|
339
|
+
"mathematica",
|
|
340
|
+
"nb",
|
|
341
|
+
"cdf",
|
|
342
|
+
"nbp",
|
|
343
|
+
"ma",
|
|
344
|
+
"matlab",
|
|
345
|
+
"maxscript",
|
|
346
|
+
"ms",
|
|
347
|
+
"mercury",
|
|
348
|
+
"meson",
|
|
349
|
+
"wrap",
|
|
350
|
+
"mirah",
|
|
351
|
+
"druby",
|
|
352
|
+
"modelica",
|
|
353
|
+
"mo",
|
|
354
|
+
"modula2",
|
|
355
|
+
"mod",
|
|
356
|
+
"monkey",
|
|
357
|
+
"monkey2",
|
|
358
|
+
"nanomsg",
|
|
359
|
+
"nesc",
|
|
360
|
+
"nc",
|
|
361
|
+
"nginx",
|
|
362
|
+
"nginxconf",
|
|
363
|
+
"nit",
|
|
364
|
+
"nu",
|
|
365
|
+
"objdump",
|
|
366
|
+
"omgrofl",
|
|
367
|
+
"lol",
|
|
368
|
+
"ooc",
|
|
369
|
+
"opal",
|
|
370
|
+
"oxygene",
|
|
371
|
+
"oz",
|
|
372
|
+
"pan",
|
|
373
|
+
"papyrus",
|
|
374
|
+
"psc",
|
|
375
|
+
"parrot",
|
|
376
|
+
"pasm",
|
|
377
|
+
"pir",
|
|
378
|
+
"pawn",
|
|
379
|
+
"pwn",
|
|
380
|
+
"inc",
|
|
381
|
+
"pig",
|
|
382
|
+
"pike",
|
|
383
|
+
"pogoscript",
|
|
384
|
+
"pogo",
|
|
385
|
+
"pony",
|
|
386
|
+
"postscript",
|
|
387
|
+
"povray",
|
|
388
|
+
"pov",
|
|
389
|
+
"powerbuilder",
|
|
390
|
+
"pbl",
|
|
391
|
+
"srw",
|
|
392
|
+
"processing",
|
|
393
|
+
"pde",
|
|
394
|
+
"prolog",
|
|
395
|
+
"pro",
|
|
396
|
+
"propeller",
|
|
397
|
+
"spin",
|
|
398
|
+
"puppet",
|
|
399
|
+
"purebasic",
|
|
400
|
+
"pb",
|
|
401
|
+
"pbi",
|
|
402
|
+
"purescript",
|
|
403
|
+
"purs",
|
|
404
|
+
"q",
|
|
405
|
+
"k",
|
|
406
|
+
"qmake",
|
|
407
|
+
"pri",
|
|
408
|
+
"qml",
|
|
409
|
+
"racket",
|
|
410
|
+
"rkt",
|
|
411
|
+
"rktl",
|
|
412
|
+
"rktd",
|
|
413
|
+
"scrbl",
|
|
414
|
+
"ragel",
|
|
415
|
+
"rl",
|
|
416
|
+
"raml",
|
|
417
|
+
"rdoc",
|
|
418
|
+
"realbasic",
|
|
419
|
+
"rbbas",
|
|
420
|
+
"rbfrm",
|
|
421
|
+
"rbmnu",
|
|
422
|
+
"rbres",
|
|
423
|
+
"rbtbar",
|
|
424
|
+
"rbuistate",
|
|
425
|
+
"rebol",
|
|
426
|
+
"r2",
|
|
427
|
+
"r3",
|
|
428
|
+
"red",
|
|
429
|
+
"reds",
|
|
430
|
+
"redcode",
|
|
431
|
+
"cw",
|
|
432
|
+
"renpy",
|
|
433
|
+
"rpy",
|
|
434
|
+
"rexx",
|
|
435
|
+
"pprx",
|
|
436
|
+
"rex",
|
|
437
|
+
"roboconf",
|
|
438
|
+
"graph",
|
|
439
|
+
"instances",
|
|
440
|
+
"robot",
|
|
441
|
+
"rg",
|
|
442
|
+
"sage",
|
|
443
|
+
"sagews",
|
|
444
|
+
"saltstack",
|
|
445
|
+
"sls",
|
|
446
|
+
"sas",
|
|
447
|
+
"scheme",
|
|
448
|
+
"scilab",
|
|
449
|
+
"sci",
|
|
450
|
+
"sce",
|
|
451
|
+
"self",
|
|
452
|
+
"shen",
|
|
453
|
+
"slash",
|
|
454
|
+
"sl",
|
|
455
|
+
"smalltalk",
|
|
456
|
+
"st",
|
|
457
|
+
"smarty",
|
|
458
|
+
"tpl",
|
|
459
|
+
"sourcepawn",
|
|
460
|
+
"sp",
|
|
461
|
+
"sparql",
|
|
462
|
+
"rq",
|
|
463
|
+
"splunk",
|
|
464
|
+
"spl",
|
|
465
|
+
"sqf",
|
|
466
|
+
"squirrel",
|
|
467
|
+
"nut",
|
|
468
|
+
"stan",
|
|
469
|
+
"stata",
|
|
470
|
+
"do",
|
|
471
|
+
"ado",
|
|
472
|
+
"supercollider",
|
|
473
|
+
"sc",
|
|
474
|
+
"scd",
|
|
475
|
+
"systemverilog",
|
|
476
|
+
"tea",
|
|
477
|
+
"terra",
|
|
478
|
+
"textile",
|
|
479
|
+
"thrift",
|
|
480
|
+
"ti",
|
|
481
|
+
"tl",
|
|
482
|
+
"turing",
|
|
483
|
+
"tu",
|
|
484
|
+
"txl",
|
|
485
|
+
"unifiedparallelc",
|
|
486
|
+
"upc",
|
|
487
|
+
"unity3d",
|
|
488
|
+
"shader",
|
|
489
|
+
"unrealscript",
|
|
490
|
+
"uc",
|
|
491
|
+
"vala",
|
|
492
|
+
"vapi",
|
|
493
|
+
"vcl",
|
|
494
|
+
"volt",
|
|
495
|
+
"webidl",
|
|
496
|
+
"wisp",
|
|
497
|
+
"x10",
|
|
498
|
+
"xc",
|
|
499
|
+
"xojo_code",
|
|
500
|
+
"xojo_menu",
|
|
501
|
+
"xojo_report",
|
|
502
|
+
"xojo_script",
|
|
503
|
+
"xojo_toolbar",
|
|
504
|
+
"xojo_window",
|
|
505
|
+
"xquery",
|
|
506
|
+
"xq",
|
|
507
|
+
"xql",
|
|
508
|
+
"xqm",
|
|
509
|
+
"xqy",
|
|
510
|
+
"xs",
|
|
511
|
+
"xslt",
|
|
512
|
+
"xsl",
|
|
513
|
+
"xtend",
|
|
514
|
+
"yacc",
|
|
515
|
+
"y",
|
|
516
|
+
"yara",
|
|
517
|
+
"yar",
|
|
518
|
+
"zephir",
|
|
519
|
+
"zep",
|
|
520
|
+
"zimpl",
|
|
521
|
+
"webmanifest",
|
|
522
|
+
"manifest",
|
|
523
|
+
"lock",
|
|
524
|
+
"sum",
|
|
525
|
+
"log",
|
|
526
|
+
"csv",
|
|
527
|
+
"tsv",
|
|
528
|
+
"xls",
|
|
529
|
+
"xlsx",
|
|
530
|
+
"xlsm",
|
|
531
|
+
"xlsb",
|
|
532
|
+
"doc",
|
|
533
|
+
"docx",
|
|
534
|
+
"pdf",
|
|
535
|
+
"ppt",
|
|
536
|
+
"pptx",
|
|
537
|
+
"rtf",
|
|
538
|
+
"odt",
|
|
539
|
+
"ods",
|
|
540
|
+
"odp",
|
|
541
|
+
"ics",
|
|
542
|
+
"vcf",
|
|
543
|
+
"idx",
|
|
544
|
+
"sub",
|
|
545
|
+
"srt",
|
|
546
|
+
"ass",
|
|
547
|
+
"ssa",
|
|
548
|
+
"avs",
|
|
549
|
+
"d2v",
|
|
550
|
+
"m3u",
|
|
551
|
+
"m3u8",
|
|
552
|
+
"pls",
|
|
553
|
+
"nfo",
|
|
554
|
+
"sfv",
|
|
555
|
+
"md5",
|
|
556
|
+
"torrent",
|
|
557
|
+
"magnet",
|
|
558
|
+
"dockerignore",
|
|
559
|
+
"babelrc",
|
|
560
|
+
"eslintrc",
|
|
561
|
+
"prettierrc",
|
|
562
|
+
"stylelintrc",
|
|
563
|
+
"gitignore",
|
|
564
|
+
"gitattributes",
|
|
565
|
+
"editorconfig",
|
|
566
|
+
"npmrc",
|
|
567
|
+
"yarnrc",
|
|
568
|
+
],
|
|
569
|
+
// Specific filenames to include regardless of extension.
|
|
570
|
+
"fileNames": [
|
|
571
|
+
"Dockerfile",
|
|
572
|
+
"Containerfile",
|
|
573
|
+
"Makefile",
|
|
574
|
+
"Jenkinsfile",
|
|
575
|
+
"Vagrantfile",
|
|
576
|
+
"CMakeLists.txt",
|
|
577
|
+
".gitignore",
|
|
578
|
+
".gitattributes",
|
|
579
|
+
".editorconfig",
|
|
580
|
+
".npmrc",
|
|
581
|
+
".yarnrc",
|
|
582
|
+
".npmignore",
|
|
583
|
+
".dockerignore",
|
|
584
|
+
".eslintignore",
|
|
585
|
+
".prettierignore",
|
|
586
|
+
".env",
|
|
587
|
+
".env.example",
|
|
588
|
+
".env.local",
|
|
589
|
+
".env.development",
|
|
590
|
+
".env.production",
|
|
591
|
+
".babelrc",
|
|
592
|
+
".eslintrc",
|
|
593
|
+
".prettierrc",
|
|
594
|
+
".stylelintrc",
|
|
595
|
+
"browserslistrc",
|
|
596
|
+
"tsconfig.json",
|
|
597
|
+
"jsconfig.json",
|
|
598
|
+
"package.json",
|
|
599
|
+
"composer.json",
|
|
600
|
+
"Cargo.toml",
|
|
601
|
+
"go.mod",
|
|
602
|
+
"pom.xml",
|
|
603
|
+
"build.gradle",
|
|
604
|
+
"build.gradle.kts",
|
|
605
|
+
"settings.gradle",
|
|
606
|
+
"settings.gradle.kts",
|
|
607
|
+
"requirements.txt",
|
|
608
|
+
"Pipfile",
|
|
609
|
+
"pyproject.toml",
|
|
610
|
+
"Gemfile",
|
|
611
|
+
"mix.exs",
|
|
612
|
+
"pubspec.yaml",
|
|
613
|
+
"docker-compose.yml",
|
|
614
|
+
"docker-compose.yaml",
|
|
615
|
+
"makefile.am",
|
|
616
|
+
"makefile.in",
|
|
617
|
+
],
|
|
618
|
+
// Glob patterns to exclude from indexing.
|
|
619
|
+
"excludePatterns": [
|
|
620
|
+
"**/node_modules/**",
|
|
621
|
+
"**/dist/**",
|
|
622
|
+
"**/build/**",
|
|
623
|
+
"**/.git/**",
|
|
624
|
+
"**/coverage/**",
|
|
625
|
+
"**/.next/**",
|
|
626
|
+
"**/target/**",
|
|
627
|
+
"**/vendor/**",
|
|
628
|
+
"**/.smart-coding-cache/**",
|
|
629
|
+
],
|
|
630
|
+
// Indexing controls.
|
|
631
|
+
"indexing": {
|
|
632
|
+
// Enable project-type detection + smart ignore patterns.
|
|
633
|
+
"smartIndexing": true,
|
|
634
|
+
// Lines per chunk.
|
|
635
|
+
"chunkSize": 16,
|
|
636
|
+
// Overlapping lines between chunks.
|
|
637
|
+
"chunkOverlap": 4,
|
|
638
|
+
// Files per indexing batch.
|
|
639
|
+
"batchSize": 50,
|
|
640
|
+
// Skip files larger than this many bytes.
|
|
641
|
+
"maxFileSize": 1048576,
|
|
642
|
+
// Maximum number of search results.
|
|
643
|
+
"maxResults": 5,
|
|
644
|
+
// Enable file watcher for incremental indexing.
|
|
645
|
+
"watchFiles": true,
|
|
646
|
+
// Save incremental index checkpoints every 2s so interrupted runs can resume with minimal rework.
|
|
647
|
+
// Increase to 5000-10000 on slower disks if checkpoint writes feel too frequent.
|
|
648
|
+
"indexCheckpointIntervalMs": 2000,
|
|
649
|
+
},
|
|
650
|
+
// Logging and diagnostics.
|
|
651
|
+
"logging": {
|
|
652
|
+
// Enable verbose logging.
|
|
653
|
+
"verbose": true,
|
|
654
|
+
},
|
|
655
|
+
// Cache engine and serialization controls.
|
|
656
|
+
"cache": {
|
|
657
|
+
// NOTE: leave top-level "cacheDirectory" unset to keep per-workspace global cache hashing.
|
|
658
|
+
// This preserves resume/incremental indexing across IDE restarts.
|
|
659
|
+
// Persist embeddings between sessions.
|
|
660
|
+
"enableCache": true,
|
|
661
|
+
// Assume vectors are finite (skip validation).
|
|
662
|
+
"cacheVectorAssumeFinite": true,
|
|
663
|
+
// Decimal precision for cached vectors (null = default).
|
|
664
|
+
"cacheVectorFloatDigits": null,
|
|
665
|
+
// Write stream highWaterMark for cache files.
|
|
666
|
+
"cacheWriteHighWaterMark": 262144,
|
|
667
|
+
// Flush threshold (chars) for JSON writer.
|
|
668
|
+
"cacheVectorFlushChars": 262144,
|
|
669
|
+
// Validate vectors contain only finite numbers.
|
|
670
|
+
"cacheVectorCheckFinite": true,
|
|
671
|
+
// Avoid mutating vectors during serialization.
|
|
672
|
+
"cacheVectorNoMutation": false,
|
|
673
|
+
// Join threshold for JSON array chunks.
|
|
674
|
+
"cacheVectorJoinThreshold": 8192,
|
|
675
|
+
// Chunk size for JSON join optimization.
|
|
676
|
+
"cacheVectorJoinChunkSize": 2048,
|
|
677
|
+
// Wait time for active readers before saving cache (ms).
|
|
678
|
+
"saveReaderWaitTimeoutMs": 5000,
|
|
679
|
+
},
|
|
680
|
+
// Stale cache cleanup policy.
|
|
681
|
+
"cacheCleanup": {
|
|
682
|
+
// Remove stale caches automatically.
|
|
683
|
+
"autoCleanup": true,
|
|
684
|
+
},
|
|
685
|
+
// Worker-thread controls.
|
|
686
|
+
"worker": {
|
|
687
|
+
// Number of embedding workers (0 disables).
|
|
688
|
+
// Windows + heavy Jina models are more stable with child-process embedding than worker pools.
|
|
689
|
+
"workerThreads": 0,
|
|
690
|
+
// Worker batch timeout in milliseconds.
|
|
691
|
+
"workerBatchTimeoutMs": 120000,
|
|
692
|
+
// Failures before worker circuit opens.
|
|
693
|
+
"workerFailureThreshold": 1,
|
|
694
|
+
// Cooldown before re-enabling workers (ms).
|
|
695
|
+
"workerFailureCooldownMs": 600000,
|
|
696
|
+
// Max chunks per worker batch.
|
|
697
|
+
"workerMaxChunksPerBatch": 20,
|
|
698
|
+
// Allow fallback to main-thread embeddings.
|
|
699
|
+
"allowSingleThreadFallback": false,
|
|
700
|
+
// Abort worker embedding batches after repeated consecutive embedding failures.
|
|
701
|
+
"failFastEmbeddingErrors": false,
|
|
702
|
+
},
|
|
703
|
+
// Embedding/runtime controls.
|
|
704
|
+
"embedding": {
|
|
705
|
+
// Embedding model identifier.
|
|
706
|
+
"embeddingModel": "jinaai/jina-embeddings-v2-base-code",
|
|
707
|
+
// Preload the embedding model on startup. Set to false when using child processes for memory savings.
|
|
708
|
+
"preloadEmbeddingModel": false,
|
|
709
|
+
// Use child process per batch for memory isolation.
|
|
710
|
+
"embeddingProcessPerBatch": true,
|
|
711
|
+
// Auto-enable child process when no workers + heavy model.
|
|
712
|
+
"autoEmbeddingProcessPerBatch": false,
|
|
713
|
+
// Override embedding batch size (null = auto).
|
|
714
|
+
"embeddingBatchSize": null,
|
|
715
|
+
// ONNX threads used by embedding child process.
|
|
716
|
+
// 8 is a practical balance on 24-thread desktop CPUs for this workspace size.
|
|
717
|
+
"embeddingProcessNumThreads": 8,
|
|
718
|
+
// Embedding-child adaptive GC RSS threshold in MB (higher = less frequent GC).
|
|
719
|
+
"embeddingProcessGcRssThresholdMb": 2048,
|
|
720
|
+
// Minimum interval between embedding-child GC runs.
|
|
721
|
+
"embeddingProcessGcMinIntervalMs": 15000,
|
|
722
|
+
// Backstop GC cadence if threshold is not crossed.
|
|
723
|
+
"embeddingProcessGcMaxRequestsWithoutCollection": 8,
|
|
724
|
+
},
|
|
725
|
+
// Vector store backend controls.
|
|
726
|
+
"vectorStore": {
|
|
727
|
+
// Vector store format: json, binary, or sqlite.
|
|
728
|
+
"vectorStoreFormat": "binary",
|
|
729
|
+
// Content storage: external or inline.
|
|
730
|
+
"vectorStoreContentMode": "external",
|
|
731
|
+
// In-memory content cache entries (binary store).
|
|
732
|
+
"contentCacheEntries": 256,
|
|
733
|
+
// Vector loading mode: "disk" keeps RAM lower by streaming vectors as needed.
|
|
734
|
+
"vectorStoreLoadMode": "disk",
|
|
735
|
+
},
|
|
736
|
+
// Search scoring controls.
|
|
737
|
+
"search": {
|
|
738
|
+
// Weight for semantic similarity scoring.
|
|
739
|
+
"semanticWeight": 0.7,
|
|
740
|
+
// Score boost for exact text matches.
|
|
741
|
+
"exactMatchBoost": 1.5,
|
|
742
|
+
},
|
|
743
|
+
// Memory cleanup and memory-footprint controls.
|
|
744
|
+
"memoryCleanup": {
|
|
745
|
+
// Enable explicit GC (requires --expose-gc).
|
|
746
|
+
"enableExplicitGc": true,
|
|
747
|
+
// Drop in-memory vectors after indexing completes.
|
|
748
|
+
"clearCacheAfterIndex": true,
|
|
749
|
+
// Unload embedding model after indexing.
|
|
750
|
+
"unloadModelAfterIndex": true,
|
|
751
|
+
// Shutdown persistent query embedding child pool after indexing.
|
|
752
|
+
"shutdownQueryEmbeddingPoolAfterIndex": true,
|
|
753
|
+
// Unload embedding model after searches.
|
|
754
|
+
"unloadModelAfterSearch": true,
|
|
755
|
+
// Idle timeout before query embedding child process exits (ms).
|
|
756
|
+
"embeddingPoolIdleTimeoutMs": 2000,
|
|
757
|
+
// RSS threshold for optional incremental GC.
|
|
758
|
+
"incrementalGcThresholdMb": 512,
|
|
759
|
+
// Optional: print detailed phase memory traces for incremental indexing/update paths.
|
|
760
|
+
"incrementalMemoryProfile": false,
|
|
761
|
+
// Optional: recycle server process when RSS stays too high after incremental cleanup.
|
|
762
|
+
// Safe default is disabled.
|
|
763
|
+
"recycleServerOnHighRssAfterIncremental": false,
|
|
764
|
+
// RSS threshold (MB) for incremental recycle trigger.
|
|
765
|
+
"recycleServerOnHighRssThresholdMb": 4096,
|
|
766
|
+
// Minimum interval between recycle attempts (ms).
|
|
767
|
+
"recycleServerOnHighRssCooldownMs": 300000,
|
|
768
|
+
// Delay before recycle to let logs/responses flush (ms).
|
|
769
|
+
"recycleServerOnHighRssDelayMs": 2000,
|
|
770
|
+
},
|
|
771
|
+
// Call graph proximity boosting controls.
|
|
772
|
+
"callGraph": {
|
|
773
|
+
"callGraphEnabled": true,
|
|
774
|
+
"callGraphBoost": 0.15,
|
|
775
|
+
"callGraphMaxHops": 1,
|
|
776
|
+
},
|
|
777
|
+
// ANN index controls.
|
|
778
|
+
"ann": {
|
|
779
|
+
// Enable ANN index for large codebases.
|
|
780
|
+
"annEnabled": true,
|
|
781
|
+
// Minimum chunks required to build ANN.
|
|
782
|
+
"annMinChunks": 5000,
|
|
783
|
+
// Minimum ANN candidates to retrieve.
|
|
784
|
+
"annMinCandidates": 50,
|
|
785
|
+
// Maximum ANN candidates to retrieve.
|
|
786
|
+
"annMaxCandidates": 200,
|
|
787
|
+
// Scale ANN candidates by this multiplier.
|
|
788
|
+
"annCandidateMultiplier": 20,
|
|
789
|
+
// HNSW efConstruction value.
|
|
790
|
+
"annEfConstruction": 200,
|
|
791
|
+
// HNSW efSearch value.
|
|
792
|
+
"annEfSearch": 64,
|
|
793
|
+
// HNSW M parameter (graph degree).
|
|
794
|
+
"annM": 16,
|
|
795
|
+
// Persist ANN index to disk.
|
|
796
|
+
"annIndexCache": true,
|
|
797
|
+
// ANN distance metric.
|
|
798
|
+
"annMetric": "cosine",
|
|
799
|
+
},
|
|
800
|
+
}
|