Skip to content

Commit ec22931

Browse files
committed
Claude: skill to prepare a release commit.
1 parent 6849729 commit ec22931

1 file changed

Lines changed: 67 additions & 0 deletions

File tree

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
---
2+
name: prep-release
3+
description: Prepare a new Mud release — bump version and draft release notes.
4+
disable-model-invocation: true
5+
argument-hint: <version>
6+
---
7+
8+
Prepare a release for Mud
9+
===============================================================================
10+
11+
The user has invoked `/prep-release $ARGUMENTS`.
12+
13+
The argument is the new version number (e.g. `1.3.0`). If no argument was
14+
provided, ask for the version number before proceeding.
15+
16+
17+
## Steps
18+
19+
### 1. Validate
20+
21+
- Confirm the argument looks like a version number (X.Y.Z).
22+
- Read `Mud.xcodeproj/project.pbxproj` and find the current
23+
`MARKETING_VERSION`. Confirm the new version is higher.
24+
- Check `Doc/RELEASES.md` to make sure a section for this version doesn't
25+
already exist.
26+
27+
If any check fails, stop and explain.
28+
29+
30+
### 2. Bump the version
31+
32+
Update **every** `MARKETING_VERSION = ...;` line in
33+
`Mud.xcodeproj/project.pbxproj` to the new version. There are multiple
34+
occurrences (one per build configuration) — update them all.
35+
36+
37+
### 3. Draft release notes
38+
39+
Gather context for writing release notes:
40+
41+
- Run `git log --oneline` from the last version tag to HEAD.
42+
- Read any recent plan files in `Doc/Plans/` that are marked Underway or
43+
recently completed.
44+
45+
Then draft a new section for `Doc/RELEASES.md`. Follow the existing style:
46+
47+
- Insert the new section at the top, after the `===` heading rule.
48+
- Heading format: `## vX.Y.Z`
49+
- Bulleted list of user-facing changes.
50+
- Concise, compelling prose — these are user-facing notes, not a changelog.
51+
Lead each bullet with the feature or fix, not the file or module.
52+
- Don't mention internal refactors, code cleanup, or implementation details
53+
unless they have user-visible impact.
54+
- Omit changes that are only relevant to developers (CI, build scripts, etc).
55+
- Wrap lines at 78 characters.
56+
57+
Present the draft to the user for review. Incorporate any feedback.
58+
59+
60+
### 4. Hand off
61+
62+
Tell the user what remains for them to do:
63+
64+
1. Review and edit `Doc/RELEASES.md` if needed.
65+
2. Run `.github/scripts/build-release-notes` to render the HTML.
66+
3. Commit with message: `VERSION: X.Y.Z.`
67+
4. Merge to `main`, tag as `vX.Y.Z`, and push to trigger the release workflow.

0 commit comments

Comments
 (0)