- Category
- Developer Tools
- Rank
- No. 1482Tools index
Previous survey · No. 1490 ·
- Pricing
- Open Source
- Type
- TOOL
- Builder
- vercel-labs
- GitHub
- 158 stars
- Date
About
CLI that automates changeset-based release flows — bumps versions, writes changelogs, and ships packages on merge.
What it does
Autoship coordinates a GitHub package release from a local terminal. It inspects commits and code changes, asks an AI model to propose semantic versioning and release notes, opens pull requests, watches CI, and merges the release sequence after confirmations.
Why it's ranked here
Autoship tackles the awkward orchestration around Changesets, not just document generation. Repository selection, change analysis, pull requests, CI polling, and final publication form one guided flow. The narrow assumptions and forceful merge behavior make it best for teams already committed to its exact GitHub release pattern.
What's good
Interactive prompts keep humans involved in release type, generated text, pushing, and merging. Explicit flags also support automation. AI failures degrade sensibly: release-type analysis defaults to patch, while description failure requests manual text. Temporary clones are cleaned up, and tests cover configuration, Git operations, GitHub behavior, logging, and AI fallbacks.
Tradeoffs
It requires Node.js, Git, an authenticated GitHub CLI, an AI Gateway key, and an existing Changesets setup. Merges use administrator mode and squash commits, which may conflict with repository policy. The advertised unattended example still reaches an AI-description confirmation unless a custom message is supplied. CI parsing depends on human-oriented command output.
How to use it well
Use it for npm packages whose GitHub repositories already run the Changesets action and whose maintainers control merge policy. Start interactively, verify the proposed version and description, then supply both explicitly for repeatable automation. It does not replace Changesets, CI configuration, GitHub authentication, or package registry setup.
Technical notes+
src/index.ts defines the Commander CLI and stores repository aliases through src/config.ts. src/release.ts coordinates cloning, tag-based analysis, prompt handling, changeset creation, two pull-request cycles, CI waits, and cleanup. src/ai.ts sends commit and diff context through the AI SDK to a fixed Anthropic model, truncating release-type diff input to 5,000 characters. src/git.ts uses simple-git and temporary directories. src/github.ts shells out synchronously to gh, parses tabular check output, and merges with --admin --delete-branch. Tests are colocated under src/*.test.ts and use Vitest mocks.
Observed
- License
- Apache-2.0
- Primary language
- TypeScript
- Interface
- Command-line interface
- Packaging
- ES module npm package with an autoship executable; documented usage runs through npx
- Runtime requirements
- Node.js 18 or newer, Git, authenticated GitHub CLI, and an AI Gateway API key
- Repository compatibility
- Target repositories must use the Changesets workflow
- Test structure
- Vitest test files are colocated with source files under src
Read from README.md, package.json, src/index.ts, src/ai.ts, src/git.ts, src/types.ts, src/config.ts, src/github.ts, src/logger.ts, src/ai.test.ts, src/release.ts, src/git.test.ts, src/config.test.ts, src/github.test.ts, src/logger.test.ts.
What it can do
Bump package version numbers
Software package with changeset files → Updated version numbers in package.json or equivalent files
Generate changelog entries
Changeset files containing change descriptions → Formatted changelog file with version history
Publish packages to registry
Built software packages ready for distribution → Published packages available in package registry
Automate release workflow on merge
Git merge event with changeset files → Complete release including version bump, changelog update, and package publication
Process changeset files
Changeset files describing pending changes → Structured release information and version increment decisions
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.
