release
The release slash command automates GitHub release creation for ClaudeForge by validating prerequisites, extracting version-specific notes from CHANGELOG.md, and triggering the release workflow via GitHub CLI or UI. Use this command when preparing stable releases, pre-releases, or draft versions to ensure consistent documentation and streamlined publishing workflows.
mkdir -p ~/.claude/commands && curl -fsSL https://raw.githubusercontent.com/alirezarezvani/ClaudeForge/HEAD/.claude/commands/github/release.md -o ~/.claude/commands/release.mdrelease.md
# Create GitHub Release
You are helping the user create a GitHub release for ClaudeForge.
## Prerequisites Check
1. **Verify on main branch**
```bash
git branch --show-current
```
- Should be `main`
- If not, `git checkout main && git pull`
2. **Check for uncommitted changes**
```bash
git status
```
- Should be clean
3. **Verify CHANGELOG.md updated**
```bash
grep -A 10 "## \[" CHANGELOG.md | head -15
```
- Should have entry for new version
## Workflow
1. **Determine Version**
- Ask user for version number
- Validate semantic versioning format (X.Y.Z)
- Examples: 1.1.0, 1.0.1, 2.0.0-beta.1
2. **Check Tag Doesn't Exist**
```bash
git tag -l "v1.1.0"
```
- Should return nothing
- If tag exists, ask user to choose different version
3. **Verify CHANGELOG.md**
- Check if version is documented
- Extract release notes for this version
- Show preview to user
4. **Run Release Workflow**
**Option 1: Via GitHub CLI**
```bash
gh workflow run release.yml \
-f version=1.1.0 \
-f prerelease=false \
-f draft=false
```
**Option 2: Via GitHub UI**
- Go to Actions → Create Release
- Click "Run workflow"
- Enter version: 1.1.0
- Select options (prerelease, draft)
- Click "Run workflow"
5. **Monitor Workflow**
```bash
gh run list --workflow=release.yml --limit 1
gh run watch
```
6. **Verify Release Created**
```bash
gh release list
gh release view v1.1.0
```
## Release Types
**Stable Release:**
- Version: X.Y.Z (e.g., 1.1.0)
- Prerelease: false
- Draft: false
- Published immediately
**Pre-Release:**
- Version: X.Y.Z-beta.N (e.g., 1.2.0-beta.1)
- Prerelease: true
- Draft: false
- Marked as pre-release on GitHub
**Draft Release:**
- Version: X.Y.Z
- Draft: true
- Not published until manually approved
## Release Notes Generation
The release workflow automatically:
1. Extracts notes from CHANGELOG.md
2. Adds installation instructions
3. Lists commits since last release
4. Includes full changelog link
**Example output:**
```markdown
Release v1.1.0
[Content from CHANGELOG.md]
---
## 📦 Installation
### One-Line Install
```bash
curl -fsSL https://raw.githubusercontent.com/alirezarezvani/ClaudeForge/main/install.sh | bash
```
## 📝 Commits
- feat(skill): add Rust template (a1b2c3d)
- fix(installer): Windows path fix (e4f5g6h)
**Full Changelog**: https://github.com/alirezarezvani/ClaudeForge/blob/main/CHANGELOG.md
```
## Post-Release Actions
After release is created:
1. **Verify on GitHub**
- Go to Releases page
- Check release notes are correct
- Test one-line installation command
2. **Update References** (if needed)
- install.sh version reference
- install.ps1 version reference
- README.md version badge
3. **Announce Release**
- Create Discussion post
- Share on social media
- Update documentation site
4. **Sync Dev Branch** (recommended)
```bash
git checkout dev
git merge main
git push origin dev
```
## Example: Creating v1.1.0 Release
```bash
# 1. Ensure on main and up to date
git checkout main
git pull origin main
# 2. Verify CHANGELOG.md
cat CHANGELOG.md | grep -A 20 "\[1.1.0\]"
# 3. Run release workflow
gh workflow run release.yml \
-f version=1.1.0 \
-f prerelease=false \
-f draft=false
# 4. Monitor workflow
gh run watch
# 5. Verify release
gh release view v1.1.0
# 6. Test installation
curl -fsSL https://raw.githubusercontent.com/alirezarezvani/ClaudeForge/v1.1.0/install.sh | bash
# 7. Sync dev
git checkout dev
git merge main
git push origin dev
```
## Troubleshooting
**"Tag already exists":**
- Check existing tags: `git tag -l`
- Either delete old tag or use different version
**"Version not in CHANGELOG":**
- Edit CHANGELOG.md
- Add section for new version
- Commit and push to main
**"Workflow failed":**
- Check workflow logs: `gh run view`
- Common issues:
- Invalid version format
- Tag conflicts
- Missing CHANGELOG entry
## Validation
Before creating release, ensure:
- ✅ On main branch, clean working tree
- ✅ CHANGELOG.md has entry for version
- ✅ All tests passing on main
- ✅ PR from dev to main was merged
- ✅ Version number follows semantic versioning
- ✅ Tag v<version> doesn't already exist
## Success Criteria
✅ GitHub release created with auto-generated notes
✅ Git tag created (v1.1.0)
✅ Release appears on Releases page
✅ Installation command works
✅ Dev branch synced with main
Guide user through the process with clear steps and commands they can copy-paste.Create smart commit with quality checks and conventional format
Create pull request with proper validation
Initialize ClaudeForge CI/CD system
Analyzes, generates, and enhances CLAUDE.md files for any project type using best practices, modular architecture support, and tech stack customization. Use when setting up new projects, improving existing CLAUDE.md files, or establishing AI-assisted development standards.
Re-detect this project's tech stack from package.json / requirements.txt / pyproject.toml / go.mod / Cargo.toml and diff it against the Tech Stack section of every CLAUDE.md. Read-only — returns added / removed / renamed dependencies, never edits.
Audit every CLAUDE.md in this project for drift against the last week of git history. Flags sections that reference deleted files, renamed paths, or removed dependencies. Read-only — returns a punch list, never edits.
Verify every @path chain import and every markdown link inside every CLAUDE.md in this project resolves to an existing file. Read-only — returns broken links with file:line refs, never edits.
Behavioral guardrails for LLM-assisted coding. Use when writing, reviewing, or refactoring code in any project to avoid overcomplication, keep changes surgical, surface assumptions early, and execute against verifiable success criteria.