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 等。

参考文件(按需读取,不要一次全读)

Installs
4
First Seen
2 days ago