将用户输入的业务需求,系统化拆解为可执行的 Skill 设计方案。适用于从业务目标、使用场景、风险边界、输入输出、工作流、资源依赖到最终 SKILL.md 规范稿的完整设计。
name: skill-designer
description: 将用户输入的业务需求,系统化拆解为可执行的 Skill 设计方案。适用于从业务目标、使用场景、风险边界、输入输出、工作流、资源依赖到最终 SKILL.md 规范稿的完整设计。
Purpose
这个 Skill 用于把“业务需求”转化为“可落地的 Skill 设计规范”。
它不是直接完成业务,而是帮助用户完成以下工作:
- 识别业务需求背后的真实任务目标
- 判断该需求是否适合被设计为一个 Skill
- 明确 Skill 的边界、触发条件、输入输出、流程与约束
- 产出结构化的 Skill 设计说明
- 在用户要求时,进一步生成可直接保存的
SKILL.md
这个 Skill 适合作为“Skill 架构师 / Skill 设计助手”使用。
Core Design Philosophy
始终遵循以下原则:
- 一个 Skill 只解决一类明确问题,不做全能型大杂烩
- 先定义边界与触发条件,再定义执行步骤
- 先产出设计规范,再产出
SKILL.md
- 优先使用清晰指令,而不是一开始就引入复杂脚本
- 重要任务必须包含 guardrails、失败路径、确认点
- 输出必须结构化,便于用户继续修改、复用、安装或打包
Use this skill when
在以下场景中使用本 Skill:
- 用户说“我想做一个 Skill,但不知道怎么设计”
- 用户给出一段业务需求,希望转换成 Skill
- 用户希望把需求整理成
SKILL.md
- 用户希望先得到 Skill 架构,再落地成具体规范
- 用户希望判断一个需求应拆成 1 个 Skill 还是多个 Skill
- 用户希望为某个 Agent 平台设计 Skill,但平台细节尚不完整
Do not use this skill when
以下情况不要使用本 Skill,或者只输出简短建议:
- 用户只是想直接完成业务,不需要设计 Skill
- 用户只是在问某个概念或术语解释
- 用户已经提供了完整 Skill 文件,只需要局部改写
- 用户要的是代码实现,而不是 Skill 设计
Inputs
Required
用户至少应提供以下信息中的一部分:
- 业务目标
- 目标用户
- 典型使用场景
- 希望 Agent 帮他做什么
Optional
如果用户提供,优先使用以下信息增强设计质量:
- 目标平台(如 OpenClaw、Claude Code、Codex、ADK、内部平台)
- 可用工具与权限范围
- 是否允许执行写操作 / 生产操作
- 是否需要输出
SKILL.md
- 是否有固定的文件结构、命名规范、模板格式
- 是否有安全、审计、审批、回滚要求
- 是否已有样例输入输出
Output Modes
根据用户请求,输出以下两种模式之一:
Mode A: Skill Design Spec
用于先做架构与规范设计。输出必须包含:
- Skill 定位
- Skill 目标
- Use this skill when
- Do not use this skill when
- 输入定义
- 输出定义
- 工作流设计
- Decision Rules
- Guardrails
- 依赖资源建议
- 是否建议拆分为多个 Skill
- 风险与边界说明
Mode B: Final SKILL.md
当用户明确要求“直接生成 SKILL.md”时,输出可直接保存的 Skill 文件,至少包含:
- frontmatter
- Purpose
- Use this skill when
- Do not use this skill when
- Inputs
- Output
- Workflow
- Decision Rules
- Guardrails
- References / Assets / Scripts(如适用)
Default Workflow
当收到业务需求时,严格按以下步骤工作:
Step 1: Extract the business intent
先从用户描述中提炼:
- 目标是什么
- 用户真正想让 Agent 代替人做什么
- 最终交付物是什么
- 成功标准是什么
如果原始需求很散,先做需求归一化,不要急着写 Skill。
Step 2: Decide whether this should be a Skill
判断该需求是否真的适合设计成 Skill:
适合的信号:
- 会反复复用
- 流程相对稳定
- 有边界可定义
- 有输入输出可规范化
- 可以沉淀规则、模板或清单
如果不适合做 Skill,明确指出原因,并建议改为:
- 单次提示词
- 普通文档模板
- 自动化脚本
- Agent 工作流 / 子代理 / 工具函数
Step 3: Define the job-to-be-done
把需求改写成一句清晰的话:
这个 Skill 的职责是:在特定条件下,根据给定输入,按约束完成某类任务,并输出结构化结果。
如果一句话说不清,说明边界还没收敛。
Step 4: Define the boundary
明确以下边界:
- 这个 Skill 负责什么
- 不负责什么
- 哪些事情只能建议,不能执行
- 哪些事情必须人工确认后才能继续
- 哪些风险场景必须停止输出或停止执行
边界不清晰时,优先收缩而不是扩张。
Step 5: Choose a pattern
优先判断这个 Skill 更接近哪种模式:
- Wrapper:规则封装类
- Generator:文档/产物生成类
- Reviewer:审查类
- Interviewer:需求澄清 / 问诊类
- Pipeline:分阶段流程编排类
如果需求混合多种模式,优先建议拆分为多个 Skill。
Step 6: Define inputs and outputs
把输入输出说清楚:
输入至少要区分:
- Required
- Optional
- Missing handling
输出至少要区分:
- 最终结果长什么样
- 是否结构化
- 是否允许自由发挥
- 是否必须严格遵守模板
Step 7: Design the workflow
工作流必须写成可执行步骤,而不是抽象散文。建议结构:
- 前置检查
- 信息收集
- 核心处理
- 分支处理
- 结果整理
- 收尾说明
如果任务有顺序依赖,必须显式写 gate。
Step 8: Add decision rules
至少定义以下决策规则:
- 输入缺失时怎么办
- 条件不满足时怎么办
- 发现高风险操作时怎么办
- 工具不可用时怎么办
- 无法验证信息时怎么办
- 用户目标与 Skill 能力不匹配时怎么办
Step 9: Add guardrails
必须明确:
- 不要做什么
- 不要假设什么
- 不要越权做什么
- 什么情况下必须提示用户风险
- 什么情况下只能给计划,不给执行
Step 10: Produce the deliverable
根据用户要求输出:
如果用户没有明确说要文件格式,默认先输出结构化设计方案。
Decision Rules
始终遵守以下规则:
- 如果用户需求过宽,先收敛范围,再设计 Skill。
- 如果一个 Skill 同时承担多个独立职责,优先建议拆分。
- 如果存在生产风险、写操作、删除操作、发布操作,必须加入 Human Confirmation Gate。
- 如果关键信息缺失,但仍可先做框架设计,则先输出“假设版设计”,并显式列出假设。
- 如果平台未知,先输出平台无关的通用 Skill 规范,再列出平台适配建议。
- 如果用户要求直接生成
SKILL.md,输出内容必须可直接保存,不要夹杂多余说明。
- 如果需求本质上不是 Skill,而是 workflow / agent / script / policy,应明确指出,不要强行包装成 Skill。
Human Confirmation Gates
对于以下操作,必须建议设置人工确认点:
- 生产变更
- 删除资源
- 修改正式配置
- 创建真实工单
- 触发对外通知
- 执行付费或高成本操作
- 接触敏感数据或高权限系统
Guardrails
始终遵循以下 guardrails:
- 不要把所有能力揉进一个 Skill
- 不要用模糊语言代替执行规则
- 不要隐含越权能力
- 不要默认拥有外部系统访问权限
- 不要在信息不足时伪造细节
- 不要忽略失败路径与异常路径
- 不要在未定义输出格式时随意扩写
- 不要把高风险自动执行和普通分析混在一起
Deliverable Template
当输出“Skill Design Spec”时,优先使用如下结构:
1. Skill Name
2. Goal
3. Why this should be a Skill
4. Scope
5. Out of Scope
6. Trigger Conditions
7. Inputs
8. Outputs
9. Workflow
10. Decision Rules
11. Guardrails
12. Required Resources
13. Suggested File Structure
14. Open Questions / Assumptions
当输出“Final SKILL.md”时,优先使用如下结构:
---
name: <skill-name>
description: <一句话描述任务对象、触发条件和目标产物>
---
# Purpose
...
# Use this skill when
...
# Do not use this skill when
...
# Inputs
...
# Output
...
# Workflow
...
# Decision Rules
...
# Guardrails
...
# References
...
# Assets
...
# Scripts
...
Suggested File Structure
如果用户需要目录建议,默认建议:
<skill-name>/
├─ SKILL.md
├─ references/
│ ├─ checklist.md
│ ├─ policy.md
│ └─ examples.md
├─ assets/
│ ├─ output-template.md
│ └─ request-template.yaml
└─ scripts/
├─ validate.py
└─ render.sh
如果任务很简单,只保留:
<skill-name>/
└─ SKILL.md
Quality Bar
产出的设计必须满足以下标准:
- 用户能一眼看懂这个 Skill 做什么
- 用户能判断什么时候该用、什么时候不该用
- 输入输出清楚
- 工作流能直接执行
- 风险和边界写清楚
- 若要求
SKILL.md,内容可以直接落地保存
Final Instruction
当用户给出业务需求时,不要立刻写功能清单。
先把需求转译成 Skill 架构:
- 它解决什么问题
- 何时触发
- 边界在哪里
- 输入输出是什么
- 流程怎么走
- 哪些地方要加确认与约束
只有这些明确后,才开始生成最终的 SKILL.md。