Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Generate changelog entries for a target add-on package. Use when preparing a new release.
.claude/skills/tetherto-qv-addon-changelog/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-06 | ✗→✓ | ▲ Improved | 105% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 101% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 45% | 0% |
| case-17 | ✗→✓ | ▲ Improved | 121% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 747% | 0% |
Generate changelog entries for add-on packages following the add-on release workflow.
Use when:
/qv-addon-changelogIf the user doesn't specify, ask which add-on package they want to generate a changelog for.
Identify the full set of changes for the target add-on package only, validate the version bump in the target add-on package.json against main, and compute diff from the previous released tag to HEAD:
main. The head is the current branch/commit that the PR will merge.package.json from main (prev_version) and from HEAD (current_version).package.json between main and HEAD.version in package.json is unchanged compared to main, stop and display this exact warning to the user, substituting <addon> with the actual add-on name:----------------------------------- ⚠️⚠️⚠️ VERSION BUMP REQUIRED ⚠️⚠️⚠️ The version in packages/<addon>/package.json is unchanged compared to main. If this PR includes any changes that must be released in the package, you must bump the package version, commit/push it and re-run this command. -----------------------------------
prev_version:.github/workflows/create-github-release.yml (tag_name).upstream_tag for prev_version.<short_addon_name>-v<version> (example: llamacpp-embed-v0.10.7)upstream_tag...HEAD (or upstream_tag..HEAD for commit listing).git diff upstream_tag...HEAD -- packages/<addon>/git log upstream_tag..HEAD -- packages/<addon>/upstream_tag does not exist locally/remotely, warn clearly and fall back to main...HEAD.The goal is to produce a single, package-scoped change set that reflects what will be released next for the target add-on: from the previous released tag (prev_version) to the current PR head (HEAD).
upstream_tag..HEAD -- packages/<addon>/ (or fallback main...HEAD -- packages/<addon>/ if tag is missing)#123, (#123), or Merge pull request #123gh pr view <number> to get:packages/<addon>/.gh pr view <number> --json files and drop unrelated PRs.Create or update the matching version section in CHANGELOG.md with these guidelines:
## [X.Y.Z] - YYYY-MM-DDX.Y.Z must match package.json version in HEADYYYY-MM-DD## Breaking Changes, ## Features, etc. inside the version blockmarkdown ## Pull Requests
CHANGELOG.md by taking text after ## [X.Y.Z] - YYYY-MM-DD until the next version heading ## [.CHANGELOG.md (excerpt):
markdown## [0.4.0] - 2026-02-18 This release introduces automated GitHub releases and improves mobile test reliability. ## Features ### Automated GitHub Releases The release process is now automated with enforced changelog entries. When a version bump is detected on merge to main, a GitHub release is automatically created using the matching `CHANGELOG.md` version block. ## Bug Fixes ### Mobile E2E Test Workflow Fix Fixed an issue where mobile E2E tests would fail when the "On PR Trigger" workflow was manually run via workflow_dispatch. ## Pull Requests - [#67](https://github.com/tetherto/qvac/pull/67) - Fix mobile E2E tests workflow_dispatch - [#70](https://github.com/tetherto/qvac/pull/70) - feat: automate GitHub releases with mandatory release notes
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-06 | fail→pass | 8,506 | 9,487 | +12% | 1 | 1 | 0% | 1,388 | 2,840 | +105% | 0 | 0 | — |
case-07 | pass→pass | 4,137 | 8,449 | +104% | 1 | 1 | 0% | 717 | 3,255 | +354% | 0 | 0 | — |
case-01 | fail→fail | 3,090 | 6,264 | +103% | 1 | 1 | 0% | 347 | 2,125 | +512% | 0 | 0 | — |
case-02 | fail→fail | 9,854 | 6,875 | -30% | 1 | 1 | 0% | 1,729 | 2,230 | +29% | 0 | 0 | — |
case-03 | fail→fail | 7,284 | 6,425 | -12% | 1 | 1 | 0% | 1,074 | 2,148 | +100% | 0 | 0 | — |
case-04 | fail→pass | 6,122 | 2,483 | -59% | 1 | 1 | 0% | 1,070 | 2,149 | +101% | 0 | 0 | — |
case-05 | fail→pass | 8,603 | 2,943 | -66% | 1 | 1 | 0% | 1,324 | 1,926 | +45% | 0 | 0 | — |
case-17 | fail→pass | 6,278 | 3,445 | -45% | 1 | 1 | 0% | 1,019 | 2,255 | +121% | 0 | 0 | — |
case-08 | fail→pass | 3,460 | 14,561 | +321% | 1 | 1 | 0% | 389 | 3,295 | +747% | 0 | 0 | — |
case-09 | fail→pass | 7,109 | 4,375 | -38% | 1 | 1 | 0% | 1,239 | 2,478 | +100% | 0 | 0 | — |
case-10 | pass→pass | 4,187 | 1,789 | -57% | 1 | 1 | 0% | 694 | 1,953 | +181% | 0 | 0 | — |
case-11 | pass→pass | 5,835 | 4,043 | -31% | 1 | 1 | 0% | 1,066 | 2,454 | +130% | 0 | 0 | — |
case-12 | pass→pass | 4,026 | 1,891 | -53% | 1 | 1 | 0% | 737 | 2,047 | +178% | 0 | 0 | — |
case-13 | pass→pass | 10,615 | 3,386 | -68% | 1 | 1 | 0% | 1,780 | 2,412 | +36% | 0 | 0 | — |
case-14 | pass→pass | 6,352 | 4,531 | -29% | 1 | 1 | 0% | 926 | 2,457 | +165% | 0 | 0 | — |
case-15 | fail→pass | 4,916 | 3,676 | -25% | 1 | 1 | 0% | 822 | 2,416 | +194% | 0 | 0 | — |
case-16 | fail→pass | 13,266 | 1,808 | -86% | 1 | 1 | 0% | 2,543 | 1,991 | -22% | 0 | 0 | — |
case-18 | pass→pass | 6,877 | 2,181 | -68% | 1 | 1 | 0% | 1,096 | 2,035 | +86% | 0 | 0 | — |
case-19 | pass→pass | 4,416 | 2,282 | -48% | 1 | 1 | 0% | 842 | 2,060 | +145% | 0 | 0 | — |
case-20 | fail→fail | 14,848 | 10,953 | -26% | 1 | 1 | 0% | 2,370 | 3,373 | +42% | 0 | 0 | — |
case-21 | pass→pass | 7,358 | 4,730 | -36% | 1 | 1 | 0% | 1,366 | 2,508 | +84% | 0 | 0 | — |
case-22 | pass→pass | 4,518 | 10,998 | +143% | 1 | 1 | 0% | 743 | 3,588 | +383% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 19 counted toward the lift figure. The other 3 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +36 percentage points is the difference between those two pass rates over the 19 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.