Generate Release Notes
teambit/bit
Generate comprehensive release notes for Bit from git commits and pull requests.
Create and publish releases for the Optique project. An agent skill from dahlia/optique.
$ npx skills add dahlia/optique --skill release -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install dahlia/optique release --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/dahlia/optique.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/release .claude/skills/release && rm -rf skills-srcUse ~/.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/
Install the "release" agent skill from https://github.com/dahlia/optique/tree/main/.agents/skills/release into .claude/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/dahlia/optique/tree/main/.agents/skills/releaseType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add dahlia/optique --skill release -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install dahlia/optique release --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/dahlia/optique.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/release .agents/skills/release && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "release" agent skill from https://github.com/dahlia/optique/tree/main/.agents/skills/release into .agents/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add dahlia/optique --skill release -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install dahlia/optique release --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/dahlia/optique.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/release .cursor/skills/release && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "release" agent skill from https://github.com/dahlia/optique/tree/main/.agents/skills/release into .cursor/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/dahlia/optique.git --path .agents/skills/release--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add dahlia/optique --skill release -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install dahlia/optique release --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/dahlia/optique.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/release .gemini/skills/release && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "release" agent skill from https://github.com/dahlia/optique/tree/main/.agents/skills/release into .gemini/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install dahlia/optique releaseInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add dahlia/optique --skill release -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/dahlia/optique.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/release .github/skills/release && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "release" agent skill from https://github.com/dahlia/optique/tree/main/.agents/skills/release into .github/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add dahlia/optique --skill release -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install dahlia/optique release --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/dahlia/optique.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/release .opencode/skills/release && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "release" agent skill from https://github.com/dahlia/optique/tree/main/.agents/skills/release into .opencode/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
releaseCreate and publish releases for the Optique project. An agent skill from dahlia/optique.
Release is an agent skill from dahlia/optique. Create and publish releases for the Optique project. Use when releasing a patch, minor, or major version. Handles Sacho release notes, the mise bump-version task, tags, and maintenance-branch merges.
Its SKILL.md is about 1.9k 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 TypeScript. The repository describes itself as: Type-safe combinatorial CLI parser for TypeScript. The licence is MIT.
Read from SKILL.md and the folder at commit 865d769. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
gitmisejqpnpmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git and pnpm, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Release loads about 1.9k tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 913 words of instructions outside code blocks.
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.
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.
The full file from dahlia/optique at commit 865d769, republished under its MIT licence (© dahlia). 913 words, ~1,928 tokens.
.claude/skills/release/SKILL.md (or your agent's skills folder).Optique releases patch versions from X.Y-maintenance branches and major/minor
versions from main. Tags have no v prefix: use 1.2.7, not v1.2.7.
changes.d/ holds unreleased entries. With materialize = true in
sacho.toml, their rendered section in CHANGES.md is generated. Edit the
fragments, then synchronize; do not hand-edit the unreleased section or copy
entries into it during merges.
Verify the current branch, working tree, and remotes before changing versions:
git status --short --branch
git remote -vThe commands below use the dahlia remote. Substitute the verified remote name
if this checkout uses another one. Start from an up-to-date branch with no
unrelated changes staged or pending. Choose the target and next versions from
the user's release request and the branch's existing versions.
For a patch release, switch to the matching maintenance branch:
git switch 1.2-maintenance
git pull --ff-only dahlia 1.2-maintenanceFor a major/minor release, use main instead. Confirm that changes.d/next
and all package versions match the version being released:
cat changes.d/next
jq -r .version packages/core/deno.json
mise run check:versionsThe two printed versions must be equal to each other and to the requested
release version. check:versions verifies agreement between package manifests;
it does not compare them with changes.d/next.
If the target version needs correction, use mise run bump-version VERSION.
This task calls sacho next, updates packages/core/deno.json, formats it,
and synchronizes all workspace package versions. Use this task instead of
editing package versions manually.
Read the fragments and their compiled output before finalizing the release:
sacho sync
sacho fmt
sacho preview
sacho check
mise testIf noninteractive sacho sync refuses to replace the generated region, inspect
its diff for hand edits. Move any intended text into fragments before running
sacho sync --force, then repeat formatting and checking.
Run pnpm build in docs/ before committing documentation changes. Use the
installed sacho release --help and mise run bump-version --help when
checking command syntax.
Use sacho release to compile the fragments into a dated release section and
consume them. For example, on 1.2-maintenance with 1.2.7 pending:
sacho release 1.2.7
sacho check
git diff --stat
git diff -- CHANGES.md changes.dThe date defaults to the current local calendar date; use --date YYYY-MM-DD
when the release requires a specific date. Use --allow-empty only for an
intentional release with no changelog entries.
Commit CHANGES.md together with the consumed fragment deletions and any
change to changes.d/next, plus any package metadata changed when correcting
the release version. Use the message Release 1.2.7. Follow the repository's
commit and AI-disclosure rules. Do not commit just the rendered
changelog while leaving its source fragments pending.
Tag this release commit before preparing the next version:
git tag -m "Optique 1.2.7" 1.2.7Always provide a tag message with -m, including for signed tags. For a
major/minor release, use its version throughout, for example
sacho release 1.3.0 and git tag -m "Optique 1.3.0" 1.3.0.
Do not use sacho release --next here. Prepare the next version in a separate
commit with bump-version, so the release tag contains the released package
versions and the next-version commit updates the manifests and changelog
metadata together.
On a maintenance branch, advance to the next patch version:
mise run bump-version 1.2.8
mise run check:versions
sacho check
git diff --statOn main after 1.3.0, use mise run bump-version 1.4.0, or the next major
version if that is the planned development line. The task creates the next
unreleased section through sacho next; do not add a heading manually or run
sacho next separately.
Review and commit all version changes together: package metadata,
changes.d/next, and CHANGES.md. Use Version bump with [ci skip] in a
separate paragraph, plus the required disclosure trailer. Run mise test
before this commit as required by the repository.
Push the release tag and the updated branch:
git push dahlia 1.2.7 1.2-maintenanceTag pushes trigger the publishing workflow in .github/workflows/main.yaml.
Verify that the tag's workflow succeeds, including the publish job for JSR/npm
and the public-docs job, before reporting the release as published.
For a major/minor release, push its tag and main, then create the maintenance
branch from the release tag, not from the next-version commit:
git push dahlia 1.3.0 main
git switch -c 1.3-maintenance 1.3.0
mise run bump-version 1.3.1
mise run check:versions
sacho check
mise testCommit the first patch-version preparation with the same version-bump message
and push 1.3-maintenance.
Merge each patch release into newer maintenance branches in order, then into
main. Merge the release tag, not the older branch's next-version commit.
Inspect available branches with git branch -a --list '*-maintenance'.
For example, to bring 1.2.7 into an existing 1.3-maintenance branch:
git switch 1.3-maintenance
git pull --ff-only dahlia 1.3-maintenance
git merge --no-commit --no-ff 1.2.7Resolve conflicts while retaining the receiving branch's package versions and changes.d/next. Sacho's configured merge driver preserves the receiving unreleased region and adds the released section at its version position. Review the result even when Git reports no conflict.
On newer maintenance branches, include the fixes in their next patch notes by
carrying the released entries back into fragments. Before running carry,
check for existing carried-from-1.2.7.md fragments: the command replaces them.
sacho carry 1.2.7
sacho sync
sacho fmt
sacho preview
sacho check
mise testcarry creates package-specific carried-from-1.2.7.md fragments. Edit them
if the receiving branch needs different wording, then synchronize again. Do not
copy bullets or reference link definitions directly into CHANGES.md.
Complete the merge commit, including carried fragments and the synchronized changelog. Confirm the receiving branch's next version and core manifest version match, using the checks in “Prepare the branch”. Then repeat “Finalize and tag the release” and the maintenance-branch steps in “Prepare the next version and push”, using its pending patch version. Merge the new release tag into the next newer maintenance branch.
At main, merge the last release tag, including its code fixes and released
changelog section. If there is no newer maintenance branch, use the original
release tag. Apply the same conflict handling, but do not run sacho carry.
Keep main's existing fragments and next version; the imported released section
records the patch fixes without duplicating them in the next major/minor
release notes. Run sacho sync, sacho check, and mise test, complete the
merge commit, and push main.
© dahlia, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/release of dahlia/optique.
Open the folder on GitHubat commit 865d769
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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Release this skilldahlia/optique | 737 | — | ~1.9k | Automated safety check: Pass | MIT | |
| Generate Release Notesteambit/bit | 18k | — | ~2.2k | Automated safety check: Pass | Custom licence | |
| Release Roundethereumjs/ethereumjs-monorepo | 2.8k | — | ~2k | Automated safety check: Pass | None | |
| Bumpy Add Changezap-studio/monorepo | 172 | 1 repos | ~1.4k | Automated safety check: Notes | MIT | |
| Create Release Checklistsoftware-mansion/smelter | 734 | — | ~1.9k | Automated safety check: Notes | Custom licence | |
| Kanvibe Release Deployrookedsysc/kanvibe | 143 | — | ~12k | Automated safety check: Notes | AGPL-3.0 |
teambit/bit
Generate comprehensive release notes for Bit from git commits and pull requests.
ethereumjs/ethereumjs-monorepo
Runs a coordinated EthereumJS npm release round in six human-gated phases — intent and readiness, CHANGELOG, version bump, publish (human executes), post-publish verification, and announcements.
zap-studio/monorepo
Create a bumpy bump file describing which packages changed and how, for version bumping and changelog generation.
software-mansion/smelter
Generate a GitHub release-checklist issue for a full (non-RC) release of the Smelter server and/or the TypeScript SDK.
rookedsysc/kanvibe
A skill your agent uses whenever releasing or deploying KanVibe desktop from a clean, up-to-date dev checkout: ask only for the target version and release-note approval, then let the AI update…
Aivis-Project/AivisSpeech
AivisSpeech の新バージョンリリース時に updateInfos のリリースノートドラフトを作成・更新するスキル。「リリースノート」「updateInfos」「アップデート情報」「リリース準備」などのキーワードが出たら使う。updateInfos.draft.json の作成・更新、エンジン側リリースノートとの統合、漏れチェックまでを包括的にサポートする。
dahlia/optique
Guides writing command-line interfaces with the Optique TypeScript library: composing parsers, choosing value types, subcommands and avoiding common mistakes.
Works with
Categories
Create and publish releases for the Optique project. An agent skill from dahlia/optique. Release is an agent skill from dahlia/optique. Create and publish releases for the Optique project.
Release fits situations like: releasing a patch; tasks that involve Changelog and release notes.
Run `npx skills add dahlia/optique --skill release -a claude-code`. Or copy the skill folder (.agents/skills/release in dahlia/optique) into .claude/skills/release in your project. Claude Code loads it when a task matches its description.
Run `npx skills add dahlia/optique --skill release -a codex`. Or copy the skill folder (.agents/skills/release in dahlia/optique) into .agents/skills/release in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add dahlia/optique --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.
Going by SKILL.md and its folder, Release needs the command-line tools its instructions call (git, mise, jq and pnpm).
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
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.
Release is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Release: Generate Release Notes (teambit/bit, 18k stars), Release Round (ethereumjs/ethereumjs-monorepo, 2.8k stars), Bumpy Add Change (zap-studio/monorepo, 172 stars) and Create Release Checklist (software-mansion/smelter, 734 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
dahlia (a GitHub user) maintains it in dahlia/optique, which has 737 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 8, 2026.
Source: dahlia/optique on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.