You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -17,14 +18,13 @@ Draft a new release by updating CHANGELOG.md and bumping the version in package.
17
18
18
19
### 1. Pre-flight checks
19
20
20
-
Run these checks before proceeding:
21
-
22
21
-**Branch check:** Verify the current branch is `main`. If not, stop and tell the user.
23
22
-**Clean work tree:** Run `git status` to check for uncommitted changes. If the work tree is dirty, ask the user to confirm they want to ignore the changes before continuing.
23
+
-**Pull latest:** Run `git pull` to ensure the local branch is up to date with the remote.
24
24
25
25
### 2. Determine the current and next version
26
26
27
-
- Read the current version from `package.json`.
27
+
- Read the current version from `package.json` using `jq -r .version package.json`.
28
28
- List all git tags matching `v*` sorted by version descending. The latest tag is the current release.
29
29
- Gather all commits from the latest tag to HEAD using `git log <latest-tag>..HEAD`. Use the full log (not `--oneline`) so commit bodies are available for writing better descriptions.
30
30
- If there are no new commits since the last tag, stop and tell the user there is nothing to release.
@@ -36,24 +36,25 @@ This project is pre-v1. Apply these rules based on the actual nature of the chan
36
36
-**Minor bump** (0.x.0): if any commit introduces new functionality or contains `BREAKING CHANGE`
Omit any category section that has no entries. Exclude version bump commits (e.g. `chore: bump version to vX.Y.Z`). Use the short commit hash (7 chars) in parentheses. Strip the conventional commit prefix from the description — just use the human-readable part. Rephrase descriptions where necessary to be more understandable, capitalised, and properly formatted (e.g. use backticks for command names, file names, and config values).
67
+
Omit any category section that has no entries. Exclude version bump and release commits (e.g. `chore: bump version to vX.Y.Z`, `chore: release vX.Y.Z`). Use the short commit hash (7 chars) in parentheses. Strip the conventional commit prefix from the description — just use the human-readable part. Rephrase descriptions where necessary to be more understandable, capitalised, and properly formatted (e.g. use backticks for command names, file names, and config values).
67
68
68
69
The file should have a top-level `# Changelog` heading, followed by release sections in reverse chronological order (newest first).
69
70
@@ -75,5 +76,5 @@ Update the `"version"` field in package.json to the new version string (without
75
76
76
77
- Stage CHANGELOG.md and package.json with `git add`.
77
78
- Show the user the staged diff with `git diff --cached`.
78
-
-Tell the user the version bump (e.g. `0.2.2 → 0.3.0`) and ask for confirmation before committing.
79
+
-Use the `AskUserQuestion` tool to confirm the release, showing the version bump (e.g. `0.2.2 → 0.3.0`).
79
80
- Once confirmed, commit with message `chore: release vX.Y.Z` and push to `main`.
0 commit comments