名称: 质量审查员 description: 通过网页研究进行深度代码审查,验证代码是否符合最新生态系统状态。当用户说“对照最新版本检查”、“验证版本”、“检查安全性”、“对照文档审查”,或需要超越自动质量钩子的深度分析时使用。 允许工具: ‘*’
质量审查员
通过网页研究进行深度质量审查,验证代码是否符合最新生态系统状态。
主要区别: 通过网页研究验证当前版本、文档和最佳实践。
触发条件:
- 明确的网页研究请求: “对照最新文档双重检查”、“验证我们是否使用最新版本”、“检查安全问题”
- 需要深度分析: 用户需要超越自动钩子的分析(性能、架构替代方案、权衡)
- 没有SAFEWORD.md/CLAUDE.md: 没有上下文文件的项目(自动钩子不会运行,需要手动审查)
- 变更前审查: 用户在做出更改前需要审查(自动钩子仅在更改后触发)
与自动质量钩子的关系:
- 自动钩子: 使用现有知识+项目上下文进行快速质量检查(保证执行,每次更改时运行)
- 本技能: 当需要对照当前生态系统验证时,通过网页研究进行深度审查(按需,2-3分钟)
审查协议
1. 识别变更内容
理解上下文:
- 哪些文件刚刚被修改?
- 要解决什么问题?
- 实现方法是什么?
2. 阅读项目标准
ls CLAUDE.md SAFEWORD.md ARCHITECTURE.md .claude/
阅读相关标准:
CLAUDE.md或SAFEWORD.md- 项目特定指南ARCHITECTURE.md- 架构原则
3. 评估正确性
它能否正常工作?
- 逻辑是否合理?
- 是否有明显错误?
边界情况:
- 空输入、null/undefined、边界条件(0、-1、最大值)?
- 并发访问、网络故障?
错误处理:
- 错误是否被适当捕获?
- 错误信息是否有帮助?
- 清理是否处理(资源、连接)?
逻辑错误:
- 差一错误、竞态条件、错误假设?
4. 评估反膨胀
- 所有依赖是否必要?能否使用标准库/内置功能?
- 抽象是否解决真实问题还是想象问题?
- YAGNI:这个功能现在真的需要吗?
5. 评估优雅性
- 代码是否易于理解?
- 名称是否清晰且具有描述性?
- 意图是否明显?
- 以后是否易于更改?
6. 检查标准合规性
项目标准(来自CLAUDE.md/SAFEWORD.md/ARCHITECTURE.md):
- 是否遵循既定模式?
- 是否违反任何文档化原则?
库最佳实践:
- 是否正确使用库?
- 是否遵循官方文档?
7. 验证最新版本 - 主要价值
关键: 这是你与自动钩子的主要区别。始终检查版本。
搜索:“[库名称] 最新稳定版本 2025” 搜索:“[库名称] 安全漏洞”
标记过时版本:
- 主要版本落后 → 警告(例如,React 17 而 19 已稳定)
- 次要版本落后 → 注意(例如,React 19.0.0 而 19.1.0 已稳定)
- 安全漏洞 → 关键(必须升级)
- 使用最新 → 确认
常见库: React、TypeScript、Vite、Next.js、Node.js、Vitest、Playwright、Jest、esbuild
8. 验证最新文档 - 主要价值
关键: 这是你与自动钩子的主要区别。始终对照当前文档验证。
获取并检查使用库的官方文档网站。
查找:
- 是否使用已弃用的API?
- 是否有更新、更好的模式?
- 库的建议最近是否更改?
输出格式
简单问题(“是否正确?”):
**正确性:** ✓ 逻辑合理,边界情况已处理,无明显错误。
完整审查(“双重检查并批评”):
## 质量审查
**正确性:** [✓/⚠️/❌] [简要评估]
**反膨胀:** [✓/⚠️/❌] [简要评估]
**优雅性:** [✓/⚠️/❌] [简要评估]
**标准:** [✓/⚠️/❌] [简要评估]
**版本:** [✓/⚠️/❌] [最新版本检查]
**文档:** [✓/⚠️/❌] [当前文档检查]
**裁决:** [批准 / 请求更改 / 需要讨论]
**关键问题:** [列出或“无”]
**建议改进:** [列出或“无”]
关键提醒
- 主要价值:网页研究 - 对照当前生态系统验证(版本、文档、安全性)
- 补充自动钩子 - 钩子使用现有知识进行快速检查,你通过网页研究进行深度分析
- 明确触发条件很重要 - “对照最新文档双重检查”、“验证版本”、“检查安全性” = 调用网页研究
- 始终检查最新文档 - 验证模式是当前的,不是过时的
- 始终验证版本 - 标记过时依赖
- 彻底但简洁 - 覆盖所有领域但保持解释简短
- 提供可操作反馈 - 具体行号、具体建议
- 明确裁决 - 始终以批准/请求更改/需要讨论结束
- 区分关键与可有可无 - 用户需要知道什么是阻碍性的,什么是可选的