SuperAPI AI 工具集

super-pm-upgrade

部署与运维

查看项目

更新于 10-16 06:22

技能介绍

用途:当用户要求检查 super-pm 更新、升级完整 Git 安装或回退时使用;不要在普通 PM 任务、仅需安装健康检查或用户未要求升级时使用。核心原则是绝不在用户的业务项目仓库中运行升级用 Git 命令。

定位包根:从当前 super-pm-upgrade 技能目录找到 scripts/package-root.sh 并执行,获取技能包 Git 根目录:PACK_ROOT="$(bash "<当前 super-pm-upgrade skill 的绝对目录>/scripts/package-root.sh")" || exit 2。该脚本按自身真实位置定位,不依赖当前工作目录。若失败,说明是复制安装或非 Git 安装,应停止 Git 升级流程,改用 npx skills update 或平台自己的更新机制,不要退回对用户当前项目执行 git pull。

检查:后续所有 git 命令须带 -C "$PACK_ROOT",并重新设置绝对 PACK_ROOT。可执行 status --short、branch --show-current、读取 VERSION、fetch origin main --tags、查看 HEAD 与 origin/main 的 log。比较当前 HEAD 与 origin/main;存在未提交改动、非快进、分支不符或远程不可用时停止并说明,不自动 stash、重置、切换分支或覆盖文件。仅要求“检查”时到此为止。

升级:需用户明确确认,先告知目标提交、当前版本和影响。确认后记录 OLD_COMMIT,确认工作区干净,只执行 merge --ff-only origin/main,不创建新分支或 worktree,并输出前后提交与 VERSION。随后验证版本与实际技能清单再报告成功,未验证不得声称成功。

回退:记录 OLD_COMMIT 供用户决定,但不自动回退;回退需再次确认并确保技能包工作区干净,不得改动业务项目。交互上,如无 AskUserQuestion,普通聊天一次只问一个问题并等待回答;用户拒绝即停止。复制安装、权限不足、网络失败或无法快进时解释原因与安全的手动路径,不静默忽略错误。