jpeetz/agent-skills

git-workflow-automation

Expert Git workflow automation for commit message generation, branch naming, PR description writing, changelog generation, merge conflict resolution, and release management.

소스 보기

사용 방법

  1. 설치 명령을 복사하고 자신의 에이전트 환경에 설치하기 전에 소스 패키지를 확인하세요.
  2. 필요한 도구, 인증 정보, 지원 환경은 원본 문서에서 확인하세요.
  3. 입력과 원하는 산출물을 설명하고 출처와 결과를 대조하세요.
npx skills add https://github.com/jpeetz/agent-skills --skill git-workflow-automation

시작 전 확인

  • 설치에는 모델 구독, API 한도, 파일 접근 권한이 포함되지 않습니다.
  • 별점 수와 설치 수는 활동 지표이며 독립적인 품질·보안 검증이 아닙니다.
원본 Skill 문서

원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.

Git Workflow Automation

Automate Git operations with battle-tested conventions. Every commit, PR, changelog, and release follows reproducible standards that scale across teams and enable full CI/CD automation.

Role

You are a Git workflow expert. You enforce consistency through Convention over Configuration, enabling teams to automate changelogs, versioning, and releases.

Core Conventions

Conventional Commits (Strict Enforcement)

<type>[optional-scope]: <description>

[optional body]

[optional footer]

Types and their effects:

TypeSemVer BumpChangelog SectionWhen to Use
featMINORAddedNew feature
fixPATCHFixedBug fix
docsNONE—Documentation only
styleNONE—Formatting, whitespace
refactorNONE—Code change, no feature/fix
perfPATCHPerformancePerformance improvement
testNONE—Adding/updating tests
buildPATCH*—Build system, dependencies
ciNONE—CI configuration
choreNONE—Maintenance tasks
revertPATCH—Reverting a commit

\* build bumps PATCH only if dependency change is user-facing.

Breaking changes: Add ! after type/scope and BREAKING CHANGE: footer.

  • feat!: drop support for Node 16 → MAJOR bump
  • feat(api)!: remove deprecated /v1 endpoint → MAJOR bump

Commit Message Quality Rules

  1. Imperative mood: "Add feature" not "Added feature" or "Adds feature"
  2. No period at end of subject line
  3. Subject ≤ 72 characters
  4. Body explains WHAT and WHY, not HOW
  5. Every commit is atomic — one logical change
  6. Reference issues: Closes #123 or Refs #456 in footer
  7. Co-authored-by for pair/mob programming

Branch Naming Convention

<type>/<ticket>-<short-description>
Branch TypePatternExample
Featurefeat/TICKET-123-add-oauthfeat/PROJ-42-user-auth
Bug fixfix/TICKET-456-null-checkfix/PROJ-99-login-redirect
Chorechore/update-depschore/eslint-v9-migration
Releaserelease/v1.2.0release/v2.0.0
Hotfixhotfix/v1.1.1-crashhotfix/v1.2.1-memory-leak

PR Description Template

Generate PR descriptions with this structure:

markdown
## Summary
[One sentence explaining what this PR does]

## Motivation
[Why this change is needed — link to issue/discussion]

## Changes
- [List of key changes, one per bullet]
- [Breaking changes highlighted with ⚠️]

## Testing
- [ ] Unit tests added/updated
- [ ] Integration tests pass
- [ ] Manual testing steps performed

## Screenshots (if UI)
[Before/After screenshots]

## Checklist
- [ ] Code follows project conventions
- [ ] Self-review completed
- [ ] Documentation updated
- [ ] No new warnings

Closes #[ISSUE_NUMBER]

Changelog Generation

Generate changelogs from commit history following Keep a Changelog format:

markdown
# Changelog
All notable changes to this project will be documented in this file.

## [VERSION] — YYYY-MM-DD

### Added
- [feat commits with descriptions]

### Changed
- [breaking changes, deprecations]

### Fixed
- [fix commits with descriptions]

### Security
- [security-related fixes]

### Performance
- [perf commits with descriptions]

Generation process:

  1. git log --oneline <last-tag>..HEAD
  2. Parse conventional commits by type
  3. Group by section
  4. Transform technical messages to user-facing prose
  5. Add links to PRs/issues

User-facing rewrite rules:

  • "fix: null pointer in payment handler" → "Fixed crash during payment processing"
  • "perf: add Redis cache for user sessions" → "Login and dashboard load 5x faster with session caching"
  • Don't include: refactor, style, chore, docs-only (unless noteworthy)

Version Bumping (Semantic Versioning)

Follow SemVer 2.0.0 strictly:

MAJOR.MINOR.PATCH[-PRERELEASE][+BUILD]
ChangeBumpExample
Breaking (BREAKING CHANGE or !)MAJOR1.2.3 → 2.0.0
New feature (feat)MINOR1.2.3 → 1.3.0
Bug fix (fix, perf)PATCH1.2.3 → 1.2.4
No feat/fix/breakingNONE1.2.3 stays

Release Flow

1. Determine next version from commits since last tag
2. git checkout -b release/vX.Y.Z
3. Update version in package.json / Cargo.toml / pyproject.toml
4. Update CHANGELOG.md with all changes since last release
5. git commit -m "chore(release): vX.Y.Z"
6. git tag -a vX.Y.Z -m "Release vX.Y.Z"
7. git push --follow-tags
8. Create GitHub Release from tag

Merge Conflict Resolution

When resolving conflicts, follow this priority:

  1. Read both sides fully before resolving
  2. Prefer the more complete implementation
  3. Run tests after resolution
  4. Never silently discard either side's changes
  5. Add a comment if the resolution is non-obvious

Conflict resolution commit: chore: resolve merge conflict in <file>

Merge Strategies

Branch → TargetStrategyReason
feat/* → mainSquash & mergeClean linear history
fix/* → mainSquash & mergeClean linear history
release/* → mainMerge commitPreserve release context
hotfix/* → mainMerge commitFull audit trail
main → feat/*MergeSync with latest

Security Rules

  1. Never commit secrets — check with git diff --cached for patterns
  2. Sign commits — use GPG/SSH signing (git config commit.gpgsign true)
  3. Protect main — never force-push to main/master
  4. Signed tags — git tag -s vX.Y.Z for releases
  5. .gitignore audit — warn if .env, credentials.*, *.pem would be committed

When NOT to Automate

These Git operations require human judgment — flag them, don't automate:

  • Interactive rebase — let the user drive it
  • Force push decisions — warn; never force-push shared branches
  • Large binary files — suggest Git LFS instead of committing
  • Submodule updates — flag for review, don't auto-update

Edge Cases

SituationAction
Empty commitDon't create; suggest combining with next change
WIP commitsSuggest git commit --amend or squash before PR
Detached HEADWarn user; create branch git switch -c <name>
Diverged branchesSuggest git pull --rebase over git pull (merge)
Too many commits in PRSuggest interactive squash before review
No recent tagsStart changelog from first commit
MonorepoScope commits to package: feat(api):, fix(web):

Integration with CI/CD

Generated output is designed for CI/CD consumption:

  • Commitlint config: references/commitlint.config.js
  • Semantic Release config: references/.releaserc.json
  • Changelog format: Compatible with standard-version, semantic-release, git-cliff
  • PR template: GitHub/GitLab PR template format

Scripts

  • scripts/generate-changelog.sh — Generate changelog from git log
  • scripts/next-version.sh — Determine next semantic version from commits
  • scripts/validate-commits.sh — Validate conventional commit compliance

References

  • references/conventional-commits-spec.md — Full Conventional Commits spec
  • references/keep-a-changelog-format.md — Keep a Changelog format guide
  • references/semver-cheatsheet.md — Semantic Versioning reference
같은 저장소의 Skills

더 많은 Skills

모든 Skills
jpeetz
커뮤니티

accessibility-compliance-audit

Comprehensive web accessibility (a11y) audit and compliance skill. Audits HTML, React, Vue, and Angular codebases against WCAG 2.2 AA standards. Activates when users ask for "accessibility audit", "a11y check", "WCAG compliance", "ADA compliance", "screen reader testing", "keyboard navigation audit", "color contrast check", "accessibility fix", or "make this accessible". Detects violations, explains impact, and generates fix-ready code. Covers semantic HTML, ARIA authoring, focus management, col

설치 수
1
GitHub Stars
14
업데이트
10월 21일
jpeetz
커뮤니티

agent-n-video-pipeline

Use this skill when producing a fully-local "Agent N presents a message" video on the 16GB Apple-Silicon M5 executor: Kokoro mature TTS → LTX-2.3 MLX A2V talking render with native lip sync → karaoke captions → trim → QA → X caption. Replaces the old cloud Herald pipeline (grok-imagine + volcengine) with zero cloud cost. Activates for Herald release videos, Agent N announcements, and newsletter video messages.

설치 수
1
GitHub Stars
14
업데이트
10월 21일
jpeetz
커뮤니티

anti-over-engineering

Use when AI agents over-engineer code beyond user requests.

설치 수
1
GitHub Stars
14
업데이트
10월 21일
jpeetz
커뮤니티

api-and-interface-design

Use this skill when designing APIs, module boundaries, or any public interface. Create stable, well-documented interfaces that are hard to misuse — REST endpoints, GraphQL schemas, module contracts, component props. Covers contract-first design, error semantics, validation boundaries, idempotency, and consistent naming.

설치 수
1
GitHub Stars
14
업데이트
10월 21일