Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI Release

airelease creates GitHub releases from merged pull requests and can ask OpenRouter (or custom endpoints) to suggest a semantic version and release title options.

Features

  • Interactive release creation flow
  • Auto-discovers PRs since the latest release
  • Uses gh release create to publish
  • Global config in ~/.airelease/config.json
  • Per-repo configurable base branch
  • Configurable OpenRouter model or custom endpoint
  • Dry run mode to preview changes

Requirements

  • git
  • gh (authenticated with gh auth login)
  • Go 1.22+

Install

From this repository:

go install .

Ensure your Go bin path is in PATH:

export PATH="$(go env GOPATH)/bin:$PATH"

Quick Start

Using OpenRouter

  1. Set your OpenRouter API key:
airelease config openrouter-api-key <your-api-key>
  1. Optional: set model globally:
airelease config model qwen/qwen3.5-flash-02-23
  1. Optional: set base branch for current repo:
airelease config base develop
  1. Run it inside a git repository:
airelease

Using a Custom Endpoint

  1. Set your custom endpoint:
airelease config model-url "https://your-endpoint.com/v1"
  1. Add required headers (e.g., Authorization):
airelease config model-header "Authorization: Bearer your-token"
  1. Set your model name:
airelease config model "your-model-name"
  1. Run it:
airelease

Dry Run Mode

Test without creating a release:

airelease --dry-run

Commands

Basic Usage

airelease                    # Create a GitHub release from merged PRs
airelease --dry-run          # Preview release without creating it

Configuration

airelease config base <branch>                    # Default base branch for current repo
airelease config openrouter-api-key <api-key>     # Set OpenRouter API key
airelease config openrouter <true|false>          # Enable/disable OpenRouter mode  
airelease config model <model-name>               # Set model name

Custom LLM Endpoints

airelease config model-url <url>                 # Set custom endpoint (full path)
airelease config model-header <key:value>        # Add custom header
airelease config model-header remove <key>       # Remove a header
airelease config model-header list               # List all custom headers

Note: When using model-url or model-header, OpenRouter mode is automatically disabled. The tool will append /chat/completions to the base URL if not present.

Notes

  • If OpenRouter is not configured, airelease still works without AI suggestions.
  • API key is stored in ~/.airelease/config.json with file mode 0600.
  • Custom endpoints are supported with the model-url and model-header config commands.
  • dry-run mode previews the release without actually creating it.

About

AI-assisted Github release creation tool

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages