release
Installation
SKILL.md
release 发版
本技能做两件事:为项目接入(或修正为)统一的发版标准;按标准为项目执行发版。适用 npm 生态项目(单包或 monorepo)和 Go 项目(发布二进制的应用,或供 go get 的模块)。项目之间的差异只记录在项目自己的配置与脚本里,本技能不记录任何具体项目。
核心原则
发出去的版本收不回。 npm 上撤销的版本号不能复用;Go 模块版本一旦被模块代理或校验和数据库记录,tag 指向的提交就不能再改;开启 immutable releases 的 GitHub tag 同样不能重用。出错只能发新版本。因此:
- 能在发布前做的检查全部在发布前做完;真正对外发布放在最后。
- 发布可安全重跑:已经发布的版本自动跳过,失败后修复原因直接重跑,不回滚。
- 发布成功与否以发布物查询为准,不以命令输出为准:npm 用
npm view,Go 模块用go list -m,Go 应用用gh release view。 - 发版脚本不交互:所有输入来自参数,人和 Agent 用同一条命令。
统一工具定义
交互式提问:大部分 Agent 都内置的一种工具, 由 Agent 向用户提出问题并提供选项和自定义输入的一种工具, 它在不同的 Agent 中的名称不同, 可能叫AskUserQuestion或AskQuestion等。