daedalus-cli 0.4.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 (144) hide show
  1. package/Daedalus.bat +18 -0
  2. package/LICENSE +21 -0
  3. package/README.md +254 -0
  4. package/dist/agents/agent.d.ts +10 -0
  5. package/dist/agents/agent.d.ts.map +1 -0
  6. package/dist/agents/agent.js +3 -0
  7. package/dist/agents/agent.js.map +1 -0
  8. package/dist/agents/orchestrator.d.ts +18 -0
  9. package/dist/agents/orchestrator.d.ts.map +1 -0
  10. package/dist/agents/orchestrator.js +171 -0
  11. package/dist/agents/orchestrator.js.map +1 -0
  12. package/dist/agents/roles.d.ts +14 -0
  13. package/dist/agents/roles.d.ts.map +1 -0
  14. package/dist/agents/roles.js +126 -0
  15. package/dist/agents/roles.js.map +1 -0
  16. package/dist/config/index.d.ts +485 -0
  17. package/dist/config/index.d.ts.map +1 -0
  18. package/dist/config/index.js +237 -0
  19. package/dist/config/index.js.map +1 -0
  20. package/dist/highlight.d.ts +4 -0
  21. package/dist/highlight.d.ts.map +1 -0
  22. package/dist/highlight.js +42 -0
  23. package/dist/highlight.js.map +1 -0
  24. package/dist/index.d.ts +3 -0
  25. package/dist/index.d.ts.map +1 -0
  26. package/dist/index.js +1386 -0
  27. package/dist/index.js.map +1 -0
  28. package/dist/indexing/fts.d.ts +40 -0
  29. package/dist/indexing/fts.d.ts.map +1 -0
  30. package/dist/indexing/fts.js +121 -0
  31. package/dist/indexing/fts.js.map +1 -0
  32. package/dist/indexing/indexer.d.ts +22 -0
  33. package/dist/indexing/indexer.d.ts.map +1 -0
  34. package/dist/indexing/indexer.js +518 -0
  35. package/dist/indexing/indexer.js.map +1 -0
  36. package/dist/onboarding/wizard.d.ts +2 -0
  37. package/dist/onboarding/wizard.d.ts.map +1 -0
  38. package/dist/onboarding/wizard.js +231 -0
  39. package/dist/onboarding/wizard.js.map +1 -0
  40. package/dist/router/health.d.ts +6 -0
  41. package/dist/router/health.d.ts.map +1 -0
  42. package/dist/router/health.js +74 -0
  43. package/dist/router/health.js.map +1 -0
  44. package/dist/router/index.d.ts +33 -0
  45. package/dist/router/index.d.ts.map +1 -0
  46. package/dist/router/index.js +214 -0
  47. package/dist/router/index.js.map +1 -0
  48. package/dist/router/rate-limiter.d.ts +7 -0
  49. package/dist/router/rate-limiter.d.ts.map +1 -0
  50. package/dist/router/rate-limiter.js +36 -0
  51. package/dist/router/rate-limiter.js.map +1 -0
  52. package/dist/router/types.d.ts +81 -0
  53. package/dist/router/types.d.ts.map +1 -0
  54. package/dist/router/types.js +3 -0
  55. package/dist/router/types.js.map +1 -0
  56. package/dist/session/jsonl.d.ts +20 -0
  57. package/dist/session/jsonl.d.ts.map +1 -0
  58. package/dist/session/jsonl.js +61 -0
  59. package/dist/session/jsonl.js.map +1 -0
  60. package/dist/session/manager.d.ts +42 -0
  61. package/dist/session/manager.d.ts.map +1 -0
  62. package/dist/session/manager.js +184 -0
  63. package/dist/session/manager.js.map +1 -0
  64. package/dist/session/memory.d.ts +23 -0
  65. package/dist/session/memory.d.ts.map +1 -0
  66. package/dist/session/memory.js +88 -0
  67. package/dist/session/memory.js.map +1 -0
  68. package/dist/session/sqlite.d.ts +59 -0
  69. package/dist/session/sqlite.d.ts.map +1 -0
  70. package/dist/session/sqlite.js +174 -0
  71. package/dist/session/sqlite.js.map +1 -0
  72. package/dist/tools/builtin/delegation.d.ts +17 -0
  73. package/dist/tools/builtin/delegation.d.ts.map +1 -0
  74. package/dist/tools/builtin/delegation.js +85 -0
  75. package/dist/tools/builtin/delegation.js.map +1 -0
  76. package/dist/tools/builtin/diff-ui.d.ts +21 -0
  77. package/dist/tools/builtin/diff-ui.d.ts.map +1 -0
  78. package/dist/tools/builtin/diff-ui.js +211 -0
  79. package/dist/tools/builtin/diff-ui.js.map +1 -0
  80. package/dist/tools/builtin/files.d.ts +29 -0
  81. package/dist/tools/builtin/files.d.ts.map +1 -0
  82. package/dist/tools/builtin/files.js +286 -0
  83. package/dist/tools/builtin/files.js.map +1 -0
  84. package/dist/tools/builtin/git.d.ts +7 -0
  85. package/dist/tools/builtin/git.d.ts.map +1 -0
  86. package/dist/tools/builtin/git.js +11 -0
  87. package/dist/tools/builtin/git.js.map +1 -0
  88. package/dist/tools/builtin/indexing.d.ts +22 -0
  89. package/dist/tools/builtin/indexing.d.ts.map +1 -0
  90. package/dist/tools/builtin/indexing.js +159 -0
  91. package/dist/tools/builtin/indexing.js.map +1 -0
  92. package/dist/tools/builtin/project-config.d.ts +17 -0
  93. package/dist/tools/builtin/project-config.d.ts.map +1 -0
  94. package/dist/tools/builtin/project-config.js +66 -0
  95. package/dist/tools/builtin/project-config.js.map +1 -0
  96. package/dist/tools/builtin/terminal.d.ts +7 -0
  97. package/dist/tools/builtin/terminal.d.ts.map +1 -0
  98. package/dist/tools/builtin/terminal.js +99 -0
  99. package/dist/tools/builtin/terminal.js.map +1 -0
  100. package/dist/tools/builtin/todo.d.ts +20 -0
  101. package/dist/tools/builtin/todo.d.ts.map +1 -0
  102. package/dist/tools/builtin/todo.js +36 -0
  103. package/dist/tools/builtin/todo.js.map +1 -0
  104. package/dist/tools/builtin/web.d.ts +10 -0
  105. package/dist/tools/builtin/web.d.ts.map +1 -0
  106. package/dist/tools/builtin/web.js +67 -0
  107. package/dist/tools/builtin/web.js.map +1 -0
  108. package/dist/tools/daedalus-spinner.d.ts +29 -0
  109. package/dist/tools/daedalus-spinner.d.ts.map +1 -0
  110. package/dist/tools/daedalus-spinner.js +77 -0
  111. package/dist/tools/daedalus-spinner.js.map +1 -0
  112. package/dist/tools/definitions.d.ts +5 -0
  113. package/dist/tools/definitions.d.ts.map +1 -0
  114. package/dist/tools/definitions.js +296 -0
  115. package/dist/tools/definitions.js.map +1 -0
  116. package/dist/tools/executor.d.ts +4 -0
  117. package/dist/tools/executor.d.ts.map +1 -0
  118. package/dist/tools/executor.js +86 -0
  119. package/dist/tools/executor.js.map +1 -0
  120. package/dist/tools/mcp/http.d.ts +23 -0
  121. package/dist/tools/mcp/http.d.ts.map +1 -0
  122. package/dist/tools/mcp/http.js +200 -0
  123. package/dist/tools/mcp/http.js.map +1 -0
  124. package/dist/tools/mcp/registry.d.ts +16 -0
  125. package/dist/tools/mcp/registry.d.ts.map +1 -0
  126. package/dist/tools/mcp/registry.js +92 -0
  127. package/dist/tools/mcp/registry.js.map +1 -0
  128. package/dist/tools/mcp/stdio.d.ts +26 -0
  129. package/dist/tools/mcp/stdio.d.ts.map +1 -0
  130. package/dist/tools/mcp/stdio.js +157 -0
  131. package/dist/tools/mcp/stdio.js.map +1 -0
  132. package/dist/tools/mcp/tool-executor.d.ts +3 -0
  133. package/dist/tools/mcp/tool-executor.d.ts.map +1 -0
  134. package/dist/tools/mcp/tool-executor.js +23 -0
  135. package/dist/tools/mcp/tool-executor.js.map +1 -0
  136. package/dist/tools/mcp/types.d.ts +26 -0
  137. package/dist/tools/mcp/types.d.ts.map +1 -0
  138. package/dist/tools/mcp/types.js +3 -0
  139. package/dist/tools/mcp/types.js.map +1 -0
  140. package/dist/types.d.ts +58 -0
  141. package/dist/types.d.ts.map +1 -0
  142. package/dist/types.js +3 -0
  143. package/dist/types.js.map +1 -0
  144. package/package.json +63 -0
@@ -0,0 +1,518 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import crypto from 'crypto';
4
+ import { clearFileIndex, saveFileHash, getFileHash, insertSymbols, insertReferences } from './fts.js';
5
+ const DEFAULT_EXCLUDE = ['node_modules', 'dist', 'build', '.git', 'target', 'coverage'];
6
+ const DEFAULT_EXTENSIONS = ['.ts', '.tsx', '.js', '.jsx', '.py', '.go', '.rs'];
7
+ /** Compute SHA256 of string content */
8
+ function hashContent(content) {
9
+ return crypto.createHash('sha256').update(content).digest('hex');
10
+ }
11
+ /** Crawl directory recursively and collect code files */
12
+ export function collectFiles(dir, root, exclude, extensions, fileList = []) {
13
+ const files = fs.readdirSync(dir);
14
+ for (const file of files) {
15
+ const fullPath = path.join(dir, file);
16
+ const relPath = path.relative(root, fullPath);
17
+ // Ignore excluded dirs
18
+ if (exclude.has(file) || exclude.has(relPath)) {
19
+ continue;
20
+ }
21
+ try {
22
+ const stat = fs.statSync(fullPath);
23
+ if (stat.isDirectory()) {
24
+ collectFiles(fullPath, root, exclude, extensions, fileList);
25
+ }
26
+ else if (stat.isFile()) {
27
+ const ext = path.extname(file).toLowerCase();
28
+ if (extensions.has(ext)) {
29
+ fileList.push(fullPath);
30
+ }
31
+ }
32
+ }
33
+ catch {
34
+ // Ignored (unreadable files/dirs)
35
+ }
36
+ }
37
+ return fileList;
38
+ }
39
+ /** Extract symbols and references from TypeScript/JavaScript file */
40
+ function parseTypeScript(content, relPath, projectHash) {
41
+ const symbols = [];
42
+ const references = [];
43
+ const lines = content.split(/\r?\n/);
44
+ let currentCaller = null;
45
+ let callerStartLine = 0;
46
+ let callerBraceCount = 0;
47
+ for (let i = 0; i < lines.length; i++) {
48
+ const line = lines[i];
49
+ const lineNum = i + 1;
50
+ // Track braces to see when a function body ends
51
+ if (currentCaller) {
52
+ const openBraces = (line.match(/\{/g) || []).length;
53
+ const closeBraces = (line.match(/\}/g) || []).length;
54
+ callerBraceCount += openBraces - closeBraces;
55
+ if (callerBraceCount <= 0) {
56
+ // Find the index of the symbol and update line_end
57
+ const sym = symbols.find(s => s.name === currentCaller && s.file_path === relPath && s.line_start === callerStartLine);
58
+ if (sym)
59
+ sym.line_end = lineNum;
60
+ currentCaller = null;
61
+ }
62
+ }
63
+ // Class definition
64
+ let match = line.match(/(?:export\s+)?(?:default\s+)?class\s+(\w+)/);
65
+ if (match) {
66
+ symbols.push({
67
+ name: match[1],
68
+ kind: 'class',
69
+ file_path: relPath,
70
+ line_start: lineNum,
71
+ line_end: lineNum,
72
+ signature: line.trim().replace(/\s*\{.*$/, ''),
73
+ project_hash: projectHash,
74
+ });
75
+ continue;
76
+ }
77
+ // Interface definition
78
+ match = line.match(/(?:export\s+)?interface\s+(\w+)/);
79
+ if (match) {
80
+ symbols.push({
81
+ name: match[1],
82
+ kind: 'interface',
83
+ file_path: relPath,
84
+ line_start: lineNum,
85
+ line_end: lineNum,
86
+ signature: line.trim().replace(/\s*\{.*$/, ''),
87
+ project_hash: projectHash,
88
+ });
89
+ continue;
90
+ }
91
+ // Type definition
92
+ match = line.match(/(?:export\s+)?type\s+(\w+)\s*=/);
93
+ if (match) {
94
+ symbols.push({
95
+ name: match[1],
96
+ kind: 'type',
97
+ file_path: relPath,
98
+ line_start: lineNum,
99
+ line_end: lineNum,
100
+ signature: line.trim().replace(/\s*=.*$/, ''),
101
+ project_hash: projectHash,
102
+ });
103
+ continue;
104
+ }
105
+ // Normal Function definition
106
+ match = line.match(/(?:export\s+)?(?:default\s+)?(?:async\s+)?function\s+(\w+)\s*\(/);
107
+ if (match) {
108
+ const funcName = match[1];
109
+ symbols.push({
110
+ name: funcName,
111
+ kind: 'function',
112
+ file_path: relPath,
113
+ line_start: lineNum,
114
+ line_end: lineNum,
115
+ signature: line.trim().replace(/\s*\{.*$/, ''),
116
+ project_hash: projectHash,
117
+ });
118
+ currentCaller = funcName;
119
+ callerStartLine = lineNum;
120
+ callerBraceCount = (line.match(/\{/g) || []).length - (line.match(/\}/g) || []).length;
121
+ continue;
122
+ }
123
+ // Arrow Function / Variable assignment function definition
124
+ match = line.match(/(?:export\s+)?const\s+(\w+)\s*=\s*(?:async\s*)?\(([^)]*)\)\s*(?::\s*[^=]+)?\s*=>/);
125
+ if (match) {
126
+ const funcName = match[1];
127
+ symbols.push({
128
+ name: funcName,
129
+ kind: 'function',
130
+ file_path: relPath,
131
+ line_start: lineNum,
132
+ line_end: lineNum,
133
+ signature: line.trim().replace(/\s*=>.*$/, ''),
134
+ project_hash: projectHash,
135
+ });
136
+ currentCaller = funcName;
137
+ callerStartLine = lineNum;
138
+ callerBraceCount = (line.match(/\{/g) || []).length - (line.match(/\}/g) || []).length;
139
+ continue;
140
+ }
141
+ // Extract references (calls)
142
+ if (currentCaller) {
143
+ // Find patterns like calleeName(arguments)
144
+ const callMatches = line.matchAll(/\b([a-zA-Z0-9_$]+)\s*\(/g);
145
+ for (const m of callMatches) {
146
+ const callee = m[1];
147
+ // Ignore language control structures
148
+ const reserved = ['if', 'for', 'while', 'catch', 'switch', 'require', 'super', 'import', 'expect', 'describe', 'it', 'beforeEach', 'afterEach'];
149
+ if (!reserved.includes(callee) && callee !== currentCaller) {
150
+ references.push({
151
+ caller_name: currentCaller,
152
+ caller_file: relPath,
153
+ caller_line: lineNum,
154
+ callee_name: callee,
155
+ callee_file: relPath,
156
+ callee_line: lineNum,
157
+ project_hash: projectHash,
158
+ });
159
+ }
160
+ }
161
+ }
162
+ }
163
+ return { symbols, references };
164
+ }
165
+ /** Extract symbols and references from Python file */
166
+ function parsePython(content, relPath, projectHash) {
167
+ const symbols = [];
168
+ const references = [];
169
+ const lines = content.split(/\r?\n/);
170
+ let currentCaller = null;
171
+ let callerStartLine = 0;
172
+ let callerIndent = -1;
173
+ for (let i = 0; i < lines.length; i++) {
174
+ const line = lines[i];
175
+ const lineNum = i + 1;
176
+ if (line.trim().startsWith('#') || !line.trim())
177
+ continue;
178
+ const indent = line.length - line.trimStart().length;
179
+ // Track indentation to see when a function body ends
180
+ if (currentCaller && indent <= callerIndent && line.trim()) {
181
+ const sym = symbols.find(s => s.name === currentCaller && s.file_path === relPath && s.line_start === callerStartLine);
182
+ if (sym)
183
+ sym.line_end = lineNum - 1;
184
+ currentCaller = null;
185
+ callerIndent = -1;
186
+ }
187
+ // Class definition
188
+ let match = line.match(/^(\s*)class\s+(\w+)/);
189
+ if (match) {
190
+ symbols.push({
191
+ name: match[2],
192
+ kind: 'class',
193
+ file_path: relPath,
194
+ line_start: lineNum,
195
+ line_end: lineNum,
196
+ signature: line.trim().replace(/:.*$/, ''),
197
+ project_hash: projectHash,
198
+ });
199
+ continue;
200
+ }
201
+ // Function definition
202
+ match = line.match(/^(\s*)def\s+(\w+)/);
203
+ if (match) {
204
+ const funcName = match[2];
205
+ symbols.push({
206
+ name: funcName,
207
+ kind: funcName.startsWith('__') ? 'method' : 'function',
208
+ file_path: relPath,
209
+ line_start: lineNum,
210
+ line_end: lineNum,
211
+ signature: line.trim().replace(/:.*$/, ''),
212
+ project_hash: projectHash,
213
+ });
214
+ currentCaller = funcName;
215
+ callerStartLine = lineNum;
216
+ callerIndent = match[1].length;
217
+ continue;
218
+ }
219
+ // Extract references
220
+ if (currentCaller) {
221
+ const callMatches = line.matchAll(/\b([a-zA-Z0-9_]+)\s*\(/g);
222
+ for (const m of callMatches) {
223
+ const callee = m[1];
224
+ const reserved = ['def', 'class', 'if', 'elif', 'while', 'for', 'print', 'len', 'range', 'enumerate', 'zip', 'str', 'int', 'dict', 'list', 'set', 'super'];
225
+ if (!reserved.includes(callee) && callee !== currentCaller) {
226
+ references.push({
227
+ caller_name: currentCaller,
228
+ caller_file: relPath,
229
+ caller_line: lineNum,
230
+ callee_name: callee,
231
+ callee_file: relPath,
232
+ callee_line: lineNum,
233
+ project_hash: projectHash,
234
+ });
235
+ }
236
+ }
237
+ }
238
+ }
239
+ return { symbols, references };
240
+ }
241
+ /** Extract symbols and references from Go file */
242
+ function parseGo(content, relPath, projectHash) {
243
+ const symbols = [];
244
+ const references = [];
245
+ const lines = content.split(/\r?\n/);
246
+ let currentCaller = null;
247
+ let callerStartLine = 0;
248
+ let callerBraceCount = 0;
249
+ for (let i = 0; i < lines.length; i++) {
250
+ const line = lines[i];
251
+ const lineNum = i + 1;
252
+ if (currentCaller) {
253
+ const openBraces = (line.match(/\{/g) || []).length;
254
+ const closeBraces = (line.match(/\}/g) || []).length;
255
+ callerBraceCount += openBraces - closeBraces;
256
+ if (callerBraceCount <= 0) {
257
+ const sym = symbols.find(s => s.name === currentCaller && s.file_path === relPath && s.line_start === callerStartLine);
258
+ if (sym)
259
+ sym.line_end = lineNum;
260
+ currentCaller = null;
261
+ }
262
+ }
263
+ // Struct definition
264
+ let match = line.match(/type\s+(\w+)\s+struct/);
265
+ if (match) {
266
+ symbols.push({
267
+ name: match[1],
268
+ kind: 'struct',
269
+ file_path: relPath,
270
+ line_start: lineNum,
271
+ line_end: lineNum,
272
+ signature: line.trim().replace(/\s*\{.*$/, ''),
273
+ project_hash: projectHash,
274
+ });
275
+ continue;
276
+ }
277
+ // Interface definition
278
+ match = line.match(/type\s+(\w+)\s+interface/);
279
+ if (match) {
280
+ symbols.push({
281
+ name: match[1],
282
+ kind: 'interface',
283
+ file_path: relPath,
284
+ line_start: lineNum,
285
+ line_end: lineNum,
286
+ signature: line.trim().replace(/\s*\{.*$/, ''),
287
+ project_hash: projectHash,
288
+ });
289
+ continue;
290
+ }
291
+ // Method definition: func (r *Receiver) MethodName()
292
+ match = line.match(/func\s*\(\s*\w+\s+\*?(\w+)\s*\)\s*(\w+)\s*\(/);
293
+ if (match) {
294
+ const methodName = `${match[1]}.${match[2]}`;
295
+ symbols.push({
296
+ name: methodName,
297
+ kind: 'method',
298
+ file_path: relPath,
299
+ line_start: lineNum,
300
+ line_end: lineNum,
301
+ signature: line.trim().replace(/\s*\{.*$/, ''),
302
+ project_hash: projectHash,
303
+ });
304
+ currentCaller = methodName;
305
+ callerStartLine = lineNum;
306
+ callerBraceCount = (line.match(/\{/g) || []).length - (line.match(/\}/g) || []).length;
307
+ continue;
308
+ }
309
+ // Function definition: func FunctionName()
310
+ match = line.match(/func\s+(\w+)\s*\(/);
311
+ if (match) {
312
+ const funcName = match[1];
313
+ symbols.push({
314
+ name: funcName,
315
+ kind: 'function',
316
+ file_path: relPath,
317
+ line_start: lineNum,
318
+ line_end: lineNum,
319
+ signature: line.trim().replace(/\s*\{.*$/, ''),
320
+ project_hash: projectHash,
321
+ });
322
+ currentCaller = funcName;
323
+ callerStartLine = lineNum;
324
+ callerBraceCount = (line.match(/\{/g) || []).length - (line.match(/\}/g) || []).length;
325
+ continue;
326
+ }
327
+ // Extract references
328
+ if (currentCaller) {
329
+ const callMatches = line.matchAll(/\b([a-zA-Z0-9_]+)\s*\(/g);
330
+ for (const m of callMatches) {
331
+ const callee = m[1];
332
+ const reserved = ['func', 'if', 'for', 'switch', 'panic', 'recover', 'append', 'make', 'new', 'close', 'len', 'cap', 'copy', 'delete'];
333
+ if (!reserved.includes(callee) && callee !== currentCaller) {
334
+ references.push({
335
+ caller_name: currentCaller,
336
+ caller_file: relPath,
337
+ caller_line: lineNum,
338
+ callee_name: callee,
339
+ callee_file: relPath,
340
+ callee_line: lineNum,
341
+ project_hash: projectHash,
342
+ });
343
+ }
344
+ }
345
+ }
346
+ }
347
+ return { symbols, references };
348
+ }
349
+ /** Extract symbols and references from Rust file */
350
+ function parseRust(content, relPath, projectHash) {
351
+ const symbols = [];
352
+ const references = [];
353
+ const lines = content.split(/\r?\n/);
354
+ let currentCaller = null;
355
+ let callerStartLine = 0;
356
+ let callerBraceCount = 0;
357
+ for (let i = 0; i < lines.length; i++) {
358
+ const line = lines[i];
359
+ const lineNum = i + 1;
360
+ if (currentCaller) {
361
+ const openBraces = (line.match(/\{/g) || []).length;
362
+ const closeBraces = (line.match(/\}/g) || []).length;
363
+ callerBraceCount += openBraces - closeBraces;
364
+ if (callerBraceCount <= 0) {
365
+ const sym = symbols.find(s => s.name === currentCaller && s.file_path === relPath && s.line_start === callerStartLine);
366
+ if (sym)
367
+ sym.line_end = lineNum;
368
+ currentCaller = null;
369
+ }
370
+ }
371
+ // Struct definition
372
+ let match = line.match(/(?:pub\s+)?struct\s+(\w+)/);
373
+ if (match) {
374
+ symbols.push({
375
+ name: match[1],
376
+ kind: 'struct',
377
+ file_path: relPath,
378
+ line_start: lineNum,
379
+ line_end: lineNum,
380
+ signature: line.trim().replace(/\s*\{.*$/, '').replace(/;$/, ''),
381
+ project_hash: projectHash,
382
+ });
383
+ continue;
384
+ }
385
+ // Enum definition
386
+ match = line.match(/(?:pub\s+)?enum\s+(\w+)/);
387
+ if (match) {
388
+ symbols.push({
389
+ name: match[1],
390
+ kind: 'enum',
391
+ file_path: relPath,
392
+ line_start: lineNum,
393
+ line_end: lineNum,
394
+ signature: line.trim().replace(/\s*\{.*$/, ''),
395
+ project_hash: projectHash,
396
+ });
397
+ continue;
398
+ }
399
+ // Trait definition
400
+ match = line.match(/(?:pub\s+)?trait\s+(\w+)/);
401
+ if (match) {
402
+ symbols.push({
403
+ name: match[1],
404
+ kind: 'trait',
405
+ file_path: relPath,
406
+ line_start: lineNum,
407
+ line_end: lineNum,
408
+ signature: line.trim().replace(/\s*\{.*$/, ''),
409
+ project_hash: projectHash,
410
+ });
411
+ continue;
412
+ }
413
+ // Function definition
414
+ match = line.match(/(?:pub\s+)?(?:async\s+)?fn\s+(\w+)/);
415
+ if (match) {
416
+ const funcName = match[1];
417
+ symbols.push({
418
+ name: funcName,
419
+ kind: 'function',
420
+ file_path: relPath,
421
+ line_start: lineNum,
422
+ line_end: lineNum,
423
+ signature: line.trim().replace(/\s*\{.*$/, '').replace(/;$/, ''),
424
+ project_hash: projectHash,
425
+ });
426
+ currentCaller = funcName;
427
+ callerStartLine = lineNum;
428
+ callerBraceCount = (line.match(/\{/g) || []).length - (line.match(/\}/g) || []).length;
429
+ continue;
430
+ }
431
+ // Extract references (matches calls or macro invocations)
432
+ if (currentCaller) {
433
+ const callMatches = line.matchAll(/\b([a-zA-Z0-9_]+)!(?:\s*\(|\s*\{)?|\b([a-zA-Z0-9_]+)\s*\(/g);
434
+ for (const m of callMatches) {
435
+ const callee = m[1] || m[2];
436
+ const reserved = ['fn', 'struct', 'enum', 'trait', 'impl', 'if', 'else', 'match', 'for', 'while', 'loop', 'return', 'println', 'format', 'vec', 'panic'];
437
+ if (!reserved.includes(callee) && callee !== currentCaller) {
438
+ references.push({
439
+ caller_name: currentCaller,
440
+ caller_file: relPath,
441
+ caller_line: lineNum,
442
+ callee_name: callee,
443
+ callee_file: relPath,
444
+ callee_line: lineNum,
445
+ project_hash: projectHash,
446
+ });
447
+ }
448
+ }
449
+ }
450
+ }
451
+ return { symbols, references };
452
+ }
453
+ /** Language parser dispatch */
454
+ function parseFile(content, relPath, projectHash) {
455
+ const ext = path.extname(relPath).toLowerCase();
456
+ switch (ext) {
457
+ case '.ts':
458
+ case '.tsx':
459
+ case '.js':
460
+ case '.jsx':
461
+ return parseTypeScript(content, relPath, projectHash);
462
+ case '.py':
463
+ return parsePython(content, relPath, projectHash);
464
+ case '.go':
465
+ return parseGo(content, relPath, projectHash);
466
+ case '.rs':
467
+ return parseRust(content, relPath, projectHash);
468
+ default:
469
+ return { symbols: [], references: [] };
470
+ }
471
+ }
472
+ /** Main indexing function - crawls codebase and indexes symbols/references */
473
+ export function indexCodebase(db, root, projectHash, options = {}) {
474
+ const exclude = new Set([...DEFAULT_EXCLUDE, ...(options.exclude || [])]);
475
+ const extensions = new Set([...DEFAULT_EXTENSIONS, ...(options.extensions || [])]);
476
+ const files = collectFiles(root, root, exclude, extensions, []);
477
+ let indexedFiles = 0;
478
+ let skippedFiles = 0;
479
+ const errors = [];
480
+ for (const [i, file] of files.entries()) {
481
+ try {
482
+ const relPath = path.relative(root, file);
483
+ options.onProgress?.({ current: i + 1, total: files.length, file: relPath });
484
+ const content = fs.readFileSync(file, 'utf8');
485
+ const hash = hashContent(content);
486
+ // Skip if already indexed with same hash
487
+ const existingHash = getFileHash(db, relPath);
488
+ if (existingHash === hash) {
489
+ skippedFiles++;
490
+ continue;
491
+ }
492
+ // Parse file
493
+ const { symbols, references } = parseFile(content, relPath, projectHash);
494
+ if (symbols.length > 0 || references.length > 0) {
495
+ // Clear old index for this file
496
+ clearFileIndex(db, relPath, projectHash);
497
+ // Insert new data
498
+ if (symbols.length > 0)
499
+ insertSymbols(db, symbols);
500
+ if (references.length > 0)
501
+ insertReferences(db, references);
502
+ // Save hash
503
+ saveFileHash(db, relPath, hash);
504
+ }
505
+ indexedFiles++;
506
+ }
507
+ catch (err) {
508
+ errors.push(`${path.relative(root, file) || file}: ${err.message}`);
509
+ }
510
+ }
511
+ return {
512
+ totalFiles: files.length,
513
+ indexedFiles,
514
+ skippedFiles,
515
+ errors,
516
+ };
517
+ }
518
+ //# sourceMappingURL=indexer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexer.js","sourceRoot":"","sources":["../../src/indexing/indexer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function runOnboarding(force?: boolean): Promise<void>;
2
+ //# sourceMappingURL=wizard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../src/onboarding/wizard.ts"],"names":[],"mappings":"AA2EA,wBAAsB,aAAa,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAoFhE"}