@wuyanbin/ai-code-review-cli-remote 1.0.14-canary.0 → 1.0.15
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/client.d.ts +18 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +57 -0
- package/dist/client.js.map +1 -0
- package/dist/config.d.ts +11 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +161 -0
- package/dist/config.js.map +1 -0
- package/dist/constants.d.ts +8 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +16 -2
- package/dist/constants.js.map +1 -1
- package/dist/core/reviewer.d.ts.map +1 -1
- package/dist/core/reviewer.js +2 -13
- package/dist/core/reviewer.js.map +1 -1
- package/dist/diff.d.ts +6 -0
- package/dist/diff.d.ts.map +1 -0
- package/dist/diff.js +127 -0
- package/dist/diff.js.map +1 -0
- package/dist/formatters.d.ts +4 -0
- package/dist/formatters.d.ts.map +1 -0
- package/dist/formatters.js +31 -0
- package/dist/formatters.js.map +1 -0
- package/dist/gitlab/api.d.ts +40 -0
- package/dist/gitlab/api.d.ts.map +1 -1
- package/dist/gitlab/api.js +82 -29
- package/dist/gitlab/api.js.map +1 -1
- package/dist/gitlab.d.ts +11 -0
- package/dist/gitlab.d.ts.map +1 -0
- package/dist/gitlab.js +193 -0
- package/dist/gitlab.js.map +1 -0
- package/dist/http.d.ts +4 -0
- package/dist/http.d.ts.map +1 -0
- package/dist/http.js +31 -0
- package/dist/http.js.map +1 -0
- package/dist/index.js +0 -0
- package/dist/model.d.ts +6 -0
- package/dist/model.d.ts.map +1 -0
- package/dist/model.js +120 -0
- package/dist/model.js.map +1 -0
- package/dist/report.d.ts +9 -0
- package/dist/report.d.ts.map +1 -0
- package/dist/report.js +31 -0
- package/dist/report.js.map +1 -0
- package/dist/reviewer.d.ts +3 -0
- package/dist/reviewer.d.ts.map +1 -0
- package/dist/reviewer.js +140 -0
- package/dist/reviewer.js.map +1 -0
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +9 -1
- package/dist/runner.js.map +1 -1
- package/dist/shared/concurrency.d.ts +2 -0
- package/dist/shared/concurrency.d.ts.map +1 -0
- package/dist/shared/concurrency.js +16 -0
- package/dist/shared/concurrency.js.map +1 -0
- package/dist/shared/http.d.ts +15 -0
- package/dist/shared/http.d.ts.map +1 -1
- package/dist/shared/http.js +36 -0
- package/dist/shared/http.js.map +1 -1
- package/dist/shared/identity.d.ts +6 -3
- package/dist/shared/identity.d.ts.map +1 -1
- package/dist/shared/identity.js +6 -4
- package/dist/shared/identity.js.map +1 -1
- package/dist/summarizer.d.ts +3 -0
- package/dist/summarizer.d.ts.map +1 -0
- package/dist/summarizer.js +75 -0
- package/dist/summarizer.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateSummary = generateSummary;
|
|
4
|
+
const diff_1 = require("./diff");
|
|
5
|
+
const model_1 = require("./model");
|
|
6
|
+
function buildSummarySystemPrompt() {
|
|
7
|
+
return [
|
|
8
|
+
"你是一位资深开发工程师,擅长分析代码改动并生成清晰的技术摘要。",
|
|
9
|
+
"根据给定 Git diff 生成中文 Markdown 汇总。",
|
|
10
|
+
"必须直接输出纯 Markdown 文本,不要返回 JSON,不要用代码块包裹。",
|
|
11
|
+
].join("\n");
|
|
12
|
+
}
|
|
13
|
+
function buildSummaryUserPrompt(diff) {
|
|
14
|
+
return [
|
|
15
|
+
"请根据以下 Git diff 生成一份代码改动汇总报告。",
|
|
16
|
+
"",
|
|
17
|
+
"## 概述",
|
|
18
|
+
"用 1-2 句话说明整体目的和范围。",
|
|
19
|
+
"",
|
|
20
|
+
"## 主要变更",
|
|
21
|
+
"按新功能、Bug 修复、重构优化、依赖更新、配置调整分类列出。",
|
|
22
|
+
"",
|
|
23
|
+
"## 受影响文件",
|
|
24
|
+
"用表格列出文件路径、变更类型、说明。",
|
|
25
|
+
"",
|
|
26
|
+
"## 注意事项",
|
|
27
|
+
"列出需要关注的风险;没有则写\u201C无\u201D。",
|
|
28
|
+
"",
|
|
29
|
+
"Git diff:",
|
|
30
|
+
diff,
|
|
31
|
+
].join("\n");
|
|
32
|
+
}
|
|
33
|
+
function cleanMarkdownResponse(content) {
|
|
34
|
+
let text = content.trim();
|
|
35
|
+
if (text.startsWith("```markdown"))
|
|
36
|
+
text = text.slice("```markdown".length);
|
|
37
|
+
else if (text.startsWith("```md"))
|
|
38
|
+
text = text.slice("```md".length);
|
|
39
|
+
else if (text.startsWith("```json"))
|
|
40
|
+
text = text.slice("```json".length);
|
|
41
|
+
else if (text.startsWith("```"))
|
|
42
|
+
text = text.slice(3);
|
|
43
|
+
if (text.endsWith("```"))
|
|
44
|
+
text = text.slice(0, -3);
|
|
45
|
+
text = text.trim();
|
|
46
|
+
if (text.startsWith("{") || text.startsWith('"')) {
|
|
47
|
+
try {
|
|
48
|
+
const parsed = JSON.parse(text);
|
|
49
|
+
if (typeof parsed === "string")
|
|
50
|
+
return parsed.trim();
|
|
51
|
+
if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) {
|
|
52
|
+
const first = Object.values(parsed).find((value) => typeof value === "string");
|
|
53
|
+
if (first)
|
|
54
|
+
return first.trim();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
catch {
|
|
58
|
+
// keep text as-is
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return text.replace(/\\n/g, "\n").trim();
|
|
62
|
+
}
|
|
63
|
+
async function generateSummary(diff, config) {
|
|
64
|
+
if (!config.summary.enabled)
|
|
65
|
+
return null;
|
|
66
|
+
const effectiveDiff = (0, diff_1.filterDiffByIgnore)(diff, config.review.ignore);
|
|
67
|
+
if (!effectiveDiff.trim())
|
|
68
|
+
return null;
|
|
69
|
+
if (!config.ai.apiKey || !config.ai.endpoint)
|
|
70
|
+
return null;
|
|
71
|
+
const adapter = (0, model_1.createModelAdapter)(config.ai.endpoint, config.ai.apiKey, config.ai.apiFormat);
|
|
72
|
+
const raw = await adapter.call(config.ai.model, buildSummarySystemPrompt(), buildSummaryUserPrompt(effectiveDiff));
|
|
73
|
+
return raw ? cleanMarkdownResponse(raw) : null;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=summarizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"summarizer.js","sourceRoot":"","sources":["../src/summarizer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED