Release Tweets
Attribution: Sourced from steipete/agent-scripts by Peter Steinberger.
When to Use
- Drafting release tweets or X/Twitter announcements from changelogs
- Writing launch threads or social copy for npm/app releases
- Formatting release notes into tweet-sized announcements
Use when the user asks for a release tweet, launch tweet, X announcement, release thread, changelog-to-tweet rewrite, or social copy for a shipped version. This skill is about release copy, not cutting the release.
Ground The Copy
- Verify the release target before writing confident copy:
- Read the relevant
CHANGELOG.md section or GitHub release notes.
- Check the tag/release/npm/appcast/artifact state that applies to the project.
- Distinguish
Unreleased, beta/prerelease, stable, hotfix, and correction releases.
- Lead with user-visible wins: features, integrations, workflow improvements, install/update reliability, security fixes.
- Avoid leading with CI, coverage, validation, refactors, internal migrations, or release mechanics unless that is the actual story.
- If evidence is incomplete, say what is unverified and draft with softer wording.
Launch Tweet Shape
- One standard tweet under 280 characters, with room for one URL.
- Typical format:
- product + version
- blank line
- 3-4 compact emoji-led feature bullets
- blank line
- one short punchline
- release/changelog URL
- Use emoji bullets by default. Pick clear, low-noise emoji that match the feature or product.
- Tone: high-signal, compact, confident, a little dry when earned. Not corporate.
- One joke max. Let the feature bullets do the work.
- Count final raw characters before presenting it as ready to post.
Beta, Hotfix, Correction
- Beta/prerelease: make beta status explicit; avoid implying stable promotion.
- Hotfix/correction: be direct and accountable; state what slipped, what is fixed, and the new version; skip jokes unless the user asks for a lighter tone.
Threads
- First agree on the generic launch tweet.
- Then write follow-ups one at a time. When the user says
next, provide only the next reply.
- Each follow-up should focus on one feature or user workflow.
- Include a docs/release URL for the specific feature when available.
- Good follow-up length: 160-220 raw characters. Hard cap: 280.
Quality Pass
Before final:
- Character count under 280 for each tweet.
- Exact version string and channel.
- Release URL included when requested or expected.
- No unverified claims.
- No more than 3-4 emoji-led bullets in the launch tweet.
- Concise language; trim filler before trimming facts.
Examples
ProductName 2.1.0
🚀 Feature one, brief description
🔧 Feature two, brief description
🐛 Bug fix summary
Short memorable punchline.
https://github.com/owner/repo/releases/tag/v2.1.0
Hotfix 2.1.1 — fixes install issue from 2.1.0.
Upgrade via: npm install package@2.1.1
https://github.com/owner/repo/releases/tag/v2.1.1
1---2name: release-tweets3description: Release tweets/social copy: draft from changelog, tags, npm/appcast, artifacts — X/Twitter announcements.4---56# Release Tweets78> **Attribution:** Sourced from [steipete/agent-scripts](https://github.com/steipete/agent-scripts) by [Peter Steinberger](https://github.com/steipete).910## When to Use1112- Drafting release tweets or X/Twitter announcements from changelogs13- Writing launch threads or social copy for npm/app releases14- Formatting release notes into tweet-sized announcements1516Use when the user asks for a release tweet, launch tweet, X announcement, release thread, changelog-to-tweet rewrite, or social copy for a shipped version. This skill is about release copy, not cutting the release.1718## Ground The Copy1920- Verify the release target before writing confident copy:21 - Read the relevant `CHANGELOG.md` section or GitHub release notes.22 - Check the tag/release/npm/appcast/artifact state that applies to the project.23 - Distinguish `Unreleased`, beta/prerelease, stable, hotfix, and correction releases.24- Lead with user-visible wins: features, integrations, workflow improvements, install/update reliability, security fixes.25- Avoid leading with CI, coverage, validation, refactors, internal migrations, or release mechanics unless that is the actual story.26- If evidence is incomplete, say what is unverified and draft with softer wording.2728## Launch Tweet Shape2930- One standard tweet under 280 characters, with room for one URL.31- Typical format:32 - product + version33 - blank line34 - 3-4 compact emoji-led feature bullets35 - blank line36 - one short punchline37 - release/changelog URL38- Use emoji bullets by default. Pick clear, low-noise emoji that match the feature or product.39- Tone: high-signal, compact, confident, a little dry when earned. Not corporate.40- One joke max. Let the feature bullets do the work.41- Count final raw characters before presenting it as ready to post.4243## Beta, Hotfix, Correction4445- **Beta/prerelease**: make beta status explicit; avoid implying stable promotion.46- **Hotfix/correction**: be direct and accountable; state what slipped, what is fixed, and the new version; skip jokes unless the user asks for a lighter tone.4748## Threads4950- First agree on the generic launch tweet.51- Then write follow-ups one at a time. When the user says `next`, provide only the next reply.52- Each follow-up should focus on one feature or user workflow.53- Include a docs/release URL for the specific feature when available.54- Good follow-up length: 160-220 raw characters. Hard cap: 280.5556## Quality Pass5758Before final:5960- Character count under 280 for each tweet.61- Exact version string and channel.62- Release URL included when requested or expected.63- No unverified claims.64- No more than 3-4 emoji-led bullets in the launch tweet.65- Concise language; trim filler before trimming facts.6667## Examples6869```text70ProductName 2.1.07172🚀 Feature one, brief description73🔧 Feature two, brief description74🐛 Bug fix summary7576Short memorable punchline.77https://github.com/owner/repo/releases/tag/v2.1.078```7980```text81Hotfix 2.1.1 — fixes install issue from 2.1.0.8283Upgrade via: npm install package@2.1.184https://github.com/owner/repo/releases/tag/v2.1.185```