Agent skill

Release Announcement

by paperclipai in paperclipai/paperclip

Write a release announcement — changelog, blog post, in-app note, or social post — that leads with user impact, names the audience, and includes upgrade/migration steps without filler.

MITAuto-check passedDevelopment

Install Release Announcement

skills CLI
$ npx skills add paperclipai/paperclip --skill release-announcement -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install paperclipai/paperclip release-announcement --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/paperclipai/paperclip.git skills-src && mkdir -p .claude/skills && cp -r skills-src/packages/skills-catalog/catalog/optional/content/release-announcement .claude/skills/release-announcement && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
release-announcement
GitHub stars
100k
Token cost
~1.7k tokens
SKILL.md length
654 words
Files
1
Skills in repo
60
Repo updated
First seen
Licence
MIT

At a glance

Write a release announcement — changelog, blog post, in-app note, or social post — that leads with user impact, names the audience, and includes upgrade/migration steps without filler.

  • Works in 3 steps: What changed. One sentence in the user's… → Who it affects. Which user role / use… → What to do. Migrate now / opt-in / no…
  • Tasks that involve Changelog and release notes
  • SKILL.md covers When to use, When not to use, Paperclip Cases output and Determine the audience and…, plus 5 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Release Announcement is an agent skill from paperclipai/paperclip. Write a release announcement — changelog, blog post, in-app note, or social post — that leads with user impact, names the audience, and includes upgrade/migration steps without filler.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Changelog and release notes, Blog and article writing and Social media posts. The repository describes itself as: The open-source app everyone uses to manage agents at work. The licence is MIT.

When your agent uses it

  • Tasks that involve Changelog and release notes
  • Tasks that involve Blog and article writing
  • Tasks that involve Social media posts

Example prompts

  • “/release-announcement”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. What changed. One sentence in the user's vocabulary.
  2. Who it affects. Which user role / use case.
  3. What to do. Migrate now / opt-in / no action needed.

What it can do on your machine

Read from SKILL.md and the folder at commit de9ab8e. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are json and markdown).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Release Announcement loads about 1.7k tokens when it runs. Until then it costs about 51 tokens; SKILL.md has 654 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~51
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from paperclipai/paperclip at commit de9ab8e, republished under its MIT licence (© paperclipai). 654 words, ~1,732 tokens.

Download SKILL.mdSave it as .claude/skills/release-announcement/SKILL.md (or your agent's skills folder).
name
release-announcement
description
Write a release announcement — changelog, blog post, in-app note, or social post — that leads with user impact, names the audience, and includes upgrade/migration steps without filler.
key
paperclipai/optional/content/release-announcement
recommendedForRoles
devrel, product, writer
tags
release, changelog, announcement, communication

Release Announcement

Write the channel-appropriate announcement for a release without churn. Different surfaces need different shapes: a changelog entry is not a blog post is not a social card. The bar is: a reader of the chosen surface can decide in under 30 seconds whether this release affects them, and if so what to do.

When to use

  • A version, feature, or fix is shipping and needs writeup for at least one surface.
  • A previously private feature is going GA.
  • A breaking change needs broadcast before users hit it.

When not to use

  • An internal-only change with no user impact. Update internal docs; do not announce.
  • The release is incomplete (still in active development). Wait until it ships, even if marketing wants the post.

Paperclip Cases output

When this skill runs inside Paperclip and experimental.enableCases is enabled, emit durable release-content cases before handing off the copy. Cases preserve the inspectable output; the issue coordinates the work.

Use skills/paperclip/references/cases.md for the API contract. Include X-Paperclip-Run-Id on writes when PAPERCLIP_RUN_ID is set. If the API returns 403 Cases are disabled, report that limitation and continue with the requested copy artifact.

Upsert the parent release case first when it does not already exist:

json
{
  "caseType": "release",
  "key": "paperclip-release:vYYYY.MDD.P",
  "title": "Paperclip vYYYY.MDD.P release",
  "status": "in_progress",
  "fields": {
    "schema_version": 1,
    "version": "vYYYY.MDD.P",
    "release_date": "YYYY-MM-DD",
    "release_patch": 0,
    "stable": true,
    "channels": ["blog_post", "tweet_storm"],
    "artifacts": {
      "changelog_path": "releases/vYYYY.MDD.P.md",
      "publish_url": null
    }
  }
}

For a dev blog, upsert a child case with parentCaseId set to the release case:

json
{
  "caseType": "blog_post",
  "key": "paperclip-release:vYYYY.MDD.P:blog-post",
  "title": "Paperclip vYYYY.MDD.P launch post",
  "status": "in_review",
  "parentCaseId": "<release-case-id>",
  "fields": {
    "schema_version": 1,
    "version": "vYYYY.MDD.P",
    "slug": "paperclip-vYYYY-MDD-P",
    "word_count_target": 650,
    "target_audience": ["operators", "developers"],
    "requires_screenshot": false,
    "links": {
      "release_notes": "releases/vYYYY.MDD.P.md",
      "publish_url": null
    },
    "sections": ["hook", "whats_new", "upgrade", "whats_next"]
  }
}

For social output, upsert a sibling child case:

json
{
  "caseType": "tweet_storm",
  "key": "paperclip-release:vYYYY.MDD.P:tweet-storm",
  "title": "Paperclip vYYYY.MDD.P tweet storm",
  "status": "in_review",
  "parentCaseId": "<release-case-id>",
  "fields": {
    "schema_version": 1,
    "version": "vYYYY.MDD.P",
    "post_count": 1,
    "channel": "x",
    "target_audience": ["operators", "contributors"],
    "links": {
      "release_notes": "releases/vYYYY.MDD.P.md",
      "publish_url": null
    },
    "review": {
      "needs_human_copy_paste": true,
      "approved_by": null
    }
  }
}

Write the produced copy to PUT /api/cases/:caseId/documents/body with format: "markdown" and a changeSummary. Fetch the latest document revision and pass baseRevisionId when updating an existing body document.

Determine the audience and channel first

AudienceBest channelTone
Existing power usersChangelog, in-app noteTerse, factual, links
Engineering teams adopting your APIRelease notes, dev blogExamples, migration steps, version pins
Prospective customersLanding page, marketing blogStory arc, problem → solution, social proof
Broad audienceSocial post, email newsletterOne-sentence pitch, link to depth
Internal teamSlack/Discord postWhat changed, who to ping if it breaks

Pick the audience for this writeup. One release often needs several writeups; do not blend them.

Universal structure

Whatever the channel, lead with:

  1. What changed. One sentence in the user's vocabulary.
  2. Who it affects. Which user role / use case.
  3. What to do. Migrate now / opt-in / no action needed.

Everything else is depth that supports those three.

Channel templates

Changelog entry (terse)
md
## v1.42.0 — 2026-05-26

### Added
- <feature> — <one-line user benefit>. ([#1234](link))

### Changed
- <change> — <one-line impact>. ([#1235](link))

### Fixed
- <bug> — <one-line user-visible symptom>. ([#1236](link))

### Deprecated
- <thing>. Replaced by <thing>. Removal planned for v<x>.

### Breaking
- <change>. **Migration:** <one-line> or <link to guide>.
Show full SKILL.md (272 more words)Show less
Release notes (for adopters)

Same as changelog, plus:

  • Migration guide section with before/after code.
  • Compatibility table (versions, runtimes, OS).
  • Known issues and workarounds.
  • Acknowledgements (contributors, reporters of fixed bugs).
Dev blog post (300–800 words)
  • Hook (1 paragraph): the problem the release solves, in a real-world scenario.
  • What's new (3–5 bullets with sub-paragraphs): features, with one code or screenshot example each.
  • Upgrade (1 paragraph): how to upgrade, what to check.
  • What's next: one sentence about the next direction. Avoid promises.
In-app note
  • 1 sentence.
  • 1 link.
  • Dismiss after seen.
Social post
  • 1 sentence pitch.
  • 1 link.
  • 1 image or short clip.
  • No threadbait. If it needs a thread, write a blog post instead.

Writing rules

  • Lead with the user, not the team. You can now export to CSV beats We've added CSV export.
  • Numbers beat adjectives. 60% faster cold start beats much faster. Cite the methodology.
  • Show, don't just tell. One code snippet, one screenshot — more is noise.
  • Date the post. Undated release content rots fastest.
  • Link the migration path explicitly. Do not bury it.
  • Mark breaking changes with **Breaking:** prefix. Repeat in the email/social channel.

Avoid

  • "We are excited to announce" filler.
  • Lists of changes that mix user-visible and internal items.
  • Marketing claims without a way to verify.
  • Promised dates for unshipped work.
  • Pre-announcing something the team has not yet committed to ship.

Post-publish checklist

  • Changelog is in source control alongside the release.
  • Blog post date matches actual ship date.
  • All links work (release tag, PRs, docs sections).
  • Breaking changes are also in the upgrade guide, not only the post.
  • Internal team is notified before the public post goes live, not after.

© paperclipai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in packages/skills-catalog/catalog/optional/content/release-announcement of paperclipai/paperclip.

Open the folder on GitHubat commit de9ab8e

Compare with similar skills

Release Announcement next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Release Announcement compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Release Announcement this skillpaperclipai/paperclip100k—~1.7kAutomated safety check: PassMIT
Release Screenshotschmonitor/chmonitor300—~1.7kAutomated safety check: PassGPL-3.0
Docs Writerstrands-agents/harness-sdk8.8k—~2kAutomated safety check: PassApache-2.0
Noodle Releasewilfredinni/noodle367—~2kAutomated safety check: PassApache-2.0
Changelogcloudposse/atmos1.4k—~2.7kAutomated safety check: PassApache-2.0
Reddit Post Writercaptainflasmr/ollama-buddy103—~1.4kAutomated safety check: PassGPL-3.0

Similar skills

  • Release Screenshots

    chmonitor/chmonitor

    Capture, pick, and design the screenshots for a chmonitor release: blog release posts, the landing changelog, What's new, and social posts.

    300 GitHub stars~1.7k tokensUpdated 5 days ago
    Writing & ContentAuto-check passed
  • Docs Writer

    strands-agents/harness-sdk

    Draft or rewrite Strands Agents documentation pages. An agent skill from strands-agents/harness-sdk.

    8.8k GitHub stars~2k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Noodle Release

    wilfredinni/noodle

    Prepare a versioned Noodle release by updating package.json, inspecting changes since the latest tag, auditing every repository-maintained skill, synchronizing affected README, AGENTS.md, tests…

    367 GitHub stars~2k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Changelog

    cloudposse/atmos

    Blog post authoring for Atmos: MDX template, frontmatter, website/blog/tags.yml and authors.yml rules, problem-first framing, backtick-opening ban, optional cast embeds, and no-Go-internals leakage.

    1.4k GitHub stars~2.7k tokensUpdated today
    DevelopmentAuto-check passed
  • Reddit Post Writer

    captainflasmr/ollama-buddy

    Write an r/emacs Reddit post in James Dyer's voice for announcing or discussing an Emacs package.

    103 GitHub stars~1.4k tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Avoid AI Writing

    wshobson/agents

    Audit and rewrite prose so it stops reading as machine-generated.

    40k GitHub stars~1.9k tokensUpdated 6 days ago
    DevelopmentAuto-check passed

More from paperclipai/paperclip

All 60 skills in this repo
  • Garden Inbox

    paperclipai/paperclip

    Scan a Paperclip user's Mine inbox, classify reversible archive candidates, request checkbox confirmation, and archive only accepted selections.

    100k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Paperclip

    paperclipai/paperclip

    Interact with the Paperclip control plane API for task coordination and governance.

    100k GitHub stars~9.6k tokensUpdated today
    Auto-check passed
  • Paperclip

    paperclipai/paperclip

    A skill your agent uses for Paperclip-managed tasks and heartbeats: reading task context, delivering task documents or files, updating completion or blockers, coordinating or delegating work, and…

    100k GitHub stars~18k tokensUpdated today
    Auto-check passed
  • Design Guide

    paperclipai/paperclip

    Paperclip UI design system guide for building consistent, reusable frontend components.

    100k GitHub starsUsed in 1 repo~3.1k tokens
    Auto-check passed
  • Paperclip Page

    paperclipai/paperclip

    Publish static HTML pages and asset folders to the Paperclip S3/CloudFront page host.

    100k GitHub stars~1k tokensUpdated today
    Auto-check passed
  • Paperclip Create Agent

    paperclipai/paperclip

    Create new agents in Paperclip with governance-aware hiring.

    100k GitHub starsUsed in 1 repo~2.1k tokens
    Auto-check passed

Questions about Release Announcement

What does Release Announcement do?

Write a release announcement — changelog, blog post, in-app note, or social post — that leads with user impact, names the audience, and includes upgrade/migration steps without filler. Release Announcement is an agent skill from paperclipai/paperclip. Write a release announcement — changelog, blog post, in-app note, or social post — that leads with user impact, names the audience, and includes upgrade/migration steps without filler.

When should I use Release Announcement?

Release Announcement fits situations like: tasks that involve Changelog and release notes; tasks that involve Blog and article writing; tasks that involve Social media posts.

How do I install Release Announcement in Claude Code?

Run `npx skills add paperclipai/paperclip --skill release-announcement -a claude-code`. Or copy the skill folder (packages/skills-catalog/catalog/optional/content/release-announcement in paperclipai/paperclip) into .claude/skills/release-announcement in your project. Claude Code loads it when a task matches its description.

How do I install Release Announcement in Codex?

Run `npx skills add paperclipai/paperclip --skill release-announcement -a codex`. Or copy the skill folder (packages/skills-catalog/catalog/optional/content/release-announcement in paperclipai/paperclip) into .agents/skills/release-announcement in your project. Codex loads it when a task matches its description.

Can I use Release Announcement in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add paperclipai/paperclip --skill release-announcement -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/release-announcement, .gemini/skills/release-announcement, .github/skills/release-announcement and .opencode/skills/release-announcement in your project.

What does Release Announcement need to run?

SKILL.md names no scripts, command-line tools or credentials: Release Announcement is instructions for the agent only.

Does Release Announcement access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Release Announcement safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Release Announcement use?

Release Announcement is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Release Announcement use?

About 1.7k tokens (SKILL.md is roughly 6.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Release Announcement?

Skills that share tags, products or a category with Release Announcement: Release Screenshots (chmonitor/chmonitor, 300 stars), Docs Writer (strands-agents/harness-sdk, 8.8k stars), Noodle Release (wilfredinni/noodle, 367 stars) and Changelog (cloudposse/atmos, 1.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Release Announcement?

paperclipai (a GitHub organization) maintains it in paperclipai/paperclip, which has 99,905 GitHub stars. The repository holds 60 skills in this directory. The repository was last updated on October 11, 2026.

Source: paperclipai/paperclip on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.