원클릭으로
release
Create a new Speed of Sound app release.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Create a new Speed of Sound app release.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | release |
| description | Create a new Speed of Sound app release. |
| argument-hint | <version> (e.g. 0.7.0) |
| disable-model-invocation | true |
| allowed-tools | Read, Write, Edit, Glob, Grep, Bash(git *), Bash(gh *) |
Create a new release for Speed of Sound version $ARGUMENTS.
Release channels:
1.2.3-alpha.1): GitHub pre-release only.1.2.3-beta.1): GitHub pre-release + Snapcraft/Flathub beta channels.1.2.3): GitHub release + Snapcraft/Flathub stable channels.Follow these steps exactly:
Confirm the version argument looks like X.Y.Z (semantic version, no leading v).
Pre-release versions following the SemVer structure are also allowed, e.g. X.Y.Z-alpha.N or
X.Y.Z-beta.N. If not provided or invalid, stop and ask the user for the correct version.
Set RELEASE_VERSION = $ARGUMENTS.
git checkout main && git pull
git checkout -b release/v$ARGUMENTS
a. VERSION — set contents to exactly RELEASE_VERSION with a trailing newline.
(meson.build and build.gradle.kts both read from this file automatically.)
b. data/io.speedofsound.SpeedOfSound.metainfo.xml.in — add a new <release> entry inside <releases>, only for stable releases (i.e. versions without a pre-release suffix like -alpha.N or -beta.N). Skip this file entirely for pre-release versions.
To build the release notes:
git describe --tags --abbrev=0TAG_DATE=$(git for-each-ref --format='%(creatordate:short)' refs/tags/<previous-tag>)
gh pr list --state merged --base main \
--search "merged:>=$TAG_DATE" \
--json number,title,body --limit 50
<release> format.The entry must follow this exact format (see existing entries for reference):
<release version="RELEASE_VERSION" date="YYYY-MM-DD">
<url type="details">https://github.com/zugaldia/speedofsound/releases/tag/vRELEASE_VERSION</url>
<description>
<p>
User-facing summary here.
</p>
</description>
</release>
For stable releases:
git add VERSION data/io.speedofsound.SpeedOfSound.metainfo.xml.in
git commit -m "chore: release v$ARGUMENTS"
For pre-release versions (alpha/beta), omit the metainfo file:
git add VERSION
git commit -m "chore: release v$ARGUMENTS"
git push origin release/v$ARGUMENTS
gh pr create \
--base main \
--title "chore: release v$ARGUMENTS" \
--body "Release v$ARGUMENTS
- Updates \`VERSION\` to \`$ARGUMENTS\`
- Adds release notes to \`metainfo.xml.in\`"
Once the PR is merged to main, the release-dispatcher workflow runs automatically. It reads the VERSION file,
creates the v$ARGUMENTS tag if it doesn't already exist, and triggers the release-* workflows to build and
publish the releases. If the version contains alpha or beta, the GitHub release is automatically marked as a
pre-release.
Remind the user to:
If any step fails, do NOT retry blindly. Show the error to the user and ask how to proceed.