关于 skills-release
Skills Release 是供仓库管理员维护 Kitaru skills 插件发布流程的技能。它规定从 develop 到 main 的带版本、仅快进发布步骤,并涵盖校验、打标签、发布说明和结果验证。
主要功能
- 01仅快进的分支晋升
- 02同步三个插件版本字段
- 03使用 jq 校验 JSON
- 04创建发布标签并发布说明
- 05验证发布后的分支与页面
适用场景
- 01发布已审阅的 develop 快照
- 02发布前检查插件版本字段
- 03处理发布推送或标签错误
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ zenml-io/ kitaru-skills --skill skills-release安装后在 Claude Code 中输入/skills-release确认已加载。
详细介绍
Skills 发布
概述
main 是分发分支:/plugin marketplace add zenml-io/kitaru-skills
会立即安装 main 当前包含的内容。develop 是工作基线。发布时,会将
main 快进到 develop 当前的提交,并标记一个插件版本,因此在发布时,
main 始终是 develop 的精确快照。
main-release-only 规则集会阻止所有推送和 PR 合并到 main,只有仓库管理员
例外。因此,发布流程是由管理员执行这份检查清单——绝不能通过 PR 合并到
main,也绝不能强制推送。
版本号是此仓库自己的插件版本号。不要复用 Kitaru 产品版本号;应在发布说明 中注明已测试的 Kitaru 兼容性。
前提条件
如果以下任一项未满足,请先停止并解决问题,再进行发布:
- 当前位于
develop,且工作区干净。 - 已运行
git fetch origin;本地develop与origin/develop同步。 - 可以快进:
git merge-base --is-ancestor origin/main origin/develop的退出码为 0。 非零退出码表示main包含develop所没有的提交——请调查这些提交的来源; 绝不能强制推送覆盖它们。
步骤
-
检查即将发布的内容:
git log --oneline origin/main..origin/develop。 根据这些提交起草发布说明(有哪些变更、为什么对安装者有影响),并在已知时 加上一行“已针对 Kitaru X.Y 测试”。 -
与用户确认下一个版本:新增或变更技能时使用次版本号,修复和仅涉及文档的 变更使用补丁版本号。
-
将以下三个版本字段都更新为相同的值:
.claude-plugin/plugin.json→.version.claude-plugin/marketplace.json→.metadata.version.claude-plugin/marketplace.json→.plugins[0].version
-
验证:
jq . .claude-plugin/plugin.json和jq . .claude-plugin/marketplace.json均能解析,且三个字段的值一致:jq -r .version .claude-plugin/plugin.json jq -r '.metadata.version, .plugins[0].version' .claude-plugin/marketplace.json -
在
develop上仅提交这两个 JSON 文件,提交说明为Release vX.Y.Z,然后推送develop。 -
为发布提交打标签:
git tag vX.Y.Z && git push origin vX.Y.Z。 -
快进
main:git push origin develop:main。绝不使用--force—— 如果推送被拒绝,说明无法快进;请返回前提条件部分。 -
通过文件发布起草好的说明,绝不要将说明直接内联到命令中——提交说明中 经常包含反引号,在
--notes "..."参数中,shell 会将其作为命令替换来执行。 使用文件写入工具将说明写入临时文件(或使用带引号的 here-doc,cat > notes.md <<'EOF'),然后:gh release create vX.Y.Z --title "vX.Y.Z" --notes-file notes.md -
验证:
git ls-remote origin refs/heads/main refs/heads/develop显示 相同的 SHA,且 GitHub Release 页面已创建。
恢复处理
- 推送到
main被拒绝:确认具有管理员(绕过限制)权限,并重新运行前提条件 中的祖先检查。 - 错误版本已提交但尚未打标签:修正 JSON 文件,并在打标签前修订发布提交。
- 错误内容的标签已推送:如果 GitHub Release 尚未发布,请删除并重新创建标签; 否则发布后续补丁版本,不要改写历史记录。
维护
此技能的规范副本位于 .claude/skills/skills-release/SKILL.md。
.agents/skills/skills-release 是指向它的符号链接——只编辑规范文件。