Agent skill

Mariadb Operator Release Notes

by mariadb-operator in mariadb-operator/mariadb-operator

Create the release notes and upgrade guide for a mariadb-operator release.

Apache-2.0Auto-check passedDevelopment

Install Mariadb Operator Release Notes

skills CLI
$ npx skills add mariadb-operator/mariadb-operator --skill mariadb-operator-release-notes -a claude-code

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

GitHub CLI
$ gh skill install mariadb-operator/mariadb-operator mariadb-operator-release-notes --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/mariadb-operator/mariadb-operator.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/mariadb-operator-release-notes .claude/skills/mariadb-operator-release-notes && 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
mariadb-operator-release-notes
GitHub stars
1k
Token cost
~3.3k tokens
SKILL.md length
1,195 words
Files
1
Skills in repo
3
Repo updated
First seen
Licence
Apache-2.0

At a glance

Create the release notes and upgrade guide for a mariadb-operator release.

  • Works in 7 steps: Gather the input → Read the included PRs → Group into sections → …
  • The user wants release notes
  • SKILL.md covers How release notes are built, GitHub credentials, Step 0 — Gather the input and Step 1 — Read the included PRs, plus 6 more sections
  • Calls git and gh; needs GH_TOKEN and GITHUB_MARIADB_OPERATOR_TOKEN

What it does

Mariadb Operator Release Notes is an agent skill from mariadb-operator/mariadb-operator. Create the release notes and upgrade guide for a mariadb-operator release. Given the release PR whose body lists every PR included in the release, it gathers each PR, groups the changes by relevance, and produces docs/releases/RELEASE<versionHEADER.md.gotmpl and docs/releases/UPGRADE<version.md in the format the previous releases use, then opens a PR targeting release-<version. If no release PR is provided it asks for the new version and infers the changes from git history since the last tag. Use whenever the…

Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Requires the project-scoped GitHub MCP server (gh CLI as fallback) and the mariadb-operator repository checkout.

It sits in Development, covering Changelog and release notes and Code migrations. It works with MariaDB, GitHub, Kubernetes and Model Context Protocol. The repository describes itself as: 🦭 Run and operate MariaDB in a cloud native way. The licence is Apache-2.0.

When your agent uses it

  • The user wants release notes
  • An upgrade/update guide
  • Docs for a new mariadb-operator version — create the release notes for 26.10.0
  • Write the upgrade guide

Example prompts

  • “create the release notes for 26.10.0”
  • “write the upgrade guide”
  • “document this release”
  • “/mariadb-operator-release-notes”

Requirements

  • Docker
  • A credential in GITHUB_MARIADB_OPERATOR_TOKEN
  • Compatibility (from SKILL.md): Requires the project-scoped GitHub MCP server (gh CLI as fallback) and the mariadb-operator repository checkout.
  • Pre-approved tools (allowed-tools): Read, Grep, Glob, Write, Edit, WebSearch, Bash(git:*), Bash(gh:*)

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Gather the input
  2. Read the included PRs
  3. Group into sections
  4. Write the release notes header
  5. Write the upgrade guide
  6. Verify before pushing
  7. Deliver as a PR

What it can do on your machine

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

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Grep
    • Glob
    • Write
    • Edit
    • WebSearch
    • Bash(git:*)
    • Bash(gh:*)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • gh

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

  • Network

    No URLs in SKILL.md. Its commands use git and gh, which can reach the network depending on how they are called.

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

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • GH_TOKEN
    • GITHUB_MARIADB_OPERATOR_TOKEN

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

  • Compatibility

    Requires the project-scoped GitHub MCP server (gh CLI as fallback) and the mariadb-operator repository checkout.

    From compatibility in the SKILL.md frontmatter.

Context cost

Mariadb Operator Release Notes loads about 3.3k tokens when it runs. Until then it costs about 205 tokens; SKILL.md has 1,195 words of instructions outside code blocks.

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

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 mariadb-operator/mariadb-operator at commit e071201, republished under its Apache-2.0 licence (© mariadb-operator). 1,195 words, ~3,251 tokens.

Download SKILL.mdSave it as .claude/skills/mariadb-operator-release-notes/SKILL.md (or your agent's skills folder).
name
mariadb-operator-release-notes
description
Create the release notes and upgrade guide for a mariadb-operator release. Given the release PR whose body lists every PR included in the release, it gathers each PR, groups the changes by relevance, and produces `docs/releases/RELEASE_<version>_HEADER.md.gotmpl` and `docs/releases/UPGRADE_<version>.md` in the format the previous releases use, then opens a PR targeting `release-<version>`. If no release PR is provided it asks for the new version and infers the changes from git history since the last tag. Use whenever the user wants release notes, an upgrade/update guide, or docs for a new mariadb-operator version — "create the release notes for 26.10.0", "write the upgrade guide", "document this release", "prepare the release PR docs" — even if they don't mention a release PR.
allowed-tools
Read, Grep, Glob, Write, Edit, WebSearch, Bash(git:*), Bash(gh:*)
compatibility
Requires the project-scoped GitHub MCP server (gh CLI as fallback) and the mariadb-operator repository checkout.
license
Apache-2.0
metadata.author
mariadb-operator
metadata.version
1.1

mariadb-operator Release Notes

Produce the two release documentation artifacts for a new version and deliver them as a PR against the release branch:

  • docs/releases/RELEASE_<version>_HEADER.md.gotmpl — the release notes header
  • docs/releases/UPGRADE_<version>.md — the upgrade guide

How release notes are built

.github/workflows/release.yml runs goreleaser on the release tag. It looks for docs/releases/RELEASE_${VERSION}_HEADER.md.gotmpl (falling back to the generic RELEASE_HEADER.md.gotmpl) and prepends its rendered content to the auto-generated "What's Changed" changelog. Consequences:

  • The filename must match the tag exactly: tag 26.10.0 → RELEASE_26.10.0_HEADER.md.gotmpl.
  • The header is a template: use {{ .ProjectName }} for the project name, never hardcode it.
  • Do not write a full commit/PR changelog in the header — goreleaser appends the complete one. The header carries the narrative: highlights grouped into sections, each item linking its PR.
  • Verify the exact tag-to-file lookup in .github/workflows/release.yml before relying on it.

GitHub credentials

All GitHub calls in the Step sections below use the project-scoped GitHub MCP tools (mcp__github-mariadb-operator__*). If that server isn't connected, fall back in order: gh CLI with the project token (GH_TOKEN="$GITHUB_MARIADB_OPERATOR_TOKEN" gh ..., not the ambient gh auth session), then the generic mcp__github__* tools, then plain gh auth.


Step 0 — Gather the input

Preferred input: the release PR. The user provides the release PR (titled Release <version>, head branch release-<version>, base main). Its body is the ordering and scope authority: it lists every PR in the release, typically grouped by where it merged ("merged into main", "merged into this branch").

Fetch it with the GitHub MCP server:

  • mcp__github-mariadb-operator__pull_request_read(method="get", owner="mariadb-operator", repo="mariadb-operator", pullNumber=<release-pr>) → title, body, headRefName, baseRefName

Parse the body into the list of PR links included in the release. By the time release notes are written, every listed PR is expected to be merged — re-check the release PR body for the current state rather than trusting a status that was recorded earlier in the conversation.

Fallback: no release PR provided. Ask the user for the new version to release (e.g. 26.10.0). Then infer the change set from git history:

bash
git fetch --tags origin main release-<version>
LAST_TAG=$(git describe --tags --abbrev=0 release-<version> 2>/dev/null || git describe --tags --abbrev=0 origin/main)
git log --oneline ${LAST_TAG}..origin/release-<version>                 # what changed
git log --merges --pretty='%h %s' ${LAST_TAG}..origin/release-<version> # merge commits → PRs

Map merge commits back to PR numbers (commit subjects and the pull/ refs in commit bodies), and confirm the release-<version> branch exists on the remote before proceeding. If the history is ambiguous (squashed merges, rebases), say so and list the commits you could not attribute to a PR.

Step 1 — Read the included PRs

For every PR in the release, fetch:

  • mcp__github-mariadb-operator__pull_request_read(method="get", owner="mariadb-operator", repo="mariadb-operator", pullNumber=<n>) → title, body, author, state

Classify each: feature (new capability, new spec field), bugfix, improvement (perf, tooling, CI), docs, or toolchain (dependency/tool bumps).

Record the author (user.login) and whether head.repo is a fork: a PR authored from a fork by someone who is not a maintainer is a community contribution and gets credited in the notes (Step 2). Also read the body for co-authors the PR itself credits — they get credited too.

Then determine the data-plane impact, which decides the upgrade guide content:

bash
git diff --stat ${LAST_TAG}..origin/release-<version> -- \
  cmd/init cmd/agent pkg/controller/replication/config.go pkg/galera/config \
  pkg/environment pkg/builder/container_builder.go pkg/command

Any change here (agent/init behavior, rendered config, env vars, backup/restore CLIs, default images) means the data-plane must be updated to the new version. Also check whether the release bumps the default MariaDB image (RELATED_IMAGE_MARIADB_VERSION in the Makefile) — that belongs in the notes.

Step 2 — Group into sections

Map the PRs into logical groups sorted by relevance (biggest user-facing features first). Typical section lineup for this project — use only the ones that have content:

  • MariaDB <X.Y> support — new default server version, compatibility changes
  • Replication topologies — HA orchestration changes (switchovers, failovers, semi-sync, GTID handling, read_only)
  • Galera improvements — clustering changes
  • Backups — backup/restore/PITR features
  • Bugfixes — user-visible fixes
  • Improvements — observability, docs, CI, toolchain

Every item is one bullet naming the concrete change, why it matters, and a PR link: - Fixed X that could Y ([#1234](https://github.com/mariadb-operator/mariadb-operator/pull/1234)). Stop at the change: one or two sentences, no forensics.

Group by what the reader experiences, not by which PR shipped it: one PR can contribute bullets to two sections (e.g. a Galera fix plus a generic backup-args fix), and a section must not collect items that don't belong to its topic.

Credit community contributions inline, following the convention of previous headers:

  • Headline feature driven by a contributor → a closing line in its section: Kudos to @handle for driving this feature end to end!
  • Everything else → appended to the bullet's PR link: ([#1234](...), thanks @handle!).
  • Credit the PR author and any co-author the PR credits; never credit maintainers this way. Handles are taken verbatim from user.login.
Show full SKILL.md (483 more words)Show less

Step 3 — Write the release notes header

Write docs/releases/RELEASE_<version>_HEADER.md.gotmpl, following the most recent version's header as the template (read docs/releases/RELEASE_<previous>_HEADER.md.gotmpl first). Structure:

markdown
**`{{ .ProjectName }}` [<zero-padded short version>](https://github.com/mariadb-operator/mariadb-operator/releases/tag/<version>) is here!** 🦭

<enthusiastic open-source intro; highlight any milestones the user provides, e.g. star count, Docker pulls —
never invent numbers>
<community thank-you paragraph, pointing at the inline credits in the sections below>

If you're upgrading from previous versions, __do not miss the [UPGRADE GUIDE](https://github.com/mariadb-operator/mariadb-operator/blob/main/docs/releases/UPGRADE_<version>.md)__ for a smooth transition.

## <feature section>
...

## Bugfixes
...

## Improvements
...

---

## Community
<same adopters/stars paragraph as previous releases>

## Enterprise
<same Enterprise Operator paragraph as previous releases>

Formatting rules (these are the review corrections — apply them up front):

  • Version forms differ by context: the title link text is zero-padded (26.10 for 26.10.0), the releases/tag/ link is not. Keep the two forms consistent with the previous release's header.
  • Every link in the header must be absolute (https://github.com/mariadb-operator/mariadb-operator/blob/main/docs/<doc>.md). The header is rendered on the GitHub releases page, where relative links such as ./replication.md resolve against the release URL and 404. Anchors (#section) must exist in the target doc — grep its headings.
  • New spec fields: verify the exact field name and enum values against api/v1alpha1/ on the release branch before writing them — wrong field names in release notes ship to every reader.
  • A YAML example may accompany a headline feature, mirroring the style of the previous header.

Step 4 — Write the upgrade guide

Write docs/releases/UPGRADE_<version>.md, copying the previous guide's structure:

markdown
# <zero-padded short version> update guide

This guide illustrates, step by step, how to update to `<version>` from previous versions. This guide only
applies if you are updating from a version prior to `<zero-padded>x`, otherwise you may upgrade directly
(see [Helm](../helm.md#updates))

> [!TIP]  (OCI-based installation — same block as previous guides)
> [!CAUTION]  (mariadb-operator-crds in-place upgrade — same block as previous guides)

- The [data-plane](../data_plane.md) must be updated ... `updateStrategy.autoUpdateDataPlane=true` diff block
- Upgrade `mariadb-operator-crds` then `mariadb-operator` helm chart to `<version>` (bash blocks)
- Consider reverting `updateStrategy.autoUpdateDataPlane` back to `false` (diff block)
  • Include the data-plane step when Step 1's data-plane check found changes, and state why in the same sentence, naming the concrete data-plane change (init-container config rendering, agent behavior). Keep the previous guide's exact wording otherwise.
  • Close with a > [!NOTE] per release-specific behavior change users must know about but need not act on — a changed default (e.g. the default mariadb image), or reconciled server state that differs after the update. Use > [!CAUTION] only for actual migration hazards (breaking change, deprecated mechanism).
  • Helm chart versions in commands are not padded (--version 26.10.0).

Step 5 — Verify before pushing

bash
# filenames match the tag exactly (release.yml lookup)
ls docs/releases/RELEASE_<version>_HEADER.md.gotmpl docs/releases/UPGRADE_<version>.md

# template variables and links are sane
grep -n "{{ .ProjectName }}" docs/releases/RELEASE_<version>_HEADER.md.gotmpl
grep -n "UPGRADE_<version>.md" docs/releases/RELEASE_<version>_HEADER.md.gotmpl
# no relative doc links leaked into the header (must be empty)
grep -n '](\.\?\./' docs/releases/RELEASE_<version>_HEADER.md.gotmpl
# every PR of the release is cited exactly where expected
grep -o 'pull/[0-9]*' docs/releases/RELEASE_<version>_HEADER.md.gotmpl | sort -u

Compare that last list against the release PR's list: every PR must appear, and nothing else may. Then re-read both files end to end: every version string in the right form for its context, every @handle matching the PR author, every field name matching api/v1alpha1/, and the upgrade guide applicable to users of the previous release.

Step 6 — Deliver as a PR

  • Branch feature-release-notes-<version> from release-<version>.

  • Commit both files: "Add release notes and upgrade guide for <version>".

  • Push the branch (git push origin feature-release-notes-<version>), then open the PR targeting release-<version> with the GitHub MCP server:

    • mcp__github-mariadb-operator__create_pull_request(owner="mariadb-operator", repo="mariadb-operator", title="Add release notes and upgrade guide for <version>", head="feature-release-notes-<version>", base="release-<version>", body=...)
  • Wait for human review before merging — never self-merge release docs.

Gotchas

  • The generated changelog already lists every PR. If the user wants a PR mentioned, it belongs in the header's grouped sections; do not add a third changelog section to the header.
  • Backport releases exist (e.g. release-26.6.1). The "update to <version> from a version prior to <major.minor>.x" line must match the actual minor series of the release being documented.
  • Never invent milestone numbers. Stars, pulls, adopters: only what the user provided or that is verifiable on the repository/package pages at release time.
  • Verify claims about upstream MariaDB (LTS status, EOL dates, feature availability) against an authoritative source before writing them — the release notes are the project's public voice.

© mariadb-operator, Apache-2.0. 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 .agents/skills/mariadb-operator-release-notes of mariadb-operator/mariadb-operator.

Open the folder on GitHubat commit e071201

Compare with similar skills

Mariadb Operator Release Notes 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.

Mariadb Operator Release Notes compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Mariadb Operator Release Notes this skillmariadb-operator/mariadb-operator1k—~3.3kAutomated safety check: PassApache-2.0
Plane Release Notes Generatormakeplane/plane61k—~2.5kAutomated safety check: PassAGPL-3.0
Git Commitsdatabasus/databasus8.8k—~294Automated safety check: PassApache-2.0
Release Prepjohnhuang316/code-index-mcp1k—~680Automated safety check: PassMIT
Git Releasewesammustafa/opencode-primer3971 repos~409Automated safety check: PassMIT
Store Submitzhitongblog/solomd1.2k—~1.7kAutomated safety check: NotesMIT

Similar skills

  • Builds categorized release notes for a Plane release pull request from its commits and writes them into the PR description, for both the plane-cloud and plane-ee repos.

    61k GitHub stars~2.5k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Git Commits

    databasus/databasus

    Write Databasus commit messages and branch names using the repository's release-compatible format.

    8.8k GitHub stars~294 tokensUpdated 16 days ago
    DevelopmentAuto-check passed
  • Release Prep

    johnhuang316/code-index-mcp

    A skill your agent uses when code-index-mcp implementation is complete and a version bump, release notes, tag, package publication, or GitHub release is being prepared.

    1k GitHub stars~680 tokensUpdated 2 mo ago
    DevelopmentAuto-check passed
  • Git Release

    wesammustafa/opencode-primer

    Draft release notes from merged PRs, propose a semver bump, and emit a copy-pasteable gh release create command.

    397 GitHub starsUsed in 1 repo~409 tokens
    DevelopmentAuto-check passed
  • Store Submit

    zhitongblog/solomd

    Publish a SoloMD release to the stores that have no usable submission API — Google Play Console and Microsoft Partner Center — by driving them through the local Unzoo Browser REST API.

    1.2k GitHub stars~1.7k tokensUpdated today
    DevelopmentAuto-check: notes
  • Release

    yoanbernabeu/grepai

    Create a new release for grepai. An agent skill from yoanbernabeu/grepai.

    1.9k GitHub stars~918 tokensUpdated 17 days ago
    DevelopmentAuto-check passed

More from mariadb-operator/mariadb-operator

  • Mariadb Operator Comment

    mariadb-operator/mariadb-operator

    Post a comment (or a formal PR review) to a GitHub issue or pull request in mariadb-operator/mariadb-operator.

    1k GitHub stars~2.2k tokensUpdated yesterday
    Auto-check passed
  • Mariadb Operator PR Review

    mariadb-operator/mariadb-operator

    Perform a structured maintainer-style PR review for the mariadb-operator repository.

    1k GitHub stars~3.3k tokensUpdated yesterday
    Auto-check passed

Categories

Questions about Mariadb Operator Release Notes

What does Mariadb Operator Release Notes do?

Create the release notes and upgrade guide for a mariadb-operator release. Mariadb Operator Release Notes is an agent skill from mariadb-operator/mariadb-operator. Create the release notes and upgrade guide for a mariadb-operator release.

When should I use Mariadb Operator Release Notes?

Mariadb Operator Release Notes fits situations like: the user wants release notes; an upgrade/update guide; docs for a new mariadb-operator version — create the release notes for 26.10.0; write the upgrade guide.

How do I install Mariadb Operator Release Notes in Claude Code?

Run `npx skills add mariadb-operator/mariadb-operator --skill mariadb-operator-release-notes -a claude-code`. Or copy the skill folder (.agents/skills/mariadb-operator-release-notes in mariadb-operator/mariadb-operator) into .claude/skills/mariadb-operator-release-notes in your project. Claude Code loads it when a task matches its description.

How do I install Mariadb Operator Release Notes in Codex?

Run `npx skills add mariadb-operator/mariadb-operator --skill mariadb-operator-release-notes -a codex`. Or copy the skill folder (.agents/skills/mariadb-operator-release-notes in mariadb-operator/mariadb-operator) into .agents/skills/mariadb-operator-release-notes in your project. Codex loads it when a task matches its description.

Can I use Mariadb Operator Release Notes 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 mariadb-operator/mariadb-operator --skill mariadb-operator-release-notes -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/mariadb-operator-release-notes, .gemini/skills/mariadb-operator-release-notes, .github/skills/mariadb-operator-release-notes and .opencode/skills/mariadb-operator-release-notes in your project.

What does Mariadb Operator Release Notes need to run?

Going by SKILL.md and its folder, Mariadb Operator Release Notes needs the command-line tools its instructions call (git and gh) and credentials named GH_TOKEN and GITHUB_MARIADB_OPERATOR_TOKEN. Our summary lists: Docker; A credential in GITHUB_MARIADB_OPERATOR_TOKEN. Its frontmatter pre-approves these tools: Read, Grep, Glob, Write, Edit, WebSearch, Bash(git:*), Bash(gh:*). Compatibility (from SKILL.md): Requires the project-scoped GitHub MCP server (gh CLI as fallback) and the mariadb-operator repository checkout..

Does Mariadb Operator Release Notes access the network?

SKILL.md contains no URLs. Its commands use git and gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Mariadb Operator Release Notes 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 Mariadb Operator Release Notes use?

Mariadb Operator Release Notes is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Mariadb Operator Release Notes use?

About 3.3k tokens (SKILL.md is roughly 13k 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 Mariadb Operator Release Notes?

Skills that share tags, products or a category with Mariadb Operator Release Notes: Plane Release Notes Generator (makeplane/plane, 61k stars), Git Commits (databasus/databasus, 8.8k stars), Release Prep (johnhuang316/code-index-mcp, 1k stars) and Git Release (wesammustafa/opencode-primer, 397 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Mariadb Operator Release Notes?

mariadb-operator (a GitHub organization) maintains it in mariadb-operator/mariadb-operator, which has 1,023 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 7, 2026.

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