@yeepay/coderocket-mcp 1.0.1
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/.eslintrc.cjs +36 -0
- package/CHANGELOG +111 -0
- package/LICENSE +201 -0
- package/README.md +400 -0
- package/bin/coderocket-mcp +108 -0
- package/dist/coderocket.d.ts +88 -0
- package/dist/coderocket.d.ts.map +1 -0
- package/dist/coderocket.js +528 -0
- package/dist/coderocket.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +167 -0
- package/dist/index.js.map +1 -0
- package/dist/logger.d.ts +71 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +204 -0
- package/dist/logger.js.map +1 -0
- package/dist/test.d.ts +9 -0
- package/dist/test.d.ts.map +1 -0
- package/dist/test.js +108 -0
- package/dist/test.js.map +1 -0
- package/dist/types.d.ts +211 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +85 -0
- package/dist/types.js.map +1 -0
- package/eslint.config.ts +9 -0
- package/package.json +71 -0
- package/scripts/prepare-release.sh +150 -0
package/README.md
ADDED
@@ -0,0 +1,400 @@
|
|
1
|
+
# CodeRocket MCP
|
2
|
+
|
3
|
+
<div align="center">
|
4
|
+
<img src="docs/assets/banner.png" alt="CodeRocket Banner" />
|
5
|
+
</div>
|
6
|
+
|
7
|
+
[](https://opensource.org/licenses/Apache-2.0)
|
8
|
+
[](https://nodejs.org/)
|
9
|
+
[](https://www.typescriptlang.org/)
|
10
|
+
|
11
|
+
一个基于 Model Context Protocol (MCP) 的智能代码审查 MCP,集成了 CodeRocket-CLI 的强大功能,为AI编程工具提供专业的代码审查能力。
|
12
|
+
|
13
|
+
## 🚀 核心功能
|
14
|
+
|
15
|
+
- **多维度代码审查**:支持代码片段、Git提交、文件列表的全面审查
|
16
|
+
- **多AI服务支持**:集成Gemini、OpenCode、ClaudeCode等多种AI服务
|
17
|
+
- **智能故障转移**:自动切换AI服务,确保审查的可靠性
|
18
|
+
- **灵活配置管理**:支持项目级和全局级配置
|
19
|
+
- **详细错误处理**:提供用户友好的错误信息和解决建议
|
20
|
+
- **完整日志记录**:详细的操作日志,便于调试和监控
|
21
|
+
|
22
|
+
## 📋 目录
|
23
|
+
|
24
|
+
- [安装](#-安装)
|
25
|
+
- [快速开始](#-快速开始)
|
26
|
+
- [MCP工具](#-mcp工具)
|
27
|
+
- [配置说明](#️-配置说明)
|
28
|
+
- [使用示例](#-使用示例)
|
29
|
+
- [故障排除](#-故障排除)
|
30
|
+
- [开发指南](#-开发指南)
|
31
|
+
|
32
|
+
## 🛠 安装
|
33
|
+
|
34
|
+
### 正式安装(推荐)
|
35
|
+
|
36
|
+
#### 前置要求
|
37
|
+
|
38
|
+
1. **Node.js**: >= 18.0.0
|
39
|
+
2. **CodeRocket-CLI**: 需要先安装 [CodeRocket-CLI](https://github.com/im47cn/coderocket-cli)
|
40
|
+
3. **AI服务**: 至少配置一个AI服务(Gemini、OpenCode或ClaudeCode)
|
41
|
+
|
42
|
+
#### 安装过程
|
43
|
+
|
44
|
+
从npm注册表安装:
|
45
|
+
|
46
|
+
```bash
|
47
|
+
# 1. 全局安装CodeRocket MCP
|
48
|
+
npm install -g @yeepay/coderocket-mcp
|
49
|
+
|
50
|
+
# 2. 验证安装
|
51
|
+
npx -y @yeepay/coderocket-mcp --version
|
52
|
+
|
53
|
+
# 3. 运行测试
|
54
|
+
npx -y @yeepay/coderocket-mcp test
|
55
|
+
|
56
|
+
# 4. 启动服务器
|
57
|
+
npx -y @yeepay/coderocket-mcp start
|
58
|
+
```
|
59
|
+
|
60
|
+
> **注意**: CodeRocket MCP依赖于CodeRocket-CLI,请确保先安装CodeRocket-CLI。
|
61
|
+
|
62
|
+
### 开发者安装
|
63
|
+
|
64
|
+
如果您想从源码安装或参与开发:
|
65
|
+
|
66
|
+
```bash
|
67
|
+
# 1. 克隆项目
|
68
|
+
git clone https://github.com/im47cn/coderocket-mcp.git
|
69
|
+
cd coderocket-mcp
|
70
|
+
|
71
|
+
# 2. 运行安装脚本
|
72
|
+
./install.sh
|
73
|
+
|
74
|
+
# 3. 或手动安装
|
75
|
+
npm install
|
76
|
+
npm run build
|
77
|
+
npm start
|
78
|
+
```
|
79
|
+
|
80
|
+
## 🚀 快速开始
|
81
|
+
|
82
|
+
### 1. 配置AI服务
|
83
|
+
|
84
|
+
配置至少一个AI服务的API密钥:
|
85
|
+
|
86
|
+
```bash
|
87
|
+
# 配置Gemini(推荐)
|
88
|
+
export GEMINI_API_KEY="your_gemini_api_key"
|
89
|
+
|
90
|
+
# 或配置OpenCode
|
91
|
+
export OPENCODE_API_KEY="your_opencode_api_key"
|
92
|
+
|
93
|
+
# 或配置ClaudeCode
|
94
|
+
export CLAUDECODE_API_KEY="your_claudecode_api_key"
|
95
|
+
```
|
96
|
+
|
97
|
+
### 2. 测试安装
|
98
|
+
|
99
|
+
```bash
|
100
|
+
# 运行功能测试
|
101
|
+
npx -y @yeepay/coderocket-mcp test
|
102
|
+
```
|
103
|
+
|
104
|
+
### 3. 在AI工具中配置
|
105
|
+
|
106
|
+
#### Claude Desktop配置
|
107
|
+
|
108
|
+
编辑 `~/Library/Application Support/Claude/claude_desktop_config.json`:
|
109
|
+
|
110
|
+
```json
|
111
|
+
{
|
112
|
+
"mcpServers": {
|
113
|
+
"coderocket": {
|
114
|
+
"command": "npx",
|
115
|
+
"args": ["-y", "@yeepay/coderocket-mcp", "start"],
|
116
|
+
"env": {
|
117
|
+
"GEMINI_API_KEY": "your_gemini_api_key"
|
118
|
+
}
|
119
|
+
}
|
120
|
+
}
|
121
|
+
}
|
122
|
+
```
|
123
|
+
|
124
|
+
#### 其他AI工具
|
125
|
+
|
126
|
+
对于其他支持MCP的AI工具,使用类似配置:
|
127
|
+
|
128
|
+
```json
|
129
|
+
{
|
130
|
+
"mcp_servers": [
|
131
|
+
{
|
132
|
+
"name": "coderocket",
|
133
|
+
"command": ["coderocket-mcp", "start"],
|
134
|
+
"environment": {
|
135
|
+
"AI_SERVICE": "gemini",
|
136
|
+
"GEMINI_API_KEY": "your_api_key"
|
137
|
+
}
|
138
|
+
}
|
139
|
+
]
|
140
|
+
}
|
141
|
+
```
|
142
|
+
|
143
|
+
## 🔧 MCP工具
|
144
|
+
|
145
|
+
CodeRocket MCP 提供以下工具:
|
146
|
+
|
147
|
+
### 1. review_code
|
148
|
+
审查代码片段,提供详细的质量分析和改进建议。
|
149
|
+
|
150
|
+
**参数:**
|
151
|
+
- `code` (string): 要审查的代码内容
|
152
|
+
- `language` (string, 可选): 代码语言
|
153
|
+
- `context` (string, 可选): 代码上下文信息
|
154
|
+
- `ai_service` (string, 可选): 指定AI服务
|
155
|
+
- `custom_prompt` (string, 可选): 自定义审查提示词
|
156
|
+
|
157
|
+
### 2. review_commit
|
158
|
+
审查Git提交,分析代码变更的质量和影响。
|
159
|
+
|
160
|
+
**参数:**
|
161
|
+
- `commit_hash` (string, 可选): 提交哈希,默认为最新提交
|
162
|
+
- `repository_path` (string, 可选): Git仓库路径
|
163
|
+
- `ai_service` (string, 可选): 指定AI服务
|
164
|
+
- `custom_prompt` (string, 可选): 自定义审查提示词
|
165
|
+
|
166
|
+
### 3. review_files
|
167
|
+
审查指定文件列表,提供全面的代码质量评估。
|
168
|
+
|
169
|
+
**参数:**
|
170
|
+
- `files` (array): 要审查的文件路径列表
|
171
|
+
- `repository_path` (string, 可选): Git仓库路径
|
172
|
+
- `ai_service` (string, 可选): 指定AI服务
|
173
|
+
- `custom_prompt` (string, 可选): 自定义审查提示词
|
174
|
+
|
175
|
+
### 4. configure_ai_service
|
176
|
+
配置AI服务设置,包括服务选择、API密钥等。
|
177
|
+
|
178
|
+
**参数:**
|
179
|
+
- `service` (string): AI服务名称 (gemini/opencode/claudecode)
|
180
|
+
- `scope` (string, 可选): 配置范围 (project/global)
|
181
|
+
- `api_key` (string, 可选): API密钥
|
182
|
+
- `timeout` (number, 可选): 超时时间
|
183
|
+
- `max_retries` (number, 可选): 最大重试次数
|
184
|
+
|
185
|
+
### 5. get_ai_service_status
|
186
|
+
获取所有AI服务的状态信息,包括可用性和配置状态。
|
187
|
+
|
188
|
+
**参数:** 无
|
189
|
+
|
190
|
+
## ⚙️ 配置说明
|
191
|
+
|
192
|
+
### 环境变量
|
193
|
+
|
194
|
+
```bash
|
195
|
+
# AI服务配置
|
196
|
+
AI_SERVICE=gemini # 默认AI服务
|
197
|
+
AI_AUTO_SWITCH=true # 启用自动切换
|
198
|
+
AI_TIMEOUT=30 # 超时时间(秒)
|
199
|
+
AI_MAX_RETRIES=3 # 最大重试次数
|
200
|
+
|
201
|
+
# API密钥
|
202
|
+
GEMINI_API_KEY=your_gemini_key
|
203
|
+
OPENCODE_API_KEY=your_opencode_key
|
204
|
+
CLAUDECODE_API_KEY=your_claudecode_key
|
205
|
+
|
206
|
+
# 日志配置
|
207
|
+
NODE_ENV=development # 开发模式启用详细日志
|
208
|
+
```
|
209
|
+
|
210
|
+
### 配置文件
|
211
|
+
|
212
|
+
**全局配置**: `~/.coderocket/env`
|
213
|
+
**项目配置**: `./.env`
|
214
|
+
|
215
|
+
配置优先级:环境变量 > 项目配置 > 全局配置 > 默认值
|
216
|
+
|
217
|
+
## 📖 使用示例
|
218
|
+
|
219
|
+
### 审查代码片段
|
220
|
+
|
221
|
+
```json
|
222
|
+
{
|
223
|
+
"tool": "review_code",
|
224
|
+
"arguments": {
|
225
|
+
"code": "function add(a, b) {\n return a + b;\n}",
|
226
|
+
"language": "javascript",
|
227
|
+
"context": "简单的加法函数"
|
228
|
+
}
|
229
|
+
}
|
230
|
+
```
|
231
|
+
|
232
|
+
### 审查Git提交
|
233
|
+
|
234
|
+
```json
|
235
|
+
{
|
236
|
+
"tool": "review_commit",
|
237
|
+
"arguments": {
|
238
|
+
"repository_path": "/path/to/repo",
|
239
|
+
"commit_hash": "abc123"
|
240
|
+
}
|
241
|
+
}
|
242
|
+
```
|
243
|
+
|
244
|
+
### 配置AI服务
|
245
|
+
|
246
|
+
```json
|
247
|
+
{
|
248
|
+
"tool": "configure_ai_service",
|
249
|
+
"arguments": {
|
250
|
+
"service": "gemini",
|
251
|
+
"scope": "project",
|
252
|
+
"api_key": "your_api_key"
|
253
|
+
}
|
254
|
+
}
|
255
|
+
```
|
256
|
+
|
257
|
+
### 获取服务状态
|
258
|
+
|
259
|
+
```json
|
260
|
+
{
|
261
|
+
"tool": "get_ai_service_status",
|
262
|
+
"arguments": {}
|
263
|
+
}
|
264
|
+
```
|
265
|
+
|
266
|
+
## 🔍 故障排除
|
267
|
+
|
268
|
+
### 常见问题
|
269
|
+
|
270
|
+
**问题 1**: MCP服务器启动失败
|
271
|
+
|
272
|
+
```bash
|
273
|
+
# 检查Node.js版本
|
274
|
+
node --version # 应该 >= 18.0.0
|
275
|
+
|
276
|
+
# 检查依赖安装
|
277
|
+
npm install
|
278
|
+
|
279
|
+
# 重新构建
|
280
|
+
npm run build
|
281
|
+
```
|
282
|
+
|
283
|
+
**问题 2**: AI服务不可用
|
284
|
+
|
285
|
+
```bash
|
286
|
+
# 检查AI服务状态
|
287
|
+
gemini --version
|
288
|
+
opencode --version
|
289
|
+
claudecode --version
|
290
|
+
|
291
|
+
# 重新配置AI服务
|
292
|
+
gemini config
|
293
|
+
```
|
294
|
+
|
295
|
+
**问题 3**: CodeRocket-CLI路径错误
|
296
|
+
|
297
|
+
```bash
|
298
|
+
# 设置环境变量指定路径
|
299
|
+
export CODEROCKET_CLI_PATH=/path/to/coderocket-cli
|
300
|
+
|
301
|
+
# 或在项目中创建符号链接
|
302
|
+
ln -s /path/to/coderocket-cli ./coderocket-cli
|
303
|
+
```
|
304
|
+
|
305
|
+
### 调试模式
|
306
|
+
|
307
|
+
启用详细日志:
|
308
|
+
|
309
|
+
```bash
|
310
|
+
NODE_ENV=development npm start
|
311
|
+
```
|
312
|
+
|
313
|
+
查看日志文件:
|
314
|
+
|
315
|
+
```bash
|
316
|
+
# 日志文件位置
|
317
|
+
tail -f /tmp/coderocket-mcp.log
|
318
|
+
```
|
319
|
+
|
320
|
+
## 👨💻 开发指南
|
321
|
+
|
322
|
+
### 项目结构
|
323
|
+
|
324
|
+
```
|
325
|
+
coderocket-mcp/
|
326
|
+
├── src/
|
327
|
+
│ ├── index.ts # MCP服务器入口
|
328
|
+
│ ├── coderocket.ts # 核心服务类
|
329
|
+
│ ├── types.ts # 类型定义
|
330
|
+
│ └── logger.ts # 日志和错误处理
|
331
|
+
├── dist/ # 编译输出
|
332
|
+
├── package.json
|
333
|
+
├── tsconfig.json
|
334
|
+
└── README.md
|
335
|
+
```
|
336
|
+
|
337
|
+
### 开发环境设置
|
338
|
+
|
339
|
+
```bash
|
340
|
+
# 安装开发依赖
|
341
|
+
npm install
|
342
|
+
|
343
|
+
# 开发模式运行
|
344
|
+
npm run dev
|
345
|
+
|
346
|
+
# 代码检查
|
347
|
+
npm run lint
|
348
|
+
|
349
|
+
# 格式化代码
|
350
|
+
npm run format
|
351
|
+
|
352
|
+
# 运行测试
|
353
|
+
npm test
|
354
|
+
```
|
355
|
+
|
356
|
+
### 添加新功能
|
357
|
+
|
358
|
+
1. 在 `types.ts` 中定义新的类型
|
359
|
+
2. 在 `coderocket.ts` 中实现业务逻辑
|
360
|
+
3. 在 `index.ts` 中注册新的MCP工具
|
361
|
+
4. 添加相应的测试用例
|
362
|
+
5. 更新文档
|
363
|
+
|
364
|
+
## 🤝 贡献
|
365
|
+
|
366
|
+
我们欢迎社区贡献!请参考 [CodeRocket-CLI贡献指南](../coderocket-cli/CONTRIBUTING.md)。
|
367
|
+
|
368
|
+
### 快速开始
|
369
|
+
|
370
|
+
1. Fork 本仓库
|
371
|
+
2. 创建功能分支: `git checkout -b feature/new-feature`
|
372
|
+
3. 提交更改: `git commit -am 'Add new feature'`
|
373
|
+
4. 推送分支: `git push origin feature/new-feature`
|
374
|
+
5. 创建 Pull Request
|
375
|
+
|
376
|
+
## 📄 许可证
|
377
|
+
|
378
|
+
本项目采用 [Apache 2.0 许可证](LICENSE)。
|
379
|
+
|
380
|
+
## 🔗 相关链接
|
381
|
+
|
382
|
+
- [CodeRocket-CLI](../coderocket-cli) - 核心CLI工具
|
383
|
+
- [Model Context Protocol](https://modelcontextprotocol.io/) - MCP官方文档
|
384
|
+
- [问题反馈](https://github.com/im47cn/coderocket-cli/issues) - 报告问题或建议
|
385
|
+
|
386
|
+
## 📊 特性对比
|
387
|
+
|
388
|
+
| 功能 | CodeRocket-CLI | CodeRocket-MCP |
|
389
|
+
|------|----------------|----------------|
|
390
|
+
| Git Hooks集成 | ✅ | ❌ |
|
391
|
+
| MCP协议支持 | ❌ | ✅ |
|
392
|
+
| 代码片段审查 | ❌ | ✅ |
|
393
|
+
| AI工具集成 | ❌ | ✅ |
|
394
|
+
| 多AI服务支持 | ✅ | ✅ |
|
395
|
+
| 自动MR创建 | ✅ | ❌ |
|
396
|
+
| 详细审查报告 | ✅ | ✅ |
|
397
|
+
|
398
|
+
---
|
399
|
+
|
400
|
+
**CodeRocket MCP** - 让AI编程工具拥有专业的代码审查能力 🚀
|
@@ -0,0 +1,108 @@
|
|
1
|
+
#!/usr/bin/env node
|
2
|
+
|
3
|
+
/**
|
4
|
+
* CodeRocket MCP 启动脚本
|
5
|
+
*/
|
6
|
+
|
7
|
+
import { spawn } from 'child_process';
|
8
|
+
import { resolve, dirname } from 'path';
|
9
|
+
import { fileURLToPath } from 'url';
|
10
|
+
|
11
|
+
const __filename = fileURLToPath(import.meta.url);
|
12
|
+
const __dirname = dirname(__filename);
|
13
|
+
|
14
|
+
const command = process.argv[2];
|
15
|
+
|
16
|
+
switch (command) {
|
17
|
+
case 'start':
|
18
|
+
case undefined:
|
19
|
+
// 启动MCP服务器
|
20
|
+
console.error('🚀 启动 CodeRocket MCP 服务器...');
|
21
|
+
const serverPath = resolve(__dirname, '../dist/index.js');
|
22
|
+
const server = spawn('node', [serverPath], {
|
23
|
+
stdio: 'inherit',
|
24
|
+
env: process.env,
|
25
|
+
});
|
26
|
+
|
27
|
+
server.on('error', (error) => {
|
28
|
+
console.error('❌ 服务器启动失败:', error.message);
|
29
|
+
process.exit(1);
|
30
|
+
});
|
31
|
+
|
32
|
+
server.on('exit', (code) => {
|
33
|
+
if (code !== 0) {
|
34
|
+
console.error(`❌ 服务器异常退出,代码: ${code}`);
|
35
|
+
process.exit(code || 1);
|
36
|
+
}
|
37
|
+
});
|
38
|
+
break;
|
39
|
+
|
40
|
+
case 'test':
|
41
|
+
// 运行测试
|
42
|
+
console.error('🧪 运行 CodeRocket MCP 测试...');
|
43
|
+
const testPath = resolve(__dirname, '../dist/test.js');
|
44
|
+
const test = spawn('node', [testPath], {
|
45
|
+
stdio: 'inherit',
|
46
|
+
env: process.env,
|
47
|
+
});
|
48
|
+
|
49
|
+
test.on('error', (error) => {
|
50
|
+
console.error('❌ 测试运行失败:', error.message);
|
51
|
+
process.exit(1);
|
52
|
+
});
|
53
|
+
|
54
|
+
test.on('exit', (code) => {
|
55
|
+
process.exit(code || 0);
|
56
|
+
});
|
57
|
+
break;
|
58
|
+
|
59
|
+
case 'help':
|
60
|
+
case '--help':
|
61
|
+
case '-h':
|
62
|
+
console.log(`
|
63
|
+
CodeRocket MCP - AI驱动的代码审查服务器
|
64
|
+
|
65
|
+
用法:
|
66
|
+
coderocket-mcp [命令]
|
67
|
+
|
68
|
+
命令:
|
69
|
+
start, (默认) 启动MCP服务器
|
70
|
+
test 运行功能测试
|
71
|
+
help 显示帮助信息
|
72
|
+
|
73
|
+
示例:
|
74
|
+
coderocket-mcp start # 启动服务器
|
75
|
+
coderocket-mcp test # 运行测试
|
76
|
+
coderocket-mcp help # 显示帮助
|
77
|
+
|
78
|
+
环境变量:
|
79
|
+
AI_SERVICE 默认AI服务 (gemini/opencode/claudecode)
|
80
|
+
AI_AUTO_SWITCH 启用自动切换 (true/false)
|
81
|
+
AI_TIMEOUT 超时时间(秒)
|
82
|
+
AI_MAX_RETRIES 最大重试次数
|
83
|
+
NODE_ENV 环境模式 (development/production)
|
84
|
+
|
85
|
+
更多信息请访问: https://github.com/im47cn/coderocket-cli
|
86
|
+
`);
|
87
|
+
break;
|
88
|
+
|
89
|
+
case 'version':
|
90
|
+
case '--version':
|
91
|
+
case '-v':
|
92
|
+
// 读取package.json获取版本信息
|
93
|
+
try {
|
94
|
+
const packagePath = resolve(__dirname, '../package.json');
|
95
|
+
const packageJson = JSON.parse(
|
96
|
+
require('fs').readFileSync(packagePath, 'utf-8')
|
97
|
+
);
|
98
|
+
console.log(`CodeRocket MCP v${packageJson.version}`);
|
99
|
+
} catch (error) {
|
100
|
+
console.log('CodeRocket MCP v1.0.0');
|
101
|
+
}
|
102
|
+
break;
|
103
|
+
|
104
|
+
default:
|
105
|
+
console.error(`❌ 未知命令: ${command}`);
|
106
|
+
console.error('使用 "coderocket-mcp help" 查看可用命令');
|
107
|
+
process.exit(1);
|
108
|
+
}
|
@@ -0,0 +1,88 @@
|
|
1
|
+
import { ReviewCodeRequest, ReviewCommitRequest, ReviewFilesRequest, ConfigureAIServiceRequest, ReviewResult, ServiceStatusResponse, SuccessResponse } from './types.js';
|
2
|
+
/**
|
3
|
+
* CodeRocket服务类
|
4
|
+
*
|
5
|
+
* 负责与coderocket-cli集成,提供代码审查和AI服务管理功能
|
6
|
+
*/
|
7
|
+
export declare class CodeRocketService {
|
8
|
+
private coderocketCliPath;
|
9
|
+
constructor();
|
10
|
+
private ensureInitialized;
|
11
|
+
/**
|
12
|
+
* 查找coderocket-cli的安装路径
|
13
|
+
*/
|
14
|
+
private findCoderocketCliPath;
|
15
|
+
/**
|
16
|
+
* 执行shell命令并返回结果
|
17
|
+
*/
|
18
|
+
private executeShellCommand;
|
19
|
+
/**
|
20
|
+
* 调用AI服务管理器脚本
|
21
|
+
*/
|
22
|
+
private callAIServiceManager;
|
23
|
+
/**
|
24
|
+
* 创建临时提示词文件
|
25
|
+
*/
|
26
|
+
private createTempPromptFile;
|
27
|
+
/**
|
28
|
+
* 获取内置的默认提示词
|
29
|
+
*/
|
30
|
+
private getDefaultPrompt;
|
31
|
+
/**
|
32
|
+
* 解析审查结果
|
33
|
+
*/
|
34
|
+
private parseReviewResult;
|
35
|
+
/**
|
36
|
+
* 审查代码片段
|
37
|
+
*/
|
38
|
+
reviewCode(request: ReviewCodeRequest): Promise<ReviewResult>;
|
39
|
+
/**
|
40
|
+
* 根据语言获取文件扩展名
|
41
|
+
*/
|
42
|
+
private getFileExtension;
|
43
|
+
/**
|
44
|
+
* 审查Git提交
|
45
|
+
*/
|
46
|
+
reviewCommit(request: ReviewCommitRequest): Promise<ReviewResult>;
|
47
|
+
/**
|
48
|
+
* 审查文件列表
|
49
|
+
*/
|
50
|
+
reviewFiles(request: ReviewFilesRequest): Promise<ReviewResult>;
|
51
|
+
/**
|
52
|
+
* 配置AI服务
|
53
|
+
*/
|
54
|
+
configureAIService(request: ConfigureAIServiceRequest): Promise<SuccessResponse>;
|
55
|
+
/**
|
56
|
+
* 获取API密钥环境变量名
|
57
|
+
*/
|
58
|
+
private getAPIKeyEnvVar;
|
59
|
+
/**
|
60
|
+
* 保存API密钥到配置文件
|
61
|
+
*/
|
62
|
+
private saveAPIKeyToConfig;
|
63
|
+
/**
|
64
|
+
* 获取AI服务状态
|
65
|
+
*/
|
66
|
+
getAIServiceStatus(): Promise<ServiceStatusResponse>;
|
67
|
+
/**
|
68
|
+
* 检查单个服务状态
|
69
|
+
*/
|
70
|
+
private checkServiceStatus;
|
71
|
+
/**
|
72
|
+
* 检查服务是否可用
|
73
|
+
*/
|
74
|
+
private isServiceAvailable;
|
75
|
+
/**
|
76
|
+
* 检查服务是否已配置
|
77
|
+
*/
|
78
|
+
private isServiceConfigured;
|
79
|
+
/**
|
80
|
+
* 获取安装命令
|
81
|
+
*/
|
82
|
+
private getInstallCommand;
|
83
|
+
/**
|
84
|
+
* 获取配置命令
|
85
|
+
*/
|
86
|
+
private getConfigCommand;
|
87
|
+
}
|
88
|
+
//# sourceMappingURL=coderocket.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"coderocket.d.ts","sourceRoot":"","sources":["../src/coderocket.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,YAAY,EACZ,qBAAqB,EACrB,eAAe,EAGhB,MAAM,YAAY,CAAC;AAKpB;;;;GAIG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,iBAAiB,CAAc;;YAMzB,iBAAiB;IAS/B;;OAEG;YACW,qBAAqB;IA4BnC;;OAEG;YACW,mBAAmB;IAgCjC;;OAEG;YACW,oBAAoB;IAoBlC;;OAEG;YACW,oBAAoB;IA2BlC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA8BxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2CzB;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC;IA8DnE;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAsBxB;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAoCvE;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;IAgDrE;;OAEG;IACG,kBAAkB,CACtB,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,eAAe,CAAC;IAgD3B;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;OAEG;YACW,kBAAkB;IA+ChC;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,qBAAqB,CAAC;IA+B1D;;OAEG;YACW,kBAAkB;IA0BhC;;OAEG;YACW,kBAAkB;IAehC;;OAEG;YACW,mBAAmB;IAKjC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IASzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAQzB"}
|