Agent skill

Create Pull Request

by warpdotdev in warpdotdev/oz-skills

Create a GitHub pull request following project conventions. An agent skill from warpdotdev/oz-skills.

MITAuto-check passedDevelopment

Install Create Pull Request

skills CLI
$ npx skills add warpdotdev/oz-skills --skill create-pull-request -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install warpdotdev/oz-skills create-pull-request --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/warpdotdev/oz-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/create-pull-request .claude/skills/create-pull-request && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
create-pull-request
GitHub stars
825
Token cost
~2.6k tokens
SKILL.md length
1,361 words
Files
1
Skills in repo
13
Repo updated
First seen
Licence
MIT

At a glance

Create a GitHub pull request following project conventions. An agent skill from warpdotdev/oz-skills.

  • Works in 11 steps: Check if gh CLI is installed → Check if authenticated with GitHub → Check for related skills → …
  • The user asks to create a PR
  • SKILL.md covers Prerequisites Check, Check for Existing PR, Gather Context and Information Gathering, plus 5 more sections
  • Calls git, gh and brew

What it does

Create Pull Request is an agent skill from warpdotdev/oz-skills. Create a GitHub pull request following project conventions. Use when the user asks to create a PR, submit changes for review, or open a pull request. Handles commit analysis, branch management, and PR creation using the gh CLI tool.

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Pull requests. It works with GitHub. The licence is MIT.

When your agent uses it

  • The user asks to create a PR
  • Submit changes for review
  • Open a pull request

Example prompts

  • “/create-pull-request”

Workflow steps

11 steps, taken from the step headings in SKILL.md.

  1. Check if gh CLI is installed
  2. Check if authenticated with GitHub
  3. Check for related skills
  4. Verify clean working directory
  5. Identify the current branch
  6. Find the base branch
  7. Analyze recent commits relevant to this PR
  8. Review the diff
  9. Open PR in browser for verification
  10. Remind about CI checks
  11. Suggest next steps (if needed)

What it can do on your machine

Read from SKILL.md and the folder at commit 6c08c49. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • gh
    • brew

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • cli.github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Create Pull Request loads about 2.6k tokens when it runs. Until then it costs about 63 tokens; SKILL.md has 1,361 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~63
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from warpdotdev/oz-skills at commit 6c08c49, republished under its MIT licence (© warpdotdev). 1,361 words, ~2,551 tokens.

Download SKILL.mdSave it as .claude/skills/create-pull-request/SKILL.md (or your agent's skills folder).
name
create-pull-request
description
Create a GitHub pull request following project conventions. Use when the user asks to create a PR, submit changes for review, or open a pull request. Handles commit analysis, branch management, and PR creation using the gh CLI tool.
license
MIT

Create Pull Request

This skill guides you through creating a well-structured GitHub pull request that follows project conventions and best practices.

Prerequisites Check

Before proceeding, verify the following:

1. Check if gh CLI is installed
bash
gh --version

If not installed, inform the user:

The GitHub CLI (gh) is required but not installed. Please install it:

2. Check if authenticated with GitHub
bash
gh auth status

If not authenticated, guide the user to run gh auth login.

Before creating a PR, check if any skills are available that relate to code review, CI, or testing. These should be invoked first as prerequisites.

Look for skills with descriptions containing:

  • "review" (e.g., code review, PR review, web-design-guidelines)
  • "CI" or "ci-fix" (e.g., fixing CI failures)
  • "testing" or "test" (e.g., running tests, webapp-testing)

If such skills exist, invoke them before proceeding with PR creation. For example:

  • If a ci-fix skill exists and CI is failing, use it to diagnose and fix issues
  • If a web-design-guidelines skill exists for UI changes, use it to review the changes
  • If a testing skill exists, use it to ensure tests pass

Only proceed with PR creation after these prerequisite skills have been satisfied.

4. Verify clean working directory
bash
git status

If there are uncommitted changes, ask the user whether to:

  • Commit them as part of this PR
  • Stash them temporarily
  • Discard them (with caution)

Check for Existing PR

Before gathering context, check if a PR already exists for the current branch:

bash
gh pr list --head $(git branch --show-current) --json number,title,url

If a PR already exists:

  • Display the existing PR details (number, title, URL)
  • Ask the user if they want to:
    • View the existing PR: gh pr view
    • Update the existing PR (push more commits and the PR will update automatically)
    • Close the existing PR and create a new one

Only proceed with creating a new PR if no PR exists for this branch.

Gather Context

1. Identify the current branch
bash
git branch --show-current

Ensure you're not on main or master. If so, ask the user to create or switch to a feature branch.

2. Find the base branch
bash
git remote show origin | grep "HEAD branch"

This is typically main or master.

3. Analyze recent commits relevant to this PR
bash
git log origin/main..HEAD --oneline --no-decorate

Review these commits to understand:

  • What changes are being introduced
  • The scope of the PR (single feature/fix or multiple changes)
  • Whether commits should be squashed or reorganized
4. Review the diff
bash
git diff origin/main..HEAD --stat

This shows which files changed and helps identify the type of change.

Information Gathering

Gather the following information from available context (commit messages, branch names, changed files):

Information to Extract
  1. Related Issue Number: Look for patterns like #123, fixes #123, or closes #123 in:

    • Commit messages
    • Branch name (e.g., fix/issue-123, feature/123-new-login)
    • If found, include it in the PR title and/or description
    • If not found, proceed without it
  2. Description: What problem does this solve? Why were these changes made?

    • Infer from commit messages and diff
    • Describe the changes made
  3. Type of Change: Bug fix, new feature, breaking change, refactor, cosmetic, documentation, or workflow

    • Determine from commit messages and changed files
  4. Test Procedure: How was this tested? What could break?

    • Mention test files if they were modified
    • Describe testing approach if evident from changes
Intelligent PR Title Generation

The PR title should be descriptive and meaningful. Avoid generic titles like:

  • "initial commit"
  • "fix"
  • "update"
  • "changes"

Instead, create a title that clearly summarizes the changes. Consider these approaches:

1. Conventional Commits Format

Check if the project uses conventional commits by analyzing:

  • Commit messages for patterns like feat:, fix:, docs:, refactor:, test:, chore:
  • Branch name prefixes like feat/, fix/, docs/

If conventional commits are detected, use the appropriate prefix for the PR title:

  • feat: Add user authentication with OAuth
  • fix: Resolve memory leak in data processing
  • docs: Update API documentation for v2 endpoints
  • refactor: Simplify error handling logic
  • test: Add integration tests for payment flow
  • chore: Update dependencies to latest versions

Include issue number if found:

  • feat: Add user authentication with OAuth (#123)
  • fix(auth): Resolve memory leak in data processing (fixes #456)
2. Descriptive Summary

If not using conventional commits, create a clear, action-oriented title:

  • Good: "Add pagination to search results"
  • Bad: "initial commit"
  • Good: "Fix race condition in authentication flow"
  • Bad: "fix bug"

Include issue number if found:

  • "Add pagination to search results (#123)"
  • "Fix race condition in authentication flow (fixes #456)"
3. Title Generation Strategy
  1. Look at the most significant commit message (often the first or last)
  2. Identify the main change from the diff (new feature, bug fix, etc.)
  3. Extract the issue title if linked
  4. If none of these provide a good title, synthesize one from the changed files and their purpose
  5. Append issue number to title if found in commits or branch name

Git Best Practices

Before creating the PR, consider these best practices:

Commit Hygiene
  1. Atomic commits: Each commit should represent a single logical change
  2. Clear commit messages: Follow conventional commit format when possible
  3. No merge commits: Prefer rebasing over merging to keep history clean
Show full SKILL.md (551 more words)Show less
Branch Management
  1. Rebase on latest main (if needed):

    bash
    git fetch origin
    git rebase origin/main
  2. Squash if appropriate: If there are many small "WIP" commits, consider interactive rebase:

    bash
    git rebase -i origin/main

    Only suggest this if commits appear messy and the user is comfortable with rebasing.

Push Changes

Ensure all commits are pushed:

bash
git push origin HEAD

If the branch was rebased, you may need:

bash
git push origin HEAD --force-with-lease

Create the Pull Request

IMPORTANT: Read and use the PR template at .github/pull_request_template.md if it exists. The PR body format should match the template structure.

When filling out the template:

  • Include issue number (e.g., Fixes #123, Closes #456) if found in context
  • If no template exists, create a clear description with:
    • Summary of changes
    • Related issue (if found)
    • Testing performed
    • Any breaking changes or notable impacts
  • Fill in all sections with relevant information gathered from commits and context
  • Mark the appropriate "Type of Change" checkbox(es) if template has them
  • Complete any checklist items that apply
Draft PR Decision

Decide whether to create a draft PR or a regular PR based on the following:

Use --draft flag when:

  • Changes are incomplete or work-in-progress, but you want early feedback
  • Tests are currently failing and you need help debugging
  • You're blocked on an architectural decision and need guidance
  • Creating the PR as a bookmark for work you'll continue later
  • You want to trigger CI checks but aren't ready for full review

Use regular PR (no --draft) when:

  • All tests pass and code is ready for review
  • Changes are complete and you're confident in the approach
  • You want the PR to be reviewed and merged soon
Create PR with gh CLI

For a regular PR:

bash
gh pr create --title "PR_TITLE" --body "PR_BODY" --base main

For a draft PR:

bash
gh pr create --title "PR_TITLE" --body "PR_BODY" --base main --draft

Post-Creation

After creating the PR:

1. Open PR in browser for verification

Immediately open the PR in the browser to verify it was created correctly:

bash
gh pr view --web

This allows you to:

  • Verify the PR title and description render correctly
  • Check that all links work (issue references, etc.)
  • Ensure the diff looks as expected
  • See any immediate CI status
2. Remind about CI checks

Tests and linting will run automatically. Monitor the checks to ensure they pass.

3. Suggest next steps (if needed)
  • Add reviewers if needed: gh pr edit --add-reviewer USERNAME
  • Add labels if needed: gh pr edit --add-label "bug"

Error Handling

Common Issues
  1. No commits ahead of main: The branch has no changes to submit

    • Ask if the user meant to work on a different branch
  2. Branch not pushed: Remote doesn't have the branch

    • Push the branch first: git push -u origin HEAD
  3. PR already exists: A PR for this branch already exists

    • Show the existing PR: gh pr view
    • Ask if they want to update it instead
  4. Merge conflicts: Branch conflicts with base

    • Guide user through resolving conflicts or rebasing

Summary Checklist

Before finalizing, ensure:

  • gh CLI is installed and authenticated
  • Related review/CI/testing skills have been invoked
  • No existing PR exists for this branch
  • Working directory is clean
  • All commits are pushed
  • Branch is up-to-date with base branch
  • PR title is descriptive and meaningful (not generic)
  • PR title uses conventional commit format if project uses it
  • Issue number included in title/description if found in context
  • PR description follows template (if template exists)
  • Appropriate type of change is selected
  • Correct draft/regular status chosen
  • PR opened in browser for verification

© warpdotdev, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/create-pull-request of warpdotdev/oz-skills.

Open the folder on GitHubat commit 6c08c49

Compare with similar skills

Create Pull Request next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Create Pull Request compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Create Pull Request this skillwarpdotdev/oz-skills825—~2.6kAutomated safety check: PassMIT
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Check PRonyx-dot-app/onyx32k2 repos~2.3kAutomated safety check: PassMIT
Contributor-First PR MergeHKUDS/OpenHarness16k1 repos~847Automated safety check: PassMIT
Create Pull Requestcline/cline70k1 repos~1.6kAutomated safety check: PassApache-2.0
Pull Request Title and Body Writeropeninterpreter/openinterpreter69k2 repos~1.1kAutomated safety check: PassApache-2.0

Similar skills

  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Check PR

    onyx-dot-app/onyx

    Checks a GitHub, GitLab, or Perforce (p4) pull request (or merge request, or shelved changelist) for unresolved review comments, failing status checks, and incomplete PR descriptions.

    32k GitHub starsUsed in 2 repos~2.3k tokens
    DevelopmentAuto-check passed
  • Merges external GitHub pull requests while keeping the original author credited, and fixes conflicts after the merge instead of rewriting the contribution.

    16k GitHub starsUsed in 1 repo~847 tokens
    DevelopmentAuto-check passed
  • Opens a GitHub pull request from your current branch with the gh CLI, after reviewing the commits and diff and gathering the details the PR needs.

    70k GitHub starsUsed in 1 repo~1.6k tokens
    DevelopmentAuto-check passed
  • Pull Request Title and Body Writer

    openinterpreter/openinterpreter

    Rewrites the title and body of one or more pull requests with gh, leading with why the change was made, then what changed, and describing only the net result.

    69k GitHub starsUsed in 2 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Official

    Runs a loop on a GitHub pull request: fetch review state, triage comments into actions, implement them and resolve threads, repeating until nothing actionable is left.

    48k GitHub stars~2.2k tokensUpdated today
    DevelopmentAuto-check passed

More from warpdotdev/oz-skills

All 13 skills in this repo
  • SEO Aeo Audit

    warpdotdev/oz-skills

    Optimize for search engine visibility, ranking, and AI citations.

    825 GitHub stars~4.9k tokensUpdated 1 mo ago
    Auto-check passed
  • Web Accessibility Audit

    warpdotdev/oz-skills

    Audit web applications for WCAG accessibility compliance. An agent skill from warpdotdev/oz-skills.

    825 GitHub stars~3.1k tokensUpdated 1 mo ago
    Auto-check passed
  • Webapp Testing

    warpdotdev/oz-skills

    Test local web applications with Playwright. An agent skill from warpdotdev/oz-skills.

    825 GitHub stars~914 tokensUpdated 1 mo ago
    Auto-check passed
  • GitHub Bug Report Triage

    warpdotdev/oz-skills

    Triage GitHub bug reports for actionability. An agent skill from warpdotdev/oz-skills.

    825 GitHub stars~1.1k tokensUpdated 1 mo ago
    Auto-check passed
  • Analysis Artifacts

    warpdotdev/oz-skills

    Generate reproducible analysis artifacts — SQL queries, Python visualizations, and summary tables — as you work through a BigQuery data analysis.

    825 GitHub stars~1.1k tokensUpdated 1 mo ago
    Auto-check passed
  • CI Fix

    warpdotdev/oz-skills

    Diagnose and fix GitHub Actions CI failures. An agent skill from warpdotdev/oz-skills.

    825 GitHub stars~790 tokensUpdated 1 mo ago
    Auto-check passed

Works with

Categories

Questions about Create Pull Request

What does Create Pull Request do?

Create a GitHub pull request following project conventions. An agent skill from warpdotdev/oz-skills. Create Pull Request is an agent skill from warpdotdev/oz-skills. Create a GitHub pull request following project conventions.

When should I use Create Pull Request?

Create Pull Request fits situations like: the user asks to create a PR; submit changes for review; open a pull request.

How do I install Create Pull Request in Claude Code?

Run `npx skills add warpdotdev/oz-skills --skill create-pull-request -a claude-code`. Or copy the skill folder (.agents/skills/create-pull-request in warpdotdev/oz-skills) into .claude/skills/create-pull-request in your project. Claude Code loads it when a task matches its description.

How do I install Create Pull Request in Codex?

Run `npx skills add warpdotdev/oz-skills --skill create-pull-request -a codex`. Or copy the skill folder (.agents/skills/create-pull-request in warpdotdev/oz-skills) into .agents/skills/create-pull-request in your project. Codex loads it when a task matches its description.

Can I use Create Pull Request in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add warpdotdev/oz-skills --skill create-pull-request -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create-pull-request, .gemini/skills/create-pull-request, .github/skills/create-pull-request and .opencode/skills/create-pull-request in your project.

What does Create Pull Request need to run?

Going by SKILL.md and its folder, Create Pull Request needs the command-line tools its instructions call (git, gh and brew).

Does Create Pull Request access the network?

SKILL.md names 1 domain. As links in the text: cli.github.com. This is read from the text; nothing was executed.

Is Create Pull Request safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Create Pull Request use?

Create Pull Request is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Create Pull Request use?

About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Create Pull Request?

Skills that share tags, products or a category with Create Pull Request: PR Babysitter (openinterpreter/openinterpreter, 69k stars), Check PR (onyx-dot-app/onyx, 32k stars), Contributor-First PR Merge (HKUDS/OpenHarness, 16k stars) and Create Pull Request (cline/cline, 70k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Create Pull Request?

warpdotdev (a GitHub organization) maintains it in warpdotdev/oz-skills, which has 825 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on August 15, 2026.

Source: warpdotdev/oz-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.