关于 changeset-validation
changeset-validation 是用于检查 changeset 是否准确反映包变更并符合仓库规则的技能,可供本地 Codex 审查和 GitHub Actions 共用验证逻辑。它通过共享提示词生成结构化判定,并规定分支中已有 changeset 时应更新而非新增。
主要功能
- 01生成 changeset 验证提示词
- 02检查变更与版本升级类型
- 03输出 JSON 判定结果
- 04供本地与 CI 流程使用
- 05规范已有 changeset 的修改
适用场景
- 01提交前核对 changeset
- 02在 CI 中生成结构化验证结果
- 03按主变更重写现有 changeset
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ openai/ openai-agents-js --skill changeset-validation安装后在 Claude Code 中输入/changeset-validation确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
agents/openai.yamlreferences/validation-prompt.mdscripts/changeset-assign-milestone.mjschangeset-prompt.mjschangeset-prompt.test.mjschangeset-validation-result.mjsrun-fixtures.sh详细介绍
Changeset 验证
概述
此技能用于验证 changeset 是否正确反映了软件包变更,并遵循仓库规则。它依赖 references/validation-prompt.md 中的共享提示词,确保本地 Codex 审查和 GitHub Actions 使用相同的逻辑。
如果变更差异中明确标注为实验性或仅供预览的功能新增,且没有改变现有行为,则可以仍使用补丁版本升级。
只有在首次主版本发布后才允许升级主版本;在此之前,功能级变更不得使用主版本升级。
快速开始
本地(由 Codex 驱动):
- 运行:
pnpm changeset:validate-prompt - 根据
references/validation-prompt.md中的规则处理生成的提示词。 - 返回包含 ok/errors/warnings/required_bump 的 JSON 判定结果(字符串仅使用英文)。
CI(Codex Action):
- 运行:
pnpm changeset:validate-prompt -- --ci --output .github/codex/prompts/changeset-validation.generated.md - 使用
openai/codex-action,结合生成的提示词和 JSON schema,获取结构化判定结果。
工作流
- 通过
pnpm changeset:validate-prompt生成提示词上下文。 - 根据
references/validation-prompt.md中的规则判断是否正确。 - 给出明确的判定结果和所需的版本升级类型(patch/minor/major/none)。
- 如果需要修改 changeset,请更新它并重新运行验证。
分支级 changeset 规则(不得跳过)
- 如果当前分支差异中已存在任何
.changeset/*.md文件,则将其视为当前有效的 changeset。不要添加新的 changeset 文件。 - 而应更新现有 changeset 文件,重写其摘要,使其反映相对于
main的主要变更。不要尝试涵盖每次增量更新。 - 摘要保持一行;需要时替换原有行,而不是追加。如果必须包含多个要点,请将其压缩为一行。
共享事实来源
- 将提示词文件作为验证规则的唯一事实来源。
- 保持脚本轻量:它只应收集上下文并输出提示词。
资源
references/validation-prompt.md
评论
支持 Markdown