bundles/github/skills/gh-pr-publish/SKILL.md
Create, update, and publish GitHub pull requests with a clean title, durable body, branch hygiene, validation notes, and safe push/PR gates. Use when opening a PR, updating a PR description, preparing a draft PR, or publishing local changes to GitHub.
npx skillsauth add shipshitdev/library gh-pr-publishInstall 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.
Inputs:
Outputs:
Creates/Modifies:
External Side Effects:
Confirmation Required:
Delegates To:
commit-summary to create a Conventional Commitgh-fix-ci when PR checks failrelease-pr-gates / release for trunk-based releasesgh-project-board when the PR must be added to a project boardVerify GitHub and git context:
gh auth status -h github.com
gh repo view --json nameWithOwner,defaultBranchRef,url
git status -sb
git branch --show-current
git remote -v
Protect default branches:
feat/<slug>, fix/<slug>, chore/<slug>).Inspect work before writing:
git diff --stat
git diff --cached --stat
git log --oneline --decorate -10
If unrelated files are present, list them and get approval before staging.
Commit only after approval:
git add <approved-paths>
git diff --staged --stat
git commit -m "<message>"
Build the PR body from evidence:
Not run with reasonPreserve useful existing body sections when updating an open PR.
Find or create the PR:
gh pr list --head <branch> --state open --json number,url,baseRefName
gh pr create --base <base> --head <branch> --draft --title "<title>" --body-file <body-file>
gh pr edit <number> --title "<title>" --body-file <body-file>
Default to draft unless the user asked for ready review or the repo convention clearly requires ready PRs.
Push only after approval:
git push -u origin <branch>
Report:
--body-file; do not pass escaped markdown inline.--fill as the final body if the diff needs context.Closes #123 only when the issue is truly
resolved by the PR.A focused mode (invoked as /pr tidy) that makes an already-open PR easy for a
reviewer to read, by rewriting its description — not its commits. Use it when a PR
is correct but hard to review.
Steps:
Read the PR's current diff and body:
gh pr view <number> --json title,body,files,additions,deletions
gh pr diff <number> --name-only
Rewrite the description so a reviewer can navigate the change quickly:
Update the body only, after showing the rewrite:
gh pr edit <number> --body-file <body-file>
Scope and gates:
development
Coordinates a weekly engineering review of board accuracy, recent code changes, operational health, and scoped cleanup. Use for a recurring repository health review or a review of the last several days.
testing
Audits project board configuration and prepares explicitly requested setup, copy, or normalization changes while preserving the existing workflow and provider boundaries. Use when inspecting a board's fields, columns, scope, or configuration.
testing
Reconciles a project board with current work and delivery evidence, reports incomplete coverage and metadata gaps, and applies only approved provider-supported field changes. Use when auditing board drift, reviewing blocked work, or assessing upcoming delivery.
development
Walk through how a subsystem works. Use for "how does X work", code walkthroughs before changing something, and placement or ownership questions. Explains architecture, runtime flow, and onboarding mental models. Can critique architecture. Use why for motivation.