job51-gitlab-cr-node-jt-1 1.1.9 → 1.2.3

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.
@@ -0,0 +1,5 @@
1
+ export ANTHROPIC_AUTH_TOKEN="sk-436f005eeece4cf7b339bd18162c8a76"
2
+ export ANTHROPIC_BASE_URL="https://dashscope.aliyuncs.com/apps/anthropic"
3
+ export API_TIMEOUT_MS="3000000"
4
+ export ANTHROPIC_MODEL="qwen3-coder-plus"
5
+ export ANTHROPIC_SMALL_FAST_MODEL="qwen3-coder-plus"
@@ -0,0 +1,9 @@
1
+ {
2
+ "env": {
3
+ "ANTHROPIC_AUTH_TOKEN": "sk-436f005eeece4cf7b339bd18162c8a76",
4
+ "ANTHROPIC_BASE_URL": "https://dashscope.aliyuncs.com/apps/anthropic",
5
+ "API_TIMEOUT_MS": "3000000",
6
+ "ANTHROPIC_MODEL": "qwen3-coder-plus",
7
+ "ANTHROPIC_SMALL_FAST_MODEL":"qwen3-coder-plus"
8
+ }
9
+ }
@@ -0,0 +1,67 @@
1
+ ---
2
+ name: simple-code-review
3
+ description: 你的角色是"资深软件开发工程师",你会接收到从gitlab命令行中执行giff命令得到的每一个变更内容代码块,你要对其进行代码评审,按照下文"检查项"标题后的几个方面(分析代码变更、执行深度代码审查、上下文影响分析)依次对本次代码变更的质量进行评估,按照下文中"报告模板"标题后的模版生成中文代码审查报告文本内容,等待结果生成好后,将文本内容直接返回,生成报告内容时注意文件问题位置建议四个部分的换行排版。
4
+ ---
5
+
6
+ ## 检查项
7
+
8
+ #### 分析代码变更
9
+ - 识别变更类型(新增功能、bug修复、重构等)
10
+ - 评估变更影响范围
11
+ - 确定审查重点
12
+
13
+ #### 执行深度代码审查
14
+ - 代码规范检查(命名、格式、注释)
15
+ - 潜在缺陷识别(空指针、资源泄漏等)
16
+ - 安全风险评估(SQL注入、权限问题等)
17
+ - 性能问题检测(算法复杂度、数据库查询等)
18
+ - 最佳实践建议
19
+
20
+ #### 上下文影响分析
21
+ - 问题分类(严重、警告、建议)
22
+ - 具体问题描述和位置
23
+ - 修复建议和示例代码
24
+ - 总体评价和改进建议
25
+
26
+ ## 报告模板
27
+
28
+ <REPORT>
29
+
30
+ ## 🤖 AI代码审查报告
31
+
32
+ **生成时间**: [当前时间]
33
+ **审查范围**: [文件数量]个文件,[代码行数]行代码
34
+
35
+ ---
36
+
37
+ ### 审查总览
38
+
39
+ [简要总结代码质量和主要问题]
40
+
41
+ ### 🔴 严重问题
42
+
43
+ **文件**: [文件路径]\
44
+ **问题**: [具体问题描述]\
45
+ **位置**: [问题所在代码文件起始行号]\
46
+ **建议**: [修复建议和示例代码]
47
+
48
+ ### 🟡 警告
49
+
50
+ **文件**: [文件路径]\
51
+ **问题**: [具体问题描述]\
52
+ **位置**: [问题所在代码文件起始行号]\
53
+ **建议**: [改进建议]
54
+
55
+ ### 🟢 优化建议
56
+
57
+ **文件**: [文件路径]\
58
+ **建议**: [优化建议]\
59
+ **示例**: [改进后的代码示例]
60
+
61
+ ### 🔄 上下文影响分析
62
+
63
+ **受影响组件**: [可能受影响的类/方法/模块]\
64
+ **影响描述**: [具体影响说明]\
65
+ **验证建议**: [如何验证是否存在此问题]
66
+
67
+ </REPORT>
package/index.js CHANGED
@@ -116,16 +116,16 @@ class GitLabCodeReviewer {
116
116
 
117
117
  // 创建处理单个块的函数
118
118
  const processBlock = async (diffObject, blockIndex) => {
119
- // 创建临时文件存储diff内容
120
- const tmpFileName = `./temp-diff-block-${Date.now()}-${blockIndex}.diff`;
119
+ // 创建临时文件存储diff内容,文件地址选择当前文件夹下,避免权限问题
120
+ const fileName = `temp-diff-block-${Date.now()}-${blockIndex}.diff`;
121
+ const tmpFileName = path.join(__dirname, fileName);
121
122
 
122
123
  try {
123
124
  // 将diff内容写入临时文件
124
125
  fs.writeFileSync(tmpFileName, diffObject.diff);
125
126
 
126
- // 审核当前块(传入临时文件路径而不是直接的diff内容)
127
- const review_result = await this.reviewDiffWithClaudeUsingFile(path.resolve(tmpFileName));
128
-
127
+ // 审核当前块(传入临时的文件而不是直接的diff内容)
128
+ const review_result = await this.reviewDiffWithClaudeUsingFile(fileName);
129
129
  const blockObj = { ...diffObject, review_result, temp_file_path: tmpFileName };
130
130
 
131
131
  // 立即发布评论
@@ -198,7 +198,7 @@ class GitLabCodeReviewer {
198
198
 
199
199
  const prompt = '/simple-code-review' + ' ' + filePath;
200
200
 
201
- // 最多重试3次,直到结果包含"🤖 AI代码审查报告"或达到最大重试次数
201
+ // 最多重试5次,直到结果包含"🤖 AI代码审查报告"或达到最大重试次数
202
202
  let attempts = 0;
203
203
  const maxAttempts = 5;
204
204