Files
2026Technology-Competition/AGENTS.md
T
范智鹏 6aaccd490c fix: 审查报告修复与清理,升级至 1.3.0
- 版本号 1.2.0 -> 1.3.0;CHANGELOG 新增 1.3.0 条目(修复 6 项 + 清理 3 项)
- addCustomRule 空壳命令改为打开设置面板(抽取 openSetupPanel 复用)
- deactivate 清理 analysisTimers pending 定时器 + 显式 dispose markers
- PMD execPmd 去掉 stdout.length>0 兜底,非零退出按 stderr 报错
- SQLFluff 项目配置检测全量支持 setup.cfg/tox.ini/pep8.ini/pyproject.toml(内容感知)
- 删除 orchestrator 未使用的 getAdapterMap/getAdaptersByIds,补充单语言单 linter 设计注释
- 删除 pmd.ts 未使用的 jarPathChecked 死字段
- merger 翻译配对改为按 originalRuleId 匹配,新增 2 个测试
- runStaticAndApply 包 try-catch,消除未处理 Promise 拒绝
- AGENTS.md 日志规则新增打包排除项;_AI_USAGE_LOG.md 追加记录
2026-08-09 14:35:43 +08:00

90 lines
3.7 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.
# 开发范式:Stage-Driven Agent Development (SDAD)
## 阶段流程(必须严格遵守,不可跳过或合并)
① 用户提出 → ② 需求澄清 → ③ 方案设计 → ④ 人类审批 → ⑤ 编码实现 → ⑥ 审查验证
## 强制规则
- 阶段顺序不可调换,每个阶段完成后才进入下一阶段
- Stage ④ 人类审批是必经门,未通过不得进入编码
- 编码过程中发现方案有遗漏/矛盾,先暂停提问,不自作主张
## 日志规则(自动执行)
每次创建或修改代码文件后,在项目根目录的 `_AI_USAGE_LOG.md` 中追加一条记录,必须包含以下字段:
- **日期时间**:文件修改时间(用 `Get-Item LastWriteTime``Get-Date` 获取),不可乱填或估算
- **范式步骤**:当前已完成的阶段累积链(如 `① 用户提出 → ② 需求澄清`),按实际执行顺序
- **修改摘要**:简要描述改了什么
- **中间产物**:AI 交互过程中被淘汰的草稿或过程稿,包括但不限于:先给了伪代码后改正式实现、输出了多个方案选了其中一个、调试时生成的废弃代码版本、类型试错(如先用 `typeof import()` 后改 `interface`)、先改文件 A 后发现不够又改了文件 B
- **涉及文件**:文件路径列表
- **使用模型**:当前使用的模型名
**排除项**:打包工程(生产打包 VSIX`npm run package-prod` / `vsce package`)不需要记录
## 阶段执行指引
- Stage ① @用户提出load skill stage-1-propose
- Stage ② @需求澄清load skill stage-2-clarify
- Stage ③ @方案设计load skill stage-3-design
- Stage ④ @人类审批load skill stage-4-approve
- Stage ⑤ @编码实现load skill stage-5-implement
- Stage ⑥ @审查验证load skill stage-6-verify
---
# 项目:vscode-code-reviewer
VSCode 代码审查与规范检查一体化插件。
## 开发者命令
| 命令 | 说明 |
|------|------|
| `npm run compile` | TypeScript 编译(tsc -p ./ |
| `npm run watch` | tsc watch 模式 |
| `npm run lint` | ESLint 检查 `src/` |
| `npm test` | 编译 → lint → 运行测试 |
| F5 (VSCode) | 启动 Extension Dev Host |
测试运行器:`@vscode/test-cli`,配置在 `.vscode-test.mjs`,测试文件匹配 `out/test/**/*.test.js`
验证顺序:`lint → compile → test`
## 架构
三层架构,见 `docs/superpowers/specs/2026-07-10-code-reviewer-design.md`
```
UI 层 — TreeView 面板 / Inline Diagnostic / Code Action
核心层 — Linter 管理器 + AI 审查引擎(均实现 Analyzer 接口)
基础层 — 配置管理 / 规则管理 / 报告导出
```
所有 linter 和 AI 审查器统一实现 `Analyzer` 接口(定义在 `src/analyzers/analyzer.ts`)。
## 文件结构
```
src/
├── extension.ts # 入口:activate/deactivate
├── activation/ # 注册命令、视图、CodeAction
├── analyzers/ # Analyzer 接口 + 各 linter/AI 实现
├── manager/linterManager.ts # Linter 管理器
├── views/ # TreeView 提供者
├── services/ # AI API、配置服务
├── utils/ # 工具函数
└── types.ts # 公共类型
```
命令 ID 前缀统一为 `codeReviewer.`(如 `codeReviewer.analyzeFile`)。
## 代码规范
- 变量/函数:camelCase,类:PascalCase
- 导入风格:ESMimport/export
- 不加注释
- 异步用 async/await
- ESLint 配置:`eslint.config.mjs`typescript-eslint parser
## 设计文档
设计 spec 存放路径:`docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md`
编码须严格遵循已批准的 spec,不得自作主张。