Best for
- Use when asked to prepare/create a release, bump version, or run `/prepare-release`.
CherryHQ/cherry-studio/.agents/skills/prepare-release/SKILL.md
Prepare a new release by collecting commits, generating bilingual release notes, updating version files, and creating a release branch with PR. Use when asked to prepare/create a release, bump version, or run `/prepare-release`.
Decision brief
Automate the Cherry Studio release workflow: collect changes → generate bilingual release notes → update files → create release branch + PR → trigger CI/CD.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/CherryHQ/cherry-studio --skill ".agents/skills/prepare-release"Inspect the Agent Skill "prepare-release" from https://github.com/CherryHQ/cherry-studio/blob/dda7cc99d730c36bde685bec586dafe458722a4d/.agents/skills/prepare-release/SKILL.md at commit dda7cc99d730c36bde685bec586dafe458722a4d. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
2. Read current version from package.json. 3. Compute the new version based on the argument: - patch / minor / major: bump from the current tag version. - x.y.z or x.y.z-pre.N: use as-is after validating it is valid semver.
2. Read current version from package.json. 3. Compute the new version based on the argument: - patch / minor / major: bump from the current tag version. - x.y.z or x.y.z-pre.N: use as-is after validating it is valid semver.
1. List all commits since the last tag:
Using the collected commit information, generate release notes in both English and Chinese.
1. package.json: Update the "version" field to the new version. 2. electron-builder.yml: Replace the content under releaseInfo.releaseNotes: | with the generated notes. Preserve the 4-space YAML indentation for the block scalar content.
Permission review
The documentation asks the agent to run terminal commands or scripts.
git describe --tags --abbrev=0The documentation asks the agent to run terminal commands or scripts.
git log <last-tag>..HEAD --format="%H %s" --no-mergesEvidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 80/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 49,062 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Automate the Cherry Studio release workflow: collect changes → generate bilingual release notes → update files → create release branch + PR → trigger CI/CD.
Parse the version intent from the user's message. Accept any of these forms:
patch, minor, majorx.y.z or x.y.z-pre.N (e.g. 1.8.0, 1.8.0-beta.1, 1.8.0-rc.1)Defaults to patch if no version is specified. Always echo the resolved target version back to the user before proceeding with any file edits.
--dry-run: Preview only, do not create branch or PR.git describe --tags --abbrev=0
package.json.patch / minor / major: bump from the current tag version.x.y.z or x.y.z-pre.N: use as-is after validating it is valid semver.git log <last-tag>..HEAD --format="%H %s" --no-merges
git log <hash> -1 --format="%B"
```release-note code blocks from each commit body.feat, fix, refactor, perf, docs, etc.).🤖 Daily Auto I18NMergechore(deps)chore: releaseNONEUsing the collected commit information, generate release notes in both English and Chinese.
Format (must match exactly):
<!--LANG:en-->
Cherry Studio {version} - {Brief English Title}
✨ New Features
- [Component] Description
🐛 Bug Fixes
- [Component] Description
💄 Improvements
- [Component] Description
⚡ Performance
- [Component] Description
<!--LANG:zh-CN-->
Cherry Studio {version} - {简短中文标题}
✨ 新功能
- [组件] 描述
🐛 问题修复
- [组件] 描述
💄 改进
- [组件] 描述
⚡ 性能优化
- [组件] 描述
<!--LANG:END-->
Rules:
release-note field if present; otherwise summarize from the commit title.[Chat], [Models], [Agent], [MCP], [Settings], [Data], [Build], etc.electron-builder.yml as a style reference before writing.IMPORTANT: User-Focused Content Only
Release notes are for end users, not developers. Exclude anything users don't care about:
INCLUDE only changes that users will notice:
Keep descriptions simple and non-technical:
package.json: Update the "version" field to the new version.electron-builder.yml: Replace the content under releaseInfo.releaseNotes: | with the generated notes. Preserve the 4-space YAML indentation for the block scalar content.Show the user:
If --dry-run was specified, stop here.
Otherwise, ask the user to confirm before proceeding to Step 6.
git checkout -b release/v{version}
git add package.json electron-builder.yml
git commit -m "chore: release v{version}"
git push -u origin release/v{version}
gh-create-pr skill. If the skill tool is unavailable, read .agents/skills/gh-create-pr/SKILL.md and follow it manually. In CI (non-interactive) mode, skip interactive confirmation steps and create the PR directly after filling the template.
chore: release v{version}mainelectron-builder.ymlpackage.jsonCreating a PR from release/v* to main automatically triggers:
release.yml: Builds on macOS, Windows, Linux and creates a draft GitHub Release.ci.yml: Runs lint, typecheck, and tests.electron-builder.yml before modifying it to understand the current format.package.json and electron-builder.yml.main.Alternatives
affaan-m/ECC
Production machine-learning engineering workflow for data contracts, reproducible training, model evaluation, deployment, monitoring, and rollback. Use when building, reviewing, or hardening ML systems beyond one-off notebooks.
K-Dense-AI/scientific-agent-skills
Build, inspect, test, and analyze bounded process-based discrete-event simulations with SimPy, including events, resources, interrupts, monitoring, replications, warm-up, and reproducible output analysis.
JasonColapietro/suede-creator-skills
Give a blunt A-F ship grade for a code change across correctness, security, data, UX, verification, and deploy readiness. Use for a grade, not a findings review.
event4u-app/agent-config
Use when working with Terragrunt — DRY multi-env configs, module dependencies, remote state orchestration — even when the user just says 'deploy this to staging and prod' without naming Terragrunt.