codingbuddy 2.0.0 → 2.2.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 (183) hide show
  1. package/dist/src/agent/agent-prompt.builder.js +6 -0
  2. package/dist/src/agent/agent-prompt.builder.js.map +1 -1
  3. package/dist/src/app.module.js +4 -0
  4. package/dist/src/app.module.js.map +1 -1
  5. package/dist/src/checklist/checklist.module.d.ts +2 -0
  6. package/dist/src/checklist/checklist.module.js +29 -0
  7. package/dist/src/checklist/checklist.module.js.map +1 -0
  8. package/dist/src/checklist/checklist.schema.d.ts +14 -0
  9. package/dist/src/checklist/checklist.schema.js +189 -0
  10. package/dist/src/checklist/checklist.schema.js.map +1 -0
  11. package/dist/src/checklist/checklist.service.d.ts +21 -0
  12. package/dist/src/checklist/checklist.service.js +258 -0
  13. package/dist/src/checklist/checklist.service.js.map +1 -0
  14. package/dist/src/checklist/checklist.types.d.ts +56 -0
  15. package/dist/src/checklist/checklist.types.js +24 -0
  16. package/dist/src/checklist/checklist.types.js.map +1 -0
  17. package/dist/src/checklist/index.d.ts +3 -0
  18. package/dist/src/checklist/index.js +20 -0
  19. package/dist/src/checklist/index.js.map +1 -0
  20. package/dist/src/cli/cli.js +5 -0
  21. package/dist/src/cli/cli.js.map +1 -1
  22. package/dist/src/cli/cli.types.d.ts +1 -6
  23. package/dist/src/cli/index.d.ts +1 -1
  24. package/dist/src/cli/index.js.map +1 -1
  25. package/dist/src/cli/init/init.command.js +29 -43
  26. package/dist/src/cli/init/init.command.js.map +1 -1
  27. package/dist/src/cli/init/init.wizard.d.ts +22 -0
  28. package/dist/src/cli/init/init.wizard.js +277 -0
  29. package/dist/src/cli/init/init.wizard.js.map +1 -0
  30. package/dist/src/cli/init/prompts/agent-prompt.d.ts +9 -0
  31. package/dist/src/cli/init/prompts/agent-prompt.js +28 -0
  32. package/dist/src/cli/init/prompts/agent-prompt.js.map +1 -0
  33. package/dist/src/cli/init/prompts/architecture-prompt.d.ts +16 -0
  34. package/dist/src/cli/init/prompts/architecture-prompt.js +66 -0
  35. package/dist/src/cli/init/prompts/architecture-prompt.js.map +1 -0
  36. package/dist/src/cli/init/prompts/basic-prompt.d.ts +13 -0
  37. package/dist/src/cli/init/prompts/basic-prompt.js +53 -0
  38. package/dist/src/cli/init/prompts/basic-prompt.js.map +1 -0
  39. package/dist/src/cli/init/prompts/conventions-prompt.d.ts +19 -0
  40. package/dist/src/cli/init/prompts/conventions-prompt.js +74 -0
  41. package/dist/src/cli/init/prompts/conventions-prompt.js.map +1 -0
  42. package/dist/src/cli/init/prompts/index.d.ts +15 -0
  43. package/dist/src/cli/init/prompts/index.js +35 -1
  44. package/dist/src/cli/init/prompts/index.js.map +1 -1
  45. package/dist/src/cli/init/prompts/language-prompt.d.ts +8 -0
  46. package/dist/src/cli/init/prompts/language-prompt.js +30 -0
  47. package/dist/src/cli/init/prompts/language-prompt.js.map +1 -0
  48. package/dist/src/cli/init/prompts/model-prompt.js +2 -2
  49. package/dist/src/cli/init/prompts/model-prompt.js.map +1 -1
  50. package/dist/src/cli/init/prompts/tech-stack-prompt.d.ts +22 -0
  51. package/dist/src/cli/init/prompts/tech-stack-prompt.js +68 -0
  52. package/dist/src/cli/init/prompts/tech-stack-prompt.js.map +1 -0
  53. package/dist/src/cli/init/prompts/test-strategy-prompt.d.ts +19 -0
  54. package/dist/src/cli/init/prompts/test-strategy-prompt.js +75 -0
  55. package/dist/src/cli/init/prompts/test-strategy-prompt.js.map +1 -0
  56. package/dist/src/cli/init/summary/index.d.ts +2 -0
  57. package/dist/src/cli/init/summary/index.js +9 -0
  58. package/dist/src/cli/init/summary/index.js.map +1 -0
  59. package/dist/src/cli/init/summary/summary.prompt.d.ts +7 -0
  60. package/dist/src/cli/init/summary/summary.prompt.js +22 -0
  61. package/dist/src/cli/init/summary/summary.prompt.js.map +1 -0
  62. package/dist/src/cli/init/summary/summary.renderer.d.ts +32 -0
  63. package/dist/src/cli/init/summary/summary.renderer.js +41 -0
  64. package/dist/src/cli/init/summary/summary.renderer.js.map +1 -0
  65. package/dist/src/cli/init/templates/config-renderer.d.ts +42 -0
  66. package/dist/src/cli/init/templates/config-renderer.js +247 -0
  67. package/dist/src/cli/init/templates/config-renderer.js.map +1 -0
  68. package/dist/src/cli/init/templates/index.d.ts +1 -0
  69. package/dist/src/cli/init/templates/index.js +5 -1
  70. package/dist/src/cli/init/templates/index.js.map +1 -1
  71. package/dist/src/cli/init/templates/template.renderer.js +16 -6
  72. package/dist/src/cli/init/templates/template.renderer.js.map +1 -1
  73. package/dist/src/cli/init/templates/template.types.d.ts +1 -0
  74. package/dist/src/cli/utils/console.js +26 -7
  75. package/dist/src/cli/utils/console.js.map +1 -1
  76. package/dist/src/config/config.loader.d.ts +1 -0
  77. package/dist/src/config/config.loader.js +23 -0
  78. package/dist/src/config/config.loader.js.map +1 -1
  79. package/dist/src/config/config.schema.d.ts +7 -0
  80. package/dist/src/config/config.schema.js +5 -1
  81. package/dist/src/config/config.schema.js.map +1 -1
  82. package/dist/src/config/config.service.d.ts +1 -0
  83. package/dist/src/config/config.service.js +26 -1
  84. package/dist/src/config/config.service.js.map +1 -1
  85. package/dist/src/context/context.module.d.ts +2 -0
  86. package/dist/src/context/context.module.js +23 -0
  87. package/dist/src/context/context.module.js.map +1 -0
  88. package/dist/src/context/context.service.d.ts +21 -0
  89. package/dist/src/context/context.service.js +286 -0
  90. package/dist/src/context/context.service.js.map +1 -0
  91. package/dist/src/context/context.types.d.ts +50 -0
  92. package/dist/src/context/context.types.js +42 -0
  93. package/dist/src/context/context.types.js.map +1 -0
  94. package/dist/src/context/index.d.ts +3 -0
  95. package/dist/src/context/index.js +20 -0
  96. package/dist/src/context/index.js.map +1 -0
  97. package/dist/src/context/intent-patterns.d.ts +7 -0
  98. package/dist/src/context/intent-patterns.js +50 -0
  99. package/dist/src/context/intent-patterns.js.map +1 -0
  100. package/dist/src/keyword/auto-executor.d.ts +17 -0
  101. package/dist/src/keyword/auto-executor.js +95 -0
  102. package/dist/src/keyword/auto-executor.js.map +1 -0
  103. package/dist/src/keyword/auto-executor.types.d.ts +44 -0
  104. package/dist/src/keyword/auto-executor.types.js +7 -0
  105. package/dist/src/keyword/auto-executor.types.js.map +1 -0
  106. package/dist/src/keyword/auto-formatter.d.ts +8 -0
  107. package/dist/src/keyword/auto-formatter.js +79 -0
  108. package/dist/src/keyword/auto-formatter.js.map +1 -0
  109. package/dist/src/keyword/index.d.ts +9 -0
  110. package/dist/src/keyword/index.js +28 -0
  111. package/dist/src/keyword/index.js.map +1 -0
  112. package/dist/src/keyword/keyword.service.d.ts +6 -2
  113. package/dist/src/keyword/keyword.service.js +24 -6
  114. package/dist/src/keyword/keyword.service.js.map +1 -1
  115. package/dist/src/keyword/keyword.types.d.ts +24 -5
  116. package/dist/src/keyword/keyword.types.js +78 -3
  117. package/dist/src/keyword/keyword.types.js.map +1 -1
  118. package/dist/src/keyword/primary-agent-resolver.d.ts +6 -0
  119. package/dist/src/keyword/primary-agent-resolver.js +211 -0
  120. package/dist/src/keyword/primary-agent-resolver.js.map +1 -1
  121. package/dist/src/keyword/rule-filter.js +1 -0
  122. package/dist/src/keyword/rule-filter.js.map +1 -1
  123. package/dist/src/mcp/handlers/agent.handler.d.ts +11 -0
  124. package/dist/src/mcp/handlers/agent.handler.js +167 -0
  125. package/dist/src/mcp/handlers/agent.handler.js.map +1 -0
  126. package/dist/src/mcp/handlers/base.handler.d.ts +15 -0
  127. package/dist/src/mcp/handlers/base.handler.js +3 -0
  128. package/dist/src/mcp/handlers/base.handler.js.map +1 -0
  129. package/dist/src/mcp/handlers/checklist-context.handler.d.ts +13 -0
  130. package/dist/src/mcp/handlers/checklist-context.handler.js +141 -0
  131. package/dist/src/mcp/handlers/checklist-context.handler.js.map +1 -0
  132. package/dist/src/mcp/handlers/config.handler.d.ts +15 -0
  133. package/dist/src/mcp/handlers/config.handler.js +104 -0
  134. package/dist/src/mcp/handlers/config.handler.js.map +1 -0
  135. package/dist/src/mcp/handlers/index.d.ts +8 -0
  136. package/dist/src/mcp/handlers/index.js +17 -0
  137. package/dist/src/mcp/handlers/index.js.map +1 -0
  138. package/dist/src/mcp/handlers/mode.handler.d.ts +16 -0
  139. package/dist/src/mcp/handlers/mode.handler.js +100 -0
  140. package/dist/src/mcp/handlers/mode.handler.js.map +1 -0
  141. package/dist/src/mcp/handlers/rules.handler.d.ts +11 -0
  142. package/dist/src/mcp/handlers/rules.handler.js +99 -0
  143. package/dist/src/mcp/handlers/rules.handler.js.map +1 -0
  144. package/dist/src/mcp/handlers/skill.handler.d.ts +11 -0
  145. package/dist/src/mcp/handlers/skill.handler.js +111 -0
  146. package/dist/src/mcp/handlers/skill.handler.js.map +1 -0
  147. package/dist/src/mcp/mcp-serverless.js +5 -0
  148. package/dist/src/mcp/mcp-serverless.js.map +1 -1
  149. package/dist/src/mcp/mcp.module.js +26 -1
  150. package/dist/src/mcp/mcp.module.js.map +1 -1
  151. package/dist/src/mcp/mcp.service.d.ts +3 -25
  152. package/dist/src/mcp/mcp.service.js +13 -366
  153. package/dist/src/mcp/mcp.service.js.map +1 -1
  154. package/dist/src/model/index.d.ts +1 -0
  155. package/dist/src/model/index.js +3 -0
  156. package/dist/src/model/index.js.map +1 -1
  157. package/dist/src/model/model-resolver.service.d.ts +13 -0
  158. package/dist/src/model/model-resolver.service.js +63 -0
  159. package/dist/src/model/model-resolver.service.js.map +1 -0
  160. package/dist/src/model/model.constants.js.map +1 -1
  161. package/dist/src/model/model.resolver.js +10 -1
  162. package/dist/src/model/model.resolver.js.map +1 -1
  163. package/dist/src/shared/filesystem.interface.d.ts +15 -0
  164. package/dist/src/shared/filesystem.interface.js +14 -0
  165. package/dist/src/shared/filesystem.interface.js.map +1 -0
  166. package/dist/src/shared/node-filesystem.service.d.ts +5 -0
  167. package/dist/src/shared/node-filesystem.service.js +25 -0
  168. package/dist/src/shared/node-filesystem.service.js.map +1 -0
  169. package/dist/src/shared/path.utils.js.map +1 -1
  170. package/dist/src/shared/pattern-matcher.d.ts +11 -0
  171. package/dist/src/shared/pattern-matcher.js +39 -0
  172. package/dist/src/shared/pattern-matcher.js.map +1 -0
  173. package/dist/src/shared/security.utils.d.ts +17 -0
  174. package/dist/src/shared/security.utils.js +63 -0
  175. package/dist/src/shared/security.utils.js.map +1 -1
  176. package/dist/src/shared/validation.constants.d.ts +10 -0
  177. package/dist/src/shared/validation.constants.js +42 -1
  178. package/dist/src/shared/validation.constants.js.map +1 -1
  179. package/dist/tsconfig.build.tsbuildinfo +1 -1
  180. package/package.json +3 -2
  181. package/dist/src/config/config.types.d.ts +0 -2
  182. package/dist/src/config/config.types.js +0 -6
  183. package/dist/src/config/config.types.js.map +0 -1
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SUMMARY_ACTION_CHOICES = exports.promptSummaryAction = exports.renderConfigSummary = void 0;
4
+ var summary_renderer_1 = require("./summary.renderer");
5
+ Object.defineProperty(exports, "renderConfigSummary", { enumerable: true, get: function () { return summary_renderer_1.renderConfigSummary; } });
6
+ var summary_prompt_1 = require("./summary.prompt");
7
+ Object.defineProperty(exports, "promptSummaryAction", { enumerable: true, get: function () { return summary_prompt_1.promptSummaryAction; } });
8
+ Object.defineProperty(exports, "SUMMARY_ACTION_CHOICES", { enumerable: true, get: function () { return summary_prompt_1.SUMMARY_ACTION_CHOICES; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/cli/init/summary/index.ts"],"names":[],"mappings":";;;AAMA,uDAG4B;AAF1B,uHAAA,mBAAmB,OAAA;AAIrB,mDAK0B;AAJxB,qHAAA,mBAAmB,OAAA;AACnB,wHAAA,sBAAsB,OAAA"}
@@ -0,0 +1,7 @@
1
+ export type SummaryAction = 'confirm' | 'edit-basic' | 'edit-tech-stack' | 'edit-architecture' | 'edit-conventions' | 'edit-test-strategy' | 'edit-ai' | 'cancel';
2
+ export interface SummaryChoice {
3
+ name: string;
4
+ value: SummaryAction;
5
+ }
6
+ export declare const SUMMARY_ACTION_CHOICES: SummaryChoice[];
7
+ export declare function promptSummaryAction(): Promise<SummaryAction>;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SUMMARY_ACTION_CHOICES = void 0;
4
+ exports.promptSummaryAction = promptSummaryAction;
5
+ const prompts_1 = require("@inquirer/prompts");
6
+ exports.SUMMARY_ACTION_CHOICES = [
7
+ { name: '[Confirm] ✅ Confirm and generate config', value: 'confirm' },
8
+ { name: '[Edit Basic] ✏️ Edit Basic settings', value: 'edit-basic' },
9
+ { name: '[Edit Tech] ✏️ Edit Tech Stack', value: 'edit-tech-stack' },
10
+ { name: '[Edit Arch] ✏️ Edit Architecture', value: 'edit-architecture' },
11
+ { name: '[Edit Conv] ✏️ Edit Conventions', value: 'edit-conventions' },
12
+ { name: '[Edit Test] ✏️ Edit Test Strategy', value: 'edit-test-strategy' },
13
+ { name: '[Edit AI] ✏️ Edit AI settings', value: 'edit-ai' },
14
+ { name: '[Cancel] ❌ Cancel', value: 'cancel' },
15
+ ];
16
+ async function promptSummaryAction() {
17
+ return (0, prompts_1.select)({
18
+ message: 'What would you like to do?',
19
+ choices: exports.SUMMARY_ACTION_CHOICES,
20
+ });
21
+ }
22
+ //# sourceMappingURL=summary.prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"summary.prompt.js","sourceRoot":"","sources":["../../../../../src/cli/init/summary/summary.prompt.ts"],"names":[],"mappings":";;;AAyDA,kDAKC;AAxDD,+CAA2C;AAqC9B,QAAA,sBAAsB,GAAoB;IACrD,EAAE,IAAI,EAAE,yCAAyC,EAAE,KAAK,EAAE,SAAS,EAAE;IACrE,EAAE,IAAI,EAAE,sCAAsC,EAAE,KAAK,EAAE,YAAY,EAAE;IACrE,EAAE,IAAI,EAAE,iCAAiC,EAAE,KAAK,EAAE,iBAAiB,EAAE;IACrE,EAAE,IAAI,EAAE,mCAAmC,EAAE,KAAK,EAAE,mBAAmB,EAAE;IACzE,EAAE,IAAI,EAAE,kCAAkC,EAAE,KAAK,EAAE,kBAAkB,EAAE;IACvE,EAAE,IAAI,EAAE,oCAAoC,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAC3E,EAAE,IAAI,EAAE,gCAAgC,EAAE,KAAK,EAAE,SAAS,EAAE;IAC5D,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,QAAQ,EAAE;CAC/C,CAAC;AAKK,KAAK,UAAU,mBAAmB;IACvC,OAAO,IAAA,gBAAM,EAAC;QACZ,OAAO,EAAE,4BAA4B;QACrC,OAAO,EAAE,8BAAsB;KAChC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,32 @@
1
+ export interface ConfigSummaryData {
2
+ basic: {
3
+ language: string;
4
+ projectName: string;
5
+ description: string;
6
+ };
7
+ techStack: {
8
+ languages: string[];
9
+ frontend: string[];
10
+ backend: string[];
11
+ tools: string[];
12
+ };
13
+ architecture: {
14
+ pattern: string;
15
+ componentStyle: string;
16
+ };
17
+ conventions: {
18
+ fileNaming: string;
19
+ quotes: 'single' | 'double';
20
+ semicolons: boolean;
21
+ };
22
+ testStrategy: {
23
+ approach: string;
24
+ coverage: number;
25
+ mockingStrategy: string;
26
+ };
27
+ ai: {
28
+ defaultModel: string;
29
+ primaryAgent: string;
30
+ };
31
+ }
32
+ export declare function renderConfigSummary(data: ConfigSummaryData): string;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.renderConfigSummary = renderConfigSummary;
4
+ function formatArray(arr) {
5
+ return arr.length > 0 ? arr.join(', ') : '(none)';
6
+ }
7
+ function renderConfigSummary(data) {
8
+ const lines = [];
9
+ lines.push('');
10
+ lines.push(' [Basic]');
11
+ lines.push(` Language: ${data.basic.language}`);
12
+ lines.push(` Project: ${data.basic.projectName}`);
13
+ lines.push(` Description: ${data.basic.description || '(none)'}`);
14
+ lines.push('');
15
+ lines.push(' [Tech Stack]');
16
+ lines.push(` Languages: ${formatArray(data.techStack.languages)}`);
17
+ lines.push(` Frontend: ${formatArray(data.techStack.frontend)}`);
18
+ lines.push(` Backend: ${formatArray(data.techStack.backend)}`);
19
+ lines.push(` Tools: ${formatArray(data.techStack.tools)}`);
20
+ lines.push('');
21
+ lines.push(' [Architecture]');
22
+ lines.push(` Pattern: ${data.architecture.pattern}`);
23
+ lines.push(` Style: ${data.architecture.componentStyle}`);
24
+ lines.push('');
25
+ lines.push(' [Conventions]');
26
+ lines.push(` Files: ${data.conventions.fileNaming}`);
27
+ lines.push(` Quotes: ${data.conventions.quotes}`);
28
+ lines.push(` Semicolons: ${data.conventions.semicolons ? 'yes' : 'no'}`);
29
+ lines.push('');
30
+ lines.push(' [Test Strategy]');
31
+ lines.push(` Approach: ${data.testStrategy.approach}`);
32
+ lines.push(` Coverage: ${data.testStrategy.coverage}%`);
33
+ lines.push(` Mocking: ${data.testStrategy.mockingStrategy}`);
34
+ lines.push('');
35
+ lines.push(' [AI]');
36
+ lines.push(` Model: ${data.ai.defaultModel}`);
37
+ lines.push(` Agent: ${data.ai.primaryAgent}`);
38
+ lines.push('');
39
+ return lines.join('\n');
40
+ }
41
+ //# sourceMappingURL=summary.renderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"summary.renderer.js","sourceRoot":"","sources":["../../../../../src/cli/init/summary/summary.renderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ interface ConfigObject {
2
+ language?: string;
3
+ projectName?: string;
4
+ description?: string;
5
+ techStack?: {
6
+ languages?: string[];
7
+ frontend?: string[];
8
+ backend?: string[];
9
+ database?: string[];
10
+ infrastructure?: string[];
11
+ tools?: string[];
12
+ };
13
+ architecture?: {
14
+ pattern?: string;
15
+ componentStyle?: string;
16
+ structure?: string[];
17
+ };
18
+ conventions?: {
19
+ naming?: {
20
+ files?: string;
21
+ components?: string;
22
+ functions?: string;
23
+ variables?: string;
24
+ };
25
+ quotes?: string;
26
+ semicolons?: boolean;
27
+ };
28
+ testStrategy?: {
29
+ approach?: string;
30
+ coverage?: number;
31
+ mockingStrategy?: string;
32
+ frameworks?: string[];
33
+ };
34
+ ai?: {
35
+ defaultModel?: string;
36
+ primaryAgent?: string;
37
+ };
38
+ }
39
+ export declare function renderConfigObjectAsJs(config: ConfigObject): string;
40
+ export declare function renderConfigObjectAsJson(config: ConfigObject): string;
41
+ export declare function escapeJsString(str: string): string;
42
+ export {};
@@ -0,0 +1,247 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.renderConfigObjectAsJs = renderConfigObjectAsJs;
4
+ exports.renderConfigObjectAsJson = renderConfigObjectAsJson;
5
+ exports.escapeJsString = escapeJsString;
6
+ function renderConfigObjectAsJs(config) {
7
+ const lines = [];
8
+ lines.push('/**');
9
+ lines.push(' * Codingbuddy Configuration');
10
+ lines.push(' *');
11
+ lines.push(' * Generated by `codingbuddy init`');
12
+ lines.push(' * @see https://github.com/anthropics/codingbuddy');
13
+ lines.push(' */');
14
+ lines.push('');
15
+ lines.push('module.exports = {');
16
+ if (config.language) {
17
+ lines.push(` language: '${escapeJsString(config.language)}',`);
18
+ lines.push('');
19
+ }
20
+ if (config.projectName) {
21
+ lines.push(` projectName: '${escapeJsString(config.projectName)}',`);
22
+ }
23
+ if (config.description) {
24
+ lines.push(` description: '${escapeJsString(config.description)}',`);
25
+ }
26
+ if (config.projectName || config.description) {
27
+ lines.push('');
28
+ }
29
+ if (config.techStack && hasNonEmptyArrays(config.techStack)) {
30
+ lines.push(' techStack: {');
31
+ lines.push(...renderTechStack(config.techStack));
32
+ lines.push(' },');
33
+ lines.push('');
34
+ }
35
+ if (config.architecture && hasProperties(config.architecture)) {
36
+ lines.push(' architecture: {');
37
+ lines.push(...renderArchitecture(config.architecture));
38
+ lines.push(' },');
39
+ lines.push('');
40
+ }
41
+ if (config.conventions && hasProperties(config.conventions)) {
42
+ lines.push(' conventions: {');
43
+ lines.push(...renderConventions(config.conventions));
44
+ lines.push(' },');
45
+ lines.push('');
46
+ }
47
+ if (config.testStrategy && hasProperties(config.testStrategy)) {
48
+ lines.push(' testStrategy: {');
49
+ lines.push(...renderTestStrategy(config.testStrategy));
50
+ lines.push(' },');
51
+ lines.push('');
52
+ }
53
+ if (config.ai && hasProperties(config.ai)) {
54
+ lines.push(' ai: {');
55
+ if (config.ai.defaultModel) {
56
+ lines.push(` defaultModel: '${escapeJsString(config.ai.defaultModel)}',`);
57
+ }
58
+ if (config.ai.primaryAgent) {
59
+ lines.push(` primaryAgent: '${escapeJsString(config.ai.primaryAgent)}',`);
60
+ }
61
+ lines.push(' },');
62
+ }
63
+ lines.push('};');
64
+ return lines.join('\n');
65
+ }
66
+ function renderConfigObjectAsJson(config) {
67
+ const cleanedConfig = cleanConfig(config);
68
+ return JSON.stringify(cleanedConfig, null, 2);
69
+ }
70
+ function cleanConfig(config) {
71
+ const result = {};
72
+ if (config.language)
73
+ result.language = config.language;
74
+ if (config.projectName)
75
+ result.projectName = config.projectName;
76
+ if (config.description)
77
+ result.description = config.description;
78
+ if (config.techStack) {
79
+ const techStack = {};
80
+ if (config.techStack.languages?.length)
81
+ techStack.languages = config.techStack.languages;
82
+ if (config.techStack.frontend?.length)
83
+ techStack.frontend = config.techStack.frontend;
84
+ if (config.techStack.backend?.length)
85
+ techStack.backend = config.techStack.backend;
86
+ if (config.techStack.database?.length)
87
+ techStack.database = config.techStack.database;
88
+ if (config.techStack.infrastructure?.length)
89
+ techStack.infrastructure = config.techStack.infrastructure;
90
+ if (config.techStack.tools?.length)
91
+ techStack.tools = config.techStack.tools;
92
+ if (hasProperties(techStack))
93
+ result.techStack = techStack;
94
+ }
95
+ if (config.architecture) {
96
+ const arch = {};
97
+ if (config.architecture.pattern)
98
+ arch.pattern = config.architecture.pattern;
99
+ if (config.architecture.componentStyle)
100
+ arch.componentStyle = config.architecture.componentStyle;
101
+ if (config.architecture.structure?.length)
102
+ arch.structure = config.architecture.structure;
103
+ if (hasProperties(arch))
104
+ result.architecture = arch;
105
+ }
106
+ if (config.conventions) {
107
+ const conv = {};
108
+ if (config.conventions.naming && hasProperties(config.conventions.naming)) {
109
+ conv.naming = {};
110
+ if (config.conventions.naming.files)
111
+ conv.naming.files = config.conventions.naming.files;
112
+ if (config.conventions.naming.components)
113
+ conv.naming.components = config.conventions.naming.components;
114
+ if (config.conventions.naming.functions)
115
+ conv.naming.functions = config.conventions.naming.functions;
116
+ if (config.conventions.naming.variables)
117
+ conv.naming.variables = config.conventions.naming.variables;
118
+ }
119
+ if (config.conventions.quotes)
120
+ conv.quotes = config.conventions.quotes;
121
+ if (config.conventions.semicolons !== undefined)
122
+ conv.semicolons = config.conventions.semicolons;
123
+ if (hasProperties(conv))
124
+ result.conventions = conv;
125
+ }
126
+ if (config.testStrategy) {
127
+ const test = {};
128
+ if (config.testStrategy.approach)
129
+ test.approach = config.testStrategy.approach;
130
+ if (config.testStrategy.coverage !== undefined)
131
+ test.coverage = config.testStrategy.coverage;
132
+ if (config.testStrategy.mockingStrategy)
133
+ test.mockingStrategy = config.testStrategy.mockingStrategy;
134
+ if (config.testStrategy.frameworks?.length)
135
+ test.frameworks = config.testStrategy.frameworks;
136
+ if (hasProperties(test))
137
+ result.testStrategy = test;
138
+ }
139
+ if (config.ai) {
140
+ const ai = {};
141
+ if (config.ai.defaultModel)
142
+ ai.defaultModel = config.ai.defaultModel;
143
+ if (config.ai.primaryAgent)
144
+ ai.primaryAgent = config.ai.primaryAgent;
145
+ if (hasProperties(ai))
146
+ result.ai = ai;
147
+ }
148
+ return result;
149
+ }
150
+ function hasNonEmptyArrays(obj) {
151
+ return Object.values(obj).some(v => Array.isArray(v) && v.length > 0);
152
+ }
153
+ function hasProperties(obj) {
154
+ return Object.values(obj).some(v => v !== undefined && v !== null);
155
+ }
156
+ function renderTechStack(techStack) {
157
+ const lines = [];
158
+ if (techStack.languages?.length) {
159
+ lines.push(` languages: [${formatStringArray(techStack.languages)}],`);
160
+ }
161
+ if (techStack.frontend?.length) {
162
+ lines.push(` frontend: [${formatStringArray(techStack.frontend)}],`);
163
+ }
164
+ if (techStack.backend?.length) {
165
+ lines.push(` backend: [${formatStringArray(techStack.backend)}],`);
166
+ }
167
+ if (techStack.database?.length) {
168
+ lines.push(` database: [${formatStringArray(techStack.database)}],`);
169
+ }
170
+ if (techStack.infrastructure?.length) {
171
+ lines.push(` infrastructure: [${formatStringArray(techStack.infrastructure)}],`);
172
+ }
173
+ if (techStack.tools?.length) {
174
+ lines.push(` tools: [${formatStringArray(techStack.tools)}],`);
175
+ }
176
+ return lines;
177
+ }
178
+ function renderArchitecture(arch) {
179
+ const lines = [];
180
+ if (arch.pattern) {
181
+ lines.push(` pattern: '${escapeJsString(arch.pattern)}',`);
182
+ }
183
+ if (arch.componentStyle) {
184
+ lines.push(` componentStyle: '${escapeJsString(arch.componentStyle)}',`);
185
+ }
186
+ if (arch.structure?.length) {
187
+ lines.push(` structure: [${formatStringArray(arch.structure)}],`);
188
+ }
189
+ return lines;
190
+ }
191
+ function renderConventions(conv) {
192
+ const lines = [];
193
+ if (conv.naming && hasProperties(conv.naming)) {
194
+ lines.push(' naming: {');
195
+ if (conv.naming.files) {
196
+ lines.push(` files: '${escapeJsString(conv.naming.files)}',`);
197
+ }
198
+ if (conv.naming.components) {
199
+ lines.push(` components: '${escapeJsString(conv.naming.components)}',`);
200
+ }
201
+ if (conv.naming.functions) {
202
+ lines.push(` functions: '${escapeJsString(conv.naming.functions)}',`);
203
+ }
204
+ if (conv.naming.variables) {
205
+ lines.push(` variables: '${escapeJsString(conv.naming.variables)}',`);
206
+ }
207
+ lines.push(' },');
208
+ }
209
+ if (conv.quotes) {
210
+ lines.push(` quotes: '${escapeJsString(conv.quotes)}',`);
211
+ }
212
+ if (conv.semicolons !== undefined) {
213
+ lines.push(` semicolons: ${conv.semicolons},`);
214
+ }
215
+ return lines;
216
+ }
217
+ function renderTestStrategy(test) {
218
+ const lines = [];
219
+ if (test.approach) {
220
+ lines.push(` approach: '${escapeJsString(test.approach)}',`);
221
+ }
222
+ if (test.coverage !== undefined) {
223
+ lines.push(` coverage: ${test.coverage},`);
224
+ }
225
+ if (test.mockingStrategy) {
226
+ lines.push(` mockingStrategy: '${escapeJsString(test.mockingStrategy)}',`);
227
+ }
228
+ if (test.frameworks?.length) {
229
+ lines.push(` frameworks: [${formatStringArray(test.frameworks)}],`);
230
+ }
231
+ return lines;
232
+ }
233
+ function escapeJsString(str) {
234
+ return (str
235
+ .replace(/\\/g, '\\\\')
236
+ .replace(/'/g, "\\'")
237
+ .replace(/\n/g, '\\n')
238
+ .replace(/\r/g, '\\r')
239
+ .replace(/\t/g, '\\t')
240
+ .replace(/\x00/g, '\\x00')
241
+ .replace(/\u2028/g, '\\u2028')
242
+ .replace(/\u2029/g, '\\u2029'));
243
+ }
244
+ function formatStringArray(arr) {
245
+ return arr.map(s => `'${escapeJsString(s)}'`).join(', ');
246
+ }
247
+ //# sourceMappingURL=config-renderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-renderer.js","sourceRoot":"","sources":["../../../../../src/cli/init/templates/config-renderer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export type { FrameworkType, TemplateMetadata, ConfigTemplate, ConfigComments, TemplateSelectionResult, TemplateRenderOptions, } from './template.types';
2
2
  export { selectTemplate, getTemplateById, getAllTemplates, } from './template.selector';
3
3
  export { renderConfigAsJs, renderConfigAsJson } from './template.renderer';
4
+ export { renderConfigObjectAsJs, renderConfigObjectAsJson, escapeJsString, } from './config-renderer';
4
5
  export { TEMPLATES } from './frameworks';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TEMPLATES = exports.renderConfigAsJson = exports.renderConfigAsJs = exports.getAllTemplates = exports.getTemplateById = exports.selectTemplate = void 0;
3
+ exports.TEMPLATES = exports.escapeJsString = exports.renderConfigObjectAsJson = exports.renderConfigObjectAsJs = exports.renderConfigAsJson = exports.renderConfigAsJs = exports.getAllTemplates = exports.getTemplateById = exports.selectTemplate = void 0;
4
4
  var template_selector_1 = require("./template.selector");
5
5
  Object.defineProperty(exports, "selectTemplate", { enumerable: true, get: function () { return template_selector_1.selectTemplate; } });
6
6
  Object.defineProperty(exports, "getTemplateById", { enumerable: true, get: function () { return template_selector_1.getTemplateById; } });
@@ -8,6 +8,10 @@ Object.defineProperty(exports, "getAllTemplates", { enumerable: true, get: funct
8
8
  var template_renderer_1 = require("./template.renderer");
9
9
  Object.defineProperty(exports, "renderConfigAsJs", { enumerable: true, get: function () { return template_renderer_1.renderConfigAsJs; } });
10
10
  Object.defineProperty(exports, "renderConfigAsJson", { enumerable: true, get: function () { return template_renderer_1.renderConfigAsJson; } });
11
+ var config_renderer_1 = require("./config-renderer");
12
+ Object.defineProperty(exports, "renderConfigObjectAsJs", { enumerable: true, get: function () { return config_renderer_1.renderConfigObjectAsJs; } });
13
+ Object.defineProperty(exports, "renderConfigObjectAsJson", { enumerable: true, get: function () { return config_renderer_1.renderConfigObjectAsJson; } });
14
+ Object.defineProperty(exports, "escapeJsString", { enumerable: true, get: function () { return config_renderer_1.escapeJsString; } });
11
15
  var frameworks_1 = require("./frameworks");
12
16
  Object.defineProperty(exports, "TEMPLATES", { enumerable: true, get: function () { return frameworks_1.TEMPLATES; } });
13
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/cli/init/templates/index.ts"],"names":[],"mappings":";;;AAiBA,yDAI6B;AAH3B,mHAAA,cAAc,OAAA;AACd,oHAAA,eAAe,OAAA;AACf,oHAAA,eAAe,OAAA;AAIjB,yDAA2E;AAAlE,qHAAA,gBAAgB,OAAA;AAAE,uHAAA,kBAAkB,OAAA;AAG7C,2CAAyC;AAAhC,uGAAA,SAAS,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/cli/init/templates/index.ts"],"names":[],"mappings":";;;AAiBA,yDAI6B;AAH3B,mHAAA,cAAc,OAAA;AACd,oHAAA,eAAe,OAAA;AACf,oHAAA,eAAe,OAAA;AAIjB,yDAA2E;AAAlE,qHAAA,gBAAgB,OAAA;AAAE,uHAAA,kBAAkB,OAAA;AAG7C,qDAI2B;AAHzB,yHAAA,sBAAsB,OAAA;AACtB,2HAAA,wBAAwB,OAAA;AACxB,iHAAA,cAAc,OAAA;AAIhB,2CAAyC;AAAhC,uGAAA,SAAS,OAAA"}
@@ -62,10 +62,15 @@ function renderConfigAsJs(template, options = {}) {
62
62
  lines.push(' },');
63
63
  lines.push('');
64
64
  }
65
- if (options.defaultModel) {
66
- lines.push(' // AI Model Configuration');
65
+ if (options.defaultModel || options.primaryAgent) {
66
+ lines.push(' // AI Configuration');
67
67
  lines.push(' ai: {');
68
- lines.push(` defaultModel: '${options.defaultModel}',`);
68
+ if (options.defaultModel) {
69
+ lines.push(` defaultModel: '${options.defaultModel}',`);
70
+ }
71
+ if (options.primaryAgent) {
72
+ lines.push(` primaryAgent: '${options.primaryAgent}',`);
73
+ }
69
74
  lines.push(' },');
70
75
  }
71
76
  lines.push('};');
@@ -77,9 +82,14 @@ function renderConfigAsJs(template, options = {}) {
77
82
  }
78
83
  function renderConfigAsJson(template, options = {}) {
79
84
  const config = applyOverrides(template.config, options);
80
- const configWithAi = options.defaultModel
81
- ? { ...config, ai: { defaultModel: options.defaultModel } }
82
- : config;
85
+ const aiConfig = {};
86
+ if (options.defaultModel) {
87
+ aiConfig.defaultModel = options.defaultModel;
88
+ }
89
+ if (options.primaryAgent) {
90
+ aiConfig.primaryAgent = options.primaryAgent;
91
+ }
92
+ const configWithAi = Object.keys(aiConfig).length > 0 ? { ...config, ai: aiConfig } : config;
83
93
  return JSON.stringify(configWithAi, null, 2);
84
94
  }
85
95
  function applyOverrides(config, options) {
@@ -1 +1 @@
1
- {"version":3,"file":"template.renderer.js","sourceRoot":"","sources":["../../../../../src/cli/init/templates/template.renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template.renderer.js","sourceRoot":"","sources":["../../../../../src/cli/init/templates/template.renderer.ts"],"names":[],"mappings":"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"}
@@ -31,4 +31,5 @@ export interface TemplateRenderOptions {
31
31
  projectName?: string;
32
32
  includeComments?: boolean;
33
33
  defaultModel?: string;
34
+ primaryAgent?: string;
34
35
  }
@@ -2,14 +2,33 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.consoleUtils = void 0;
4
4
  exports.createConsoleUtils = createConsoleUtils;
5
- const colors = {
6
- reset: '\x1b[0m',
7
- green: '\x1b[32m',
8
- yellow: '\x1b[33m',
9
- red: '\x1b[31m',
10
- cyan: '\x1b[36m',
11
- };
5
+ function shouldDisableColors() {
6
+ const forceColor = process.env.FORCE_COLOR;
7
+ if (forceColor !== undefined) {
8
+ return forceColor === '0';
9
+ }
10
+ return process.env.NO_COLOR !== undefined;
11
+ }
12
+ function getColors() {
13
+ if (shouldDisableColors()) {
14
+ return {
15
+ reset: '',
16
+ green: '',
17
+ yellow: '',
18
+ red: '',
19
+ cyan: '',
20
+ };
21
+ }
22
+ return {
23
+ reset: '\x1b[0m',
24
+ green: '\x1b[32m',
25
+ yellow: '\x1b[33m',
26
+ red: '\x1b[31m',
27
+ cyan: '\x1b[36m',
28
+ };
29
+ }
12
30
  function createConsoleUtils() {
31
+ const colors = getColors();
13
32
  const log = {
14
33
  info(message) {
15
34
  process.stdout.write(`${colors.cyan}ℹ${colors.reset} ${message}\n`);
@@ -1 +1 @@
1
- {"version":3,"file":"console.js","sourceRoot":"","sources":["../../../../src/cli/utils/console.ts"],"names":[],"mappings":";;;AAiCA,gDAwBC;AAnCD,MAAM,MAAM,GAAG;IACb,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,GAAG,EAAE,UAAU;IACf,IAAI,EAAE,UAAU;CACjB,CAAC;AAKF,SAAgB,kBAAkB;IAChC,MAAM,GAAG,GAAG;QACV,IAAI,CAAC,OAAe;YAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,CAAC;QACtE,CAAC;QAED,OAAO,CAAC,OAAe;YACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,CAAC,OAAe;YAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,CAAC;QACxE,CAAC;QAED,KAAK,CAAC,OAAe;YACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,CAAC,KAAa,EAAE,OAAe;YACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,OAAO,IAAI,CAAC,CAAC;QAChD,CAAC;KACF,CAAC;IAEF,OAAO,EAAE,GAAG,EAAE,CAAC;AACjB,CAAC;AAKY,QAAA,YAAY,GAAG,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"console.js","sourceRoot":"","sources":["../../../../src/cli/utils/console.ts"],"names":[],"mappings":";;;AAoEA,gDA0BC;AAjED,SAAS,mBAAmB;IAC1B,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAG3C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAE7B,OAAO,UAAU,KAAK,GAAG,CAAC;IAC5B,CAAC;IAGD,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC;AAC5C,CAAC;AAKD,SAAS,SAAS;IAChB,IAAI,mBAAmB,EAAE,EAAE,CAAC;QAC1B,OAAO;YACL,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;YACV,GAAG,EAAE,EAAE;YACP,IAAI,EAAE,EAAE;SACT,CAAC;IACJ,CAAC;IAED,OAAO;QACL,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,UAAU;QAClB,GAAG,EAAE,UAAU;QACf,IAAI,EAAE,UAAU;KACjB,CAAC;AACJ,CAAC;AAKD,SAAgB,kBAAkB;IAChC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,MAAM,GAAG,GAAG;QACV,IAAI,CAAC,OAAe;YAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,CAAC;QACtE,CAAC;QAED,OAAO,CAAC,OAAe;YACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,CAAC,OAAe;YAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,CAAC;QACxE,CAAC;QAED,KAAK,CAAC,OAAe;YACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,CAAC,KAAa,EAAE,OAAe;YACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,OAAO,IAAI,CAAC,CAAC;QAChD,CAAC;KACF,CAAC;IAEF,OAAO,EAAE,GAAG,EAAE,CAAC;AACjB,CAAC;AAKY,QAAA,YAAY,GAAG,kBAAkB,EAAE,CAAC"}
@@ -11,6 +11,7 @@ export declare class ConfigLoadError extends Error {
11
11
  constructor(message: string, filePath: string, cause?: Error | undefined);
12
12
  }
13
13
  export declare function findConfigFile(projectRoot: string): string | null;
14
+ export declare function findProjectRoot(startDir?: string): string;
14
15
  export declare function loadJsConfig(filePath: string): Promise<unknown>;
15
16
  export declare function loadJsonConfig(filePath: string): Promise<unknown>;
16
17
  export declare function loadConfigFromFile(filePath: string): Promise<unknown>;