Prp Pr

Create a GitHub PR from current branch with unpushed commits — discovers templates, analyzes changes, pushes

Part of the PRP workflow series.

Input: $ARGUMENTS — optional base branch name and/or --draft flag. Default: main.

Load skills: dog:github-ops

Steps:

  1. Validate preconditions:
    • Not on base branch (must be on a feature branch)
    • No uncommitted changes (run /dog:prp-commit first if needed)
    • Has commits ahead of base (git log origin/<base>..HEAD)
    • No existing PR for this branch (check with gh pr list --head <branch>)
  2. Discover PR template: check .github/PULL_REQUEST_TEMPLATE/, .github/PULL_REQUEST_TEMPLATE.md, .github/pull_request_template.md, docs/pull_request_template.md
  3. Analyze commits: git log origin/<base>..HEAD --format="%h %s" — derive PR title (conventional commit) and summarize changes for body
  4. Check PRP artifacts: look in .dog/PRPs/plans/ and .dog/PRPs/reports/ for implementation context to include in the PR body
  5. Push: git push -u origin <branch>
  6. Create PR: gh pr create with title, body (using template if found), and --draft if requested
  7. Report: PR URL, number, title

After PR is created: run /dog:review-pr <number> for a final automated review.