什么是auto,CLI tools to help facilitate semantic versioning based on GitHub PR labels



Generate releases based on semantic version labels on pull requests

CircleCICodecovnpmAll ContributorsnpmAuto Releasecode style: prettier

Automated releases powered by pull request labels. Streamline your release workflow and publish constantly! autois meant to be run in a continuous integration (CI) environment, but all the commands work locally as well.

Release Features:

  • Calculate semantic version bumps from PRs
  • Skip a release with the skip-releaselabel
  • Publish canary releases from PRs or locally
  • Generate changelogs with fancy headers, authors, and monorepo package association
  • Use labels to create new changelog sections
  • Generate a GitHub release

Pull Request Interaction Features:

  • Get the labels for a PR
  • Set the status of a PR
  • Check that a pull request has a SemVer label
  • Comment on a PR with markdown
  • Update the PR body with contextual build metadata

Visit the docsfor more information.


Auto has an extensive plugin system and wide variety of official plugins. Make a PR to add yours!

  • chrome- Publish code to Chrome Web Store
  • conventional-commits- Parse conventional commit messages for version bumps
  • jira- Include Jira story links in the changelog
  • git-tag- Manage your projects version through just a git tag
  • npm- Publish code to npm (DEFAULT)
  • omit-commits- Ignore commits base on name, email, subject, labels, and username
  • omit-release-notes- Ignore release notes in PRs made by certain accounts
  • released- Add a releasedlabel to published PRs, comment with the version it's included in and comment on the issues the PR closes
  • slack- Post release notes to slack
  • twitter- Post release notes to twitter
  • upload-assets- Add extra assets to the release

Start Developing

To get set up, fork and clone the project then run the following command:



yarn clean


yarn lint


yarn test


yarn build

In watch mode:

yarn build:watch

Run the docs

To deploy the docs you will need to add the documentationlabel to your pull request.

yarn docs:watch

Adding a contributor

yarn contributors:add

Create a new plugin

Get started developing a new plugin in the monorepo in seconds.

The two arguments are:

  1. A spaced name
  2. A description
yarn create:plugin "My Plugin" "Do something really cool"


Feel free to make an issueor open a pull request!

Make sure to read our code of conduct.

🚀</g-emoji> projects using auto<g-emoji class="g-emoji" alias="rocket" fallback-src="">🚀</g-emoji>"><g-emoji class="g-emoji" alias="rocket" fallback-src="">🚀</g-emoji> Projects Using auto<g-emoji class="g-emoji" alias="rocket" fallback-src="">🚀</g-emoji>

<g-emoji class="g-emoji" alias="star" fallback-src="">⭐️</g-emoji> Storybookjs design-system- Storybook's official design system

<g-emoji class="g-emoji" alias="star" fallback-src="">⭐️</g-emoji> space-kit- Home base for Apollo's design system

<g-emoji class="g-emoji" alias="star" fallback-src="">⭐️</g-emoji> react-glider- A react wrapper for glider.js

<g-emoji class="g-emoji" alias="star" fallback-src="">⭐️</g-emoji> Ignite- Modern markdown documentation generator

<g-emoji class="g-emoji" alias="star" fallback-src="">⭐️</g-emoji> reaction- Artsy’s React Components

<g-emoji class="g-emoji" alias="star" fallback-src="">⭐️</g-emoji> emission- Artsy’s React Native Components

<g-emoji class="g-emoji" alias="star" fallback-src="">⭐️</g-emoji> webpack-inject-plugin- A webpack plugin to dynamically inject code into the bundle.

<g-emoji class="g-emoji" alias="star" fallback-src="">⭐️</g-emoji> html-webpack-insert-text-plugin- Insert text into the head or body of your HTML

💅</g-emoji> autobadge <g-emoji class="g-emoji" alias="nail_care" fallback-src="">💅</g-emoji>"><g-emoji class="g-emoji" alias="nail_care" fallback-src="">💅</g-emoji> autoBadge <g-emoji class="g-emoji" alias="nail_care" fallback-src="">💅</g-emoji>

Does your project use auto? Then use our custom badge!

Auto Release

Auto Release

Auto Release

Auto Release

🎨</g-emoji> prior art <g-emoji class="g-emoji" alias="art" fallback-src="">🎨</g-emoji>"><g-emoji class="g-emoji" alias="art" fallback-src="">🎨</g-emoji> Prior Art <g-emoji class="g-emoji" alias="art" fallback-src="">🎨</g-emoji>

autois inspired by some excellent tech that came before it.

  • github-semantic-version- Automated semantic version releases powered by Github Issues.
  • lerna-changelog- <g-emoji class="g-emoji" alias="book" fallback-src="">📖</g-emoji> PR-based changelog generator with monorepo support


Thanks goes to these wonderful people (emoji key):

| Adam DierkensAdam Dierkens<g-emoji class="g-emoji" alias="computer" fallback-src="">💻</g-emoji><g-emoji class="g-emoji" alias="book" fallback-src="">📖</g-emoji><g-emoji class="g-emoji" alias="thinking" fallback-src="">🤔</g-emoji> <g-emoji class="g-emoji" alias="warning" fallback-src="">⚠️</g-emoji>| Andrew LisowskiAndrew Lisowski<g-emoji class="g-emoji" alias="computer" fallback-src="">💻</g-emoji><g-emoji class="g-emoji" alias="book" fallback-src="">📖</g-emoji><g-emoji class="g-emoji" alias="thinking" fallback-src="">🤔</g-emoji> <g-emoji class="g-emoji" alias="metro" fallback-src="">🚇</g-emoji> <g-emoji class="g-emoji" alias="warning" fallback-src="">⚠️</g-emoji>| DavidDavid<g-emoji class="g-emoji" alias="metro" fallback-src="">🚇</g-emoji> | OrtaOrta<g-emoji class="g-emoji" alias="computer" fallback-src="">💻</g-emoji>| Justin BennettJustin Bennett<g-emoji class="g-emoji" alias="bug" fallback-src="">🐛</g-emoji><g-emoji class="g-emoji" alias="computer" fallback-src="">💻</g-emoji>| Alec LarsonAlec Larson<g-emoji class="g-emoji" alias="computer" fallback-src="">💻</g-emoji>| Tyler KrupickaTyler Krupicka<g-emoji class="g-emoji" alias="computer" fallback-src="">💻</g-emoji>| | Zachary SherwinZachary Sherwin<g-emoji class="g-emoji" alias="computer" fallback-src="">💻</g-emoji><g-emoji class="g-emoji" alias="book" fallback-src="">📖</g-emoji><g-emoji class="g-emoji" alias="warning" fallback-src="">⚠️</g-emoji>| bnighbnigh<g-emoji class="g-emoji" alias="computer" fallback-src="">💻</g-emoji>| su7edjasu7edja<g-emoji class="g-emoji" alias="computer" fallback-src="">💻</g-emoji>| Yogesh KhandlewalYogesh Khandlewal<g-emoji class="g-emoji" alias="computer" fallback-src="">💻</g-emoji>|

This project follows the all-contributorsspecification. Contributions of any kind welcome!

Adding a Contributor

To add a contributor run yarn contributors:add, choose "Add new contributor or edit contribution type" and follow the prompts.


FOSSA Status


扫码加入 JavaScript 社区



欢迎加入 JavaScript 社区