codevault 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 (156) hide show
  1. package/.env.example +37 -0
  2. package/LICENSE +21 -0
  3. package/README.md +174 -0
  4. package/dist/chunking/file-grouper.d.ts +39 -0
  5. package/dist/chunking/file-grouper.d.ts.map +1 -0
  6. package/dist/chunking/file-grouper.js +181 -0
  7. package/dist/chunking/file-grouper.js.map +1 -0
  8. package/dist/chunking/semantic-chunker.d.ts +37 -0
  9. package/dist/chunking/semantic-chunker.d.ts.map +1 -0
  10. package/dist/chunking/semantic-chunker.js +172 -0
  11. package/dist/chunking/semantic-chunker.js.map +1 -0
  12. package/dist/chunking/token-counter.d.ts +28 -0
  13. package/dist/chunking/token-counter.d.ts.map +1 -0
  14. package/dist/chunking/token-counter.js +207 -0
  15. package/dist/chunking/token-counter.js.map +1 -0
  16. package/dist/cli/commands/context.d.ts +3 -0
  17. package/dist/cli/commands/context.d.ts.map +1 -0
  18. package/dist/cli/commands/context.js +98 -0
  19. package/dist/cli/commands/context.js.map +1 -0
  20. package/dist/cli.d.ts +3 -0
  21. package/dist/cli.d.ts.map +1 -0
  22. package/dist/cli.js +222 -0
  23. package/dist/cli.js.map +1 -0
  24. package/dist/codemap/io.d.ts +5 -0
  25. package/dist/codemap/io.d.ts.map +1 -0
  26. package/dist/codemap/io.js +30 -0
  27. package/dist/codemap/io.js.map +1 -0
  28. package/dist/context/packs.d.ts +33 -0
  29. package/dist/context/packs.d.ts.map +1 -0
  30. package/dist/context/packs.js +180 -0
  31. package/dist/context/packs.js.map +1 -0
  32. package/dist/core/indexer.d.ts +3 -0
  33. package/dist/core/indexer.d.ts.map +1 -0
  34. package/dist/core/indexer.js +610 -0
  35. package/dist/core/indexer.js.map +1 -0
  36. package/dist/core/metadata.d.ts +19 -0
  37. package/dist/core/metadata.d.ts.map +1 -0
  38. package/dist/core/metadata.js +161 -0
  39. package/dist/core/metadata.js.map +1 -0
  40. package/dist/core/search.d.ts +6 -0
  41. package/dist/core/search.d.ts.map +1 -0
  42. package/dist/core/search.js +482 -0
  43. package/dist/core/search.js.map +1 -0
  44. package/dist/core/symbol-extractor.d.ts +3 -0
  45. package/dist/core/symbol-extractor.d.ts.map +1 -0
  46. package/dist/core/symbol-extractor.js +78 -0
  47. package/dist/core/symbol-extractor.js.map +1 -0
  48. package/dist/core/types.d.ts +96 -0
  49. package/dist/core/types.d.ts.map +1 -0
  50. package/dist/core/types.js +2 -0
  51. package/dist/core/types.js.map +1 -0
  52. package/dist/database/db.d.ts +63 -0
  53. package/dist/database/db.d.ts.map +1 -0
  54. package/dist/database/db.js +205 -0
  55. package/dist/database/db.js.map +1 -0
  56. package/dist/indexer/merkle.d.ts +13 -0
  57. package/dist/indexer/merkle.d.ts.map +1 -0
  58. package/dist/indexer/merkle.js +86 -0
  59. package/dist/indexer/merkle.js.map +1 -0
  60. package/dist/indexer/update.d.ts +19 -0
  61. package/dist/indexer/update.d.ts.map +1 -0
  62. package/dist/indexer/update.js +40 -0
  63. package/dist/indexer/update.js.map +1 -0
  64. package/dist/indexer/watch.d.ts +21 -0
  65. package/dist/indexer/watch.d.ts.map +1 -0
  66. package/dist/indexer/watch.js +204 -0
  67. package/dist/indexer/watch.js.map +1 -0
  68. package/dist/languages/rules.d.ts +11 -0
  69. package/dist/languages/rules.d.ts.map +1 -0
  70. package/dist/languages/rules.js +371 -0
  71. package/dist/languages/rules.js.map +1 -0
  72. package/dist/languages/tree-sitter-loader.d.ts +27 -0
  73. package/dist/languages/tree-sitter-loader.d.ts.map +1 -0
  74. package/dist/languages/tree-sitter-loader.js +75 -0
  75. package/dist/languages/tree-sitter-loader.js.map +1 -0
  76. package/dist/mcp/tools/use-context-pack.d.ts +57 -0
  77. package/dist/mcp/tools/use-context-pack.d.ts.map +1 -0
  78. package/dist/mcp/tools/use-context-pack.js +91 -0
  79. package/dist/mcp/tools/use-context-pack.js.map +1 -0
  80. package/dist/mcp-server.d.ts +3 -0
  81. package/dist/mcp-server.d.ts.map +1 -0
  82. package/dist/mcp-server.js +363 -0
  83. package/dist/mcp-server.js.map +1 -0
  84. package/dist/providers/base.d.ts +34 -0
  85. package/dist/providers/base.d.ts.map +1 -0
  86. package/dist/providers/base.js +160 -0
  87. package/dist/providers/base.js.map +1 -0
  88. package/dist/providers/index.d.ts +6 -0
  89. package/dist/providers/index.d.ts.map +1 -0
  90. package/dist/providers/index.js +22 -0
  91. package/dist/providers/index.js.map +1 -0
  92. package/dist/providers/ollama.d.ts +13 -0
  93. package/dist/providers/ollama.d.ts.map +1 -0
  94. package/dist/providers/ollama.js +50 -0
  95. package/dist/providers/ollama.js.map +1 -0
  96. package/dist/providers/openai.d.ts +13 -0
  97. package/dist/providers/openai.d.ts.map +1 -0
  98. package/dist/providers/openai.js +59 -0
  99. package/dist/providers/openai.js.map +1 -0
  100. package/dist/providers/token-counter.d.ts +2 -0
  101. package/dist/providers/token-counter.d.ts.map +1 -0
  102. package/dist/providers/token-counter.js +18 -0
  103. package/dist/providers/token-counter.js.map +1 -0
  104. package/dist/ranking/api-reranker.d.ts +18 -0
  105. package/dist/ranking/api-reranker.d.ts.map +1 -0
  106. package/dist/ranking/api-reranker.js +148 -0
  107. package/dist/ranking/api-reranker.js.map +1 -0
  108. package/dist/ranking/symbol-boost.d.ts +15 -0
  109. package/dist/ranking/symbol-boost.d.ts.map +1 -0
  110. package/dist/ranking/symbol-boost.js +154 -0
  111. package/dist/ranking/symbol-boost.js.map +1 -0
  112. package/dist/search/bm25.d.ts +17 -0
  113. package/dist/search/bm25.d.ts.map +1 -0
  114. package/dist/search/bm25.js +56 -0
  115. package/dist/search/bm25.js.map +1 -0
  116. package/dist/search/hybrid.d.ts +21 -0
  117. package/dist/search/hybrid.d.ts.map +1 -0
  118. package/dist/search/hybrid.js +50 -0
  119. package/dist/search/hybrid.js.map +1 -0
  120. package/dist/search/scope.d.ts +5 -0
  121. package/dist/search/scope.d.ts.map +1 -0
  122. package/dist/search/scope.js +107 -0
  123. package/dist/search/scope.js.map +1 -0
  124. package/dist/storage/encrypted-chunks.d.ts +40 -0
  125. package/dist/storage/encrypted-chunks.d.ts.map +1 -0
  126. package/dist/storage/encrypted-chunks.js +236 -0
  127. package/dist/storage/encrypted-chunks.js.map +1 -0
  128. package/dist/symbols/extract.d.ts +15 -0
  129. package/dist/symbols/extract.d.ts.map +1 -0
  130. package/dist/symbols/extract.js +187 -0
  131. package/dist/symbols/extract.js.map +1 -0
  132. package/dist/symbols/graph.d.ts +3 -0
  133. package/dist/symbols/graph.d.ts.map +1 -0
  134. package/dist/symbols/graph.js +89 -0
  135. package/dist/symbols/graph.js.map +1 -0
  136. package/dist/types/ast.d.ts +3 -0
  137. package/dist/types/ast.d.ts.map +1 -0
  138. package/dist/types/ast.js +2 -0
  139. package/dist/types/ast.js.map +1 -0
  140. package/dist/types/codemap.d.ts +58 -0
  141. package/dist/types/codemap.d.ts.map +1 -0
  142. package/dist/types/codemap.js +224 -0
  143. package/dist/types/codemap.js.map +1 -0
  144. package/dist/types/context-pack.d.ts +47 -0
  145. package/dist/types/context-pack.d.ts.map +1 -0
  146. package/dist/types/context-pack.js +44 -0
  147. package/dist/types/context-pack.js.map +1 -0
  148. package/dist/types/search.d.ts +15 -0
  149. package/dist/types/search.d.ts.map +1 -0
  150. package/dist/types/search.js +11 -0
  151. package/dist/types/search.js.map +1 -0
  152. package/dist/utils/rate-limiter.d.ts +31 -0
  153. package/dist/utils/rate-limiter.d.ts.map +1 -0
  154. package/dist/utils/rate-limiter.js +168 -0
  155. package/dist/utils/rate-limiter.js.map +1 -0
  156. package/package.json +92 -0
@@ -0,0 +1,30 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import { normalizeCodemapRecord } from '../types/codemap.js';
4
+ export function resolveCodemapPath(basePath = '.') {
5
+ return path.resolve(basePath, 'codevault.codemap.json');
6
+ }
7
+ export function readCodemap(filePath) {
8
+ const resolvedPath = filePath ? path.resolve(filePath) : resolveCodemapPath('.');
9
+ if (!fs.existsSync(resolvedPath)) {
10
+ return {};
11
+ }
12
+ try {
13
+ const raw = fs.readFileSync(resolvedPath, 'utf8');
14
+ const parsed = JSON.parse(raw);
15
+ return normalizeCodemapRecord(parsed);
16
+ }
17
+ catch (error) {
18
+ console.warn(`Failed to read codemap at ${resolvedPath}:`, error.message);
19
+ return {};
20
+ }
21
+ }
22
+ export function writeCodemap(filePath, codemap) {
23
+ const resolvedPath = filePath ? path.resolve(filePath) : resolveCodemapPath('.');
24
+ const normalized = normalizeCodemapRecord(codemap || {});
25
+ const directory = path.dirname(resolvedPath);
26
+ fs.mkdirSync(directory, { recursive: true });
27
+ fs.writeFileSync(resolvedPath, JSON.stringify(normalized, null, 2));
28
+ return normalized;
29
+ }
30
+ //# sourceMappingURL=io.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"io.js","sourceRoot":"","sources":["../../src/codemap/io.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAgB,MAAM,qBAAqB,CAAC;AAE3E,MAAM,UAAU,kBAAkB,CAAC,QAAQ,GAAG,GAAG;IAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAAiB;IAC3C,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAEjF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,OAAO,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,6BAA6B,YAAY,GAAG,EAAG,KAAe,CAAC,OAAO,CAAC,CAAC;QACrF,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,QAA4B,EAAE,OAAgB;IACzE,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACjF,MAAM,UAAU,GAAG,sBAAsB,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAEzD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC7C,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACpE,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -0,0 +1,33 @@
1
+ import type { ScopeFilters } from '../types/search.js';
2
+ interface PackInfo {
3
+ key: string;
4
+ name: string;
5
+ description: string | null;
6
+ scope: Record<string, any>;
7
+ path: string;
8
+ invalid?: boolean;
9
+ }
10
+ interface SessionPack extends PackInfo {
11
+ basePath: string;
12
+ }
13
+ export declare function getContextPackDirectory(basePath?: string): string;
14
+ export declare function loadContextPack(name: string, basePath?: string): PackInfo;
15
+ export declare function listContextPacks(basePath?: string): PackInfo[];
16
+ export declare function getActiveContextPack(basePath?: string): (PackInfo & {
17
+ appliedAt: string | null;
18
+ }) | null;
19
+ export declare function setActiveContextPack(name: string, basePath?: string): PackInfo;
20
+ export declare function resolveScopeWithPack(overrides?: any, options?: {
21
+ basePath?: string;
22
+ sessionPack?: SessionPack | null;
23
+ }): {
24
+ scope: ScopeFilters;
25
+ pack: {
26
+ key: string;
27
+ name: string;
28
+ description: string | null;
29
+ } | null;
30
+ };
31
+ export declare function clearContextPackCache(): void;
32
+ export {};
33
+ //# sourceMappingURL=packs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packs.d.ts","sourceRoot":"","sources":["../../src/context/packs.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMvD,UAAU,QAAQ;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,WAAY,SAAQ,QAAQ;IACpC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAgED,wBAAgB,uBAAuB,CAAC,QAAQ,SAAM,GAAG,MAAM,CAE9D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAM,GAAG,QAAQ,CA0BtE;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,SAAM,GAAG,QAAQ,EAAE,CA2B3D;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,SAAM,GAAG,CAAC,QAAQ,GAAG;IAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,GAAG,IAAI,CAyBrG;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAM,GAAG,QAAQ,CAW3E;AAED,wBAAgB,oBAAoB,CAClC,SAAS,GAAE,GAAQ,EACnB,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;CAAO,GACpE;IAAE,KAAK,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAA;CAAE,CAuCjG;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
@@ -0,0 +1,180 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import { ContextPackSchema, extractScopeFromPackDefinition } from '../types/context-pack.js';
4
+ import { normalizeScopeFilters } from '../search/scope.js';
5
+ const CONTEXT_PACK_DIR = '.codevault/contextpacks';
6
+ const ACTIVE_STATE_FILENAME = 'active-pack.json';
7
+ const PACK_SCOPE_KEYS = ['path_glob', 'tags', 'lang', 'provider', 'reranker', 'hybrid', 'bm25', 'symbol_boost'];
8
+ const packCache = new Map();
9
+ function resolveBasePath(basePath = '.') {
10
+ return path.resolve(basePath || '.');
11
+ }
12
+ function getPackDir(basePath = '.') {
13
+ return path.join(resolveBasePath(basePath), CONTEXT_PACK_DIR);
14
+ }
15
+ function getStatePath(basePath = '.') {
16
+ return path.join(getPackDir(basePath), ACTIVE_STATE_FILENAME);
17
+ }
18
+ function ensurePackDir(basePath = '.') {
19
+ const dir = getPackDir(basePath);
20
+ if (!fs.existsSync(dir)) {
21
+ fs.mkdirSync(dir, { recursive: true });
22
+ }
23
+ return dir;
24
+ }
25
+ function buildCacheKey(filePath) {
26
+ return path.resolve(filePath);
27
+ }
28
+ function readJsonFile(filePath) {
29
+ const content = fs.readFileSync(filePath, 'utf8');
30
+ try {
31
+ return JSON.parse(content);
32
+ }
33
+ catch (error) {
34
+ throw new Error(`Invalid JSON in context pack ${path.basename(filePath)}: ${error.message}`);
35
+ }
36
+ }
37
+ function toContextPackObject(key, filePath, data) {
38
+ const parsed = ContextPackSchema.parse(data);
39
+ const scope = extractScopeFromPackDefinition(parsed);
40
+ const packName = typeof parsed.name === 'string' && parsed.name.trim().length > 0
41
+ ? parsed.name.trim()
42
+ : key;
43
+ const description = typeof parsed.description === 'string' && parsed.description.trim().length > 0
44
+ ? parsed.description.trim()
45
+ : undefined;
46
+ const scopeDefinition = {};
47
+ for (const scopeKey of PACK_SCOPE_KEYS) {
48
+ if (Object.prototype.hasOwnProperty.call(scope, scopeKey) && typeof scope[scopeKey] !== 'undefined') {
49
+ scopeDefinition[scopeKey] = scope[scopeKey];
50
+ }
51
+ }
52
+ return {
53
+ key,
54
+ name: packName,
55
+ description: description || null,
56
+ scope: scopeDefinition,
57
+ path: filePath
58
+ };
59
+ }
60
+ export function getContextPackDirectory(basePath = '.') {
61
+ return getPackDir(basePath);
62
+ }
63
+ export function loadContextPack(name, basePath = '.') {
64
+ if (!name || typeof name !== 'string') {
65
+ throw new Error('Context pack name must be a non-empty string');
66
+ }
67
+ const packDir = getPackDir(basePath);
68
+ const fileName = `${name}.json`;
69
+ const filePath = path.join(packDir, fileName);
70
+ if (!fs.existsSync(filePath)) {
71
+ throw new Error(`Context pack "${name}" not found in ${packDir}`);
72
+ }
73
+ const stats = fs.statSync(filePath);
74
+ const cacheKey = buildCacheKey(filePath);
75
+ const cached = packCache.get(cacheKey);
76
+ if (cached && cached.mtimeMs === stats.mtimeMs) {
77
+ return cached.pack;
78
+ }
79
+ const rawData = readJsonFile(filePath);
80
+ const pack = toContextPackObject(name, filePath, rawData);
81
+ packCache.set(cacheKey, { pack, mtimeMs: stats.mtimeMs });
82
+ return pack;
83
+ }
84
+ export function listContextPacks(basePath = '.') {
85
+ const packDir = getPackDir(basePath);
86
+ if (!fs.existsSync(packDir)) {
87
+ return [];
88
+ }
89
+ const files = fs.readdirSync(packDir).filter(file => file.endsWith('.json'));
90
+ const packs = [];
91
+ for (const file of files) {
92
+ const key = path.basename(file, '.json');
93
+ try {
94
+ const pack = loadContextPack(key, basePath);
95
+ packs.push(pack);
96
+ }
97
+ catch (error) {
98
+ packs.push({
99
+ key,
100
+ name: key,
101
+ description: `Invalid pack: ${error.message}`,
102
+ scope: {},
103
+ path: path.join(packDir, file),
104
+ invalid: true
105
+ });
106
+ }
107
+ }
108
+ return packs;
109
+ }
110
+ export function getActiveContextPack(basePath = '.') {
111
+ const statePath = getStatePath(basePath);
112
+ if (!fs.existsSync(statePath)) {
113
+ return null;
114
+ }
115
+ try {
116
+ const rawState = readJsonFile(statePath);
117
+ if (!rawState || typeof rawState !== 'object') {
118
+ return null;
119
+ }
120
+ const key = typeof rawState.key === 'string' ? rawState.key : null;
121
+ if (!key) {
122
+ return null;
123
+ }
124
+ const pack = loadContextPack(key, basePath);
125
+ return {
126
+ ...pack,
127
+ appliedAt: rawState.appliedAt || null
128
+ };
129
+ }
130
+ catch (error) {
131
+ return null;
132
+ }
133
+ }
134
+ export function setActiveContextPack(name, basePath = '.') {
135
+ const pack = loadContextPack(name, basePath);
136
+ const dir = ensurePackDir(basePath);
137
+ const statePath = path.join(dir, ACTIVE_STATE_FILENAME);
138
+ const state = {
139
+ key: pack.key,
140
+ appliedAt: new Date().toISOString()
141
+ };
142
+ fs.writeFileSync(statePath, JSON.stringify(state, null, 2));
143
+ return pack;
144
+ }
145
+ export function resolveScopeWithPack(overrides = {}, options = {}) {
146
+ const basePath = options.basePath || '.';
147
+ const sessionPack = options.sessionPack || null;
148
+ let basePack = null;
149
+ const resolvedBasePath = resolveBasePath(basePath);
150
+ if (sessionPack && sessionPack.scope) {
151
+ if (!sessionPack.basePath || resolveBasePath(sessionPack.basePath) === resolvedBasePath) {
152
+ basePack = sessionPack;
153
+ }
154
+ }
155
+ if (!basePack) {
156
+ basePack = getActiveContextPack(basePath);
157
+ }
158
+ const combined = {};
159
+ if (basePack && basePack.scope) {
160
+ for (const key of PACK_SCOPE_KEYS) {
161
+ if (Object.prototype.hasOwnProperty.call(basePack.scope, key)) {
162
+ combined[key] = basePack.scope[key];
163
+ }
164
+ }
165
+ }
166
+ for (const key of PACK_SCOPE_KEYS) {
167
+ if (Object.prototype.hasOwnProperty.call(overrides, key) && typeof overrides[key] !== 'undefined') {
168
+ combined[key] = overrides[key];
169
+ }
170
+ }
171
+ const scope = normalizeScopeFilters(combined);
172
+ const packInfo = basePack
173
+ ? { key: basePack.key, name: basePack.name, description: basePack.description || null }
174
+ : null;
175
+ return { scope, pack: packInfo };
176
+ }
177
+ export function clearContextPackCache() {
178
+ packCache.clear();
179
+ }
180
+ //# sourceMappingURL=packs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packs.js","sourceRoot":"","sources":["../../src/context/packs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { IndexProjectOptions, IndexProjectResult } from './types.js';
2
+ export declare function indexProject({ repoPath, provider, onProgress, changedFiles, deletedFiles, embeddingProviderOverride, encryptMode }?: IndexProjectOptions): Promise<IndexProjectResult>;
3
+ //# sourceMappingURL=indexer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../../src/core/indexer.ts"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAiB,MAAM,YAAY,CAAC;AAIzF,wBAAsB,YAAY,CAAC,EACjC,QAAc,EACd,QAAiB,EACjB,UAAiB,EACjB,YAAmB,EACnB,YAAiB,EACjB,yBAAgC,EAChC,WAAuB,EACxB,GAAE,mBAAwB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA2tBxD"}