用途
Version Bumper 用于自动管理 Claude Code 插件的语义化版本更新,确保 plugin.json、marketplace 目录以及 git 标签之间的版本一致性,并针对 claude-code-plugins 仓库的工作流进行了优化。
触发关键词
当用户提到以下内容时会被激活:
- “bump version” 或 “update version”
- “release” 或 “new release”
- “major version”“minor version”“patch version”
- “increment version”
- “version update”
语义化版本规则
格式为 MAJOR.MINOR.PATCH(例如 2.1.3):
- MAJOR(2.x.x):破坏性变更、不兼容的 API 变更
- MINOR(x.1.x):新增功能、向后兼容
- PATCH(x.x.3):缺陷修复、向后兼容
示例:
- 1.0.0 → 1.0.1(缺陷修复)
- 1.0.0 → 1.1.0(新增功能)
- 1.0.0 → 2.0.0(破坏性变更)
版本递增流程
激活后执行以下步骤:
- 识别当前版本:读取 plugin.json 中的 version 字段。
- 确定递增类型:根据用户请求(major/minor/patch)、根据变更建议,或询问用户。
- 计算新版本:例如补丁递增 1.2.3 → 1.2.4。
- 更新文件:更新 .claude-plugin/plugin.json、.claude-plugin/marketplace.extended.json,并同步到 marketplace.json。
- 校验一致性:确认所有文件版本相同、无其他插件使用该版本、符合语义化版本格式。
- 创建 Git 标签(可选):git tag -a "v$new_version" -m "Release v$new_version"。
更新位置
- 插件 JSON:.claude-plugin/plugin.json 中的 version 字段。
- Marketplace Extended:.claude-plugin/marketplace.extended.json 中对应插件的 version 字段。
- 同步 CLI 目录:运行 npm run sync-marketplace 重新生成 marketplace.json。
递增类型
补丁递增(缺陷修复)
适用场景:缺陷修复、文档更新、小幅改进、无新功能。示例:1.2.3 → 1.2.4。
次版本递增(新功能)
适用场景:新增功能、新增命令/代理/技能、向后兼容的变更、功能增强。示例:1.2.3 → 1.3.0。
主版本递增(破坏性变更)
适用场景:破坏性 API 变更、不兼容更新、重大重构、移除功能。示例:1.2.3 → 2.0.0。
校验检查
递增前:
- 当前版本是有效的语义化版本
- 新版本高于当前版本
- 没有其他插件使用新版本
- 所有文件当前版本一致
- Git 工作目录干净(可选)
递增后:
- plugin.json 已更新
- marketplace.extended.json 已更新
- marketplace.json 已同步
- 所有版本一致
- CHANGELOG.md 已更新(如存在)
变更日志管理
如果存在 CHANGELOG.md,会更新其内容,例如:
# Changelog
## [1.2.4] - 2025-10-16
### Fixed
- Bug fix description
- Another fix
## [1.2.3] - 2025-10-15
...
Git 集成
方式一:版本提交
git add .claude-plugin/plugin.json
git add .claude-plugin/marketplace.extended.json
git add .claude-plugin/marketplace.json
git add CHANGELOG.md # if exists
git commit -m "chore: Bump plugin-name to v1.2.4"
方式二:版本标签
git tag -a "plugin-name-v1.2.4" -m "Release plugin-name v1.2.4"
# 或用于 monorepo
git tag -a "v1.2.4" -m "Release v1.2.4"
git push origin plugin-name-v1.2.4
多插件更新
针对仓库范围的版本递增:
jq '.metadata.version = "1.0.40"' .claude-plugin/marketplace.extended.json
for plugin in plugins/*/; do
# Update plugin.json
# Update marketplace entry
done
版本一致性检查
会验证插件版本与 marketplace 版本是否匹配:
plugin_v=$(jq -r '.version' plugins/category/plugin-name/.claude-plugin/plugin.json)
market_v=$(jq -r '.plugins[] | select(.name == "plugin-name") | .version' .claude-plugin/marketplace.extended.json)
if [ "$plugin_v" != "$market_v" ]; then
echo "❌ Version mismatch!"
echo "Plugin: $plugin_v"
echo "Marketplace: $market_v"
fi
发布工作流
完整发布流程:
- 确定递增类型:审查自上一版本以来的变更,决定 patch/minor/major。
- 更新版本:递增 plugin.json、更新 marketplace 目录、同步 marketplace.json。
- 更新变更日志:添加发布说明、列出变更、包含日期。
- 提交变更:git add . && git commit -m "chore: Release v1.2.4"。
- 创建标签:git tag -a "v1.2.4" -m "Release v1.2.4"。
- 推送:git push origin main && git push origin v1.2.4。
- 校验:检查 GitHub release 是否创建、验证 marketplace 是否更新、测试插件安装。
输出格式
输出结构化的版本递增报告,包含:
- 插件名、旧版本、新版本、递增类型
- 已完成的更新列表
- 一致性检查结果
- 变更日志条目
- 后续步骤(审查、提交、打标签、推送)
仓库特定功能
针对 claude-code-plugins 仓库:
- 同时处理插件版本和 marketplace 版本
- 更新 marketplace 元数据版本
- 管理 README 中的插件数量
- 同步两个目录文件
- 创建正确的发布标签
示例
用户说:“Bump the security-scanner plugin to patch version”
自动执行:读取当前版本 1.2.3 → 计算补丁递增 1.2.4 → 更新 plugin.json → 更新 marketplace.extended.json → 同步 marketplace.json → 校验一致性 → 报告成功。
用户说:“Release version 2.0.0 of plugin-name”
自动执行:识别主版本(破坏性变更)→ 更新所有版本文件 → 更新 CHANGELOG.md 并添加主版本发布说明 → 创建 git 提交 → 创建 git 标签 v2.0.0 → 提供推送命令。
用户说:“Increment version for new feature”
自动执行:识别为次版本递增 → 计算新版本(1.2.3 → 1.3.0)→ 更新所有文件 → 添加变更日志条目 → 报告完成。
限制
资料未提供关于收费、价格、平台支持范围、性能指标或具体效果保证的信息。