aidoc-kit 1.2.2 → 1.3.1

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 (41) hide show
  1. package/README.md +45 -5
  2. package/dist/cli.js +96 -1
  3. package/dist/cli.js.map +1 -1
  4. package/dist/codegraph/detect.d.ts +16 -0
  5. package/dist/codegraph/detect.d.ts.map +1 -0
  6. package/dist/codegraph/detect.js +68 -0
  7. package/dist/codegraph/detect.js.map +1 -0
  8. package/dist/codegraph/loader.d.ts +9 -0
  9. package/dist/codegraph/loader.d.ts.map +1 -0
  10. package/dist/codegraph/loader.js +161 -0
  11. package/dist/codegraph/loader.js.map +1 -0
  12. package/dist/codegraph/runner.d.ts +18 -0
  13. package/dist/codegraph/runner.d.ts.map +1 -0
  14. package/dist/codegraph/runner.js +60 -0
  15. package/dist/codegraph/runner.js.map +1 -0
  16. package/dist/core/scanner.js +1 -1
  17. package/dist/core/scanner.js.map +1 -1
  18. package/dist/core/writer.d.ts.map +1 -1
  19. package/dist/core/writer.js +8 -2
  20. package/dist/core/writer.js.map +1 -1
  21. package/dist/enricher/basicEnricher.d.ts +27 -0
  22. package/dist/enricher/basicEnricher.d.ts.map +1 -0
  23. package/dist/enricher/basicEnricher.js +157 -0
  24. package/dist/enricher/basicEnricher.js.map +1 -0
  25. package/dist/graph/query.d.ts +28 -0
  26. package/dist/graph/query.d.ts.map +1 -0
  27. package/dist/graph/query.js +24 -0
  28. package/dist/graph/query.js.map +1 -0
  29. package/dist/graph/serializer.d.ts +10 -0
  30. package/dist/graph/serializer.d.ts.map +1 -0
  31. package/dist/graph/serializer.js +51 -0
  32. package/dist/graph/serializer.js.map +1 -0
  33. package/dist/graph/types.d.ts +101 -0
  34. package/dist/graph/types.d.ts.map +1 -0
  35. package/dist/graph/types.js +27 -0
  36. package/dist/graph/types.js.map +1 -0
  37. package/dist/index.d.ts +7 -0
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +23 -1
  40. package/dist/index.js.map +1 -1
  41. package/package.json +9 -2
package/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
8
8
  [![TypeScript](https://img.shields.io/badge/TypeScript-strict-blue.svg)](tsconfig.json)
9
9
 
10
- > **v1.2.0** — Battle-tested on Next.js 16 projects with 135+ files.
10
+ > **v1.2.3** — Battle-tested on Next.js projects with 500+ files.
11
11
 
12
12
  ## The problem
13
13
 
@@ -47,15 +47,41 @@ npx aidoc-kit scan --dry
47
47
  # 3. Write blocks to all files (asks confirmation):
48
48
  npx aidoc-kit scan --write
49
49
 
50
- # 4. Summarise large files for agents:
50
+ # 4. Keep blocks up to date as you add new files:
51
+ npx aidoc-kit scan --watch
52
+
53
+ # 5. Summarise large files for agents:
51
54
  npx aidoc-kit chunk
52
55
 
53
- # 5. Enrich @ai-context with an LLM (uses the provider detected at init):
56
+ # 6. Enrich @ai-context with an LLM (uses the provider detected at init):
54
57
  npx aidoc-kit enrich --dry
58
+
59
+ # 7. Optional — build the enriched code graph (roles + criticality):
60
+ npm install -D @colbymchenry/codegraph
61
+ npx aidoc-kit index
55
62
  ```
56
63
 
57
64
  That's all a new user needs. `init` reads `package.json`, detects frameworks, auth libraries, databases, AI SDKs and generates a ready-to-use `aidoc.config.ts`.
58
65
 
66
+ ## Enriched code graph (CodeGraph)
67
+
68
+ `aidoc-kit index` uses [CodeGraph](https://github.com/colbymchenry/codegraph) as its
69
+ low-level indexing engine (optional peer dependency, indexing only — never part of
70
+ your app's runtime), then layers aidoc-kit's intelligence on top: a `client`/`server`
71
+ role and a 0-100 criticality score per file, written to `aidoc-graph.json` at the
72
+ project root.
73
+
74
+ ```bash
75
+ npm install -D @colbymchenry/codegraph
76
+ npx aidoc-kit index # full index
77
+ npx aidoc-kit index --incremental # sync changes since last index
78
+ ```
79
+
80
+ Requires Node.js >= 22.5 (CodeGraph's own requirement). Agents can read
81
+ `aidoc-graph.json` directly, or your tooling can query it through the library API
82
+ (`readEnrichedGraph`, `getDependents`, `getCriticalFiles`).
83
+ See [EXAMPLES.md](EXAMPLES.md) and [ARCHITECTURE.md](ARCHITECTURE.md).
84
+
59
85
  ## AI Setup
60
86
 
61
87
  `npx aidoc-kit init` asks how you use AI and configures the project accordingly.
@@ -229,7 +255,7 @@ export default {
229
255
  }
230
256
  ```
231
257
 
232
- Also supported: `aidoc.config.js` (CommonJS `module.exports`) and `aidoc.config.json`.
258
+ `aidoc.config.ts` is loaded natively when `tsx` or `ts-node` is available in your project's `node_modules` (no compile step needed). Falls back to `aidoc.config.js` (CommonJS `module.exports`) or `aidoc.config.json`.
233
259
 
234
260
  ## AI-powered context enrichment
235
261
 
@@ -392,14 +418,24 @@ Tell your AI agent: *"Read `.codemod/chunks/` before modifying any large file."*
392
418
  aidoc-kit — AI-native documentation toolkit
393
419
 
394
420
  Commands:
421
+ init Detect project stack and generate aidoc.config.ts
422
+ --path <dir> Project root (default: .)
423
+
395
424
  scan Scan a project and build the knowledge base
396
425
  --path <dir> Project root (default: .)
397
426
  --write Write missing @ai-* blocks (interactive confirmation)
427
+ --watch Watch for file changes and auto-write @ai-* blocks
428
+ --yes, -y Skip confirmation (CI / non-interactive)
398
429
  --dry Preview generated blocks without writing anything
399
430
 
400
431
  chunk Summarise large files (≥150 lines) into .codemod/chunks/*.md
401
432
  --path <dir> Project root (default: .)
402
433
 
434
+ index Build the enriched code graph (aidoc-graph.json) via CodeGraph
435
+ --path <dir> Project root (default: .)
436
+ --incremental Sync changes since last index instead of a full rebuild
437
+ Requires: npm install -D @colbymchenry/codegraph (and Node >= 22.5)
438
+
403
439
  models List available models for the configured provider
404
440
 
405
441
  enrich Enrich @ai-context blocks with real LLM-generated descriptions
@@ -415,6 +451,8 @@ Commands:
415
451
  run Apply transformation rules
416
452
  --path <dir> Project root (default: .)
417
453
  --dry Preview changes without writing
454
+
455
+ fix arrows Replace legacy arrow characters in @ai-* blocks (SWC compat)
418
456
  ```
419
457
 
420
458
  ## Reverse dependency graph
@@ -425,6 +463,8 @@ One of aidoc-kit's core features is the **reverse import map**: for every file,
425
463
 
426
464
  aidoc-kit uses only Node.js built-ins + the TypeScript compiler already installed in every TypeScript project. No extra packages, no version conflicts, no supply chain risk.
427
465
 
466
+ The only exception is opt-in: the `index` command uses `@colbymchenry/codegraph` as its indexing engine. It is an **optional peer dependency** — install it only if you want the enriched graph, and it never becomes part of your application's runtime.
467
+
428
468
  > All generated `@ai-*` blocks are 100% ASCII. No Unicode characters
429
469
  > are ever injected into source files — ensuring compatibility with
430
470
  > SWC, Turbopack, Babel, and esbuild across all Next.js versions.
@@ -441,7 +481,7 @@ aidoc-kit uses only Node.js built-ins + the TypeScript compiler already installe
441
481
 
442
482
  - [ ] VS Code extension with `@ai-*` tag highlighting and hover docs
443
483
  - [ ] MCP server to expose scan/transform as AI agent tools
444
- - [ ] `--watch` mode (rebuild knowledge base on save)
484
+ - [x] `--watch` mode (rebuild knowledge base on save)
445
485
  - [ ] Public rules registry for popular lib migrations (Next.js, Firebase, Stripe)
446
486
  - [ ] CI/CD integration to validate `@ai-*` coverage on each PR
447
487
  - [ ] HTML visual report of the dependency graph
package/dist/cli.js CHANGED
@@ -65,6 +65,12 @@ const init_1 = require("./core/init");
65
65
  const fixer_1 = require("./core/fixer");
66
66
  const config_1 = require("./core/config");
67
67
  const index_1 = require("./rules/index");
68
+ const detect_1 = require("./codegraph/detect");
69
+ const runner_1 = require("./codegraph/runner");
70
+ const loader_1 = require("./codegraph/loader");
71
+ const basicEnricher_1 = require("./enricher/basicEnricher");
72
+ const serializer_1 = require("./graph/serializer");
73
+ const query_1 = require("./graph/query");
68
74
  // ─── Arg helpers ───────────────────────────────────────────────────────────
69
75
  const args = process.argv.slice(2);
70
76
  const command = args[0];
@@ -127,7 +133,7 @@ function confirm(message) {
127
133
  // ─── scan helpers ─────────────────────────────────────────────────────────
128
134
  /** Directories to skip when watching for file-system events. */
129
135
  const WATCH_SKIP_DIRS = new Set([
130
- 'node_modules', '.git', 'dist', '.next', 'out', 'build', '.codemod', 'coverage',
136
+ 'node_modules', '.git', 'dist', '.next', '_next', 'out', 'build', '.codemod', '.codegraph', 'coverage',
131
137
  ]);
132
138
  const WATCH_EXTENSIONS = new Set(['.ts', '.tsx', '.js', '.jsx']);
133
139
  /**
@@ -260,6 +266,82 @@ Usage: aidoc-kit scan [options]
260
266
  // ── One-shot mode ──────────────────────────────────────────────────────
261
267
  await runScanPass(projectRoot, config, { write, dry, skipConfirm: false });
262
268
  }
269
+ // ─── index ─────────────────────────────────────────────────────────────────
270
+ async function cmdIndex() {
271
+ if (hasFlag('--help') || hasFlag('-h')) {
272
+ console.log(`
273
+ Usage: aidoc-kit index [options]
274
+
275
+ --path <dir> Root directory (default: .)
276
+ --incremental Sync changes since last index (codegraph sync) instead of a full rebuild
277
+ -h, --help Show this help
278
+
279
+ Requires @colbymchenry/codegraph as a dev dependency in the target project
280
+ and Node.js >= 22.5. Produces aidoc-graph.json at the project root.
281
+ `);
282
+ return;
283
+ }
284
+ const projectRoot = (0, node_path_1.resolve)(getFlag('--path') ?? '.');
285
+ const incremental = hasFlag('--incremental');
286
+ console.log(`\naidoc-kit index - ${projectRoot}${incremental ? ' [incremental]' : ''}\n`);
287
+ const install = (0, detect_1.detectCodegraph)(projectRoot);
288
+ if (!install) {
289
+ console.error((0, detect_1.codegraphInstallHint)());
290
+ process.exit(1);
291
+ }
292
+ console.log(`✓ CodeGraph detected${install.version ? ` (v${install.version})` : ''}\n`);
293
+ (0, runner_1.runCodegraphIndex)(projectRoot, install.binPath, { incremental });
294
+ const raw = await (0, loader_1.loadRawGraph)(projectRoot);
295
+ const enriched = (0, basicEnricher_1.enrichGraph)(raw, projectRoot);
296
+ const outPath = (0, serializer_1.writeEnrichedGraph)(enriched, projectRoot);
297
+ const { stats } = enriched;
298
+ console.log(`\n✓ ${stats.files} files, ${stats.edges} file-level edges`);
299
+ console.log(`✓ Roles: ${stats.client} client / ${stats.server} server / ${stats.universal} universal`);
300
+ const critical = (0, query_1.getCriticalFiles)(enriched, 'high');
301
+ if (critical.length > 0) {
302
+ console.log(`\nHigh-criticality files:`);
303
+ for (const f of critical.slice(0, 10)) {
304
+ console.log(` [${f.criticality}] ${f.file} (${f.inDegree} dependents${f.tags.length > 0 ? `, ${f.tags.join('/')}` : ''})`);
305
+ }
306
+ }
307
+ console.log(`\n✓ ${(0, node_path_1.relative)(projectRoot, outPath) || outPath} written`);
308
+ // Refresh AGENTS.md so its code-graph section reflects this index
309
+ (0, writer_1.writeAgentsMd)((0, scanner_1.scanProject)(projectRoot), projectRoot);
310
+ console.log('✓ AGENTS.md updated (code graph section)');
311
+ printAgentEntryHints(projectRoot);
312
+ }
313
+ /**
314
+ * AGENTS.md is only useful if each AI tool's own entry file points to it.
315
+ * List the entry files present in the project that do not reference it yet —
316
+ * informational only, aidoc-kit never edits these files.
317
+ */
318
+ function printAgentEntryHints(projectRoot) {
319
+ const entryFiles = [
320
+ 'CLAUDE.md',
321
+ '.cursorrules',
322
+ (0, node_path_1.join)('.github', 'copilot-instructions.md'),
323
+ 'GEMINI.md',
324
+ '.windsurfrules',
325
+ ];
326
+ const missing = [];
327
+ for (const rel of entryFiles) {
328
+ const abs = (0, node_path_1.join)(projectRoot, rel);
329
+ if (!(0, node_fs_1.existsSync)(abs))
330
+ continue;
331
+ try {
332
+ if (!/AGENTS\.md|aidoc-graph/.test((0, node_fs_1.readFileSync)(abs, 'utf-8')))
333
+ missing.push(rel);
334
+ }
335
+ catch { /* unreadable — skip */ }
336
+ }
337
+ if (missing.length === 0)
338
+ return;
339
+ console.log(`\nTip: these agent entry files do not mention AGENTS.md yet:`);
340
+ for (const f of missing)
341
+ console.log(` - ${f}`);
342
+ console.log(`Add one line to each so their agents discover the code graph:`);
343
+ console.log(` "Read AGENTS.md before modifying anything."`);
344
+ }
263
345
  // ─── run ───────────────────────────────────────────────────────────────────
264
346
  function cmdRun() {
265
347
  if (hasFlag('--help') || hasFlag('-h')) {
@@ -545,6 +627,11 @@ Commands:
545
627
  chunk Summarize large files (≥150 lines) into .codemod/chunks/
546
628
  --path <dir> Root directory (default: .)
547
629
 
630
+ index Build the enriched code graph (aidoc-graph.json) via CodeGraph
631
+ --path <dir> Root directory (default: .)
632
+ --incremental Sync changes since last index instead of a full rebuild
633
+ Requires: npm install -D @colbymchenry/codegraph (and Node >= 22.5)
634
+
548
635
  enrich Enrich @ai-context blocks with an LLM
549
636
  --provider openai | anthropic | gemini | groq | mistral | ollama
550
637
  (auto-inferred from --model when omitted)
@@ -583,6 +670,8 @@ Examples:
583
670
  npx aidoc-kit scan --path ./src --dry
584
671
  npx aidoc-kit scan --write
585
672
  npx aidoc-kit scan --watch
673
+ npx aidoc-kit index
674
+ npx aidoc-kit index --incremental
586
675
  npx aidoc-kit run --dry
587
676
  npx aidoc-kit chunk
588
677
  npx aidoc-kit chunk --path ./src
@@ -617,6 +706,12 @@ Usage: aidoc-kit init [options]
617
706
  process.exit(1);
618
707
  });
619
708
  break;
709
+ case 'index':
710
+ cmdIndex().catch((err) => {
711
+ console.error(err instanceof Error ? err.message : err);
712
+ process.exit(1);
713
+ });
714
+ break;
620
715
  case 'run':
621
716
  cmdRun();
622
717
  break;
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export declare const CODEGRAPH_PACKAGE = "@colbymchenry/codegraph";
2
+ export interface CodegraphInstall {
3
+ /** Absolute path to the codegraph executable */
4
+ binPath: string;
5
+ version: string | null;
6
+ }
7
+ /**
8
+ * Locate CodeGraph in the target project's node_modules.
9
+ * Falls back to aidoc-kit's own node_modules (useful when aidoc-kit is
10
+ * installed globally alongside CodeGraph). Returns null when not found —
11
+ * CodeGraph is an optional peer dependency, never assumed present.
12
+ */
13
+ export declare function detectCodegraph(projectRoot: string): CodegraphInstall | null;
14
+ /** Actionable message shown when CodeGraph is missing. */
15
+ export declare function codegraphInstallHint(): string;
16
+ //# sourceMappingURL=detect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../src/codegraph/detect.ts"],"names":[],"mappings":"AAuBA,eAAO,MAAM,iBAAiB,4BAA4B,CAAA;AAE1D,MAAM,WAAW,gBAAgB;IAC/B,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAoB5E;AAED,0DAA0D;AAC1D,wBAAgB,oBAAoB,IAAI,MAAM,CAW7C"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CODEGRAPH_PACKAGE = void 0;
4
+ exports.detectCodegraph = detectCodegraph;
5
+ exports.codegraphInstallHint = codegraphInstallHint;
6
+ /**
7
+ * @ai-agent general-expert
8
+ * @ai-agent-hint If you are not the general-expert specialist, consider switching to a specialized agent in Copilot Chat. Run `npx aidoc-kit agents` to generate agent instruction files.
9
+ * @ai-runtime UNIVERSEL
10
+ *
11
+ * @ai-context
12
+ * [GENERATED] This file exports: CODEGRAPH_PACKAGE, CodegraphInstall, detectCodegraph, codegraphInstallHint
13
+ * Imported by: src/cli.ts
14
+ *
15
+ * @ai-when-modifying
16
+ * 1. Check cascade files below before modifying
17
+ * 2. After modifying, ask the developer to run @ai-validate
18
+ * 3. If you have no terminal access, report the command to run
19
+ *
20
+ * @ai-cascade
21
+ * - src/cli.ts
22
+ *
23
+ * @ai-validate
24
+ * npm run typecheck
25
+ */
26
+ const node_fs_1 = require("node:fs");
27
+ const node_path_1 = require("node:path");
28
+ exports.CODEGRAPH_PACKAGE = '@colbymchenry/codegraph';
29
+ /**
30
+ * Locate CodeGraph in the target project's node_modules.
31
+ * Falls back to aidoc-kit's own node_modules (useful when aidoc-kit is
32
+ * installed globally alongside CodeGraph). Returns null when not found —
33
+ * CodeGraph is an optional peer dependency, never assumed present.
34
+ */
35
+ function detectCodegraph(projectRoot) {
36
+ const binName = process.platform === 'win32' ? 'codegraph.cmd' : 'codegraph';
37
+ const candidates = [projectRoot, (0, node_path_1.join)(__dirname, '..', '..')];
38
+ for (const root of candidates) {
39
+ const binPath = (0, node_path_1.join)(root, 'node_modules', '.bin', binName);
40
+ if (!(0, node_fs_1.existsSync)(binPath))
41
+ continue;
42
+ let version = null;
43
+ try {
44
+ const pkgPath = (0, node_path_1.join)(root, 'node_modules', exports.CODEGRAPH_PACKAGE, 'package.json');
45
+ const pkg = JSON.parse((0, node_fs_1.readFileSync)(pkgPath, 'utf-8'));
46
+ version = pkg.version ?? null;
47
+ }
48
+ catch {
49
+ // bin exists but package.json unreadable — version stays unknown
50
+ }
51
+ return { binPath, version };
52
+ }
53
+ return null;
54
+ }
55
+ /** Actionable message shown when CodeGraph is missing. */
56
+ function codegraphInstallHint() {
57
+ return [
58
+ `CodeGraph is not installed in this project.`,
59
+ ``,
60
+ `The \`index\` command uses ${exports.CODEGRAPH_PACKAGE} as its low-level indexing engine.`,
61
+ `Install it as a dev dependency (indexing only — never part of your app's runtime):`,
62
+ ``,
63
+ ` npm install -D ${exports.CODEGRAPH_PACKAGE}`,
64
+ ``,
65
+ `Then run \`npx aidoc-kit index\` again.`,
66
+ ].join('\n');
67
+ }
68
+ //# sourceMappingURL=detect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detect.js","sourceRoot":"","sources":["../../src/codegraph/detect.ts"],"names":[],"mappings":";;;AAqCA,0CAoBC;AAGD,oDAWC;AAvED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qCAAkD;AAClD,yCAAgC;AAEnB,QAAA,iBAAiB,GAAG,yBAAyB,CAAA;AAQ1D;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,WAAmB;IACjD,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAA;IAC5E,MAAM,UAAU,GAAG,CAAC,WAAW,EAAE,IAAA,gBAAI,EAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IAE7D,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAA,gBAAI,EAAC,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QAC3D,IAAI,CAAC,IAAA,oBAAU,EAAC,OAAO,CAAC;YAAE,SAAQ;QAElC,IAAI,OAAO,GAAkB,IAAI,CAAA;QACjC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAA,gBAAI,EAAC,IAAI,EAAE,cAAc,EAAE,yBAAiB,EAAE,cAAc,CAAC,CAAA;YAC7E,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,OAAO,EAAE,OAAO,CAAC,CAAyB,CAAA;YAC9E,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,IAAI,CAAA;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,iEAAiE;QACnE,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;IAC7B,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,0DAA0D;AAC1D,SAAgB,oBAAoB;IAClC,OAAO;QACL,6CAA6C;QAC7C,EAAE;QACF,8BAA8B,yBAAiB,oCAAoC;QACnF,oFAAoF;QACpF,EAAE;QACF,oBAAoB,yBAAiB,EAAE;QACvC,EAAE;QACF,yCAAyC;KAC1C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { RawGraph } from '../graph/types';
2
+ /**
3
+ * Load the raw knowledge graph produced by `codegraph index`.
4
+ * Symbol-level edges are aggregated to file level: the enrichment layer
5
+ * reasons about files, and the full symbol detail stays queryable in the
6
+ * CodeGraph database itself.
7
+ */
8
+ export declare function loadRawGraph(projectRoot: string): Promise<RawGraph>;
9
+ //# sourceMappingURL=loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/codegraph/loader.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAwB,QAAQ,EAAa,MAAM,gBAAgB,CAAA;AAsD/E;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CA4DzE"}
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.loadRawGraph = loadRawGraph;
37
+ /**
38
+ * @ai-agent general-expert
39
+ * @ai-agent-hint If you are not the general-expert specialist, consider switching to a specialized agent in Copilot Chat. Run `npx aidoc-kit agents` to generate agent instruction files.
40
+ * @ai-runtime UNIVERSEL
41
+ *
42
+ * @ai-context
43
+ * [GENERATED] This file exports: loadRawGraph
44
+ * Imported by: src/cli.ts
45
+ *
46
+ * @ai-when-modifying
47
+ * 1. Check cascade files below before modifying
48
+ * 2. After modifying, ask the developer to run @ai-validate
49
+ * 3. If you have no terminal access, report the command to run
50
+ *
51
+ * @ai-cascade
52
+ * - src/cli.ts
53
+ *
54
+ * @ai-validate
55
+ * npm run typecheck
56
+ */
57
+ const node_fs_1 = require("node:fs");
58
+ const runner_1 = require("./runner");
59
+ /**
60
+ * Open the CodeGraph SQLite index with Node's built-in driver.
61
+ * node:sqlite ships with Node >= 22.5 — the same requirement CodeGraph
62
+ * itself has, so this adds no constraint beyond the indexing engine's own.
63
+ * Zero npm runtime dependency is preserved.
64
+ */
65
+ async function openDatabase(dbPath) {
66
+ let sqlite;
67
+ try {
68
+ sqlite = await Promise.resolve().then(() => __importStar(require('node:sqlite')));
69
+ }
70
+ catch {
71
+ throw new Error(`Reading the CodeGraph index requires Node.js >= 22.5 (built-in node:sqlite). ` +
72
+ `Current version: ${process.version}.`);
73
+ }
74
+ return new sqlite.DatabaseSync(dbPath, { readOnly: true });
75
+ }
76
+ /**
77
+ * CodeGraph's SQLite schema is internal to that project, not a public
78
+ * contract. Verify the tables we read still exist and fail with an
79
+ * actionable message instead of a cryptic SQL error if the schema moved.
80
+ */
81
+ function assertSchema(db, dbPath) {
82
+ const rows = db
83
+ .prepare(`SELECT name FROM sqlite_master WHERE type = 'table'`)
84
+ .all();
85
+ const tables = new Set(rows.map(r => r.name));
86
+ const required = ['files', 'nodes', 'edges'];
87
+ const missing = required.filter(t => !tables.has(t));
88
+ if (missing.length > 0) {
89
+ throw new Error(`Unexpected CodeGraph schema in ${dbPath} (missing table(s): ${missing.join(', ')}). ` +
90
+ `The installed CodeGraph version may be newer than what aidoc-kit supports — ` +
91
+ `please open an issue at https://github.com/Clemsrec/aidoc-kit/issues.`);
92
+ }
93
+ }
94
+ function readMetadata(db, key) {
95
+ try {
96
+ const row = db
97
+ .prepare(`SELECT value FROM project_metadata WHERE key = ?`)
98
+ .get(key);
99
+ return row?.value ?? null;
100
+ }
101
+ catch {
102
+ return null;
103
+ }
104
+ }
105
+ /**
106
+ * Load the raw knowledge graph produced by `codegraph index`.
107
+ * Symbol-level edges are aggregated to file level: the enrichment layer
108
+ * reasons about files, and the full symbol detail stays queryable in the
109
+ * CodeGraph database itself.
110
+ */
111
+ async function loadRawGraph(projectRoot) {
112
+ const dbPath = (0, runner_1.codegraphDbPath)(projectRoot);
113
+ if (!(0, node_fs_1.existsSync)(dbPath)) {
114
+ throw new Error(`No CodeGraph index found at ${dbPath}. Run \`npx aidoc-kit index\` first.`);
115
+ }
116
+ const db = await openDatabase(dbPath);
117
+ try {
118
+ assertSchema(db, dbPath);
119
+ const files = db
120
+ .prepare(`SELECT path, language, node_count FROM files ORDER BY path`)
121
+ .all()
122
+ .map(r => ({ path: r.path, language: r.language, symbolCount: r.node_count }));
123
+ // `import` nodes are re-export bookkeeping, not declarations — skip them
124
+ const symbols = db
125
+ .prepare(`SELECT id, kind, name, qualified_name, file_path, start_line, end_line, is_exported
126
+ FROM nodes
127
+ WHERE kind NOT IN ('import', 'file')
128
+ ORDER BY file_path, start_line`)
129
+ .all()
130
+ .map(r => ({
131
+ id: r.id,
132
+ kind: r.kind,
133
+ name: r.name,
134
+ qualifiedName: r.qualified_name,
135
+ file: r.file_path,
136
+ startLine: r.start_line,
137
+ endLine: r.end_line,
138
+ exported: r.is_exported === 1,
139
+ }));
140
+ const fileEdges = db
141
+ .prepare(`SELECT s.file_path AS from_file, t.file_path AS to_file, e.kind AS kind, COUNT(*) AS count
142
+ FROM edges e
143
+ JOIN nodes s ON s.id = e.source
144
+ JOIN nodes t ON t.id = e.target
145
+ WHERE s.file_path != t.file_path
146
+ GROUP BY s.file_path, t.file_path, e.kind
147
+ ORDER BY from_file, to_file, kind`)
148
+ .all()
149
+ .map(r => ({ from: r.from_file, to: r.to_file, kind: r.kind, count: r.count }));
150
+ return {
151
+ files,
152
+ symbols,
153
+ fileEdges,
154
+ codegraphVersion: readMetadata(db, 'indexed_with_version'),
155
+ };
156
+ }
157
+ finally {
158
+ db.close();
159
+ }
160
+ }
161
+ //# sourceMappingURL=loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/codegraph/loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /** Location of the CodeGraph SQLite index inside a project. */
2
+ export declare function codegraphDbPath(projectRoot: string): string;
3
+ export interface RunIndexOptions {
4
+ /** Map to `codegraph sync` (changes since last index) instead of a full rebuild */
5
+ incremental: boolean;
6
+ }
7
+ /**
8
+ * Run CodeGraph indexing on the target project and verify the index exists.
9
+ *
10
+ * First run: `codegraph init --yes` (initializes .codegraph/ and builds the
11
+ * initial index). Subsequent runs: `codegraph index` (full rebuild) or
12
+ * `codegraph sync` when incremental.
13
+ *
14
+ * The binary is spawned directly (no shell) with inherited stdio so
15
+ * CodeGraph's own progress output stays visible.
16
+ */
17
+ export declare function runCodegraphIndex(projectRoot: string, binPath: string, opts: RunIndexOptions): void;
18
+ //# sourceMappingURL=runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/codegraph/runner.ts"],"names":[],"mappings":"AAyBA,+DAA+D;AAC/D,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,MAAM,WAAW,eAAe;IAC9B,mFAAmF;IACnF,WAAW,EAAE,OAAO,CAAA;CACrB;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,eAAe,GACpB,IAAI,CAoBN"}