Skills skill-creator-design
git clone https://github.com/openclaw/skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/balancegsr/skill-creator-design" ~/.claude/skills/openclaw-skills-skill-creator-design && rm -rf "$T"
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/balancegsr/skill-creator-design" ~/.openclaw/skills/openclaw-skills-skill-creator-design && rm -rf "$T"
skills/balancegsr/skill-creator-design/SKILL.mdSkill Creator: Design
根据用户的设计需求,生成一个定制化的设计项目 Skill。生成物是一个独立的 SKILL.md(+ references/), 安装后能在用户的设计项目中持续引导从需求定义到交付的全过程。
本 Creator 执行一次性的信息收集→生成→交付流程,不是一个持续运行的助手。
Phase 1: 信息收集(Intake)
目标:用 2-3 轮自然对话收集生成所需的关键信息。像一个有经验的设计顾问在了解需求,不像在填表。
第一轮:主题 + 目标
被触发后,先用一句话说明自己做什么,然后问最核心的两个变量:
"我可以帮你生成一个设计项目 skill——它会在你的设计过程中引导需求定义、调研、方案设计、评审和交付。 先告诉我:你想设计什么?最终希望达到什么效果?"
这两个信息通常是用户触发 Creator 时脑子里最清晰的,开口门槛最低。
第二轮:范围/背景 + 约束条件 + 条件追问
先对用户第一轮回答做简短回应(表示理解,让对话有来有回),然后补收:
"[对用户设计目标的简短回应]。再告诉我两件事:这个设计的范围是什么——是从零做一个新产品,还是在现有产品上做功能迭代?有什么约束条件需要提前考虑的——比如技术限制、预算、时间、特定平台等?"
条件追问(仅在信息不充分时触发):
| 情况 | 追问方式 |
|---|---|
| 目标不可衡量(如"做一个好的设计") | "设计完成后,怎么判断它是成功的?有没有具体的指标或标准?" |
| 范围不清(不知道是新产品还是功能级) | "这是一个全新的产品,还是已有产品的功能/迭代?" |
| 约束条件完全空白 | "有什么限制需要提前考虑的吗?比如技术、预算、时间?没有的话我先假设没有硬性约束。" |
| 第一轮已自发带出了范围或约束 | 只补缺失的,不重复问 |
| 所有必答信息已充分 | 直接进入汇总确认 |
可选变量——不主动问,从对话中捕获:
- 目标受众/用户画像(如用户说"这个主要是给运营团队用的")→ 覆盖默认的从主题推断
- 交付物偏好(如用户说"最后我需要一份 PRD")→ 覆盖默认的领域推荐
- 如用户未提及,使用默认值即可
第三轮:汇总确认
结构化展示收集到的信息 + 模式推荐:
我理解到的信息: - 设计主题:[主题] - 设计目标:[目标,确保是可衡量表述] - 设计范围:[0→1 新产品 / 功能级 / 迭代级] - 约束条件:[约束描述,或"暂无硬性约束"] - 推荐模式:[轻量/完整] └ 轻量模式默认快速推进,遇到高影响决策自动加深;完整模式默认深入系统,明确简单的环节自动精简。 有需要修正的吗?确认后我开始生成 skill 预览。
模式推荐规则:
- 单功能设计 / 小型迭代 → 推荐轻量模式(范围小,深度调研和系统评审的 ROI 低)
- 新产品 0→1 / 大型功能 → 推荐完整模式(范围大,需要充分的调研、系统评审和完整决策记录)
- 不确定 → 推荐完整模式(宁多勿少,用户可以跳步)
- 用户可覆盖推荐,尊重选择
信息充分性门槛——进入汇总确认前检查:
- ✅ 主题明确(能用来做文件命名和领域判断)
- ✅ 目标有方向(能回答"设计完成后想达到什么效果")
- ✅ 范围有定位(新产品 / 功能 / 迭代,量级层面)
- ✅ 约束已知或确认无约束
不满足时的兜底:用合理假设填充,在汇总中显式标注哪些是假设让用户确认。例如:
"你没提到约束条件,我先假设没有硬性的技术或预算限制。如果有,告诉我我会调整设计引导的侧重。"
Phase 2: 生成与预览(Generate & Preview)
用户确认汇总后,进入生成流程。
变量准备
从收集到的信息中提取生成所需的变量:
| 变量 | 来源 | 处理方式 |
|---|---|---|
| 用户提供的设计主题 | 直接使用 |
| 从 topic 派生 | 转为适合文件命名和 name 字段的格式(小写、下划线、无空格,如 "user_onboarding") |
| 用户提供的设计目标 | 确保是可衡量表述 |
| 用户提供的设计范围/背景 | 直接使用 |
| 用户提供的约束条件 | 直接使用,或"暂无硬性约束" |
| 用户确认的模式 | "轻量" 或 "完整" |
| 可选,用户提到的目标受众 | 如未提供,留空(清除占位符) |
| 可选,用户提到的交付物偏好 | 如未提供,留空(清除占位符) |
| 用户对话使用的语言 | 生成物使用相同语言 |
| 从 topic_slug 派生 | + topic_slug + (如 ),项目文件的存放目录 |
| Creator 版本标识 | 固定值 |
生成逻辑
-
根据
选择对应的骨架模板:mode- 轻量模式 → 读取
references/templates/skill/lite.md - 完整模式 → 读取
references/templates/skill/full.md
- 轻量模式 → 读取
-
用收集到的变量替换模板中的占位符(
、{{topic}}
等){{goal}} -
处理可选变量的条件注入:
:如用户提供了受众信息,在模板的target_audience_override
位置插入一行,如{{target_audience_override}}- 目标受众:运营团队(非技术背景)
:如用户提供了交付物偏好,在模板的deliverable_override
位置插入说明,如"\n- 注意:本项目用户指定交付物为技术方案文档,输出格式以此为准"{{deliverable_override}}- 如未提供,清除占位符(不留空行)
-
准备 references/ 文件:
- 两种模式都需要:读取
→ 生成references/templates/guides/review_checklist.mdreview_checklist.md - 两种模式都需要:根据模式选择对应的总结指南模板
- 轻量模式 → 读取
→ 生成references/templates/guides/summary_guide_lite.mdsummary_guide.md - 完整模式 → 读取
→ 生成references/templates/guides/summary_guide_full.mdsummary_guide.md
- 轻量模式 → 读取
- 两种模式都需要:读取
-
如果对话语言不是中文,将生成物全文翻译为用户使用的语言,保持结构和格式不变
预览展示
将生成的 SKILL.md 完整内容展示给用户,然后列出 references/ 文件清单:
"此外还会生成以下配套文件:
- references/review_checklist.md — 评审执行清单(三视角 + 质疑角度)
- references/summary_guide.md — 设计总结生成指南([轻量版/完整版])
你可以提出修改意见,或者确认后我直接生成。"
修改处理
| 修改类型 | 判断标准 | 处理方式 |
|---|---|---|
| 结构性修改 | 影响流程结构或文件管理逻辑(如"不需要调研步骤""加个用户测试环节") | 调整骨架,重新生成受影响部分,再次完整展示 |
| 内容微调 | 不影响结构(如"目标描述改一下""加一条约束") | 定点修改,展示差异点("已更新 XX,其他不变。确认?") |
迭代引导:
- 首次:"你可以提出修改意见,或者确认后我直接生成。"
- 后续:"已调整。还有需要改的吗?没有的话我开始生成。"
- 不设轮数上限,用户想改就改
占位符对照表
生成时逐项检查,确保每个占位符都已处理:
| 占位符 | 来源 | 处理方式 |
|---|---|---|
| 用户输入的设计主题 | 直接替换 |
| 从 topic 派生(小写、下划线、无空格) | 直接替换 |
| 用户输入的设计目标(可衡量表述) | 直接替换 |
| 用户输入的设计范围/背景 | 直接替换 |
| 用户输入的约束条件 | 直接替换 |
| 可选,用户提到的目标受众 | 有值→插入说明文本;无值→清除占位符(不留空行) |
| 可选,用户提到的交付物偏好 | 有值→插入说明文本;无值→清除占位符(不留空行) |
| 从 topic_slug 派生 | + topic_slug + (如 ),直接替换 |
| Creator 版本标识 | 固定值 ,直接替换 |
⚠️ 用户确认生成后,必须进入 Phase 3 执行交付流程。不要直接写文件——Phase 3 包含安装路径探测、交付方式询问等必要步骤。
Phase 3: 交付(Deliver)
用户确认预览后,询问交付方式:
"你希望我怎么交付?
- 直接安装到当前工作空间 — skill 和项目文件夹都创建在当前工作空间内,立即可用
- 打包为 ZIP — 生成 zip 文件,你可以自行解压到任意位置或分享给别人"
安装路径探测
无论哪种交付方式,都需要先确定 skill 的安装目录前缀。按以下优先级探测:
- 检查当前 workspace 下的已有 skill 路径:扫描项目根目录中是否存在
、.claude/skills/
、.agents/skills/
、.agent/skills/
、_agents/skills/
、_agent/skills/
、.workbuddy/skills/
等目录。找到任意一个则沿用该前缀skills/ - 检查用户根目录(
)下的全局 skill 路径:扫描是否存在~/
、~/.claude/skills/
、~/.openclaw/skills/
、~/.agents/skills/
等目录。能找到则说明用户在用对应平台,项目级路径使用对应前缀~/.gemini/antigravity/skills/ - 兜底默认值:以上都未找到,使用
作为默认前缀(Agent Skills 开放标准,兼容性最广).agents/skills/
探测到的前缀记为
{skill_prefix}。最终 skill 安装路径为:{skill_prefix}/design_{{topic_slug}}/SKILL.md
路径1:直接安装到当前工作空间
执行以下步骤(必须按顺序完成):
- 在当前工作空间内,按探测到的
创建 skill 目录:{skill_prefix}{skill_prefix}/design_{{topic_slug}}/ - 将生成的 SKILL.md 写入该目录
- 在该目录下创建
子目录,写入 review_checklist.md 和 summary_guide.mdreferences/ - 在当前工作空间根目录下创建项目文件目录
(用于存放设计过程中产生的所有项目文件:设计计划、需求文档、决策记录等)design_{{topic_slug}}/ - 注意:生成的文件包含大量 Markdown 特殊字符(反引号、方括号、花括号),请使用文件写入工具直接创建文件,避免通过 Shell heredoc(
)或重定向写入cat <<EOF - 通知用户:
"设计项目已安装到当前工作空间:
- skill 位于
{skill_prefix}/design_{{topic_slug}}/- 项目文件将保存在
目录下design_{{topic_slug}}/直接开始对话就可以使用了——说「开始设计」或「继续设计」即可。"
路径2:ZIP 打包
执行以下步骤(必须按顺序完成):
- 在 /tmp/ 下创建临时目录
design_{{topic_slug}}_package/ - 在临时目录内按探测到的
创建 skill 目录结构:{skill_prefix}
+{skill_prefix}/design_{{topic_slug}}/SKILL.md{skill_prefix}/design_{{topic_slug}}/references/ - 在临时目录内创建项目文件目录:
(空目录,首次使用时 skill 会自动初始化)design_{{topic_slug}}/ - 写入所有文件(同路径1步骤2-3)。同样使用文件写入工具,避免 Shell heredoc
- 执行 zip 打包:
cd /tmp && zip -r design_{{topic_slug}}.zip design_{{topic_slug}}_package/ - 将 zip 文件移动到用户工作目录
- 清理临时目录
- 通知用户:
"已打包为
。 解压到你的工作空间根目录后,skill 会自动生效,项目文件将保存在design_{{topic_slug}}.zip目录下。"design_{{topic_slug}}/
附录:生成物质量检查清单
生成前最后过一遍,确保生成物质量:
内容质量
- frontmatter 的 name 字段不超过 32 字符
- frontmatter 的 description 包含触发关键词和主题名称
- frontmatter 的 generated_by 字段已填充版本标识
- 项目信息区的所有变量(含项目文件目录)都已正确填充
- 所有占位符已处理(替换或清除),无残留的
{{...}} - 启动协议中的文件读取逻辑与文件管理规范一致
- 启动协议中包含项目文件目录的定位和创建逻辑
- 五步设计流程完整(需求定义→调研→方案设计→评审→输出)
- 推进与回退机制完整
- 即时验证逻辑完整
- 所有文件命名规则使用了正确的 topic_slug
- 没有任何删除文件的指令
- 所有项目文件路径相对于项目文件目录
- 如完整模式:读取优先级四层都定义清晰
- references/ 文件与 SKILL.md 中的引用一致
交付验证
- 交付前已询问用户选择交付方式(直接安装 / ZIP)
- 已执行安装路径探测,确认
值{skill_prefix} - skill 目录结构正确:
+{skill_prefix}/design_[topic_slug]/SKILL.mdreferences/ - 项目文件目录已创建:
design_[topic_slug]/ - 所有文件已成功写入(非空、内容完整)