- Add 60 new agents across all 10 categories (75 -> 135) - Add 95 new plugins with command files (25 -> 120) - Update all agents to use model: opus - Update README with complete plugin/agent tables - Update marketplace.json with all 120 plugins
37 lines
1.4 KiB
Markdown
37 lines
1.4 KiB
Markdown
Create a tagged release with auto-generated release notes from recent commits.
|
|
|
|
## Steps
|
|
|
|
1. Run `git log --oneline $(git describe --tags --abbrev=0 2>/dev/null || git rev-list --max-parents=0 HEAD)..HEAD` to list commits since last tag.
|
|
2. Determine the next version number:
|
|
- If `--major`, `--minor`, or `--patch` is specified, use that increment.
|
|
- Otherwise, infer from commit types: `feat` = minor, `fix` = patch, breaking changes = major.
|
|
3. Group commits by type (features, fixes, chores, etc.) for the release notes.
|
|
4. Check for a `package.json`, `pyproject.toml`, or `Cargo.toml` and update the version field if present.
|
|
5. Stage version file changes and commit with `chore: bump version to vX.Y.Z`.
|
|
6. Create an annotated tag: `git tag -a vX.Y.Z -m "Release vX.Y.Z"`.
|
|
7. If `gh` CLI is available, create a GitHub release: `gh release create vX.Y.Z --generate-notes`.
|
|
8. Push the tag and commit: `git push origin HEAD --follow-tags`.
|
|
|
|
## Format
|
|
|
|
```
|
|
## vX.Y.Z (YYYY-MM-DD)
|
|
|
|
### Features
|
|
- feat(scope): description
|
|
|
|
### Bug Fixes
|
|
- fix(scope): description
|
|
|
|
### Other Changes
|
|
- chore/refactor/docs entries
|
|
```
|
|
|
|
## Rules
|
|
|
|
- Never create a release on a dirty working tree; abort if uncommitted changes exist.
|
|
- Always use semantic versioning (semver).
|
|
- Confirm the version bump with the user before tagging.
|
|
- Do not include merge commits or CI-only changes in release notes.
|