# Release Flow

> Ship validated changes with repeatable release evidence — version bump, changelog, tag, and optional GitHub release

- Skill: `lucassantana-dev/release-flow` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add lucassantana-dev/release-flow`
- Raw SKILL.md: https://api.skillmd.com/api/skills/lucassantana-dev/release-flow/raw
- Safety review: PASS (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: LucasSantana-Dev (https://skillmd.com/u/lucassantana-dev)
- Updated: 2026-08-19
- Page: https://skillmd.com/skills/lucassantana-dev/release-flow

---


# Release Flow

After verification passes, bump the version, update the changelog, tag the repo, and optionally create a GitHub release.

## Steps

1. **Confirm verification passed** — refuse to release without prior quality gate evidence
2. **Detect version source** — package.json, pyproject.toml, VERSION file, or git tags
3. **Preflight** — run the helper in verify mode to confirm git cleanliness, git identity, target tag availability, version source, changelog readiness, notes destinations, and optional `gh` readiness before any mutation
4. **Plan the release** — preview version bump level (patch, minor, major) and changelog entry
5. **Execute** — bump version, update changelog, create annotated git tag
6. **GitHub release** (optional) — validate `gh` auth, then create release with notes
7. **Report** — version, tag, changelog path, any skipped steps with reasons

## Output

```text
Version:    <old> → <new>
Tag:        v<new>
Changelog:  updated | skipped (no [Unreleased] section)
Preflight:  ready | blocked (reason)
GH Release: created | skipped (reason)
```

## Rules

- Never release without prior verification evidence
- Never invent a version file or changelog format the repo doesn't use
- Never publish artifacts without confirmed auth
- Only update changelog when it already has an `[Unreleased]` section
- Report skipped steps with reasons instead of failing silently

