codingbuddy 2.1.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.
- package/dist/src/agent/agent-prompt.builder.js +6 -0
- package/dist/src/agent/agent-prompt.builder.js.map +1 -1
- package/dist/src/cli/cli.js +5 -0
- package/dist/src/cli/cli.js.map +1 -1
- package/dist/src/cli/cli.types.d.ts +1 -0
- package/dist/src/cli/init/init.command.js +29 -52
- package/dist/src/cli/init/init.command.js.map +1 -1
- package/dist/src/cli/init/init.wizard.d.ts +22 -0
- package/dist/src/cli/init/init.wizard.js +277 -0
- package/dist/src/cli/init/init.wizard.js.map +1 -0
- package/dist/src/cli/init/prompts/architecture-prompt.d.ts +16 -0
- package/dist/src/cli/init/prompts/architecture-prompt.js +66 -0
- package/dist/src/cli/init/prompts/architecture-prompt.js.map +1 -0
- package/dist/src/cli/init/prompts/basic-prompt.d.ts +13 -0
- package/dist/src/cli/init/prompts/basic-prompt.js +53 -0
- package/dist/src/cli/init/prompts/basic-prompt.js.map +1 -0
- package/dist/src/cli/init/prompts/conventions-prompt.d.ts +19 -0
- package/dist/src/cli/init/prompts/conventions-prompt.js +74 -0
- package/dist/src/cli/init/prompts/conventions-prompt.js.map +1 -0
- package/dist/src/cli/init/prompts/index.d.ts +10 -0
- package/dist/src/cli/init/prompts/index.js +27 -1
- package/dist/src/cli/init/prompts/index.js.map +1 -1
- package/dist/src/cli/init/prompts/language-prompt.d.ts +1 -1
- package/dist/src/cli/init/prompts/model-prompt.js +2 -2
- package/dist/src/cli/init/prompts/model-prompt.js.map +1 -1
- package/dist/src/cli/init/prompts/tech-stack-prompt.d.ts +22 -0
- package/dist/src/cli/init/prompts/tech-stack-prompt.js +68 -0
- package/dist/src/cli/init/prompts/tech-stack-prompt.js.map +1 -0
- package/dist/src/cli/init/prompts/test-strategy-prompt.d.ts +19 -0
- package/dist/src/cli/init/prompts/test-strategy-prompt.js +75 -0
- package/dist/src/cli/init/prompts/test-strategy-prompt.js.map +1 -0
- package/dist/src/cli/init/summary/index.d.ts +2 -0
- package/dist/src/cli/init/summary/index.js +9 -0
- package/dist/src/cli/init/summary/index.js.map +1 -0
- package/dist/src/cli/init/summary/summary.prompt.d.ts +7 -0
- package/dist/src/cli/init/summary/summary.prompt.js +22 -0
- package/dist/src/cli/init/summary/summary.prompt.js.map +1 -0
- package/dist/src/cli/init/summary/summary.renderer.d.ts +32 -0
- package/dist/src/cli/init/summary/summary.renderer.js +41 -0
- package/dist/src/cli/init/summary/summary.renderer.js.map +1 -0
- package/dist/src/cli/init/templates/config-renderer.d.ts +42 -0
- package/dist/src/cli/init/templates/config-renderer.js +247 -0
- package/dist/src/cli/init/templates/config-renderer.js.map +1 -0
- package/dist/src/cli/init/templates/index.d.ts +1 -0
- package/dist/src/cli/init/templates/index.js +5 -1
- package/dist/src/cli/init/templates/index.js.map +1 -1
- package/dist/src/cli/utils/console.js +26 -7
- package/dist/src/cli/utils/console.js.map +1 -1
- package/dist/src/config/config.loader.d.ts +1 -0
- package/dist/src/config/config.loader.js +23 -0
- package/dist/src/config/config.loader.js.map +1 -1
- package/dist/src/config/config.schema.d.ts +7 -0
- package/dist/src/config/config.schema.js +5 -1
- package/dist/src/config/config.schema.js.map +1 -1
- package/dist/src/config/config.service.d.ts +1 -0
- package/dist/src/config/config.service.js +26 -1
- package/dist/src/config/config.service.js.map +1 -1
- package/dist/src/keyword/auto-executor.d.ts +17 -0
- package/dist/src/keyword/auto-executor.js +95 -0
- package/dist/src/keyword/auto-executor.js.map +1 -0
- package/dist/src/keyword/auto-executor.types.d.ts +44 -0
- package/dist/src/keyword/auto-executor.types.js +7 -0
- package/dist/src/keyword/auto-executor.types.js.map +1 -0
- package/dist/src/keyword/auto-formatter.d.ts +8 -0
- package/dist/src/keyword/auto-formatter.js +79 -0
- package/dist/src/keyword/auto-formatter.js.map +1 -0
- package/dist/src/keyword/index.d.ts +9 -0
- package/dist/src/keyword/index.js +28 -0
- package/dist/src/keyword/index.js.map +1 -0
- package/dist/src/keyword/keyword.service.js +17 -0
- package/dist/src/keyword/keyword.service.js.map +1 -1
- package/dist/src/keyword/keyword.types.d.ts +11 -5
- package/dist/src/keyword/keyword.types.js +22 -9
- package/dist/src/keyword/keyword.types.js.map +1 -1
- package/dist/src/keyword/rule-filter.js +1 -0
- package/dist/src/keyword/rule-filter.js.map +1 -1
- package/dist/src/mcp/mcp-serverless.js +5 -0
- package/dist/src/mcp/mcp-serverless.js.map +1 -1
- package/dist/src/model/model.constants.js.map +1 -1
- package/dist/src/model/model.resolver.js +8 -0
- package/dist/src/model/model.resolver.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -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"}
|
|
@@ -2,14 +2,33 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.consoleUtils = void 0;
|
|
4
4
|
exports.createConsoleUtils = createConsoleUtils;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
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":";;;
|
|
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>;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ConfigLoadError = exports.CONFIG_FILE_NAMES = void 0;
|
|
4
4
|
exports.findConfigFile = findConfigFile;
|
|
5
|
+
exports.findProjectRoot = findProjectRoot;
|
|
5
6
|
exports.loadJsConfig = loadJsConfig;
|
|
6
7
|
exports.loadJsonConfig = loadJsonConfig;
|
|
7
8
|
exports.loadConfigFromFile = loadConfigFromFile;
|
|
@@ -38,6 +39,28 @@ function findConfigFile(projectRoot) {
|
|
|
38
39
|
}
|
|
39
40
|
return null;
|
|
40
41
|
}
|
|
42
|
+
const MAX_PARENT_TRAVERSAL = 10;
|
|
43
|
+
function findProjectRoot(startDir) {
|
|
44
|
+
const start = startDir ?? process.cwd();
|
|
45
|
+
let currentDir = path.resolve(start);
|
|
46
|
+
let traversalCount = 0;
|
|
47
|
+
while (traversalCount < MAX_PARENT_TRAVERSAL) {
|
|
48
|
+
if (findConfigFile(currentDir) !== null) {
|
|
49
|
+
return currentDir;
|
|
50
|
+
}
|
|
51
|
+
const packageJsonPath = path.join(currentDir, 'package.json');
|
|
52
|
+
if ((0, fs_1.existsSync)(packageJsonPath)) {
|
|
53
|
+
return currentDir;
|
|
54
|
+
}
|
|
55
|
+
const parentDir = path.dirname(currentDir);
|
|
56
|
+
if (parentDir === currentDir) {
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
currentDir = parentDir;
|
|
60
|
+
traversalCount++;
|
|
61
|
+
}
|
|
62
|
+
return start;
|
|
63
|
+
}
|
|
41
64
|
async function loadJsConfig(filePath) {
|
|
42
65
|
try {
|
|
43
66
|
const fileUrl = (0, url_1.pathToFileURL)(filePath).href;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.loader.js","sourceRoot":"","sources":["../../../src/config/config.loader.ts"],"names":[],"mappings":";;;AA4CA,wCAQC;AAKD,oCAeC;AAKD,wCAkBC;AAKD,gDAYC;AAKD,oDAqBC;AAKD,gCAGC;AAKD,gDAMC;AAQD,gCA6BC;AAKD,sCAEC;
|
|
1
|
+
{"version":3,"file":"config.loader.js","sourceRoot":"","sources":["../../../src/config/config.loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -135,6 +135,9 @@ export declare const AIConfigSchema: z.ZodObject<{
|
|
|
135
135
|
defaultModel: z.ZodOptional<z.ZodString>;
|
|
136
136
|
primaryAgent: z.ZodOptional<z.ZodString>;
|
|
137
137
|
}, z.core.$strip>;
|
|
138
|
+
export declare const AutoConfigSchema: z.ZodObject<{
|
|
139
|
+
maxIterations: z.ZodDefault<z.ZodNumber>;
|
|
140
|
+
}, z.core.$strip>;
|
|
138
141
|
export declare const CodingBuddyConfigSchema: z.ZodObject<{
|
|
139
142
|
language: z.ZodOptional<z.ZodString>;
|
|
140
143
|
projectName: z.ZodOptional<z.ZodString>;
|
|
@@ -234,6 +237,9 @@ export declare const CodingBuddyConfigSchema: z.ZodObject<{
|
|
|
234
237
|
defaultModel: z.ZodOptional<z.ZodString>;
|
|
235
238
|
primaryAgent: z.ZodOptional<z.ZodString>;
|
|
236
239
|
}, z.core.$strip>>;
|
|
240
|
+
auto: z.ZodOptional<z.ZodObject<{
|
|
241
|
+
maxIterations: z.ZodDefault<z.ZodNumber>;
|
|
242
|
+
}, z.core.$strip>>;
|
|
237
243
|
keyFiles: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
238
244
|
avoid: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
239
245
|
custom: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
@@ -246,6 +252,7 @@ export type ArchitectureConfig = z.infer<typeof ArchitectureConfigSchema>;
|
|
|
246
252
|
export type ConventionsConfig = z.infer<typeof ConventionsConfigSchema>;
|
|
247
253
|
export type TestStrategyConfig = z.infer<typeof TestStrategyConfigSchema>;
|
|
248
254
|
export type AIConfig = z.infer<typeof AIConfigSchema>;
|
|
255
|
+
export type AutoConfig = z.infer<typeof AutoConfigSchema>;
|
|
249
256
|
export type CodingBuddyConfig = z.infer<typeof CodingBuddyConfigSchema>;
|
|
250
257
|
export interface ValidationResult {
|
|
251
258
|
success: boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CodingBuddyConfigSchema = exports.AIConfigSchema = exports.TestStrategyConfigSchema = exports.ConventionsConfigSchema = exports.ArchitectureConfigSchema = exports.TechStackConfigSchema = exports.NamingConventionSchema = exports.ArchitectureLayerSchema = exports.TechDetailSchema = void 0;
|
|
3
|
+
exports.CodingBuddyConfigSchema = exports.AutoConfigSchema = exports.AIConfigSchema = exports.TestStrategyConfigSchema = exports.ConventionsConfigSchema = exports.ArchitectureConfigSchema = exports.TechStackConfigSchema = exports.NamingConventionSchema = exports.ArchitectureLayerSchema = exports.TechDetailSchema = void 0;
|
|
4
4
|
exports.validateConfig = validateConfig;
|
|
5
5
|
exports.parseConfig = parseConfig;
|
|
6
6
|
exports.isCodingBuddyConfig = isCodingBuddyConfig;
|
|
@@ -63,6 +63,9 @@ exports.AIConfigSchema = zod_1.z.object({
|
|
|
63
63
|
defaultModel: zod_1.z.string().optional(),
|
|
64
64
|
primaryAgent: zod_1.z.string().optional(),
|
|
65
65
|
});
|
|
66
|
+
exports.AutoConfigSchema = zod_1.z.object({
|
|
67
|
+
maxIterations: zod_1.z.number().int().min(1).max(10).default(3),
|
|
68
|
+
});
|
|
66
69
|
exports.CodingBuddyConfigSchema = zod_1.z.object({
|
|
67
70
|
language: zod_1.z.string().optional(),
|
|
68
71
|
projectName: zod_1.z.string().optional(),
|
|
@@ -73,6 +76,7 @@ exports.CodingBuddyConfigSchema = zod_1.z.object({
|
|
|
73
76
|
conventions: exports.ConventionsConfigSchema.optional(),
|
|
74
77
|
testStrategy: exports.TestStrategyConfigSchema.optional(),
|
|
75
78
|
ai: exports.AIConfigSchema.optional(),
|
|
79
|
+
auto: exports.AutoConfigSchema.optional(),
|
|
76
80
|
keyFiles: zod_1.z.array(zod_1.z.string()).optional(),
|
|
77
81
|
avoid: zod_1.z.array(zod_1.z.string()).optional(),
|
|
78
82
|
custom: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()).optional(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.schema.js","sourceRoot":"","sources":["../../../src/config/config.schema.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"config.schema.js","sourceRoot":"","sources":["../../../src/config/config.schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,8 @@ var ConfigService_1;
|
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
exports.ConfigService = void 0;
|
|
14
14
|
const common_1 = require("@nestjs/common");
|
|
15
|
+
const fs_1 = require("fs");
|
|
16
|
+
const path = require("path");
|
|
15
17
|
const config_loader_1 = require("./config.loader");
|
|
16
18
|
const ignore_parser_1 = require("./ignore.parser");
|
|
17
19
|
const context_loader_1 = require("./context.loader");
|
|
@@ -20,7 +22,30 @@ let ConfigService = ConfigService_1 = class ConfigService {
|
|
|
20
22
|
this.logger = new common_1.Logger(ConfigService_1.name);
|
|
21
23
|
this.projectConfig = null;
|
|
22
24
|
this.isLoaded = false;
|
|
23
|
-
this.projectRoot =
|
|
25
|
+
this.projectRoot = this.resolveProjectRoot();
|
|
26
|
+
}
|
|
27
|
+
resolveProjectRoot() {
|
|
28
|
+
const envRoot = process.env.CODINGBUDDY_PROJECT_ROOT;
|
|
29
|
+
if (envRoot) {
|
|
30
|
+
const normalizedPath = path.resolve(envRoot);
|
|
31
|
+
if ((0, fs_1.existsSync)(normalizedPath)) {
|
|
32
|
+
try {
|
|
33
|
+
const stat = (0, fs_1.statSync)(normalizedPath);
|
|
34
|
+
if (stat.isDirectory()) {
|
|
35
|
+
this.logger.log(`Using project root from CODINGBUDDY_PROJECT_ROOT: ${normalizedPath}`);
|
|
36
|
+
return normalizedPath;
|
|
37
|
+
}
|
|
38
|
+
this.logger.warn(`CODINGBUDDY_PROJECT_ROOT is not a directory: ${normalizedPath}, falling back to auto-detect`);
|
|
39
|
+
}
|
|
40
|
+
catch {
|
|
41
|
+
this.logger.warn(`Failed to stat CODINGBUDDY_PROJECT_ROOT: ${normalizedPath}, falling back to auto-detect`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
this.logger.warn(`CODINGBUDDY_PROJECT_ROOT path does not exist: ${normalizedPath}, falling back to auto-detect`);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return (0, config_loader_1.findProjectRoot)();
|
|
24
49
|
}
|
|
25
50
|
async onModuleInit() {
|
|
26
51
|
await this.loadProjectConfig();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.service.js","sourceRoot":"","sources":["../../../src/config/config.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAkE;AAClE,
|
|
1
|
+
{"version":3,"file":"config.service.js","sourceRoot":"","sources":["../../../src/config/config.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { AutoExecutorOptions, AutoResult, EvalSummary, AutoProgressCallback } from './auto-executor.types';
|
|
2
|
+
import type { ParseModeResult } from './keyword.types';
|
|
3
|
+
export interface AutoExecutorDependencies {
|
|
4
|
+
parsePlan: (prompt: string) => Promise<ParseModeResult>;
|
|
5
|
+
parseAct: (prompt: string) => Promise<ParseModeResult>;
|
|
6
|
+
parseEval: (prompt: string) => Promise<ParseModeResult>;
|
|
7
|
+
extractEvalSummary: (evalResult: ParseModeResult) => EvalSummary;
|
|
8
|
+
}
|
|
9
|
+
export declare class AutoExecutor {
|
|
10
|
+
private readonly deps;
|
|
11
|
+
private readonly progressCallback?;
|
|
12
|
+
constructor(deps: AutoExecutorDependencies, progressCallback?: AutoProgressCallback | undefined);
|
|
13
|
+
execute(options: AutoExecutorOptions): Promise<AutoResult>;
|
|
14
|
+
isQualityAchieved(summary: EvalSummary): boolean;
|
|
15
|
+
private buildPrompt;
|
|
16
|
+
private buildFallbackPrompt;
|
|
17
|
+
}
|