# 评测范例

展示一次完整评测从输入到输出的样貌，供执行时参考。

## 被评测输入

用户粘贴了下面这份 SKILL.md：

```markdown
---
name: MyHelper
description: 帮你处理文档
---

# MyHelper

我能帮你处理各种文档，包括 pdf、word、excel。
直接把文件发给我就行。
```

## 评测过程节录

### Step 2 frontmatter 解析

- `name = "MyHelper"` → 违规：含大写字母（应只含小写字母/数字/连字符）
- `description = "帮你处理文档"` → 太短（只有 6 字），无触发词，用第二人称"你"
- 缺少工作流章节、示例、WHEN NOT

### Step 4 触发实测

正例问法（10 条）：
1. "帮我提取 pdf 的文字" — ❌ 未命中（description 里没"提取""pdf"这类词）
2. "分析一下这个 excel" — ❌ 未命中
3. "把 word 里的表格抽出来" — ❌ 未命中
4. ... 10 条基本全军覆没

反例问法（5 条）：
1. "帮我打开百度" — ✅ 未误触（正常）
2. "今天天气怎么样" — ⚠️ description 太泛，"处理" 二字在别的场景也会被召回，边界模糊

**正例命中 0/10，反例误触 1/5。**

## 输出的评测报告

```markdown
# Skill 评测报告：MyHelper

**总分：18 / 100**　|　等级：不合格

## 评分概览

| 维度 | 得分 | 判定 |
|---|---|---|
| ① 规范 | 9 / 25 | 不通过 |
| ② 触发 | 2 / 25 | 不通过 |
| ③ 内容 | 4 / 25 | 不通过 |
| ④ 可维护 | 3 / 25 | 不通过 |

## 触发实测

- 正例命中：0 / 10
- 反例误触发：1 / 5
- 问题问法举例：
  - 正例未命中："帮我提取 pdf 的文字"、"分析 excel"、"把 word 表格抽出来" —— description 里完全没有 pdf/word/excel 这些关键词
  - 反例误触发："今天天气怎么样" —— description 太泛，"处理文档"这种措辞容易被无关问题命中

## 整改清单

### P0（必须修，不修直接不合格）

- [ ] name 含大写字母，违反命名规范
  - **位置**：frontmatter 的 `name` 字段
  - **原文**：`name: MyHelper`
  - **改成**：`name: document-processor`

- [ ] description 过短、无触发词、用第二人称
  - **位置**：frontmatter 的 `description` 字段
  - **原文**：`description: 帮你处理文档`
  - **改成**：`description: Extracts text and tables from PDF, Word, and Excel files. Use when the user says "处理pdf"、"提取word内容"、"分析excel"、"文档里的表格"、"读一下这个文件"、or mentions handling office documents.`

- [ ] 没有工作流章节
  - **位置**：SKILL.md 正文
  - **改成**：补一段 `## 工作流程`，列出"识别文件类型 → 选择解析库 → 提取内容 → 按模板输出"4 步

### P1（强烈建议修，影响效果）

- [ ] 完全没有示例
  - **改成**：补 `## 示例` 区块，至少给一个 "输入一份 pdf → 输出表格 markdown" 的完整 before/after

- [ ] 没有 WHEN NOT 说明
  - **改成**：补一条 "Do NOT use for: 扫描版图片型 PDF（需要 OCR，请用 superpowers-ocr）"

### P2（锦上添花）

- [ ] 可以把各文件类型的解析细节拆到 `reference.md`

## 修好后的关键片段参考

```yaml
---
name: document-processor
description: Extracts text and tables from PDF, Word, and Excel files. Use when the user says "处理pdf"、"提取word内容"、"分析excel"、"文档里的表格"、"读一下这个文件"、or mentions handling office documents. Do NOT use for scanned image-only PDFs (use superpowers-ocr instead).
---

# Document Processor

## 工作流程
1. 识别文件类型（看扩展名 + file 命令）
2. 选择对应解析库：PDF→pdfplumber，Word→python-docx，Excel→openpyxl
3. 提取正文与表格
4. 按统一 markdown 模板输出

## 示例
**输入**：`invoice.pdf`
**输出**：
```markdown
## 发票金额明细
| 项目 | 金额 |
|---|---|
| ... | ... |
```
```
```

## 说明

这个示例刻意选了一个"全是问题"的 skill，演示评测如何精确定位每处缺陷并给出可直接复制的修法。
真实评测时：大部分 skill 会在某几个维度合格、另外几个维度有瑕疵，报告应如实反映差异，不要为了"显得严格"而硬扣分。
