360 Secure SkillHub
360 安全技能中心

cjg-skill-sync

扫描本机已安装技能,向藏经阁查询作者最新版本并列出变更说明。默认只检查不动任何文件;更新前自动备份到技能目录外,失败自动回滚,检测到本地改动先询问,大版本升级必须确认。支持 check、apply、rollback、autoupdate、autorun 等命令,输出技能名、当前版本、最新版本、变更类型与是否需确认的表格。适合装了较多技能、想定期体检版本落后的用户。联网只发送技能名与版本号,不上传任何文件;自动更新默认关闭,需自行配置定时任务调用 autorun。

j-levee
j-levee
热度 22.32
最近更新 2026-09-28 19:00:36
分类:自动化依赖:代码执行 / 读写文件 / 第三方 API应用场景:工作流 / 自动化脚本 / DevOps / 任务管理

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add cjg-skill-sync
Metadata
slug
cjg-skill-sync
name
cjg-skill-sync
displayName
技能更新助手(检查并跟上作者发布的最新版本)
version
0.3.0
description
扫描你本机已安装的技能,向藏经阁查询作者是否已发布新版本,列出变更说明并帮你安全更新。核心承诺:更新前自动备份、失败自动回滚、检测到你改过的文件绝不覆盖(先问你)、大版本升级必须你点头。默认只做"检查",不会在你不知情时改动任何文件;自动更新默认关闭,需你主动开启,开启后也只自动应用"同主版本且无本地改动"的安全更新。触发词:检查技能更新、更新技能、技能有新版本吗、升级技能、技能版本、同步技能、skill update、check skill updates、update my skills、sync skills。
agent_created
true

技能更新助手 / Skill Update Assistant

你装了作者发布的技能,作者后来又发布了新版本 —— 本技能帮你发现并安全跟上。

一句话:只告诉你"有新版本 + 改了什么",更新动作由你决定;真要更新,全程可回滚。


一、安全承诺(四条硬底线,不可协商)

  1. 更新前必备份:每次更新先把整个技能目录完整备份到技能目录之外 (~/.workbuddy/backups/cjg-skill-sync/),失败自动恢复原状。放在技能目录里 会被平台的强制安装连同目录一起删掉,那样回滚就形同虚设了。
  2. 失败必回滚:安装任何一步出错,立刻还原到更新前的状态,不留半截。
  3. 你改过的文件绝不静默覆盖:检测到技能目录里有你自己的修改,一律停下来先问你。
  4. 大版本升级必须你点头:主版本号变化(如 1.x → 2.0)属于不兼容变更,绝不自动执行。

补充承诺:

  • 默认不自动改机器:本技能默认只做"检查"。开启自动更新后,也只会自动应用「同主版本 + 无本地改动」的小更新。
  • 不在后台常驻:本技能自身不含定时调度器,"每天自动检查"要由你的宿主(WorkBuddy 自动化 / 计划任务 / cron)定时调用 autorun 来实现,命令见第五节。
  • 随时可关:一键关闭自动更新,关闭后 autorun 会直接跳过,不联网、不改动任何文件。
  • 不上传你的代码:联网请求只发送技能名和版本号,不发送你的任何文件内容。

一 b、调用门闸(gate · 技能脚本执行前校验)

python scripts/skill_sync.py gate --slug <技能slug> [--local <版本>]
  • 输出 JSON:{action: none|warn|block, latest, sync_policy, message};退出码 0=放行,2=拒绝。
  • 策略来自藏经阁索引(作者发布时设定):off 不接入 / warn 提示 / block 版本落后即拒绝执行。
  • fail-open 承诺:索引不可达或 2 秒超时一律放行(本地优先);你的技能若需要 fail-closed,请在自己的脚本里显式处理。

二、什么时候用我

  • 你听说某个技能更新了,想知道自己装的是不是旧的
  • 你想定期体检:本机所有技能的版本是否落后
  • 你装了很多技能,懒得一个个去平台看

三、怎么用

# ① 只检查,不动任何文件(默认、最安全)
python scripts/skill_sync.py check

# ② 检查 + 列出详细差异(含变更说明、是否大版本、是否有本地改动)
python scripts/skill_sync.py check --verbose

# ③ 应用更新(会先备份;逐个向你确认)
python scripts/skill_sync.py apply --slug <技能名>

# ④ 全部可安全更新的(仅同主版本且无本地改动)批量更新
python scripts/skill_sync.py apply --safe-only

# ④' 让脚本调平台命令行工具,真正替你安装(默认只给命令,不动机器)
python scripts/skill_sync.py apply --slug <技能名> --execute
python scripts/skill_sync.py apply --safe-only --execute

# ⑤ 出事了回滚到最近一次备份
python scripts/skill_sync.py rollback --slug <技能名>

# ⑥ 开关自动更新策略(默认关)
python scripts/skill_sync.py autoupdate --on
python scripts/skill_sync.py autoupdate --off

# ⑦ 供定时任务调用的一次性动作(未开启时会自动跳过,什么也不做)
python scripts/skill_sync.py autorun

关于"自动":本技能不自带定时调度。想每天自动检查,需要你安排一个定时任务来调用 autorun:

  • WorkBuddy:新建自动化,周期每天,提示词写「跑一次技能更新自动检查」
  • Windows 计划任务:schtasks /create /tn cjg-skill-sync /sc daily /st 09:00 /tr "python <技能目录>\scripts\skill_sync.py autorun"
  • cron / CI:0 9 * * * cd <技能目录> && python scripts/skill_sync.py autorun

autorun 只会自动应用「同主版本 + 无本地改动」的更新,且每次都先备份;大版本和本地改过的技能一律跳过,等你手动决定。

典型对话:

用户:帮我看看装的技能有没有新版本 → 执行 check,输出一张表:技能名 / 当前版本 / 最新版本 / 变更说明 / 是否需要你确认


四、输出长什么样

技能更新检查 · 2026-09-13 01:40

技能                  当前      最新      类型      变更说明
cjg-skill-forge       3.0.4     3.1.0     小版本     优化发布流程
sweeping-monk         1.11.2    2.0.0     大版本⚠    重构方法论索引(需你确认)
bagua-furnace         1.2.3     1.2.3     最新       —

可安全自动更新(同主版本 + 无本地改动):1 个
需要你确认:1 个(sweeping-monk 大版本升级)

五、本地改动是怎么判断的

首次运行时,本技能会为已装技能建立一份"安装快照"(记录每个文件的哈希)。 之后每次检查对比快照:

  • 文件哈希变了 → 判定"你改过" → 更新前必须先问你
  • 没变 → 属于干净安装 → 小版本可安全自动更新

快照文件存在技能目录下的 .cjg_sync/ 里,删除它等于"重置为未知状态", 重置后本技能会按最保守方式处理(视为可能有改动)。


六、配置

配置文件:config.json(同目录)

{
  "skill_version_url": "https://1318491188-05nz50b82l.ap-guangzhou.tencentscf.com",
  "auto_check_enabled": false,
  "auto_apply_safe_only": true
}
字段 默认 说明
skill_version_url 藏经阁公开地址 只查版本号,无鉴权
auto_check_enabled false 自动更新开关,默认关;关闭时 autorun 直接跳过
auto_apply_safe_only true 开启后只自动应用"同主版本 + 无本地改动"的更新

七、更新源

新版本安装包从原始发布平台下载(SkillHub / ClawHub / Gitee / GitHub), 藏经阁只保存"版本号 + 变更说明 + 安装方式",不托管任何安装包。

  • 默认:只列出安装方式(可自动安装的会标出来),你自己决定要不要装。
  • 加 --execute:本技能会调用本机已安装的平台命令行工具替你装; 装完会校验版本号,装不到位的会明确告诉你并保留回滚入口。
  • 没装对应平台的命令行工具时,不会瞎猜,只给你可复制的命令。

有一种情况要说明:有时云端已经登记了新版本号,但平台放出的安装包还是旧的 (新版本在审核或同步中)。这时装完版本号不变,本技能会把它记为"平台未放出", 不再反复提示你更新 —— 等平台放出后再跑检查即可。


八、边界(不做什么)

  • 不替你决定要不要升级大版本
  • 不修改技能内容、不合并你的本地改动(只提示)
  • 不在后台偷偷联网(除你自己配置了定时任务调用 autorun)
  • 不自带定时调度器,不会在你机器上留常驻进程
  • 不上传你的任何文件、代码、路径