graph-indexer 1.1.0 → 2.0.0

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 (59) hide show
  1. package/CHANGELOG.md +412 -0
  2. package/README.md +228 -350
  3. package/SECURITY.md +68 -0
  4. package/TRADEMARK.md +31 -0
  5. package/cli-ui.mjs +78 -0
  6. package/config.mjs +269 -0
  7. package/daemon-ctl.mjs +175 -0
  8. package/daemon-lock.mjs +69 -0
  9. package/embedders/python/mlx_embed_server.py +61 -0
  10. package/embedders/python/requirements-mlx.txt +5 -0
  11. package/embedders/setup-mlx.mjs +110 -0
  12. package/embeddings.mjs +489 -0
  13. package/engine/binary.mjs +399 -0
  14. package/{core-engine.mjs → engine/memory.mjs} +359 -249
  15. package/engine/sqlite.mjs +863 -0
  16. package/enrichment.mjs +426 -0
  17. package/git-signals.mjs +248 -0
  18. package/indexer.mjs +216 -77
  19. package/init.mjs +1604 -170
  20. package/layout.mjs +123 -0
  21. package/mcp/format.mjs +61 -0
  22. package/mcp/tools.mjs +1157 -0
  23. package/mcp/topology.mjs +551 -0
  24. package/mcp-server.mjs +118 -573
  25. package/package.json +56 -16
  26. package/parse/extractor.mjs +617 -0
  27. package/parse/imports.mjs +365 -0
  28. package/parse/languages.mjs +89 -0
  29. package/parse/metadata.mjs +655 -0
  30. package/parse/routes.mjs +327 -0
  31. package/prompts/CORE.md +86 -0
  32. package/prompts/DOMAIN_TEMPLATE.md +46 -0
  33. package/prompts/INTEGRATION.md +123 -0
  34. package/prompts/frameworks/ANDROID.md +17 -0
  35. package/prompts/frameworks/ASPNET_CORE.md +19 -0
  36. package/prompts/frameworks/FASTAPI_DJANGO.md +19 -0
  37. package/prompts/frameworks/LARAVEL_SYMFONY.md +22 -0
  38. package/prompts/frameworks/NODE_EXPRESS_NESTJS.md +18 -0
  39. package/prompts/frameworks/RAILS.md +20 -0
  40. package/prompts/frameworks/REACT.md +20 -0
  41. package/prompts/frameworks/SPRING_BOOT.md +19 -0
  42. package/prompts/languages/BASH.md +22 -0
  43. package/prompts/languages/C.md +21 -0
  44. package/prompts/languages/CSHARP.md +24 -0
  45. package/prompts/languages/CSS_SCSS.md +22 -0
  46. package/prompts/languages/GO.md +23 -0
  47. package/prompts/languages/JAVA.md +23 -0
  48. package/prompts/languages/JAVASCRIPT_TYPESCRIPT.md +24 -0
  49. package/prompts/languages/KOTLIN.md +24 -0
  50. package/prompts/languages/PHP.md +23 -0
  51. package/prompts/languages/PYTHON.md +23 -0
  52. package/prompts/languages/RUBY.md +23 -0
  53. package/prompts/languages/RUST.md +21 -0
  54. package/prompts/languages/SWIFT.md +21 -0
  55. package/search-core.mjs +627 -0
  56. package/storage.mjs +68 -0
  57. package/watch-daemon.mjs +204 -69
  58. package/PROMPT.md +0 -143
  59. package/parser-utils.mjs +0 -861
package/package.json CHANGED
@@ -1,22 +1,33 @@
1
1
  {
2
2
  "name": "graph-indexer",
3
- "version": "1.1.0",
4
- "description": "Zero-DB, Air-gapped, In-Memory Graph Indexer MCP Server with Hybrid RRF Search and Cross-Language Topology",
3
+ "version": "2.0.0",
4
+ "description": "Air-gapped code-retrieval MCP server: AST chunking, hybrid RRF search and cross-language call graph, with an optional zero-dependency SQLite backend for monorepo scale and optional local-LLM semantic enrichment.",
5
5
  "type": "module",
6
- "main": "core-engine.mjs",
6
+ "main": "engine/memory.mjs",
7
7
  "exports": {
8
- ".": "./core-engine.mjs"
8
+ ".": "./engine/memory.mjs"
9
9
  },
10
10
  "bin": {
11
11
  "graph-indexer": "init.mjs",
12
12
  "idx-index": "indexer.mjs",
13
13
  "idx-watch": "watch-daemon.mjs",
14
+ "idx-daemon": "daemon-ctl.mjs",
14
15
  "idx-mcp": "mcp-server.mjs"
15
16
  },
16
17
  "files": [
17
18
  "*.mjs",
18
- "PROMPT.md",
19
+ "engine/",
20
+ "mcp/",
21
+ "parse/",
22
+ "embedders/setup-mlx.mjs",
23
+ "embedders/python/mlx_embed_server.py",
24
+ "embedders/python/requirements-mlx.txt",
25
+ "!embedders/python/test_servers.mjs",
26
+ "prompts/",
19
27
  "README.md",
28
+ "CHANGELOG.md",
29
+ "SECURITY.md",
30
+ "TRADEMARK.md",
20
31
  "LICENSE"
21
32
  ],
22
33
  "repository": {
@@ -27,23 +38,47 @@
27
38
  "start": "node ./mcp-server.mjs",
28
39
  "test": "node test/run.mjs",
29
40
  "test:unit": "node test/unit.mjs",
41
+ "test:sqlite": "node test/sqlite.mjs",
42
+ "test:enrich": "node test/enrichment.mjs",
43
+ "test:mcp": "node test/mcp.mjs",
44
+ "test:scale": "node test/scale.mjs",
45
+ "test:callgraph": "node test/callgraph.mjs",
46
+ "test:references": "node test/references.mjs",
47
+ "test:routes": "node test/routes.mjs",
48
+ "test:jsonout": "node test/json-output.mjs",
49
+ "test:gitsignals": "node test/git-signals.mjs",
50
+ "test:security": "node test/security.mjs",
51
+ "test:embed": "node test/embeddings.mjs",
52
+ "test:languages": "node test/languages.mjs",
53
+ "test:all": "node test/unit.mjs && node test/sqlite.mjs && node test/enrichment.mjs && node test/mcp.mjs && node test/scale.mjs && node test/callgraph.mjs && node test/references.mjs && node test/routes.mjs && node test/json-output.mjs && node test/git-signals.mjs && node test/security.mjs && node test/embeddings.mjs && node test/languages.mjs",
54
+ "test:eval": "node test/evaluate.mjs",
55
+ "test:eval:embeddings": "OLLAMA_HOST=http://localhost:11434 node test/evaluate.mjs --embeddings",
30
56
  "test:setup": "node test/setup.mjs",
31
57
  "test:run": "node test/run.mjs",
32
- "test:embeddings": "OLLAMA_HOST=http://localhost:11435 node test/run-embeddings.mjs",
33
- "test:embeddings:skip": "OLLAMA_HOST=http://localhost:11435 node test/run-embeddings.mjs --skip-indexing",
58
+ "test:embeddings": "OLLAMA_HOST=http://localhost:11434 node test/run-embeddings.mjs",
59
+ "test:embeddings:skip": "OLLAMA_HOST=http://localhost:11434 node test/run-embeddings.mjs --skip-indexing",
34
60
  "test:suite": "node test/run.mjs --suite",
35
61
  "test:json": "node test/run.mjs --json",
36
62
  "test:reset": "rm -rf test/fixtures && node test/setup.mjs",
37
- "mcp:index": "node indexer.mjs --repo .",
63
+ "embed:setup:mlx": "node embedders/setup-mlx.mjs",
64
+ "mcp:index": "idx-index --repo .",
65
+ "mcp:index:sqlite": "node indexer.mjs --repo . --use-sqlite",
66
+ "mcp:index:enriched": "node indexer.mjs --repo . --enrichment",
38
67
  "mcp:watch": "node watch-daemon.mjs",
39
- "mcp:start": "node mcp-server.mjs"
68
+ "mcp:start": "idx-mcp",
69
+ "mcp:daemon": "node daemon-ctl.mjs status",
70
+ "mcp:daemon:start": "node daemon-ctl.mjs start",
71
+ "mcp:daemon:stop": "node daemon-ctl.mjs stop",
72
+ "mcp:daemon:restart": "node daemon-ctl.mjs restart",
73
+ "mcp:daemon:status": "node daemon-ctl.mjs status",
74
+ "mcp:daemon:logs": "node daemon-ctl.mjs logs"
40
75
  },
41
76
  "dependencies": {
42
77
  "@modelcontextprotocol/sdk": "1.29.0",
43
78
  "chokidar": "5.0.0",
44
79
  "ignore": "5.3.2",
45
80
  "tree-sitter": "0.21.1",
46
- "zod": "3.23.8"
81
+ "zod": "^3.25.76"
47
82
  },
48
83
  "keywords": [
49
84
  "mcp",
@@ -78,17 +113,22 @@
78
113
  "access": "public"
79
114
  },
80
115
  "optionalDependencies": {
81
- "hnswlib-node": "^3.0.0",
82
- "tree-sitter-c-sharp": "^0.21.3",
116
+ "@huggingface/transformers": "3.8.1",
117
+ "hnswlib-node": "3.0.0",
118
+ "tree-sitter-bash": "0.23.3",
119
+ "tree-sitter-c": "0.21.4",
120
+ "tree-sitter-c-sharp": "0.21.3",
83
121
  "tree-sitter-css": "0.21.1",
84
122
  "tree-sitter-go": "0.21.0",
85
- "tree-sitter-java": "^0.21.0",
123
+ "tree-sitter-java": "0.21.0",
86
124
  "tree-sitter-javascript": "0.21.4",
87
- "tree-sitter-kotlin": "^0.3.8",
125
+ "tree-sitter-kotlin": "0.3.8",
88
126
  "tree-sitter-php": "0.23.1",
89
127
  "tree-sitter-python": "0.21.0",
90
- "tree-sitter-ruby": "^0.23.1",
128
+ "tree-sitter-ruby": "0.23.1",
91
129
  "tree-sitter-rust": "0.21.0",
130
+ "tree-sitter-scss": "1.0.0",
131
+ "tree-sitter-swift": "0.5.0",
92
132
  "tree-sitter-typescript": "0.21.2"
93
133
  }
94
- }
134
+ }