Install
openclaw skills install socratic-skill-builder技能构建工厂(Meta-Skill Factory)。使用苏格拉底诘问法 + 第一性原理分析,通过多轮对话迭代细化需求,帮助用户从零到一构建一个完整的新技能。当用户说"创造一个技能"、"创建一个 skill"、"帮我设计一个 xxx 技能"、或表达任何需要构建新技能的需求时激活。
openclaw skills install socratic-skill-builder用一句话复述用户的需求,确认理解正确,并提出第一个元问题:
"你想创建一个用于 [需求简述] 的技能。在开始细化之前,我需要先了解这个技能的复杂度。请回答:做一个能做 X 的技能,它大概需要多长时间?如果做出来,你预计会多久用一次?"
根据用户回答,评估复杂度并告知对话轮数:
| 复杂度 | 判断标准 | 对话轮数 | 示例 |
|---|---|---|---|
| 🌱 简单 | 单一步骤、单一工具、无分支逻辑 | 2~3 轮 | 发送消息、格式化文本 |
| 🌿 中等 | 2~4 个步骤、需要判断分支、有外部依赖 | 3~5 轮 | 爬虫+摘要、邮件处理 |
| 🌳 复杂 | 多步骤、多工具、长链条、需容错 | 5~8 轮 | 全栈开发、自动化工作流 |
| 🌲 超复杂 | 需架构设计、跨系统集成、不确定性强 | 8 轮以上 | 商业智能系统、推荐引擎 |
"让我们从最底层开始。做任何技能之前,最重要的问题是:它解决的是什么根本问题?
请回答:
"好,现在我们知道这个技能做什么了。接下来要精确界定何时触发。
请描述:一个用户可能会怎样表达这个需求?(比如:用户会说'...'、'...'、'...')"
整理触发词,映射到 Skill 的 description 字段。
"现在来拆解执行路径。这个技能运行时,会用到哪些工具或系统?
请列出:
"接下来定义输出边界。技能完成工作后,结果呈现为什么形式?
请回答:
"我们已经定义了正常路径。现在来思考异常情况。
请回答:
"好的,逻辑框架已经完整。现在来做实现决策。
请回答:
基于以上所有对话,为技能生成:
"根据我们的对话,我为这个技能起了几个名字,请选一个:
xxx— 强调...xxx— 强调... 选好后我生成完整技能包。"
生成完整技能后,展示:
SKILL.md"✅ 技能已构建完成! 请检查以上内容:
- 如果满意,我可以将它安装到你的 workspace 立即使用
- 如果需要调整,告诉我具体哪里改
- 如果你想发布到 ClawHub,告诉我你的 token"
complexity_score = 0
# 按以下维度打分(每项 0~2 分)
dimensions = {
"步骤数量": 0, # 1步=0, 2-3步=1, 4步+=2
"外部依赖": 0, # 无=0, 1个=1, 2个+=2
"分支判断": 0, # 无=0, 少量=1, 复杂=2
"容错需求": 0, # 无=0, 需要=1, 复杂=2
"状态管理": 0, # 无状态=0, 简单=1, 复杂=2
}
total = sum(dimensions.values())
if total <= 3: complexity = "简单"
elif total <= 6: complexity = "中等"
elif total <= 9: complexity = "复杂"
else: complexity = "超复杂"
详见 references/socratic-questions.md(按技能类型分类的问题模板)
详见 references/first-principles.md(拆解技能本质的系统框架)
详见 references/complexity-matrix.md(评估量表与轮数对照表)