auto is a comprehensive command-line interface (CLI) tool meticulously engineered to automate release workflows by leveraging semantic versioning conventions, primarily driven by GitHub Pull Request labels. As of its current stable version 11.3.6, the project maintains an active release cadence, frequently delivering bug fixes and incremental enhancements, as evidenced by its consistent patch and minor updates. A significant differentiator of `auto` lies in its label-driven methodology, which streamlines the release process without necessitating alterations to your codebase or drastic overhauls of existing development workflows. It integrates seamlessly into continuous integration/continuous delivery (CI/CD) pipelines while also supporting local execution. The tool features a modular architecture, extensible through a rich ecosystem of plugins (e.g., `@auto-it/npm`, `@auto-it/slack`), enabling users to adapt its functionality for diverse package managers and platforms. Furthermore, `auto` ships with robust TypeScript types, facilitating more reliable integration and development processes.
npm install autoVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates how to set up `auto` programmatically and check the next semantic version based on GitHub labels, providing a foundation for custom automation logic or testing. It highlights the use of core and plugin imports.
Upgrade your Node.js environment to version 10.x or newer.
Ensure `GH_TOKEN` and `NPM_TOKEN` (if using the npm plugin) are correctly set as environment variables in your CI/local environment. Consider using a `.env` file at your project root, but remember to `.gitignore` it for security.
Be aware of the configuration precedence. For consistent behavior, use `.autorc` for baseline settings and CLI flags sparingly for temporary overrides or CI-specific adjustments.
Update `auto` to version 11.3.3 or newer to ensure compatibility with the latest GitHub API. `npm install auto@latest`
Verify that your GitHub repository has a release tagged and marked as 'Latest Release'. If not, manually tag your last version and create a GitHub release for it.
Set the `GH_TOKEN` environment variable with a valid GitHub Personal Access Token (PAT) that has appropriate permissions (repo scope).
Add a semantic versioning label to the Pull Request. Refer to your `.autorc` configuration or `auto init` defaults for valid labels.
Ensure the `GH_TOKEN` has write access to the repository and that git is correctly configured with these credentials, especially in CI environments.
Set the `NPM_TOKEN` environment variable with a valid npm publish token. If using a private registry, ensure your `.npmrc` is correctly configured or pass `legacyAuth` option to the npm plugin.
No dependency data recorded yet.