Guides

Claude Skills 用于代码质量:审查、测试与安全

如何使用 Claude Skills 自动化代码审查、测试和安全审计。包含 review-pr、webapp-testing 和 code-auditor skills 真实示例的实用指南。

Claude Skills TeamMarch 10, 202611 min read
#code-quality#code-review#testing#security#claude-code#developer-workflow
Claude Skills 用于代码质量:审查、测试与安全

写代码越来越快了。审查、测试和审计漏洞的速度跟不上。这个差距正是 Claude Skills 有最明确投资回报的地方。

本指南介绍 Claude Skills Hub 中直接解决三个不同瓶颈的代码质量 skills:Pull Request 审查、自动化测试和安全审计。每个部分涵盖 skill 做什么、如何调用它,以及输出实际是什么样的——让您在安装之前就知道会得到什么。


AI 辅助代码质量的问题

Claude Code 可以在几分钟内编写一个功能。更难的挑战是它审查自己输出的能力很差。一个 AI 编写代码又审查同一段代码有一个明显的盲点:它倾向于验证原始实现中内置的假设,而不是质疑它们。

Claude Skills 社区收敛的解决方案是专业化。与其让 Claude 做所有事情,不如给它聚焦的 skills,用不同的视角运行单独的审查轮次。这就是为什么目录中最有效的代码质量 skills 使用多智能体模式——一个智能体编写,单独的智能体审查,协调器聚合结果。


Skill 1:审查本地更改

Skill: Review Local Changes 星数: 433 | 类别: dev、testing

Review Local Changes 是 pull request 存在之前那个步骤的正确工具。它对您未提交或本地暂存的更改运行六个专业审查智能体,每个同时检查代码质量的不同维度。

六个审查者角色是:

  • 安全审查者:寻找注入风险、密钥暴露、不当认证和 OWASP Top 10 模式
  • 缺陷审查者:检查空指针风险、差一错误、竞争条件和资源泄漏
  • 代码质量审查者:标记 SOLID 原则违规、DRY 失败和命名不一致
  • 契约审查者:检查 API 签名、数据结构和接口承诺是否兑现
  • 测试覆盖审查者:识别哪些代码路径没有测试覆盖并提出具体测试用例
  • 历史审查者:将更改与最近的提交进行比较以检测回归风险和上下文不匹配

调用它只需在 Claude Code 中一个命令:

# 审查所有未提交的内容
/review-local-changes

# 仅审查暂存的更改
/review-local-changes --staged-only

# 仅聚焦安全和缺陷
/review-local-changes --focus security,bugs

输出是一个结构化报告,每个发现有一个置信度分数(0-1.0)和一个误报过滤器,抑制低于可配置阈值的发现。这很重要,因为原始的 AI 代码审查输出通常充斥着低质量的噪音;置信度评分使信噪比保持可用。


Skill 2:审查 Pull Request

Skill: Review Pull Request 星数: 433 | 类别: dev、testing

Review Local Changes 在 PR 存在之前运行,而 Review Pull Request 直接与 GitHub 集成,审查开放的 pull request 并使用 GitHub CLI 发布行内评论。

该 skill 需要安装并认证 gh。到位后,您可以通过编号指向任何 PR:

# 审查当前仓库的 PR #142
/review-pr 142

# 聚焦 API 契约维度审查 PR
/review-pr 142 --focus contracts

# 审查并自动生成更新的 PR 描述
/review-pr 142 --update-description

--update-description 标志特别有用。它读取实际 diff,与现有 PR 标题和描述比较,并重写描述以准确反映代码做了什么。


Skill 3:Web App Testing

Skill: Web App Testing 星数: 5,300 | 类别: dev

Web App Testing 是目录中部署最广泛的测试 skill,拥有 5,300 GitHub 星。它将 Claude Code 连接到 Playwright,对本地运行的 Web 应用进行 UI 验证和调试。

# 验证登录流程端到端工作
/webapp-testing "用户可以使用有效凭据登录并被重定向到仪表板"

# 检查表单验证阻止空提交
/webapp-testing "联系表单在邮箱字段为空时显示错误信息"

# 结账流程的完整冒烟测试
/webapp-testing "用户可以将商品添加到购物车、进入结账并到达确认页面"

自然语言规范格式使其变得实用。您用普通英语描述预期的行为,skill 将其转换为 Playwright 代码、执行并报告结果。


Skill 4:代码库审计器

Skill: Codebase Auditor 星数: 350 | 类别: dev、security

前三个 skills 在提交和 PR 层面处理增量质量。代码库审计器用于退后一步看全局——它在六个维度上运行全面审计并产生优先级排序的行动计划。

六个审计维度是:

  1. 架构:耦合、内聚、关注点分离、依赖方向
  2. 代码质量:复杂度指标、重复、死代码、命名一致性
  3. 安全:OWASP Top 10 覆盖、依赖漏洞、密钥检测
  4. 性能:N+1 查询、缺少索引、异步上下文中的同步 I/O
  5. 测试覆盖:覆盖差距、测试质量、缺少的集成测试
  6. 可维护性:文档差距、上手摩擦、构建复杂度
# 当前目录的完整审计
/code-auditor

# 聚焦安全和性能的审计
/code-auditor --dimensions security,performance

# 审计特定子目录
/code-auditor --path ./src/api

组合 Skills:实际工作流

这些 skills 很好地复合使用。一个现实的日常工作流使用所有四个如下:

开发过程中:

# 使用 Claude Code 编写代码
# 提交前运行本地审查
/review-local-changes --staged-only

修复任何高置信度问题后再推送。提交。

推送并打开 PR 后:

# 指向开放的 PR
/review-pr 247 --update-description

PR 描述被更新以反映实际构建了什么。行内评论为审查者出现。

合并到 main 之前:

# 验证关键用户流程仍然工作
/webapp-testing "核心结账流程成功完成"
/webapp-testing "使用 2FA 的用户认证功能正常"

季度或发布前:

# 完整审计以发现系统性问题
/code-auditor --dimensions security,architecture

这些 Skills 不能替代什么

明确范围很重要。这些 skills 可靠地处理定义明确的、机械性的质量检查。它们不处理:

  • 架构决策:您选择的方法是否适合您的约束
  • 业务逻辑正确性:功能是否真正满足用户需求
  • 跨服务集成风险:仅在多个系统在生产中交互时才出现的问题
  • 真实负载下的性能:针对 localhost 的 Playwright 测试不能复制生产流量模式

开始使用

如果您是这些 skills 的新手,推荐的开始顺序是:

  1. 安装 Review Local Changes 并在您编写的每个功能上使用一周。养成在每次提交前运行它的习惯。
  2. 当第一个 skill 感觉自然时,添加 Review PR。配置它在您的下一个 PR 上发布行内评论。
  3. 当您有未被现有自动化测试覆盖的用户流程时,添加 Web App Testing
  4. 在月底运行 Codebase Auditor 以查看四次周审查共同遗漏了什么。

每个 skill 都可在 Claude Skills Hub 下载。安装只需将一个文件添加到您的 .claude/skills/ 目录。

代码质量不是发布前打开一次的大门。它是一个持续的过程,这些 skills 旨在使该过程的摩擦足够低,真正在每次提交时运行。

Skills in This Post

Related Posts