skill-creator Skill 深度分析

0 阅读7分钟

skill-creator Skill 深度分析

这是整个 Anthropic Skills 仓库中最"元"(meta)的一个技能——一个用来创建和优化其他技能的技能,本质上是 Anthropic 对 Prompt 工程全生命周期管理 的最佳实践凝练。


1. 定位与价值

维度说明
本质一套完整的 Skill 开发 IDE 工作流,嵌入到 Claude 的对话中
目标用户想为 Claude 编写自定义技能的开发者(从小白到专家)
核心价值将"写 prompt → 测试 → 评估 → 迭代"这个 ad-hoc 过程标准化为可重复的工程流程

这个技能的野心在文中被直接点破:

"we are trying to create billions a year in economic value here!"

Anthropic 把 Skill 创建视为一个可以产生数十亿美元年经济价值的核心能力。


2. 目录结构全景

skill-creator/
├── SKILL.md                        # 核心指令文件(~500行)
├── LICENSE.txt                     # 许可证
├── agents/                         # 子智能体指令
│   ├── grader.md                   # 评分子智能体:对断言逐条打分
│   ├── comparator.md               # 盲比子智能体:A/B 盲测两个版本
│   └── analyzer.md                 # 分析子智能体:分析为什么某版本更优
├── scripts/                        # Python 工具链
│   ├── aggregate_benchmark.py      # 聚合基准测试数据
│   ├── generate_report.py          # 生成报告
│   ├── improve_description.py      # 优化技能触发描述
│   ├── package_skill.py            # 打包 .skill 文件
│   ├── quick_validate.py           # 快速校验
│   ├── run_eval.py                 # 运行单次评估
│   ├── run_loop.py                 # 运行优化循环
│   └── utils.py                    # 工具函数
├── eval-viewer/                    # 评估结果可视化浏览器
│   └── generate_review.py          # 生成 HTML 评审界面
├── references/
│   └── schemas.md                  # JSON schema 定义
└── assets/
    └── eval_review.html            # 评估查询审查 HTML 模板

这是整个仓库中结构最复杂的技能,完美展示了 Skill 的三层加载架构:

层级内容加载时机
Metadataname + description (~100词)始终在上下文中
SKILL.md body完整工作流指令 (~500行)技能被触发时
Bundled resourcesagents/ .md, scripts/ .py, references/*按需读取/执行

3. 核心工作流:六阶段开发循环

整个 Skill 定义了一个严格的迭代开发循环

┌─────────────────────────────────────────────────────────────┐
│  1. Capture Intent   理解用户意图,确定技能目标              │
│         ↓                                                    │
│  2. Interview & Research   追问边界情况、格式、依赖          │
│         ↓                                                    │
│  3. Write SKILL.md   起草技能文件                            │
│         ↓                                                    │
│  4. Run Test Cases   并行运行 with-skill + baseline         │
│         ↓                                                    │
│  5. Evaluate Results   定量评分 + 定性人工评审               │
│         ↓                                                    │
│  6. Improve & Repeat   基于反馈改进,回到步骤4              │
│         ↓                                                    │
│  [可选] Description Optimization   优化触发描述              │
│  [可选] Package & Present   打包为 .skill 文件               │
└─────────────────────────────────────────────────────────────┘

4. 评估体系:堪比 ML 训练流水线

这是此 Skill 最令人印象深刻的部分。它建立了一套完整的 Eval 基础设施

4.1 测试执行(并行 + 对照组)

每个测试用例同时启动两个子 智能体

运行组说明
with_skill加载了当前技能的 Claude 执行任务
without_skill / old_skill无技能的 Claude(新建场景)或旧版技能(改进场景)

这本质上是一个对照实验设计,和 A/B 测试同源。

4.2 评分系统

采用双轨评估

评估类型方法适用场景
定量(Quantitative)JSON 断言 → grader 子智能体打分 → benchmark.json可客观验证的任务(文件转换、数据提取、代码生成)
定性(Qualitative)HTML 评审界面 → 人工反馈 → feedback.json主观任务(写作风格、设计质量)

4.3 Benchmark 聚合

python -m scripts.aggregate_benchmark <workspace>/iteration-N --skill-name <name>

输出包含:

  • 每个配置的 pass_rate(通过率)
  • mean ± stddev(均值 ± 标准差)——注意引入了方差分析!
  • delta(两组的差异)
  • 时间和 token 消耗对比

4.4 分析师通道(Analyst Pass)

聚合数据之后,还有一个分析步骤,专门检查:

  • Non-discriminating assertions — 无论有没有技能都通过的断言(无效测试)
  • High-variance evals — 结果不稳定的评估(可能是 flaky test)
  • Time/token tradeoffs — 性能开销是否值得

这完全是 MLOps 中模型评估的思路移植到了 Prompt Engineering 领域。


5. Description Optimization:技能触发的"搜索引擎优化"

这是一个独立且非常精巧的子流程:

问题:技能的 description 字段决定了 Claude 是否调用该技能。写不好 → 该触发时不触发(undertriggering),不该触发时乱触发(overtriggering)。

解决方案:一套完整的触发精度优化 pipeline

  1. 生成 20 个测试查询(10 个应触发 + 10 个不应触发)

  2. 人工审核测试集(通过 HTML 界面)

  3. 运行优化循环

    1. 60/40 划分为 train/test
    2. 每个查询运行 3 次取可靠触发率
    3. Claude 基于失败案例提出 description 改进
    4. 最多迭代 5 次
    5. test score(而非 train score)选最佳版本 ← 防止过拟合!

这本质上就是一个小型的 prompt tuning + cross-validation 流程。

文中还提到了一个关键洞察:

" Claude only consults skills for tasks it can't easily handle on its own — simple, one-step queries like 'read this PDF' may not trigger a skill even if the description matches perfectly."

即技能触发不是简单的关键词匹配,而是 Claude 对自身能力边界的判断——只有复杂任务才会触发技能查询。


6. Skill 编写哲学:四大核心原则

原则 A:解释 Why > 强制 MUST

"If you find yourself writing ALWAYS or NEVER in all caps, that's a yellow flag — reframe and explain the reasoning so that the model understands why."

这与前端设计 Skill 用 ALWAYS/NEVER 的风格形成鲜明对比。skill-creator 认为解释动机比施加约束更有效,因为 LLM 有理论心智(Theory of Mind),能理解意图后自主执行。

原则 B:泛化 > 过拟合

"Rather than put in fiddly overfitty changes, or oppressively constrictive MUSTs, if there's some stubborn issue, you might try branching out and using different metaphors."

把 ML 中的过拟合概念引入 prompt 工程——不要为了修复个别测试用例的问题而写过于狭窄的指令。

原则 C:提取共性脚本

"If all 3 test cases resulted in the subagent writing a create_docx.py , that's a strong signal the skill should bundle that script."

观察子智能体在多个测试中的重复行为模式,将其提取为内置脚本。这是经典的DRY 原则在 AI 工作流中的应用。

原则 D:Description 要"推销式"(Pushy)

"Currently Claude has a tendency to 'undertrigger' skills. To combat this, please make the skill descriptions a little bit 'pushy'."

Anthropic 内部观察到 Claude 倾向于不使用技能(保守触发),因此 description 需要主动列出更多触发场景,类似 SEO 中的关键词扩展。


7. 沟通风格设计:面向"全民开发者"

这段非常有意思:

"There's a trend now where the power of Claude is inspiring plumbers to open up their terminals, parents and grandparents to google 'how to install npm'."

Anthropic 意识到技能创建者不再只是程序员——水管工、父母辈都可能来创建技能。因此 skill-creator 内置了术语分级策略

术语策略
"evaluation"、"benchmark"可以直接用
"JSON"、"assertion"需要先从对话中确认用户理解再使用
其他编程术语主动附带简短解释

8. 多环境适配

Skill 针对三个运行环境做了细致的适配:

环境能力差异适配方案
Claude Code完整能力:子智能体、浏览器、CLI全流程可用
Claude.ai无子智能体、无 claude -p CLI串行执行,跳过基线对比和 description 优化,内联收集反馈
Cowork有子智能体但无浏览器--static 输出静态 HTML,feedback 通过文件下载

这种环境感知的降级策略保证了同一个 Skill 在不同平台都能工作。


9. 与 frontend-design Skill 的对比

维度frontend-designskill-creator
复杂度单文件 SKILL.md多目录、多脚本、多子智能体
风格重约束(NEVER/ALWAYS)重解释(explain the why)
评估无内置评估完整 eval pipeline
迭代一次性生成多轮迭代循环
目标提升单次输出质量提升技能本身的质量
层级一阶技能(直接完成任务)二阶元技能(创建完成任务的技能)

10. 总结评价

方面评价
工程完整度⭐⭐⭐⭐⭐ 从意图捕获到打包发布的完整生命周期
方法论深度⭐⭐⭐⭐⭐ 将 MLOps 思维(对照实验、交叉验证、过拟合防控)引入 Prompt Engineering
Prompt 质量⭐⭐⭐⭐⭐ 对话式写作、术语分级、多环境适配
可复用性⭐⭐⭐⭐ 虽然工具链绑定 Anthropic 生态,但方法论完全通用
创新性⭐⭐⭐⭐⭐ 这可能是目前公开的最成熟的 "Prompt 开发 IDE" 设计

一句话总结skill-creator 本质上是 Anthropic 将软件工程中的 TDD(测试驱动开发)+ CI/CD(持续集成/持续部署)+ MLOps(模型运维) 三套方法论融合后,应用于 Prompt Engineering 领域的一次系统性实践。它不只是一个 Skill,更是 Anthropic 对 "如何工业化生产高质量 AI 指令" 这个问题的回答。