GitHub Skill Updater

v1.0.0

检查并更新通过 GitHub git clone 安装的 OpenClaw skills。适用于用户提到“更新skill”“更新 skill”“检查 skill 是否有新版本”“GitHub 安装的 skill 有没更新”“帮我检查本地 skills 是否落后”“更新 git clone 装的 skill”“拉取...

0· 120·2 current·2 all-time
byvicwang@viccwang

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for viccwang/github-skill-updater.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "GitHub Skill Updater" (viccwang/github-skill-updater) from ClawHub.
Skill page: https://clawhub.ai/viccwang/github-skill-updater
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install github-skill-updater

ClawHub CLI

Package manager switcher

npx clawhub@latest install github-skill-updater
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The name/description describe checking and updating git-cloned skills and the code (manage_github_skill.py) implements exactly that using git CLI calls. There are no unrelated env vars, binaries, or network endpoints declared.
Instruction Scope
SKILL.md and the script limit actions to detecting repo status and performing safe updates (fast-forward for branches, tag checkout). However, the runtime commands perform 'git fetch'/'git pull'/'git checkout' which will contact remotes and can modify local skill directories. This behavior is expected for its purpose but is destructive if used improperly, so users should review results before applying updates.
Install Mechanism
No install spec or remote downloads are present; the skill is instruction + local Python script. It does not fetch arbitrary code from unknown URLs during install, so install risk is low.
Credentials
The skill declares no required environment variables or secrets. Note: git network operations implicitly use the user's git credentials (SSH keys, credential helpers, or stored HTTPS credentials) when contacting origin; this is expected but worth being aware of.
Persistence & Privilege
always is false. The skill can be invoked autonomously (platform default). If invoked, it can run git operations that change local files. This matches its purpose but means you should be comfortable with an agent having the ability to update local skill repos.
Assessment
This skill appears to do exactly what it says: check local, git-cloned skills and optionally fast-forward or switch tags. Before running updates: (1) run the check mode (or use --json) to inspect which repos are out-of-date; (2) verify remote URLs are trusted (it will contact origins and use your git credentials); (3) ensure you have backups or can revert changes if an update breaks a skill; (4) prefer manual invocation for update operations unless you trust autonomous agent actions. If you want to limit risk, run only 'check' from the agent and perform updates yourself from a shell.

Like a lobster shell, security has layers — review code before you run it.

latestvk97cp9ecz28jkreey8s0fyyz058416wj
120downloads
0stars
1versions
Updated 3w ago
v1.0.0
MIT-0

GitHub Skill Updater

用于检查和更新“通过 GitHub git clone 安装”的 OpenClaw skills。

触发条件

当用户表达下面这类意图时,应触发这个 skill:

  • 更新 skill
  • 更新某个 GitHub 安装的 skill
  • 检查 skill 是否有新版本
  • 拉取某个 skill 的最新代码
  • 看看 workspace 里的 skills 哪些落后了
  • 批量更新 git clone 安装的 skills

适用范围

  • 适用:
    • skill 目录里保留 .git
    • skill 有 origin 远端
    • skill 在 branch 或精确 tag 上
  • 不适用:
    • 下载 zip 后手工拷贝的 skill
    • 没有 .git 的普通目录
    • detached HEAD 且不在精确 tag 上的仓库

默认流程

  1. 先做检查,不直接更新。
  2. 发现 dirtyaheaddiverged 时默认停止,向用户说明原因。
  3. 只有 update-available 才执行更新。

推荐命令

如果当前目录就是 OpenClaw workspace 根目录,推荐直接用包装命令:

./skills/github-skill-updater/scripts/github-skill-updater check skills

更新单个 skill:

./skills/github-skill-updater/scripts/github-skill-updater update skills/<skill-name>

也可以直接调用 Python 主脚本:

python3 skills/github-skill-updater/scripts/manage_github_skill.py check skills

批量输出 JSON:

./skills/github-skill-updater/scripts/github-skill-updater check skills --json

输出解释

  • up-to-date: 已是最新
  • update-available: 有可更新内容
  • dirty: 有未提交改动,默认不更新
  • ahead: 本地领先远端,默认不更新
  • diverged: 本地与远端分叉,默认不更新
  • unsupported: 目录不满足自动判断条件

实施要求

  • 使用脚本 scripts/manage_github_skill.py
  • 更新前必须先执行检查
  • branch 模式仅允许 fast-forward 更新
  • tag 模式只切换到更新的 tag,不做强制重置

失败兜底

如果脚本返回 unsupported

  • 检查该 skill 是否真的是 git clone 安装
  • 确认目录里是否保留 .git
  • 确认是否存在 origin
  • 如无 git 元数据,只能手工重新安装或手工替换

Comments

Loading comments...