SuperAPI AI 工具集

creating-a-changeset

部署与运维

查看项目

更新于 10-16 05:46

技能介绍

用途:在实现完成、提交可发布改动之前,为使用 Changesets 的仓库创建并校验 Changeset 文件。

主要能力:先读取仓库的发布规则(AGENTS.md、CONTEXT.md、贡献指南、发布流程),检查 git status --short、git diff HEAD --stat 及相关改动,定位 .changeset/config.json、工作区与包清单、锁文件和本地 Changesets CLI;确认仓库确实使用 Changesets,否则报告阻塞而不创建文件。随后按包管理器(由 package.json 与锁文件确定)进行校验,识别可发布包名与私有包规则。

分类与版本:将用户可见行为、公共 API、配置、CLI、生成输出、性能、面向用户文档视为可发布改动;内部重构、测试、CI/CD、开发工具视为内部改动。按影响选择语义化版本:patch 用于修复、性能与文档;minor 用于向后兼容的功能、选项或命令;major 用于需迁移的破坏性 API、配置、CLI 或运行时变更;多重影响取最高级别。

写法:在 .changeset/ 下手工创建唯一 kebab-case 的 <slug>.md,frontmatter 每个受影响包一行,格式为 "package-name": <patch|minor|major>,后接祈使句式的面向用户一行摘要,说明可观察结果;配置或 API 变更可附示例;major 变更以 BREAKING: 开头并给出旧用法、新用法与迁移步骤;已知 issue 号时可写 Fixes #123 或 Closes #123。

校验:运行仓库包管理器对应的 changeset status(如 bun changeset status、pnpm exec changeset status、npm exec -- changeset status、yarn changeset status),执行 git diff --check,复查文件描述的是用户影响而非实现细节,并用 git status --short 确认只新增了目标文件。

限制:不要把发布自动化写入 Changeset,不要运行 changeset version 或 changeset publish,应遵循仓库文档化的发布流程;若包归属或用户影响不明确,先请求澄清;若无值得发布的改动,停止并说明无需 Changeset。