From git-flow
Use this skill when the user asks an agent to create, update, inspect, validate, or manage pull requests with review-friendly standards, safe Git/GitHub CLI workflows, clear PR descriptions, Conventional Commit-style titles, branch target validation, and repository hygiene.
How this skill is triggered — by the user, by Claude, or both
Slash command
/git-flow:pull-requestThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use this workflow whenever creating or updating a pull request. Optimize for
Use this workflow whenever creating or updating a pull request. Optimize for clarity, safety, reviewer efficiency, and repository hygiene over speed.
Every PR must be easy to understand from its title, description, commits, and diff alone.
git reset --hard, git clean, git restore, forced branch
deletion, force push, rebase, or merge unless explicitly approved.--no-verify.scripts/validate.py validates PR titles, source branch names, and
source-to-target branch rules.references/checklist.md contains the required validation gates and
the PR description template. Read it before creating or updating a PR.Before PR work, inspect the repository state with the smallest safe commands:
git status --short
git branch --show-current
gh auth status
Then verify:
If any validation gate fails, do not create or update the PR until the issue is corrected or explicitly documented in the PR.
develop.release/* and hotfix/* PRs may target main.feature/*, fix/*, chore/*, refactor/*, test/*, and docs/*
branches must not target main unless explicitly approved.updates, changes,
work, misc, or stuff.Validate branch targeting before creating the PR:
python3 scripts/validate.py branch feature/add-user-session-timeout develop
python3 scripts/validate.py branch hotfix/patch-token-expiry main
Before creating or updating a PR:
Do not proceed if the branch contains WIP, squash-fix, typo-fix, noisy intermediate commits, unrelated commits, temporary code, secrets, local-only configuration, or large unexplained generated diffs.
If commit history is not clean, report that cleanup is needed before PR creation. Do not rebase, squash, reset, or force push unless the user explicitly approves the exact plan.
Prefer Conventional Commit-style titles:
<type>[optional scope]: <description>
Allowed types:
feat fix docs style refactor perf test build ci chore revert
Rules:
updates, changes, fixes, misc, or workValidate the title before using it:
printf '%s\n' 'fix(api): reject empty tokens' | python3 scripts/validate.py title
Every PR description must include all sections from the template in
references/pr_review_checklist.md:
The description must:
Use explicit source and target branches:
gh pr create --base develop --head feature/add-user-session-timeout \
--title "feat(auth): add session timeout" \
--body-file /path/to/pr-body.md
For release or hotfix PRs targeting main:
gh pr create --base main --head release/1.4.0 \
--title "chore(release): prepare 1.4.0" \
--body-file /path/to/pr-body.md
Do not rely on interactive prompts for base, head, title, or body.
Before editing an existing PR:
gh pr view <number> --json headRefName,baseRefName,state,title,body
git status --short
Validate the existing source and target branches before updates. Preserve useful review context; do not erase reviewer concerns, risk notes, or validation history unless replacing them with more accurate information.
Before PR creation or update, scan the reviewed diff for:
If sensitive content is detected, stop and report the issue. Do not create or update the PR.
Before creating or updating the PR, ask:
Would a reviewer understand the purpose, scope, risk, validation, and review
intent of this PR within two minutes?
If the answer is no, refine the PR title, description, commits, or branch contents before proceeding.
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub liljamesjohn-archive/codecave --plugin git-flow