Agent skill

Release

by ggwhite in ggwhite/go-masker

Release a new version of go-masker: update CHANGELOG.md from git log, create GitHub release.

MITAuto-check passedDevelopment

Install Release

skills CLI
$ npx skills add ggwhite/go-masker --skill release -a claude-code

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

GitHub CLI
$ gh skill install ggwhite/go-masker release --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/ggwhite/go-masker.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/release .claude/skills/release && 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
release
GitHub stars
130
Token cost
~938 tokens
SKILL.md length
366 words
Files
1
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

Release a new version of go-masker: update CHANGELOG.md from git log, create GitHub release.

  • Works in 10 steps: Determine which module to release → Determine version → Collect changes → …
  • The user says 「發布」「release」「發新版」「打 tag」「release new version」or similar
  • SKILL.md covers Module 結構, Workflow and Important rules
  • Calls git, go and gh

What it does

Release is an agent skill from ggwhite/go-masker. Release a new version of go-masker: update CHANGELOG.md from git log, create GitHub release. Use when the user says 「發布」「release」「發新版」「打 tag」「release new version」or similar. Also use when the user says 「更新 changelog」if they clearly intend to release afterward.

Its SKILL.md is about 940 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Changelog and release notes. It works with GitHub, Git and Go. The repository describes itself as: Go library for masking sensitive data via struct tags — passwords, emails, IDs, credit cards, and more. The licence is MIT.

When your agent uses it

  • The user says 「發布」「release」「發新版」「打 tag」「release new version」or similar
  • The user says 「更新 changelog」if they clearly intend to release afterward

Example prompts

  • “/release”

Workflow steps

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

  1. Determine which module to release
  2. Determine version
  3. Collect changes
  4. Draft changelog section
  5. Preview
  6. Update CHANGELOG.md
  7. Commit
  8. Test
  9. Tag and push
  10. Create GitHub release

What it can do on your machine

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

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • go
    • gh

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

  • Network

    Links to these hosts (documentation or services it may open):

    • keepachangelog.com

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

  • Credentials

    Names no API keys, tokens, secrets or passwords.

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

Context cost

Release loads about 938 tokens when it runs. Until then it costs about 67 tokens; SKILL.md has 366 words of instructions outside code blocks.

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

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 ggwhite/go-masker at commit ff7b958, republished under its MIT licence (© ggwhite). 366 words, ~938 tokens.

Download SKILL.mdSave it as .claude/skills/release/SKILL.md (or your agent's skills folder).
name
release
description
Release a new version of go-masker: update CHANGELOG.md from git log, create GitHub release. Use when the user says 「發布」「release」「發新版」「打 tag」「release new version」or similar. Also use when the user says 「更新 changelog」if they clearly intend to release afterward.

Release

Publish a new go-masker version.

Module 結構

master branch 是 v3,v2 維護在 release/v2 branch。

master (default)
├── go.mod        ← module github.com/ggwhite/go-masker/v3
└── masker.go     ← v3 code

release/v2 (maintenance)
├── go.mod        ← module github.com/ggwhite/go-masker/v2
└── masker.go     ← v2 code
ModuleBranchTag 格式範例
v3mastervX.Y.Zv3.0.0
v2release/v2vX.Y.Zv2.4.3

Workflow

0. Determine which module to release

Ask the user if not clear: "要發 v2 還是 v3?"

  • v3: work on master branch
  • v2: work on release/v2 branch
1. Determine version
bash
git tag -l 'v${MAJOR}.*' --sort=-v:refname | head -1

Bump the patch number by default. If the user specifies minor or major, bump accordingly.

Version rules (from CLAUDE.md):

  • patch x.y.Z: bug fix, docs, internal changes that don't affect API
  • minor x.Y.0: new feature, new masker type, backwards-compatible API addition
  • major X.0.0: breaking changes (removed API, changed behavior, module path change)

Show the user: "上個版本是 vX.Y.Z,這次準備發 vA.B.C" and confirm before continuing.

2. Collect changes
bash
git log <last-tag>..HEAD --oneline --no-decorate

If there are zero relevant commits since the last tag, stop and tell the user there's nothing to release.

3. Draft changelog section

Read the existing CHANGELOG.md to match its style. The format follows Keep a Changelog:

markdown
## [X.Y.Z] - YYYY-MM-DD

### Features

- **Short name** — description of the feature

### Fixes

- **Short name** — description of the fix

Categorization rules:

  • fix / bugfix commits -> ### Fixes
  • feat / feature commits -> ### Features
  • docs commits -> ### Docs (only if user-facing; skip changelog-only docs commits)
  • chore / refactor / perf -> ### Internal (only if noteworthy; skip trivial ones)

Each item should be a concise, user-facing description — not a raw commit message. Rewrite commit messages into the bold-name-em-dash style. Group related commits into a single item when they address the same thing.

Skip commits that are only changelog/release housekeeping.

Show full SKILL.md (137 more words)Show less
4. Preview

Show the drafted changelog section to the user in full. Ask: "這樣 OK 嗎?要調整什麼?"

Do NOT proceed until the user approves.

5. Update CHANGELOG.md

Insert the new version section below [Unreleased]. If there's an [Unreleased] section covering this module's changes, move those items into the versioned section.

6. Commit
bash
git add CHANGELOG.md
git commit -m "docs: vX.Y.Z changelog"
7. Test
bash
go test -race ./...

If tests fail, stop and tell the user.

8. Tag and push

Ask the user before pushing: "要 push 了,確認?"

bash
git push && git tag vX.Y.Z && git push --tags
9. Create GitHub release
bash
gh release create vX.Y.Z --title "Release vX.Y.Z" --notes-file -

Pipe the changelog section content (just this version's notes) as the release notes.

After release, tell the user: "Release vX.Y.Z 已發布" and provide the release URL.

Important rules

  • Never modify existing version sections — they match published releases
  • Date format — YYYY-MM-DD, use today's date (timezone: Asia/Taipei)
  • Commit message — always docs: vX.Y.Z changelog
  • v2 releases must be on release/v2 branch — checkout first

© ggwhite, MIT. 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 .claude/skills/release of ggwhite/go-masker.

Open the folder on GitHubat commit ff7b958

Compare with similar skills

Release 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.

Release compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Release this skillggwhite/go-masker130—~938Automated safety check: PassMIT
Go-Redis Release Preparationredis/go-redis22k—~1.1kAutomated safety check: PassBSD-2-Clause
Draft Release Notesjamiepine/voicebox57k—~941Automated safety check: PassMIT
Mole Release Notes Publishertw93/Mole70k—~1.9kAutomated safety check: PassGPL-3.0
Release Bumpjamiepine/voicebox57k—~1.1kAutomated safety check: PassMIT
Verdaccio Pull Request Workflowverdaccio/verdaccio18k—~1.9kAutomated safety check: PassMIT

Similar skills

  • Official

    Prepares a go-redis release locally: picks the next semver, gathers merged PRs, writes the RELEASE-NOTES entry and bumps versions, without publishing.

    22k GitHub stars~1.1k tokensUpdated today
    DevelopmentAuto-check passed
  • Draft Release Notes

    jamiepine/voicebox

    Writes or refreshes the Unreleased section of CHANGELOG.md as a themed narrative built from the commits, PRs and diff since the last version tag.

    57k GitHub stars~941 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Publishes curated, bilingual release notes for an existing Mole version tag with gh release edit, including contributor thanks and reactions, after the release workflow finishes.

    70k GitHub stars~1.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Release Bump

    jamiepine/voicebox

    Ends a release cycle by moving the Unreleased changelog notes under a dated version heading, bumping version files with bumpversion and tagging the commit.

    57k GitHub stars~1.1k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Takes a change through a verdaccio pull request: branch, local checks, changeset, title and body, labels, CI and review rounds, and ports to other release lines.

    18k GitHub stars~1.9k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Hunk Release Workflow

    modem-dev/hunk

    Maintainer workflow for preparing, publishing, verifying and curating Hunk releases, with confirmation gates before tags, publishes and public edits.

    9.5k GitHub stars~3.8k tokensUpdated today
    DevelopmentAuto-check passed

Works with

Categories

Questions about Release

What does Release do?

Release a new version of go-masker: update CHANGELOG.md from git log, create GitHub release. Release is an agent skill from ggwhite/go-masker.md from git log, create GitHub release.

When should I use Release?

Release fits situations like: the user says 「發布」「release」「發新版」「打 tag」「release new version」or similar; the user says 「更新 changelog」if they clearly intend to release afterward.

How do I install Release in Claude Code?

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

How do I install Release in Codex?

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

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

What does Release need to run?

Going by SKILL.md and its folder, Release needs the command-line tools its instructions call (git, go and gh).

Does Release access the network?

SKILL.md names 1 domain. As links in the text: keepachangelog.com. This is read from the text; nothing was executed.

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

Release is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Release use?

About 938 tokens (SKILL.md is roughly 3.8k 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 Release?

Skills that share tags, products or a category with Release: Go-Redis Release Preparation (redis/go-redis, 22k stars), Draft Release Notes (jamiepine/voicebox, 57k stars), Mole Release Notes Publisher (tw93/Mole, 70k stars) and Release Bump (jamiepine/voicebox, 57k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Release?

ggwhite (a GitHub user) maintains it in ggwhite/go-masker, which has 130 GitHub stars. The repository was last updated on July 7, 2026.

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