将多个独立Skill自动串联成"超级技能",一键执行复杂任务链
层级工具职责L1orchestration定义流程骨架(步骤 + 异常处理)L2skill-compounder智能识别技能组合 + 生成调用链 ⭐L3具体Skill各司其职的执行单元
差异化:orchestration 定义"怎么跑",compounder 决定"用什么跑"
text
["技能组合", "多技能联动", "超级技能", "一键执行多技能",
"串起多个技能", "技能流水线", "组合拳", "技能链路",
"自动跑多个skill", "多skill一键执行", "技能拼接",
"技能串联", "worklog自动分析", "素材自动处理",
"优化这个skill", "文章转wiki", "getnote转文章"]
用户意图关键词触发技能组合输出抓取/采集 + 文章web-content-fetcher → writer → wechat-mp-upload完整文章分析 + 投资/数据multi-search-engine → investment-agent → investment-portfolio投资建议视频 + 拆解/分析video-frames → analyze_video → writing-agent视频笔记PDF + 要点/总结pdf-extractor → writing-agent → epub-to-markdown摘要文档搜索 + 整理 + 呈现multi-search-engine → writing-agent → content-creator报告文档优化 + skillskill-self-evolution-enhancer优化版Skill文章 + wikiweb-content-fetcher → epub-to-markdownWiki页面Get笔记 + 公众号web-content-fetcher → writing-agent → wechat-mp-upload公众号文章
text
skills/openclaw-skill-compounder/
├── SKILL.md # 本文件(技能定义)
├── CHAIN.md # 调用链设计逻辑
├── REGISTRY.md # 技能注册表(≥20技能)
└── TEMPLATES/
├── article-pipeline.yaml # 文章创作流水线
├── research-pipeline.yaml # 研究分析流水线
├── video-analysis-pipeline.yaml # 视频分析流水线
├── investment-pipeline.yaml # 投资分析流水线
├── skill-self-evolution.yaml # Skill自进化流水线 ⭐ NEW
├── article-to-wiki.yaml # 文章转Wiki流水线 ⭐ NEW
└── getnote-to-article.yaml # Get笔记转公众号 ⭐ NEW
模板技能链适用场景article-pipeline.yamlfetcher → writer → wechat-mp-upload抓素材写公众号research-pipeline.yamlmulti-search-engine → writing-agent → content-creator研究报告video-analysis-pipeline.yamlvideo-frames → analyze_video → writing-agent视频笔记investment-pipeline.yamlmulti-search-engine → investment-agent → investment-portfolio投资分析skill-self-evolution.yaml ⭐ NEWself-evolution-enhancer (5步)Skill自进化article-to-wiki.yaml ⭐ NEWfetcher → writing-agent → epub-to-markdown文章转Wikigetnote-to-article.yaml ⭐ NEWfetcher → writing-agent × 3 → wechat-mp-uploadGet笔记转公众号
text
input: 用户目标文本
output: 技能调用链 (List[SkillCall])
step 1: 意图分类
→ 使用 thinking-toolbox 分析用户核心意图
→ 映射到标准意图类型
step 2: 技能匹配
→ 根据意图类型从 TEMPLATES/ 加载候选模板
→ 按相似度排序
step 3: 链生成
→ 生成 SkillCall 列表,包含:
- skill_name: 技能名
- trigger: 触发条件
- input_map: 输入映射(从上一技能的 result)
- output_field: 输出字段名
step 4: 参数注入
→ 从用户上下文注入定制参数
→ 生成完整调用指令
step 5: 输出验证(新增)
→ 每步执行后验证输出有效性
→ 无效则触发 fallback
text
用户:"我看到一个视频,想提取内容写篇文章"
↓
skill-compounder 动态识别:
video-frames(提取帧)→ analyze_video(分析内容)→ writing-agent(写文章)
↓
orchestration 执行链