pindex 1.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 (139) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +767 -0
  3. package/dist/cli/daemon.d.ts +13 -0
  4. package/dist/cli/daemon.d.ts.map +1 -0
  5. package/dist/cli/daemon.js +70 -0
  6. package/dist/cli/daemon.js.map +1 -0
  7. package/dist/cli/index.d.ts +4 -0
  8. package/dist/cli/index.d.ts.map +1 -0
  9. package/dist/cli/index.js +212 -0
  10. package/dist/cli/index.js.map +1 -0
  11. package/dist/cli/init.d.ts +44 -0
  12. package/dist/cli/init.d.ts.map +1 -0
  13. package/dist/cli/init.js +301 -0
  14. package/dist/cli/init.js.map +1 -0
  15. package/dist/cli/project-detector.d.ts +44 -0
  16. package/dist/cli/project-detector.d.ts.map +1 -0
  17. package/dist/cli/project-detector.js +144 -0
  18. package/dist/cli/project-detector.js.map +1 -0
  19. package/dist/cli/setup.d.ts +9 -0
  20. package/dist/cli/setup.d.ts.map +1 -0
  21. package/dist/cli/setup.js +110 -0
  22. package/dist/cli/setup.js.map +1 -0
  23. package/dist/db/database.d.ts +5 -0
  24. package/dist/db/database.d.ts.map +1 -0
  25. package/dist/db/database.js +19 -0
  26. package/dist/db/database.js.map +1 -0
  27. package/dist/db/migrations.d.ts +6 -0
  28. package/dist/db/migrations.d.ts.map +1 -0
  29. package/dist/db/migrations.js +32 -0
  30. package/dist/db/migrations.js.map +1 -0
  31. package/dist/db/queries.d.ts +132 -0
  32. package/dist/db/queries.d.ts.map +1 -0
  33. package/dist/db/queries.js +222 -0
  34. package/dist/db/queries.js.map +1 -0
  35. package/dist/db/schema.d.ts +5 -0
  36. package/dist/db/schema.d.ts.map +1 -0
  37. package/dist/db/schema.js +179 -0
  38. package/dist/db/schema.js.map +1 -0
  39. package/dist/gui/index.d.ts +3 -0
  40. package/dist/gui/index.d.ts.map +1 -0
  41. package/dist/gui/index.js +56 -0
  42. package/dist/gui/index.js.map +1 -0
  43. package/dist/gui/server.d.ts +31 -0
  44. package/dist/gui/server.d.ts.map +1 -0
  45. package/dist/gui/server.js +729 -0
  46. package/dist/gui/server.js.map +1 -0
  47. package/dist/index.d.ts +3 -0
  48. package/dist/index.d.ts.map +1 -0
  49. package/dist/index.js +93 -0
  50. package/dist/index.js.map +1 -0
  51. package/dist/indexer/index.d.ts +38 -0
  52. package/dist/indexer/index.d.ts.map +1 -0
  53. package/dist/indexer/index.js +283 -0
  54. package/dist/indexer/index.js.map +1 -0
  55. package/dist/indexer/parser.d.ts +20 -0
  56. package/dist/indexer/parser.d.ts.map +1 -0
  57. package/dist/indexer/parser.js +431 -0
  58. package/dist/indexer/parser.js.map +1 -0
  59. package/dist/indexer/summarizer.d.ts +15 -0
  60. package/dist/indexer/summarizer.d.ts.map +1 -0
  61. package/dist/indexer/summarizer.js +24 -0
  62. package/dist/indexer/summarizer.js.map +1 -0
  63. package/dist/indexer/watcher.d.ts +25 -0
  64. package/dist/indexer/watcher.d.ts.map +1 -0
  65. package/dist/indexer/watcher.js +54 -0
  66. package/dist/indexer/watcher.js.map +1 -0
  67. package/dist/monitoring/estimator.d.ts +20 -0
  68. package/dist/monitoring/estimator.d.ts.map +1 -0
  69. package/dist/monitoring/estimator.js +94 -0
  70. package/dist/monitoring/estimator.js.map +1 -0
  71. package/dist/monitoring/server.d.ts +20 -0
  72. package/dist/monitoring/server.d.ts.map +1 -0
  73. package/dist/monitoring/server.js +86 -0
  74. package/dist/monitoring/server.js.map +1 -0
  75. package/dist/monitoring/token-logger.d.ts +26 -0
  76. package/dist/monitoring/token-logger.d.ts.map +1 -0
  77. package/dist/monitoring/token-logger.js +47 -0
  78. package/dist/monitoring/token-logger.js.map +1 -0
  79. package/dist/server.d.ts +18 -0
  80. package/dist/server.d.ts.map +1 -0
  81. package/dist/server.js +310 -0
  82. package/dist/server.js.map +1 -0
  83. package/dist/tools/find_usages.d.ts +4 -0
  84. package/dist/tools/find_usages.d.ts.map +1 -0
  85. package/dist/tools/find_usages.js +13 -0
  86. package/dist/tools/find_usages.js.map +1 -0
  87. package/dist/tools/get_context.d.ts +6 -0
  88. package/dist/tools/get_context.d.ts.map +1 -0
  89. package/dist/tools/get_context.js +36 -0
  90. package/dist/tools/get_context.js.map +1 -0
  91. package/dist/tools/get_dependencies.d.ts +4 -0
  92. package/dist/tools/get_dependencies.d.ts.map +1 -0
  93. package/dist/tools/get_dependencies.js +16 -0
  94. package/dist/tools/get_dependencies.js.map +1 -0
  95. package/dist/tools/get_doc_chunk.d.ts +4 -0
  96. package/dist/tools/get_doc_chunk.d.ts.map +1 -0
  97. package/dist/tools/get_doc_chunk.js +32 -0
  98. package/dist/tools/get_doc_chunk.js.map +1 -0
  99. package/dist/tools/get_file_summary.d.ts +4 -0
  100. package/dist/tools/get_file_summary.d.ts.map +1 -0
  101. package/dist/tools/get_file_summary.js +23 -0
  102. package/dist/tools/get_file_summary.js.map +1 -0
  103. package/dist/tools/get_project_overview.d.ts +5 -0
  104. package/dist/tools/get_project_overview.d.ts.map +1 -0
  105. package/dist/tools/get_project_overview.js +60 -0
  106. package/dist/tools/get_project_overview.js.map +1 -0
  107. package/dist/tools/get_symbol.d.ts +4 -0
  108. package/dist/tools/get_symbol.d.ts.map +1 -0
  109. package/dist/tools/get_symbol.js +21 -0
  110. package/dist/tools/get_symbol.js.map +1 -0
  111. package/dist/tools/get_token_stats.d.ts +4 -0
  112. package/dist/tools/get_token_stats.d.ts.map +1 -0
  113. package/dist/tools/get_token_stats.js +6 -0
  114. package/dist/tools/get_token_stats.js.map +1 -0
  115. package/dist/tools/reindex.d.ts +5 -0
  116. package/dist/tools/reindex.d.ts.map +1 -0
  117. package/dist/tools/reindex.js +21 -0
  118. package/dist/tools/reindex.js.map +1 -0
  119. package/dist/tools/save_context.d.ts +4 -0
  120. package/dist/tools/save_context.d.ts.map +1 -0
  121. package/dist/tools/save_context.js +17 -0
  122. package/dist/tools/save_context.js.map +1 -0
  123. package/dist/tools/search_docs.d.ts +4 -0
  124. package/dist/tools/search_docs.d.ts.map +1 -0
  125. package/dist/tools/search_docs.js +42 -0
  126. package/dist/tools/search_docs.js.map +1 -0
  127. package/dist/tools/search_symbols.d.ts +5 -0
  128. package/dist/tools/search_symbols.d.ts.map +1 -0
  129. package/dist/tools/search_symbols.js +36 -0
  130. package/dist/tools/search_symbols.js.map +1 -0
  131. package/dist/tools/start_comparison.d.ts +4 -0
  132. package/dist/tools/start_comparison.d.ts.map +1 -0
  133. package/dist/tools/start_comparison.js +15 -0
  134. package/dist/tools/start_comparison.js.map +1 -0
  135. package/dist/types.d.ts +318 -0
  136. package/dist/types.d.ts.map +1 -0
  137. package/dist/types.js +3 -0
  138. package/dist/types.js.map +1 -0
  139. package/package.json +69 -0
@@ -0,0 +1,318 @@
1
+ export interface FileRecord {
2
+ id: number;
3
+ path: string;
4
+ language: string;
5
+ summary: string | null;
6
+ last_indexed: string;
7
+ hash: string;
8
+ raw_token_estimate: number;
9
+ }
10
+ export type SymbolKind = 'function' | 'class' | 'method' | 'const' | 'type' | 'interface' | 'enum' | 'variable';
11
+ export interface SymbolRecord {
12
+ id: number;
13
+ file_id: number;
14
+ name: string;
15
+ kind: SymbolKind;
16
+ signature: string;
17
+ summary: string | null;
18
+ start_line: number;
19
+ end_line: number;
20
+ is_exported: 0 | 1;
21
+ }
22
+ export interface DependencyRecord {
23
+ id: number;
24
+ from_file: number;
25
+ to_file: number;
26
+ symbol_name: string | null;
27
+ }
28
+ export interface UsageRecord {
29
+ id: number;
30
+ symbol_id: number;
31
+ used_in_file: number;
32
+ used_at_line: number;
33
+ }
34
+ export interface TokenLogEntry {
35
+ id: number;
36
+ timestamp: string;
37
+ session_id: string;
38
+ tool_name: string;
39
+ tokens_used: number;
40
+ tokens_without_index: number;
41
+ files_touched: string | null;
42
+ query: string | null;
43
+ }
44
+ export interface SessionRecord {
45
+ id: string;
46
+ started_at: string;
47
+ mode: 'indexed' | 'baseline';
48
+ label: string | null;
49
+ total_tokens: number;
50
+ total_savings: number;
51
+ }
52
+ export interface DocumentChunkRecord {
53
+ id: number;
54
+ file_id: number;
55
+ chunk_index: number;
56
+ heading: string | null;
57
+ start_line: number;
58
+ end_line: number;
59
+ content: string;
60
+ summary: string | null;
61
+ }
62
+ export interface ContextEntryRecord {
63
+ id: number;
64
+ session_id: string;
65
+ content: string;
66
+ tags: string | null;
67
+ created_at: string;
68
+ }
69
+ /** Minimal AST node interface – compatible with tree-sitter SyntaxNode. */
70
+ export interface AstNode {
71
+ type: string;
72
+ text: string;
73
+ startPosition: {
74
+ row: number;
75
+ column: number;
76
+ };
77
+ endPosition: {
78
+ row: number;
79
+ column: number;
80
+ };
81
+ children: AstNode[];
82
+ namedChildren: AstNode[];
83
+ childForFieldName(fieldName: string): AstNode | null;
84
+ descendantsOfType(type: string | string[]): AstNode[];
85
+ }
86
+ export interface ParsedSymbol {
87
+ name: string;
88
+ kind: SymbolKind;
89
+ signature: string;
90
+ startLine: number;
91
+ endLine: number;
92
+ isExported: boolean;
93
+ }
94
+ export interface ParsedImport {
95
+ /** The module specifier, e.g. './auth/service' or 'express'. */
96
+ source: string;
97
+ /** Named symbols imported, e.g. ['Router', 'Request']. Empty for side-effect imports. */
98
+ symbols: string[];
99
+ }
100
+ export interface ParsedFile {
101
+ language: string;
102
+ symbols: ParsedSymbol[];
103
+ imports: ParsedImport[];
104
+ rawTokenEstimate: number;
105
+ }
106
+ export interface DocumentChunk {
107
+ chunkIndex: number;
108
+ heading: string | null;
109
+ startLine: number;
110
+ endLine: number;
111
+ content: string;
112
+ }
113
+ export interface ParsedDocument {
114
+ language: string;
115
+ chunks: DocumentChunk[];
116
+ rawTokenEstimate: number;
117
+ }
118
+ export interface SearchSymbolsInput {
119
+ query: string;
120
+ limit?: number;
121
+ }
122
+ export interface SymbolSearchResult {
123
+ name: string;
124
+ kind: SymbolKind;
125
+ signature: string;
126
+ summary: string | null;
127
+ file: string;
128
+ line: number;
129
+ }
130
+ export interface GetSymbolInput {
131
+ name: string;
132
+ file?: string;
133
+ }
134
+ export interface GetSymbolOutput {
135
+ name: string;
136
+ kind: SymbolKind;
137
+ signature: string;
138
+ summary: string | null;
139
+ file: string;
140
+ startLine: number;
141
+ endLine: number;
142
+ isExported: boolean;
143
+ dependencies: string[];
144
+ }
145
+ export interface GetContextInput {
146
+ file: string;
147
+ line: number;
148
+ range?: number;
149
+ }
150
+ export interface GetContextOutput {
151
+ code: string;
152
+ language: string;
153
+ startLine: number;
154
+ endLine: number;
155
+ }
156
+ export interface GetFileSummaryInput {
157
+ file: string;
158
+ }
159
+ export interface GetFileSummaryOutput {
160
+ summary: string | null;
161
+ language: string;
162
+ symbols: Array<{
163
+ name: string;
164
+ kind: SymbolKind;
165
+ signature: string;
166
+ }>;
167
+ imports: string[];
168
+ exports: string[];
169
+ }
170
+ export interface FindUsagesInput {
171
+ symbol: string;
172
+ }
173
+ export interface UsageResult {
174
+ file: string;
175
+ line: number;
176
+ context: string;
177
+ }
178
+ export interface GetDependenciesInput {
179
+ target: string;
180
+ direction?: 'imports' | 'imported_by' | 'both';
181
+ }
182
+ export interface GetDependenciesOutput {
183
+ imports: string[];
184
+ importedBy: string[];
185
+ }
186
+ export interface GetProjectOverviewOutput {
187
+ rootPath: string;
188
+ language: string;
189
+ entryPoints: string[];
190
+ modules: Array<{
191
+ path: string;
192
+ summary: string | null;
193
+ symbolCount: number;
194
+ }>;
195
+ stats: {
196
+ totalFiles: number;
197
+ totalSymbols: number;
198
+ };
199
+ /** Present when the server is configured with FEDERATION_REPOS */
200
+ federatedProjects?: Array<{
201
+ rootPath: string;
202
+ stats: {
203
+ totalFiles: number;
204
+ totalSymbols: number;
205
+ };
206
+ }>;
207
+ }
208
+ export interface ReindexInput {
209
+ target?: string;
210
+ }
211
+ export interface ReindexOutput {
212
+ indexed: number;
213
+ updated: number;
214
+ errors: string[];
215
+ }
216
+ export interface GetTokenStatsInput {
217
+ session_id?: string;
218
+ }
219
+ export interface TokenCallStat {
220
+ tool: string;
221
+ tokens_used: number;
222
+ tokens_without_index: number;
223
+ timestamp: string;
224
+ }
225
+ export interface GetTokenStatsOutput {
226
+ session_id: string;
227
+ started_at: string;
228
+ tokens_used: number;
229
+ tokens_saved: number;
230
+ savings_percent: number;
231
+ calls: TokenCallStat[];
232
+ }
233
+ export interface StartComparisonInput {
234
+ label: string;
235
+ mode: 'indexed' | 'baseline';
236
+ }
237
+ export interface StartComparisonOutput {
238
+ session_id: string;
239
+ monitoring_url: string;
240
+ }
241
+ export interface SearchDocsInput {
242
+ query: string;
243
+ limit?: number;
244
+ type?: 'docs' | 'context' | 'all';
245
+ }
246
+ export interface DocSearchResult {
247
+ type: 'doc' | 'context';
248
+ id: number;
249
+ content_preview: string;
250
+ /** Present for type='doc' */
251
+ file?: string;
252
+ /** Present for type='doc' */
253
+ heading?: string | null;
254
+ /** Present for type='doc' */
255
+ start_line?: number;
256
+ /** Present for type='context' */
257
+ tags?: string | null;
258
+ /** Present for type='context' */
259
+ session_id?: string;
260
+ /** Present for type='context' */
261
+ created_at?: string;
262
+ }
263
+ export interface GetDocChunkInput {
264
+ file: string;
265
+ chunk_index?: number;
266
+ }
267
+ export interface DocChunk {
268
+ index: number;
269
+ heading: string | null;
270
+ start_line: number;
271
+ end_line: number;
272
+ content: string;
273
+ }
274
+ export interface GetDocChunkOutput {
275
+ file: string;
276
+ total_chunks: number;
277
+ chunks: DocChunk[];
278
+ }
279
+ export interface SaveContextInput {
280
+ content: string;
281
+ tags?: string;
282
+ }
283
+ export interface SaveContextOutput {
284
+ id: number;
285
+ session_id: string;
286
+ created_at: string;
287
+ }
288
+ export interface TokenEvent {
289
+ type: 'tool_call';
290
+ session_id: string;
291
+ timestamp: string;
292
+ tool: string;
293
+ query?: string;
294
+ tokens_actual: number;
295
+ tokens_estimated: number;
296
+ savings: number;
297
+ savings_percent: number;
298
+ cumulative_actual: number;
299
+ cumulative_savings: number;
300
+ }
301
+ export interface SessionEvent {
302
+ type: 'session_update' | 'session_start' | 'session_end';
303
+ session: SessionRecord;
304
+ }
305
+ export type MonitoringEvent = TokenEvent | SessionEvent;
306
+ export interface IndexerConfig {
307
+ projectRoot: string;
308
+ languages: string[];
309
+ ignorePatterns: string[];
310
+ generateSummaries: boolean;
311
+ }
312
+ export interface IndexResult {
313
+ indexed: number;
314
+ updated: number;
315
+ skipped: number;
316
+ errors: string[];
317
+ }
318
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,3 @@
1
+ // ─── Database Record Types ────────────────────────────────────────────────────
2
+ export {};
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,iFAAiF"}
package/package.json ADDED
@@ -0,0 +1,69 @@
1
+ {
2
+ "name": "pindex",
3
+ "version": "1.0.0",
4
+ "description": "MCP Server that structurally indexes a codebase for 80-90% token reduction",
5
+ "type": "module",
6
+ "bin": {
7
+ "pindex": "./dist/cli/index.js",
8
+ "pindex-server": "./dist/index.js",
9
+ "pindex-gui": "./dist/gui/index.js"
10
+ },
11
+ "main": "./dist/index.js",
12
+ "files": [
13
+ "dist",
14
+ "README.md",
15
+ "LICENSE"
16
+ ],
17
+ "scripts": {
18
+ "build": "tsc",
19
+ "build:watch": "tsc --watch",
20
+ "test": "vitest run",
21
+ "test:watch": "vitest",
22
+ "test:coverage": "vitest run --coverage",
23
+ "lint": "tsc --noEmit",
24
+ "prepublishOnly": "npm run build",
25
+ "start": "node dist/index.js",
26
+ "dev": "node --loader ts-node/esm src/index.ts"
27
+ },
28
+ "keywords": [
29
+ "mcp",
30
+ "codebase-indexer",
31
+ "claude",
32
+ "ai",
33
+ "typescript",
34
+ "token-reduction"
35
+ ],
36
+ "license": "MIT",
37
+ "dependencies": {
38
+ "@modelcontextprotocol/sdk": "^1.0.0",
39
+ "better-sqlite3": "^9.0.0",
40
+ "chokidar": "^3.6.0",
41
+ "express": "^4.18.0",
42
+ "glob": "^10.0.0",
43
+ "open": "^9.1.0",
44
+ "tree-sitter": "^0.21.0",
45
+ "tree-sitter-typescript": "^0.21.0",
46
+ "uuid": "^9.0.0",
47
+ "ws": "^8.16.0"
48
+ },
49
+ "devDependencies": {
50
+ "@types/better-sqlite3": "^7.6.0",
51
+ "@types/express": "^4.17.0",
52
+ "@types/node": "^20.0.0",
53
+ "@types/supertest": "^6.0.0",
54
+ "@types/uuid": "^9.0.0",
55
+ "@types/ws": "^8.5.0",
56
+ "@vitest/coverage-v8": "^1.0.0",
57
+ "supertest": "^6.0.0",
58
+ "typescript": "^5.0.0",
59
+ "vitest": "^1.0.0"
60
+ },
61
+ "engines": {
62
+ "node": ">=18.0.0"
63
+ },
64
+ "repository": {
65
+ "type": "git",
66
+ "url": "https://github.com/phash/PindeX.git"
67
+ },
68
+ "homepage": "https://github.com/phash/PindeX"
69
+ }