Prepare release documentation including CHANGELOG entry, announcement text, and validation. Run before tagging a new release.
This skill automates release preparation for MassGen, generating CHANGELOG entries, announcement text, and validating documentation.
Run this skill when preparing a new release:
/release-prep v0.1.34
Read commits and PRs since the last tag:
# Get last tag
git describe --tags --abbrev=0
# Get commits since last tag
git log v0.1.33..HEAD --oneline
# Get merged PRs (if using GitHub)
gh pr list --base main --state merged --search "merged:>2024-01-01"
If docs/announcements/current-release.md exists:
# Extract version from current-release.md
VERSION=$(grep -m1 "^# MassGen v" docs/announcements/current-release.md | sed 's/# MassGen v\([^ ]*\).*/\1/')
# Archive it
mv docs/announcements/current-release.md docs/announcements/archive/v${VERSION}.md
Update the Recent Releases section at the top of CHANGELOG.md:
Create a structured entry following Keep a Changelog format:
## [0.1.34] - YYYY-MM-DD
### Added
- **Feature Name**: Description
- Implementation details
### Changed
- **Modified Feature**: What changed
### Fixed
- **Bug #123**: Description of fix
### Documentations, Configurations and Resources
- **Feature Guide**: New `docs/source/user_guide/feature.rst` for feature usage
- **Design Document**: New `docs/dev_notes/feature_design.md` for implementation details
- **Updated Docs**: Updated `docs/source/reference/cli.rst` with new commands
- **Skills**: New `massgen/skills/skill-name/SKILL.md` for automation
Documentation section rules:
.rst, .md, .yaml files)git diff <last-tag>..HEAD --name-only -- "*.md" "*.rst" "*.yaml" to find changed docsCategorization rules:
feat: commits → Addedfix: commits → Fixeddocs: commits → Documentationrefactor:, perf: commits → ChangedContributors:
git shortlog -sn <last-tag>..HEAD to find all contributorsUpdate docs/source/index.rst Recent Releases section:
# Update Recent Releases section (keep latest 3 releases)
# Add new release at top, remove oldest (v0.1.X-3)
Format:
Recent Releases
---------------
**v0.1.44 (January 28, 2026)** - Execute Mode for Independent Plan Selection
New Execute mode for cycling through Normal → Planning → Execute modes via ``Shift+Tab``. Users can independently browse and select from existing plans with a plan selector popover. Context paths preserved between planning and execution phases. Enhanced case studies page with setup guides and quick start instructions.
**v0.1.43 (January 26, 2026)** - Tool Call Batching & Interactive Case Studies
...
**v0.1.42 (January 23, 2026)** - TUI Visual Redesign
...
Keep only the 3 most recent releases in this section. Older releases remain in the full changelog.
Update massgen/configs/README.md Release History section:
## Release History & Examples
### v0.1.44 - Latest
**New Features:** Execute Mode for Independent Plan Selection, Case Studies UX Enhancements
**Key Features:**
- **Execute Mode Cycling**: Navigate through Normal → Planning → Execute modes via `Shift+Tab`
- **Plan Selector Popover**: Browse and select from up to 10 recent plans with timestamps
- **Context Path Preservation**: Context paths automatically preserved between planning and execution
- **Enhanced Case Studies**: Setup guides and quick start instructions on case studies page
**Example Usage:**
```bash
# Use the TUI with plan mode cycling
massgen --config @examples/basic/multi/three_agents_default
# In the TUI:
# 1. Press Shift+Tab to enter Planning mode
# 2. Create a plan: "Create a Python web scraper for news articles"
# 3. Press Shift+Tab twice to enter Execute mode
# 4. Select your plan from the popover and press Enter to execute
### 6. Update README.md
#### 6.1 Latest Features Section
Update the "🆕 Latest Features" section:
```markdown
## 🆕 Latest Features (v0.1.44)
**🎉 Released: January 28, 2026**
**What's New in v0.1.44:**
- **🔄 Execute Mode** - Cycle through Normal → Planning → Execute modes via `Shift+Tab` to independently browse and execute existing plans
- **📋 Plan Selector** - Browse up to 10 recent plans with timestamps, view full task breakdowns, and execute with preserved context paths
- **📚 Enhanced Case Studies** - Interactive setup guides and quick start instructions on case studies page
- **⚡ TUI Performance** - Optimized timeline rendering with viewport-based scrolling for faster UI responsiveness
- **🔧 Plan Mode Fixes** - Fixed planning instruction injection bug in execute mode, improved tool tracking
**Try v0.1.44 Features:**
```bash
# Install or upgrade
pip install --upgrade massgen
# Experience Execute mode with plan cycling
uv run massgen --display textual
# In the TUI:
# 1. Press Shift+Tab to enter Planning mode
# 2. Create a plan: "Build a Python web scraper"
# 3. Press Shift+Tab twice to enter Execute mode
# 4. Select your plan and press Enter to execute
Also update the table of contents link from v0.1.43 → v0.1.44.
#### 6.2 Recent Achievements Section
Move the current "Recent Achievements" to "Previous Achievements" and add new release:
```markdown
### Recent Achievements (v0.1.44)
**🎉 Released: January 28, 2026**
#### Execute Mode for Independent Plan Selection
- **Mode Cycling**: Navigate through Normal → Planning → Execute modes via `Shift+Tab` or mode bar click
- **Plan Selector Popover**: Browse up to 10 recent plans with timestamps and original prompts
- **View Full Plan**: Modal displays complete task breakdown from selected plan
- **Empty Submission**: Press Enter to execute selected plan without additional input
- **Context Path Preservation**: Context paths (`@/path/to/file`) automatically restored from planning to execution phase
...
### Previous Achievements (v0.0.3 - v0.1.43)
✅ **Tool Call Batching & Interactive Case Studies (v0.1.43)**: Consecutive MCP tool calls grouped into collapsible tree views...
Also update roadmap TOC links:
[Recent Achievements (v0.1.43)] → [Recent Achievements (v0.1.44)][Previous Achievements (v0.0.3 - v0.1.42)] → [Previous Achievements (v0.0.3 - v0.1.43)][v0.1.44 Roadmap] → [v0.1.45 Roadmap]Update the roadmap section at bottom to reference next version (v0.1.45).
Update the main roadmap file:
**Current Version:** v0.1.44
**Last Updated:** January 28, 2026
Shift all releases down and add new next release:
| Release | Target | Feature | Owner | Use Case |
|---------|--------|---------|-------|----------|
| **v0.1.45** | 01/30/26 | Improve Subagent Display in TUI | @ncrispino | Stream and view subagents with full timeline in TUI ([#821](...)) |
| **v0.1.46** | 02/02/26 | Next feature | @owner | Use case |
Add the just-released version as COMPLETED:
## ✅ v0.1.44 - Execute Mode & Case Studies Enhancement (COMPLETED)
**Released: January 28, 2026**
### Features
- **Execute Mode**: Independent mode for browsing and executing existing plans ([#819](...))
- Cycle through Normal → Planning → Execute modes via `Shift+Tab`
- Plan selector popover shows up to 10 recent plans with timestamps
- "View Full Plan" button opens modal with all tasks
- Empty submission executes selected plan
- Context paths preserved from planning to execution phase
...
### Bug Fixes
- Fixed planning instruction injection during execute mode
- Improved tool call spacing in TUI
- Enhanced timeline performance with viewport optimization
Change the header for the upcoming release:
## 📋 v0.1.45 - Improve Subagent Display in TUI
### Features
**1. Subagent TUI Streaming** (@ncrispino)
- Issue: [#821](...)
- Stream and display subagents almost identically to main process in TUI
...
Create ROADMAP_v0.1.X+1.md with detailed milestones:
# MassGen v0.1.45 Roadmap
## Overview
Version 0.1.45 focuses on [MAIN THEME].
- **Feature 1** (Required): Description
- **Feature 2** (Required): Description
## Key Technical Priorities
1. **Feature 1**: Details
**Use Case**: Why this matters
2. **Feature 2**: Details
**Use Case**: Why this matters
## Key Milestones
### Milestone 1: [Feature Name] (REQUIRED)
**Goal**: What we're building
**Owner**: @username (discord)
**Issue**: [#XXX](...)
#### 1.1 Research & Design
- [ ] Task 1
- [ ] Task 2
#### 1.2 Implementation
- [ ] Task 1
- [ ] Task 2
...
**Success Criteria**:
- Criteria 1
- Criteria 2
Look at the GitHub issues, especially those tagged with the next milestone, to populate the roadmap.
Build and verify the Sphinx docs:
cd docs
make clean
make html
Check for:
Optional: Run link checker:
cd docs
make linkcheck
Create RELEASE_NOTES_v0.1.X.md following the established format from previous releases.
Format reference: Check the previous release on GitHub:
gh release view v0.1.43
Template structure:
# 🚀 Release Highlights — v0.1.X (YYYY-MM-DD)
### 🎯 [Feature Name](https://docs.massgen.ai/en/latest/path/to/docs.html)
- **Bullet Point**: Description
- **Bullet Point**: Description
### 📚 [Another Feature](https://docs.massgen.ai/en/latest/path/to/docs.html)
- **Bullet Point**: Description
### 🔧 Bug Fixes
- **Fix Description**: What was fixed
---
### 📖 Getting Started
- [**Quick Start Guide**](https://github.com/massgen/MassGen?tab=readme-ov-file#1--installation): Try the new features today
- **Try Feature Name**:
```bash
# Example command showing the new feature
uv run massgen [example command]
Full Changelog: https://github.com/massgen/MassGen/compare/v0.1.X-1...v0.1.X
**Get PRs for What's Changed:**
```bash
gh pr list --base dev/v0.1.X --state merged --json number,title,url,author \
| jq -r '.[] | "* \(.title) by @\(.author.login) in \(.url)"'
Important:
Create docs/announcements/current-release.md:
# MassGen vX.X.X Release Announcement
## Release Summary
We're excited to release MassGen vX.X.X, adding [MAIN FEATURE]! 🚀
[2-3 sentences describing the key changes]
## Install
\`\`\`bash
pip install massgen==X.X.X
\`\`\`
## Links
- **Release notes:** https://github.com/massgen/MassGen/releases/tag/vX.X.X
- **X post:** [TO BE ADDED AFTER POSTING]
- **LinkedIn post:** [TO BE ADDED AFTER POSTING]
Check that required documentation exists:
# Check for user guide updates (if new features)
ls docs/source/user_guide/
# Check capabilities.py updated (if new models)
git diff v0.1.33..HEAD -- massgen/backend/capabilities.py
# Check token_manager.py (if pricing changes)
git diff v0.1.33..HEAD -- massgen/token_manager/token_manager.py
# Check for case study
ls docs/source/examples/case_studies/
Verify announcement fits LinkedIn's ~3000 char limit:
# Count characters
cat docs/announcements/current-release.md docs/announcements/feature-highlights.md | wc -m
# Should be < 3000
Based on the changes in this release, suggest what screenshot or GIF to capture:
Feature-to-Screenshot Mapping:
| Change Type | Screenshot Suggestion | |-------------|----------------------| | New backend/model support | Terminal showing agent using new model with successful response | | Multi-agent coordination | Multiple agents working in parallel with colored output | | Voting/consensus | Voting phase with agent decisions and final selection | | MCP tools | Tool execution with visible results (file ops, search, etc.) | | Context compression | Log output showing compression stats and message counts | | Memory/persistence | Agent recalling context from previous session | | Web UI changes | Dashboard with agent activity or new UI feature | | Cost tracking | Summary showing token usage and costs per agent | | Error handling | Agent gracefully recovering from failure | | Performance improvements | Before/after timing or throughput comparison | | New config options | YAML config snippet with new options highlighted |
Analysis approach:
Example output:
### 📸 Suggested Screenshot for v0.1.34
Based on this release's changes, recommend capturing:
**Primary:** GPT-5 model support
- Run: `massgen --config massgen/configs/providers/openai/gpt5_demo.yaml "Explain quantum computing"`
- Capture: Terminal showing GPT-5 model name in agent output with response
**Alternative:** Context compression improvements
- Run: `massgen --automation --config [long-context-config] "question" | grep compression`
- Capture: Log output showing reduced token counts
**Media type:** Static screenshot is fine (no complex animation needed)
Print a checklist:
## Release Prep Summary for v0.1.34
✅ Archived previous announcement → archive/v0.1.33.md
✅ Updated CHANGELOG.md with v0.1.34 entry
✅ Updated docs/source/index.rst Recent Releases
✅ Updated massgen/configs/README.md Release History
✅ Updated README.md Latest Features section
✅ Updated README.md Recent Achievements section
✅ Updated ROADMAP.md (current version, release table, completed section)
✅ Created ROADMAP_v0.1.35.md for next release
✅ Built Sphinx documentation successfully
✅ Created current-release.md
✅ Character count: 2847/3000
### Manual Steps Remaining:
1. Review all updated files for accuracy
2. Capture suggested screenshot (see below)
3. Stage and commit changes
4. Push and create PR to main
5. After merge: Create tag (git tag v0.1.34 && git push origin v0.1.34)
6. Publish GitHub Release (triggers PyPI publish)
7. Post to LinkedIn/X with screenshot, update links in current-release.md
### 📸 Screenshot Suggestion:
[Feature-specific suggestion based on changes]
### Validation Warnings:
⚠️ No case study found for this release
⚠️ capabilities.py was modified - verify docs updated
⚠️ README_PYPI.md will auto-sync via pre-commit hook
CHANGELOG.md - Complete release historydocs/source/index.rst - Recent Releases sectionmassgen/configs/README.md - Release History & ExamplesREADME.md - Latest Features and Recent AchievementsROADMAP.md - Current version, release table, completed releasesROADMAP_v0.1.X+1.md - Detailed milestones for next versiondocs/announcements/docs/announcements/current-release.mddocs/announcements/feature-highlights.mddocs/announcements/archive/ - Past releasesdocs/dev_notes/release_checklist.md - Complete step-by-step guideREADME_PYPI.md - Auto-synced via pre-commit hookdev/v0.1.44) before creating the PRfeature-highlights.md if this release adds major new capabilitiescurrent-release.mdcd docs && make html) to catch formatting issues earlySearch for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer