AI Code Review

AI Code Review 是一个强大的 VS Code 扩展,利用人工智能技术为您的代码提供智能评审和质量检查。它可以在您提交代码前自动检测潜在问题,提高代码质量和开发效率。
✨ 主要特性
- 🤖 AI 驱动的代码评审:使用先进的 AI 模型分析代码质量
- 🔍 实时代码检查:支持暂存区变更和当前文件的即时评审
- 🚫 Git 提交拦截:在提交前自动进行代码评审,防止问题代码进入仓库
- ⚙️ 灵活配置:支持多种 AI 服务和自定义配置
- 📊 智能诊断:在编辑器中直接显示问题和建议
- 🎯 文件过滤:支持排除特定文件和目录
- 🔧 自动修复建议:提供具体的代码改进建议
🚀 快速开始
安装
- 在 VS Code 中打开扩展市场
- 搜索 "AI Code Review"
- 点击安装
或者通过命令行安装:
code --install-extension tencent.ai-code-review
基本配置
- 打开 VS Code 设置 (
Ctrl/Cmd + ,)
- 搜索 "AI Code Review"
- 配置 AI 服务端点和 API 密钥:
{
"aiCodeReview.enabled": true,
"aiCodeReview.aiService.endpoint": "https://your-ai-service.com/api",
"aiCodeReview.aiService.apiKey": "your-api-key",
"aiCodeReview.aiService.model": "gpt-3.5-turbo"
}
📖 使用指南
命令面板
通过 Ctrl/Cmd + Shift + P 打开命令面板,输入以下命令:
AI Code Review: Review Staged Changes - 评审 Git 暂存区的所有变更
AI Code Review: Review Current File - 评审当前打开的文件
AI Code Review: Configure AI Service - 打开配置对话框
右键菜单
在编辑器中右键点击,选择:
- Review Current File - 快速评审当前文件
Git 集成
在 Git 面板中,点击 Review Staged Changes 按钮来评审暂存的变更。
自动评审
启用自动评审功能后,插件会在以下情况自动触发:
⚙️ 配置选项
基本设置
| 配置项 |
类型 |
默认值 |
描述 |
aiCodeReview.enabled |
boolean |
true |
启用/禁用插件 |
aiCodeReview.maxFileSize |
number |
50000 |
最大文件大小限制(字节) |
AI 服务配置
| 配置项 |
类型 |
默认值 |
描述 |
aiCodeReview.aiService.endpoint |
string |
"" |
AI 服务端点 URL |
aiCodeReview.aiService.apiKey |
string |
"" |
API 密钥 |
aiCodeReview.aiService.model |
string |
"gpt-3.5-turbo" |
使用的 AI 模型 |
aiCodeReview.aiService.timeout |
number |
50000 |
请求超时时间(毫秒) |
文件过滤
{
"aiCodeReview.excludePatterns": [
"**/node_modules/**",
"**/dist/**",
"**/build/**",
"**/*.min.js",
"**/*.map"
]
}
🎯 使用场景
1. 代码提交前检查
# 添加文件到暂存区
git add .
# 在 VS Code 中点击 "Review Staged Changes"
# 或使用命令面板执行评审
插件会自动分析暂存区的变更,检测:
- 语法错误和逻辑问题
- 安全漏洞(如 SQL 注入、XSS 等)
- 代码规范问题
- 性能优化建议
2. 实时代码评审
在编辑器中打开任意文件,使用 AI Code Review: Review Current File 命令即可获得即时反馈。
3. 团队协作
配置统一的 AI 服务和规则,确保团队代码质量标准一致。
🔧 高级配置
自定义 AI 服务
插件支持腾讯文档内部的 AI 服务,使用以下 API 格式:
{
"aiCodeReview.aiService": {
"endpoint": "http://wdocs.woa.com/troubleshooter",
"apiKey": "your-api-key",
"model": "gpt-3.5-turbo",
"timeout": 50000,
"headers": {
"Content-Type": "application/json"
}
}
}
API 请求格式
插件使用以下格式与 AI 服务通信:
curl -X POST http://wdocs.woa.com/troubleshooter/agent/chat \
-H "Content-Type: application/json" \
-d '{
"threadId": "thread-123456789-abc123def",
"type": "human",
"content": [{"type": "text", "text": "请评审这段代码..."}]
}'
支持的消息类型
- human: 用户消息
- assistant: AI 助手消息
- system: 系统消息
内容格式
- text: 纯文本内容
- image: 图片内容(未来支持)
工作区配置
在项目根目录创建 .vscode/settings.json:
{
"aiCodeReview.enabled": true,
"aiCodeReview.excludePatterns": [
"**/node_modules/**",
"**/coverage/**",
"**/*.test.js"
]
}
📊 评审结果
问题等级
- 🔴 Error(错误):严重问题,建议立即修复
- 🟡 Warning(警告):潜在问题,建议关注
- 🔵 Info(信息):改进建议,可选择性采纳
结果展示
评审结果会显示在:
- 问题面板:VS Code 底部的问题标签页
- 编辑器内联:代码行旁的波浪线和提示
- 通知消息:右下角的通知弹窗
🛠️ 故障排除
常见问题
Q: AI 服务连接失败
A: 检查网络连接和 API 密钥配置
- 验证 endpoint URL 是否正确
- 确认 API 密钥有效且有足够权限
- 检查防火墙设置
Q: 评审结果不准确
A: 尝试以下解决方案:
- 更换更强大的 AI 模型(如 GPT-4)
- 调整文件大小限制
- 检查代码语言是否被支持
Q: 插件无响应
A: 重启 VS Code 或重新加载窗口
- 使用 Ctrl/Cmd + Shift + P
- 执行 "Developer: Reload Window"
调试模式
启用调试模式获取详细日志:
{
"aiCodeReview.debug": true,
"aiCodeReview.logLevel": "debug"
}
查看输出面板中的 "AI Code Review" 频道获取详细信息。
🔒 隐私和安全
- 本地处理:代码分析在本地进行,仅发送必要的代码片段到 AI 服务
- 数据加密:所有 API 通信使用 HTTPS 加密
- 可配置性:支持私有部署的 AI 服务
- 排除敏感文件:通过配置排除包含敏感信息的文件
👨💻 开发者指南
AI Client 使用
插件使用共享的 AI Client 库与 AI 服务通信:
import { createAIClientAdapter, createAdamsAdapter } from '@tencent/wdocs-ai-coding-ext-shared';
// 创建 AI 客户端适配器(使用原有 ai-client)
const aiClientAdapter = createAIClientAdapter({
endpoint: 'http://wdocs.woa.com/troubleshooter',
apiKey: 'your-api-key',
timeout: 50000,
});
// 或者创建 Adams 适配器
const adamsAdapter = createAdamsAdapter({
adamsUserName: 'your-username',
adamsUserToken: 'your-token',
modelId: 'your-model-id',
businessName: 'your-business'
});
// 发送文本消息
const request = aiClientAdapter.createTextRequest('请评审这段代码...');
const response = await aiClientAdapter.request(request);
if (response.success) {
console.log('AI 响应:', response.content);
} else {
console.error('请求失败:', response.error);
}
扩展开发
如果需要扩展插件功能:
- 克隆项目:
git clone https://github.com/tencent/wdocs-ai-coding-ext.git
- 安装依赖:
npm install
- 构建项目:
npm run build
- 在 VS Code 中按 F5 启动调试
测试
# 运行单元测试
npm run test:unit
# 运行集成测试
npm run test:demo
# 生成覆盖率报告
npm run test:coverage
🤝 贡献
欢迎贡献代码和反馈!
- Fork 项目
- 创建功能分支 (
git checkout -b feature/AmazingFeature)
- 提交更改 (
git commit -m 'Add some AmazingFeature')
- 推送到分支 (
git push origin feature/AmazingFeature)
- 打开 Pull Request
📄 许可证
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
🆘 支持
🎉 致谢
感谢所有贡献者和社区成员的支持!
让 AI 成为您的代码评审伙伴,提升代码质量,加速开发流程! 🚀