一键导入
qv-addon-changelog
// Generate changelog entries for a target add-on package. Use when preparing a new release.
// Generate changelog entries for a target add-on package. Use when preparing a new release.
Generate changelogs for SDK pod packages using tag-based GitFlow. Use when preparing a release, generating changelog, or creating CHANGELOG_LLM.md.
Plan and run local PR validation for tetherto/qvac PRs. Reuses the shared PR worktree, discovers touched packages and package.json scripts, recommends a test tier, and analyzes results. Use when testing a PR or invoking /qv-pr-test.
Plans and scaffolds e2e tests in packages/sdk/e2e for a new or changed public SDK API. Use when adding or modifying SDK functionality that is exposed to consumers. Enforces happy / sad / error coverage, deterministic model-output assertions, mobile/desktop placement, smoke-suite selection, and local validation with run:local.
Catalog of all repo qv-* custom skills with one-line purpose and when-to-use. Use when the user asks what skills exist, which skill to use, how to invoke a skill, or invokes /qv-skill-list.
Release a package to NPM. Validates version bump, changelog, creates release branch, monitors CI, verifies publish.
Diagnose why CI checks are not running on a PR and/or why a PR cannot be merged, by cross-referencing the live PR state (via gh CLI) against the repo's labels, teams, CODEOWNERS, label-gate trust model, and tier-based approval rules. Read-only by default — proposes labels / re-review comments / unblock actions in plan-then-apply mode. Use when a developer asks "why aren't my checks running", "why can't I merge", "what's blocking my PR", or invokes /qv-devops-why-my-pr-not with a PR URL.
| name | qv-addon-changelog |
| description | Generate changelog entries for a target add-on package. Use when preparing a new release. |
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:
Find the PR base and head: The base is main. The head is the current branch/commit that the PR will merge.
Read versions:
package.json from main (prev_version) and from HEAD (current_version).package.json between main and HEAD.Mandatory version bump check:
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 in packages/<addon>/package.json is unchanged compared to main.Resolve upstream release tag for 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)Compute release diff from upstream tag to PR head (package-scoped):
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.Do not include uncommitted changes or untracked files: If any uncommitted/untracked files are present, ignore them.
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:
Version heading: Use exactly ## [X.Y.Z] - YYYY-MM-DD
X.Y.Z must match package.json version in HEADYYYY-MM-DDIntroduction: Write a brief 2-3 sentence summary of what this release brings
Sections: Create each section using narrative prose style. Omit a section if there is no information related with it:
## Breaking Changes, ## Features, etc. inside the version blockPull Requests: At the end, include a "## Pull Requests" section listing all PRs in this release:
## Pull Requests
- [#123](https://github.com/tetherto/qvac/pull/123) - PR title here
- [#124](https://github.com/tetherto/qvac/pull/124) - Another PR title
Workflow compatibility requirement (mandatory):
CHANGELOG.md by taking text after ## [X.Y.Z] - YYYY-MM-DD until the next version heading ## [.Style Guidelines:
CHANGELOG.md (excerpt):
## [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