核心用途
writing-skills 是一套将 TDD(测试驱动开发)方法论迁移至文档编写 的元技能,核心主张是:"如果没有观察到代理在没有该技能时的失败行为,就无法确定技能是否教授了正确的内容"。
核心用法
该技能强制要求遵循 RED-GREEN-REFACTOR 循环:
1. RED(基线测试):在编写任何技能前,先用子代理运行压力场景,观察其如何"自然失败",记录理性化借口
2. GREEN(编写最小技能):针对观察到的具体失败模式编写技能文档,再次测试验证代理合规
3. REFACTOR(关闭漏洞):发现新的理性化路径后,添加明确的反制条款,循环测试直至"防弹"
SKILL.md 结构规范
- YAML frontmatter:仅
name和description两个字段,description 必须以 "Use when..." 开头,只描述触发条件(绝不描述流程) - Claude Search Optimization (CSO):为未来Claude优化可发现性,使用症状词(race condition, flaky)、错误消息、同义词
- Token 效率:getting-started 技能 <150 词,常用技能 <200 词,其他 <500 词
技能类型与测试策略
| 类型 | 测试重点 | 示例 |
|------|---------|------|
| 纪律强化型 | 压力下是否遵守规则 | TDD, 完成前验证 |
| 技术型 | 能否正确应用技术 | condition-based-waiting |
| 模式型 | 能否识别适用场景 | reducing-complexity |
| 参考型 | 能否检索并应用 | API 文档 |
关键限制
铁律:"没有失败的测试,就没有技能"——适用于新技能创建和现有技能编辑。任何跳过测试的借口("太明显了"、"只是文档"、"没时间")都被系统性地记录并反驳。
适合人群
- 需要为 Claude Code/Codex 创建可复用技能的开发者
- 希望技能在跨项目、跨会话中保持一致行为的团队
- 编写"纪律型"技能(强制执行开发规范)的作者
局限性与风险
- 测试开销高:每个技能需要 3+ 压力场景测试,不适合一次性解决方案
- 技术特定性:
superpowers:test-driven-development为前置必备技能 - 理性化对抗:需要持续迭代以关闭代理找到的漏洞,维护成本高
- 目录结构约束:强制扁平命名空间,技能名称仅限字母、数字、连字符
来源可信度
技能内容基于 Anthropic 官方最佳实践(anthropic-best-practices.md)和内部 TDD 适配研究,但安全认证报告为系统生成的占位符(未执行实际扫描)。