dnogu/Semantic Create Release
Automated semantic versioning and release creation based on PR labels
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Activelast commit Apr 9, 2026
- License
- MIT
Pinned Snippet
uses: dnogu/semantic-release-action@b759816e1406fb46a8a7190cf0cd05e24fc84427 # v1.6.0tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| github-token | GitHub token for creating releases and tags | yes | — |
| major-label | Label name for major version bumps | no | major |
| minor-label | Label name for minor version bumps | no | minor |
| patch-label | Label name for patch version bumps | no | patch |
| prerelease-label | Label name for prerelease versions | no | prerelease |
| prerelease-suffix | Suffix to use for prerelease versions (e.g., beta, alpha, rc) | no | beta |
| prerelease-number | Starting number for prerelease versions | no | 1 |
| node-version | Node.js version to use for building | no | 24 |
| package-manager | Package manager to use (npm, yarn, pnpm) | no | npm |
| working-directory | Working directory for the action | no | . |
| install-command | Command to install dependencies | no | "" |
| test-command | Command to run tests | no | "" |
| build-command | Command to build the project | no | "" |
| create-major-release | Whether to create major version releases (v1.2.3, v2.1.0, etc.) | no | true |
| base_release | Whether to update base version tags (v1, v2, etc.) to the latest stable release without creating a separate major-tag release | no | true |
| copy-assets | Whether to copy assets to base version releases | no | true |
| auto-generate-notes | Whether to auto-generate release notes from commits | no | true |
| update-package-json | Legacy package.json toggle. When package-json-mode is not set, true maps to update and false maps to ignore | no | true |
| package-json-mode | How to handle package.json: update, verify, or ignore. Leave empty to fall back to update-package-json | no | — |
| package-json-path | Path to package.json file | no | package.json |
| git-user-name | Git user name for commits | no | github-actions[bot] |
| git-user-email | Git user email for commits | no | github-actions[bot]@users.noreply.github.com |
| commit-changes | Whether to commit and push branch changes before tagging, or back to a PR branch in prepare mode | no | true |
| trigger-mode | How the action was triggered (pr-open, pr-merge, manual, workflow-call, push-main) | no | auto-detect |
| execution-mode | Whether to validate a planned version, prepare a PR branch, perform the full release flow, or create only the Git tag and GitHub release (auto-detect defaults to prepare for same-repo PRs, validate for fork PRs, and release after merge) | no | auto-detect |
Outputs
| name | description |
|---|---|
| released | Whether a release was created (true/false) |
| version | The new version number (e.g., v1.2.3) |
| previous-version | The previous version number |
| release-type | Type of release (major/minor/patch/none) |
| is-prerelease | Whether this is a prerelease (true/false) |
| release-url | URL of the created release |
| release-id | ID of the created release |
| major-version | Major version tag (e.g., v1) |
| major-release-url | URL of the release currently targeted by the major version tag |
| tag-name | Git tag name that was created |