Agent Skills › maxrave-dev/SimpMusic › simpmusic-release-changelog

simpmusic-release-changelog

GitHub

用于 SimpMusic 版本发布前的变更日志整理与编写。通过同步 GitHub 项目状态、核对已合并的 PR 和修复项,生成符合规范的发布说明、应用商店描述及 GitHub Release 文本,确保发布内容准确完整。

.claude/skills/simpmusic-release-changelog/SKILL.md maxrave-dev/SimpMusic

触发场景

准备应用新版本发布 编写或更新发布说明(Changelog) 核对已上线功能与 GitHub 项目板的状态差异

安装

npx skills add maxrave-dev/SimpMusic --skill simpmusic-release-changelog -g -y
更多选项

非标准路径

npx skills add https://github.com/maxrave-dev/SimpMusic/tree/dev/.claude/skills/simpmusic-release-changelog -g -y

不安装直接使用

npx skills use maxrave-dev/SimpMusic@simpmusic-release-changelog

指定 Agent (Claude Code)

npx skills add maxrave-dev/SimpMusic --skill simpmusic-release-changelog -a claude-code -g -y

安装 repo 全部 skill

npx skills add maxrave-dev/SimpMusic --all -g -y

预览 repo 内 skill

npx skills add maxrave-dev/SimpMusic --list

SKILL.md

Frontmatter
{
    "name": "simpmusic-release-changelog",
    "description": "Use when preparing a SimpMusic release, writing release notes or changelogs (changelogs\/<version>, fastlane changelogs, GitHub release text), or checking which shipped fixes and features are missing from the GitHub Project board before a release."
}

SimpMusic Release Changelog

A release changelog lists only work that has shipped, and every line links the issue or PR that tracks it. Reconcile the board first: the changelog's links point at what the board holds.

Files

What Where Notes
Full changelog changelogs/<version>/en-US.md, changelogs/<version>/vi-VN.md No length limit
Store text (F-Droid / Play) fastlane/metadata/android/<locale>/changelogs/<versionCode>.txt ≤ 500 characters, written by the owner. Never cut the owner's items to make room; anything that does not fit goes into changelogs/
GitHub release Release body New / Improved / Fixed, plus a link to the full changelog

Step 1: reconcile Project #2

  1. git fetch both repos and make sure neither branch is behind origin.

  2. Inventory everything since the last release tag:

    • app: git log <lastTag>..origin/dev --no-merges
    • core: git -C core log $(git ls-tree <lastTag> core | awk '{print $3}')..HEAD
    • merged PRs in maxrave-dev/SimpMusic and maxrave-dev/core
    • board: gh project item-list 2 --owner maxrave-dev --limit 500 --format json
  3. Report only done work the board is missing:

    • issues fixed by a shipped commit but still open
    • shipped changes that have no issue
    • merged PRs that are not on the board
    • board items whose shipped part is not reflected

    Leave new and untriaged issues out of this report.

  4. Before calling an issue fixed, read its timeline (commit refs, linked PRs, owner comments) and the code. A fix that names the issue only in a code comment leaves no timeline link, so match the stack trace against the commit.

  5. After the owner approves:

    • Fixed issue:

      1. gh issue comment N --body "Fixed in <version> (<sha>)"
      2. gh issue edit N --milestone v<version>
      3. gh project item-add to Project #2
      4. Set Status to Done

      Done closes the issue by itself. A gh issue close --comment run after that prints "already closed" and drops the comment, which is why the comment comes first.

    • Shipped changes with no issue: create ONE task per release, titled Polish for <version>: …. Give it the labels Improvement plus the topical ones, the milestone and Status Done, then close it. List each change with its commit.

Project IDs:

  • project: PVT_kwHOBsekuM4AoHIU
  • Status field: PVTSSF_lAHOBsekuM4AoHIUzgfvIvs
  • Done option: 98236657

Always pass --repo maxrave-dev/SimpMusic, because origin may point at a fork.

Step 2: write changelogs/<version>/

Each file has this shape:

# SimpMusic <version>

## New
- **<Feature>**: <what the user can do now>. ([#N](https://github.com/maxrave-dev/SimpMusic/issues/N))

## Improved
- **<Area>**: <what got better>. ([#N](https://github.com/maxrave-dev/SimpMusic/issues/N))

## Fixed
- <The symptom the user saw>. ([#N](https://github.com/maxrave-dev/SimpMusic/issues/N))

In vi-VN.md the headings are ## Mới, ## Cải thiện and ## Sửa lỗi.

  • Every line ends with at least one link.

    • issue: https://github.com/maxrave-dev/SimpMusic/issues/N
    • PR: https://github.com/maxrave-dev/SimpMusic/pull/N
    • core PR: [core#N](https://github.com/maxrave-dev/core/pull/N)
    • a change with no issue of its own: the release's Polish task
    • a new app language: [Crowdin](https://crowdin.com/project/simpmusic)

    Use full URLs. GitHub does not autolink #N inside repository files.

  • Order: follow the owner's fastlane <versionCode>.txt first, then add the remaining items grouped by area.

  • Wording: describe what changed for the user, not the code. Use one line per item and no hard wraps.

  • Language: vi-VN.md addresses the reader as "bạn". Reserve "anh" for talking to the owner.

  • Parity: both files carry the same items and the same links. Check with grep -c '^- ' and a sorted diff of the link targets.

Common mistakes

Mistake Fix
Listing new, untriaged issues in the "missing from the board" report List done work only
One task per small shipped change One Polish task per release
Changelog lines without a link Link the issue or PR, or the Polish task when there is none
gh issue close --comment after setting Done Comment first, then set Done
#N shorthand in the .md files Full URLs
"anh" in vi-VN.md "bạn"
Trimming the owner's fastlane items to fit new ones under 500 characters Leave the fastlane text as written; the full list is changelogs/

版本历史

  • 244ffc9 当前 2026-09-27 12:46

同 Skill 集合

.claude/skills/android-accessibility/SKILL.md
.claude/skills/android-architecture/SKILL.md
.claude/skills/android-coroutines/SKILL.md
.claude/skills/android-data-layer/SKILL.md
.claude/skills/android-emulator-skill/SKILL.md
.claude/skills/android-gradle-logic/SKILL.md
.claude/skills/android-retrofit/SKILL.md
.claude/skills/android-testing/SKILL.md
.claude/skills/android-viewmodel/SKILL.md
.claude/skills/coil-compose/SKILL.md
.claude/skills/compose-navigation/SKILL.md
.claude/skills/compose-performance-audit/SKILL.md
.claude/skills/compose-ui/SKILL.md
.claude/skills/gradle-build-performance/SKILL.md
.claude/skills/jetpack-compose/SKILL.md
.claude/skills/kotlin-concurrency-expert/SKILL.md
.claude/skills/marketing-ideas/SKILL.md
.claude/skills/mobile-android-design/SKILL.md
.claude/skills/simpmusic-icons/SKILL.md
.claude/skills/xml-to-compose-migration/SKILL.md
.claude/skills/find-skills/SKILL.md
.claude/skills/kmp/SKILL.md
.claude/skills/ui-ux-pro-max/SKILL.md

元信息

文件数
0
版本
244ffc9
Hash
1b08c6df
收录时间
2026-09-27 12:46

首页 - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-10-03 05:09
浙ICP备14020137号-1