git-flow-release-manager

agent67 작성설치 3회아직 좋아요 없음2026년 10월 29일 업데이트카테고리: 기타

무엇을 하나요

Use when user says 'release', 'リリース', 'publish', 'vtag', 'version up', 'バージョンアップ', 'bump version', 'prepare release', 'ship version', or discusses merging to main/develop. Guides through version bump and release flow.

설치를 누르면 이 항목이 AgentsRoom 데스크톱 앱에서 열립니다. 앱이 아직 설치되어 있지 않으면 다운로드 페이지로 이동합니다.

SKILL.md

---
name: git-flow-release-manager
description: Use when user says 'release', 'リリース', 'publish', 'vtag', 'version up', 'バージョンアップ', 'bump version', 'prepare release', 'ship version', or discusses merging to main/develop. Guides through version bump and release flow.
---

# Release Procedure

Manage the entire release flow (version bump → CI → PR → merge → vtag → JSR publish). If CI is green, automatically proceed to the next step (no user confirmation needed).

## Release Flow

```
develop → release/* →PR→ develop →PR→ main → vtag → publish.yml → JSR
```

## Version Files

The "version" in `deno.json` and the `VERSION` in `lib/version.ts` must match. Patch (x.y.Z): bug fixes / Minor (x.Y.0): new features / Major (X.0.0): breaking changes

## Execution Rules (Must Read)

**When this skill is activated, always register the following task list with TaskCreate and execute and mark complete (`[x]`) one step at a time in order. Skipping, batch execution, or changing the order is prohibited.**

- Each step is **execute → check results → automatically proceed**. If CI/command succeeds, proceed without waiting for confirmation.
- Do not proceed to the next step if the previous step is incomplete (`[ ]`).
- On failure, stay on the current step, resolve the cause, and retry (do not proceed). Report failures or unexpected states (branch divergence, conflict, CI failure, etc.) to the user.
- Always check the output after running commands and mark success explicitly before checking.
- Replace `X.Y.Z` with the actual version. Replace `<PR#>` with the obtained PR number after creation.

## Task List (All steps must be performed in order)

### Phase 1: Preparation

- [ ] **Step 1. Prepare release branch** — `git fetch origin && git checkout develop && git pull --ff-only origin develop && git checkout -b release/vX.Y.Z`
  - If `pull --ff-only` fails (local has diverged), reset with `git reset --hard origin/develop` before creating the branch. The release skill assumes no local unique commits on develop/main.
  - Confirm: Check that `git branch --show-current` shows `release/vX.Y.Z` before checking.
- [ ] **Step 2. Version bump (must be done immediately after Step 1, no other commits before this)** — `scripts/bump_version.sh --patch` (or `--minor` / `--major`)
  - Confirm: Check that `grep '"version"' deno.json` and `grep 'VERSION' lib/version.ts` match before checking.
- [ ] **Step 3. Update CHANGELOG.md** — Append this release's contents
  - Confirm: Check differences with `git diff CHANGELOG.md` before checking.
- [ ] **Step 4. Local CI** — `deno task ci`
  - Confirm: Verify all tests pass before checking. Stay on this step if it fails.

### Phase 2: Release Branch → Develop

- [ ] **Step 5. Commit & push** — `git add deno.json lib/version.ts CHANGELOG.md && git commit -m "chore: bump version to X.Y.Z" && git push -u origin release/vX.Y.Z`
  - Confirm: Verify push completion with `git log -1` and `git status` before checking.
- [ ] **Step 6. Create PR: release/* → develop** — `gh pr create --base develop --head release/vX.Y.Z --title "Release vX.Y.Z"`
  - Confirm: Record the returned PR URL/number before checking.
- [ ] **Step 7. Wait CI & merge (release → develop)** — `gh pr checks <PR#> --watch && gh pr merge <PR#> --merge`
  - Confirm: Automatically merge after CI is green. Verify merged status with `gh pr view <PR#>` before checking. Report to user and stop if CI fails.

### Phase 3: Develop → Main

- [ ] **Step 8. Create PR: develop → main** — `gh pr create --base main --head develop --title "Release vX.Y.Z"`
  - Confirm: Record the returned PR URL/number before checking.
- [ ] **Step 9. Wait CI & merge (develop → main)** — `gh pr checks <PR#> --watch && gh pr merge <PR#> --merge`
  - Confirm: Automatically merge after CI is green. Verify merged status with `gh pr view <PR#>` before checking. Report to user and stop if CI fails.

### Phase 4: Tag & Publish

- [ ] **Step 10. Create vtag on main** — `git fetch origin main && git tag vX.Y.Z origin/main && git push origin vX.Y.Z`
  - Confirm: Verify the tag exists remotely with `git ls-remote --tags origin vX.Y.Z` before checking.
- [ ] **Step 11. Trigger JSR publish** — `gh workflow run publish.yml -f tag=vX.Y.Z`
  - Confirm: Verify the run started with `gh run list --workflow=publish.yml` before checking.
- [ ] **Step 12. Verify JSR publication** — Confirm version is reflected on the JSR page
  - Confirm: Check that vX.Y.Z is published at `https://jsr.io/@tettuan/breakdown` before checking.

### Phase 5: Post-release

- [ ] **Step 13. Sync local develop & main to HEAD** — `git fetch origin && git checkout main && git pull --ff-only origin main && git checkout develop && git pull --ff-only origin develop`
  - If `pull --ff-only` fails (local has diverged), reset with `git reset --hard origin/<branch>`. The release skill assumes no local unique commits on develop/main.
  - Confirm: Verify `git log develop..origin/main` and `git log main..origin/develop` are empty before checking.
- [ ] **Step 14. Cleanup release branch** — `git branch -D release/vX.Y.Z && git push origin --delete release/vX.Y.Z`
  - Confirm: Verify `git branch -a | grep release/vX.Y.Z` is empty before checking.
- [ ] **Step 15. Start next feature branch** — Explicitly call `/create-feature-branch` to create the next development branch
  - Do not complete this within the release skill; always delegate to the `/create-feature-branch` skill (to maintain branch naming conventions and Git Flow consistency).
  - **Default behavior**: If the user does not explicitly specify (issue number, feature name, etc.), derive the next patch version release branch from `develop`. For example, if the previous release was `vX.Y.Z`, create `release/vX.Y.(Z+1)` from `develop`.
  - Confirm: Verify the new branch is shown by `git branch --show-current` and is derived from `develop` before checking.

Refer to `/branch-management` for branch strategy and `/local-ci` `/ci-troubleshooting` for CI.

## Notes

- Never push directly to `main` or `develop`
- Version in `deno.json` must match `lib/version.ts` and tag
- Flow: `release/* → develop → main` (direct PR to main is prohibited)
- vtag is created manually (auto-release.yml only works if the head branch is `release/*`)
- JSR publish requires manual trigger after vtag
- **After creating the release branch, the first commit must always be the version bump. Do not commit other changes first.** This causes GitHub Actions Version Consistency Check to fail.

이 스킬은 함께 제공되지 않는 파일을 사용합니다: scripts/bump_version.sh. 작성자가 해당 파일을 포함해 다시 게시하기 전까지는 그대로 설치해도 작동하지 않습니다.

더 알아보기

DevOps 엔지니어콘텐츠 에디터프론트엔드 개발자영업 담당자백엔드 개발자코치·트레이너소프트웨어 아키텍트법무 담당QA 엔지니어재무·총무풀스택 개발자크리에이티브 디자이너모바일 개발자리서처보안 엔지니어인사·채용
프로젝트 매니저번역가Git 전문가데이터 분석가SEO 전문가회계 담당자로컬라이제이션 전문가홍보·PR브레인스토머운영·물류마케팅 전문가고객 지원프로젝트 어시스턴트구매 담당자커뮤니티 매니저개인 비서

AgentsRoom 다운로드

모든 AI 에이전트를, 모든 프로젝트에서, 하나의 창으로 실행하세요.

AgentsRoom 다운로드무료

컴패니언 앱: 이동 중에도 에이전트를 모니터링

Claude, Codex, Antigravity CLI 또는 다른 AI 공급자를 사용하세요.

확장 프로그램 설치
Chrome Web Store

버그와 요청을 공개 백로그로 바로 보내세요.

대화처럼 읽는 에이전트

에이전트마다 역할과 얼굴이 있고, 메신저 앱처럼 스레드를 읽을 수 있습니다.

대화 보기

AgentsRoom 대화 보기: AI 코딩 에이전트의 작업이 채팅 스레드로 표시된 화면
멀티 프로젝트
멀티 프로바이더
멀티 에이전트
실시간 상태
파일 diff & 커밋
모바일 앱
라이브 프리뷰
에이전트 팀
브라우저 자동화
백로그 기반 개발
프롬프트 라이브러리
스킬 라이브러리
모든 기능 보기