<!-- title: 不装第三方：官方捆绑Skill横评拆解 -->

# 不装第三方就够用？Claude Code 官方捆绑 Skill 全家桶横评，附 webapp-testing 逐段拆解

## 概述

前几轮我们看惯了 skillsmp.com 上动辄几十万安装的社区 Skill，这轮换个角度：**把第三方市场完全关掉，只靠官方自带的东西，开发者的「审查→测试→调试」闭环到底能不能转起来？** 本期评测对象全部来自 Anthropic 官方一手来源——Claude Code 捆绑 Skills（`/code-review`、`/verify`、`/run`、`/debug`）、官方示例库 anthropics/skills 中的 `webapp-testing`、官方插件 `pr-review-toolkit`，以及 6.1k Star 的 `claude-code-security-review`。核心发现有三条：一是官方已把「代码审查」拆成了三个互相咬合的层次（内置命令、插件级多 Agent、Action 级安全审查），定位几乎不重叠；二是 `webapp-testing` 的 SKILL.md 是「上下文经济学」的教科书样本，它通篇在教模型**少读代码**；三是捆绑 Skill 正在悄悄变成「会自我记录的 Skill」，`/run-skill-generator` 和 `/verify` 会把踩过的坑写回项目里的 SKILL.md，这是社区 Skill 目前普遍没有的能力。

## 评测对象与总分对比

评分维度与权重：功能完整度 25%、设计质量 25%、实战效果 20%、上手难度 15%、社区活跃度 15%。总分按权重加总。

| 评测对象 | 形态 | 功能完整度 | 设计质量 | 实战效果 | 上手难度 | 社区活跃度 | **加权总分** |
|---|---|---|---|---|---|---|---|
| `/code-review`（含别名 `/review`） | 内置捆绑 Skill | ★★★★½ | ★★★★★ | ★★★★½ | ★★★★★ | ★★★★ | **4.63** |
| `claude-code-security-review` | GitHub Action + 斜杠命令 | ★★★★½ | ★★★★½ | ★★★★½ | ★★★★ | ★★★★★ | **4.50** |
| `/verify` + `/run` + `/run-skill-generator` | 内置捆绑三件套 | ★★★★ | ★★★★½ | ★★★★ | ★★★★½ | ★★★★ | **4.20** |
| `pr-review-toolkit` | 官方插件（6 Agent） | ★★★★½ | ★★★★½ | ★★★★ | ★★★★ | ★★★½ | **4.18** |
| `webapp-testing` | 官方示例库 Skill | ★★★★ | ★★★★★ | ★★★★ | ★★★½ | ★★★½ | **4.10** |
| `/debug` | 内置捆绑 Skill | ★★★ | ★★★½ | ★★★½ | ★★★★★ | ★★★★ | **3.68** |

---

## 一、`/code-review`：官方审查链路的入口，也是「参数化 Skill」的范本

它是 Claude Code 的捆绑 Skill，无需安装，官方命令参考中给出的完整签名是：

```
/code-review [low|medium|high|xhigh|max|ultra] [--fix] [--comment] [pr#|branch|path]
```

**定位**：审查当前 diff，或者你传入的 PR 号、分支、路径，找正确性 bug 和可简化点。三个修饰参数各管一件事：`--fix` 直接落地修复、`--comment` 把发现以 inline 评论贴到 GitHub PR 上、`ultra` 触发云端深度审查。

**亮点**在于它示范了 Skill 设计里很高级的一招——**用 effort 档位换token预算**。低档快速扫，`ultra` 档做深度审查，同一个 Skill 覆盖从「提交前自查」到「合入前终审」的所有场景，用户不需要学第二个工具。另外它有别名 `/review`，且官方文档明确：如果你在项目里自己写一个 `code-review` Skill，会**覆盖**内置版——但别名 `/review` 永远指向内置版。这个「占名不占别名」的设计让团队能安全地定制审查逻辑而不破坏肌肉记忆。

**短板**：面向 diff 的设计意味着它不管「整个代码库的历史债」，大范围重构审查不是它的活。

**使用**：无需安装，升级 Claude Code 即有。常用姿势：

```bash
# 提交前快速自查
/code-review low
# 审 PR #42 并把结论贴回 GitHub
/code-review --comment 42
```

---

## 二、`claude-code-security-review`：6.1k Star，把安全审查搬进 CI

这是本期社区热度最高的官方项目：**6.1k Star、665 fork**（数据来自仓库 README 抓取，2026-08-28）。它不是一个传统 Skill，而是两条腿走路：作为 GitHub Action 跑在 CI 里，同时提供 `/security-review` 斜杠命令在本地触发。

**功能设计上有三个值得抄的点**：

1. **Diff-aware**：只扫 PR 变更的文件，不做全库扫描。成本可控，噪声天然低。
2. **自动误报过滤**：README 明确列出它默认压掉低影响发现——DoS、rate limiting、泛型输入校验、开放重定向。这是对「AI 审查工具吵死人了」这个痛点最直接的回应。
3. **可注入自定义指令**：`custom-security-scan-instructions` 参数允许团队追加自家安全规范。

**最值得注意的反而是它 README 里的警告**：*该工具未针对 prompt injection 加固，只应用于受信任的 PR*，官方建议公共仓库开启「Require approval for all external contributors」。官方工具主动承认「AI 审查本身是攻击面」，这种坦诚在生态里还不多见——也解释了为什么它选择只做「diff 级、可信环境」的安全审查，而不是包打天下。

**安装**（Action 方式，来自官方 README 原文）：

```yaml
name: Security Review
permissions:
  pull-requests: write
  contents: read
on:
  pull_request:
jobs:
  security:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          ref: ${{ github.event.pull_request.head.sha || github.sha }}
          fetch-depth: 2
      - uses: anthropics/claude-code-security-review@main
        with:
          comment-pr: true
          claude-api-key: ${{ secrets.CLAUDE_API_KEY }}
```

本地方式：直接 `/security-review`；要定制就把仓库里的 `security-review.md` 拷到 `.claude/commands/` 改。

---

## 三、`/verify` + `/run` + `/run-skill-generator`：会自己长记忆的验证三件套

这组是官方捆绑 Skills 里概念最新的一批，官方文档对三者分工的定义：

| Skill | 职责 |
|---|---|
| `/run` | 启动并驱动你的应用，亲眼看到改动生效 |
| `/verify` | 构建并运行应用，确认改动真的做了它该做的事——**明确不许拿「测试通过」或「类型检查通过」当替身** |
| `/run-skill-generator` | 教会前两者怎么启动你的项目 |

**零配置可用**是基本盘：`/run` 和 `/verify` 会从项目类型（CLI、server、TUI、浏览器驱动）和 README、`package.json`、`Makefile` 推断启动方式。但真正有意思的是**兜底机制**——一旦项目需要标准启动之外的东西（数据库、env 文件、图形会话），推断就不可靠了，这时 `/run-skill-generator` 上场：它从干净环境把应用跑起来，把有效的安装命令、环境变量、启动脚本**捕获成一个 per-project Skill 写进 `.claude/skills/run-<name>/`**。`/verify` 也有同样的自我记录能力，踩坑后会把有效步骤写回 `.claude/skills/verify/SKILL.md`，monorepo 里则写在对应 package 目录。

这构成了一个闭环：**Skill 的第一次运行在「学习」，之后的所有运行在「复用」**。官方文档还特别提到一个迭代细节：v2.1.205 之前，捆绑 Skill 会让 Claude 把每次运行学到的东西都折叠进记录文件，结果造成频繁的 merge conflict；新版本改成只在「这次运行真的被带偏了」时才改文件。这是官方在真实使用反馈里打磨 Skill 行为的罕见公开痕迹。

**短板**：三件套强依赖「应用能被启动」。对纯库项目或需要真实外部依赖的环境，`/verify` 的「不退回测试」原则反而会让它卡住。

---

## 四、`pr-review-toolkit`：官方插件里的「审查特工队」

同样来自 anthropics/claude-code 仓库的官方插件目录，`pr-review-toolkit` 把「代码审查」拆成 **6 个专职 agent**：`comment-analyzer`（注释与代码是否一致）、`pr-test-analyzer`（行为覆盖 vs 行数覆盖）、`silent-failure-hunter`（吞异常狩猎者）、`type-design-analyzer`（类型封装与不变量）、`code-reviewer`（CLAUDE.md 合规与 bug）、`code-simplifier`（保功能降复杂度）。

**设计上最值得学的是置信度评分体系**，每个 agent 有自己的量化语言：`pr-test-analyzer` 给测试缺口打 1-10 分（10 = 必须补）、`type-design-analyzer` 在四个维度各打 1-10 分、`code-reviewer` 按 0-100 打分（91-100 = critical）。统一「结构化、可排序、带文件行号」的输出格式，让多 agent 的结论能拼成一份优先级报告而不是一锅粥。

**README 甚至给出了标准动线**：写代码 → `code-reviewer` → 修问题 → `silent-failure-hunter`（若动了错误处理）→ 补测试 → `pr-test-analyzer` → `comment-analyzer` → 通过后 `code-simplifier` 抛光 → 建 PR。

**短板**：6 个 agent 全跑一遍 token 消耗可观，README 自己都提醒「Don't over-use：聚焦改动代码，别扫全库」。它和 `/code-review` 的关系是互补而非替代——后者管 diff 正确性，前者管 PR 质量的六个切面。

**安装**：

```bash
# 仓库内置示例插件，通过插件菜单安装
/plugins
# 找到 pr-review-toolkit → Install
```

安装后以 `/pr-review-toolkit:review-pr` 调用，可选参数：comments、tests、errors、types、code、simplify、all。

---

## 五、深度拆解：`webapp-testing` 的 SKILL.md，一句「别读我的源码」背后的设计哲学

来自官方示例库 anthropics/skills（`/plugin marketplace add anthropics/skills` 后可用），这是本期唯一做逐段拆解的对象，因为它是**官方库里把「如何为模型写文档」表达得最极致的一份**。

### 第 1 段：frontmatter——一句话锁定工具与场景

```yaml
name: webapp-testing
description: Toolkit for interacting with and testing local web applications
  using Playwright. Supports verifying frontend functionality, debugging UI
  behavior, capturing browser screenshots, and viewing browser logs.
```

description 只有两句：第一句钉死技术栈（本地 Web 应用 + Playwright），第二句列四个可触发场景（验证前端功能 / 调试 UI / 截图 / 看浏览器日志）。按官方文档，description 会与 `when_to_use` 一起在 1536 字符处截断进 Skill 列表——这份 description 没浪费一个字在「为什么」上，全在「是什么、何时用」。

### 第 2 段：两条「反直觉军规」

> - **Always run scripts with `--help` first** to see usage
> - **Do NOT read source code** unless absolutely necessary - scripts are designed as black-box tools

第二条在 Skill 写作里相当大胆：一般 Skill 生怕模型缺上下文，恨不得把脚本内容全贴进提示词；这份 SKILL.md 反着来，明确告诉模型**脚本很大，读了会污染上下文窗口**。它赌的是「模型会用 `--help` 的输出当接口文档」——这是把 CLI 工具的接口约定迁移到了 Skill 设计里，上下文成本从 O(源码长度) 降到 O(help 文本长度)。

### 第 3 段：决策树——把 if/else 写给模型看

SKILL.md 用 ASCII 画了整棵决策树：静态 HTML？直接读文件找 selector，失败就按动态处理。动态应用？服务器没起 → `with_server.py` 托管；已在跑 → 走「侦察-再行动」四步（导航等 networkidle → 截图/查 DOM → 从渲染结果找 selector → 执行动作）。Mermaid 重绘如下：

```mermaid
flowchart TD
    A[用户任务] --> B{静态 HTML?}
    B -->|是| C[直接读 HTML 找 selector]
    C -->|成功| D[写 Playwright 脚本]
    C -->|失败/不完整| E[按动态应用处理]
    B -->|否| F{服务器已在运行?}
    F -->|否| G[python scripts/with_server.py --help<br/>托管服务器生命周期]
    G --> H[写简化版 Playwright 脚本]
    F -->|是| I[侦察-再行动]
    I --> I1[导航并等待 networkidle]
    I1 --> I2[截图或检查 DOM]
    I2 --> I3[从渲染结果识别 selector]
    I3 --> I4[用找到的 selector 执行动作]
```

把流程画成树而不是写成段落，等于替模型省掉了一次「自己组织执行顺序」的推理——这类「图先进脑子」的写法，在动辄几千 token 的社区 Skill 里反而是少数派。

### 第 4 段：`with_server.py`——生命周期托管这个「必要之恶」

```bash
# 单服务器
python scripts/with_server.py --server "npm run dev" --port 5173 -- python your_automation.py
# 多服务器（后端 + 前端）
python scripts/with_server.py \
  --server "cd backend && python server.py" --port 3000 \
  --server "cd frontend && npm run dev" --port 5173 \
  -- python your_automation.py
```

它解决的是自动化测试最脏的活：起服务、等端口就绪、测完收割进程。Skill 把它封装成黑盒，SKILL.md 里只给调用姿势。

### 第 5 段：模板与「致命等待」

Playwright 模板里有两处硬编码进注释的指令：**Always launch chromium in headless mode**、**CRITICAL: Wait for JS to execute**（`page.wait_for_load_state('networkidle')`）。配套还有一个专门的 Common Pitfall 小节，用正反对照强调「动态应用没等 networkidle 就查 DOM」是头号翻车点。把已知的第一大坑单独成节并给出反例代码——这比罗列十条 best practices 更有效，因为它命中的是模型最高频的错误路径。

### 第 6 段：examples/ 目录——渐进式披露

三个参考脚本各管一个主题：`element_discovery.py`（发现页面元素）、`static_html_automation.py`（file:// 协议测静态页）、`console_logging.py`（抓浏览器控制台日志）。SKILL.md 本体不讲它们的内容，只列名字和一句话——模型按需再读。这就是官方「分层加载」理念（SKILL.md 薄、资源文件厚）的标准实现。

**短板**：强依赖 Python 版 Playwright 环境，新手第一次跑通 `with_server.py` 的多服务器形态有门槛；它只管「本地应用」，对需要登录态/外部 API 的场景没有给出方案。

**安装**：

```bash
# 方式一：作为官方 marketplace 安装
# Claude Code 内执行：
/plugin marketplace add anthropics/skills
# 方式二：直接拷贝
git clone https://github.com/anthropics/skills
cp -r skills/skills/webapp-testing ~/.claude/skills/
```

---

## 六、`/debug`：最朴素的一个，也是上限最明显的一个

`/debug [description]` 的功能用一句话说完：为当前会话开启 debug 日志并读日志排查问题。没有架构、没有多 agent、没有评分，它的价值全在「把 `claude --debug` 的门槛从『重启会话加 flag』降到『敲一个命令』」。给新手五星，给重度用户三星半——排查 Skill 不触发、插件加载失败这类问题时它够用，但调试应用层 bug 时，它和 `/verify` 的「跑起来亲眼看」是两个世界。

```bash
/debug 频繁弹出权限确认，怀疑是 hooks 配置问题
```

---

## 推荐排行榜

**综合加权总分**：`/code-review` (4.63) > `claude-code-security-review` (4.50) > `/verify` 三件套 (4.20) > `pr-review-toolkit` (4.18) > `webapp-testing` (4.10) > `/debug` (3.68)

**新手首选**：`/code-review` + `/debug` —— 零安装零配置，输 `/` 就有。

**团队 CI 首选**：`claude-code-security-review` —— 唯一能无人值守跑在 PR 流水线里的，6.1k Star 是社区用脚投票的结果。

**SKILL.md 写作教科书**：`webapp-testing` —— 想学「怎么给模型写文档」，读它的收益高于绝大多数社区高安装量 Skill。

**设计模式最前沿**：`/verify` + `/run-skill-generator` —— 「Skill 自己写 Skill」的自我记录闭环，预示了 Skill 生态的下一个方向：不只是人写 Skill 给模型用，还有 Skill 在运行中沉淀出项目专属的 Skill。

## 生态结构一图流

```mermaid
mindmap
  root((官方开发者效率Skill版图))
    内置捆绑
      /code-review 审查diff
      /verify 跑起来验证
      /run 启动应用
      /run-skill-generator 沉淀启动配方
      /debug 读调试日志
    官方示例库 anthropics/skills
      webapp-testing Playwright黑盒测试
      skill-creator 等创作工具
    官方插件目录
      pr-review-toolkit 六Agent审查
      code-review 多Agent PR审查
      security-guidance 编辑时安全提醒
    独立官方项目
      claude-code-security-review
       6.1k Star GitHub Action
```

## 参考来源

1. [Extend Claude with skills — Claude Code 官方文档](https://code.claude.com/docs/en/skills) — 捆绑 Skills 列表、frontmatter 字段、`/verify` 自我记录机制、name 冲突规则
2. [Claude Code commands reference](https://code.claude.com/docs/en/commands) — `/code-review`、`/debug`、`/verify`、`/batch` 等捆绑 Skill 的官方定义与别名
3. [webapp-testing SKILL.md — anthropics/skills](https://github.com/anthropics/skills/blob/main/skills/webapp-testing/SKILL.md) — 深度拆解对象的完整原文
4. [anthropics/claude-code-security-review](https://github.com/anthropics/claude-code-security-review) — 6.1k Star 数据、GitHub Action 配置、误报过滤与 prompt injection 警告
5. [pr-review-toolkit — anthropics/claude-code 官方插件目录](https://github.com/anthropics/claude-code/tree/main/plugins/pr-review-toolkit) — 6 个审查 Agent 的职责、置信度评分与推荐工作流

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
