@releasehub/cli
v1.1.1
Published
AI-powered release notes from your terminal
Maintainers
Readme
ReleaseHub
AI-powered release notes from your terminal.
ReleaseHub reads your merged pull requests, filters the noise, rewrites technical titles into plain language, and outputs GitHub release notes, a changelog entry, or a Slack message — in one command.
npx @releasehub/cli generate --from v2.3.0 --to v2.4.0Install
npm install -g @releasehub/cliRequires Node.js 18 or later.
Quick start
# 1. Connect your GitHub account
releasehub auth login
# 2. Add your AI key (Anthropic or OpenAI)
releasehub ai add-key
# 3. Generate release notes
releasehub generate --from v2.3.0 --to v2.4.0Output formats
# GitHub Release markdown (default)
releasehub generate --from v2.3.0 --to v2.4.0 --format github-release
# Keep a Changelog format
releasehub generate --from v2.3.0 --to v2.4.0 --format changelog
# Compact Slack message
releasehub generate --from v2.3.0 --to v2.4.0 --format slackExample output (--format github-release):
## v2.4.0
This release includes 2 new features, 3 improvements and 1 bug fix.
### ✨ New Features
- You can now export reports as CSV directly from the dashboard
- Added keyboard shortcuts for the most common actions
### 🔧 Improvements
- Search results now load noticeably faster
- Dark mode contrast improved across all pages
- Notification preferences are easier to find in settings
### 🐛 Bug Fixes
- Fixed an issue where file uploads would silently fail on slow connectionsWrite to a file
releasehub generate --from v2.3.0 --to v2.4.0 --output RELEASE.mdPublish as a GitHub Release
releasehub generate --from v2.3.0 --to v2.4.0 --publishUse in CI (GitHub Actions)
- name: Generate release notes
env:
RELEASEHUB_GITHUB_TOKEN: ${{ secrets.RELEASEHUB_GITHUB_TOKEN }}
RELEASEHUB_ANTHROPIC_KEY: ${{ secrets.RELEASEHUB_ANTHROPIC_KEY }}
run: |
npx @releasehub/cli generate \
--from ${{ github.event.release.target_commitish }} \
--to ${{ github.ref_name }} \
--format github-release \
--quiet \
--output release-notes.mdCommands
| Command | Description |
|---|---|
| releasehub auth login | Connect your GitHub account via OAuth |
| releasehub auth logout | Disconnect and remove saved token |
| releasehub ai add-key | Add an Anthropic or OpenAI key |
| releasehub ai switch | Switch active AI provider |
| releasehub ai status | Show provider status and validate keys |
| releasehub generate | Generate release notes from merged PRs |
generate flags
| Flag | Default | Description |
|---|---|---|
| --from <tag> | required | Start tag |
| --to <tag> | required | End tag |
| --repo <owner/name> | auto-detect | Repository (defaults to git remote) |
| --format <format> | github-release | github-release | changelog | slack |
| --output <file> | stdout | Write output to a file |
| --publish | — | Publish as a GitHub Release |
| --quiet | — | Suppress progress output (CI mode) |
AI providers
| Provider | Model | Set key via |
|---|---|---|
| Anthropic | claude-sonnet-4-6 | releasehub ai add-key or RELEASEHUB_ANTHROPIC_KEY |
| OpenAI | gpt-4o | releasehub ai add-key or RELEASEHUB_OPENAI_KEY |
Anthropic is the default. Switch with releasehub ai switch.
Environment variables
| Variable | Description |
|---|---|
| RELEASEHUB_GITHUB_TOKEN | GitHub personal access token (alternative to auth login) |
| RELEASEHUB_ANTHROPIC_KEY | Anthropic API key |
| RELEASEHUB_OPENAI_KEY | OpenAI API key |
Repo structure
releasehub/
├── apps/
│ └── web/ # Landing page + docs (React + Vite)
├── packages/
│ └── cli/ # @releasehub/cli npm package
└── planning/ # Product docs, milestones, architectureSupport
If ReleaseHub saves you time, consider buying me a coffee:
License
MIT — see LICENSE.
Built by @berat
