From toolkit
Configures Google's release-please for automated semantic versioning, changelog generation, and GitHub releases in single-package and monorepo repositories.
npx claudepluginhub dwmkerr/claude-toolkit --plugin toolkitThis skill is limited to using the following tools:
Configure automated versioning, changelog generation, and releases using Google's release-please.
Provides standard release-please configurations for GitHub Actions workflows to automate semantic versioning, changelog generation, and releases for Node.js, Python, Helm, and multi-package repos.
Configures release-please for monorepos and single-package repos, handling manifest files, component tagging, changelog sections, and extra-files. Use for automated releases, workflow fixes, or version bump automation.
Configures release-it for automated releases: version bumping, changelog generation, npm publishing, GitHub/GitLab releases, git tagging, plugins, and CI/CD pipelines. Triggers on .release-it configs and CLI usage.
Share bugs, ideas, or general feedback.
Configure automated versioning, changelog generation, and releases using Google's release-please.
Release-please automates:
.github/
├── release-please-config.json # Package configuration
├── release-please-manifest.json # Current version tracking
└── workflows/
└── release.yaml # GitHub Actions workflow
| Pattern | Use Case |
|---|---|
| Single Package | Libraries, CLIs, simple apps with one version |
| Multi-Package | Monorepos, services with independent release cycles |
.github/release-please-config.json:
{
"release-type": "simple",
"packages": {
".": {
"changelog-path": "CHANGELOG.md"
}
}
}
.github/release-please-manifest.json:
{
".": "0.0.1"
}
.github/workflows/release.yaml:
name: Release
on:
push:
branches: [main]
permissions:
contents: write
pull-requests: write
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: googleapis/release-please-action@v4
with:
config-file: .github/release-please-config.json
manifest-file: .github/release-please-manifest.json
| Type | Use Case | Versions |
|---|---|---|
simple | Generic projects | CHANGELOG only |
node | npm packages | package.json |
python | Python packages | setup.py, pyproject.toml |
go | Go modules | go.mod |
helm | Helm charts | Chart.yaml |
Use extra-files to update versions in arbitrary files:
{
"packages": {
".": {
"extra-files": [
{
"type": "json",
"path": "manifest.json",
"jsonpath": "$.version"
}
]
}
}
}
For marketplaces with multiple plugins sharing a single version:
{
"release-type": "simple",
"packages": {
".": {
"changelog-path": "CHANGELOG.md",
"extra-files": [
{
"type": "json",
"path": ".claude-plugin/marketplace.json",
"jsonpath": "$.plugins[0].version"
},
{
"type": "json",
"path": ".claude-plugin/marketplace.json",
"jsonpath": "$.plugins[1].version"
}
]
}
}
}
Add a jsonpath entry for each plugin in the marketplace. When adding new plugins, update both:
.claude-plugin/marketplace.json - add the plugin entry.github/release-please-config.json - add jsonpath for the new plugin's versionRelease-please uses commit prefixes to determine version bumps:
| Prefix | Version Bump | Example |
|---|---|---|
feat: | Minor (0.x.0) | New feature |
fix: | Patch (0.0.x) | Bug fix |
feat!: or BREAKING CHANGE | Major (x.0.0) | Breaking change |
docs:, chore:, etc. | None | No release |