cut-release

Featured

Use this skill to cut an APM release from the current worktree: assess whether the cycle since the last tag warrants a patch or minor bump (semver discipline against the merged-since-last-tag diff), sanitize the [Unreleased] CHANGELOG block into a dated version block with one concise "so what" entry per merged PR (drop internal-only churn, consolidate duplicates), bump pyproject.toml + uv.lock, run the CI-mirror lint chain, and open the release PR. Activate on "ship a release", "cut v0.x", "release prep", "bump and PR", "open release PR", "what kind of release do we need", or any phrasing that ends in opening a release PR -- even when the user does not say "skill". Stops BEFORE tagging; tagging stays a human gate that triggers the release workflow. Refuses to bump to a major (>= 1.0.0) version without explicit operator confirmation.

AI & Automation 3,775 stars 358 forks Updated today MIT

Install

View on GitHub

Quality Score: 90/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# cut-release -- assess, sanitize, bump, lint, open PR This skill drives the release-cut workflow end-to-end on the current worktree. It STOPS at "PR open"; tagging is the human-gated trigger that fires the release workflow. ## When to use Trigger this skill on any of these intents: - "cut a release" - "ship v0.x" / "ship the release" - "release prep" / "prepare the release" - "bump and open the PR" - "open the release PR" - "what kind of release do we need now" - "we have enough merged for a release" - Any phrasing that ends in opening a release PR. Do NOT trigger on: - "tag v0.16.0" -- tagging is the post-merge step the operator runs. - "publish a blog post" / "draft release notes for the website". - "what changed since v0.15.0" -- enumeration only, no release. - "regenerate uv.lock" / raw version-string edits. - "rollback to v0.15.0" -- release reversal is a different skill. ## Companion primitives The skill DEPENDS on these existing primitives in the same source tree. Do not duplicate their content; reference them. - `.apm/skills/apm-strategy/SKILL.md` -- versioning judgement and breaking-change lens. Auto-loads via its own trigger on `CHANGELOG.md` and release-pipeline edits. Treat it as the authoritative lens for "is this BREAKING" and "does this positioning change warrant a migration note". - `.apm/instructions/linting.instructions.md` -- canonical CI-mirror lint chain. Reference; do not re-derive ruff / pylint command lists in this skill. - `.gith...

Details

Author
microsoft
Repository
microsoft/apm
Created
11 months ago
Last Updated
today
Language
Python
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category

Data & Documents Featured

cut-release

Cuts a new versioned release of claude-code-trace end-to-end without asking any questions. Detects commits since the last ancestral tag, classifies them with conventional-commit rules to pick the semver bump, bumps every version-bearing file in sync, writes the CHANGELOG entry, commits and tags on a release branch, pushes the tag to trigger the GitHub Actions release pipeline, fast-forwards `main` onto the release commit and pushes it, then cleans up the local branch. Use this skill whenever the user mentions cutting, tagging, bumping, or shipping a release — including "cut a release", "release v1.2.3", "tag and release", "bump version", "publish a release", "do a patch release", or "make a new release". Trigger even when the user does not name the version — the skill computes it. Also use proactively when the user finishes a unit of work and asks to publish it.

363 Updated today
delexw
AI & Automation Listed

release-cut

Use when the user asks to cut a release, tag a version, publish a release, or roll up the changelog. Not for routine merges; releases happen on request, not per feature.

4 Updated 1 weeks ago
escoffier-labs
AI & Automation Listed

release

Cut an aidemo release: bump package.json, commit, push to main — CI (release.yml) then creates the vX.Y.Z tag, moves `stable`, and publishes the GitHub Release. Use when the user says "cut a release", "release vX.Y.Z", "bump and release", "ship a new version", or "move stable". Knows the gotchas: the version lives ONLY in package.json, pushing a version bump to main IS the ship trigger, CI tagging is idempotent, npm caches the moving `stable` tag (--prefer-online to force-fresh). Do NOT use for: publishing to npm (the engine is npx-from-git only), or installing/updating the skill in consumer repos (that's `aidemo skill update`).

7 Updated yesterday
tandryukha