End-to-end release workflow for skillshare. Runs tests, generates changelog (via /changelog), optionally writes local RELEASE_NOTES, updates version numbers, commits, and drafts announcements. Use when the user says "release", "prepare release", "cut a release", "release v0.19", or any request to publish a new version. For changelog-only tasks, use /changelog instead.
74
94%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
End-to-end release workflow for skillshare. $ARGUMENTS specifies the version (e.g., v0.19.0).
git status shows no uncommitted changes)Run full test suite and code quality checks. Fix any failures before proceeding.
make check # fmt-check + lint + test (builds binary first)If tests fail: fix them, don't skip. Do not ask the user — fix and re-run.
Invoke /changelog $VERSION to generate the changelog entry.
This handles:
website/src/pages/changelog.md)Review the output before proceeding.
Check if running as maintainer:
git config user.name # Should match "Willie" or maintainer identityIf maintainer:
Read the most recent specs/RELEASE_NOTES_*.md as a style reference, then generate specs/RELEASE_NOTES_<version>.md (no v prefix, e.g., RELEASE_NOTES_0.19.0.md).
Release notes are a local maintainer artifact by default. The specs/ directory is gitignored; do not force-add or commit specs/RELEASE_NOTES_<version>.md unless the user explicitly asks for release notes to be committed.
Structure:
# skillshare vX.Y.Z Release Notes## section per feature/fix — describe what changed in plain language, with a CLI example or code block if relevantWording rules (same user-facing standard as CHANGELOG):
Server.mu from sync.Mutex to sync.RWMutex and applied a snapshot pattern across 30 handlers"If not maintainer: Skip this phase.
Update the version in skills/skillshare/SKILL.md frontmatter:
metadata:
version: vX.Y.ZThis ensures skillshare upgrade --skill detects the new version correctly.
git add CHANGELOG.md website/src/pages/changelog.md skills/skillshare/SKILL.md
# Only if the user explicitly asked to commit release notes:
# git add -f specs/RELEASE_NOTES_<version>.md
git commit -m "chore: release vX.Y.Z"
git tag vX.Y.ZDo NOT push yet — wait for user confirmation.
Prepare two drafts for user review:
GitHub Release Notes — concise, user-facing summary suitable for the GitHub release page. Shorter than RELEASE_NOTES, highlight top 3-5 changes with one-liners.
Social media post — 2-3 sentences max, casual tone, mention the version and 1-2 headline features. No hashtag spam.
Tone: short, direct. Don't oversell. The user will edit before posting.
Show the user:
Wait for user approval before pushing:
git push origin HEAD --tagsspecs/RELEASE_NOTES_*.md unless the user explicitly askschore: release vX.Y.Ze535e8f
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.