@ai-coders/context 0.2.1 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/README.md +116 -578
  2. package/dist/commands/shared/agents.d.ts +2 -0
  3. package/dist/commands/shared/agents.d.ts.map +1 -0
  4. package/dist/commands/shared/agents.js +15 -0
  5. package/dist/commands/shared/agents.js.map +1 -0
  6. package/dist/commands/shared/selection.d.ts +12 -0
  7. package/dist/commands/shared/selection.d.ts.map +1 -0
  8. package/dist/commands/shared/selection.js +95 -0
  9. package/dist/commands/shared/selection.js.map +1 -0
  10. package/dist/generators/agents/agentGenerator.d.ts +6 -9
  11. package/dist/generators/agents/agentGenerator.d.ts.map +1 -1
  12. package/dist/generators/agents/agentGenerator.js +89 -32
  13. package/dist/generators/agents/agentGenerator.js.map +1 -1
  14. package/dist/generators/agents/index.d.ts +0 -2
  15. package/dist/generators/agents/index.d.ts.map +1 -1
  16. package/dist/generators/agents/index.js +1 -5
  17. package/dist/generators/agents/index.js.map +1 -1
  18. package/dist/generators/agents/templates/index.d.ts +4 -0
  19. package/dist/generators/agents/templates/index.d.ts.map +1 -0
  20. package/dist/generators/agents/templates/index.js +8 -0
  21. package/dist/generators/agents/templates/index.js.map +1 -0
  22. package/dist/generators/agents/templates/indexTemplate.d.ts +3 -0
  23. package/dist/generators/agents/templates/indexTemplate.d.ts.map +1 -0
  24. package/dist/generators/agents/templates/indexTemplate.js +35 -0
  25. package/dist/generators/agents/templates/indexTemplate.js.map +1 -0
  26. package/dist/generators/agents/templates/playbookTemplate.d.ts +4 -0
  27. package/dist/generators/agents/templates/playbookTemplate.d.ts.map +1 -0
  28. package/dist/generators/agents/templates/playbookTemplate.js +63 -0
  29. package/dist/generators/agents/templates/playbookTemplate.js.map +1 -0
  30. package/dist/generators/agents/templates/types.d.ts +14 -0
  31. package/dist/generators/agents/templates/types.d.ts.map +1 -0
  32. package/dist/generators/agents/templates/types.js +3 -0
  33. package/dist/generators/agents/templates/types.js.map +1 -0
  34. package/dist/generators/documentation/documentationGenerator.d.ts +9 -15
  35. package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -1
  36. package/dist/generators/documentation/documentationGenerator.js +65 -77
  37. package/dist/generators/documentation/documentationGenerator.js.map +1 -1
  38. package/dist/generators/documentation/guideRegistry.d.ts +6 -0
  39. package/dist/generators/documentation/guideRegistry.d.ts.map +1 -0
  40. package/dist/generators/documentation/guideRegistry.js +82 -0
  41. package/dist/generators/documentation/guideRegistry.js.map +1 -0
  42. package/dist/generators/documentation/index.d.ts +0 -6
  43. package/dist/generators/documentation/index.d.ts.map +1 -1
  44. package/dist/generators/documentation/index.js +1 -17
  45. package/dist/generators/documentation/index.js.map +1 -1
  46. package/dist/generators/documentation/templates/architectureTemplate.d.ts +3 -0
  47. package/dist/generators/documentation/templates/architectureTemplate.d.ts.map +1 -0
  48. package/dist/generators/documentation/templates/architectureTemplate.js +66 -0
  49. package/dist/generators/documentation/templates/architectureTemplate.js.map +1 -0
  50. package/dist/generators/documentation/templates/common.d.ts +7 -0
  51. package/dist/generators/documentation/templates/common.d.ts.map +1 -0
  52. package/dist/generators/documentation/templates/common.js +58 -0
  53. package/dist/generators/documentation/templates/common.js.map +1 -0
  54. package/dist/generators/documentation/templates/dataFlowTemplate.d.ts +3 -0
  55. package/dist/generators/documentation/templates/dataFlowTemplate.d.ts.map +1 -0
  56. package/dist/generators/documentation/templates/dataFlowTemplate.js +55 -0
  57. package/dist/generators/documentation/templates/dataFlowTemplate.js.map +1 -0
  58. package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts +2 -0
  59. package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts.map +1 -0
  60. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js +59 -0
  61. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js.map +1 -0
  62. package/dist/generators/documentation/templates/frontMatter.d.ts +11 -0
  63. package/dist/generators/documentation/templates/frontMatter.d.ts.map +1 -0
  64. package/dist/generators/documentation/templates/frontMatter.js +29 -0
  65. package/dist/generators/documentation/templates/frontMatter.js.map +1 -0
  66. package/dist/generators/documentation/templates/glossaryTemplate.d.ts +3 -0
  67. package/dist/generators/documentation/templates/glossaryTemplate.d.ts.map +1 -0
  68. package/dist/generators/documentation/templates/glossaryTemplate.js +55 -0
  69. package/dist/generators/documentation/templates/glossaryTemplate.js.map +1 -0
  70. package/dist/generators/documentation/templates/index.d.ts +11 -0
  71. package/dist/generators/documentation/templates/index.d.ts.map +1 -0
  72. package/dist/generators/documentation/templates/index.js +22 -0
  73. package/dist/generators/documentation/templates/index.js.map +1 -0
  74. package/dist/generators/documentation/templates/indexTemplate.d.ts +3 -0
  75. package/dist/generators/documentation/templates/indexTemplate.d.ts.map +1 -0
  76. package/dist/generators/documentation/templates/indexTemplate.js +56 -0
  77. package/dist/generators/documentation/templates/indexTemplate.js.map +1 -0
  78. package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts +3 -0
  79. package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts.map +1 -0
  80. package/dist/generators/documentation/templates/projectOverviewTemplate.js +68 -0
  81. package/dist/generators/documentation/templates/projectOverviewTemplate.js.map +1 -0
  82. package/dist/generators/documentation/templates/securityTemplate.d.ts +2 -0
  83. package/dist/generators/documentation/templates/securityTemplate.d.ts.map +1 -0
  84. package/dist/generators/documentation/templates/securityTemplate.js +53 -0
  85. package/dist/generators/documentation/templates/securityTemplate.js.map +1 -0
  86. package/dist/generators/documentation/templates/testingTemplate.d.ts +2 -0
  87. package/dist/generators/documentation/templates/testingTemplate.d.ts.map +1 -0
  88. package/dist/generators/documentation/templates/testingTemplate.js +59 -0
  89. package/dist/generators/documentation/templates/testingTemplate.js.map +1 -0
  90. package/dist/generators/documentation/templates/toolingTemplate.d.ts +2 -0
  91. package/dist/generators/documentation/templates/toolingTemplate.d.ts.map +1 -0
  92. package/dist/generators/documentation/templates/toolingTemplate.js +56 -0
  93. package/dist/generators/documentation/templates/toolingTemplate.js.map +1 -0
  94. package/dist/generators/documentation/templates/types.d.ts +23 -0
  95. package/dist/generators/documentation/templates/types.d.ts.map +1 -0
  96. package/dist/generators/documentation/templates/types.js +3 -0
  97. package/dist/generators/documentation/templates/types.js.map +1 -0
  98. package/dist/generators/documentation/templates.d.ts +31 -0
  99. package/dist/generators/documentation/templates.d.ts.map +1 -0
  100. package/dist/generators/documentation/templates.js +566 -0
  101. package/dist/generators/documentation/templates.js.map +1 -0
  102. package/dist/generators/plans/index.d.ts +2 -0
  103. package/dist/generators/plans/index.d.ts.map +1 -0
  104. package/dist/generators/plans/index.js +6 -0
  105. package/dist/generators/plans/index.js.map +1 -0
  106. package/dist/generators/plans/planGenerator.d.ts +22 -0
  107. package/dist/generators/plans/planGenerator.d.ts.map +1 -0
  108. package/dist/generators/plans/planGenerator.js +109 -0
  109. package/dist/generators/plans/planGenerator.js.map +1 -0
  110. package/dist/generators/plans/templates/indexTemplate.d.ts +3 -0
  111. package/dist/generators/plans/templates/indexTemplate.d.ts.map +1 -0
  112. package/dist/generators/plans/templates/indexTemplate.js +36 -0
  113. package/dist/generators/plans/templates/indexTemplate.js.map +1 -0
  114. package/dist/generators/plans/templates/planTemplate.d.ts +3 -0
  115. package/dist/generators/plans/templates/planTemplate.d.ts.map +1 -0
  116. package/dist/generators/plans/templates/planTemplate.js +95 -0
  117. package/dist/generators/plans/templates/planTemplate.js.map +1 -0
  118. package/dist/generators/plans/templates/types.d.ts +19 -0
  119. package/dist/generators/plans/templates/types.d.ts.map +1 -0
  120. package/dist/generators/plans/templates/types.js +3 -0
  121. package/dist/generators/plans/templates/types.js.map +1 -0
  122. package/dist/generators/shared/contextGenerator.d.ts +2 -7
  123. package/dist/generators/shared/contextGenerator.d.ts.map +1 -1
  124. package/dist/generators/shared/contextGenerator.js +2 -98
  125. package/dist/generators/shared/contextGenerator.js.map +1 -1
  126. package/dist/generators/shared/directoryTemplateHelpers.d.ts +2 -0
  127. package/dist/generators/shared/directoryTemplateHelpers.d.ts.map +1 -0
  128. package/dist/generators/shared/directoryTemplateHelpers.js +12 -0
  129. package/dist/generators/shared/directoryTemplateHelpers.js.map +1 -0
  130. package/dist/generators/shared/index.d.ts +1 -0
  131. package/dist/generators/shared/index.d.ts.map +1 -1
  132. package/dist/generators/shared/index.js +3 -1
  133. package/dist/generators/shared/index.js.map +1 -1
  134. package/dist/index.d.ts +6 -4
  135. package/dist/index.d.ts.map +1 -1
  136. package/dist/index.js +1358 -609
  137. package/dist/index.js.map +1 -1
  138. package/dist/prompts/defaults.d.ts +3 -0
  139. package/dist/prompts/defaults.d.ts.map +1 -0
  140. package/dist/prompts/defaults.js +95 -0
  141. package/dist/prompts/defaults.js.map +1 -0
  142. package/dist/services/fill/fillService.d.ts +50 -0
  143. package/dist/services/fill/fillService.d.ts.map +1 -0
  144. package/dist/services/fill/fillService.js +302 -0
  145. package/dist/services/fill/fillService.js.map +1 -0
  146. package/dist/services/init/initService.d.ts +37 -0
  147. package/dist/services/init/initService.d.ts.map +1 -0
  148. package/dist/services/init/initService.js +137 -0
  149. package/dist/services/init/initService.js.map +1 -0
  150. package/dist/services/plan/planService.d.ts +59 -0
  151. package/dist/services/plan/planService.d.ts.map +1 -0
  152. package/dist/services/plan/planService.js +343 -0
  153. package/dist/services/plan/planService.js.map +1 -0
  154. package/dist/services/shared/llmConfig.d.ts +22 -0
  155. package/dist/services/shared/llmConfig.d.ts.map +1 -0
  156. package/dist/services/shared/llmConfig.js +80 -0
  157. package/dist/services/shared/llmConfig.js.map +1 -0
  158. package/dist/utils/cliUI.d.ts +6 -4
  159. package/dist/utils/cliUI.d.ts.map +1 -1
  160. package/dist/utils/cliUI.js +71 -56
  161. package/dist/utils/cliUI.js.map +1 -1
  162. package/dist/utils/i18n.d.ts +192 -0
  163. package/dist/utils/i18n.d.ts.map +1 -0
  164. package/dist/utils/i18n.js +423 -0
  165. package/dist/utils/i18n.js.map +1 -0
  166. package/dist/utils/promptLoader.d.ts +12 -0
  167. package/dist/utils/promptLoader.d.ts.map +1 -0
  168. package/dist/utils/promptLoader.js +81 -0
  169. package/dist/utils/promptLoader.js.map +1 -0
  170. package/dist/utils/versionChecker.d.ts +15 -0
  171. package/dist/utils/versionChecker.d.ts.map +1 -0
  172. package/dist/utils/versionChecker.js +49 -0
  173. package/dist/utils/versionChecker.js.map +1 -0
  174. package/package.json +28 -23
  175. package/prompts/update_plan_prompt.md +42 -0
  176. package/prompts/update_scaffold_prompt.md +48 -0
  177. package/dist/generators/agentGenerator.d.ts +0 -23
  178. package/dist/generators/agentGenerator.d.ts.map +0 -1
  179. package/dist/generators/agentGenerator.js +0 -357
  180. package/dist/generators/agentGenerator.js.map +0 -1
  181. package/dist/generators/documentation/enhancedDocumentationGenerator.d.ts +0 -21
  182. package/dist/generators/documentation/enhancedDocumentationGenerator.d.ts.map +0 -1
  183. package/dist/generators/documentation/enhancedDocumentationGenerator.js +0 -216
  184. package/dist/generators/documentation/enhancedDocumentationGenerator.js.map +0 -1
  185. package/dist/generators/documentation/newDocumentationTemplates.d.ts +0 -19
  186. package/dist/generators/documentation/newDocumentationTemplates.d.ts.map +0 -1
  187. package/dist/generators/documentation/newDocumentationTemplates.js +0 -307
  188. package/dist/generators/documentation/newDocumentationTemplates.js.map +0 -1
  189. package/dist/generators/documentationGenerator.d.ts +0 -22
  190. package/dist/generators/documentationGenerator.d.ts.map +0 -1
  191. package/dist/generators/documentationGenerator.js +0 -235
  192. package/dist/generators/documentationGenerator.js.map +0 -1
  193. package/dist/generators/documentationTemplates.d.ts +0 -16
  194. package/dist/generators/documentationTemplates.d.ts.map +0 -1
  195. package/dist/generators/documentationTemplates.js +0 -326
  196. package/dist/generators/documentationTemplates.js.map +0 -1
  197. package/dist/generators/documentationUtils.d.ts +0 -7
  198. package/dist/generators/documentationUtils.d.ts.map +0 -1
  199. package/dist/generators/documentationUtils.js +0 -38
  200. package/dist/generators/documentationUtils.js.map +0 -1
  201. package/dist/generators/incrementalDocumentationGenerator.d.ts +0 -33
  202. package/dist/generators/incrementalDocumentationGenerator.d.ts.map +0 -1
  203. package/dist/generators/incrementalDocumentationGenerator.js +0 -400
  204. package/dist/generators/incrementalDocumentationGenerator.js.map +0 -1
@@ -1,216 +0,0 @@
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.EnhancedDocumentationGenerator = void 0;
37
- const path = __importStar(require("path"));
38
- const moduleGrouper_1 = require("../moduleGrouper");
39
- const shared_1 = require("../shared");
40
- const newDocumentationTemplates_1 = require("./newDocumentationTemplates");
41
- const documentationTemplates_1 = require("./documentationTemplates");
42
- const documentationTypes_1 = require("./documentationTypes");
43
- class EnhancedDocumentationGenerator {
44
- constructor(fileMapper, llmClient) {
45
- this.fileMapper = fileMapper;
46
- this.llmClient = llmClient;
47
- this.moduleGrouper = new moduleGrouper_1.ModuleGrouper(fileMapper);
48
- this.newTemplates = new newDocumentationTemplates_1.NewDocumentationTemplates(llmClient, fileMapper);
49
- this.legacyTemplates = new documentationTemplates_1.DocumentationTemplates(llmClient);
50
- }
51
- async generateDocumentation(repoStructure, outputDir, config = {}, verbose = false) {
52
- const fullConfig = {
53
- enableLegacyDocs: false,
54
- enableNewDocs: true,
55
- focusAreas: [],
56
- maxContentLength: 2000,
57
- includeExamples: true,
58
- ...config
59
- };
60
- const docsDir = path.join(outputDir, 'docs');
61
- await shared_1.GeneratorUtils.ensureDirectoryAndLog(docsDir, verbose, '📚 Generating enhanced documentation in');
62
- const moduleGroups = this.moduleGrouper.getModuleGroups(repoStructure);
63
- if (fullConfig.enableNewDocs) {
64
- await this.generateNewStyleDocumentation(repoStructure, moduleGroups, docsDir, verbose);
65
- }
66
- if (fullConfig.enableLegacyDocs) {
67
- await this.generateLegacyDocumentation(repoStructure, moduleGroups, docsDir, verbose);
68
- }
69
- // Generate combined index
70
- await this.generateMainIndex(docsDir, fullConfig, verbose);
71
- }
72
- async generateNewStyleDocumentation(repoStructure, moduleGroups, docsDir, verbose) {
73
- shared_1.GeneratorUtils.logProgress('🧠 Generating high-level conceptual documentation...', verbose);
74
- const generators = {
75
- 'mental-model': () => this.newTemplates.createMentalModel(repoStructure, moduleGroups),
76
- 'architecture-decisions': () => this.newTemplates.createArchitectureDecisions(repoStructure, moduleGroups),
77
- 'code-organization': () => this.newTemplates.createCodeOrganization(repoStructure, moduleGroups),
78
- 'development-patterns': () => this.newTemplates.createDevelopmentPatterns(repoStructure, moduleGroups),
79
- 'ai-guidelines': () => this.newTemplates.createAIGuidelines(repoStructure, moduleGroups),
80
- 'contributing-workflows': () => this.newTemplates.createContributingWorkflows(repoStructure, moduleGroups),
81
- 'domain-context': () => this.newTemplates.createDomainContext(repoStructure, moduleGroups)
82
- };
83
- for (const docType of documentationTypes_1.NEW_DOCUMENTATION_TYPES) {
84
- try {
85
- const content = await generators[docType]();
86
- const fileName = `${docType}.md`;
87
- const filePath = path.join(docsDir, fileName);
88
- await shared_1.GeneratorUtils.writeFileWithLogging(filePath, content, verbose, `Generated ${shared_1.GeneratorUtils.formatTitle(docType)}`);
89
- }
90
- catch (error) {
91
- shared_1.GeneratorUtils.logError(`Error generating ${docType}`, error, verbose);
92
- }
93
- }
94
- }
95
- async generateLegacyDocumentation(repoStructure, moduleGroups, docsDir, verbose) {
96
- shared_1.GeneratorUtils.logProgress('📁 Generating legacy detailed documentation...', verbose);
97
- // Create legacy subdirectory
98
- const legacyDir = path.join(docsDir, 'legacy');
99
- await shared_1.GeneratorUtils.ensureDirectoryAndLog(legacyDir, verbose, 'Creating legacy docs directory');
100
- // Generate legacy documentation types
101
- const legacyGenerators = [
102
- { name: 'overview.md', generator: () => this.legacyTemplates.createEnhancedProjectOverview(repoStructure) },
103
- { name: 'architecture.md', generator: () => this.legacyTemplates.createArchitectureDocumentation(repoStructure, moduleGroups) },
104
- { name: 'api-reference.md', generator: () => this.legacyTemplates.createAPIReference(repoStructure, moduleGroups) },
105
- { name: 'configuration.md', generator: () => this.legacyTemplates.createConfigurationGuide(repoStructure) },
106
- { name: 'development.md', generator: () => this.legacyTemplates.createDevelopmentGuide(repoStructure, moduleGroups) },
107
- { name: 'deployment.md', generator: () => this.legacyTemplates.createDeploymentGuide(repoStructure) },
108
- { name: 'troubleshooting.md', generator: () => this.legacyTemplates.createTroubleshootingGuide(repoStructure, moduleGroups) }
109
- ];
110
- for (const { name, generator } of legacyGenerators) {
111
- try {
112
- const content = await generator();
113
- const filePath = path.join(legacyDir, name);
114
- await shared_1.GeneratorUtils.writeFileWithLogging(filePath, content, verbose, `Generated legacy ${name}`);
115
- }
116
- catch (error) {
117
- shared_1.GeneratorUtils.logError(`Error generating legacy ${name}`, error, verbose);
118
- }
119
- }
120
- }
121
- async generateMainIndex(docsDir, config, verbose) {
122
- let indexContent;
123
- if (config.enableNewDocs && config.enableLegacyDocs) {
124
- // Both enabled - create combined index
125
- indexContent = this.createCombinedIndex();
126
- }
127
- else if (config.enableNewDocs) {
128
- // Only new docs
129
- indexContent = this.newTemplates.createNewDocumentationIndex(documentationTypes_1.NEW_DOCUMENTATION_TYPES);
130
- }
131
- else {
132
- // Only legacy docs
133
- indexContent = this.createLegacyOnlyIndex();
134
- }
135
- const indexPath = path.join(docsDir, 'README.md');
136
- await shared_1.GeneratorUtils.writeFileWithLogging(indexPath, indexContent, verbose, 'Generated documentation index');
137
- }
138
- createCombinedIndex() {
139
- return `# Documentation Hub
140
-
141
- This project provides two styles of documentation to meet different needs:
142
-
143
- ## 🧠 High-Level Documentation (Recommended)
144
-
145
- **Focus**: Understanding concepts, patterns, and how to work with the codebase
146
-
147
- - [**Mental Model**](./mental-model.md) - Core concepts and metaphors
148
- - [**Architecture Decisions**](./architecture-decisions.md) - Key design choices and rationale
149
- - [**Code Organization**](./code-organization.md) - Structure and organization logic
150
- - [**Development Patterns**](./development-patterns.md) - How to work effectively in this codebase
151
- - [**AI Guidelines**](./ai-guidelines.md) - Guidance for AI agents
152
- - [**Contributing Workflows**](./contributing-workflows.md) - Processes and procedures
153
- - [**Domain Context**](./domain-context.md) - Business and domain knowledge
154
-
155
- ## 📁 Detailed Documentation (Legacy)
156
-
157
- **Focus**: Comprehensive technical details and implementation specifics
158
-
159
- - [**Overview**](./legacy/overview.md) - Project statistics and structure
160
- - [**Architecture**](./legacy/architecture.md) - Technical architecture details
161
- - [**API Reference**](./legacy/api-reference.md) - Complete API documentation
162
- - [**Configuration**](./legacy/configuration.md) - Setup and configuration guides
163
- - [**Development**](./legacy/development.md) - Development environment setup
164
- - [**Deployment**](./legacy/deployment.md) - Deployment procedures
165
- - [**Troubleshooting**](./legacy/troubleshooting.md) - Common issues and solutions
166
-
167
- ## Recommended Reading Order
168
-
169
- **For New Team Members:**
170
- 1. Mental Model → Architecture Decisions → Code Organization → Development Patterns
171
-
172
- **For AI Agents:**
173
- 1. Mental Model → AI Guidelines → Development Patterns → Code Organization
174
-
175
- **For Detailed Reference:**
176
- Legacy documentation provides comprehensive technical details when needed.
177
-
178
- ${shared_1.GeneratorUtils.createGeneratedByFooter('Documentation Hub')}`;
179
- }
180
- createLegacyOnlyIndex() {
181
- return `# Documentation Index
182
-
183
- This documentation provides comprehensive technical details about the project.
184
-
185
- ## Available Documentation
186
-
187
- - [**Overview**](./legacy/overview.md) - Project statistics and structure
188
- - [**Architecture**](./legacy/architecture.md) - Technical architecture details
189
- - [**API Reference**](./legacy/api-reference.md) - Complete API documentation
190
- - [**Configuration**](./legacy/configuration.md) - Setup and configuration guides
191
- - [**Development**](./legacy/development.md) - Development environment setup
192
- - [**Deployment**](./legacy/deployment.md) - Deployment procedures
193
- - [**Troubleshooting**](./legacy/troubleshooting.md) - Common issues and solutions
194
-
195
- ${shared_1.GeneratorUtils.createGeneratedByFooter('Legacy Documentation Index')}`;
196
- }
197
- // Convenience methods for specific documentation types
198
- async generateMentalModelOnly(repoStructure, outputDir, verbose = false) {
199
- const docsDir = path.join(outputDir, 'docs');
200
- await shared_1.GeneratorUtils.ensureDirectoryAndLog(docsDir, verbose, '🧠 Generating mental model documentation');
201
- const moduleGroups = this.moduleGrouper.getModuleGroups(repoStructure);
202
- const content = await this.newTemplates.createMentalModel(repoStructure, moduleGroups);
203
- const filePath = path.join(docsDir, 'mental-model.md');
204
- await shared_1.GeneratorUtils.writeFileWithLogging(filePath, content, verbose, 'Generated Mental Model');
205
- }
206
- async generateAIGuidelinesOnly(repoStructure, outputDir, verbose = false) {
207
- const docsDir = path.join(outputDir, 'docs');
208
- await shared_1.GeneratorUtils.ensureDirectoryAndLog(docsDir, verbose, '🤖 Generating AI guidelines documentation');
209
- const moduleGroups = this.moduleGrouper.getModuleGroups(repoStructure);
210
- const content = await this.newTemplates.createAIGuidelines(repoStructure, moduleGroups);
211
- const filePath = path.join(docsDir, 'ai-guidelines.md');
212
- await shared_1.GeneratorUtils.writeFileWithLogging(filePath, content, verbose, 'Generated AI Guidelines');
213
- }
214
- }
215
- exports.EnhancedDocumentationGenerator = EnhancedDocumentationGenerator;
216
- //# sourceMappingURL=enhancedDocumentationGenerator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"enhancedDocumentationGenerator.js","sourceRoot":"","sources":["../../../src/generators/documentation/enhancedDocumentationGenerator.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- import { RepoStructure } from '../../types';
2
- import { BaseLLMClient } from '../../services/baseLLMClient';
3
- import { ModuleGroup } from '../moduleGrouper';
4
- import { NewDocumentationType } from './documentationTypes';
5
- export declare class NewDocumentationTemplates {
6
- private llmClient;
7
- private analyzer;
8
- constructor(llmClient: BaseLLMClient, fileMapper?: any);
9
- createMentalModel(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
10
- createArchitectureDecisions(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
11
- createCodeOrganization(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
12
- createDevelopmentPatterns(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
13
- createAIGuidelines(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
14
- createContributingWorkflows(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
15
- createDomainContext(repoStructure: RepoStructure, moduleGroups: ModuleGroup[]): Promise<string>;
16
- createNewDocumentationIndex(enabledTypes: NewDocumentationType[]): string;
17
- private buildRepoContext;
18
- }
19
- //# sourceMappingURL=newDocumentationTemplates.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"newDocumentationTemplates.d.ts","sourceRoot":"","sources":["../../../src/generators/documentation/newDocumentationTemplates.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,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAG5D,qBAAa,yBAAyB;IAGxB,OAAO,CAAC,SAAS;IAF7B,OAAO,CAAC,QAAQ,CAAmB;gBAEf,SAAS,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,GAAG;IAIxD,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;IA8BrG,2BAA2B,CAAC,YAAY,EAAE,oBAAoB,EAAE,GAAG,MAAM;IA6DzE,OAAO,CAAC,gBAAgB;CA2BzB"}
@@ -1,307 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NewDocumentationTemplates = void 0;
4
- const shared_1 = require("../shared");
5
- const codebaseAnalyzer_1 = require("../analyzers/codebaseAnalyzer");
6
- class NewDocumentationTemplates {
7
- constructor(llmClient, fileMapper) {
8
- this.llmClient = llmClient;
9
- this.analyzer = new codebaseAnalyzer_1.CodebaseAnalyzer(fileMapper);
10
- }
11
- async createMentalModel(repoStructure, moduleGroups) {
12
- const context = this.buildRepoContext(repoStructure, moduleGroups);
13
- const content = await this.llmClient.generateText(`Create a "Mental Model" document that helps developers and AI agents understand this codebase conceptually.
14
-
15
- Include:
16
- 1. **Core Metaphor**: A real-world analogy that explains what this system does
17
- 2. **Key Abstractions**: The main concepts and how they relate (3-5 core abstractions max)
18
- 3. **Data Flow**: How information moves through the system
19
- 4. **Boundary Definitions**: What this codebase does vs what it doesn't do
20
- 5. **Success Metrics**: How to measure if the system is working well
21
-
22
- Focus on "how to think about this codebase" rather than implementation details.
23
- Use clear, concrete language and avoid jargon.
24
- Keep it under 1500 words.`, context);
25
- return `# Codebase Mental Model
26
-
27
- ${content}
28
-
29
- ${shared_1.GeneratorUtils.createGeneratedByFooter('Mental Model Documentation')}`;
30
- }
31
- async createArchitectureDecisions(repoStructure, moduleGroups) {
32
- const context = this.buildRepoContext(repoStructure, moduleGroups);
33
- // Enhance context with architectural analysis
34
- let enhancedContext = context;
35
- if (this.analyzer) {
36
- try {
37
- const architecturalPatterns = await this.analyzer.analyzeArchitecturalPatterns(repoStructure, moduleGroups);
38
- const dependencyFlow = this.analyzer.analyzeDependencyFlow(repoStructure, moduleGroups);
39
- enhancedContext += `\n\nArchitectural Patterns Detected:
40
- ${architecturalPatterns.map(p => `- ${p.name}: ${p.description} (confidence: ${p.confidence})`).join('\n')}
41
-
42
- Dependency Flow Analysis:
43
- ${dependencyFlow.slice(0, 5).map(d => `- ${d.from} → ${d.to} (strength: ${d.strength.toFixed(2)})`).join('\n')}`;
44
- }
45
- catch (error) {
46
- // Continue without enhanced analysis if it fails
47
- }
48
- }
49
- const content = await this.llmClient.generateText(`Create an "Architecture Decisions" document that explains the key design choices in this codebase.
50
-
51
- For each major decision, include:
52
- 1. **Context**: What problem was being solved?
53
- 2. **Decision**: What approach was chosen?
54
- 3. **Rationale**: Why this approach over alternatives?
55
- 4. **Consequences**: What are the trade-offs?
56
-
57
- Focus on decisions that would help new developers or AI agents understand:
58
- - Technology choices (languages, frameworks, libraries)
59
- - Architectural patterns (how modules interact)
60
- - Design constraints (what limitations shaped decisions)
61
- - Code organization principles
62
-
63
- Use the detected architectural patterns and dependency analysis to inform your decisions.
64
- Limit to 5-7 most important decisions.
65
- Keep explanations concise but complete.`, enhancedContext);
66
- return `# Architecture Decision Records
67
-
68
- ${content}
69
-
70
- ${shared_1.GeneratorUtils.createGeneratedByFooter('Architecture Decisions Documentation')}`;
71
- }
72
- async createCodeOrganization(repoStructure, moduleGroups) {
73
- const context = this.buildRepoContext(repoStructure, moduleGroups);
74
- // Enhance with extension point analysis
75
- let enhancedContext = context;
76
- if (this.analyzer) {
77
- try {
78
- const extensionPoints = this.analyzer.identifyExtensionPoints(repoStructure);
79
- const dependencyFlow = this.analyzer.analyzeDependencyFlow(repoStructure, moduleGroups);
80
- enhancedContext += `\n\nExtension Points Identified:
81
- ${extensionPoints.map(ep => `- ${ep}`).join('\n')}
82
-
83
- Module Dependencies:
84
- ${dependencyFlow.slice(0, 8).map(d => `- ${d.from} depends on ${d.to}`).join('\n')}`;
85
- }
86
- catch (error) {
87
- // Continue without enhanced analysis if it fails
88
- }
89
- }
90
- const content = await this.llmClient.generateText(`Create a "Code Organization Guide" that explains the logic behind this codebase's structure.
91
-
92
- Include:
93
- 1. **Directory Structure Logic**: Why directories are organized this way
94
- 2. **Module Boundaries**: What belongs in each module and why
95
- 3. **Naming Conventions**: Patterns in file/folder/variable names
96
- 4. **Dependency Flow**: How modules depend on each other
97
- 5. **Extension Points**: Where/how to add new functionality
98
-
99
- Make it practical - focus on helping someone understand:
100
- - Where to find specific types of code
101
- - Where to add new features
102
- - How pieces fit together
103
- - What patterns to follow
104
-
105
- Use the identified extension points and dependency analysis to provide concrete guidance.
106
- Avoid listing every file - focus on the organizing principles.`, enhancedContext);
107
- return `# Code Organization Guide
108
-
109
- ${content}
110
-
111
- ${shared_1.GeneratorUtils.createGeneratedByFooter('Code Organization Documentation')}`;
112
- }
113
- async createDevelopmentPatterns(repoStructure, moduleGroups) {
114
- const context = this.buildRepoContext(repoStructure, moduleGroups);
115
- // Enhance with code pattern analysis
116
- let enhancedContext = context;
117
- if (this.analyzer) {
118
- try {
119
- const codePatterns = await this.analyzer.analyzeCodePatterns(repoStructure);
120
- enhancedContext += `\n\nCode Patterns Detected:
121
- ${codePatterns.slice(0, 10).map(p => `- ${p.pattern} (${p.type}): ${p.description} - used ${p.frequency} times`).join('\n')}`;
122
- }
123
- catch (error) {
124
- // Continue without enhanced analysis if it fails
125
- }
126
- }
127
- const content = await this.llmClient.generateText(`Create a "Development Patterns" guide that teaches how to work effectively in this codebase.
128
-
129
- Include:
130
- 1. **Common Workflows**: How to add features, fix bugs, make changes
131
- 2. **Code Patterns**: Established patterns to follow (with examples)
132
- 3. **Testing Strategy**: How testing is approached in this codebase
133
- 4. **Error Handling**: How errors are handled and reported
134
- 5. **Performance Considerations**: What to keep in mind for performance
135
-
136
- Focus on actionable guidance:
137
- - "When you need to X, do Y"
138
- - "This codebase prefers pattern A over pattern B because..."
139
- - "Always/never do X when..."
140
-
141
- Use the detected code patterns to provide specific guidance about what patterns are already established.
142
- Include concrete examples where helpful.
143
- Target both human developers and AI agents.`, enhancedContext);
144
- return `# Development Patterns
145
-
146
- ${content}
147
-
148
- ${shared_1.GeneratorUtils.createGeneratedByFooter('Development Patterns Documentation')}`;
149
- }
150
- async createAIGuidelines(repoStructure, moduleGroups) {
151
- const context = this.buildRepoContext(repoStructure, moduleGroups);
152
- const content = await this.llmClient.generateText(`Create "AI Agent Guidelines" specifically for AI assistants working on this codebase.
153
-
154
- Include:
155
- 1. **Code Style Preferences**: Specific formatting and style rules
156
- 2. **Decision Frameworks**: How to make common technical choices
157
- 3. **Risk Areas**: Parts of the code that need extra careful attention
158
- 4. **Validation Steps**: Checks to perform before suggesting changes
159
- 5. **Context Clues**: How to understand the intent behind existing code
160
-
161
- Format as clear, actionable rules:
162
- - "When modifying X, always check Y"
163
- - "Prefer approach A over B in this codebase"
164
- - "Before changing Z, validate that..."
165
-
166
- Make it specific to this codebase's patterns and conventions.
167
- Focus on preventing common mistakes and maintaining consistency.`, context);
168
- return `# AI Agent Guidelines
169
-
170
- ${content}
171
-
172
- ${shared_1.GeneratorUtils.createGeneratedByFooter('AI Guidelines Documentation')}`;
173
- }
174
- async createContributingWorkflows(repoStructure, moduleGroups) {
175
- const context = this.buildRepoContext(repoStructure, moduleGroups);
176
- const content = await this.llmClient.generateText(`Create a "Contributing Workflows" guide that explains the processes for working on this codebase.
177
-
178
- Include:
179
- 1. **Development Lifecycle**: From idea to deployment
180
- 2. **Code Review Process**: What gets reviewed and how
181
- 3. **Testing Requirements**: What testing is expected
182
- 4. **Release Process**: How changes get deployed
183
- 5. **Communication**: How team members coordinate
184
-
185
- Focus on:
186
- - Step-by-step workflows
187
- - Quality gates and checkpoints
188
- - Tools and automation used
189
- - Standards and expectations
190
-
191
- Make it practical for both new and experienced contributors.
192
- Explain not just what to do, but why these processes exist.`, context);
193
- return `# Contributing Workflows
194
-
195
- ${content}
196
-
197
- ${shared_1.GeneratorUtils.createGeneratedByFooter('Contributing Workflows Documentation')}`;
198
- }
199
- async createDomainContext(repoStructure, moduleGroups) {
200
- const context = this.buildRepoContext(repoStructure, moduleGroups);
201
- const content = await this.llmClient.generateText(`Create a "Domain Context" guide that explains the business/domain knowledge needed to work on this codebase.
202
-
203
- Include:
204
- 1. **Problem Domain**: What real-world problem this software solves
205
- 2. **User Personas**: Who uses this software and how
206
- 3. **Business Rules**: Important constraints and requirements
207
- 4. **Domain Terminology**: Key terms and their meanings
208
- 5. **Success Criteria**: How to measure if the software is successful
209
-
210
- Focus on knowledge that would help someone:
211
- - Understand why certain features exist
212
- - Make good decisions about new features
213
- - Recognize when something doesn't fit the domain
214
- - Communicate effectively with stakeholders
215
-
216
- Avoid deep technical details - focus on the "why" behind the code.`, context);
217
- return `# Domain Context
218
-
219
- ${content}
220
-
221
- ${shared_1.GeneratorUtils.createGeneratedByFooter('Domain Context Documentation')}`;
222
- }
223
- createNewDocumentationIndex(enabledTypes) {
224
- const docDescriptions = {
225
- 'mental-model': {
226
- title: 'Mental Model',
227
- description: 'Core concepts and metaphors for understanding this codebase'
228
- },
229
- 'architecture-decisions': {
230
- title: 'Architecture Decisions',
231
- description: 'Key design choices and their rationale'
232
- },
233
- 'code-organization': {
234
- title: 'Code Organization',
235
- description: 'Logic behind the codebase structure and patterns'
236
- },
237
- 'development-patterns': {
238
- title: 'Development Patterns',
239
- description: 'How to work effectively in this codebase'
240
- },
241
- 'ai-guidelines': {
242
- title: 'AI Guidelines',
243
- description: 'Specific guidance for AI agents working on this code'
244
- },
245
- 'contributing-workflows': {
246
- title: 'Contributing Workflows',
247
- description: 'Processes and procedures for contributing'
248
- },
249
- 'domain-context': {
250
- title: 'Domain Context',
251
- description: 'Business and domain knowledge for this project'
252
- }
253
- };
254
- const sections = enabledTypes.map(type => {
255
- const { title, description } = docDescriptions[type];
256
- return `### [${title}](./${type}.md)
257
- ${description}`;
258
- }).join('\n\n');
259
- return `# High-Level Documentation
260
-
261
- This documentation focuses on helping you understand and work with this codebase effectively, rather than documenting every implementation detail.
262
-
263
- ## Documentation Sections
264
-
265
- ${sections}
266
-
267
- ## How to Use This Documentation
268
-
269
- 1. **Start with Mental Model** - Build the right conceptual framework
270
- 2. **Review Architecture Decisions** - Understand key design choices
271
- 3. **Study Code Organization** - Learn how the code is structured
272
- 4. **Follow Development Patterns** - Work effectively within established patterns
273
- 5. **Reference AI Guidelines** - (For AI agents) Follow codebase-specific guidance
274
-
275
- ## Philosophy
276
-
277
- 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.
278
-
279
- ${shared_1.GeneratorUtils.createGeneratedByFooter('High-Level Documentation Index')}`;
280
- }
281
- buildRepoContext(repoStructure, moduleGroups) {
282
- const topExtensions = shared_1.GeneratorUtils.getTopFileExtensions(repoStructure, 5);
283
- return `Repository Analysis:
284
- - Root Path: ${repoStructure.rootPath}
285
- - Total Files: ${repoStructure.totalFiles}
286
- - Total Size: ${shared_1.GeneratorUtils.formatBytes(repoStructure.totalSize)}
287
- - Primary Languages: ${topExtensions.map(([ext, count]) => `${ext} (${count} files)`).join(', ')}
288
-
289
- Module Structure:
290
- ${moduleGroups.slice(0, 10).map(m => `- ${m.name}: ${m.description} (${m.files.length} files)`).join('\n')}
291
-
292
- Key Directories:
293
- ${[...new Set(repoStructure.files.map(f => f.relativePath.split('/')[0]))]
294
- .filter(dir => !dir.includes('.'))
295
- .slice(0, 10)
296
- .map(dir => `- ${dir}/`)
297
- .join('\n')}
298
-
299
- Configuration Files:
300
- ${repoStructure.files
301
- .filter(f => ['package.json', 'tsconfig.json', '.env', 'README.md'].some(config => f.relativePath.includes(config)))
302
- .map(f => `- ${f.relativePath}`)
303
- .join('\n')}`;
304
- }
305
- }
306
- exports.NewDocumentationTemplates = NewDocumentationTemplates;
307
- //# sourceMappingURL=newDocumentationTemplates.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"newDocumentationTemplates.js","sourceRoot":"","sources":["../../../src/generators/documentation/newDocumentationTemplates.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import { RepoStructure } from '../types';
2
- import { FileMapper } from '../utils/fileMapper';
3
- import { BaseLLMClient } from '../services/baseLLMClient';
4
- export declare class DocumentationGenerator {
5
- private fileMapper;
6
- private llmClient;
7
- private moduleGrouper;
8
- private templates;
9
- constructor(fileMapper: FileMapper, llmClient: BaseLLMClient);
10
- generateDocumentation(repoStructure: RepoStructure, outputDir: string, verbose?: boolean): Promise<void>;
11
- private generateMainIndex;
12
- private generateOverview;
13
- private generateArchitectureDoc;
14
- private generateModuleDocumentation;
15
- private generateAPIReference;
16
- private generateConfigurationGuide;
17
- private generateDevelopmentGuide;
18
- private generateDeploymentGuide;
19
- private generateTroubleshootingGuide;
20
- private createModuleDocumentation;
21
- }
22
- //# sourceMappingURL=documentationGenerator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"documentationGenerator.d.ts","sourceRoot":"","sources":["../../src/generators/documentationGenerator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,aAAa,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAM1D,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,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,IAAI,CAAC;YAoCF,iBAAiB;YAqBjB,gBAAgB;YAmBhB,uBAAuB;YAoBvB,2BAA2B;YA+B3B,oBAAoB;YAmBpB,0BAA0B;YAkB1B,wBAAwB;YAoBxB,uBAAuB;YAmBvB,4BAA4B;YAoB5B,yBAAyB;CA2CxC"}