tagpr documentation
tagpr is a custom GitHub Action that prepares release contents in a pull request, then uses the resulting version tag as the starting point for the project-specific release flow.
It creates a release pull request that collects unreleased changes, then automatically tags the merge commit when that pull request is merged. By default, it also creates a GitHub Release and generates a changelog.
Automating the preparation before tagging keeps release contents visible and reviewable. Automating the required release-time changes also reduces manual work, dependence on individual maintainers, and mistakes.

Start here
- Getting started explains the complete path from adding the workflow to merging the first release pull request.
- Adopting tagpr in an existing project explains how to introduce tagpr to an existing project.
- Release flow and design explains the lifecycle of the release pull request and the reasoning behind it.
- Versioning and label rules explains SemVer proposals, custom labels, version-file precedence, and CalVer behavior.
- Changelog and GitHub Releases
explains how tagpr
uses GitHub’s generated release notes and
.github/release.yml. - Release preparation commands explains how to automate project-specific file changes before release.
- Tagging and release explains how the tag starts build, packaging, publishing, deployment, and other project-specific release steps.
- Coordinating Immutable Releases explains how to attach assets before publication by coordinating tagpr with a later release workflow.
- Configuration index groups the available settings by purpose and links to the complete reference.
- Release pull request templates documents title and body customization.
Common goals
| Goal | Documentation |
|---|---|
| Install tagpr | Getting started |
| Adopt tagpr in an existing project | Adoption guide |
| Release without a version file | Tag-only releases |
| Select a major or minor version | Versioning and label rules |
| Use Calendar Versioning | Configuration index |
| Release projects in a monorepo | Configuration index |
| Customize changelog categories | Changelog and GitHub Releases |
| Customize the release pull request | Release pull request templates |
| Run project-specific release changes | Release preparation commands |
| Run the release in the same workflow | Tagging and release |
| Trigger a separate release workflow | Tagging and release |
| Publish assets with immutable releases | Coordinating Immutable Releases |
| Reuse a tagpr draft with GoReleaser | Coordinating Immutable Releases |
| Diagnose a setup problem | README troubleshooting |
Reference
The complete configuration, GitHub Action inputs, outputs, environment variables, and GitHub Enterprise instructions currently remain in the README . They will stay there until equivalent standalone reference pages are complete, so no documentation is lost during the transition to a documentation site.