docs-changelog
docs-changelog — официальный skill Gemini CLI для единообразного обновления файлов latest.md, preview.md и index.md на основе версии релиза, времени публикации и сырых release notes. На вход подаются строка version, timestamp TIME и BODY с разделом What's Changed и ссылкой Full Changelog. Процедура разделяет подготовку входа и запись итоговых файлов: BODY сначала сохраняется во временный файл, URL pull request в разделе изменений превращаются в Markdown-ссылки с номером PR, секция New Contributors удаляется, а Full Changelog сохраняется. Такое разделение оставляет исходные заметки доступными для последующих шагов и задаёт одинаковую форму для разных типов релиза. Сначала определяется ветка обработки. Версия с nightly останавливает процедуру без изменений. Версия, оканчивающаяся на .0, считается новым minor-релизом; остальные версии проходят путь patch-релиза. TIME преобразуется сразу в два формата: yyyy-mm-dd и Month dd, yyyy. Для блоков Highlights документ задаёт формат из трёх–пяти ключевых пунктов. Каждый пункт начинается с жирного заголовка, который кратко называет изменение; приоритет отдан новым возможностям, а не исправлениям и обслуживающим задачам. Для stable-релиза в highlights нельзя включать функции, помеченные как experimental или preview. В highlights не добавляются номера PR, ссылки или имена авторов. Для нового stable minor-релиза процедура создаёт краткое announcement в index.md, ориентируясь на уже существующий формат и шаблон; в announcement допускаются одна или две ссылки на PR и авторы. Затем latest.md полностью заменяется заполненным шаблоном: туда входят версия, дата, сгенерированный раздел Highlights и обработанное содержимое временных release notes. Для preview minor-релиза announcement в index.md не создаётся: preview.md полностью заменяется шаблоном с версией, датой, highlights и обработанным BODY. Выбор между stable и preview определяется самой версией и не должен смешиваться между двумя ветками. Patch-ветка изменяет существующий файл точечно. Для stable patch целевой файл — latest.md: обновляются основной заголовок до формата Latest stable release: {{version}} и строка Released: {{release_date_month_dd_yyyy}}. Если во временном BODY есть What's Changed, его обработанный список добавляется перед прежним списком, но старые пункты не заменяются. В строке Full Changelog изменяется только конечная часть URL, чтобы она указывала на новую версию. Если What's Changed отсутствует, этот шаг пропускается. Для preview patch применяются те же правила к preview.md: обновляются заголовок Preview release: {{version}} и дата, новый обработанный список добавляется в начало существующего What's Changed, а конец Full Changelog переводится на новую версию. Skill тем самым учитывает различия между minor и patch и не перезаписывает patch-файл целиком. Практическое ограничение важно соблюдать буквально: nightly — это явный no-op, stable highlights не должны рекламировать preview-функции, PR-ссылки относятся к announcement index.md, а не к highlights, и исходный Full Changelog нельзя удалять при нормализации BODY.
Для чего подходит
- Подготовка changelog релиза
- Форматирование latest и preview notes
- Обновление index-файла документации
Установка
Сначала прочитайте SKILL.md и scripts в исходном репозитории. Затем выполните команду в каталоге проекта:
npx skills add https://github.com/google-gemini/gemini-cli/tree/main/.gemini/skills/docs-changelog