원클릭으로
skill-forge
{CSO 优化的触发描述,见 §Description 优化}
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
{CSO 优化的触发描述,见 §Description 优化}
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | skill-forge |
将 Skill 写作从"凭感觉写 prompt"提升为工程化设计 —— 用经过验证的架构模式产出高质量 Skill。
按需加载子文档:本文档包含决策树和核心设计原则。详细参考见
references/子文档。
⚠️ 每次新 Session → 先读 references/evolution-log.md 注入已知经验(§Phase 6.3)
你的目标
│
├─ 新建 Skill → §Phase 0→1→2→3→4→5
│ ├─ 模糊想法 → Phase 0 需求发现
│ ├─ 明确需求 → Phase 1 快速确认
│ └─ 对话提取 → Phase 1.3 回溯
│
├─ 改进/审查现有 Skill
│ ├─ 不被触发 → §CSO 优化
│ ├─ 效果差 → §Phase 4 迭代
│ ├─ 审查质量 → §质量验证三连
│ └─ 结构混乱 → 重写
│
└─ 只想了解原则 → references/design-patterns.md
⚠️ 完成后必做: §Phase 6 记录经验
这六条原则是高质量 Skill 的基础。详细案例见 references/design-patterns.md。
用户打开 Skill 后 5 秒内必须知道该做什么。
把"我该怎么做"变成 ASCII 决策树,放在最顶部。要点:树 3 层、叶节点可执行、分支互斥、标注 (DEFAULT) 兜底。
信息量与需求成正比。不需要时,不要出现。
三层信息架构:
| 层级 | 载体 | 行数限制 | 内容 |
|---|---|---|---|
| L0 元数据 | YAML description | ~100 词 | 触发词、定位 |
| L1 主文档 | SKILL.md | <500 行 | 决策树 + 核心规则 |
| L2 子文档 | references/*.md | 无限制 | 详细模式、案例 |
关键:L1 只放违反会出错的规则;L2 通过"何时打开子文档"表按需加载。
确定性逻辑不要让 AI 做。交给脚本。
AI 擅长理解意图和生成内容,不擅长精确计数、格式校验、文件操作。能用脚本完成的确定性操作,都应委托 CLI。
每个动作都有验证步骤。没有验证 = 没有完成。
每个阶段需验证三连:①差异确认(改了什么)②语义检查(改对了吗)③集成验证(没破坏别的)。
每个 token 都是成本。用行号代替全文,用表格代替段落。
策略:规则→表格、流程→决策树、说明→代码注释、例外→⚠️ 内联标注、重复→见 §章节引用。
危险模式用查找表,不用散文。AI 需要精确匹配,不需要理解。
✅ 查找表(精确匹配) ❌ 散文(需要理解)
| 触发 | 风险 | 做法 | "当你遇到反引号时,
| `\`` | 执行 | batch| 需要特别注意,因为
| `$` | 展开 | batch| shell 会将其解释为
命令替换..."
设计要点:
触发条件 | 风险/后果 | 正确做法用户不知道自己想要什么,只有一个模糊的痛点或想法。 不要直接问"你要什么 Skill"。
| 问题 | 诊断目标 |
|---|---|
| Q1: "具体是什么情况?描述一个最近的真实场景" | 真实痛点 vs 一次性需求 |
| Q2: "如果有一个按钮能一键解决,按下后会发生什么?"(投射法) | 用户理想终态 |
| Q3: "现在你怎么处理的?最烦哪个环节?" | 瓶颈定位 + 自动化空间 |
| 用户状态 | 路由 |
|---|---|
| 真实重复痛点 + Q2 有明确终态 | → §Phase 1(需求已明确) |
| 想法太抽象("我想更高效") | → 深度发现(见下方) |
| 一次性小问题(频率 <1次/周) | → 直接解决,不建 Skill |
| 已有明确需求 | → §Phase 1.1(跳过此步) |
⚠️ 一票否决:频率 <1次/周 → 直接帮解决,不建 Skill。
详细技巧(投射法、类比法、否证法、常见陷阱)见 references/need-discovery.md。
在写任何代码之前,确认三件事:用户要什么、给谁用、成功标准是什么。
用户说"帮我写一个 X skill"时,确认以下字段:
| 字段 | 必填 | 示例 |
|---|---|---|
| Skill 名称 | ✅ | fast-edit |
| 一句话定位 | ✅ | "行号定位的文件编辑工具" |
| 目标用户 | ✅ | 通用 AI Agent / 特定团队 |
| 核心触发场景 (≥3) | ✅ | "编辑文件"、"保存粘贴"、"批量修改" |
| 依赖工具 | 可选 | CLI 脚本、外部 API、MCP |
| 已有参考 | 可选 | 类似 skill、文档链接 |
⚠️ 缺少必填字段 → 提问,不要猜测。
访谈流程(≤5 轮对话)
│
├─ Q1: "这个 Skill 解决什么问题?没有它会怎样?"
│ → 提取: 核心价值、痛点
│
├─ Q2: "谁会用它?在什么场景下触发?"
│ → 提取: 目标用户、触发词
│
├─ Q3: "完成的标志是什么?怎么判断 Skill 好不好用?"
│ → 提取: 成功标准、验收条件
│
├─ Q4: "有没有类似的 Skill 或工具可以参考?"
│ → 提取: 参考架构、差异点
│
└─ Q5: "有什么硬性限制?(token 预算、工具约束、安全要求)"
→ 提取: 约束条件
当用户在对话中解决了一个问题,想提取为 Skill 时:
每个 SKILL.md 必须包含以下骨架(按顺序):
---
name: {skill-name}
description: {CSO 优化的触发描述,见 §Description 优化}
---
# {Skill 名称}
{一句话定位 — 是什么 + 核心价值}
> **按需加载子文档**:本文档包含 ... 详细参考见 `references/` 子文档。
---
## 我需要做什么?(决策树)
{§原则1: 决策树路由}
---
## ⚠️ 安全守则(内联)
{只放违反会导致错误的规则,§原则2 L1 内容}
---
## 命令速查
{命令/操作的速查表,§原则5 token 压缩}
---
## 使用场景表
{场景 → 命令/操作映射}
---
## 验证三连
{§原则4: 验证闭环}
---
## 何时打开子文档
{子文档加载条件表}
---
## 文件结构
{目录树}
写完初稿后,逐项检查:
references/?(§原则2)Skill 不经测试就发布 = 代码不跑测试就部署。
在使用 eval 测试之前,先做基本的人工检查:
冒烟测试清单
│
├─ 触发测试: 用 3 种不同说法触发 Skill
│ ├─ 精确说法: "create a skill" → 应触发
│ ├─ 模糊说法: "help me write a good prompt file" → 应触发
│ └─ 负面测试: "what is a skill?" → 不应触发
│
├─ 决策树测试: 从树顶走到每个叶节点
│ └─ 每个叶节点的指令是否可执行?
│
├─ 完整流程测试: 用一个真实场景走完全流程
│ └─ 产出物是否符合预期?
│
└─ Token 预算测试: 检查 SKILL.md 总行数
├─ <500 行 → ✅
└─ >500 行 → 需要拆分到子文档
官方 skill-creator 提供完整的评估基础设施:
# 1. 创建评估用例 (evals.json)
# skill-creator 会根据 SKILL.md 自动生成测试用例
# 2. 运行评估
# skill-creator 的 grader 会评分:
# - 触发准确率 (description 匹配)
# - 输出质量 (遵循 SKILL.md 指令)
# - 边界情况处理
# 3. 查看结果
# grading.json → 每个用例的分数
# benchmark.json → 聚合指标 + 方差分析
评估流程:
调用 skill-creator 进行评估:
⚠️ **不要自己重写 skill-creator 的评估逻辑** — 直接委托调用。详见 [官方仓库](https://github.com/anthropics/skills/tree/main/skills/skill-creator)。
评估结果
│
├─ 触发率 <70%
│ └─ 问题在 description → §Description 优化
│
├─ 触发率 OK,但执行效果差
│ ├─ AI 没遵循决策树 → 决策树分支不互斥,修复歧义
│ ├─ AI 遵循了但结果错 → 指令本身有问题,修改规则
│ └─ 部分场景好部分差 → 缺少边界情况表,补充 §原则6
│
├─ Token 超限(输出被截断)
│ ├─ SKILL.md >500 行 → 拆分到子文档
│ ├─ 段落太多 → 转为表格/决策树(§原则5)
│ └─ 重复内容 → 提取为命令速查
│
└─ 全部达标 → Phase 5: 打包发布
| 症状 | 诊断 | 修复 |
|---|---|---|
| Skill 从不被触发 | description 缺少触发词 | §Description 优化 |
| 触发了错误的 Skill | 触发词与其他 Skill 重叠 | 收窄 description,加负面排除词 |
| AI 读完 Skill 后不知道做什么 | 缺少决策树或决策树太深 | 重写决策树,≤3 层 |
| AI 跳过了安全规则 | 规则在子文档里,未内联 | 关键规则移入 SKILL.md 安全守则 |
| AI 用了错误的命令 | 命令速查不清晰或有歧义 | 用场景表明确映射 |
| 输出格式不符预期 | 缺少输出模板 | 添加 "Expected Output" 代码块 |
| 对简单场景过度复杂 | 没有快速路径 | 决策树加 DEFAULT 分支 |
Description 是 Skill 的 SEO。AI 用它决定是否加载你的 Skill。
好的 description
│
├─ 动作词开头: "Use when..."(告诉 AI 何时用)
│
├─ 核心场景 (≥3): 覆盖主要使用场景
│ "creating, designing, or improving AI skills"
│
├─ 触发短语: 用户可能说的话(越多越好)
│ "create a skill", "write a skill", "skill design",
│ "写技能", "技能设计", "优化技能"
│
├─ 动词变体: 同义动作覆盖
│ "create" / "write" / "build" / "design" / "improve"
│
├─ 负面排除: 不应触发的场景
│ "Do NOT use for general prompt writing or chatbot tuning"
│
└─ MUST/ALSO: 强调必须触发的场景
"MUST use when..." / "Also triggers on..."
Use when {核心动作1}, {核心动作2}, or {核心动作3} {目标对象}.
{补充能力描述}.
MUST use this skill whenever the user mentions {触发短语1}, {触发短语2},
{触发短语3}, or any intent to {概括性意图}.
Also triggers on {额外触发短语列表}.
发布前的最终关卡。三步全过才能发布。
Skill 写完了?
│
├─ Step 1: 结构检查(自动)
│ ├─ SKILL.md <500 行?
│ ├─ 有决策树?
│ ├─ 有验证三连?
│ ├─ 有子文档表?
│ └─ description 符合 CSO 模板?
│
├─ Step 2: 内容审查(人工/Agent)
│ ├─ 规则无歧义?(每条规则只有一种解读)
│ ├─ 边界情况有表格?
│ ├─ 反面案例 + 正面案例成对?
│ └─ 详见 references/quality-checklist.md
│
└─ Step 3: 实战评估([skill-creator](https://github.com/anthropics/skills/tree/main/skills/skill-creator))
├─ 触发率 ≥80%?
├─ 执行质量评分 ≥7/10?
└─ 无严重错误(安全规则被跳过、输出截断)?
源码移入 Git 仓库 → 软链到 opencode/claude-code/gemini 的 skills 目录 → 注册 n-skills。发布前确认文件完整性 + 测试通过。详细命令、多平台目录规范和发布检查清单见 references/publishing.md。
设计完成后将新经验记录到 references/evolution-log.md。写入条件:通用、去重、置信度≥medium。类型:pattern / anti-pattern / edge-case / trigger-hack / architecture。生命周期:晋升(high + 引用≥3 → design-patterns.md)、过期(medium + 60天)、淘汰(总条目>30)。
references/evolution-log.md — 按任务类型筛选注入。详细规则见该文件。| 子文档 | 打开时机 |
|---|---|
references/design-patterns.md | 想了解 6 大原则的详细案例和反面模式 |
references/quality-checklist.md | 审查 Skill 质量时的完整检查表 |
references/need-discovery.md | 用户需求模糊、想法抽象,需要深度发现时 |
references/publishing.md | 执行打包发布时的目录规范、发布命令和发布检查清单 |
references/evolution-log.md | 每次 Session 开始时(注入已知经验)+ 设计完成后(记录新经验) |
agents/skill-reviewer.md | 需要自动化 Skill 审查时的 Agent 指令 |
| 反模式 | 后果 | 修正 |
|---|---|---|
| description 不写触发词 | 不被触发 | CSO 优化 |
| SKILL.md 超 500 行 | AI 遗忘尾部 | 拆分到 references/ |
| 用段落写规则 | AI 跳过或误解 | 转表格/决策树 |
| 无验证步骤 | 错误不被发现 | 加验证三连 |
| 决策树 >3 层 | AI 迷路 | 扁平化 |
| 只有正面案例 | AI 不知不该做什么 | 加 ❌ 反面案例 |
| 安全规则藏在子文档 | AI 不加载就跳过 | 关键规则内联 |
| 设计完不记录经验 | 同样的坑反复踩 | §Phase 6 |
| 一票否决未执行 | 为伪需求建 Skill | Phase 0 频率检查 |
skill-forge/
├── SKILL.md # 本文档(主文档)
├── references/
│ ├── design-patterns.md # 6 大原则详细案例
│ ├── quality-checklist.md # 完整质量检查表
│ ├── need-discovery.md # 需求发现技巧(投射法/类比法/否证法)
│ ├── publishing.md # 打包发布详细规范
│ └── evolution-log.md # 进化日志(自我进化机制)
└── agents/
└── skill-reviewer.md # Skill 审查 Agent 指令