Agent skill

Create Pull Request

by VeryGoodOpenSource in VeryGoodOpenSource/vgv-wingspan

Stages, commits, pushes and opens a pull request with a Conventional Commits message, after running the project's checks unless told to skip them.

MITAuto-check: notesDevelopment

Install Create Pull Request

skills CLI
$ npx skills add VeryGoodOpenSource/vgv-wingspan --skill create-pr -a claude-code

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

GitHub CLI
$ gh skill install VeryGoodOpenSource/vgv-wingspan create-pr --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/VeryGoodOpenSource/vgv-wingspan.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/create-pr .claude/skills/create-pr && 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-pr
GitHub stars
108
Token cost
~1.3k tokens
SKILL.md length
582 words
Files
6 (incl. references)
Skills in repo
11
Repo updated
First seen
Licence
MIT

At a glance

Stages, commits, pushes and opens a pull request with a Conventional Commits message, after running the project's checks unless told to skip them.

  • Works in 7 steps: Parse arguments → Validate (conditional) → Assess git state and determine base branch → …
  • Ready to commit and open a pull request from the current branch
  • SKILL.md covers Steps checklist, Important, Context and Step 0: Parse arguments, plus 6 more sections
  • Calls git

What it does

The agent works through a seven-step checklist: parse arguments, validate, assess git state and choose a base branch, stage and commit, push, run CI checks and open the PR. Validation runs the project's formatter, linter and test runner and stops on any failure, while passing `skip-checks`, for example when called from `/build`, bypasses both validation and the CI checks.

It stops on `main` or `master`, asks which branch the PR should target, never stages secret files such as `.env`, `*.key` and `*.pem`, and proposes one conventional commit message, taking the type from a plan file in `docs/plan/` or from the diff and a ticket number from the branch name into a `Refs:` line. Nothing is pushed before you confirm the commit. Reference files cover conventional commits, CI checks, PR CLI usage and the PR template.

When your agent uses it

  • Ready to commit and open a pull request from the current branch
  • Opening a PR with a Conventional Commits message and ticket reference
  • Running formatter, linter and tests before pushing

Example prompts

  • “Create a PR for these changes and reference ticket VGV-123.”
  • “Commit and push this branch, then open a pull request against develop.”
  • “Open the PR with skip-checks since the build step already ran them.”

Requirements

  • git with a configured remote
  • The `gh` or `glab` CLI for opening the pull request
  • Compatibility (from SKILL.md): Designed for Claude Code (or similar products with git access)
  • Pre-approved tools (allowed-tools): Bash(git push *), Bash(git add *), Bash(git commit *), Bash(gh *), Bash(glab *)

Workflow steps

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

  1. Parse arguments
  2. Validate (conditional)
  3. Assess git state and determine base branch
  4. Stage and commit
  5. Push
  6. Run CI checks (conditional)
  7. Open PR

What it can do on your machine

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

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash(git push *)
    • Bash(git add *)
    • Bash(git commit *)
    • Bash(gh *)
    • Bash(glab *)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git

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

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    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.

  • Compatibility

    Designed for Claude Code (or similar products with git access)

    From compatibility in the SKILL.md frontmatter.

Context cost

Create Pull Request loads about 1.3k tokens when it runs, and up to ~2.8k if it reads all its reference files. Until then it costs about 51 tokens; SKILL.md has 582 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~51
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~2.8k

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: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:83
    - **Never stage** secret files: `.env`, `*.key`, `*.pem`, `*secret*`, `*credential*`, `*.p12`, `*.jks`.

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 VeryGoodOpenSource/vgv-wingspan at commit 19e0695, republished under its MIT licence (© VeryGoodOpenSource). 582 words, ~1,310 tokens.

Download SKILL.mdSave it as .claude/skills/create-pr/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.
name
create-pr
description
Stage, commit, push, and open a pull request following project conventions and the Conventional Commits spec. Accepts optional skip-checks argument to bypass validation when called from /build.
allowed-tools
Bash(git push *), Bash(git add *), Bash(git commit *), Bash(gh *), Bash(glab *)
compatibility
Designed for Claude Code (or similar products with git access)
when_to_use
Use when user says "create a PR", "open a PR", "ship it", "submit a pull request", or "open a merge request", or when work on a branch is complete and ready…
argument-hint
[optional: skip-checks | ticket/issue number e.g. VGV-123 | short description]
disable-model-invocation
true

Create a pull request

Stage uncommitted changes, commit them, push the branch, and open a pull request on the project's Git hosting platform.

Steps checklist

  • Step 0: Parse arguments
  • Step 1: Validate (skip if SKIP_CHECKS)
  • Step 2: Assess git state and determine base branch
  • Step 3: Stage and commit
  • Step 4: Push
  • Step 5: Run CI checks (skip if SKIP_CHECKS)
  • Step 6: Open PR

Important

  • Do not push before the user confirms the commit.
  • Use the current branch as the source; target is BASE_BRANCH (determined in Step 2).

Context

<context>$ARGUMENTS</context>

This may include skip-checks, a ticket number (e.g. VGV-123), a short description, or be empty.

Step 0: Parse arguments

Check whether the argument contains skip-checks. Store as SKIP_CHECKS (boolean).

Extract the ticket number or short description from the remaining argument text (if any).

Step 1: Validate (conditional)

Skip this step if SKIP_CHECKS is true.

Detect and run the project's formatter, linter, and test runner.

If any command fails, report the error and stop. Do not proceed until all checks pass.

Step 2: Assess git state and determine base branch

Run in parallel:

bash
git branch --show-current
git status --short
git diff --cached
git diff
  • If the branch is main or master, warn the user and stop.
  • If there are no staged or unstaged changes:
    • Run git log <BASE_BRANCH>..HEAD --oneline. If there are no commits ahead of BASE_BRANCH, inform the user there is nothing to commit or push, and stop.
    • Otherwise, inform the user there is nothing new to commit and skip to Step 5.
Determine base branch

Use AskUserQuestion:

Question: "Which branch should this PR target?"

Options:

  1. main (default)
  2. develop
  3. Other — let the user type a custom branch name

Store as BASE_BRANCH.

Step 3: Stage and commit

Produce a single conventional commit covering all changes.

  • Never stage secret files: .env, *.key, *.pem, *secret*, *credential*, *.p12, *.jks.
  • Stage the remaining changes with git add.
  • Propose one commit message following Conventional Commits (type(scope): subject). Consult references/conventional-commits.md for the full spec. Infer type from a plan file in docs/plan/ if present; otherwise infer from the diff. Extract the ticket number from the branch name (e.g. feat/VGV-59-... → VGV-59) into a Refs: line.

Use AskUserQuestion to confirm before committing (Yes / No / Edit). On confirm, commit with a HEREDOC to preserve formatting. Do not push yet.

Show full SKILL.md (211 more words)Show less

Step 4: Push

Consult references/push.md to push the branch and handle any failures.

Step 5: Run CI checks (conditional)

Skip this step if SKIP_CHECKS is true.

Consult references/ci-checks.md to discover and run checks locally from .github/workflows/ci.yaml.

If any check fails, report the errors and stop. Do not proceed until all checks pass.

Step 6: Open PR

Gather commit context

Run in parallel:

bash
git log <BASE_BRANCH>..HEAD --oneline
git log <BASE_BRANCH>..HEAD --format="%s%n%b"
git diff <BASE_BRANCH>..HEAD --stat

Extract the ticket number from the branch name (e.g. feat/VGV-59-... → VGV-59) or from the argument.

PR title

Follow Conventional Commits summarizing the overall change:

type(scope): short description

  • Max 72 characters. Imperative mood, no period, no capital after colon.
PR description

Check for a template:

bash
cat .github/PULL_REQUEST_TEMPLATE.md 2>/dev/null
  • Template exists: use it as structure; strip HTML comments; pre-fill the Type of Change section by checking the checkbox matching the commit type:
    • feat → ✨ New feature
    • fix → 🛠️ Bug fix
    • refactor → ♻️ Refactor
    • docs → 📝 Documentation
    • test → 🧪 Tests
    • chore/build/ci → 🔧 Maintenance
  • No template: consult references/pull-request-template.md for the default template and filling rules.

Output the proposed PR:

markdown
## Proposed PR

**Title:** `type(scope): short description`

**Description:**

...
Confirm and create

Use AskUserQuestion:

Question: "Do you want me to create this PR?"

Options:

  1. Yes — consult references/pr-cli.md to detect the available CLI tool, check for an existing PR, and create it.
  2. No — stop; the Markdown above is ready for manual use.
  3. Edit — ask what to change, revise, ask again.

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

Files

SKILL.md and 5 other files (references) in skills/create-pr of VeryGoodOpenSource/vgv-wingspan.

  • SKILL.md
  • references/ci-checks.md
  • references/conventional-commits.md
  • references/pr-cli.md
  • references/pull-request-template.md
  • references/push.md

Open the folder on GitHubat commit 19e0695

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 skillVeryGoodOpenSource/vgv-wingspan108—~1.3kAutomated safety check: NotesMIT
Git Workflow and Versioningaddyosmani/agent-skills102k2 repos~3.5kAutomated safety check: NotesMIT
React Router Pull Request Creatorremix-run/react-router57k—~2.5kAutomated safety check: PassMIT
Emoji Commit ConventionsbaptisteArno/typebot.io11k—~424Automated safety check: PassCustom licence
Draft Pull Request Creatorwordpress-mobile/WordPress-Android3.2k—~881Automated safety check: NotesGPL-2.0
Adk Gitgoogle/adk-python22k—~1.3kAutomated safety check: PassApache-2.0

Similar skills

  • Git Workflow and Versioning

    addyosmani/agent-skills

    Sets git habits for every change: short-lived branches, atomic commits with descriptive messages, clean pull requests, plus versioning, tagging and changelogs for releases.

    102k GitHub starsUsed in 2 repos~3.5k tokens
    DevelopmentAuto-check: notes
  • React Router Pull Request Creator

    remix-run/react-router

    Packages finished React Router work into a draft pull request: branch, commit, push, a written PR body and the right GitHub labels.

    57k GitHub stars~2.5k tokensUpdated today
    DevelopmentAuto-check passed
  • Emoji Commit Conventions

    baptisteArno/typebot.io

    Sets the repository's convention for commit messages and pull request titles: one emoji prefix for the main intent, a concise title and clean follow-up commits.

    11k GitHub stars~424 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Draft Pull Request Creator

    wordpress-mobile/WordPress-Android

    Commits and pushes current changes, writes a pull request title and body from the branch history and template, and opens a draft PR on GitHub after you approve it.

    3.2k GitHub stars~881 tokensUpdated today
    DevelopmentAuto-check: notes
  • Adk Git

    google/adk-python

    Official

    Writes commit messages and pull request descriptions for the adk-python repository: Conventional Commits types and scopes, subject lines that say why a change was made, and the linked-issue and…

    22k GitHub stars~1.3k tokensUpdated today
    DevelopmentAuto-check passed
  • Git PR Flow

    wgzhao/Addax

    Standard branch, commit, and pull-request workflow for this repo.

    1.4k GitHub stars~216 tokensUpdated today
    DevelopmentAuto-check passed

More from VeryGoodOpenSource/vgv-wingspan

All 11 skills in this repo
  • On-Demand Code Review

    VeryGoodOpenSource/vgv-wingspan

    Runs parallel review agents over a branch, chosen paths or a whole project and merges their findings into one numbered report you can act on by id.

    108 GitHub stars~1.7k tokensUpdated 7 days ago
    Auto-check passed
  • Git Rebase onto Base Branch

    VeryGoodOpenSource/vgv-wingspan

    Rebases the current feature branch onto the latest main, master or develop, stashing uncommitted work first and aborting cleanly if conflicts appear.

    108 GitHub stars~786 tokensUpdated 7 days ago
    Auto-check passed
  • Feature Brainstorm

    VeryGoodOpenSource/vgv-wingspan

    Clarifies what to build before how, by asking one question at a time about a feature idea and then handing the result on to planning.

    108 GitHub stars~1.8k tokensUpdated 7 days ago
    Auto-check passed
  • Post-Incident Debrief

    VeryGoodOpenSource/vgv-wingspan

    Produces a blameless post-incident debrief with timeline, root cause and follow-up actions after an outage, failed release or significant bug, while details are fresh.

    108 GitHub stars~1.9k tokensUpdated 7 days ago
    Auto-check passed
  • Targeted Emergency Bug Fix

    VeryGoodOpenSource/vgv-wingspan

    Applies a minimal fix to an emergency bug through triage, root-cause location, a hotfix branch and a blast-radius check, with tests and review still required.

    108 GitHub stars~1.9k tokensUpdated 7 days ago
    Auto-check passed
  • Plan

    VeryGoodOpenSource/vgv-wingspan

    Turns high-level brainstorming and ideas into well-structured, actionable implementation plans.

    108 GitHub stars~2.8k tokensUpdated 7 days ago
    Auto-check passed

Works with

Categories

Questions about Create Pull Request

What does Create Pull Request do?

Stages, commits, pushes and opens a pull request with a Conventional Commits message, after running the project's checks unless told to skip them. The agent works through a seven-step checklist: parse arguments, validate, assess git state and choose a base branch, stage and commit, push, run CI checks and open the PR. Validation runs the project's formatter, linter and test runner and stops on any failure, while passing `skip-checks`, for example when called from `/build`, bypasses both validation and the CI checks.

When should I use Create Pull Request?

Create Pull Request fits situations like: ready to commit and open a pull request from the current branch; opening a PR with a Conventional Commits message and ticket reference; running formatter, linter and tests before pushing.

How do I install Create Pull Request in Claude Code?

Run `npx skills add VeryGoodOpenSource/vgv-wingspan --skill create-pr -a claude-code`. Or copy the skill folder (skills/create-pr in VeryGoodOpenSource/vgv-wingspan) into .claude/skills/create-pr 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 VeryGoodOpenSource/vgv-wingspan --skill create-pr -a codex`. Or copy the skill folder (skills/create-pr in VeryGoodOpenSource/vgv-wingspan) into .agents/skills/create-pr 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 VeryGoodOpenSource/vgv-wingspan --skill create-pr -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-pr, .gemini/skills/create-pr, .github/skills/create-pr and .opencode/skills/create-pr 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). Our summary lists: git with a configured remote; The `gh` or `glab` CLI for opening the pull request. Its frontmatter pre-approves these tools: Bash(git push *), Bash(git add *), Bash(git commit *), Bash(gh *), Bash(glab *). Compatibility (from SKILL.md): Designed for Claude Code (or similar products with git access).

Does Create Pull Request access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Create Pull Request safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. 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 (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Create Pull Request use?

About 1.3k tokens (SKILL.md is roughly 5.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.5k tokens, read only when the agent opens those files.

What are the alternatives to Create Pull Request?

Skills that share tags, products or a category with Create Pull Request: Git Workflow and Versioning (addyosmani/agent-skills, 102k stars), React Router Pull Request Creator (remix-run/react-router, 57k stars), Emoji Commit Conventions (baptisteArno/typebot.io, 11k stars) and Draft Pull Request Creator (wordpress-mobile/WordPress-Android, 3.2k 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?

VeryGoodOpenSource (a GitHub organization) maintains it in VeryGoodOpenSource/vgv-wingspan, which has 108 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on September 30, 2026.

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