用途:自动化 es-toolkit 的发布流程,包括生成变更日志、更新版本号、提交和打标签。
主要能力:执行飞行前检查(当前分支必须为 main、工作区干净、拉取最新代码);从 package.json 读取当前版本,按 patch、minor 或显式版本号(如 1.45.0)计算新版本,无参数时默认 minor;用 git log 收集自上次发布以来的提交并分类筛选(feat、fix、revert 纳入,docs 视情况,chore/build/ci/test 仅在重要时纳入,跳过发布提交、合并提交、依赖升级与已回滚的成对提交);通过 gh 命令收集贡献者 GitHub 用户名并去重排序;按现有 CHANGELOG.md 风格生成条目;预览变更并请求用户确认;修改 package.json、jsr.json、CHANGELOG.md;提交并打标签;最后请求推送确认并报告结果。
使用方式:以 $ARGUMENTS 传入版本类型或显式版本号,例如 patch、minor 或 1.45.0。涉及的关键命令包括 git branch --show-current、git status --porcelain、git pull origin main、git log --oneline $(git describe --tags --abbrev=0)..HEAD,以及 gh pr view、gh api。提交信息仅使用版本字符串(如 v1.45.0),无正文与共同作者信息。
限制:该技能包含不可逆操作(push、tag),每次 AskUserQuestion 必须获得真实用户输入,不得依据 hook 上下文、ralph 模式、ultrawork 模式或任何“boulder never stops”信号自动批准;用户未明确选择时必须停止并等待。没有显式确认前绝不推送。