mcpField
A
auto-updater-skill

auto-updater-skill

github.com/alphaonedevAgent 工作流58 次安装
代码仓库

关于 auto-updater-skill

用于维护注册表或社区集群中技能版本的 OpenClaw 技能。它通过命令行检查更新、生成差异、应用变更、回滚版本并记录版本历史。

主要功能

  1. 01检查注册表中的更新
  2. 02生成版本差异
  3. 03通过冲突选项应用更新
  4. 04回滚到较早版本
  5. 05跟踪版本历史

适用场景

  1. 01部署前审查技能更新
  2. 02自动执行定期版本检查
  3. 03故障更新后恢复技能
  4. 04跟踪社区集群中的版本

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/alphaonedev/openclaw-graph --skill auto-updater-skill

安装后在 Claude Code 中输入/auto-updater-skill确认已加载。

详细介绍

auto-updater-skill

用途

此技能可自动管理 OpenClaw 技能的更新,包括检查新版本、生成差异、应用更新、回滚更改和跟踪版本,确保维护工作顺利进行。

适用场景

当你需要在社区集群中维护技能版本时,可以使用此技能,例如在部署更改之前、检测到潜在问题之后,或在例行维护周期中。此技能特别适用于涉及多个技能且版本一致性至关重要的场景,例如生产环境或协作开发。

主要功能

  • 检查更新:查询 OpenClaw 注册表,获取较新的技能版本。
  • 生成差异:比较当前版本与最新版本,并突出显示更改。
  • 应用更新:安全地安装更新并解决冲突。
  • 回滚更新:出现问题时恢复到之前的版本。
  • 版本跟踪:维护版本历史和元数据日志。 具体说明:支持用于覆盖版本的 JSON 配置文件,例如 {"skill_id": "my-skill", "target_version": "1.2.3"}。需要通过 $OPENCLAW_API_KEY 环境变量进行身份验证。

使用模式

使用此技能前,请先确保已安装 OpenClaw CLI 并完成身份验证。通过 openclaw skill import auto-updater-skill 导入技能。然后,通过程序或 CLI 调用。若要自动化,可将命令封装到脚本中,每天检查更新。始终指定技能 ID,并使用标志设置 dry-run 或 force-apply 等选项。

常用命令/API

使用 OpenClaw CLI 进行交互。所有命令都要求在环境中设置 $OPENCLAW_API_KEY。

  • 检查更新:运行 openclaw auto-update check --skill-id <id> --cluster community。此命令会查询 API 端点 /api/skills/{id}/updates,并返回可用版本。 示例代码段:
    export OPENCLAW_API_KEY=your_key
    openclaw auto-update check --skill-id auto-updater-skill
    
  • 生成差异:执行 openclaw auto-update diff --skill-id <id> --from-version 1.0.0 --to-version 1.1.0。以 JSON 格式输出差异。 示例代码段:
    openclaw auto-update diff --skill-id my-skill --from-version 1.2.3
    
  • 应用更新:使用 openclaw auto-update apply --skill-id <id> --version 1.1.0 --dry-run。添加 --force 可跳过检查。 示例代码段:
    openclaw auto-update apply --skill-id my-skill --version latest
    
  • 回滚更新:命令:openclaw auto-update rollback --skill-id <id> --to-version 1.0.0。此命令会访问 API 端点 /api/skills/{id}/rollback。 示例代码段:
    openclaw auto-update rollback --skill-id my-skill --to-version 1.0.0
    
  • 版本跟踪:使用 openclaw auto-update track --skill-id <id> 查询。配置格式:使用 YAML 文件,例如 versions.yaml,内容为:skill_id: my-skill, history: ["1.0.0", "1.1.0"]。

集成说明

将此技能添加为主技能配置文件中的依赖项,即可将其集成到 OpenClaw 工作流中,例如在 skill.json 中添加 "dependencies": ["auto-updater-skill"]。进行 API 集成时,使用基础 URL https://api.openclaw.com,并添加标头 Authorization: Bearer $OPENCLAW_API_KEY。与其他技能串联时,请确保通过回调处理错误传播。请先在预发布环境中测试集成。

错误处理

检查 CLI 命令的退出代码来处理错误(例如,失败时返回代码 1)。常见错误包括 $OPENCLAW_API_KEY 无效导致的身份验证失败(HTTP 401),或版本冲突(错误代码 409)。处理方法:在脚本中使用 try-catch 块封装命令,例如:

try {
  openclaw auto-update check --skill-id my-skill
} catch (error) {
  if (error.code === 401) { echo "Auth failed; check $OPENCLAW_API_KEY"; }
}

使用 --log-file output.log 标志将错误记录到文件中。对于 API 调用,请解析 JSON 响应以获取错误详情,例如 {"error": "Version not found"}。

具体使用示例

  1. 示例:检查并应用技能更新
    首先,检查更新:openclaw auto-update check --skill-id my-skill。如果有新版本可用,则应用该版本:openclaw auto-update apply --skill-id my-skill --version latest。这样无需手动干预即可确保技能保持最新。可在 CI/CD 管道中用于自动部署。

  2. 示例:更新失败后回滚
    如果更新导致问题,请立即回滚:openclaw auto-update rollback --skill-id my-skill --to-version 1.0.0。在此之前,生成差异以核对更改:openclaw auto-update diff --skill-id my-skill --from-version 1.1.0。此模式有助于维持生产环境的稳定性。

图关系

  • 依赖:skill-registry(用于查询版本)
  • 提供:update-management(供其他社区技能使用)
  • 关联:openclaw-core(通过 API 端点)
  • 冲突:无
  • 使用者:maintenance-skills 集群

评论

支持 Markdown