본문으로 건너뛰기
cccskills
무료GitHub에 공개

changelog-cli

Generate a user-facing changelog for the next stable release. Reads git log between the last stable tag and HEAD, categorizes changes, and outputs formatted release notes. Use before triggering a stable release. Takes the version as an optional argument (for example v0.0.6).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md4.0 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Changelog Generator

Step 7 of the release; the release-cli skill runs it for you. It also works on its own.

Generate release notes for a stable release by summarizing git commits since the last stable tag.

Step 1: Determine the range

# Find the last stable tag
LAST_STABLE=$(git tag --list 'v*' --sort=-v:refname | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+$' | head -n 1)

If LAST_STABLE is empty (first stable release), use the full history by omitting the range:

# If LAST_STABLE is set:
git log "${LAST_STABLE}..origin/main" --oneline

# If LAST_STABLE is empty (first release):
git log origin/main --oneline

If a version argument was provided (e.g. v0.0.6), use it as the heading. Otherwise, infer the next version by bumping the patch of $LAST_STABLE (or use v0.1.0 if no stable tag exists).

Step 2: Read the full commit details

Use the same range logic from Step 1 (with or without $LAST_STABLE):

# With a previous stable tag:
git log "${LAST_STABLE}..origin/main" --format="### %h%n%s%n%n%b%n---"

# First release (no stable tag):
git log origin/main --format="### %h%n%s%n%n%b%n---"

Also read the PR descriptions for any merged PRs in the range to get richer context on what changed and why:

# Extract PR numbers from commit messages (works on both GNU and BSD grep)
git log ${LAST_STABLE:+"${LAST_STABLE}.."}origin/main --oneline | grep -o '#[0-9]\+' | tr -d '#' | sort -u

For each PR number, read the PR body:

gh pr view <number> --json title,body --jq '.title + "\n" + .body'

Step 3: Categorize and write the changelog

Group changes into these categories (omit empty categories):

  • New - new commands, features, or capabilities
  • Improved - enhancements to existing behavior
  • Fixed - bug fixes
  • Internal - changes with no user-visible effect (CI, refactors, docs)

A codegen resync is not automatically Internal. What it did to the command surface is what a user cares about, so a resync that added a command or a flag is a New entry naming that command or flag, carrying the resync's PR number. List a resync under Internal only when it changed nothing a user can type.

The commit subject does not tell you which case you are in -- every resync reads codegen: resync gen/ from EF <sha>. Get the surface change from the resync PR's body, which lists new and changed commands, or from scripts/release-surface.sh diff <last-stable> origin/main.

Step 4: Format the output

Output the changelog in this format:

## <version> (<date>)

### New
- **Short title.** One-sentence description of what changed and why it matters. (#PR)

### Improved
- **Short title.** One-sentence description. (#PR)

### Fixed
- **Short title.** One-sentence description. (#PR)

### Internal
- Updated CI workflow (#PR)

Rules:

  • Write for CLI users, not contributors. Focus on what changed from the user's perspective, not implementation details.
  • Each entry should be one sentence. Lead with what the user can now do or what was fixed, not what code changed.
  • Include the PR number in parentheses at the end of each entry.
  • Do not fabricate changes. Only include what is in the git log.
  • Collapse CI changes and doc updates into the Internal section with minimal detail.
  • Never let an Internal entry restate something already listed above it. If a resync's only content is the command it added, that command's New entry is the whole story and a second Internal line for the same PR adds nothing.

Step 5: Present for review

Print the formatted changelog and ask the releaser to confirm or edit before proceeding. Once confirmed, the releaser should paste it into the GitHub release notes when the release is published.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

End-to-end test of the heygen CLI against the live API. Builds the binary, then exercises auth, list, get, --human, schema, error handling, and the full create-poll-download-delete write path. Spends a small number of API credits per run. Use before cutting a stable release.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

heygen-com/heygen-cli1562026년 10월 19일 업데이트

Create AI videos, manage avatars, translate videos, and download results via the HeyGen API. Use when an agent needs to generate videos from text prompts, create avatar-based videos, translate existing videos, or automate video production workflows.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

heygen-com/heygen-cli1562026년 10월 19일 업데이트

Cut a stable (or dev) release of the heygen CLI end to end: run RELEASE.md's pre-release checklist, land pending PRs, check the command surface, run E2E, pick the version, write the changelog, trigger the release workflow, publish the notes, and verify the installer. Stops for the user at every decision. Use when asked to "cut a release", "ship a new version", or "release the CLI". Takes "stable" (the default) or "dev" as an optional argument.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

heygen-com/heygen-cli1562026년 10월 19일 업데이트

heygen-com의 스킬 모두 보기

이 스킬의 문제 신고