关于 configure-release-please
此 Agent 技能检查并配置项目中的 release-please,包括工作流、配置文件和版本清单。它依据项目文件判断发布类型,并提供合规检查及自动修复选项。
主要功能
- 01检查 release-please 配置合规性
- 02根据项目文件判断发布类型
- 03验证工作流、令牌和权限
- 04创建或更新发布配置文件
- 05更新项目标准跟踪
适用场景
- 01为新项目配置 release-please
- 02审计现有发布工作流与配置
- 03为 monorepo 添加发布包配置
- 04修复过时操作版本或令牌设置
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill configure-release-please安装后在 Claude Code 中输入/configure-release-please确认已加载。
附带文件REFERENCE.md
详细介绍
/configure:release-please
检查并根据项目标准配置 release-please。
何时使用此技能
| 在以下情况下使用此技能…… | 在以下情况下采用其他方法…… |
|---|---|
| 从头开始为新项目设置 release-please | 手动编辑 CHANGELOG.md 或版本字段——改用常规提交 |
| 审核现有 release-please 配置是否合规 | 创建一次性发布——直接使用 gh release create |
| 将 release-please-action 升级到最新版本 | 调试失败的发布 PR——直接检查 GitHub Actions 日志 |
| 确保工作流使用正确的令牌(MY_RELEASE_PLEASE_TOKEN) | 管理 npm/PyPI 发布——配置单独的发布工作流 |
| 向 monorepo 的 release-please 配置中添加新包 | 编写常规提交消息——使用 /git:commit 技能 |
上下文
- 工作流文件:!
find .github/workflows -maxdepth 1 -name 'release-please*' - 配置文件:!
find . -maxdepth 1 -name \'release-please-config.json\' - 清单文件:!
find . -maxdepth 1 -name \'.release-please-manifest.json\' - 包文件:!
find . -maxdepth 1 \( -name 'package.json' -o -name 'pyproject.toml' -o -name 'Cargo.toml' -o -name 'go.mod' \) - 工作流目录:!
find . -maxdepth 1 -type d -name \'.github/workflows\'
引用的技能:release-please-standards、release-please-protection
参数
从命令参数中解析:
--check-only:报告状态,不提供修复方案--fix:自动应用所有修复
执行
执行此 release-please 配置检查:
步骤 1:获取最新的 action 版本
运行此命令,动态获取当前的 release-please-action 版本:
curl -s https://api.github.com/repos/googleapis/release-please-action/releases/latest | jq -r '.tag_name'
参考资料:
步骤 2:检测项目类型
根据检测到的包文件确定适用的 release-type:
- node:包含
package.json(前端/后端应用的默认类型) - python:包含
pyproject.toml,但不包含package.json - helm:包含 Helm chart 的基础设施项目
- simple:通用项目
步骤 3:分析合规性
工作流文件检查:
- Action 版本:
googleapis/release-please-action@v4 - 令牌:使用
MY_RELEASE_PLEASE_TOKEN密钥(而非 GITHUB_TOKEN) - 触发条件:推送到
main分支 - 权限:
contents: write、pull-requests: write
配置文件检查:
- release-type 与项目相符
- changelog-sections 包含
feat和fix - 使用适当的插件(例如,Node 项目使用
node-workspace)
清单文件检查:
- JSON 结构有效
- 包路径与配置相符
步骤 4:生成合规报告
打印格式化的合规报告,显示文件状态和配置检查结果。如果设置了 --check-only,则在此处停止。
报告格式请参阅 REFERENCE.md。
步骤 5:应用配置(如果设置了 --fix 或用户确认)
- 缺少工作流:根据标准模板创建
- 缺少配置:使用检测到的 release-type 创建
- 缺少清单:使用初始版本
0.0.0创建 - Action 版本过旧:更新到 v4
- 令牌错误:改为使用 MY_RELEASE_PLEASE_TOKEN
标准模板请参阅 REFERENCE.md。
步骤 6:更新标准跟踪记录
更新 .project-standards.yaml:
components:
release-please: "2025.1"
Agentic 优化
| 上下文 | 命令 |
|---|---|
| 快速合规检查 | /configure:release-please --check-only |
| 自动修复所有问题 | /configure:release-please --fix |
| 检查最新的操作版本 | curl -s https://api.github.com/repos/googleapis/release-please-action/releases/latest | jq -r '.tag_name' |
| 验证配置 JSON | jq . release-please-config.json |
| 验证清单 JSON | jq . .release-please-manifest.json |
| 检查工作流是否存在 | find .github/workflows -name 'release-please*' |
重要说明
- 需要在代码库设置中配置
MY_RELEASE_PLEASE_TOKEN密钥 - CHANGELOG.md 由 release-please 管理,请勿手动编辑
- package.json/pyproject.toml 中的版本字段由系统自动管理
- 可配合
conventional-pre-commit钩子验证提交
另请参阅
/configure:pre-commit- 确保配置 conventional commits 钩子/configure:all- 运行所有合规检查release-please-protection技能 - 受保护文件规则
评论
支持 Markdown