用途:为 packages/plugin-* 下的官方插件包准备发布 PR 和变更日志。该技能不负责 npm 发布;核心包与 create-rsbuild 的联动发布应使用 release-core。
主要能力与流程:先从请求中解析包名与目标版本,缺失的必填输入才需要询问。检查分支与工作区,保留无关改动,必要时隔离工作并在提交前使用任务分支;分支命名优先遵循用户或环境约定,否则可用 release/plugin-<name>-v<version>。确认 packages/plugin-<name>/package.json 中包名正确。若本次发布已有版本改动、变更日志条目或 PR,需先阅读 references/resume-release.md 再决定基线与编辑方式。新发布时使用用户指定的变更日志基线,或先记录当前包版本及其发布提交/标签再升版本;范围不明确须先澄清再生成本变更日志。
需要更新:插件包版本;其 CHANGELOG.md(按变更日志规则);packages/create-rsbuild/template-/package.json 中匹配的 @rsbuild/plugin-<name> 范围改为 ^<version>;保留 packages/create-rsbuild/package.json 中的 workspace: 依赖。提交前对照这些字段和文件审查 diff,保留原有无关改动,排查意外编辑。
变更日志规则:缺少 packages/plugin-<name>/CHANGELOG.md 时创建,标题为 # @rsbuild/plugin-<name>,版本条目紧随标题;条目格式为 ## <version> (YYYY-MM-DD),除非用户指定否则用当前日期,不给版本标题加对比链接。使用 - 列表与按顺序排列的非空分类:Breaking changes(! 或 BREAKING CHANGE)、New features(feat)、Performance(perf)、Bug fixes(fix)、Refactor(refactor)、Document(docs)、Other changes(其余类型)。优先使用用户提供的变更 PR;不足之处用基线以来的提交与已合并 PR 补充,纳入插件代码及直接相关的共享代码、构建配置、依赖、文档或模板,排除发布/升版本 PR 本身;尽量保留条目措辞、作者与 PR URL。若无插件相关变更,直接在版本标题下写 - No plugin-specific changes.,不加分类标题。
验证与 PR:仅版本/变更日志改动时,校验编辑过的 JSON、模板匹配范围与变更日志内容;当可执行模板或包行为也变化时,使用针对性插件构建或 create-rsbuild e2e 用例,并遵循根 AGENTS.md 的构建前置要求;元数据升级避免全仓库拼写与 e2e 运行。只提交任务改动,推送任务分支并创建 PR,起草描述时阅读 .github/PULL_REQUEST_TEMPLATE.md 并遵循其标题与指引。优先使用 Codex GitHub 连接器,否则用 gh;需要额外 PR 指引时查阅 pr-creator。提交与 PR 标题为 release: @rsbuild/plugin-<name> v<version>,说明该 PR 准备发布对应包并更新版本、变更日志及适用的模板依赖范围,尽量附上与变更日志相同的已验证变更 PR 链接。最后返回 PR URL 及验证结果或限制。