configure-plugin/skills/release-please-standards/SKILL.md
release-please standards and configuration reference. Use when configuring release workflows, checking automation compliance, or working with version bumps.
npx skillsauth add laurigates/claude-plugins release-please-standardsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
| Use this skill when... | Use the alternative instead when... |
|---|---|
| You need the canonical release-please workflow, manifest, and config-file shape | You want to audit or set up release-please end-to-end as an interactive workflow — use configure-release-please |
| You are checking an existing release-please setup against documented conventions | You want runtime detection of repo type and existing config before changes — use configure-release-please |
| Another skill needs to cite the standard release-please configuration | You are configuring monorepo component tags, per-package extra-files, or shared→component tag migration — use git-plugin:release-please-configuration |
Standard release-please configuration for automated semantic versioning and changelog generation.
File: .github/workflows/release-please.yml
name: Release Please
on:
push:
branches:
- main
permissions:
contents: write
pull-requests: write
jobs:
release-please:
runs-on: ubuntu-latest
steps:
- uses: googleapis/release-please-action@v5
with:
token: ${{ secrets.MY_RELEASE_PLEASE_TOKEN }}
File: release-please-config.json
{
"packages": {
".": {
"release-type": "node",
"changelog-sections": [
{"type": "feat", "section": "Features"},
{"type": "fix", "section": "Bug Fixes"},
{"type": "perf", "section": "Performance"},
{"type": "deps", "section": "Dependencies"},
{"type": "docs", "section": "Documentation", "hidden": true},
{"type": "chore", "section": "Miscellaneous", "hidden": true}
]
}
},
"plugins": ["node-workspace"]
}
File: .release-please-manifest.json
{
".": "0.0.0"
}
Note: Version 0.0.0 is a placeholder - release-please updates this automatically.
nodenode-workspacepackage.json version fieldpythonpyproject.toml version field, __version__ in codehelmChart.yaml version fieldMonorepos need component on every package and include-component-in-tag: true
at the root, plus per-package extra-files and (optionally) the
linked-versions plugin:
{
"packages": {
"packages/frontend": {"release-type": "node", "component": "frontend"},
"packages/backend": {"release-type": "node", "component": "backend"}
},
"plugins": ["node-workspace"]
}
For the full monorepo strategy — component tagging, duplicate-tag / multiple-paths
fixes, per-package extra-files path rules, linked versions, adding a package,
and shared→component tag migration — see git-plugin:release-please-configuration.
Workflow file: .github/workflows/release-please.yml
googleapis/release-please-action@v5MY_RELEASE_PLEASE_TOKEN secretmainConfig file: release-please-config.json
Manifest file: .release-please-manifest.json
The workflow uses MY_RELEASE_PLEASE_TOKEN secret (not GITHUB_TOKEN) because:
| Status | Condition | |--------|-----------| | PASS | All three files present with valid configuration | | WARN | Files present but using deprecated action version (older than v5) | | FAIL | Missing required files or invalid configuration |
Workflow validation:
v5 (warn if older)push to mainConfig validation:
Manifest validation:
IMPORTANT: Release-please manages these files automatically:
CHANGELOG.md - Never edit manuallypackage.json, pyproject.toml, Chart.yaml.release-please-manifest.json - Only edit for initial setupSee release-please-protection skill for enforcement.
Release-please requires conventional commit messages:
| Prefix | Release Type | Example |
|--------|--------------|---------|
| feat: | Minor | feat: add user authentication |
| fix: | Patch | fix: correct login timeout |
| feat!: | Major | feat!: redesign API |
| BREAKING CHANGE: | Major | In commit body |
MY_RELEASE_PLEASE_TOKEN to repository secretstools
Scaffold a new ComfyUI custom-node repo (pyproject, CI, release-please, vitest+pytest, JS extension skeleton) in the picker/gesture vein. Use when bootstrapping or init-ing a comfyui node pack.
tools
Orchestrate a ComfyUI node pack from idea to registry: scaffold, create + seed the repo, open the gitops adoption PR. Use when releasing or spinning up a new comfyui node pack.
testing
macOS EndpointSecurity/EDR high CPU & battery drain. Use when Kandji ESF / XProtect pegs a core; trace the exec storm via powermetrics + eslogger.
development
odiff pixel-by-pixel image diffing. Use when comparing screenshots, detecting visual regressions, diffing before/after PNGs, asserting golden images.