Skip to content
| Marketplace
Sign in
Visual Studio Code>Linters>Wdocs AI Code ReviewNew to Visual Studio Code? Get it now.
Wdocs AI Code Review

Wdocs AI Code Review

wdocs-ext

|
29 installs
| (0) | Free
AI-powered code review for Git commits, Powerd by WDOCS
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Wdocs AI Code Review

Version License VS Code Node.js

Wdocs AI Code Review 是一个专为腾讯文档团队打造的智能代码评审 VS Code 扩展。基于腾讯文档内部 AI 服务,为开发者提供专业的代码质量检查、安全漏洞扫描和代码规范建议。支持多种 AI 服务后端,包括 Knot、Adams 和 wdocs-ai 服务。

✨ 主要特性

  • 🤖 多 AI 服务支持:集成 Knot、Adams、wdocs-ai 三种内部 AI 服务
  • 🔍 智能代码评审:深度分析代码质量、安全性和可维护性
  • 🚫 Git 提交拦截:在提交前自动进行代码评审,防止问题代码进入仓库
  • 📊 可视化报告:生成美观的 HTML 评审报告,支持深色/浅色主题
  • ⚙️ 灵活配置:支持多环境配置(devcloud/local)和服务快速切换
  • 🎯 智能过滤:自动排除 node_modules、dist 等无需评审的文件
  • 🔗 企微通知:支持将评审结果推送到企业微信群
  • 🛠️ 调试工具:内置调试面板,方便开发和测试
  • 📈 性能优化:支持大文件处理和批量评审

🚀 快速开始

安装

方式一:从 VSIX 文件安装(推荐)

# 构建并安装扩展
cd ai-code-review
npm run build
npm run package
npm run install-extension

方式二:开发模式安装

# 克隆项目
git clone https://git.woa.com/GYWeb/wdocs-ai-coding-ext.git
cd wdocs-ai-coding-ext/ai-code-review

# 安装依赖并构建
npm install
npm run build

# 在 VS Code 中按 F5 启动调试模式

基本配置

  1. 打开 VS Code 设置 (Ctrl/Cmd + ,)
  2. 搜索 "AI Code Review"
  3. 选择 AI 服务类型并配置相应参数:

基本配置

{
  "aiCodeReview.enabled": true,
  "aiCodeReview.token": "your-service-token",
  "aiCodeReview.username": "your-username"
}

注意: AI 服务类型、环境、超时时间、文件大小限制、排除模式等配置已内置默认值,无需手动配置。

快速开始示例

  1. 配置服务:

    # 打开命令面板 (Ctrl/Cmd + Shift + P)
    > AI Code Review: Configure AI Service
    # 输入你的 token 和用户名
    
  2. 评审暂存区变更:

    git add .
    # 在 VS Code 中使用命令面板
    > AI Code Review: Review Staged Changes
    
  3. 查看评审结果:

    • 在弹出的 webview 面板中查看详细报告
    • 在问题面板中查看具体问题定位

📖 使用指南

命令面板

通过 Ctrl/Cmd + Shift + P 打开命令面板,输入以下命令:

核心功能

  • AI Code Review: Review Staged Changes - 评审 Git 暂存区的所有变更
  • AI Code Review: Review Current File - 评审当前打开的文件
  • AI Code Review: AI CR - Commit - 智能提交评审(结合 Git 提交流程)
  • AI Code Review: Review Before Commit - 开启/关闭提交前自动评审

服务管理

  • AI Code Review: Switch to Knot AI Service - 切换到 Knot AI 服务
  • AI Code Review: Switch to Adams AI Service - 切换到 Adams AI 服务
  • AI Code Review: Switch to wdocs-ai Service - 切换到 wdocs-ai 服务
  • AI Code Review: Configure AI Service - 配置当前 AI 服务
  • AI Code Review: Test AI Service Connection - 测试 AI 服务连接

注意: 服务切换功能仍然可用,但默认使用 Knot AI 服务。

调试工具(开发模式)

  • AI Code Review: Open Debug Panel - 打开调试面板
  • AI Code Review: Debug Toolbox - 调试工具箱

右键菜单

在编辑器中右键点击,选择:

  • Review Current File - 快速评审当前文件

Git 集成

在 Git 面板中,点击 Review Staged Changes 按钮来评审暂存的变更。

自动评审

启用自动评审功能后,插件会在以下情况自动触发:

  • Git 提交前(自动拦截并评审)

⚙️ 配置选项

用户配置

配置项 类型 默认值 描述
aiCodeReview.enabled boolean true 启用/禁用插件
aiCodeReview.token string "" 服务认证令牌
aiCodeReview.username string "" 用户名(部分服务需要)

内置默认配置

以下配置已内置默认值,无需用户手动配置:

配置项 默认值 描述
serviceType "knot" AI 服务类型(Knot AI 服务)
environment "local" 服务环境(本地环境)
timeout 30000 请求超时时间(30秒)
maxFileSize 50000 最大文件大小限制(50KB)
enableReviewBeforeCommit false 提交前自动评审(默认关闭)
excludePatterns ["**/node_modules/**", "**/dist/**", ...] 排除文件模式

🎯 使用场景

1. 代码提交前检查

# 添加文件到暂存区
git add .

# 在 VS Code 中点击 "Review Staged Changes"
# 或使用命令面板执行评审

插件会自动分析暂存区的变更,检测:

  • 语法错误和逻辑问题
  • 安全漏洞(如 SQL 注入、XSS 等)
  • 代码规范问题
  • 性能优化建议

2. 实时代码评审

在编辑器中打开任意文件,使用 AI Code Review: Review Current File 命令即可获得即时反馈。

3. 团队协作

配置统一的 AI 服务和规则,确保团队代码质量标准一致。

🔧 高级配置

AI 服务详细说明

默认服务:Knot AI

插件默认使用 Knot AI 服务,这是腾讯内部的智能对话平台,提供专业的代码评审能力:

  • Agent ID: 5c3d4466aec342118f05933a158ae4e1
  • 对话链接: https://knot.woa.com/agent/detail/{agentId}/llmops
  • 支持企微通知: 可将评审结果推送到企业微信群
  • 默认超时: 30秒
  • 文件大小限制: 50KB

其他可用服务

虽然默认使用 Knot AI,但仍可通过命令切换到其他服务:

Adams AI 服务

  • 腾讯文档的内部 AI 服务
  • 通过命令面板切换:AI Code Review: Switch to Adams AI Service

wdocs-ai 服务

  • 文档团队的专用 AI 服务
  • 通过命令面板切换:AI Code Review: Switch to wdocs-ai Service

工作区配置

在项目根目录创建 .vscode/settings.json:

{
  "aiCodeReview.enabled": true,
  "aiCodeReview.excludePatterns": [
    "**/node_modules/**",
    "**/coverage/**",
    "**/*.test.js"
  ]
}

📊 评审结果

问题等级

  • 🔴 Error(错误):严重问题,建议立即修复
  • 🟡 Warning(警告):潜在问题,建议关注
  • 🔵 Info(信息):改进建议,可选择性采纳

评审报告

插件会生成详细的 HTML 评审报告,包含:

报告结构

  • 元数据信息:评审 ID、时间戳、分支信息等
  • 变更分析:文件变更统计、业务上下文分析
  • 问题列表:按优先级分类的问题详情
  • 改进建议:具体的代码优化建议
  • 总体评估:代码质量、安全性、可维护性评分

问题分级

  • P0(严重):阻塞性问题,必须立即修复
  • P1(重要):重要问题,建议优先修复
  • P2(一般):一般问题,建议修复
  • P3(轻微):轻微问题,可选择性修复

结果展示

评审结果会展示在:

  1. Webview 面板:美观的 HTML 报告界面
  2. 问题面板:VS Code 底部的问题标签页
  3. 企微通知:推送到指定的企业微信群(可选)

🛠️ 开发与调试

调试功能

插件内置了强大的调试工具,方便开发者测试和验证功能:

调试面板

# 使用命令面板
AI Code Review: Open Debug Panel

# 或使用 npm 脚本
npm run debug:panel

测试脚本

# 运行调试演示
npm run test:demo

# 独立测试
npx ts-node src/test/demo.ts

调试功能特性

  • 模拟数据测试:使用 result.ts 中的示例数据
  • 多场景测试:原始数据、修改数据、错误数据、性能测试
  • 交互式界面:支持数据修改、导出和实时预览
  • 性能监控:测试大量数据的处理性能

项目结构

ai-code-review/
├── src/
│   ├── core/                 # 核心功能模块
│   │   ├── code-review-manager.ts
│   │   ├── git-manager.ts
│   │   ├── configuration-manager.ts
│   │   └── notify-to-wecom-manager.ts
│   ├── config/              # 配置文件
│   │   └── knot.ts
│   ├── test/                # 测试和调试
│   │   ├── debug-review-panel.ts
│   │   ├── demo.ts
│   │   └── mocks/
│   ├── examples/            # 示例数据
│   │   └── result.ts
│   └── extension.ts         # 扩展入口
├── dist/                    # 编译输出
└── package.json

🚀 部署与发布

构建扩展

# 开发构建
npm run build:dev

# 生产构建  
npm run build

# 打包扩展
npm run package

安装测试

# 安装打包后的扩展
npm run install-extension

# 或手动安装
code --install-extension ai-1.0.18.vsix

📋 开发规范

代码提交规范

  • 使用本插件进行代码评审后再提交
  • 修复所有 P0 和 P1 级别的问题
  • 考虑采纳 P2 级别的建议

测试要求

  • 新功能需要添加测试用例
  • 使用 npm run test:unit 运行单元测试
  • 使用调试工具验证功能正确性

🤝 贡献指南

提交 Issue

  • 详细描述问题现象
  • 提供复现步骤
  • 附上相关的配置信息

提交 PR

  • Fork 项目并创建功能分支
  • 确保代码通过所有测试
  • 更新相关文档

📞 技术支持

常见问题

1. AI 服务连接失败

  • 检查网络连接和服务配置
  • 验证 token 和用户名是否正确
  • 使用 "Test AI Service Connection" 命令测试

2. 评审结果不准确

  • 确认使用的 AI 服务类型
  • 检查代码文件大小是否超限
  • 尝试切换不同的 AI 服务

3. 性能问题

  • 调整 maxFileSize 限制
  • 使用 excludePatterns 排除无关文件
  • 考虑分批处理大型项目

联系方式

  • 项目地址: https://git.woa.com/GYWeb/wdocs-ai-coding-ext
  • 问题反馈: 在项目中创建 Issue
  • 技术讨论: 联系腾讯文档开发团队

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。


Powered by 腾讯文档团队 🚀 2. 编辑器内联:代码行旁的波浪线和提示 3. 通知消息:右下角的通知弹窗

🛠️ 故障排除

常见问题

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);
}

扩展开发

如果需要扩展插件功能:

  1. 克隆项目:git clone https://github.com/tencent/wdocs-ai-coding-ext.git
  2. 安装依赖:npm install
  3. 构建项目:npm run build
  4. 在 VS Code 中按 F5 启动调试

测试

# 运行单元测试
npm run test:unit

# 运行集成测试
npm run test:demo

# 生成覆盖率报告
npm run test:coverage

🤝 贡献

欢迎贡献代码和反馈!

  1. Fork 项目
  2. 创建功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开 Pull Request

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

🆘 支持

  • 文档:完整文档
  • 问题反馈:GitHub Issues
  • 讨论:GitHub Discussions

🎉 致谢

感谢所有贡献者和社区成员的支持!


让 AI 成为您的代码评审伙伴,提升代码质量,加速开发流程! 🚀

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft