feat: 设置面板 + Provider 扩展 + 构建脚本

- 设置面板:三步引导 / AI 配置 / API Key / 规则管理 / 连接测试
- Provider 重构:统一 OpenAICompatibleProvider 基类,新增 Gemini/Claude/混元/智谱等
- 审查面板 Webview:三 Tab、统计卡片、问题列表、postMessage 通信
- esbuild 构建脚本 + 生产打包 + PMD 下载
- 保存文件自动静态分析(500ms debounce)
This commit is contained in:
范智鹏
2026-07-16 22:20:30 +08:00
parent 1144c9b5db
commit 805737fcfc
27 changed files with 1130 additions and 481 deletions
+3 -3
View File
@@ -1,7 +1,7 @@
import * as vscode from 'vscode';
import type { AIProvider } from './providers/base';
import { createProvider } from './factory';
import { getAIProvider, getAIModel, getAIEndpoint, getAITemperature, getAITimeout, getAIOutputLanguage, getApiKey } from '../config';
import { getAIProvider, getAIModel, getAIBaseUrl, getAITemperature, getAITimeout, getAIOutputLanguage, getApiKey } from '../config';
import type { LinterDiagnostic, CustomRule } from '../types';
import type {
AIEngineResult,
@@ -73,11 +73,11 @@ export async function runAIReview(
}
const providerId = getAIProvider();
const endpoint = getAIEndpoint();
const baseUrl = getAIBaseUrl();
let provider: AIProvider;
try {
provider = createProvider(providerId, apiKey, endpoint);
provider = createProvider(providerId, apiKey, baseUrl);
} catch (err) {
return {
customRuleResults: [],