@ai-coders/context 0.1.0 → 0.2.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 (133) hide show
  1. package/dist/generators/agents/agentConfig.d.ts +4 -0
  2. package/dist/generators/agents/agentConfig.d.ts.map +1 -0
  3. package/dist/generators/agents/agentConfig.js +138 -0
  4. package/dist/generators/agents/agentConfig.js.map +1 -0
  5. package/dist/generators/agents/agentGenerator.d.ts +13 -0
  6. package/dist/generators/agents/agentGenerator.d.ts.map +1 -0
  7. package/dist/generators/agents/agentGenerator.js +80 -0
  8. package/dist/generators/agents/agentGenerator.js.map +1 -0
  9. package/dist/generators/agents/agentTypes.d.ts +4 -0
  10. package/dist/generators/agents/agentTypes.d.ts.map +1 -0
  11. package/dist/generators/agents/agentTypes.js +22 -0
  12. package/dist/generators/agents/agentTypes.js.map +1 -0
  13. package/dist/generators/agents/contextUtils.d.ts +8 -0
  14. package/dist/generators/agents/contextUtils.d.ts.map +1 -0
  15. package/dist/generators/agents/contextUtils.js +15 -0
  16. package/dist/generators/agents/contextUtils.js.map +1 -0
  17. package/dist/generators/agents/index.d.ts +6 -0
  18. package/dist/generators/agents/index.d.ts.map +1 -0
  19. package/dist/generators/agents/index.js +16 -0
  20. package/dist/generators/agents/index.js.map +1 -0
  21. package/dist/generators/agents/promptFormatter.d.ts +9 -0
  22. package/dist/generators/agents/promptFormatter.d.ts.map +1 -0
  23. package/dist/generators/agents/promptFormatter.js +84 -0
  24. package/dist/generators/agents/promptFormatter.js.map +1 -0
  25. package/dist/generators/analyzers/codebaseAnalyzer.d.ts +45 -0
  26. package/dist/generators/analyzers/codebaseAnalyzer.d.ts.map +1 -0
  27. package/dist/generators/analyzers/codebaseAnalyzer.js +293 -0
  28. package/dist/generators/analyzers/codebaseAnalyzer.js.map +1 -0
  29. package/dist/generators/analyzers/index.d.ts +3 -0
  30. package/dist/generators/analyzers/index.d.ts.map +1 -0
  31. package/dist/generators/analyzers/index.js +6 -0
  32. package/dist/generators/analyzers/index.js.map +1 -0
  33. package/dist/generators/documentation/documentationGenerator.d.ts +19 -0
  34. package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -0
  35. package/dist/generators/documentation/documentationGenerator.js +127 -0
  36. package/dist/generators/documentation/documentationGenerator.js.map +1 -0
  37. package/dist/generators/documentation/documentationTemplates.d.ts +21 -0
  38. package/dist/generators/documentation/documentationTemplates.d.ts.map +1 -0
  39. package/dist/generators/documentation/documentationTemplates.js +359 -0
  40. package/dist/generators/documentation/documentationTemplates.js.map +1 -0
  41. package/dist/generators/documentation/documentationTypes.d.ts +11 -0
  42. package/dist/generators/documentation/documentationTypes.d.ts.map +1 -0
  43. package/dist/generators/documentation/documentationTypes.js +22 -0
  44. package/dist/generators/documentation/documentationTypes.js.map +1 -0
  45. package/dist/generators/documentation/documentationUtils.d.ts +7 -0
  46. package/dist/generators/documentation/documentationUtils.d.ts.map +1 -0
  47. package/dist/generators/documentation/documentationUtils.js +28 -0
  48. package/dist/generators/documentation/documentationUtils.js.map +1 -0
  49. package/dist/generators/documentation/enhancedDocumentationGenerator.d.ts +21 -0
  50. package/dist/generators/documentation/enhancedDocumentationGenerator.d.ts.map +1 -0
  51. package/dist/generators/documentation/enhancedDocumentationGenerator.js +216 -0
  52. package/dist/generators/documentation/enhancedDocumentationGenerator.js.map +1 -0
  53. package/dist/generators/documentation/incrementalDocumentationGenerator.d.ts +33 -0
  54. package/dist/generators/documentation/incrementalDocumentationGenerator.d.ts.map +1 -0
  55. package/dist/generators/documentation/incrementalDocumentationGenerator.js +400 -0
  56. package/dist/generators/documentation/incrementalDocumentationGenerator.js.map +1 -0
  57. package/dist/generators/documentation/index.d.ts +8 -0
  58. package/dist/generators/documentation/index.d.ts.map +1 -0
  59. package/dist/generators/documentation/index.js +22 -0
  60. package/dist/generators/documentation/index.js.map +1 -0
  61. package/dist/generators/documentation/newDocumentationTemplates.d.ts +19 -0
  62. package/dist/generators/documentation/newDocumentationTemplates.d.ts.map +1 -0
  63. package/dist/generators/documentation/newDocumentationTemplates.js +307 -0
  64. package/dist/generators/documentation/newDocumentationTemplates.js.map +1 -0
  65. package/dist/generators/documentationGenerator.d.ts +3 -21
  66. package/dist/generators/documentationGenerator.d.ts.map +1 -1
  67. package/dist/generators/documentationGenerator.js +46 -597
  68. package/dist/generators/documentationGenerator.js.map +1 -1
  69. package/dist/generators/documentationTemplates.d.ts +16 -0
  70. package/dist/generators/documentationTemplates.d.ts.map +1 -0
  71. package/dist/generators/documentationTemplates.js +326 -0
  72. package/dist/generators/documentationTemplates.js.map +1 -0
  73. package/dist/generators/documentationUtils.d.ts +7 -0
  74. package/dist/generators/documentationUtils.d.ts.map +1 -0
  75. package/dist/generators/documentationUtils.js +38 -0
  76. package/dist/generators/documentationUtils.js.map +1 -0
  77. package/dist/generators/guidelines/agentIntegration.d.ts +43 -0
  78. package/dist/generators/guidelines/agentIntegration.d.ts.map +1 -0
  79. package/dist/generators/guidelines/agentIntegration.js +157 -0
  80. package/dist/generators/guidelines/agentIntegration.js.map +1 -0
  81. package/dist/generators/guidelines/guidelineTypes.d.ts +40 -0
  82. package/dist/generators/guidelines/guidelineTypes.d.ts.map +1 -0
  83. package/dist/generators/guidelines/guidelineTypes.js +144 -0
  84. package/dist/generators/guidelines/guidelineTypes.js.map +1 -0
  85. package/dist/generators/guidelines/guidelinesAnalyzer.d.ts +30 -0
  86. package/dist/generators/guidelines/guidelinesAnalyzer.d.ts.map +1 -0
  87. package/dist/generators/guidelines/guidelinesAnalyzer.js +263 -0
  88. package/dist/generators/guidelines/guidelinesAnalyzer.js.map +1 -0
  89. package/dist/generators/guidelines/guidelinesGenerator.d.ts +30 -0
  90. package/dist/generators/guidelines/guidelinesGenerator.d.ts.map +1 -0
  91. package/dist/generators/guidelines/guidelinesGenerator.js +249 -0
  92. package/dist/generators/guidelines/guidelinesGenerator.js.map +1 -0
  93. package/dist/generators/guidelines/guidelinesTemplates.d.ts +23 -0
  94. package/dist/generators/guidelines/guidelinesTemplates.d.ts.map +1 -0
  95. package/dist/generators/guidelines/guidelinesTemplates.js +304 -0
  96. package/dist/generators/guidelines/guidelinesTemplates.js.map +1 -0
  97. package/dist/generators/guidelines/index.d.ts +6 -0
  98. package/dist/generators/guidelines/index.d.ts.map +1 -0
  99. package/dist/generators/guidelines/index.js +16 -0
  100. package/dist/generators/guidelines/index.js.map +1 -0
  101. package/dist/generators/moduleGrouper.d.ts +14 -0
  102. package/dist/generators/moduleGrouper.d.ts.map +1 -0
  103. package/dist/generators/moduleGrouper.js +82 -0
  104. package/dist/generators/moduleGrouper.js.map +1 -0
  105. package/dist/generators/projectAnalyzer.d.ts +14 -0
  106. package/dist/generators/projectAnalyzer.d.ts.map +1 -0
  107. package/dist/generators/projectAnalyzer.js +217 -0
  108. package/dist/generators/projectAnalyzer.js.map +1 -0
  109. package/dist/generators/shared/contextGenerator.d.ts +12 -0
  110. package/dist/generators/shared/contextGenerator.d.ts.map +1 -0
  111. package/dist/generators/shared/contextGenerator.js +109 -0
  112. package/dist/generators/shared/contextGenerator.js.map +1 -0
  113. package/dist/generators/shared/generatorUtils.d.ts +16 -0
  114. package/dist/generators/shared/generatorUtils.d.ts.map +1 -0
  115. package/dist/generators/shared/generatorUtils.js +119 -0
  116. package/dist/generators/shared/generatorUtils.js.map +1 -0
  117. package/dist/generators/shared/index.d.ts +3 -0
  118. package/dist/generators/shared/index.d.ts.map +1 -0
  119. package/dist/generators/shared/index.js +8 -0
  120. package/dist/generators/shared/index.js.map +1 -0
  121. package/dist/index.d.ts +1 -0
  122. package/dist/index.d.ts.map +1 -1
  123. package/dist/index.js +230 -13
  124. package/dist/index.js.map +1 -1
  125. package/dist/utils/interactiveMode.d.ts +6 -1
  126. package/dist/utils/interactiveMode.d.ts.map +1 -1
  127. package/dist/utils/interactiveMode.js +375 -70
  128. package/dist/utils/interactiveMode.js.map +1 -1
  129. package/dist/utils/tokenEstimator.d.ts +10 -9
  130. package/dist/utils/tokenEstimator.d.ts.map +1 -1
  131. package/dist/utils/tokenEstimator.js +45 -109
  132. package/dist/utils/tokenEstimator.js.map +1 -1
  133. package/package.json +1 -1
@@ -0,0 +1,293 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CodebaseAnalyzer = void 0;
4
+ class CodebaseAnalyzer {
5
+ constructor(fileMapper) {
6
+ this.fileMapper = fileMapper;
7
+ }
8
+ async analyzeArchitecturalPatterns(repoStructure, moduleGroups) {
9
+ const patterns = [];
10
+ // Analyze directory structure for common patterns
11
+ const directories = this.getDirectoryStructure(repoStructure);
12
+ // Check for MVC pattern
13
+ if (this.hasMVCStructure(directories)) {
14
+ patterns.push({
15
+ name: 'Model-View-Controller (MVC)',
16
+ description: 'Separation of concerns into models, views, and controllers',
17
+ evidence: this.getMVCEvidence(directories),
18
+ confidence: 0.8
19
+ });
20
+ }
21
+ // Check for layered architecture
22
+ if (this.hasLayeredArchitecture(directories)) {
23
+ patterns.push({
24
+ name: 'Layered Architecture',
25
+ description: 'Organized into distinct layers (services, controllers, models, etc.)',
26
+ evidence: this.getLayeredEvidence(directories),
27
+ confidence: 0.7
28
+ });
29
+ }
30
+ // Check for modular architecture
31
+ if (this.hasModularStructure(moduleGroups)) {
32
+ patterns.push({
33
+ name: 'Modular Architecture',
34
+ description: 'Code organized into distinct, cohesive modules',
35
+ evidence: this.getModularEvidence(moduleGroups),
36
+ confidence: 0.9
37
+ });
38
+ }
39
+ // Check for microservices indicators
40
+ if (this.hasMicroservicesIndicators(repoStructure)) {
41
+ patterns.push({
42
+ name: 'Microservices Architecture',
43
+ description: 'Multiple independent services with clear boundaries',
44
+ evidence: this.getMicroservicesEvidence(repoStructure),
45
+ confidence: 0.6
46
+ });
47
+ }
48
+ return patterns;
49
+ }
50
+ async analyzeCodePatterns(repoStructure) {
51
+ const patterns = [];
52
+ const sampleFiles = repoStructure.files.slice(0, 20); // Analyze sample for patterns
53
+ for (const file of sampleFiles) {
54
+ try {
55
+ const content = await this.fileMapper.readFileContent(file.path);
56
+ // Look for common patterns
57
+ patterns.push(...this.detectDesignPatterns(content, file));
58
+ patterns.push(...this.detectNamingPatterns(content, file));
59
+ patterns.push(...this.detectErrorHandlingPatterns(content, file));
60
+ }
61
+ catch (error) {
62
+ // Skip files that can't be read
63
+ }
64
+ }
65
+ return this.consolidatePatterns(patterns);
66
+ }
67
+ analyzeDependencyFlow(repoStructure, moduleGroups) {
68
+ const flows = [];
69
+ // Analyze module-to-module dependencies
70
+ for (const module of moduleGroups) {
71
+ for (const otherModule of moduleGroups) {
72
+ if (module.name !== otherModule.name) {
73
+ const strength = this.calculateDependencyStrength(module, otherModule);
74
+ if (strength > 0) {
75
+ flows.push({
76
+ from: module.name,
77
+ to: otherModule.name,
78
+ type: 'import',
79
+ strength
80
+ });
81
+ }
82
+ }
83
+ }
84
+ }
85
+ return flows.sort((a, b) => b.strength - a.strength);
86
+ }
87
+ identifyExtensionPoints(repoStructure) {
88
+ const extensionPoints = [];
89
+ const directories = this.getDirectoryStructure(repoStructure);
90
+ // Common extension point patterns
91
+ if (directories.includes('plugins')) {
92
+ extensionPoints.push('Plugin system in /plugins directory');
93
+ }
94
+ if (directories.includes('extensions')) {
95
+ extensionPoints.push('Extension system in /extensions directory');
96
+ }
97
+ if (directories.includes('hooks')) {
98
+ extensionPoints.push('Hook system in /hooks directory');
99
+ }
100
+ if (directories.includes('middleware')) {
101
+ extensionPoints.push('Middleware system in /middleware directory');
102
+ }
103
+ if (directories.includes('generators')) {
104
+ extensionPoints.push('Generator system in /generators directory');
105
+ }
106
+ // Look for interface/abstract patterns
107
+ const interfaceFiles = repoStructure.files.filter(f => f.relativePath.includes('interface') ||
108
+ f.relativePath.includes('abstract') ||
109
+ f.relativePath.includes('base'));
110
+ if (interfaceFiles.length > 0) {
111
+ extensionPoints.push(`Interface-based extension points: ${interfaceFiles.slice(0, 3).map(f => f.relativePath).join(', ')}`);
112
+ }
113
+ return extensionPoints;
114
+ }
115
+ getDirectoryStructure(repoStructure) {
116
+ return [...new Set(repoStructure.files
117
+ .map(f => f.relativePath.split('/')[0])
118
+ .filter(dir => !dir.includes('.')))];
119
+ }
120
+ hasMVCStructure(directories) {
121
+ const mvcPatterns = ['models', 'views', 'controllers'];
122
+ return mvcPatterns.filter(pattern => directories.some(dir => dir.toLowerCase().includes(pattern))).length >= 2;
123
+ }
124
+ getMVCEvidence(directories) {
125
+ const evidence = [];
126
+ if (directories.some(d => d.toLowerCase().includes('model'))) {
127
+ evidence.push('Models directory found');
128
+ }
129
+ if (directories.some(d => d.toLowerCase().includes('view'))) {
130
+ evidence.push('Views directory found');
131
+ }
132
+ if (directories.some(d => d.toLowerCase().includes('controller'))) {
133
+ evidence.push('Controllers directory found');
134
+ }
135
+ return evidence;
136
+ }
137
+ hasLayeredArchitecture(directories) {
138
+ const layers = ['services', 'controllers', 'models', 'repositories', 'utils'];
139
+ return layers.filter(layer => directories.some(dir => dir.toLowerCase().includes(layer))).length >= 3;
140
+ }
141
+ getLayeredEvidence(directories) {
142
+ const layers = ['services', 'controllers', 'models', 'repositories', 'utils', 'middleware'];
143
+ return layers
144
+ .filter(layer => directories.some(dir => dir.toLowerCase().includes(layer)))
145
+ .map(layer => `${layer.charAt(0).toUpperCase() + layer.slice(1)} layer found`);
146
+ }
147
+ hasModularStructure(moduleGroups) {
148
+ return moduleGroups.length > 2 &&
149
+ moduleGroups.every(m => m.files.length > 1) &&
150
+ moduleGroups.some(m => m.files.length > 3);
151
+ }
152
+ getModularEvidence(moduleGroups) {
153
+ return [
154
+ `${moduleGroups.length} distinct modules identified`,
155
+ `Average module size: ${Math.round(moduleGroups.reduce((sum, m) => sum + m.files.length, 0) / moduleGroups.length)} files`,
156
+ `Largest module: ${moduleGroups.reduce((max, m) => m.files.length > max.files.length ? m : max).name}`
157
+ ];
158
+ }
159
+ hasMicroservicesIndicators(repoStructure) {
160
+ const indicators = [
161
+ repoStructure.files.some(f => f.relativePath.includes('docker')),
162
+ repoStructure.files.some(f => f.relativePath.includes('k8s') || f.relativePath.includes('kubernetes')),
163
+ repoStructure.files.some(f => f.relativePath.includes('service')),
164
+ repoStructure.files.some(f => f.relativePath.includes('api'))
165
+ ];
166
+ return indicators.filter(Boolean).length >= 2;
167
+ }
168
+ getMicroservicesEvidence(repoStructure) {
169
+ const evidence = [];
170
+ if (repoStructure.files.some(f => f.relativePath.includes('docker'))) {
171
+ evidence.push('Docker configuration found');
172
+ }
173
+ if (repoStructure.files.some(f => f.relativePath.includes('k8s'))) {
174
+ evidence.push('Kubernetes configuration found');
175
+ }
176
+ if (repoStructure.files.some(f => f.relativePath.includes('service'))) {
177
+ evidence.push('Service-oriented file structure');
178
+ }
179
+ return evidence;
180
+ }
181
+ detectDesignPatterns(content, file) {
182
+ const patterns = [];
183
+ // Factory pattern
184
+ if (content.includes('createFactory') || content.includes('Factory') || content.match(/create\w+/g)) {
185
+ patterns.push({
186
+ type: 'Design Pattern',
187
+ pattern: 'Factory Pattern',
188
+ description: 'Object creation through factory methods',
189
+ examples: [file.relativePath],
190
+ frequency: 1
191
+ });
192
+ }
193
+ // Observer pattern
194
+ if (content.includes('addEventListener') || content.includes('subscribe') || content.includes('emit')) {
195
+ patterns.push({
196
+ type: 'Design Pattern',
197
+ pattern: 'Observer Pattern',
198
+ description: 'Event-driven communication between objects',
199
+ examples: [file.relativePath],
200
+ frequency: 1
201
+ });
202
+ }
203
+ // Singleton pattern
204
+ if (content.includes('getInstance') || content.match(/private\s+constructor/)) {
205
+ patterns.push({
206
+ type: 'Design Pattern',
207
+ pattern: 'Singleton Pattern',
208
+ description: 'Single instance object creation',
209
+ examples: [file.relativePath],
210
+ frequency: 1
211
+ });
212
+ }
213
+ return patterns;
214
+ }
215
+ detectNamingPatterns(content, file) {
216
+ const patterns = [];
217
+ // Check for naming conventions
218
+ if (content.match(/\bI[A-Z]\w+/g)) {
219
+ patterns.push({
220
+ type: 'Naming Convention',
221
+ pattern: 'Interface Prefix',
222
+ description: 'Interfaces prefixed with "I"',
223
+ examples: [file.relativePath],
224
+ frequency: 1
225
+ });
226
+ }
227
+ if (content.match(/\b\w+Service\b/g)) {
228
+ patterns.push({
229
+ type: 'Naming Convention',
230
+ pattern: 'Service Suffix',
231
+ description: 'Services suffixed with "Service"',
232
+ examples: [file.relativePath],
233
+ frequency: 1
234
+ });
235
+ }
236
+ return patterns;
237
+ }
238
+ detectErrorHandlingPatterns(content, file) {
239
+ const patterns = [];
240
+ if (content.includes('try') && content.includes('catch')) {
241
+ patterns.push({
242
+ type: 'Error Handling',
243
+ pattern: 'Try-Catch Blocks',
244
+ description: 'Structured error handling with try-catch',
245
+ examples: [file.relativePath],
246
+ frequency: 1
247
+ });
248
+ }
249
+ if (content.includes('throw new') || content.includes('throw Error')) {
250
+ patterns.push({
251
+ type: 'Error Handling',
252
+ pattern: 'Custom Exceptions',
253
+ description: 'Custom error throwing patterns',
254
+ examples: [file.relativePath],
255
+ frequency: 1
256
+ });
257
+ }
258
+ return patterns;
259
+ }
260
+ consolidatePatterns(patterns) {
261
+ const consolidated = new Map();
262
+ for (const pattern of patterns) {
263
+ const key = `${pattern.type}:${pattern.pattern}`;
264
+ if (consolidated.has(key)) {
265
+ const existing = consolidated.get(key);
266
+ existing.frequency += pattern.frequency;
267
+ existing.examples.push(...pattern.examples);
268
+ }
269
+ else {
270
+ consolidated.set(key, { ...pattern });
271
+ }
272
+ }
273
+ return Array.from(consolidated.values())
274
+ .sort((a, b) => b.frequency - a.frequency)
275
+ .slice(0, 10); // Top 10 patterns
276
+ }
277
+ calculateDependencyStrength(moduleA, moduleB) {
278
+ // Simple heuristic: check if moduleA files reference moduleB
279
+ let strength = 0;
280
+ // Check for direct path references
281
+ for (const fileA of moduleA.files) {
282
+ for (const fileB of moduleB.files) {
283
+ const bPath = fileB.relativePath.replace(/\.[^/.]+$/, ''); // Remove extension
284
+ if (fileA.relativePath.includes(bPath) || bPath.includes(fileA.relativePath.replace(/\.[^/.]+$/, ''))) {
285
+ strength += 0.1;
286
+ }
287
+ }
288
+ }
289
+ return Math.min(strength, 1.0); // Cap at 1.0
290
+ }
291
+ }
292
+ exports.CodebaseAnalyzer = CodebaseAnalyzer;
293
+ //# sourceMappingURL=codebaseAnalyzer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codebaseAnalyzer.js","sourceRoot":"","sources":["../../../src/generators/analyzers/codebaseAnalyzer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { CodebaseAnalyzer } from './codebaseAnalyzer';
2
+ export type { ArchitecturalPattern, CodePattern, DependencyFlow } from './codebaseAnalyzer';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generators/analyzers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EACV,oBAAoB,EACpB,WAAW,EACX,cAAc,EACf,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CodebaseAnalyzer = void 0;
4
+ var codebaseAnalyzer_1 = require("./codebaseAnalyzer");
5
+ Object.defineProperty(exports, "CodebaseAnalyzer", { enumerable: true, get: function () { return codebaseAnalyzer_1.CodebaseAnalyzer; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generators/analyzers/index.ts"],"names":[],"mappings":";;;AAAA,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA"}
@@ -0,0 +1,19 @@
1
+ import { RepoStructure } from '../../types';
2
+ import { FileMapper } from '../../utils/fileMapper';
3
+ import { BaseLLMClient } from '../../services/baseLLMClient';
4
+ import { DocumentationConfig } from './documentationTypes';
5
+ export declare class DocumentationGenerator {
6
+ private fileMapper;
7
+ private llmClient;
8
+ private moduleGrouper;
9
+ private templates;
10
+ constructor(fileMapper: FileMapper, llmClient: BaseLLMClient);
11
+ generateDocumentation(repoStructure: RepoStructure, outputDir: string, config?: Partial<DocumentationConfig>, verbose?: boolean): Promise<void>;
12
+ private generateAllDocumentation;
13
+ private generateMainIndex;
14
+ generateMentalModelOnly(repoStructure: RepoStructure, outputDir: string, verbose?: boolean): Promise<void>;
15
+ generateAIGuidelinesOnly(repoStructure: RepoStructure, outputDir: string, verbose?: boolean): Promise<void>;
16
+ generateArchitectureDecisionsOnly(repoStructure: RepoStructure, outputDir: string, verbose?: boolean): Promise<void>;
17
+ generateSoftwareGuidelinesOnly(repoStructure: RepoStructure, outputDir: string, verbose?: boolean): Promise<void>;
18
+ }
19
+ //# sourceMappingURL=documentationGenerator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentationGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/documentation/documentationGenerator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAI7D,OAAO,EAAE,mBAAmB,EAAgD,MAAM,sBAAsB,CAAC;AAEzG,qBAAa,sBAAsB;IAK/B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,SAAS;IALnB,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,SAAS,CAAyB;gBAGhC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa;IAM5B,qBAAqB,CACzB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,OAAO,CAAC,mBAAmB,CAAM,EACzC,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,IAAI,CAAC;YAkBF,wBAAwB;YAsCxB,iBAAiB;IAWzB,uBAAuB,CAC3B,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,IAAI,CAAC;IAWV,wBAAwB,CAC5B,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,IAAI,CAAC;IAWV,iCAAiC,CACrC,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,IAAI,CAAC;IAWV,8BAA8B,CAClC,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,IAAI,CAAC;CAUjB"}
@@ -0,0 +1,127 @@
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.DocumentationGenerator = void 0;
37
+ const path = __importStar(require("path"));
38
+ const moduleGrouper_1 = require("../moduleGrouper");
39
+ const shared_1 = require("../shared");
40
+ const documentationTemplates_1 = require("./documentationTemplates");
41
+ const documentationTypes_1 = require("./documentationTypes");
42
+ class DocumentationGenerator {
43
+ constructor(fileMapper, llmClient) {
44
+ this.fileMapper = fileMapper;
45
+ this.llmClient = llmClient;
46
+ this.moduleGrouper = new moduleGrouper_1.ModuleGrouper(fileMapper);
47
+ this.templates = new documentationTemplates_1.DocumentationTemplates(llmClient, fileMapper);
48
+ }
49
+ async generateDocumentation(repoStructure, outputDir, config = {}, verbose = false) {
50
+ const fullConfig = {
51
+ focusAreas: [],
52
+ maxContentLength: 2000,
53
+ includeExamples: true,
54
+ enabledTypes: documentationTypes_1.DOCUMENTATION_TYPES_ARRAY,
55
+ ...config
56
+ };
57
+ const docsDir = path.join(outputDir, 'docs');
58
+ await shared_1.GeneratorUtils.ensureDirectoryAndLog(docsDir, verbose, '📚 Generating documentation in');
59
+ const moduleGroups = this.moduleGrouper.getModuleGroups(repoStructure);
60
+ await this.generateAllDocumentation(repoStructure, moduleGroups, docsDir, fullConfig.enabledTypes || documentationTypes_1.DOCUMENTATION_TYPES_ARRAY, verbose);
61
+ await this.generateMainIndex(docsDir, fullConfig.enabledTypes || documentationTypes_1.DOCUMENTATION_TYPES_ARRAY, verbose);
62
+ }
63
+ async generateAllDocumentation(repoStructure, moduleGroups, docsDir, enabledTypes, verbose) {
64
+ shared_1.GeneratorUtils.logProgress('🧠 Generating high-level conceptual documentation...', verbose);
65
+ const generators = {
66
+ 'mental-model': () => this.templates.createMentalModel(repoStructure, moduleGroups),
67
+ 'architecture-decisions': () => this.templates.createArchitectureDecisions(repoStructure, moduleGroups),
68
+ 'code-organization': () => this.templates.createCodeOrganization(repoStructure, moduleGroups),
69
+ 'development-patterns': () => this.templates.createDevelopmentPatterns(repoStructure, moduleGroups),
70
+ 'ai-guidelines': () => this.templates.createAIGuidelines(repoStructure, moduleGroups),
71
+ 'contributing-workflows': () => this.templates.createContributingWorkflows(repoStructure, moduleGroups),
72
+ 'domain-context': () => this.templates.createDomainContext(repoStructure, moduleGroups),
73
+ 'software-guidelines': () => this.templates.createSoftwareGuidelines(repoStructure, moduleGroups)
74
+ };
75
+ for (const docType of enabledTypes) {
76
+ try {
77
+ const content = await generators[docType]();
78
+ const fileName = `${docType}.md`;
79
+ const filePath = path.join(docsDir, fileName);
80
+ await shared_1.GeneratorUtils.writeFileWithLogging(filePath, content, verbose, `Generated ${shared_1.GeneratorUtils.formatTitle(docType)}`);
81
+ }
82
+ catch (error) {
83
+ shared_1.GeneratorUtils.logError(`Error generating ${docType}`, error, verbose);
84
+ }
85
+ }
86
+ }
87
+ async generateMainIndex(docsDir, enabledTypes, verbose) {
88
+ const indexContent = this.templates.createDocumentationIndex(enabledTypes);
89
+ const indexPath = path.join(docsDir, 'README.md');
90
+ await shared_1.GeneratorUtils.writeFileWithLogging(indexPath, indexContent, verbose, 'Generated documentation index');
91
+ }
92
+ // Convenience methods for specific documentation types
93
+ async generateMentalModelOnly(repoStructure, outputDir, verbose = false) {
94
+ const docsDir = path.join(outputDir, 'docs');
95
+ await shared_1.GeneratorUtils.ensureDirectoryAndLog(docsDir, verbose, '🧠 Generating mental model documentation');
96
+ const moduleGroups = this.moduleGrouper.getModuleGroups(repoStructure);
97
+ const content = await this.templates.createMentalModel(repoStructure, moduleGroups);
98
+ const filePath = path.join(docsDir, 'mental-model.md');
99
+ await shared_1.GeneratorUtils.writeFileWithLogging(filePath, content, verbose, 'Generated Mental Model');
100
+ }
101
+ async generateAIGuidelinesOnly(repoStructure, outputDir, verbose = false) {
102
+ const docsDir = path.join(outputDir, 'docs');
103
+ await shared_1.GeneratorUtils.ensureDirectoryAndLog(docsDir, verbose, '🤖 Generating AI guidelines documentation');
104
+ const moduleGroups = this.moduleGrouper.getModuleGroups(repoStructure);
105
+ const content = await this.templates.createAIGuidelines(repoStructure, moduleGroups);
106
+ const filePath = path.join(docsDir, 'ai-guidelines.md');
107
+ await shared_1.GeneratorUtils.writeFileWithLogging(filePath, content, verbose, 'Generated AI Guidelines');
108
+ }
109
+ async generateArchitectureDecisionsOnly(repoStructure, outputDir, verbose = false) {
110
+ const docsDir = path.join(outputDir, 'docs');
111
+ await shared_1.GeneratorUtils.ensureDirectoryAndLog(docsDir, verbose, '🏗️ Generating architecture decisions documentation');
112
+ const moduleGroups = this.moduleGrouper.getModuleGroups(repoStructure);
113
+ const content = await this.templates.createArchitectureDecisions(repoStructure, moduleGroups);
114
+ const filePath = path.join(docsDir, 'architecture-decisions.md');
115
+ await shared_1.GeneratorUtils.writeFileWithLogging(filePath, content, verbose, 'Generated Architecture Decisions');
116
+ }
117
+ async generateSoftwareGuidelinesOnly(repoStructure, outputDir, verbose = false) {
118
+ const docsDir = path.join(outputDir, 'docs');
119
+ await shared_1.GeneratorUtils.ensureDirectoryAndLog(docsDir, verbose, '📋 Generating software development guidelines');
120
+ const moduleGroups = this.moduleGrouper.getModuleGroups(repoStructure);
121
+ const content = await this.templates.createSoftwareGuidelines(repoStructure, moduleGroups);
122
+ const filePath = path.join(docsDir, 'software-guidelines.md');
123
+ await shared_1.GeneratorUtils.writeFileWithLogging(filePath, content, verbose, 'Generated Software Development Guidelines');
124
+ }
125
+ }
126
+ exports.DocumentationGenerator = DocumentationGenerator;
127
+ //# sourceMappingURL=documentationGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentationGenerator.js","sourceRoot":"","sources":["../../../src/generators/documentation/documentationGenerator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { RepoStructure } from '../../types';
2
+ import { BaseLLMClient } from '../../services/baseLLMClient';
3
+ import { ModuleGroup } from '../moduleGrouper';
4
+ import { DocumentationType } from './documentationTypes';
5
+ export declare class DocumentationTemplates {
6
+ private llmClient;
7
+ private analyzer;
8
+ private guidelinesGenerator;
9
+ constructor(llmClient: BaseLLMClient, fileMapper?: any);
10
+ createMentalModel(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
11
+ createArchitectureDecisions(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
12
+ createCodeOrganization(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
13
+ createDevelopmentPatterns(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
14
+ createAIGuidelines(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
15
+ createContributingWorkflows(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
16
+ createDomainContext(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
17
+ createSoftwareGuidelines(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
18
+ createDocumentationIndex(enabledTypes: DocumentationType[]): string;
19
+ private buildRepoContext;
20
+ }
21
+ //# sourceMappingURL=documentationTemplates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentationTemplates.d.ts","sourceRoot":"","sources":["../../../src/generators/documentation/documentationTemplates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIzD,qBAAa,sBAAsB;IAIrB,OAAO,CAAC,SAAS;IAH7B,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,mBAAmB,CAAsB;gBAE7B,SAAS,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,GAAG;IAKxD,iBAAiB,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA0B7F,2BAA2B,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAgDvG,sBAAsB,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAgDlG,yBAAyB,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA4CrG,kBAAkB,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA8B9F,2BAA2B,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA+BvG,mBAAmB,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA8B/F,wBAAwB,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAmD1G,wBAAwB,CAAC,YAAY,EAAE,iBAAiB,EAAE,GAAG,MAAM;IAiEnE,OAAO,CAAC,gBAAgB;CA2BzB"}