release-alpha 是一个用于为当前仓库切出 alpha 预发布版本的技能。
用途 该技能用于执行 alpha 预发布流程:递增 CalVer 版本号、向 alpha 分支提交 PR,并由 CI 自动打标签并发布到 npm 的 @alpha 标签。当用户说“release alpha”“cut alpha”等时使用。
主要能力
- 检测当前仓库与分支状态,并进行硬性检查。
- 定位 scripts/calver.ts 脚本。
- 计算目标 alpha 版本号。
- 在用户确认后执行版本递增、提交、推送并创建 PR。
- 输出 PR URL,不自动合并。
使用方式 技能假定以下前提:
- 仓库有 scripts/calver.ts,支持 --check 与默认应用模式。
- origin 上存在 alpha 分支。
- calver-release.yml 在版本递增提交进入 alpha 时自动打标签并发布。
- 当前分支不是 main、alpha 或 beta。
执行步骤: Step 0:检测仓库并验证状态。运行日期命令,获取仓库根目录与当前分支,进行硬性检查:当前分支不能是 main、alpha 或 beta;工作区必须干净;然后 fetch origin alpha。 Step 1:定位 calver 脚本,检查 scripts/calver.ts 是否存在。 Step 2:计算目标版本,通过 bun 运行 calver 脚本的 --check 模式,提取形如 vX.Y.Z-alpha.N 的版本号。 Step 3:确认门禁,展示完整计划,等待用户输入 y/yes,其他输入则中止。 Step 4:执行,运行 calver 脚本应用版本递增,添加 package.json,提交信息为“bump: $TARGET”,推送当前分支,并使用 gh pr create 创建以 alpha 为基线的 PR,标题为“release: $TARGET”,正文说明合并后由 calver-release.yml 切出版本。 Step 5:输出,打印 PR URL,不自动合并。
适用场景 适用于需要为仓库切出 alpha 预发布版本的开发流程,尤其是使用 CalVer 版本管理、alpha 分支与 CI 自动发布的项目。
限制 该技能依赖特定的仓库结构(scripts/calver.ts、alpha 分支、calver-release.yml)与工具(git、bun、gh)。当前分支不能是 main、alpha 或 beta,且工作区必须干净。技能不会自动合并 PR。其他未在资料中说明的功能、收费、价格、平台或效果暂未提供。