This skill should be used when the user asks to "set up release please", "configure automated releases", "manage version numbers", "add changelog automation", or mentions release-please, semantic versioning, or monorepo versioning.
79
76%
Does it follow best practices?
Impact
92%
1.39xAverage score across 3 eval scenarios
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./plugins/toolkit/skills/release-please-development/SKILL.mdConfigure 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 |
dwmkerr/claude-toolkit
1d4fac9
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.