This document describes the release process for the @mixedbread/cli package.
To publish packages, you need to set up the NPM_TOKEN secret in your GitHub repository:
-
Create an npm access token:
- Go to npmjs.com and sign in
- Click on your profile picture → Access Tokens
- Generate New Token → Classic Token
- Select "Automation" type
- Copy the generated token
-
Add the token to GitHub:
- Go to your repository on GitHub
- Settings → Secrets and variables → Actions
- Click "New repository secret"
- Name:
NPM_TOKEN - Value: Your npm token
Ensure your npm account has publish access to the @mixedbread scope.
When you make changes that should be released:
# Create a new changeset
pnpm changeset
# Follow the prompts to:
# - Select which packages have changed
# - Choose the version bump type (major/minor/patch)
# - Write a summary of the changesgit add .changeset
git commit -m "chore: add changeset for [your changes]"
git pushWhen changesets are pushed to the main branch:
-
The GitHub Action creates a "Version Packages" PR automatically
-
This PR will:
- Update package versions
- Update CHANGELOG.md files
- Remove consumed changesets
-
Review and merge the "Version Packages" PR
-
Upon merging, the GitHub Action will:
- Build all packages with changes
- Publish to npm with provenance
- Create a GitHub release with changelog
If automated release fails:
# Ensure you're on main branch with latest changes
git checkout main
git pull
# Build and publish
pnpm releaseFollow Semantic Versioning:
- Patch (0.0.X): Bug fixes, documentation updates
- Minor (0.X.0): New features, backwards-compatible changes
- Major (X.0.0): Breaking changes
- Check GitHub Actions logs for errors
- Verify
NPM_TOKENis set correctly - Ensure you have publish permissions for all packages
- Check if the version already exists on npm
- Verify the changeset was consumed
- Check npm account permissions
- Always create changesets for user-facing changes
- Write clear, descriptive changeset summaries
- Group related changes in a single changeset
- Test locally before creating a changeset
- Review the Version Packages PR carefully before merging