Release Engine

SkillAI & models

Use when preparing a versioned Rails engine release (SemVer, changelog). Trigger words: release engine, version bump, publish gem, changelog.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Release Engine skill

What this skill tells your AI

The instructions your AI receives, as published by igmarin/rails-agent-skills in skills/release-engine/SKILL.md and read by ahel’s review.

Use this skill when the task is to ship a Rails engine as a gem or prepare a new version.

Quick Reference

BumpWhen to useAction
PatchBug fixes and internal changes without public behavior breakageUpdate version constant, document under Fixed
MinorBackward-compatible features and new extension pointsUpdate version constant, document under Added/Changed
MajorBreaking changes to API, setup, routes, migrations, config, or supported framework versionsUpdate version constant, document under Changed/Deprecated; write explicit upgrade notes

HARD-GATE

DO NOT release without updating CHANGELOG and version file.

Core Process

  1. Confirm scope and compatibility impact — is this patch, minor, or major?
  2. Run full test suite: bundle exec rspec. Fix all failures before proceeding.
  3. Set the version bump — update the version constant once: module MyEngine; VERSION = "1.2.0"; end in lib/my_engine/version.rb.
  4. Update changelog and upgrade notes.
  5. Verify gemspec metadata and dependencies match tested Rails/Ruby versions.
  6. Dry-run the gem build: gem build *.gemspec && gem push --dry-run *.gem. Verify contents.
  7. Confirm installation docs and README match the release — update if needed.
  8. Publish: gem push *.gem.

Extended Resources

Load release assets conditionally and say which one informed the output:

  • Read assets/release_checklist.md when producing the release verification checklist or quality gates.
  • Read assets/release_notes_template.md when drafting GitHub release notes, a long-form announcement, or public release copy.
  • Read assets/examples.md only when the user needs concrete release examples.

Changelog Guidelines

  • Document user-visible changes, not commits; group by Added/Changed/Fixed/Deprecated.
  • For deprecations, document removal plan and replacement; keep deprecated code for at least one minor cycle.
  • If the engine requires host changes during upgrade, document them explicitly even if the version bump is minor.

Examples

## [1.2.0] - 2024-03-15
### Added
- `widget_count` config option to limit dashboard widgets (default: 10).
### Changed
- Minimum Rails version is now 7.0.

Output Style

  1. Version bump — patch/minor/major with explicit reasoning.
  2. Version constant — updated lib/[engine_name]/version.rb.
  3. CHANGELOG entries — under Added/Changed/Fixed/Deprecated headers.
  4. Upgrade notes — host app steps (config, migrations, dependencies).
  5. Gemspec + test status — metadata, files, dependency ranges confirmed; pass/fail result of bundle exec rspec.
  6. Dry-run output — exact command gem build *.gemspec && gem push --dry-run *.gem plus contents verification (tar tf pkg/*.gem or gem contents).
  7. Asset usage — state which of assets/release_checklist.md, assets/release_notes_template.md, assets/examples.md was loaded, or explicitly say none was needed.
  8. GitHub release notes — concise draft with summary, highlights, upgrade notes, and verification status.
  9. Release blockers — open issues, or explicitly "No blockers".

Integration

SkillWhen to chain
document-engineUpdating README, setup instructions, or API docs for the release
upgrade-engineVerifying Rails/Ruby version support or deprecation impact
test-engineEnsuring tests pass before release and match documented behavior

Signals

GitHub stars
25
Forks
7
Last commit
Aug 2026
Advanced
Catalog kind
skill
Gateway key
release-engine
Source
github.com/igmarin/rails-agent-skills