skills/tag-release/SKILL.md
Cut an OpenClaw-style CalVer snapshot tag. Tag loop = collect commits + closed NEXT.md items, move them to CHANGELOG.md, remove only those closed items from NEXT.md, then pre-flight/tag/push/stamp when explicitly requested. Not SemVer/deploy; doc/ops repos tag too. ROADMAP.md is optional/manual. Triggers: 태그 박자, 릴리즈 컷, changelog 정리, NEXT 비우자/갈무리, cut a release/tag, vYYYY.M.D[-suffix].
npx skillsauth add junghan0611/agent-config tag-releaseInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
| Phase | Do | Stop when |
|---|---|---|
| Prepare | choose TAG; update CHANGELOG.md; trim migrated closed items from NEXT.md; gate; commit via commit skill | before Make |
| Make | only after an explicit tag-release request/approval: pre-flight, tag, push, stamp | after successful remote push + stamp |
| After | report optional follow-ups | ROADMAP.md is manual if present |
This is a tag loop, not a package release. Daily work accumulates through the
commit skill; occasionally closed work moves from volatile NEXT.md into durable
CHANGELOG.md and gets a CalVer bookmark.
commits + closed NEXT items -> CHANGELOG ## Unreleased
-> promote to ## vYYYY.M.D[-suffix]
-> remove only migrated closed items from NEXT.md
-> pre-flight -> tag/push -> stamp
Rules:
vYYYY.M.D[-suffix]. Same-day follow-ups are normal: v2026.6.12, v2026.6.12-fix.1, v2026.6.12-docs.2.CHANGELOG.md = past / what closed. ROADMAP.md = future / where to go, optional and manual.docs/archive graveyard just to hide closed NEXT items. Detailed docs are fine if reachable from AGENTS.md, README.md, NEXT.md, or workspace SSOT pointers.git log <baseline>..HEAD; date-based gitcli log is only a readable timeline aid.CHANGELOG.md + NEXT.md. No automatic ROADMAP.md / AGENTS.md edits. No unsolicited tag-release; Make runs only on an explicit GLG request/approval. Never --no-verify.TAG=vYYYY.M.D; for “앗차”/same-day follow-up use vYYYY.M.D-fix.1, vYYYY.M.D-cleanup.1, etc.BASELINE=$(git describe --tags --abbrev=0 2>/dev/null || true).git tag --sort=-version:refname (never lexical sort).git log ${BASELINE:+$BASELINE..}HEAD --oneline.gitcli log from the baseline date for human timeline only.## Unreleased
NEXT.md items.CHANGELOG.md if absent.## Unreleased to ## $TAG; create a fresh empty ## Unreleased above.## v2026.6.12 — 문서 구조 재정렬.NEXT.md
CHANGELOG.md.nix flake check for nix repos; otherwise normal check if present).commit skill, e.g. chore(release): prepare v2026.6.12-fix.1.Pre-flight; abort on first failure:
TAG="v2026.6.12-fix.1"
git diff-index --quiet HEAD --
test -z "$(git tag -l "$TAG")"
test -z "$(git ls-remote --tags origin "$TAG")"
awk -v tag="$TAG" '$1=="##" && $2==tag {ok=1} END{exit !ok}' CHANGELOG.md # exact tag token; title allowed
git push --dry-run origin HEAD
Publish after pre-flight:
git tag "$TAG" && git push origin HEAD && git push origin "$TAG"
Stamp after successful remote push:
SCRIPT="$HOME/.pi/agent/skills/pi-skills/agenda/scripts/agenda-stamp.sh"; [ -x "$SCRIPT" ] || SCRIPT="$HOME/.claude/skills/agenda/scripts/agenda-stamp.sh"
REPO=$(basename "$(git remote get-url origin)" .git); RTAG=$(echo "$REPO" | sed 's/[-.]//g')
URL=$(git remote get-url origin | sed -E 's|git@github(-[a-z]+)?\.com:|https://github.com/|;s|\.git$||')
"$SCRIPT" "${REPO}: tag ${TAG} [[${URL}/releases/tag/${TAG}][${TAG}]]" "pi:release:${RTAG}"
Optional GitHub release: extract matching CHANGELOG section to a temp file, then gh release create "$TAG" --notes-file <tmp>.
git tag -d "$TAG", fix HEAD, redo. Wrong pushed tag: report to GLG.development
멀티하네스용 /recall 래퍼. native custom command surface가 없는 하네스(예: Antigravity, Codex)에서도 /recall에 해당하는 다축 맥락 복원을 skill로 호출한다. session-recap, NEXT.md·ROADMAP.md, git status/log, semantic-memory를 조합해 어제/오늘의 작업축을 되살린다.
tools
포지(forge) — 셀프호스팅 Forgejo 이슈/PR/라벨/코멘트 작업면. 힣 에이전트가 코드 면에서 일하는 공유 손. botment의 자식 패턴(가든 댓글면 → 코드 댓글면 endpoint swap). 'forge', 'forgejo', '포지', 'issue', 'pull request', '이슈', '풀리퀘', '코드 댓글', '라벨'.
tools
sync entwurf 자식을 들여다보는 손. 호출자가 'Mattering...'에 묶여있을 때 자식 분신이 무엇을 하는지 확인. entwurf_peers는 control socket 있는 세션만 보여주는데, 이 스킬은 자식 entwurf 세션(이름 태그 entwurf)까지 합쳐서 본다. 트리거: 'entwurf-peek', '분신 들여다보기', '진행 중 세션', 'sync entwurf 안에서', 'peek session', 'live session map', '분신 추적'.
tools
Read this skill before making git commits