Skip to content

Release Notes: v0.3.0

Release Date: 2026-01-12

Highlights

This release transforms Release Agent from a pre-push validation tool into a comprehensive release automation platform. Major additions include a full release workflow engine, Claude Code integration, and multi-platform plugin support.

What's New

CLI Restructure

  • Cobra framework: Migrated to spf13/cobra for better command organization
  • New command structure: releaseagent <command> [flags]
  • 7 commands: check, validate, release, changelog, readme, roadmap, version

Release Workflow Engine

  • atrelease release <version>: Execute complete 9-step release workflow
  • Steps: Validate version → Check working directory → Run checks → Generate changelog → Update roadmap → Create commit → Push → Wait for CI → Create tag
  • CI verification: Waits for GitHub Actions to pass before tagging (via gh CLI)
  • Dry-run support: Preview what would happen without making changes

Comprehensive Validation

  • atrelease validate: NASA-style Go/No-Go validation across 4 areas
  • QA Area: Build, test, lint, format, error handling
  • Documentation Area: README, PRD, TRD, release notes, changelog
  • Release Area: Version format, git status, CI configuration
  • Security Area: LICENSE, vulnerability scan, dependency audit, secret detection

Actions Framework

  • Action interface: Run(), Propose(), Apply() pattern for mutating operations
  • ChangelogAction: Generate changelogs via schangelog integration
  • RoadmapAction: Update roadmaps via sroadmap integration
  • ReadmeAction: Update version references and coverage badges

Interactive Mode

  • --interactive flag: Enable Q&A mode for Claude Code integration
  • Prompter interface: CLIPrompter for terminal, JSONPrompter for AI assistants
  • Proposal system: Review and approve changes before applying

Output Formats

  • Human-readable: Colored terminal output with symbols (✓, ✗, ⚠, ⊘)
  • JSON: Standard JSON output (--json --format=json)
  • TOON: Token-Oriented Object Notation (--json --format=toon) - ~8x more token-efficient for LLMs

Claude Code Plugin

  • Plugin structure: Commands, skills, agents, and hooks
  • 4 commands: /release-agent:release, /release-agent:check, /release-agent:changelog, /release-agent:version-next
  • 2 skills: Version analysis, commit classification
  • Release coordinator agent: Orchestrates complete releases
  • Multi-platform: Generates plugins for both Claude and Gemini

New Checks

  • Error handling compliance: Detects improper error discarding (_ = err)
  • SecurityChecker: LICENSE, govulncheck, dependency audit, secret detection
  • DocChecker: Validates documentation completeness
  • ReleaseChecker: Version format, git status, CI configuration

Git Integration

  • pkg/git wrapper: Comprehensive Git operations (tag, commit, push, status)
  • CI status checking: Poll GitHub Actions via gh api
  • WaitForCI: Block until CI passes or fails (with timeout)

Breaking Changes

  • Module path: Changed from github.com/grokify/prepush to github.com/grokify/release-agent
  • Package structure: Moved from flat structure to cmd/ and pkg/ layout
  • Configuration file: Now uses .releaseagent.yaml (.prepush.yaml still detected but deprecated)

Migration Guide

From v0.2.x

  1. Update import paths:

    // Old
    import "github.com/grokify/prepush/checks"
    
    // New
    import "github.com/grokify/release-agent/pkg/checks"
    

  2. Update binary name in scripts:

    # Old
    prepush
    
    # New
    atrelease check
    

  3. Rename configuration file (optional):

    mv .prepush.yaml .releaseagent.yaml
    

Dependencies

New Required

  • gh CLI (for CI status checking)

New Optional

  • schangelog (for changelog generation)
  • sroadmap (for roadmap updates)
  • govulncheck (for vulnerability scanning)

Known Issues

  • Python, Rust, and Swift checkers are detected but not yet implemented
  • GitHub release creation is planned for a future release

What's Next

See ROADMAP.md for planned features including:

  • GitHub release creation
  • GitLab support
  • Python, Rust, Swift checkers