From agents
Git operations: conventional commits, PR descriptions, branch strategy, conflict resolution, code archaeology, bisect. Use for git workflow tasks. NOT for code review, CI/CD, or changelogs.
npx claudepluginhub wyattowalsh/agents --plugin agentsThis skill uses the workspace's default tool permissions.
Git operations assistant. Lightweight, high-frequency tool for commit messages, PR descriptions, branch strategy, conflict resolution, code archaeology, and bisect debugging.
data/branch-strategies.jsondata/conventional-commits.jsonevals/archaeology-implicit.jsonevals/bisect-assist.jsonevals/branch-strategy.jsonevals/commit-message.jsonevals/negative-control.jsonevals/pr-description.jsonreferences/branch-strategies.mdreferences/commit-and-pr-guide.mdreferences/history-and-debugging.mdscripts/commit-parser.pyscripts/diff-summarizer.pyCreates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Git operations assistant. Lightweight, high-frequency tool for commit messages, PR descriptions, branch strategy, conflict resolution, code archaeology, and bisect debugging.
Scope: Git workflow operations only. NOT for code review (honest-review), CI/CD pipelines (devops-engineer), changelogs or release notes (changelog-writer), or writing application code.
| $ARGUMENTS | Mode |
|---|---|
commit | Generate conventional commit message from staged diff |
pr | Generate PR description from branch diff |
strategy | Recommend branch strategy for project |
conflict | Guide merge conflict resolution |
archaeology <file or function> | Analyze git history for code understanding |
bisect | Assist with git bisect to find regression commits |
| Empty | Show mode menu with examples |
Use these terms exactly throughout all modes:
| Term | Definition |
|---|---|
| conventional commit | Structured commit format: type(scope): subject per Conventional Commits 1.0 |
| commit type | One of: feat, fix, docs, style, refactor, perf, test, build, ci, chore, revert |
| breaking change | Commit with ! suffix or BREAKING CHANGE: footer requiring major version bump |
| scope | Optional parenthesized component name after type: feat(auth): ... |
| trunk-based | Strategy where all developers commit to main/trunk with short-lived feature branches |
| git-flow | Strategy with develop, feature, release, and hotfix branches |
| github-flow | Simplified strategy: main + feature branches with PR-based merging |
| conflict marker | Git-inserted <<<<<<<, =======, >>>>>>> delimiters in conflicted files |
| blame | git blame annotation showing last modifier per line |
| archaeology | Using git history commands to understand why code exists |
| bisect | Binary search through commits to find the one introducing a bug |
| good/bad commit | Bisect terminology: good = before bug, bad = after bug |
Generate a conventional commit message from the current staged diff.
git diff --cached to get staged changesgit diff and report: "No staged changes. Stage files first with git add."uv run python skills/git-workflow/scripts/diff-summarizer.py on the diff outputBREAKING CHANGE: footer is neededdata/conventional-commits.json rules for type selectiongit commit -m "$(cat <<'EOF'\n<message>\nEOF\n)"Generate a PR description from the branch diff against the base branch.
git symbolic-ref refs/remotes/origin/HEAD 2>/dev/null | sed 's@refs/remotes/origin/@@' (fallback: main)git log --oneline <base>..HEAD to list commitsuv run python skills/git-workflow/scripts/commit-parser.py on git log outputgit diff <base>...HEAD --stat for change statisticsuv run python skills/git-workflow/scripts/diff-summarizer.py on the diff statRecommend a branch strategy for the project.
git shortlog -sn --all | wc -lgit tag -l --sort=-creatordate | head -20git branch -r | wc -l.github/workflows/, Jenkinsfile, .gitlab-ci.ymldata/branch-strategies.json for strategy comparisonGuide merge conflict resolution.
git diff --name-only --diff-filter=U to list conflicted filesgit log --merge -p -- <file> for context on diverging changesgit add <files> and continue the merge/rebaseAnalyze git history to understand why code exists and how it evolved.
$ARGUMENTS[1] as a file path or function namegit log --follow --oneline -- <file> for full historygit log --follow --diff-filter=A -- <file> for creation commitgit blame <file> for line-by-line attributiongit log -p --all -S '<function>' -- '*.py' '*.js' '*.ts' (pickaxe search)git log -L :<function>:<file> if file is known (function-level log)Assist with git bisect to find the commit that introduced a regression.
git bisect run)git bisect start <bad> <good>git bisect run <command>git bisect good or git bisect badgit show <hash>git bisect resetLoad ONE reference at a time. Do not preload all references into context.
| File | Content | Load When |
|---|---|---|
references/commit-and-pr-guide.md | Conventional commit patterns, PR templates, diff analysis | commit or pr mode |
references/branch-strategies.md | Strategy comparison, migration paths, team sizing | strategy mode |
references/history-and-debugging.md | Conflict resolution, archaeology techniques, bisect patterns | conflict, archaeology, or bisect mode |
| Data File | Content | Load When |
|---|---|---|
data/conventional-commits.json | Full spec as structured data with type definitions | commit mode (script input) |
data/branch-strategies.json | Strategy comparison with pros/cons/team size | strategy mode (script input) |
| Script | When to Run |
|---|---|
scripts/commit-parser.py | pr mode -- parse git log into structured JSON |
scripts/diff-summarizer.py | commit or pr mode -- summarize diff statistics |
git bisect reset after a bisect session