github-release-swarm

GitHub Release Swarm Skill

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "github-release-swarm" with this command: npx skills add vamseeachanta/workspace-hub/vamseeachanta-workspace-hub-github-release-swarm

GitHub Release Swarm Skill

Overview

Orchestrate complex software releases using AI swarms. This skill handles release planning, automated versioning, changelog generation, artifact building, progressive deployment, and multi-repo release coordination.

Quick Start

Get last release tag

LAST_TAG=$(gh release list --limit 1 --json tagName -q '.[0].tagName')

Get commits since last release

gh api repos/owner/repo/compare/${LAST_TAG}...HEAD --jq '.commits[].commit.message'

Get merged PRs since last release

gh pr list --state merged --base main --json number,title,labels,mergedAt

Create release

gh release create v2.0.0 --title "Release v2.0.0" --notes "..."

When to Use

  • Planning and coordinating major releases

  • Automated changelog generation

  • Multi-platform artifact building

  • Progressive deployment strategies

  • Multi-repository release coordination

  • Hotfix automation

Release Agents

Agent Purpose

Changelog Agent Semantic commit analysis, contributor attribution

Version Agent Smart version bumping, breaking change detection

Build Agent Cross-platform compilation, artifact optimization

Test Agent Pre-release testing, environment validation

Deploy Agent Multi-target deployment, staged rollout

Usage Examples

  1. Release Planning

Get commit history since last release

LAST_TAG=$(gh release list --limit 1 --json tagName -q '.[0].tagName') COMMITS=$(gh api repos/owner/repo/compare/${LAST_TAG}...HEAD --jq '.commits')

Get merged PRs

MERGED_PRS=$(gh pr list --state merged --base main --json number,title,labels,mergedAt
--jq ".[] | select(.mergedAt > "$(gh release view $LAST_TAG --json publishedAt -q .publishedAt)")")

Plan release with commit analysis

npx ruv-swarm github release-plan
--commits "$COMMITS"
--merged-prs "$MERGED_PRS"
--analyze-commits
--suggest-version
--identify-breaking
--generate-timeline

  1. Generate Changelog

Get all merged PRs between versions

PRS=$(gh pr list --state merged --base main --json number,title,labels,author,mergedAt
--jq ".[] | select(.mergedAt > "$(gh release view v1.0.0 --json publishedAt -q .publishedAt)")")

Get contributors

CONTRIBUTORS=$(echo "$PRS" | jq -r '[.author.login] | unique | join(", ")')

Get commit messages

COMMITS=$(gh api repos/owner/repo/compare/v1.0.0...HEAD --jq '.commits[].commit.message')

Generate categorized changelog

CHANGELOG=$(npx ruv-swarm github changelog
--prs "$PRS"
--commits "$COMMITS"
--contributors "$CONTRIBUTORS"
--from v1.0.0
--to HEAD
--categorize
--add-migration-guide)

echo "$CHANGELOG" > CHANGELOG.md

  1. Create Release with Assets

Generate changelog from PRs and commits

CHANGELOG=$(gh api repos/owner/repo/compare/${LAST_TAG}...HEAD
--jq '.commits[].commit.message' |
npx ruv-swarm github generate-changelog)

Create release draft

gh release create v2.0.0
--draft
--title "Release v2.0.0"
--notes "$CHANGELOG"
--target main

Build and upload assets

npm run build gh release upload v2.0.0 dist/.tar.gz dist/.zip

Publish release

gh release edit v2.0.0 --draft=false

Create announcement issue

gh issue create
--title "Released v2.0.0"
--body "$CHANGELOG"
--label "announcement,release"

  1. Initialize Release Swarm

// Initialize release swarm

// Orchestrate release task: "Complete release v2.0.0 with changelog, build, test, and deploy", strategy: "sequential", priority: "critical" })

  1. Multi-Repo Release

Coordinate releases across repos

REPOS=("frontend:v2.0.0" "backend:v2.1.0" "cli:v1.5.0")

for entry in "${REPOS[@]}"; do IFS=':' read -r repo version <<< "$entry"

Create release in each repo

gh release create "$version"
--repo "org/$repo"
--title "Release $version"
--generate-notes

echo "Released $repo $version" done

Link releases

npx ruv-swarm github multi-release-link
--releases "${REPOS[@]}"
--create-summary

Release Configuration

.github/release-swarm.yml

version: 1 release: versioning: strategy: semantic breaking-keywords: ["BREAKING", "!"]

changelog: sections: - title: "Features" labels: ["feature", "enhancement"] - title: "Bug Fixes" labels: ["bug", "fix"] - title: "Documentation" labels: ["docs", "documentation"]

artifacts: - name: npm-package build: npm run build publish: npm publish

- name: docker-image
  build: docker build -t app:$VERSION .
  publish: docker push app:$VERSION

- name: binaries
  build: ./scripts/build-binaries.sh
  upload: github-release

deployment: environments: - name: staging auto-deploy: true validation: npm run test:e2e

  - name: production
    approval-required: true
    rollback-enabled: true

notifications: - slack: releases-channel - email: stakeholders@company.com

Progressive Deployment

Staged rollout configuration

deployment: strategy: progressive stages: - name: canary percentage: 5 duration: 1h metrics: - error-rate < 0.1% - latency-p99 < 200ms

- name: partial
  percentage: 25
  duration: 4h
  validation: automated-tests

- name: full
  percentage: 100
  approval: required

MCP Tool Integration

Swarm Coordination

topology: "hierarchical",
maxAgents: 6,
strategy: "sequential"

})

tasks: [
    { task: "generate-changelog", agent: "changelog-agent" },
    { task: "build-artifacts", agent: "build-agent" },
    { task: "run-tests", agent: "test-agent" }
]

})

swarmId: "release-swarm",
tasks: ["build-linux", "build-macos", "build-windows"]

})

Memory for Release State

action: "store",
key: "release/v2.0.0/state",
value: JSON.stringify({
    stage: "testing",
    changelog: "generated",
    artifacts: ["npm", "docker"],
    tests: "running"
})

})

GitHub Actions Workflow

name: Release Workflow on: push: tags: ['v*']

jobs: release-swarm: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 with: fetch-depth: 0

  - name: Setup GitHub CLI
    run: echo "${{ secrets.GITHUB_TOKEN }}" | gh auth login --with-token

  - name: Initialize Release Swarm
    run: |
      RELEASE_TAG=${{ github.ref_name }}
      PREV_TAG=$(gh release list --limit 2 --json tagName -q '.[1].tagName')

      PRS=$(gh pr list --state merged --base main --json number,title,labels,author \
        --search "merged:>=$(gh release view $PREV_TAG --json publishedAt -q .publishedAt)")

      npx ruv-swarm github release-init \
        --tag $RELEASE_TAG \
        --previous-tag $PREV_TAG \
        --prs "$PRS" \
        --spawn-agents "changelog,version,build,test,deploy"

  - name: Generate Release Assets
    run: |
      CHANGELOG=$(npx ruv-swarm github release-changelog --format markdown)
      gh release edit ${{ github.ref_name }} --notes "$CHANGELOG"

      npm run build
      for file in dist/*; do
        gh release upload ${{ github.ref_name }} "$file"
      done

  - name: Publish Release
    run: |
      npm publish
      gh issue create \
        --title "Released ${{ github.ref_name }}" \
        --body "Release notes at releases page" \
        --label "announcement"

Emergency Procedures

Hotfix Process

Emergency hotfix

npx ruv-swarm github emergency-release
--severity critical
--bypass-checks security-only
--fast-track
--notify-all

Rollback Procedure

Immediate rollback

npx ruv-swarm github rollback
--to-version v1.9.9
--reason "Critical bug in v2.0.0"
--preserve-data
--notify-users

Best Practices

  1. Release Planning
  • Regular release cycles

  • Feature freeze periods

  • Beta testing phases

  • Clear communication

  1. Automation
  • Comprehensive CI/CD

  • Automated testing

  • Progressive rollouts

  • Monitoring and alerts

  1. Documentation
  • Up-to-date changelogs

  • Migration guides

  • API documentation

  • Example updates

Version History

  • 1.0.0 (2025-01-02): Initial release - converted from release-swarm agent

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

cli-productivity

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

python-docx

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

python-scientific-computing

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

python-pptx

No summary provided by upstream source.

Repository SourceNeeds Review