Generic CLI tool that automates version bumping, git tagging, changelogs, GitHub/GitLab releases and npm publishing.
Songmu/tagpr
A GitHub Action that keeps a release pull request updated with version bumps and changelog, then tags and publishes a GitHub Release when merged.
- Stars
- 336
- Forks
- 46
- Open issues
- 19
- Last commit
- yesterday
What is it?
tagpr automates release preparation for projects hosted on GitHub. It continuously maintains a release pull request on the release branch, proposing the next version and updating the version file and CHANGELOG.md. The pull request follows new commits on the release branch, so it stays current until the maintainer decides to merge it.
When the release pull request is merged, tagpr tags the new head of the release branch and can create a GitHub Release, either published or as a draft. The tag can then trigger the project's own build, packaging, or deployment steps. Version bumps are chosen by pull request labels, with SemVer as the default, and CalVer, tag-only releases, monorepo tag prefixes, and fixed major version maintenance branches are supported.
The tool runs as a GitHub Actions workflow and is configured through a .tagpr file in Git config format or TAGPR_* environment variables.
Key features
- 01Maintains a release pull request that updates the version and changelog automatically.
- 02Rebuilds the release PR as new commits land on the release branch.
- 03Tags the merged release commit and can create a GitHub Release.
- 04Chooses SemVer bumps from PR labels, with CalVer and tag-only options.
- 05Supports monorepo tag prefixes and fixed major version maintenance branches.
Use cases
- Automating version bumps and changelogs for a Go or other GitHub-hosted project.
- Triggering build and publish workflows from a tag created at release time.
- Running releases for independently versioned packages in a monorepo.
Quick start
- 1
Add the tagpr workflow file to a repository that releases from main
- 2
In repository settings, enable Allow GitHub Actions to create and approve pull requests
- 3
Commit the workflow and push it to main
Things to know
- It runs only inside GitHub Actions and needs write permissions for contents and pull requests.
- Tags created with GITHUB_TOKEN do not trigger separate tag-based workflows unless you use a GitHub App token.
In collections
Topics
FAQ
- What is tagpr?
- A GitHub Action that keeps a release pull request updated with version bumps and changelog, then tags and publishes a GitHub Release when merged. tagpr automates release preparation for projects hosted on GitHub. It continuously maintains a release pull request on the release branch, proposing the next version and updating the version file and CHANGELOG.md. The pull request follows new commits on the release branch, so it stays current until the maintainer decides to merge it.
- Is tagpr free to use? What license does it have?
- tagpr is open source under the MIT license. Check the license terms before using it in commercial products.
- Is tagpr still maintained?
- Actively maintained. The last commit to tagpr was on Nov 6, 2026.
- What can I use tagpr for?
- Automating version bumps and changelogs for a Go or other GitHub-hosted project. Triggering build and publish workflows from a tag created at release time. Running releases for independently versioned packages in a monorepo.
- How do I install tagpr?
- Add the tagpr workflow file to a repository that releases from main In repository settings, enable Allow GitHub Actions to create and approve pull requests Commit the workflow and push it to main
- Where can I get tagpr?
- The source code and installation instructions are on GitHub: https://github.com/Songmu/tagpr
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Automates semantic versioning, changelog generation, and package publishing from commit messages in CI.
A release automation tool for Go projects that builds, packages, and publishes binaries to GitHub, package managers, and container registries.
A GitHub Action that creates GitHub Releases and uploads build assets from Linux, Windows, and macOS runners.
A CLI tool for managing package versioning, changelogs, and publishing across monorepos, driven by changeset files contributors add with their changes.
A Rust CLI that generates changelog files from Git history using Conventional Commits and customizable regex parsers and templates.