docs-changelog

>-

google-gemini/gemini-cli1.2k installsApache-2.0Synced Aug 27

Works with

Claude CodeCursorCodex CLIGitHub CopilotGemini CLI
---
name: docs-changelog
description: >-
license: Apache-2.0
---

# Procedure: Updating Changelog for New Releases

## Objective

To standardize the process of updating changelog files (`latest.md`,
`preview.md`, `index.md`) based on automated release information.

## Inputs

- **version**: The release version string (e.g., `v0.28.0`,
  `v0.29.0-preview.2`).
- **TIME**: The release timestamp (e.g., `2026-02-12T20:33:15Z`).
- **BODY**: The raw markdown release notes, containing a "What's Changed"
  section and a "Full Changelog" link.

## Guidelines for `latest.md` and `preview.md` Highlights

- Aim for **3-5 key highlight points**.
- Each highlight point must start with a bold-typed title that summarizes the
  change (e.g., `**New Feature:** A brief description...`).
- **Prioritize** summarizing new features over other changes like bug fixes or
  chores.
- **Avoid** mentioning features that are "experimental" or "in preview" in
  Stable Releases.
- **DO NOT** include PR numbers, links, or author names in these highlights.
- Refer to `.gemini/skills/docs-changelog/references/highlights_examples.md`
  for the correct style and tone.

## Initial Processing

1.  **Analyze Version**: Determine the release path based on the `version`
    string.
    - If `version` contains "nightly", **STOP**. No changes are made.
    - If `version` ends in `.0`, follow the **Path A: New Minor Version**
      procedure.
    - If `version` does not end in `.0`, follow the **Path B: Patch Version**
      procedure.
2.  **Process Time**: Convert the `TIME` input into two formats for later use:
    `yyyy-mm-dd` and `Month dd, yyyy`.
3.  **Process Body**:
    - Save the incoming `BODY` content to a temporary file for processing.
    - In the "What's Changed" section of the temporary file, reformat all pull
      request URLs to be markdown links with the PR number as the text (e.g.,
      `[#12345](URL)`).
    - If a "New Contributors" section exists, delete it.
    - Preserve the "**Full Changelog**" link. The processed content of this
      temporary file will be used in subsequent steps.

---

## Path A: New Minor Version

*Use this path if the version number ends in `.0`.*

**Important:** Based on the version, you must choose to follow either section
A.1 for stable releases or A.2 for preview releases. Do not follow the
instructions for the other section.

### A.1: Stable Release (e.g., `v0.28.0`)

For a stable release, you will generate two distinct summaries from the
changelog: a concise **announcement** for the main changelog page, and a more
detailed **highlights** section for the release-specific page.

1.  **Create the Announcement for `index.md`**:
    -   Generate a concise announcement summarizing the most important changes.
        Each announcement entry must start with a bold-typed title that
        summarizes the change.
    -   **Important**: The format for this announcement is unique. You **must**
        use the existing announcements in `docs/changelogs/index.md` and the
        example within
        `.gemini/skills/docs-changelog/references/index_template.md` as your
        guide. This format includes PR links and authors. Stick to 1 or 2 PR
        links and authors.
    -   Add this new announcement to the top of `docs/changelogs/index.md`.

2.  **Create Highlights and Update `latest.md`**:
    -   Generate a comprehensive "Highlights" section, following the guidelines
        in the "Guidelines for `latest.md` and `preview.md` Highlights" section
        above.
    -   Take the content from
        `.gemini/skills/docs-changelog/references/latest_template.md`.
    -   Populate the template with the `version`, `release_date`, generated
        `highlights`, and the processed content from the temporary file.
    -   **Completely replace** the contents of `docs/changelogs/latest.md` with
        the populated template.

### A.2: Preview Release (e.g., `v0.29.0-preview.0`)

1.  **Update `preview.md`**:
    -   Generate a comprehensive "Highlights" section, following the highlight
        guidelines.
    -   Take the content from
        `.gemini/skills/docs-changelog/references/preview_template.md`.
    -   Populate the template with the `version`, `release_date`, generated
        `highlights`, and the processed content from the temporary file.
    -   **Completely replace** the contents of `docs/changelogs/preview.md`
        with the populated template.

---

## Path B: Patch Version

*Use this path if the version number does **not** end in `.0`.*

**Important:** Based on the version, you must choose to follow either section
B.1 for stable patches or B.2 for preview patches. Do not follow the
instructions for the other section.

### B.1: Stable Patch (e.g., `v0.28.1`)

- **Target File**: `docs/changelogs/latest.md`
- Perform the following edits on the target file:
    1.  Update the version in the main header. The line should read,
        `# Latest stable release: {{version}}`
    2.  Update the rease date. The line should read,
        `Released: {{release_date_month_dd_yyyy}}`
    3.  Determine if a "What's Changed" section exists in the temporary file
        If so, continue to step 4. Otherwise, skip to step 5.
    4.  **Prepend** the processed "What's Changed" list from the temporary file
        to the existing "What's Changed" list in `latest.md`. Do not change or
        replace the existing list, **only add** to the beginning of it.
    5.  In the "Full Changelog", edit **only** the end of the URL. Identify the
        last part of the URL that looks like `...{previous_version}` and update
        it to be `...{version}`.

        Example: assume the patch version is `v0.29.1`. Change
        `Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.28.2…v0.29.0`
        to
        `Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.28.2…v0.29.1`

### B.2: Preview Patch (e.g., `v0.29.0-preview.3`)

- **Target File**: `docs/changelogs/preview.md`
- Perform the following edits on the target file:
    1.  Update the version in the main header. The line should read,
        `# Preview release: {{version}}`
    2.  Update the rease date. The line should read,
        `Released: {{release_date_month_dd_yyyy}}`
    3.  Determine if a "What's Changed" section exists in the temporary file
        If so, continue to step 4. Otherwise, skip to step 5.
    4.  **Prepend** the processed "What's Changed" list from the temporary file
        to the existing "What's Changed" list in `preview.md`. Do not change or
        replace the existing list, **only add** to the beginning of it.
    5.  In the "Full Changelog", edit **only** the end of the URL. Identify the
        last part of the URL that looks like `...{previous_version}` and update
        it to be `...{version}`.

        Example: assume the patch version is `v0.29.0-preview.1`. Change
        `Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.28.2…v0.29.0-preview.0`
        to
        `Full Changelog: https://github.com/google-gemini/gemini-cli/compare/v0.28.2…v0.29.0-preview.1`

---

## Finalize

- After making changes, if `npm run format` fails, it may be necessary to run
  `npm install` first to ensure all formatting dependencies are available.
  Then, run `npm run format` to ensure consistency.
- Delete any temporary files created during the process.

More Writing & Documentation skills

paper-context-resolver

lllllllama/rigorpilot-skills

Rigor Paper Context helper for README-first deep learning repo reproduction. Use only when the README and repository files leave a narrow reproduction-critical gap and the task is to resolve a specific paper detail such as dataset split, preprocessing, evaluation protocol, checkpoint mapping, or runtime assumption from primary paper sources while recording conflicts. Do not use for general paper summary, repo scanning, environment setup, command execution, title-only paper lookup, or replacing README guidance by default.

450.8k

repo-intake-and-plan

lllllllama/rigorpilot-skills

Rigor Intake helper for README-first deep learning repo reproduction. Use when the task is specifically to scan a repository, read the README and common project files, extract documented commands, classify inference, evaluation, and training candidates, and return the smallest trustworthy reproduction plan to the main orchestrator. Do not use for environment setup, asset download, command execution, final reporting, paper lookup, or end-to-end orchestration.

450.0k

minimal-run-and-audit

lllllllama/rigorpilot-skills

Rigor Run skill for README-first deep learning repo reproduction. Use when the task is specifically to capture or normalize evidence from the selected smoke test or documented inference or evaluation command and write standardized `repro_outputs/` files, including patch notes when repository files changed. Do not use for training execution, initial repo intake, generic environment setup, paper lookup, target selection, hidden scientific-meaning changes, or end-to-end orchestration by itself.

449.9k

← All Writing & Documentation skills

Check your AI visibility

One URL in, a 0–100 score and the exact fixes out.

RUN THE CHECK

Browse all the tools

15 tools across six categories
13 of them never send your data anywhere

Free · No signup · No trial clock

SEE THE DIRECTORY