gh-releaselisted
Install: claude install-skill fadymondy/gh-pms
# gh-release
Ship a new release in one shot. Replaces the manual sequence of "edit plugin.json → write CHANGELOG entry → update README → tag → push".
## When to use
- After a milestone closes and several PRs have merged since the last release
- User says "release v0.5", "cut a release", "ship the plugin", "bump version"
- As the **last** step before pushing — typically run from `main` after merging the final PR
## Inputs
```
gh-release [--bump patch|minor|major]
[--dry]
[--no-tag]
[--no-release]
[--commit]
[--since <ref-or-date>]
```
| Flag | Default | Effect |
|---|---|---|
| `--bump` | `minor` | Semver step. `patch` for bug-only, `major` for breaking changes. |
| `--dry` | off | Print what would change without touching anything. |
| `--no-tag` | tags by default | Skip `git tag` (you'll tag manually). |
| `--no-release` | creates GH release after push | Skip `gh release create` (only writes CHANGELOG + README). |
| `--commit` | off (changes left staged for review) | Auto-commit the version bump as `chore(release): vX.Y.Z`. |
| `--since` | last git tag | Override the cutoff. Required for the very first run if the repo has no tags yet. Accepts a ref, tag, or `YYYY-MM-DD`. |
## What it does
### Step 1 — Compute the new version
Reads `plugins/gh-pms/.claude-plugin/plugin.json`, applies the requested semver bump, refuses if the resulting version already appears in `CHANGELOG.md` or as a git tag (idempotency).
### St