VSCode AI 代码检测插件
自动统计和追踪项目中 AI 生成代码与手写代码的比例,帮助开发者了解 AI 工具的实际使用情况。
功能特点
- 智能检测:基于输入速度和行数的智能检测,区分 AI 瞬时生成与用户逐字输入
- 内容哈希追踪:通过标准化内容哈希追踪代码来源,不受格式化影响
- 多工具兼容:支持 Copilot、Claude Code、Cursor 等主流 AI 编程工具
- 智能过滤:自动识别并过滤格式化、撤销/重做、Git 操作等非编码行为
- 用户确认机制:检测结果可通过弹窗确认,支持手动修正
- Commit 自动标注:Git commit 时自动在 message 末尾添加 AI 出码率
快速开始
安装
在 VSCode 扩展市场搜索 AI Detect 安装,或从 VSIX 文件安装:
code --install-extension ai-detect-plugin-x.x.x.vsix
基本使用
首次启动
- 插件激活时会询问是否开启 AI 代码检测
- 选择"开启"后开始实时监测代码变更
- 也可以在设置中配置
aiDetect.detection.autoStart: true 自动开启
查看实时统计
- 右下角状态栏显示:
AI: 45.2% | 用户: 54.8%
- 鼠标悬停查看详细统计
打开统计面板
- 按
Ctrl+Shift+P(Mac: Cmd+Shift+P)
- 输入:
AI Detect: Show Statistics
- 点击 🔄 刷新按钮获取最新数据
- 点击文件行末尾的 🗑️ 按钮可移除单个文件的统计记录
手动标记代码
- 选中代码行 → 右键 →
AI Detect: Mark as...
- 选择标记类型(AI/User/Unknown)
生成报告
- 命令面板 →
AI Detect: Generate Report
- 报告保存至
.ai-stats/report.json
Commit 自动标注
配置选项
在 VSCode 设置(settings.json)中配置:
{
// 基本选项
"aiDetect.enabled": true,
"aiDetect.detection.confidenceThreshold": 0.6,
"aiDetect.detection.autoStart": false,
// Git 集成
"aiDetect.git.resetOnBranchSwitch": true,
"aiDetect.git.resetOnCommit": false,
"aiDetect.git.ignoreOperations": true,
// UI 选项
"aiDetect.ui.showStatusBar": true,
"aiDetect.ui.showConfirmation": true
}
配置说明
| 配置项 |
默认值 |
说明 |
aiDetect.detection.autoStart |
false |
是否自动开启检测(否则弹窗询问) |
aiDetect.detection.confidenceThreshold |
0.6 |
AI 检测置信度阈值 (0-1) |
aiDetect.git.resetOnBranchSwitch |
true |
切换分支时重置统计 |
aiDetect.git.resetOnCommit |
false |
commit 后清空当前分支统计数据 |
aiDetect.git.ignoreOperations |
true |
Git pull/fetch 期间暂停检测 |
aiDetect.ui.showStatusBar |
true |
显示状态栏统计 |
aiDetect.ui.showConfirmation |
true |
显示检测确认弹窗 |
检测规则
✅ 会被检测为 AI
- 多行代码快速插入(>=2 行 + <100ms)
- 大块代码快速插入(>=5 行 + <200ms)
- 单行快速补全(1 行 + >15 字符 + <50ms)
- 所有检测结果会弹窗让用户确认(可配置关闭)
✅ 会被检测为用户
❌ 不会统计
- 格式化操作(Prettier、Format Document)
- 撤销/重做操作(Cmd+Z)
- Git pull/checkout 等批量文件变化
- 粘贴操作(
Cmd+V)
- 被忽略的文件(
node_modules/、.git/、.ai-stats/ 等)
数据存储
- 存储位置:统计数据保存在项目根目录
.ai-stats/data.json
- 按分支存储:每个 Git 分支独立保存统计数据
- 自动恢复:切换分支时自动恢复该分支的历史统计
- 自动忽略:
.ai-stats 目录会自动添加到 .gitignore
常见问题
统计不准确?
- 检查置信度阈值设置(建议 0.6-0.7)
- 使用手动标记功能修正错误判定
- 启用确认弹窗手动确认每次检测
Git 操作后统计异常?
- 确保
aiDetect.git.ignoreOperations 为 true
- 查看 Output 面板 → "AI Detect" 日志
想要 commit 后清空统计?
设置 aiDetect.git.resetOnCommit: true,每次 commit 后会自动清空当前分支的统计数据。
许可证
MIT
反馈与问题:如有问题请联系插件维护者
| |