Files
2026Technology-Competition/README.md
T
范智鹏 65b9e1915b docs: 重写 README 补齐安装/运行/环境要求/API 密钥配置/依赖清单/前端面板说明
- 新增运行环境要求(VS Code ^1.120.0、Node、Java、sqlfluff、内置 ESLint/Stylelint)
- 新增安装步骤(VSIX 安装 + 源码构建两方式)
- 新增运行方法(端用户命令表 + 开发者命令表)
- 新增前端 Webview 面板启动方式说明
- 新增 API 密钥配置说明(SecretStorage 存储 + 配置项表 + 自定义供应商)
- 新增依赖清单(运行时/开发依赖表)及 linter/PMD/SQLFluff 等配置项
2026-08-20 22:34:13 +08:00

144 lines
6.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# vscode-code-reviewer · 净码特工 (Code Purifier)
AI 驱动的代码审查与规范检查一体化 VS Code 插件。集成 ESLint、Stylelint、PMD、SQLFluff 等多种 linter,并支持 AI 辅助审查与自动修复。
## 功能特性
- 一键运行代码审查
- 选中代码片段 / 单个方法审查
- Webview 面板展示审查结果与 AI 审查详情
- 自动修复(含 AI 修复、修复预览)
- 报告导出
- 自定义规则管理与导入(Word / Excel / PPT / Markdown / TXT / YAML
- 支持语言:JavaScript、TypeScript、Java、JSP、HTML、CSS、SQL、PL/SQL
- 多 AI 供应商(DeepSeek / OpenAI / Gemini / Claude / 腾讯混元 / 智谱 / 月之暗面 / 阿里通义)
- 方法级 CodeLens 审查按钮、编辑器波浪线标记
## 运行环境要求
| 组件 | 要求 |
|------|------|
| VS Code | `^1.120.0` |
| Node.js | 构建源码需要(打包产物无需) |
| Java | 检查 Java / JSP 需要,`java` 命令需在 PATH 中 |
| SQLFluff | 检查 SQL / PL/SQL 需要,`sqlfluff` 命令需在 PATH 中 |
| ESLint / Stylelint | 随插件内置,无需单独安装 |
PMD 与内置规则集通过 `npm run download-pmd` 获取(默认位于 `jars/pmd`)。
## 安装
### 方式一:从 VSIX 安装(端用户)
1. 安装 VS Code 1.120 或更高版本。
2. 安装 VS Code 扩展依赖环境(Java、SQLFluff,见上文运行环境要求)。
3. 命令行安装:
```bash
code --install-extension vscode-code-reviewer-1.3.0.vsix
```
或在 VS Code 扩展面板点击右上角 `...` → 「从 VSIX 安装…」,选择生成的 `.vsix` 文件。
### 方式二:从源码构建安装(开发者)
```bash
git clone <repo-url>
cd vscode-code-reviewer
npm install
npm run download-pmd # 下载 PMD jar(可选,需要 PMD 时执行)
npm run compile # TypeScript 编译
```
按 `F5` 启动 Extension Development Host 进行调试。
## 运行方法
### 端用户
| 操作 | 说明 |
|------|------|
| `Ctrl+Shift+R` | 运行代码审查(当前文件) |
| 命令面板 → `Code Purifier: 审查选中代码` | 仅审查选中的代码 |
| 命令面板 → `Code Purifier: 审查此方法` | 审查光标所在方法(或点击函数声明上方的 CodeLens 按钮) |
| 命令面板 → `Code Purifier: 打开审查面板` | 打开审查结果面板 |
| 命令面板 → `Code Purifier: 修复此问题` / `批量修复` | 修复问题 |
| 命令面板 → `Code Purifier: 导出报告` / `导出规则模板` | 导出报告 / 模板 |
全部命令前缀为 `Code Purifier:`,可在命令面板中搜索使用。
### 开发者
```bash
npm run compile # TypeScript 编译 + 复制 webview JS
npm run watch # tsc watch 模式
npm run lint # ESLint 检查 src/
npm test # 编译 → lint → 运行测试(@vscode/test-cli
npm run package-prod # 生产打包:build + vsce package,产出 .vsix
```
## 前端界面(Webview)启动方式
插件内置 Webview 面板,无需启动独立前端服务:
- **设置面板**:点击左侧活动栏「净码特工 / Code Purifier」图标,或在命令面板执行 `Code Purifier: 打开设置面板`。
- **审查面板**:执行 `Code Purifier: 打开审查面板` 或运行一次审查后自动展示。
Webview 资源在编译/打包时自动复制到 `out/webview/`,随插件加载。
## API 密钥配置
1. 打开设置面板(见上文)。
2. 在「API 配置」区域选择 AI 供应商(默认 `deepseek`),填入 API Key`sk-...`)。
3. API Key 通过 VS Code SecretStorage 安全存储,**不会写入** `settings.json`。
4. 其他参数可在 `settings.json` 中配置:
| 配置项 | 默认值 | 说明 |
|--------|--------|------|
| `vscode-code-reviewer.ai.provider` | `deepseek` | AI 供应商 |
| `vscode-code-reviewer.ai.model` | `deepseek-chat` | 模型名称 |
| `vscode-code-reviewer.ai.baseUrl` | `https://api.deepseek.com/v1` | API Base URL |
| `vscode-code-reviewer.ai.temperature` | `0.2` | 温度参数 |
| `vscode-code-reviewer.ai.maxTokens` | `8192` | 单次最大输出 Token |
| `vscode-code-reviewer.ai.timeout` | `300` | 请求超时(秒) |
| `vscode-code-reviewer.ai.outputLanguage` | `zh-CN` | 插件语言(zh-CN / en / ja |
支持自定义 AI 供应商:在工作区根目录创建 `.code-review/providers.json`,按 `providers.json` 的格式追加 provider,即可覆盖或新增供应商。
## 依赖清单
**运行时依赖(dependencies**
| 依赖 | 版本 | 用途 |
|------|------|------|
| `@eslint/js` | ^9.39.3 | ESLint 内置规则集 |
| `eslint` | ^9.39.3 | JS/TS 规范检查 |
| `mammoth` | ^1.12.0 | Word 规则文档解析 |
| `officeparser` | ^7.5.0 | Office 文档解析 |
| `stylelint` | ^17.14.0 | CSS 规范检查 |
| `stylelint-config-recommended` | ^18.0.0 | Stylelint 推荐规则 |
| `typescript-eslint` | ^8.56.1 | TypeScript ESLint 规则 |
| `xlsx` | ^0.18.5 | Excel 规则导入导出 |
**开发依赖(devDependencies**
| 依赖 | 版本 | 用途 |
|------|------|------|
| `typescript` | ^5.9.3 | TypeScript 编译器 |
| `esbuild` | ^0.28.1 | 生产构建打包 |
| `@types/vscode` | ^1.120.0 | VS Code API 类型 |
| `@types/node` | 22.x | Node 类型定义 |
| `@types/mocha` | ^10.0.10 | Mocha 类型定义 |
| `@vscode/test-cli` | ^0.0.12 | 测试运行器 |
| `@vscode/test-electron` | ^2.5.2 | 测试用 Electron |
| `@vscode/vsce` | ^3.9.2 | VSIX 打包 |
## 其他配置项
- **linter 选择**`vscode-code-reviewer.linters.*`javascript / typescript / java / jsp / html / css / sql / plsql),留空则禁用对应语言检查。
- **PMD**`vscode-code-reviewer.pmd.jarPath` / `rulesetPath` / `jspRulesetPath` / `autoAuxClasspath`。
- **SQLFluff**`vscode-code-reviewer.sqlfluff.configFile` / `dialect`。
- **修复**`vscode-code-reviewer.fixer.maxIterations`。
- **CodeLens**`vscode-code-reviewer.codelens.enabled` / `codelens.languages`。
- **波浪线标记**`vscode-code-reviewer.markers.enabled`。
详细配置项可在 VS Code 设置页搜索 `vscode-code-reviewer` 查看。