MCPInstall

create-pr

Create Pull Requests following best conventions. Use when opening PRs, writing PR descriptions, or preparing changes for review.

Installs
308
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/marcelorodrigo/agent-skills --skill create-pr
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads create-pr automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Create Pull Request

Create pull requests following the best engineering practices.

Requires: GitHub CLI (gh) authenticated and available.

Prerequisites

Before creating a PR, ensure all changes are committed. If there are uncommitted changes, run the commit skill skill({ name: "conventional-commit" }) first to commit them properly.

# Check for uncommitted changes
git status --porcelain

If the output shows any uncommitted changes (modified, added, or untracked files that should be included), invoke the commit skill skill({ name: "conventional-commit" }) before proceeding.

Process

Step 1: Verify Branch State

# Detect the default branch
BASE=$(gh repo view --json defaultBranchRef --jq '.defaultBranchRef.name')

# Check current branch and status
git status
git log $BASE..HEAD --oneline

Ensure:

  • All changes are committed
  • Branch is up to date with remote
  • Changes are rebased on the base branch if needed

Step 2: Analyze Changes

Review what will be included in the PR:

# See all commits that will be in the PR
git log $BASE..HEAD

# See the full diff
git diff $BASE...HEAD

Understand the scope and purpose of all changes before writing the description.

Step 3: Write the PR Description

Use this structure for PR descriptions (ignoring any repository PR templates):

<brief description of what the PR does>

<why these changes are being made - the motivation>

<alternative approaches considered, if any>

<any additional context reviewers need>

Do NOT include:

  • "Test plan" sections
  • Checkbox lists of testing steps
  • Redundant summaries of the diff

Do include:

  • Clear explanation of what and why
  • Links to relevant issues or tickets (only if available)
  • Context that isn't obvious from the code
  • Notes on specific areas that need careful review

Step 4: Create the PR

gh pr create --title "<type>(<scope>): <description>" --body "
<description body here>
"

Title format follows commit conventions:

  • feat(scope): Add new feature
  • fix(scope): Fix the bug
  • refactor(scope): Refactor something

PR Description Examples

Feature PR

Add Slack thread replies for alert notifications

When an alert is updated or resolved, we now post a reply to the original
Slack thread instead of creating a new message. This keeps related
notifications grouped and reduces channel noise.

Previously considered posting edits to the original message, but threading
better preserves the timeline of events and works when the original message
is older than Slack's edit window.

Bug Fix PR

Handle null response in user API endpoint

The user endpoint could return null for soft-deleted accounts, causing
dashboard crashes when accessing user properties. This adds a null check
and returns a proper 404 response.

Refactor PR

Extract validation logic to shared module

Moves duplicate validation code from the alerts, issues, and projects
endpoints into a shared validator class. No behavior change.

This prepares for adding new validation rules without
duplicating logic across endpoints.

Guidelines

  • One PR per feature/fix - Don't bundle unrelated changes
  • Keep PRs reviewable - Smaller PRs get faster, better reviews
  • Explain the why - Code shows what; description explains why

Editing Existing PRs

When updating a PR after creation, the skill automatically selects the best approach based on your GitHub CLI version:

  • gh 2.82.1+: Uses native gh pr edit (clean, full-featured)
  • gh < 2.82.1: Falls back to gh api (avoids Projects classic deprecation bug)

Check Your Version

# Check GitHub CLI version
gh --version

Modern Approach (gh 2.82.1+)

# Update PR description
gh pr edit PR_NUMBER --body "Updated description here"

# Update PR title
gh pr edit PR_NUMBER --title "New Title here"

# Update both
gh pr edit PR_NUMBER --title "new: Title" --body "New description"

Legacy Fallback (gh < 2.82.1)

If gh pr edit fails with a "Projects (classic) is being deprecated" error, use the API directly:

# Update PR description
gh api -X PATCH repos/{owner}/{repo}/pulls/PR_NUMBER -f body="
Updated description here
"

# Update PR title
gh api -X PATCH repos/{owner}/{repo}/pulls/PR_NUMBER -f title='New Title here'

# Update both
gh api -X PATCH repos/{owner}/{repo}/pulls/PR_NUMBER \
  -f title='new: Title' \
  -f body='New description'

Note: The Projects (classic) bug was fixed in gh 2.82.1 (October 2025). Upgrade with your package manager if you're on an older version.

FAQ

What does the create-pr skill do?

Create Pull Requests following best conventions. Use when opening PRs, writing PR descriptions, or preparing changes for review.

How do I install create-pr?

Run npx skills add https://github.com/marcelorodrigo/agent-skills --skill create-pr in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/create-pr/ (personal) or .claude/skills/create-pr/ (project).

Which AI agents can use create-pr?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is create-pr safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains create-pr?

It is published by marcelorodrigo in marcelorodrigo/agent-skills. It has 308 recorded installs.

More from marcelorodrigo/agent-skills

View all →

filament-pro

marcelorodrigo/agent-skills

Build Laravel admin panels with Filament v5. Use for creating resources, forms, tables, widgets, and testing admin interfaces with Livewire v4.

Backend & APIs1.2K installs

conventional-commit

marcelorodrigo/agent-skills

Create conventional commit messages following best conventions. Use when committing code changes, writing commit messages, or formatting git history. Follows conventional commits specification.

spring-boot-testing

marcelorodrigo/agent-skills

Open the skill to read its SKILL.md instructions.

Backend & APIs215 installs

phpstan-fixer

marcelorodrigo/agent-skills

Open the skill to read its SKILL.md instructions.

AI & Agents113 installs

Popular code quality & workflow skills

View category →

grill-me

mattpocock/skills

A relentless interview to sharpen a plan or design.

Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.

handoff

mattpocock/skills

Compact the current conversation into a handoff document for another agent to pick up.

domain-modeling

mattpocock/skills

Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.

codebase-design

mattpocock/skills

Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.

diagnosing-bugs

mattpocock/skills

Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.