@ai-coders/context 0.1.0 → 0.3.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 (234) hide show
  1. package/README.md +113 -580
  2. package/dist/generators/agents/agentConfig.d.ts +4 -0
  3. package/dist/generators/agents/agentConfig.d.ts.map +1 -0
  4. package/dist/generators/agents/agentConfig.js +138 -0
  5. package/dist/generators/agents/agentConfig.js.map +1 -0
  6. package/dist/generators/agents/agentGenerator.d.ts +10 -0
  7. package/dist/generators/agents/agentGenerator.d.ts.map +1 -0
  8. package/dist/generators/agents/agentGenerator.js +137 -0
  9. package/dist/generators/agents/agentGenerator.js.map +1 -0
  10. package/dist/generators/agents/agentTypes.d.ts +4 -0
  11. package/dist/generators/agents/agentTypes.d.ts.map +1 -0
  12. package/dist/generators/agents/agentTypes.js +22 -0
  13. package/dist/generators/agents/agentTypes.js.map +1 -0
  14. package/dist/generators/agents/contextUtils.d.ts +8 -0
  15. package/dist/generators/agents/contextUtils.d.ts.map +1 -0
  16. package/dist/generators/agents/contextUtils.js +15 -0
  17. package/dist/generators/agents/contextUtils.js.map +1 -0
  18. package/dist/generators/agents/index.d.ts +4 -0
  19. package/dist/generators/agents/index.d.ts.map +1 -0
  20. package/dist/generators/agents/index.js +12 -0
  21. package/dist/generators/agents/index.js.map +1 -0
  22. package/dist/generators/agents/promptFormatter.d.ts +9 -0
  23. package/dist/generators/agents/promptFormatter.d.ts.map +1 -0
  24. package/dist/generators/agents/promptFormatter.js +84 -0
  25. package/dist/generators/agents/promptFormatter.js.map +1 -0
  26. package/dist/generators/agents/templates/index.d.ts +4 -0
  27. package/dist/generators/agents/templates/index.d.ts.map +1 -0
  28. package/dist/generators/agents/templates/index.js +8 -0
  29. package/dist/generators/agents/templates/index.js.map +1 -0
  30. package/dist/generators/agents/templates/indexTemplate.d.ts +3 -0
  31. package/dist/generators/agents/templates/indexTemplate.d.ts.map +1 -0
  32. package/dist/generators/agents/templates/indexTemplate.js +35 -0
  33. package/dist/generators/agents/templates/indexTemplate.js.map +1 -0
  34. package/dist/generators/agents/templates/playbookTemplate.d.ts +4 -0
  35. package/dist/generators/agents/templates/playbookTemplate.d.ts.map +1 -0
  36. package/dist/generators/agents/templates/playbookTemplate.js +63 -0
  37. package/dist/generators/agents/templates/playbookTemplate.js.map +1 -0
  38. package/dist/generators/agents/templates/types.d.ts +14 -0
  39. package/dist/generators/agents/templates/types.d.ts.map +1 -0
  40. package/dist/generators/agents/templates/types.js +3 -0
  41. package/dist/generators/agents/templates/types.js.map +1 -0
  42. package/dist/generators/analyzers/codebaseAnalyzer.d.ts +45 -0
  43. package/dist/generators/analyzers/codebaseAnalyzer.d.ts.map +1 -0
  44. package/dist/generators/analyzers/codebaseAnalyzer.js +293 -0
  45. package/dist/generators/analyzers/codebaseAnalyzer.js.map +1 -0
  46. package/dist/generators/analyzers/index.d.ts +3 -0
  47. package/dist/generators/analyzers/index.d.ts.map +1 -0
  48. package/dist/generators/analyzers/index.js +6 -0
  49. package/dist/generators/analyzers/index.js.map +1 -0
  50. package/dist/generators/documentation/documentationGenerator.d.ts +13 -0
  51. package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -0
  52. package/dist/generators/documentation/documentationGenerator.js +115 -0
  53. package/dist/generators/documentation/documentationGenerator.js.map +1 -0
  54. package/dist/generators/documentation/documentationTemplates.d.ts +21 -0
  55. package/dist/generators/documentation/documentationTemplates.d.ts.map +1 -0
  56. package/dist/generators/documentation/documentationTemplates.js +359 -0
  57. package/dist/generators/documentation/documentationTemplates.js.map +1 -0
  58. package/dist/generators/documentation/documentationTypes.d.ts +11 -0
  59. package/dist/generators/documentation/documentationTypes.d.ts.map +1 -0
  60. package/dist/generators/documentation/documentationTypes.js +22 -0
  61. package/dist/generators/documentation/documentationTypes.js.map +1 -0
  62. package/dist/generators/documentation/documentationUtils.d.ts +7 -0
  63. package/dist/generators/documentation/documentationUtils.d.ts.map +1 -0
  64. package/dist/generators/documentation/documentationUtils.js +28 -0
  65. package/dist/generators/documentation/documentationUtils.js.map +1 -0
  66. package/dist/generators/documentation/guideRegistry.d.ts +6 -0
  67. package/dist/generators/documentation/guideRegistry.d.ts.map +1 -0
  68. package/dist/generators/documentation/guideRegistry.js +82 -0
  69. package/dist/generators/documentation/guideRegistry.js.map +1 -0
  70. package/dist/generators/{incrementalDocumentationGenerator.d.ts → documentation/incrementalDocumentationGenerator.d.ts} +4 -4
  71. package/dist/generators/documentation/incrementalDocumentationGenerator.d.ts.map +1 -0
  72. package/dist/generators/documentation/incrementalDocumentationGenerator.js.map +1 -0
  73. package/dist/generators/documentation/index.d.ts +2 -0
  74. package/dist/generators/documentation/index.d.ts.map +1 -0
  75. package/dist/generators/documentation/index.js +6 -0
  76. package/dist/generators/documentation/index.js.map +1 -0
  77. package/dist/generators/documentation/templates/architectureTemplate.d.ts +3 -0
  78. package/dist/generators/documentation/templates/architectureTemplate.d.ts.map +1 -0
  79. package/dist/generators/documentation/templates/architectureTemplate.js +66 -0
  80. package/dist/generators/documentation/templates/architectureTemplate.js.map +1 -0
  81. package/dist/generators/documentation/templates/common.d.ts +7 -0
  82. package/dist/generators/documentation/templates/common.d.ts.map +1 -0
  83. package/dist/generators/documentation/templates/common.js +58 -0
  84. package/dist/generators/documentation/templates/common.js.map +1 -0
  85. package/dist/generators/documentation/templates/dataFlowTemplate.d.ts +3 -0
  86. package/dist/generators/documentation/templates/dataFlowTemplate.d.ts.map +1 -0
  87. package/dist/generators/documentation/templates/dataFlowTemplate.js +55 -0
  88. package/dist/generators/documentation/templates/dataFlowTemplate.js.map +1 -0
  89. package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts +2 -0
  90. package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts.map +1 -0
  91. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js +59 -0
  92. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js.map +1 -0
  93. package/dist/generators/documentation/templates/frontMatter.d.ts +11 -0
  94. package/dist/generators/documentation/templates/frontMatter.d.ts.map +1 -0
  95. package/dist/generators/documentation/templates/frontMatter.js +29 -0
  96. package/dist/generators/documentation/templates/frontMatter.js.map +1 -0
  97. package/dist/generators/documentation/templates/glossaryTemplate.d.ts +3 -0
  98. package/dist/generators/documentation/templates/glossaryTemplate.d.ts.map +1 -0
  99. package/dist/generators/documentation/templates/glossaryTemplate.js +55 -0
  100. package/dist/generators/documentation/templates/glossaryTemplate.js.map +1 -0
  101. package/dist/generators/documentation/templates/index.d.ts +11 -0
  102. package/dist/generators/documentation/templates/index.d.ts.map +1 -0
  103. package/dist/generators/documentation/templates/index.js +22 -0
  104. package/dist/generators/documentation/templates/index.js.map +1 -0
  105. package/dist/generators/documentation/templates/indexTemplate.d.ts +3 -0
  106. package/dist/generators/documentation/templates/indexTemplate.d.ts.map +1 -0
  107. package/dist/generators/documentation/templates/indexTemplate.js +56 -0
  108. package/dist/generators/documentation/templates/indexTemplate.js.map +1 -0
  109. package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts +3 -0
  110. package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts.map +1 -0
  111. package/dist/generators/documentation/templates/projectOverviewTemplate.js +68 -0
  112. package/dist/generators/documentation/templates/projectOverviewTemplate.js.map +1 -0
  113. package/dist/generators/documentation/templates/securityTemplate.d.ts +2 -0
  114. package/dist/generators/documentation/templates/securityTemplate.d.ts.map +1 -0
  115. package/dist/generators/documentation/templates/securityTemplate.js +53 -0
  116. package/dist/generators/documentation/templates/securityTemplate.js.map +1 -0
  117. package/dist/generators/documentation/templates/testingTemplate.d.ts +2 -0
  118. package/dist/generators/documentation/templates/testingTemplate.d.ts.map +1 -0
  119. package/dist/generators/documentation/templates/testingTemplate.js +59 -0
  120. package/dist/generators/documentation/templates/testingTemplate.js.map +1 -0
  121. package/dist/generators/documentation/templates/toolingTemplate.d.ts +2 -0
  122. package/dist/generators/documentation/templates/toolingTemplate.d.ts.map +1 -0
  123. package/dist/generators/documentation/templates/toolingTemplate.js +56 -0
  124. package/dist/generators/documentation/templates/toolingTemplate.js.map +1 -0
  125. package/dist/generators/documentation/templates/types.d.ts +23 -0
  126. package/dist/generators/documentation/templates/types.d.ts.map +1 -0
  127. package/dist/generators/documentation/templates/types.js +3 -0
  128. package/dist/generators/documentation/templates/types.js.map +1 -0
  129. package/dist/generators/documentation/templates.d.ts +31 -0
  130. package/dist/generators/documentation/templates.d.ts.map +1 -0
  131. package/dist/generators/documentation/templates.js +566 -0
  132. package/dist/generators/documentation/templates.js.map +1 -0
  133. package/dist/generators/guidelines/agentIntegration.d.ts +43 -0
  134. package/dist/generators/guidelines/agentIntegration.d.ts.map +1 -0
  135. package/dist/generators/guidelines/agentIntegration.js +157 -0
  136. package/dist/generators/guidelines/agentIntegration.js.map +1 -0
  137. package/dist/generators/guidelines/guidelineTypes.d.ts +40 -0
  138. package/dist/generators/guidelines/guidelineTypes.d.ts.map +1 -0
  139. package/dist/generators/guidelines/guidelineTypes.js +144 -0
  140. package/dist/generators/guidelines/guidelineTypes.js.map +1 -0
  141. package/dist/generators/guidelines/guidelinesAnalyzer.d.ts +30 -0
  142. package/dist/generators/guidelines/guidelinesAnalyzer.d.ts.map +1 -0
  143. package/dist/generators/guidelines/guidelinesAnalyzer.js +263 -0
  144. package/dist/generators/guidelines/guidelinesAnalyzer.js.map +1 -0
  145. package/dist/generators/guidelines/guidelinesGenerator.d.ts +30 -0
  146. package/dist/generators/guidelines/guidelinesGenerator.d.ts.map +1 -0
  147. package/dist/generators/guidelines/guidelinesGenerator.js +249 -0
  148. package/dist/generators/guidelines/guidelinesGenerator.js.map +1 -0
  149. package/dist/generators/guidelines/guidelinesTemplates.d.ts +23 -0
  150. package/dist/generators/guidelines/guidelinesTemplates.d.ts.map +1 -0
  151. package/dist/generators/guidelines/guidelinesTemplates.js +304 -0
  152. package/dist/generators/guidelines/guidelinesTemplates.js.map +1 -0
  153. package/dist/generators/guidelines/index.d.ts +6 -0
  154. package/dist/generators/guidelines/index.d.ts.map +1 -0
  155. package/dist/generators/guidelines/index.js +16 -0
  156. package/dist/generators/guidelines/index.js.map +1 -0
  157. package/dist/generators/moduleGrouper.d.ts +14 -0
  158. package/dist/generators/moduleGrouper.d.ts.map +1 -0
  159. package/dist/generators/moduleGrouper.js +82 -0
  160. package/dist/generators/moduleGrouper.js.map +1 -0
  161. package/dist/generators/plans/index.d.ts +2 -0
  162. package/dist/generators/plans/index.d.ts.map +1 -0
  163. package/dist/generators/plans/index.js +6 -0
  164. package/dist/generators/plans/index.js.map +1 -0
  165. package/dist/generators/plans/planGenerator.d.ts +22 -0
  166. package/dist/generators/plans/planGenerator.d.ts.map +1 -0
  167. package/dist/generators/plans/planGenerator.js +109 -0
  168. package/dist/generators/plans/planGenerator.js.map +1 -0
  169. package/dist/generators/plans/templates/indexTemplate.d.ts +3 -0
  170. package/dist/generators/plans/templates/indexTemplate.d.ts.map +1 -0
  171. package/dist/generators/plans/templates/indexTemplate.js +36 -0
  172. package/dist/generators/plans/templates/indexTemplate.js.map +1 -0
  173. package/dist/generators/plans/templates/planTemplate.d.ts +3 -0
  174. package/dist/generators/plans/templates/planTemplate.d.ts.map +1 -0
  175. package/dist/generators/plans/templates/planTemplate.js +83 -0
  176. package/dist/generators/plans/templates/planTemplate.js.map +1 -0
  177. package/dist/generators/plans/templates/types.d.ts +19 -0
  178. package/dist/generators/plans/templates/types.d.ts.map +1 -0
  179. package/dist/generators/plans/templates/types.js +3 -0
  180. package/dist/generators/plans/templates/types.js.map +1 -0
  181. package/dist/generators/projectAnalyzer.d.ts +14 -0
  182. package/dist/generators/projectAnalyzer.d.ts.map +1 -0
  183. package/dist/generators/projectAnalyzer.js +217 -0
  184. package/dist/generators/projectAnalyzer.js.map +1 -0
  185. package/dist/generators/shared/contextGenerator.d.ts +7 -0
  186. package/dist/generators/shared/contextGenerator.d.ts.map +1 -0
  187. package/dist/generators/shared/contextGenerator.js +13 -0
  188. package/dist/generators/shared/contextGenerator.js.map +1 -0
  189. package/dist/generators/shared/directoryTemplateHelpers.d.ts +2 -0
  190. package/dist/generators/shared/directoryTemplateHelpers.d.ts.map +1 -0
  191. package/dist/generators/shared/directoryTemplateHelpers.js +12 -0
  192. package/dist/generators/shared/directoryTemplateHelpers.js.map +1 -0
  193. package/dist/generators/shared/generatorUtils.d.ts +16 -0
  194. package/dist/generators/shared/generatorUtils.d.ts.map +1 -0
  195. package/dist/generators/shared/generatorUtils.js +119 -0
  196. package/dist/generators/shared/generatorUtils.js.map +1 -0
  197. package/dist/generators/shared/index.d.ts +4 -0
  198. package/dist/generators/shared/index.d.ts.map +1 -0
  199. package/dist/generators/shared/index.js +10 -0
  200. package/dist/generators/shared/index.js.map +1 -0
  201. package/dist/index.d.ts +6 -3
  202. package/dist/index.d.ts.map +1 -1
  203. package/dist/index.js +1327 -419
  204. package/dist/index.js.map +1 -1
  205. package/dist/utils/cliUI.d.ts +6 -4
  206. package/dist/utils/cliUI.d.ts.map +1 -1
  207. package/dist/utils/cliUI.js +71 -56
  208. package/dist/utils/cliUI.js.map +1 -1
  209. package/dist/utils/i18n.d.ts +181 -0
  210. package/dist/utils/i18n.d.ts.map +1 -0
  211. package/dist/utils/i18n.js +401 -0
  212. package/dist/utils/i18n.js.map +1 -0
  213. package/dist/utils/interactiveMode.d.ts +6 -1
  214. package/dist/utils/interactiveMode.d.ts.map +1 -1
  215. package/dist/utils/interactiveMode.js +375 -70
  216. package/dist/utils/interactiveMode.js.map +1 -1
  217. package/dist/utils/tokenEstimator.d.ts +10 -9
  218. package/dist/utils/tokenEstimator.d.ts.map +1 -1
  219. package/dist/utils/tokenEstimator.js +45 -109
  220. package/dist/utils/tokenEstimator.js.map +1 -1
  221. package/package.json +26 -23
  222. package/prompts/update_plan_prompt.md +42 -0
  223. package/prompts/update_scaffold_prompt.md +48 -0
  224. package/dist/generators/agentGenerator.d.ts +0 -23
  225. package/dist/generators/agentGenerator.d.ts.map +0 -1
  226. package/dist/generators/agentGenerator.js +0 -357
  227. package/dist/generators/agentGenerator.js.map +0 -1
  228. package/dist/generators/documentationGenerator.d.ts +0 -40
  229. package/dist/generators/documentationGenerator.d.ts.map +0 -1
  230. package/dist/generators/documentationGenerator.js +0 -786
  231. package/dist/generators/documentationGenerator.js.map +0 -1
  232. package/dist/generators/incrementalDocumentationGenerator.d.ts.map +0 -1
  233. package/dist/generators/incrementalDocumentationGenerator.js.map +0 -1
  234. /package/dist/generators/{incrementalDocumentationGenerator.js → documentation/incrementalDocumentationGenerator.js} +0 -0
@@ -0,0 +1,359 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DocumentationTemplates = void 0;
4
+ const shared_1 = require("../shared");
5
+ const codebaseAnalyzer_1 = require("../analyzers/codebaseAnalyzer");
6
+ const guidelinesGenerator_1 = require("../guidelines/guidelinesGenerator");
7
+ class DocumentationTemplates {
8
+ constructor(llmClient, fileMapper) {
9
+ this.llmClient = llmClient;
10
+ this.analyzer = new codebaseAnalyzer_1.CodebaseAnalyzer(fileMapper);
11
+ this.guidelinesGenerator = new guidelinesGenerator_1.GuidelinesGenerator(fileMapper, llmClient);
12
+ }
13
+ async createMentalModel(repoStructure, moduleGroups) {
14
+ const context = this.buildRepoContext(repoStructure, moduleGroups);
15
+ const content = await this.llmClient.generateText(`Create a "Mental Model" document that helps developers and AI agents understand this codebase conceptually.
16
+
17
+ Include:
18
+ 1. **Core Metaphor**: A real-world analogy that explains what this system does
19
+ 2. **Key Abstractions**: The main concepts and how they relate (3-5 core abstractions max)
20
+ 3. **Data Flow**: How information moves through the system
21
+ 4. **Boundary Definitions**: What this codebase does vs what it doesn't do
22
+ 5. **Success Metrics**: How to measure if the system is working well
23
+
24
+ Focus on "how to think about this codebase" rather than implementation details.
25
+ Use clear, concrete language and avoid jargon.
26
+ Keep it under 1500 words.`, context);
27
+ return `# Codebase Mental Model
28
+
29
+ ${content}
30
+
31
+ ${shared_1.GeneratorUtils.createGeneratedByFooter('Mental Model Documentation')}`;
32
+ }
33
+ async createArchitectureDecisions(repoStructure, moduleGroups) {
34
+ const context = this.buildRepoContext(repoStructure, moduleGroups);
35
+ // Enhance context with architectural analysis
36
+ let enhancedContext = context;
37
+ if (this.analyzer) {
38
+ try {
39
+ const architecturalPatterns = await this.analyzer.analyzeArchitecturalPatterns(repoStructure, moduleGroups);
40
+ const dependencyFlow = this.analyzer.analyzeDependencyFlow(repoStructure, moduleGroups);
41
+ enhancedContext += `\n\nArchitectural Patterns Detected:
42
+ ${architecturalPatterns.map(p => `- ${p.name}: ${p.description} (confidence: ${p.confidence})`).join('\n')}
43
+
44
+ Dependency Flow Analysis:
45
+ ${dependencyFlow.slice(0, 5).map(d => `- ${d.from} → ${d.to} (strength: ${d.strength.toFixed(2)})`).join('\n')}`;
46
+ }
47
+ catch (error) {
48
+ // Continue without enhanced analysis if it fails
49
+ }
50
+ }
51
+ const content = await this.llmClient.generateText(`Create an "Architecture Decisions" document that explains the key design choices in this codebase.
52
+
53
+ For each major decision, include:
54
+ 1. **Context**: What problem was being solved?
55
+ 2. **Decision**: What approach was chosen?
56
+ 3. **Rationale**: Why this approach over alternatives?
57
+ 4. **Consequences**: What are the trade-offs?
58
+
59
+ Focus on decisions that would help new developers or AI agents understand:
60
+ - Technology choices (languages, frameworks, libraries)
61
+ - Architectural patterns (how modules interact)
62
+ - Design constraints (what limitations shaped decisions)
63
+ - Code organization principles
64
+
65
+ Use the detected architectural patterns and dependency analysis to inform your decisions.
66
+ Limit to 5-7 most important decisions.
67
+ Keep explanations concise but complete.`, enhancedContext);
68
+ return `# Architecture Decision Records
69
+
70
+ ${content}
71
+
72
+ ${shared_1.GeneratorUtils.createGeneratedByFooter('Architecture Decisions Documentation')}`;
73
+ }
74
+ async createCodeOrganization(repoStructure, moduleGroups) {
75
+ const context = this.buildRepoContext(repoStructure, moduleGroups);
76
+ // Enhance with extension point analysis
77
+ let enhancedContext = context;
78
+ if (this.analyzer) {
79
+ try {
80
+ const extensionPoints = this.analyzer.identifyExtensionPoints(repoStructure);
81
+ const dependencyFlow = this.analyzer.analyzeDependencyFlow(repoStructure, moduleGroups);
82
+ enhancedContext += `\n\nExtension Points Identified:
83
+ ${extensionPoints.map(ep => `- ${ep}`).join('\n')}
84
+
85
+ Module Dependencies:
86
+ ${dependencyFlow.slice(0, 8).map(d => `- ${d.from} depends on ${d.to}`).join('\n')}`;
87
+ }
88
+ catch (error) {
89
+ // Continue without enhanced analysis if it fails
90
+ }
91
+ }
92
+ const content = await this.llmClient.generateText(`Create a "Code Organization Guide" that explains the logic behind this codebase's structure.
93
+
94
+ Include:
95
+ 1. **Directory Structure Logic**: Why directories are organized this way
96
+ 2. **Module Boundaries**: What belongs in each module and why
97
+ 3. **Naming Conventions**: Patterns in file/folder/variable names
98
+ 4. **Dependency Flow**: How modules depend on each other
99
+ 5. **Extension Points**: Where/how to add new functionality
100
+
101
+ Make it practical - focus on helping someone understand:
102
+ - Where to find specific types of code
103
+ - Where to add new features
104
+ - How pieces fit together
105
+ - What patterns to follow
106
+
107
+ Use the identified extension points and dependency analysis to provide concrete guidance.
108
+ Avoid listing every file - focus on the organizing principles.`, enhancedContext);
109
+ return `# Code Organization Guide
110
+
111
+ ${content}
112
+
113
+ ${shared_1.GeneratorUtils.createGeneratedByFooter('Code Organization Documentation')}`;
114
+ }
115
+ async createDevelopmentPatterns(repoStructure, moduleGroups) {
116
+ const context = this.buildRepoContext(repoStructure, moduleGroups);
117
+ // Enhance with code pattern analysis
118
+ let enhancedContext = context;
119
+ if (this.analyzer) {
120
+ try {
121
+ const codePatterns = await this.analyzer.analyzeCodePatterns(repoStructure);
122
+ enhancedContext += `\n\nCode Patterns Detected:
123
+ ${codePatterns.slice(0, 10).map(p => `- ${p.pattern} (${p.type}): ${p.description} - used ${p.frequency} times`).join('\n')}`;
124
+ }
125
+ catch (error) {
126
+ // Continue without enhanced analysis if it fails
127
+ }
128
+ }
129
+ const content = await this.llmClient.generateText(`Create a "Development Patterns" guide that teaches how to work effectively in this codebase.
130
+
131
+ Include:
132
+ 1. **Common Workflows**: How to add features, fix bugs, make changes
133
+ 2. **Code Patterns**: Established patterns to follow (with examples)
134
+ 3. **Testing Strategy**: How testing is approached in this codebase
135
+ 4. **Error Handling**: How errors are handled and reported
136
+ 5. **Performance Considerations**: What to keep in mind for performance
137
+
138
+ Focus on actionable guidance:
139
+ - "When you need to X, do Y"
140
+ - "This codebase prefers pattern A over pattern B because..."
141
+ - "Always/never do X when..."
142
+
143
+ Use the detected code patterns to provide specific guidance about what patterns are already established.
144
+ Include concrete examples where helpful.
145
+ Target both human developers and AI agents.`, enhancedContext);
146
+ return `# Development Patterns
147
+
148
+ ${content}
149
+
150
+ ${shared_1.GeneratorUtils.createGeneratedByFooter('Development Patterns Documentation')}`;
151
+ }
152
+ async createAIGuidelines(repoStructure, moduleGroups) {
153
+ const context = this.buildRepoContext(repoStructure, moduleGroups);
154
+ const content = await this.llmClient.generateText(`Create "AI Agent Guidelines" specifically for AI assistants working on this codebase.
155
+
156
+ Include:
157
+ 1. **Code Style Preferences**: Specific formatting and style rules
158
+ 2. **Decision Frameworks**: How to make common technical choices
159
+ 3. **Risk Areas**: Parts of the code that need extra careful attention
160
+ 4. **Validation Steps**: Checks to perform before suggesting changes
161
+ 5. **Context Clues**: How to understand the intent behind existing code
162
+
163
+ Format as clear, actionable rules:
164
+ - "When modifying X, always check Y"
165
+ - "Prefer approach A over B in this codebase"
166
+ - "Before changing Z, validate that..."
167
+
168
+ Make it specific to this codebase's patterns and conventions.
169
+ Focus on preventing common mistakes and maintaining consistency.`, context);
170
+ return `# AI Agent Guidelines
171
+
172
+ ${content}
173
+
174
+ ${shared_1.GeneratorUtils.createGeneratedByFooter('AI Guidelines Documentation')}`;
175
+ }
176
+ async createContributingWorkflows(repoStructure, moduleGroups) {
177
+ const context = this.buildRepoContext(repoStructure, moduleGroups);
178
+ const content = await this.llmClient.generateText(`Create a "Contributing Workflows" guide that explains the processes for working on this codebase.
179
+
180
+ Include:
181
+ 1. **Development Lifecycle**: From idea to deployment
182
+ 2. **Code Review Process**: What gets reviewed and how
183
+ 3. **Testing Requirements**: What testing is expected
184
+ 4. **Release Process**: How changes get deployed
185
+ 5. **Communication**: How team members coordinate
186
+
187
+ Focus on:
188
+ - Step-by-step workflows
189
+ - Quality gates and checkpoints
190
+ - Tools and automation used
191
+ - Standards and expectations
192
+
193
+ Make it practical for both new and experienced contributors.
194
+ Explain not just what to do, but why these processes exist.`, context);
195
+ return `# Contributing Workflows
196
+
197
+ ${content}
198
+
199
+ ${shared_1.GeneratorUtils.createGeneratedByFooter('Contributing Workflows Documentation')}`;
200
+ }
201
+ async createDomainContext(repoStructure, moduleGroups) {
202
+ const context = this.buildRepoContext(repoStructure, moduleGroups);
203
+ const content = await this.llmClient.generateText(`Create a "Domain Context" guide that explains the business/domain knowledge needed to work on this codebase.
204
+
205
+ Include:
206
+ 1. **Problem Domain**: What real-world problem this software solves
207
+ 2. **User Personas**: Who uses this software and how
208
+ 3. **Business Rules**: Important constraints and requirements
209
+ 4. **Domain Terminology**: Key terms and their meanings
210
+ 5. **Success Criteria**: How to measure if the software is successful
211
+
212
+ Focus on knowledge that would help someone:
213
+ - Understand why certain features exist
214
+ - Make good decisions about new features
215
+ - Recognize when something doesn't fit the domain
216
+ - Communicate effectively with stakeholders
217
+
218
+ Avoid deep technical details - focus on the "why" behind the code.`, context);
219
+ return `# Domain Context
220
+
221
+ ${content}
222
+
223
+ ${shared_1.GeneratorUtils.createGeneratedByFooter('Domain Context Documentation')}`;
224
+ }
225
+ async createSoftwareGuidelines(repoStructure, moduleGroups) {
226
+ const content = await this.llmClient.generateText(`Create comprehensive software development guidelines that help developers understand and work effectively with this codebase.
227
+
228
+ These guidelines should cover the most important aspects of development for this specific project, including:
229
+
230
+ 1. **Technology-Specific Guidelines**: Best practices for the detected technology stack
231
+ 2. **Project-Specific Patterns**: Guidelines based on existing code patterns and architecture
232
+ 3. **Quality Standards**: Code quality, testing, and review guidelines
233
+ 4. **Workflow Guidelines**: Development processes and collaboration practices
234
+ 5. **Security & Performance**: Guidelines for maintaining security and performance standards
235
+
236
+ Focus on:
237
+ - **Actionable Rules**: Clear, specific guidelines developers can follow
238
+ - **Context-Aware**: Guidelines tailored to this project's technology and patterns
239
+ - **Practical Examples**: Concrete examples using the project's tech stack
240
+ - **Tool Recommendations**: Specific tools and automation for enforcing guidelines
241
+ - **Quality Gates**: Measurable criteria for following guidelines
242
+
243
+ The guidelines should serve as a comprehensive reference for both new and experienced developers working on this project.`, this.buildRepoContext(repoStructure, moduleGroups));
244
+ return `# Software Development Guidelines
245
+
246
+ ${content}
247
+
248
+ ## Quick Reference
249
+
250
+ ### For New Developers
251
+ - Start with the foundational guidelines and project setup
252
+ - Review code style and testing guidelines thoroughly
253
+ - Gradually explore advanced guidelines as you work on different areas
254
+
255
+ ### For Daily Development
256
+ - Reference relevant guidelines for your current task
257
+ - Use guidelines during code reviews
258
+ - Follow security and performance guidelines for all changes
259
+
260
+ ### For Code Reviews
261
+ - Validate adherence to established guidelines
262
+ - Use guidelines as a checklist for review quality
263
+ - Provide constructive feedback based on guideline violations
264
+
265
+ ## Continuous Improvement
266
+
267
+ These guidelines should evolve with the project. Regular reviews and updates ensure they remain relevant and valuable for the development team.
268
+
269
+ ${shared_1.GeneratorUtils.createGeneratedByFooter('Software Development Guidelines')}`;
270
+ }
271
+ createDocumentationIndex(enabledTypes) {
272
+ const docDescriptions = {
273
+ 'mental-model': {
274
+ title: 'Mental Model',
275
+ description: 'Core concepts and metaphors for understanding this codebase'
276
+ },
277
+ 'architecture-decisions': {
278
+ title: 'Architecture Decisions',
279
+ description: 'Key design choices and their rationale'
280
+ },
281
+ 'code-organization': {
282
+ title: 'Code Organization',
283
+ description: 'Logic behind the codebase structure and patterns'
284
+ },
285
+ 'development-patterns': {
286
+ title: 'Development Patterns',
287
+ description: 'How to work effectively in this codebase'
288
+ },
289
+ 'ai-guidelines': {
290
+ title: 'AI Guidelines',
291
+ description: 'Specific guidance for AI agents working on this code'
292
+ },
293
+ 'contributing-workflows': {
294
+ title: 'Contributing Workflows',
295
+ description: 'Processes and procedures for contributing'
296
+ },
297
+ 'domain-context': {
298
+ title: 'Domain Context',
299
+ description: 'Business and domain knowledge for this project'
300
+ },
301
+ 'software-guidelines': {
302
+ title: 'Software Development Guidelines',
303
+ description: 'Comprehensive development guidelines tailored to this project'
304
+ }
305
+ };
306
+ const sections = enabledTypes.map(type => {
307
+ const { title, description } = docDescriptions[type];
308
+ return `### [${title}](./${type}.md)
309
+ ${description}`;
310
+ }).join('\n\n');
311
+ return `# Documentation
312
+
313
+ This documentation focuses on helping you understand and work with this codebase effectively through high-level concepts and patterns.
314
+
315
+ ## Documentation Sections
316
+
317
+ ${sections}
318
+
319
+ ## How to Use This Documentation
320
+
321
+ 1. **Start with Mental Model** - Build the right conceptual framework
322
+ 2. **Review Architecture Decisions** - Understand key design choices
323
+ 3. **Study Code Organization** - Learn how the code is structured
324
+ 4. **Follow Development Patterns** - Work effectively within established patterns
325
+ 5. **Reference AI Guidelines** - (For AI agents) Follow codebase-specific guidance
326
+
327
+ ## Philosophy
328
+
329
+ This documentation teaches "how to think about this codebase" rather than "what every file does." The goal is to help both humans and AI agents make good decisions when working with the code.
330
+
331
+ ${shared_1.GeneratorUtils.createGeneratedByFooter('Documentation Index')}`;
332
+ }
333
+ buildRepoContext(repoStructure, moduleGroups) {
334
+ const topExtensions = shared_1.GeneratorUtils.getTopFileExtensions(repoStructure, 5);
335
+ return `Repository Analysis:
336
+ - Root Path: ${repoStructure.rootPath}
337
+ - Total Files: ${repoStructure.totalFiles}
338
+ - Total Size: ${shared_1.GeneratorUtils.formatBytes(repoStructure.totalSize)}
339
+ - Primary Languages: ${topExtensions.map(([ext, count]) => `${ext} (${count} files)`).join(', ')}
340
+
341
+ Module Structure:
342
+ ${moduleGroups.slice(0, 10).map(m => `- ${m.name}: ${m.description} (${m.files.length} files)`).join('\n')}
343
+
344
+ Key Directories:
345
+ ${[...new Set(repoStructure.files.map(f => f.relativePath.split('/')[0]))]
346
+ .filter(dir => !dir.includes('.'))
347
+ .slice(0, 10)
348
+ .map(dir => `- ${dir}/`)
349
+ .join('\n')}
350
+
351
+ Configuration Files:
352
+ ${repoStructure.files
353
+ .filter(f => ['package.json', 'tsconfig.json', '.env', 'README.md'].some(config => f.relativePath.includes(config)))
354
+ .map(f => `- ${f.relativePath}`)
355
+ .join('\n')}`;
356
+ }
357
+ }
358
+ exports.DocumentationTemplates = DocumentationTemplates;
359
+ //# sourceMappingURL=documentationTemplates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentationTemplates.js","sourceRoot":"","sources":["../../../src/generators/documentation/documentationTemplates.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export declare const DOCUMENTATION_TYPES: readonly ["mental-model", "architecture-decisions", "code-organization", "development-patterns", "ai-guidelines", "contributing-workflows", "domain-context", "software-guidelines"];
2
+ export type DocumentationType = typeof DOCUMENTATION_TYPES[number];
3
+ export declare const DOCUMENTATION_TYPES_ARRAY: DocumentationType[];
4
+ export declare const DOCUMENTATION_CONFIG_FILES: string[];
5
+ export interface DocumentationConfig {
6
+ focusAreas: string[];
7
+ maxContentLength: number;
8
+ includeExamples: boolean;
9
+ enabledTypes?: DocumentationType[];
10
+ }
11
+ //# sourceMappingURL=documentationTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentationTypes.d.ts","sourceRoot":"","sources":["../../../src/generators/documentation/documentationTypes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,sLAStB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAGnE,eAAO,MAAM,yBAAyB,EAAE,iBAAiB,EAA6B,CAAC;AAEvF,eAAO,MAAM,0BAA0B,UAKtC,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;CACpC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DOCUMENTATION_CONFIG_FILES = exports.DOCUMENTATION_TYPES_ARRAY = exports.DOCUMENTATION_TYPES = void 0;
4
+ exports.DOCUMENTATION_TYPES = [
5
+ 'mental-model',
6
+ 'architecture-decisions',
7
+ 'code-organization',
8
+ 'development-patterns',
9
+ 'ai-guidelines',
10
+ 'contributing-workflows',
11
+ 'domain-context',
12
+ 'software-guidelines'
13
+ ];
14
+ // Mutable version for runtime use
15
+ exports.DOCUMENTATION_TYPES_ARRAY = [...exports.DOCUMENTATION_TYPES];
16
+ exports.DOCUMENTATION_CONFIG_FILES = [
17
+ 'package.json', 'tsconfig.json', 'webpack.config.js',
18
+ 'next.config.js', 'tailwind.config.js', 'README.md',
19
+ '.gitignore', 'Dockerfile', 'docker-compose.yml',
20
+ '.env', '.env.example', 'jest.config.js'
21
+ ];
22
+ //# sourceMappingURL=documentationTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentationTypes.js","sourceRoot":"","sources":["../../../src/generators/documentation/documentationTypes.ts"],"names":[],"mappings":";;;AAAa,QAAA,mBAAmB,GAAG;IACjC,cAAc;IACd,wBAAwB;IACxB,mBAAmB;IACnB,sBAAsB;IACtB,eAAe;IACf,wBAAwB;IACxB,gBAAgB;IAChB,qBAAqB;CACb,CAAC;AAIX,kCAAkC;AACrB,QAAA,yBAAyB,GAAwB,CAAC,GAAG,2BAAmB,CAAC,CAAC;AAE1E,QAAA,0BAA0B,GAAG;IACxC,cAAc,EAAE,eAAe,EAAE,mBAAmB;IACpD,gBAAgB,EAAE,oBAAoB,EAAE,WAAW;IACnD,YAAY,EAAE,YAAY,EAAE,oBAAoB;IAChD,MAAM,EAAE,cAAc,EAAE,gBAAgB;CACzC,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare class DocumentationUtils {
2
+ static slugify(text: string): string;
3
+ static formatBytes(bytes: number): string;
4
+ static formatModuleName(name: string): string;
5
+ static getConfigDescription(filePath: string): string;
6
+ }
7
+ //# sourceMappingURL=documentationUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentationUtils.d.ts","sourceRoot":"","sources":["../../../src/generators/documentation/documentationUtils.ts"],"names":[],"mappings":"AAEA,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIpC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIzC,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI7C,MAAM,CAAC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;CAYtD"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DocumentationUtils = void 0;
4
+ const shared_1 = require("../shared");
5
+ class DocumentationUtils {
6
+ static slugify(text) {
7
+ return shared_1.GeneratorUtils.slugify(text);
8
+ }
9
+ static formatBytes(bytes) {
10
+ return shared_1.GeneratorUtils.formatBytes(bytes);
11
+ }
12
+ static formatModuleName(name) {
13
+ return shared_1.GeneratorUtils.formatModuleName(name);
14
+ }
15
+ static getConfigDescription(filePath) {
16
+ const descriptions = {
17
+ 'package.json': 'Node.js dependencies and scripts',
18
+ 'tsconfig.json': 'TypeScript compilation settings',
19
+ '.env': 'Environment variables',
20
+ '.env.example': 'Environment variable template',
21
+ 'jest.config.js': 'Jest testing configuration'
22
+ };
23
+ const basename = filePath.split('/').pop() || filePath;
24
+ return descriptions[basename] || basename.replace(/\.[^.]+$/, '');
25
+ }
26
+ }
27
+ exports.DocumentationUtils = DocumentationUtils;
28
+ //# sourceMappingURL=documentationUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentationUtils.js","sourceRoot":"","sources":["../../../src/generators/documentation/documentationUtils.ts"],"names":[],"mappings":";;;AAAA,sCAA2C;AAE3C,MAAa,kBAAkB;IAC7B,MAAM,CAAC,OAAO,CAAC,IAAY;QACzB,OAAO,uBAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,KAAa;QAC9B,OAAO,uBAAc,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,IAAY;QAClC,OAAO,uBAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,oBAAoB,CAAC,QAAgB;QAC1C,MAAM,YAAY,GAA8B;YAC9C,cAAc,EAAE,kCAAkC;YAClD,eAAe,EAAE,iCAAiC;YAClD,MAAM,EAAE,uBAAuB;YAC/B,cAAc,EAAE,+BAA+B;YAC/C,gBAAgB,EAAE,4BAA4B;SAC/C,CAAC;QAEF,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,QAAQ,CAAC;QACvD,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;CACF;AAzBD,gDAyBC"}
@@ -0,0 +1,6 @@
1
+ import { GuideMeta } from './templates/types';
2
+ export declare const DOCUMENT_GUIDES: GuideMeta[];
3
+ export declare const DOCUMENT_GUIDE_KEYS: string[];
4
+ export declare function getGuidesByKeys(keys?: string[]): GuideMeta[];
5
+ export declare function getDocFilesByKeys(keys?: string[]): Set<string> | undefined;
6
+ //# sourceMappingURL=guideRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guideRegistry.d.ts","sourceRoot":"","sources":["../../../src/generators/documentation/guideRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,eAAO,MAAM,eAAe,EAAE,SAAS,EAyDtC,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAA0C,CAAC;AAE3E,wBAAgB,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAQ5D;AAED,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,CAQ1E"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DOCUMENT_GUIDE_KEYS = exports.DOCUMENT_GUIDES = void 0;
4
+ exports.getGuidesByKeys = getGuidesByKeys;
5
+ exports.getDocFilesByKeys = getDocFilesByKeys;
6
+ exports.DOCUMENT_GUIDES = [
7
+ {
8
+ key: 'project-overview',
9
+ title: 'Project Overview',
10
+ file: 'project-overview.md',
11
+ marker: 'ai-task:project-overview',
12
+ primaryInputs: 'Roadmap, README, stakeholder notes'
13
+ },
14
+ {
15
+ key: 'architecture',
16
+ title: 'Architecture Notes',
17
+ file: 'architecture.md',
18
+ marker: 'ai-task:architecture-notes',
19
+ primaryInputs: 'ADRs, service boundaries, dependency graphs'
20
+ },
21
+ {
22
+ key: 'development-workflow',
23
+ title: 'Development Workflow',
24
+ file: 'development-workflow.md',
25
+ marker: 'ai-task:development-workflow',
26
+ primaryInputs: 'Branching rules, CI config, contributing guide'
27
+ },
28
+ {
29
+ key: 'testing-strategy',
30
+ title: 'Testing Strategy',
31
+ file: 'testing-strategy.md',
32
+ marker: 'ai-task:testing-strategy',
33
+ primaryInputs: 'Test configs, CI gates, known flaky suites'
34
+ },
35
+ {
36
+ key: 'glossary',
37
+ title: 'Glossary & Domain Concepts',
38
+ file: 'glossary.md',
39
+ marker: 'ai-task:glossary',
40
+ primaryInputs: 'Business terminology, user personas, domain rules'
41
+ },
42
+ {
43
+ key: 'data-flow',
44
+ title: 'Data Flow & Integrations',
45
+ file: 'data-flow.md',
46
+ marker: 'ai-task:data-flow',
47
+ primaryInputs: 'System diagrams, integration specs, queue topics'
48
+ },
49
+ {
50
+ key: 'security',
51
+ title: 'Security & Compliance Notes',
52
+ file: 'security.md',
53
+ marker: 'ai-task:security',
54
+ primaryInputs: 'Auth model, secrets management, compliance requirements'
55
+ },
56
+ {
57
+ key: 'tooling',
58
+ title: 'Tooling & Productivity Guide',
59
+ file: 'tooling.md',
60
+ marker: 'ai-task:tooling',
61
+ primaryInputs: 'CLI scripts, IDE configs, automation workflows'
62
+ }
63
+ ];
64
+ exports.DOCUMENT_GUIDE_KEYS = exports.DOCUMENT_GUIDES.map(guide => guide.key);
65
+ function getGuidesByKeys(keys) {
66
+ if (!keys || keys.length === 0) {
67
+ return exports.DOCUMENT_GUIDES;
68
+ }
69
+ const set = new Set(keys);
70
+ const filtered = exports.DOCUMENT_GUIDES.filter(guide => set.has(guide.key));
71
+ return filtered.length > 0 ? filtered : exports.DOCUMENT_GUIDES;
72
+ }
73
+ function getDocFilesByKeys(keys) {
74
+ if (!keys || keys.length === 0) {
75
+ return undefined;
76
+ }
77
+ const files = exports.DOCUMENT_GUIDES
78
+ .filter(guide => keys.includes(guide.key))
79
+ .map(guide => guide.file);
80
+ return files.length ? new Set(files) : undefined;
81
+ }
82
+ //# sourceMappingURL=guideRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guideRegistry.js","sourceRoot":"","sources":["../../../src/generators/documentation/guideRegistry.ts"],"names":[],"mappings":";;;AA+DA,0CAQC;AAED,8CAQC;AA/EY,QAAA,eAAe,GAAgB;IAC1C;QACE,GAAG,EAAE,kBAAkB;QACvB,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,qBAAqB;QAC3B,MAAM,EAAE,0BAA0B;QAClC,aAAa,EAAE,oCAAoC;KACpD;IACD;QACE,GAAG,EAAE,cAAc;QACnB,KAAK,EAAE,oBAAoB;QAC3B,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,4BAA4B;QACpC,aAAa,EAAE,6CAA6C;KAC7D;IACD;QACE,GAAG,EAAE,sBAAsB;QAC3B,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE,8BAA8B;QACtC,aAAa,EAAE,gDAAgD;KAChE;IACD;QACE,GAAG,EAAE,kBAAkB;QACvB,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,qBAAqB;QAC3B,MAAM,EAAE,0BAA0B;QAClC,aAAa,EAAE,4CAA4C;KAC5D;IACD;QACE,GAAG,EAAE,UAAU;QACf,KAAK,EAAE,4BAA4B;QACnC,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,kBAAkB;QAC1B,aAAa,EAAE,mDAAmD;KACnE;IACD;QACE,GAAG,EAAE,WAAW;QAChB,KAAK,EAAE,0BAA0B;QACjC,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,mBAAmB;QAC3B,aAAa,EAAE,kDAAkD;KAClE;IACD;QACE,GAAG,EAAE,UAAU;QACf,KAAK,EAAE,6BAA6B;QACpC,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,kBAAkB;QAC1B,aAAa,EAAE,yDAAyD;KACzE;IACD;QACE,GAAG,EAAE,SAAS;QACd,KAAK,EAAE,8BAA8B;QACrC,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,iBAAiB;QACzB,aAAa,EAAE,gDAAgD;KAChE;CACF,CAAC;AAEW,QAAA,mBAAmB,GAAG,uBAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAE3E,SAAgB,eAAe,CAAC,IAAe;IAC7C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,uBAAe,CAAC;IACzB,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1B,MAAM,QAAQ,GAAG,uBAAe,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACrE,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,uBAAe,CAAC;AAC1D,CAAC;AAED,SAAgB,iBAAiB,CAAC,IAAe;IAC/C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAG,uBAAe;SAC1B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACzC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACnD,CAAC"}
@@ -1,7 +1,7 @@
1
- import { RepoStructure } from '../types';
2
- import { FileMapper } from '../utils/fileMapper';
3
- import { BaseLLMClient } from '../services/baseLLMClient';
4
- import { GitService, GitChanges } from '../utils/gitService';
1
+ import { RepoStructure } from '../../types';
2
+ import { FileMapper } from '../../utils/fileMapper';
3
+ import { BaseLLMClient } from '../../services/baseLLMClient';
4
+ import { GitService, GitChanges } from '../../utils/gitService';
5
5
  export declare class IncrementalDocumentationGenerator {
6
6
  private fileMapper;
7
7
  private llmClient;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incrementalDocumentationGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/documentation/incrementalDocumentationGenerator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,aAAa,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAShE,qBAAa,iCAAiC;IAE1C,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,UAAU;gBAFV,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,EACxB,UAAU,EAAE,UAAU;IAG1B,mBAAmB,CACvB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,UAAU,EACnB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,eAAe,EAAE,OAAO,CAAC;KAC1B,CAAC;IA+FF,OAAO,CAAC,kBAAkB;IAkB1B,OAAO,CAAC,oBAAoB;IAe5B,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,eAAe;IAgCvB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,oBAAoB;YAYd,yBAAyB;YAyBzB,yBAAyB;YA2DzB,mBAAmB;YA6BnB,uBAAuB;IAkCrC,OAAO,CAAC,oBAAoB;YAad,6BAA6B;IAoC3C,OAAO,CAAC,wBAAwB;IAmChC,OAAO,CAAC,OAAO;IAOf,OAAO,CAAC,WAAW;CAOpB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incrementalDocumentationGenerator.js","sourceRoot":"","sources":["../../../src/generators/documentation/incrementalDocumentationGenerator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { DocumentationGenerator } from './documentationGenerator';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generators/documentation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DocumentationGenerator = void 0;
4
+ var documentationGenerator_1 = require("./documentationGenerator");
5
+ Object.defineProperty(exports, "DocumentationGenerator", { enumerable: true, get: function () { return documentationGenerator_1.DocumentationGenerator; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generators/documentation/index.ts"],"names":[],"mappings":";;;AAAA,mEAAkE;AAAzD,gIAAA,sBAAsB,OAAA"}
@@ -0,0 +1,3 @@
1
+ import { DocumentationTemplateContext } from './types';
2
+ export declare function renderArchitectureNotes(context: DocumentationTemplateContext): string;
3
+ //# sourceMappingURL=architectureTemplate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"architectureTemplate.d.ts","sourceRoot":"","sources":["../../../../src/generators/documentation/templates/architectureTemplate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAC;AAGvD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,4BAA4B,GAAG,MAAM,CA8DrF"}