Auto-Updater Skill
一个面向 Other 场景的 Agent 技能。原始说明:Automatically update Clawdbot and all installed skills once daily. Runs via cron, checks for updates, applies them, and messages the user with a summary of what changed.
name: skill-sub
version: 1.24.1
author: wUwproject
license: MIT
description: 调用链编排技能 — 既是调用链编辑器,也是粗粒度规划器。理解用户意图 → 规划 Skill 参与顺序 → 更新/保存/推荐调用链 → 拼接为调用链(支持循环/分支编排、子步骤拓扑排序、准确步骤计数)。
sensitive_access: false
critical_write: false
permission_weight: LOW
data_dir: ../.standardization/skill-sub/data/
tags: ['chain', 'orchestration', 'usable', 'skill-builder', 'progressive-loading', 'planner', 'editor']
externaldatadir: true
trigger: ['规划类: 帮我规划一下/步骤是什么', '顺序类: 依次执行/先...再...', '链管理: 创建/查看/更新/删除调用链']
trigger_negative: ['不使用调用链', '手动逐步执行']
反模式详见 references/antipatterns.md
当用户提出以下意图时触发本技能:
否定条件:仅当用户明确要求「不使用调用链」或「手动逐步执行」时,不自动触发。
📚 渐进式加载:本技能采用渐进式 MD 体系,
SKILL.md为入口(≤230行),详细内容拆分到references/*.md按需加载。
| # | 功能 | 说明 |
|---|------|------|
| 1 | 调用链管理 | 创建、查询、更新、删除调用链 |
| 2 | 执行计划生成 | 生成结构化执行计划,含并行/串行标记 |
| 3 | 条件执行 | 支持条件步骤,按条件判断是否执行 |
| 4 | 循环与分支编排 | 支持 for-each/while 循环和 if-else 分支 |
| 5 | Dry-Run 模式 | 模拟执行,不实际调用技能 |
| 6 | 链备份与版本管理 | 自动备份,支持版本恢复 |
# 初始化
python {SKILL_DIR}/scripts/chain_manager.py init
# 创建调用链
python {SKILL_DIR}/scripts/chain_manager.py create --name "发布流水线" --description "技能发布流程" --purpose "一键发布" --steps '[...]'
# 生成执行计划(含执行预览)
python {SKILL_DIR}/scripts/chain_executor.py plan --name "发布流水线" --verbose
# Dry-Run 模拟执行(不实际调用技能)
python {SKILL_DIR}/scripts/chain_executor.py plan --name "发布流水线" --dry-run
# 查看调用链
python {SKILL_DIR}/scripts/chain_manager.py show --name "发布流水线"
# 列出所有调用链
python {SKILL_DIR}/scripts/chain_manager.py list
# 删除(自动备份)
python {SKILL_DIR}/scripts/chain_manager.py delete --name "发布流水线" --force
```text
---
## 循环与分支编排(v1.20.0 新增)
### for-each 循环
在调用链 JSON 中,将某步骤的 `type` 设为 `"loop"`,并定义 `loop` 对象:
```json
{
"type": "loop",
"step_name": "批量处理文件",
"loop": {
"mode": "for_each",
"items": "{{file_list}}",
"loop_variable": "f",
"max_iterations": 10,
"steps": [
{"type": "skill", "skill_name": "file-ops", "step_name": "处理单个文件", "action": "处理 {{f}}"}
]
}
}
```text
### while 循环
```json
{
"type": "loop",
"step_name": "重试直到成功",
"loop": {
"mode": "while",
"while_condition": "{{retry_count}} < 3 and {{last_result}} != 'success'",
"max_iterations": 3,
"steps": [
{"type": "skill", "skill_name": "api-call", "step_name": "调用接口", "action": "重试第 {{retry_count}} 次"}
]
}
}
```text
### if-else 分支
```json
{
"type": "branch",
"step_name": "按环境部署",
"branch": {
"condition": "{{env}} == 'prod'",
"if_steps": [
{"type": "skill", "skill_name": "deploy", "step_name": "生产部署", "action": "部署到生产环境"}
],
"else_steps": [
{"type": "skill", "skill_name": "deploy", "step_name": "预发部署", "action": "部署到预发环境"}
]
}
}
📚 完整 schema 详见
references/chain_schema.md
完整工作流程、使用示例、反模式与常见问题 → 见 references/ 目录:
references/workflow.md — 详细工作流程references/examples.md — 使用示例references/faq.md — 常见问题与反模式references/chain_schema.md — 调用链数据结构定义references/permissions.md — 权限说明配置界面:python {SKILL_DIR}/scripts/settings.py
| 配置项 | 选项 | 说明 |
|--------|------|------|
| 记忆参考 | 是 / 否 | 创建/执行调用链时,是否读取用户记忆文件增强步骤描述 |
| 命名方式 | 自动 / 人工 | 创建调用链时,由 AI 自动命名还是询问用户 |
| 默认重试次数 | 1-10(默认3) | 所有步骤的默认最大重试次数 |