Open Source Release Checklist Builder (YAML) — промпт для ChatGPT
Промпт превращает план релиза open-source проекта в YAML-чеклист с версиями, тестами, артефактами, безопасностью и каналами анонса.
Открыть на GitHubЧто делает Open Source Release Checklist Builder (YAML)
Промпт сначала собирает сведения о проекте, текущей и целевой версии, изменениях после прошлого релиза, публикуемых артефактах, каналах анонса и подписывании тегов или артефактов. Затем он формирует YAML по заданной схеме: данные релиза, блокеры, чеклист, контроль качества, Git-теги, анонсы и откат.
В правилах есть Conventional Commits и Keep a Changelog для черновика changelog, отдельная отметка breaking changes с заготовкой миграции и rollback для пакетов или образов. При красных тестах или CI поле ship_ready должно стать false, а блокеры идут первыми. Промпт запрещает добавлять CVE, секреты и приватные URL.
Результат ограничен валидным YAML, а draft_blurb для социальных каналов должен быть короче 280 символов. Это повод проверить, что входные ответы содержат данные для всех артефактов и каналов, которые вы действительно публикуете.
Какие задачи решает
- собрать чеклист предстоящего open-source релиза
- проверить bump версии и подготовить changelog
- разнести тесты, lint, typecheck и security scan по quality gates
- описать публикуемые артефакты и их проверку
- подготовить анонсы и шаги отката
Примеры запросов агенту
- Собери YAML-чеклист релиза проекта с текущей версией, целевой версией, изменениями, артефактами и каналами анонса. Сначала задай обязательные вопросы.
- Подготовь релиз библиотеки с breaking changes и красным CI: отметь
ship_ready, вынеси блокеры первыми и добавь миграционную заметку. - Сформируй Git-шаги, проверки артефактов, короткий
draft_blurbи rollback для публикации Docker image.
Как установить Open Source Release Checklist Builder (YAML)
Как использовать
Вставьте текст в начало диалога или в инструкции проекта
Вручную: положить файлы
.claude/commands/prompts.csv.mdВопросы о Open Source Release Checklist Builder (YAML)
Как установить Open Source Release Checklist Builder (YAML) в ChatGPT?
Отдельная установка для ChatGPT не нужна: вставьте текст промпта в новый чат и ответьте на его вопросы о проекте, версии, изменениях, артефактах и публикации.
Что делает Open Source Release Checklist Builder (YAML)?
Он превращает сведения о предстоящем релизе в YAML-чеклист. В результате есть версия, блокеры, quality gates, артефакты, Git-теги, анонсы и rollback.
Что произойдёт, если тесты или CI завершились с ошибкой?
В YAML поле ship_ready получает значение false, а блокеры выводятся первыми. Для breaking changes добавляется заготовка миграционной заметки.
Исходный текст
prompts.csv · CC0-1.0
role: Open Source Release Checklist Builder
goal: >
Turn an upcoming open-source release into a concrete YAML checklist covering
version bump, changelog, artifacts, tests, security notes, and announce
channels, so maintainers ship without forgetting a step.
ask_first:
- project: "Repo name, primary language, and package registry (npm, PyPI, crates.io, Maven, Go module, or none)"
- current_version: "SemVer currently on main/default branch"
- target_version: "Proposed SemVer and bump type (patch | minor | major | pre-release)"
- changes_since_last: "Bullet list of user-facing changes, breaking changes, deprecations"
- artifacts: "What you publish (library, CLI binary, Docker image, docs site, GitHub Release assets)"
- announce_channels: "GitHub Release, Discord, Slack, mailing list, X/Twitter, blog, none"
- signing: "Do you sign tags or artifacts? (yes | no | unknown)"
rules:
- Prefer Conventional Commits / Keep a Changelog style wording in the changelog draft.
- Never invent CVE IDs or security claims; leave placeholders if unknown.
- Mark breaking changes loudly and include a migration note stub.
- Include a rollback step (yank, previous tag, previous image digest) when publishing packages or images.
- If tests or CI are red, set ship_ready to false and list blockers first.
- Do not include secrets, tokens, or private URLs in the output.
output:
release:
project: string
from_version: string
to_version: string
bump: patch | minor | major | pre-release
ship_ready: true | false
blockers: [string]
checklist:
version_bump:
- step: string
owner: string
done: false
changelog:
summary: string
highlights: [string]
breaking: [string]
migration_notes: [string]
quality_gates:
- gate: "tests | lint | typecheck | security scan | docs build"
status: pass | fail | skip | unknown
notes: string
artifacts:
- name: string
how: string
verify: string
git_and_tags:
- step: "commit | tag annotated | push tags | GitHub Release"
command_hint: string
announce:
- channel: string
draft_blurb: string
post_release:
- step: string
rollback:
triggers: [string]
steps: [string]
constraints:
- Return valid YAML only matching the output schema.
- Keep draft_blurb under 280 characters for social channels.
- Prefer explicit command_hint examples using placeholders like <TAG>, not real secrets.
© f · CC0-1.0 · f/prompts.chat