Skip to content
Back to skills

Rhdh Release Announce

ASecurity

Drafts the Slack message for an RHDH Feature Freeze or Code Freeze — either the milestone announcement sent on the day or the status update sent ahead of it — filling team counts, blocker bugs, CVEs, release notes, feature demos, and Test Day figures from Jira RHIDP and RHDHPLAN. Use for "announce feature freeze", "draft the code freeze message for 1.10", "send the freeze update for 1.11", or "write the freeze post for the release channel".

  • 18 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 3, 2026
toolspythongo

Works with

  • cli

Security analysis

A100/100

Pro scans all 11 files and shows the line behind each finding

Scanned September 3, 2026

npx -y skills add redhat-developer/rhdh-skill --skill rhdh-release-announce --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Rhdh Release Announce?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Rhdh Release Announce
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/redhat-developer-rhdh-release-announce/badge)](https://www.skillsdirectory.com/skills/redhat-developer-rhdh-release-announce)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: rhdh-release-announce
description: >-
  Drafts the Slack message for an RHDH Feature Freeze or Code Freeze — either the
  milestone announcement sent on the day or the status update sent ahead of it —
  filling team counts, blocker bugs, CVEs, release notes, feature demos, and Test
  Day figures from Jira RHIDP and RHDHPLAN. Use for "announce feature freeze",
  "draft the code freeze message for 1.10", "send the freeze update for 1.11", or
  "write the freeze post for the release channel".
compatibility: "Python 3.9+ and uv; acli with a Jira session; gog for team data; an RHIDP Operational Rich Filter export."
---

# RHDH freeze announcements

Produce a Slack message a human posts under their own name. The counts come from
the CLI; the voice must not sound machine-written.

## Delivery boundary

Never post to Slack. This skill hands the user a message to copy; the user
decides whether, when, and where it goes out.

## Route

Load `workflows/freeze-announcement.md`. It maps the four announcements to their
CLI tokens and carries the milestone-versus-update distinction, which is the
thing people get wrong.

## Boundary with the neighbouring skills

- The date a freeze falls on is `/rhdh-release-schedule`.
- The underlying counts, on their own and without a message around them, are
  `/rhdh-release-status`.
- The team roster and Slack handles are `/rhdh-release-teams`.
- Rich Filter configuration lives in `/rhdh-release-status`. When the CLI reports
  a template unavailable, run `uv run scripts/release.py --json check`, follow its
  `next_steps`, and retry. Never substitute a hand-written query for a Rich Filter
  scope.

## Completion

Complete when the message is the edited draft, wrapped in a triple-backtick
block ready to paste, with every placeholder filled and every count carrying a
URL-encoded Jira search link. State which of the four announcements was drafted
and whether it is the milestone or the update, so the sender knows what day it
belongs to. A figure the CLI could not produce is named as missing in the note
beside the draft rather than left as a placeholder or filled with a plausible
number. Say explicitly that nothing was posted.

Files in this skill

  • SKILL.md2.1 KB
  • agents/openai.yaml134 B
  • scripts/_jira.py6.2 KB
  • scripts/_support.py10.9 KB
  • scripts/jql-release.md4.5 KB
  • scripts/jql.py7 KB
  • scripts/release.py43.2 KB
  • scripts/rich_filter.py14.6 KB
  • scripts/slack-templates.md7.1 KB
  • scripts/slack_templates.py3.7 KB
  • workflows/freeze-announcement.md3.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…