yuangs 5.35.0 → 5.36.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/README.md CHANGED
@@ -739,3 +739,4 @@ yuangs diff-edit status <id> # Check action status
739
739
 
740
740
  diff-edit使本项目有了质的变化。^-^
741
741
 
742
+ // test change
@@ -47,6 +47,10 @@ const TodoManager_1 = require("../../core/git/TodoManager");
47
47
  const CodeReviewer_1 = require("../../core/git/CodeReviewer");
48
48
  const constants_1 = require("../../core/git/constants");
49
49
  const CodeGenerator_1 = require("../../core/git/CodeGenerator");
50
+ const CommitMessageGenerator_1 = require("../../core/git/CommitMessageGenerator");
51
+ const ErrorHandler_1 = require("../../core/git/ErrorHandler");
52
+ const ProgressManager_1 = require("../../core/git/ProgressManager");
53
+ const ContextGatherer_1 = require("../../core/git/ContextGatherer");
50
54
  /**
51
55
  * 执行单个任务
52
56
  */
@@ -57,18 +61,42 @@ async function executeTask(task, context, model, previousFeedback) {
57
61
  content: `你是一个资深软件工程师。请根据任务描述生成完整的代码实现。
58
62
 
59
63
  **重要输出格式要求:**
60
- 对于每个需要创建或修改的文件,请使用以下格式:
64
+ 对于每个需要创建或修改的文件,请使用以下格式之一:
61
65
 
62
66
  ### 文件: src/path/to/file.ts
63
67
  \`\`\`typescript
64
68
  // 完整的文件代码
65
69
  \`\`\`
66
70
 
71
+ \`\`\`filepath
72
+ 文件路径
73
+ \`\`\`
74
+ \`\`\`code
75
+ 代码内容
76
+ \`\`\`
77
+
78
+ **src/path/to/file.ts**
79
+ \`\`\`typescript
80
+ // 代码内容
81
+ \`\`\`
82
+
83
+ ## 📄 文件:\`filename.ext\`
84
+ \`\`\`code
85
+ 代码内容
86
+ \`\`\`
87
+
88
+ ### 📄 文件:\`filename.ext\`
89
+ \`\`\`html
90
+ 代码内容
91
+ \`\`\`
92
+
67
93
  要求:
68
94
  1. 明确指出每个文件的完整路径
69
95
  2. 提供完整的、可直接使用的代码
70
96
  3. 包含必要的注释
71
- 4. 遵循最佳实践`
97
+ 4. 遵循最佳实践
98
+ 5. 确保文件路径格式正确
99
+ 6. 使用代码块标识符(如 \`\`\`typescript, \`\`\`code, \`\`\`html 等)`
72
100
  },
73
101
  {
74
102
  role: 'user',
@@ -86,11 +114,19 @@ ${previousFeedback ? `\n[上次实现的问题]\n${previousFeedback}\n\n请根
86
114
  }
87
115
  ];
88
116
  try {
89
- const response = await (0, llm_1.runLLM)({
117
+ const response = await (0, ErrorHandler_1.withRetry)(() => (0, llm_1.runLLM)({
90
118
  prompt: { messages: prompt },
91
119
  model,
92
120
  stream: false,
93
121
  bypassRouter: true
122
+ }), {
123
+ maxAttempts: 3,
124
+ delay: 1000,
125
+ backoff: true,
126
+ shouldRetry: ErrorHandler_1.isRetryableError,
127
+ onRetry: (error, attempt) => {
128
+ console.log(chalk_1.default.yellow(`⚠️ AI 调用失败,第 ${attempt} 次重试...`));
129
+ }
94
130
  });
95
131
  return { code: response.rawText, success: true };
96
132
  }
@@ -101,14 +137,22 @@ ${previousFeedback ? `\n[上次实现的问题]\n${previousFeedback}\n\n请根
101
137
  /**
102
138
  * 执行代码审查
103
139
  */
104
- async function reviewCode() {
140
+ async function reviewCode(staged = true) {
105
141
  try {
106
142
  const { CodeReviewer } = await Promise.resolve().then(() => __importStar(require('../../core/git/CodeReviewer')));
107
143
  const { getRouter } = await Promise.resolve().then(() => __importStar(require('../../core/modelRouter')));
108
144
  const gitService = new GitService_1.GitService();
109
145
  const router = getRouter();
110
146
  const reviewer = new CodeReviewer(gitService, router);
111
- const result = await reviewer.review(CodeReviewer_1.ReviewLevel.STANDARD, true);
147
+ const result = await (0, ErrorHandler_1.withRetry)(() => reviewer.review(CodeReviewer_1.ReviewLevel.STANDARD, staged), {
148
+ maxAttempts: 2,
149
+ delay: 500,
150
+ backoff: true,
151
+ shouldRetry: ErrorHandler_1.isRetryableError,
152
+ onRetry: (error, attempt) => {
153
+ console.log(chalk_1.default.yellow(`⚠️ 代码审查失败,第 ${attempt} 次重试...`));
154
+ }
155
+ });
112
156
  return {
113
157
  score: result.score,
114
158
  issues: result.issues.map(i => `${i.severity}: ${i.message}`)
@@ -137,10 +181,13 @@ function registerAutoCommand(gitCmd) {
137
181
  .option('--min-score <score>', '最低审查分数', '85')
138
182
  .option('--skip-review', '跳过代码审查')
139
183
  .option('--save-only', '只保存代码,不写入文件系统')
184
+ .option('--commit', '所有任务完成后自动提交')
185
+ .option('--commit-message <msg>', '自定义提交信息(使用 --commit 时生效)')
140
186
  .action(async (options) => {
141
187
  const todoPath = path_1.default.join(process.cwd(), 'todo.md');
142
188
  const maxTasks = parseInt(options.maxTasks) || 5;
143
189
  const minScore = parseInt(options.minScore) || constants_1.MIN_REVIEW_SCORE;
190
+ const progressManager = new ProgressManager_1.ProgressManager();
144
191
  console.log(chalk_1.default.bold.cyan('\n🤖 启动全自动 AI 开发工作流...\n'));
145
192
  console.log(chalk_1.default.gray(`📋 最大任务数: ${maxTasks}`));
146
193
  console.log(chalk_1.default.gray(`🎯 最低审查分数: ${minScore}`));
@@ -159,6 +206,14 @@ function registerAutoCommand(gitCmd) {
159
206
  spinner.succeed(`发现 ${tasks.length} 个任务`);
160
207
  const progress = (0, TodoManager_1.calculateProgress)(tasks);
161
208
  console.log(chalk_1.default.cyan(`📊 当前进度: ${progress.completed}/${progress.total}\n`));
209
+ // 初始化进度管理器
210
+ await progressManager.initialize({
211
+ minScore,
212
+ skipReview: options.skipReview,
213
+ saveOnly: options.saveOnly,
214
+ commit: options.commit,
215
+ commitMessage: options.commitMessage
216
+ });
162
217
  let tasksExecuted = 0;
163
218
  // 3. 循环执行任务
164
219
  while (tasksExecuted < maxTasks) {
@@ -182,7 +237,13 @@ function registerAutoCommand(gitCmd) {
182
237
  const previousFeedback = attempts > 1 && nextTask.reviewIssues
183
238
  ? nextTask.reviewIssues.join('\n')
184
239
  : undefined;
185
- const { code, success } = await executeTask(nextTask, rawContent, options.model, previousFeedback);
240
+ // 采集真实上下文
241
+ spinner.text = `[尝试 ${attempts}] 正在采集项目上下文...`;
242
+ const gitService = new GitService_1.GitService();
243
+ const gatherer = new ContextGatherer_1.ContextGatherer(gitService);
244
+ const gathered = await gatherer.gather(nextTask.description);
245
+ spinner.text = `[尝试 ${attempts}/${constants_1.MAX_RETRY_ATTEMPTS + 1}] 正在生成实现方案...`;
246
+ const { code, success } = await executeTask(nextTask, gathered.summary, options.model, previousFeedback);
186
247
  if (!success) {
187
248
  spinner.fail('代码生成失败');
188
249
  await (0, TodoManager_1.updateTaskStatus)(todoPath, nextTask.index, {
@@ -199,6 +260,17 @@ function registerAutoCommand(gitCmd) {
199
260
  if (generated.files.length > 0) {
200
261
  console.log(chalk_1.default.cyan(`\n📦 检测到 ${generated.files.length} 个文件:\n`));
201
262
  if (!options.saveOnly) {
263
+ // 写入前备份
264
+ spinner.start('正在备份当前文件状态...');
265
+ let backupId;
266
+ try {
267
+ const backup = await (0, CodeGenerator_1.backupFiles)(generated.files);
268
+ backupId = backup.id;
269
+ spinner.succeed('文件状态已备份');
270
+ }
271
+ catch (e) {
272
+ spinner.warn('备份失败,继续执行');
273
+ }
202
274
  const { written, skipped } = await (0, CodeGenerator_1.writeGeneratedCode)(generated);
203
275
  if (written.length > 0) {
204
276
  console.log(chalk_1.default.green(`\n✅ 成功写入 ${written.length} 个文件`));
@@ -206,6 +278,11 @@ function registerAutoCommand(gitCmd) {
206
278
  if (skipped.length > 0) {
207
279
  console.log(chalk_1.default.yellow(`⚠️ 跳过 ${skipped.length} 个文件`));
208
280
  }
281
+ // 保存备份ID
282
+ await (0, TodoManager_1.updateTaskStatus)(todoPath, nextTask.index, {
283
+ backupId
284
+ });
285
+ nextTask.backupId = backupId;
209
286
  }
210
287
  else {
211
288
  console.log(chalk_1.default.gray(' (--save-only 模式,未写入文件系统)'));
@@ -216,12 +293,19 @@ function registerAutoCommand(gitCmd) {
216
293
  }
217
294
  else {
218
295
  console.log(chalk_1.default.yellow('\n⚠️ 未检测到可解析的文件路径和代码'));
219
- console.log(chalk_1.default.gray('💡 提示:请检查 AI 输出格式,或查看原始输出文件'));
296
+ console.log(chalk_1.default.yellow('\n💡 可能的原因:'));
297
+ console.log(chalk_1.default.gray(' 1. AI 输出格式不符合要求'));
298
+ console.log(chalk_1.default.gray(' 2. 文件路径标识不正确'));
299
+ console.log(chalk_1.default.gray(' 3. 代码块格式错误'));
300
+ console.log(chalk_1.default.cyan(`\n📄 原始输出文件: ${path_1.default.relative(process.cwd(), savedPath)}`));
301
+ console.log(chalk_1.default.gray('\n💡 提示:请检查原始输出文件,确认格式是否正确'));
302
+ console.log(chalk_1.default.gray('\n支持的格式: ### 文件: path, **path**, ```filepath/path```, ## 📄 文件:`path``'));
220
303
  }
221
304
  // 3b. 代码审查(如果未跳过)
222
305
  if (!options.skipReview) {
223
306
  spinner.start('正在进行代码审查...');
224
- const review = await reviewCode();
307
+ // 审查刚刚写入但尚未暂存的文件 (staged: false)
308
+ const review = await reviewCode(false);
225
309
  spinner.succeed(`审查完成 (评分: ${review.score}/100)`);
226
310
  await (0, TodoManager_1.updateTaskStatus)(todoPath, nextTask.index, {
227
311
  reviewScore: review.score,
@@ -250,6 +334,18 @@ function registerAutoCommand(gitCmd) {
250
334
  }
251
335
  else {
252
336
  console.log(chalk_1.default.red(`\n❌ 已达最大重试次数,跳过此任务\n`));
337
+ // 回滚代码
338
+ if (nextTask.backupId) {
339
+ spinner.start('正在回滚代码变更...');
340
+ try {
341
+ await (0, CodeGenerator_1.restoreFromBackup)(nextTask.backupId);
342
+ spinner.succeed('代码已回滚');
343
+ }
344
+ catch (e) {
345
+ const errorMsg = e instanceof Error ? e.message : '未知错误';
346
+ spinner.warn(`回滚失败: ${errorMsg}`);
347
+ }
348
+ }
253
349
  await (0, TodoManager_1.updateTaskStatus)(todoPath, nextTask.index, {
254
350
  execStatus: 'failed'
255
351
  });
@@ -268,6 +364,9 @@ function registerAutoCommand(gitCmd) {
268
364
  }
269
365
  }
270
366
  tasksExecuted++;
367
+ // 更新进度管理器
368
+ await progressManager.incrementTaskExecuted();
369
+ await progressManager.updateCurrentTask(nextTask.index + 1);
271
370
  // 更新总体进度
272
371
  const newProgress = (0, TodoManager_1.calculateProgress)(tasks);
273
372
  await (0, TodoManager_1.updateMetadata)(todoPath, {
@@ -285,6 +384,63 @@ function registerAutoCommand(gitCmd) {
285
384
  if (finalProgress.completed < finalProgress.total) {
286
385
  console.log(chalk_1.default.yellow('💡 提示:还有未完成的任务,可以再次运行 yuangs git auto 继续'));
287
386
  }
387
+ // 导出进度报告
388
+ const reportMetadata = {
389
+ ...metadata,
390
+ progress: finalProgress
391
+ };
392
+ const reportPath = await progressManager.exportReport(reportMetadata);
393
+ console.log(chalk_1.default.gray(`\n📊 进度报告已保存: ${path_1.default.relative(process.cwd(), reportPath)}`));
394
+ // 清理状态
395
+ if (finalProgress.completed === finalProgress.total) {
396
+ await progressManager.clear();
397
+ }
398
+ if (options.commit && finalProgress.completed === finalProgress.total) {
399
+ // 5. 自动提交
400
+ const gitService = new GitService_1.GitService();
401
+ const isClean = await gitService.isWorkingTreeClean();
402
+ if (!isClean) {
403
+ console.log(chalk_1.default.cyan('🚀 准备自动提交...\n'));
404
+ // 暂存所有变更
405
+ spinner.start('正在暂存所有变更...');
406
+ await gitService.stageAll();
407
+ spinner.succeed('已暂存所有变更');
408
+ // 生成提交信息
409
+ let commitMessage;
410
+ if (options.commitMessage) {
411
+ commitMessage = options.commitMessage;
412
+ spinner.succeed('使用自定义提交信息');
413
+ }
414
+ else {
415
+ spinner.start('正在生成提交信息...');
416
+ const router = await (await Promise.resolve().then(() => __importStar(require('../../core/modelRouter')))).getRouter();
417
+ const commitGen = new CommitMessageGenerator_1.CommitMessageGenerator(gitService, router);
418
+ const commit = await commitGen.generate({ detailed: false });
419
+ commitMessage = commit.full;
420
+ spinner.succeed('提交信息已生成');
421
+ }
422
+ console.log(chalk_1.default.gray(`\n📝 提交信息:\n ${commitMessage}\n`));
423
+ // 执行提交
424
+ spinner.start('正在提交...');
425
+ try {
426
+ await gitService.commit(commitMessage);
427
+ spinner.succeed('提交成功!');
428
+ console.log(chalk_1.default.green('✅ 代码已自动提交到 Git 仓库'));
429
+ }
430
+ catch (error) {
431
+ spinner.fail('提交失败');
432
+ console.log(chalk_1.default.red(`错误: ${error.message}`));
433
+ console.log(chalk_1.default.yellow('💡 请手动提交代码'));
434
+ }
435
+ }
436
+ else {
437
+ console.log(chalk_1.default.yellow('\n⚠️ 没有需要提交的变更'));
438
+ }
439
+ }
440
+ else if (finalProgress.completed === finalProgress.total) {
441
+ console.log(chalk_1.default.cyan('\n💡 提示:所有任务已完成'));
442
+ console.log(chalk_1.default.gray(' 使用 --commit 选项可以自动提交代码'));
443
+ }
288
444
  }
289
445
  catch (e) {
290
446
  if (e instanceof Error && e.code === 'ENOENT') {
@@ -294,10 +450,18 @@ function registerAutoCommand(gitCmd) {
294
450
  console.log(chalk_1.default.gray(' 2. yuangs git auto # 启动自动化工作流\n'));
295
451
  }
296
452
  else if (e instanceof llm_1.AIError) {
297
- spinner.fail(`AI 调用失败: ${e.message}`);
453
+ spinner.fail((0, ErrorHandler_1.formatError)(e, 'AI 调用失败'));
454
+ const suggestion = (0, ErrorHandler_1.getSuggestion)(e);
455
+ if (suggestion) {
456
+ console.log(chalk_1.default.yellow(`💡 ${suggestion}`));
457
+ }
298
458
  }
299
459
  else if (e instanceof Error) {
300
- spinner.fail(`执行失败: ${e.message}`);
460
+ spinner.fail((0, ErrorHandler_1.formatError)(e, '执行失败'));
461
+ const suggestion = (0, ErrorHandler_1.getSuggestion)(e);
462
+ if (suggestion) {
463
+ console.log(chalk_1.default.yellow(`💡 ${suggestion}`));
464
+ }
301
465
  }
302
466
  else {
303
467
  spinner.fail('未知错误');
@@ -1 +1 @@
1
- {"version":3,"file":"auto.js","sourceRoot":"","sources":["../../../src/commands/git/auto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto.js","sourceRoot":"","sources":["../../../src/commands/git/auto.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ const ora_1 = __importDefault(require("ora"));
9
9
  const fs_1 = __importDefault(require("fs"));
10
10
  const path_1 = __importDefault(require("path"));
11
11
  const llm_1 = require("../../agent/llm");
12
+ const CodeGenerator_1 = require("../../core/git/CodeGenerator");
12
13
  const METADATA_PREFIX = '>';
13
14
  /**
14
15
  * 从 todo.md 中提取任务列表
@@ -127,9 +128,49 @@ ${currentTask}
127
128
  });
128
129
  readline.close();
129
130
  if (answer.toLowerCase() === 'y' || answer.toLowerCase() === 'yes') {
130
- // 7. 解析并应用代码(这里需要实现文件写入逻辑)
131
- console.log(chalk_1.default.green('\n✅ 代码已应用(文件写入功能待实现)'));
132
- console.log(chalk_1.default.gray('💡 提示:请手动复制代码到对应文件,或等待自动写入功能完善'));
131
+ // 7. 解析并应用代码
132
+ spinner.start('正在解析生成的代码...');
133
+ const generated = (0, CodeGenerator_1.parseGeneratedCode)(response.rawText);
134
+ if (generated.files.length > 0) {
135
+ spinner.succeed(`检测到 ${generated.files.length} 个文件`);
136
+ // 保存原始输出
137
+ const savedPath = await (0, CodeGenerator_1.saveRawOutput)(response.rawText, taskIndex);
138
+ console.log(chalk_1.default.gray(`📄 原始输出已保存: ${path_1.default.relative(process.cwd(), savedPath)}\n`));
139
+ // 写入文件
140
+ console.log(chalk_1.default.cyan('开始写入文件...\n'));
141
+ const { written, skipped } = await (0, CodeGenerator_1.writeGeneratedCode)(generated);
142
+ if (written.length > 0) {
143
+ console.log(chalk_1.default.green(`\n✅ 成功写入 ${written.length} 个文件`));
144
+ }
145
+ if (skipped.length > 0) {
146
+ console.log(chalk_1.default.yellow(`⚠️ 跳过 ${skipped.length} 个文件`));
147
+ }
148
+ // 更新 todo.md 任务状态
149
+ const todoLineRegex = /^(\s*)-\s*\[\s*\]\s*(.+)$/;
150
+ const todoContent = await fs_1.default.promises.readFile(todoPath, 'utf8');
151
+ const lines = todoContent.split('\n');
152
+ let taskFound = false;
153
+ for (let i = 0; i < lines.length; i++) {
154
+ const match = lines[i].match(todoLineRegex);
155
+ if (match && taskIndex > 0) {
156
+ taskIndex--;
157
+ continue;
158
+ }
159
+ if (match && taskIndex === 0) {
160
+ lines[i] = `${match[1]}- [x] ${match[2]}`;
161
+ taskFound = true;
162
+ break;
163
+ }
164
+ }
165
+ if (taskFound) {
166
+ await fs_1.default.promises.writeFile(todoPath, lines.join('\n'), 'utf8');
167
+ console.log(chalk_1.default.green('\n✅ 任务已标记为完成'));
168
+ }
169
+ }
170
+ else {
171
+ spinner.fail('未检测到可解析的文件路径和代码');
172
+ console.log(chalk_1.default.yellow('\n💡 请检查 AI 输出格式,或查看原始输出文件'));
173
+ }
133
174
  }
134
175
  else {
135
176
  console.log(chalk_1.default.gray('\n已取消应用'));
@@ -1 +1 @@
1
- {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../../src/commands/git/exec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../../src/commands/git/exec.ts"],"names":[],"mappings":"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"}
@@ -96,6 +96,19 @@ function registerReviewCommand(gitCmd) {
96
96
  console.log(' • 使用 --level standard');
97
97
  console.log(' • 或指定 --file 进行重点审查');
98
98
  }
99
+ else if (error.message.includes('No changes to review')) {
100
+ const gitService = new GitService_1.GitService();
101
+ const diff = await gitService.getDiff();
102
+ if (!options.unstaged && diff.files.unstaged.length > 0) {
103
+ spinner.warn('当前没有已暂存 (staged) 的文件变更');
104
+ console.log(chalk_1.default.cyan('\n💡 建议:'));
105
+ console.log(` • 运行 ${chalk_1.default.green('git add <file>')} 将文件加入暂存区`);
106
+ console.log(` • 或运行 ${chalk_1.default.green('yuangs git review --unstaged')} 直接审查未暂存的变更`);
107
+ }
108
+ else {
109
+ spinner.fail('没有检测到任何代码变更');
110
+ }
111
+ }
99
112
  else {
100
113
  spinner.fail(`错误: ${error.message}`);
101
114
  }
@@ -1 +1 @@
1
- {"version":3,"file":"review.js","sourceRoot":"","sources":["../../../src/commands/git/review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review.js","sourceRoot":"","sources":["../../../src/commands/git/review.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,14 @@ export interface GeneratedCode {
9
9
  }>;
10
10
  rawOutput: string;
11
11
  }
12
+ /**
13
+ * 备份信息
14
+ */
15
+ export interface BackupInfo {
16
+ id: string;
17
+ timestamp: string;
18
+ files: string[];
19
+ }
12
20
  /**
13
21
  * 从 LLM 输出中解析文件路径和代码
14
22
  */
@@ -24,3 +32,18 @@ export declare function writeGeneratedCode(generated: GeneratedCode, baseDir?: s
24
32
  * 保存原始输出到临时文件
25
33
  */
26
34
  export declare function saveRawOutput(content: string, taskIndex: number, baseDir?: string): Promise<string>;
35
+ /**
36
+ * 备份受影响的文件(在写入前)
37
+ */
38
+ export declare function backupFiles(files: Array<{
39
+ path: string;
40
+ content: string;
41
+ }>, baseDir?: string): Promise<BackupInfo>;
42
+ /**
43
+ * 从备份恢复文件
44
+ */
45
+ export declare function restoreFromBackup(backupId: string, baseDir?: string): Promise<void>;
46
+ /**
47
+ * 清理旧备份
48
+ */
49
+ export declare function cleanOldBackups(keepCount?: number, baseDir?: string): Promise<void>;