Agent skill

GitHub PR Creation

by CherryHQ in CherryHQ/cherry-studio

Creates or updates GitHub pull requests by reading the repository's PR template, filling every section and picking the right base branch under its release rules.

AGPL-3.0Auto-check passedDevelopment

Install GitHub PR Creation

skills CLI
$ npx skills add CherryHQ/cherry-studio --skill gh-create-pr -a claude-code

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

GitHub CLI
$ gh skill install CherryHQ/cherry-studio gh-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/CherryHQ/cherry-studio.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/gh-create-pr .claude/skills/gh-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
gh-create-pr
GitHub stars
52k
Token cost
~1.8k tokens
SKILL.md length
854 words
Files
2
Skills in repo
30
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Creates or updates GitHub pull requests by reading the repository's PR template, filling every section and picking the right base branch under its release rules.

  • Works in 9 steps: Read .github/pull_request_template.md… → Collect PR context from the current… → Check if the current branch has been… → …
  • Opening a pull request in a repository with a required PR template
  • SKILL.md covers Workflow, Constraints and Command Pattern
  • Calls gh and git

What it does

Before drafting anything, the agent reads .github/pull_request_template.md and gathers context from the current branch: base and head, scope, linked issues, testing status, breaking changes and release note content. It fills every section of the template, keeps the Markdown structure exactly as it is, and writes N/A or None where information is missing instead of dropping a section.

If the branch has not been pushed, it pushes it first, to origin by default, and asks whether another remote should be used. Choosing the base branch follows strict rules for this repository: main is the active line for ordinary and hotfix PRs, and a PR must never be opened from a release branch. Backport and release-sync branches must target specific bases and use exact titles, and a PR counts as a release hotfix only when you say it belongs in the active draft release, using a defined title format.

When your agent uses it

  • Opening a pull request in a repository with a required PR template
  • Updating an existing PR body without breaking the template structure
  • Deciding whether a branch should target main or a release branch

Example prompts

  • “Create a PR for this branch and fill in the repository template.”
  • “Update my open PR description with the new testing notes.”
  • “Open this fix as a hotfix PR and use the right title format.”

Requirements

  • A GitHub repository with a pull request template at .github/pull_request_template.md
  • Push access to the repository's remote

Workflow steps

9 steps, taken from the first numbered list in SKILL.md.

  1. Read .github/pull_request_template.md before drafting the PR body.
  2. Collect PR context from the current branch (base/head, scope, linked issues, testing status, breaking changes, release note content).
  3. Check if the current branch has been pushed to remote. If not, push it first
  4. Determine the base branch
  5. Create a temp file and write the PR body using a single Bash heredoc
  6. Preview the temp file content via Bash cat "$pr_body_file" (the Read
  7. After confirmation, create the PR
  8. Clean up the temp file: rm -f "$pr_body_file"
  9. Report the created PR URL and summarize title/base/head and any required follow-up.

What it can do on your machine

Read from SKILL.md and the folder at commit c97c23c. 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:

    • gh
    • git

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

  • Network

    No URLs in SKILL.md. Its commands use gh and 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.

Context cost

GitHub PR Creation loads about 1.8k tokens when it runs. Until then it costs about 88 tokens; SKILL.md has 854 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~88
When it runs · the whole SKILL.md, loaded when a task matches
~1.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 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 CherryHQ/cherry-studio at commit c97c23c, republished under its AGPL-3.0 licence (© CherryHQ). 854 words, ~1,813 tokens.

Download SKILL.mdSave it as .claude/skills/gh-create-pr/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
gh-create-pr
description
Create or update GitHub pull requests using the repository-required workflow and template compliance. Use when asked to create/open/update a PR so the assistant reads `.github/pull_request_template.md`, fills every template section, preserves markdown structure exactly, and marks missing data as N/A or None instead of skipping sections.

GitHub PR Creation

Workflow

  1. Read .github/pull_request_template.md before drafting the PR body.
  2. Collect PR context from the current branch (base/head, scope, linked issues, testing status, breaking changes, release note content).
  3. Check if the current branch has been pushed to remote. If not, push it first:
    • Default remote is origin, but ask the user if they want to use a different remote.
    bash
    git push -u <remote> <head-branch>
  4. Determine the base branch:
    • Inspect the head branch before applying any default. If the head is release/v<version>, stop: never open a pull request from a release branch, especially not to main. Put an isolated fix on a topic branch and target the release branch, or let Post Release create the metadata sync branch.
    • Before defaulting an arbitrary topic branch to main, inspect its merge base and upstream. A product-code fix that started from release/v<version> must stop and be recreated from main as a hotfix; only a release-only repair or explicit backport recovery topic may target that exact release branch.
    • A backport/v<version>/pr-<number> head must target the matching release/v<version> base and its body must contain <!-- release-backport-source-pr: <number> --> on its own line for the exact source hotfix PR. A release-sync/v<version> head must target main, use the exact title chore(release): sync v<version> metadata, retain the release-metadata-boundary: v<version> body marker, and be squash-merged.
    • For official repo(CherryHQ/cherry-studio) as origin: default base is main from origin, but allow the user to explicitly indicate a base branch.
    • main is the active development line, including hotfix PRs. Do not target an old maintenance branch unless the user explicitly requests it.
    • Only classify a PR as a release hotfix when the user explicitly says it must be included in the active draft release. Use the title hotfix: <description> or hotfix(<kebab-case-scope>): <description> with a lowercase alphanumeric kebab-case scope, exactly one space after the colon, and a non-empty description. The title grammar synchronizes the hotfix label automatically. Merging opens a separate backport PR only when exactly one draft semantic-version release has a matching active release/v<version> branch; otherwise automation stops without guessing a target.
    • If the hotfix is user-facing, provide one release-note line in each language so automation can update the active draft and stable release history. Put this exact structure inside the template's existing release-note fence; do not include bullet prefixes:
      text
      <!--LANG:en-->
      [Component] English description.
      <!--LANG:zh-CN-->
      [组件] 中文说明。
      <!--LANG:END-->
    • If the hotfix has no user-facing release note, keep NONE in the template's release-note fence. The code is still backported, but release metadata is unchanged. A provided bilingual block must satisfy the exact structure above.
    • For fork repo as origin: check available remotes with git remote -v, default base may be upstream/main or another remote. Always assume that user wants to merge head to CherryHQ/cherry-studio/main, unless the user explicitly indicates a base branch.
    • Ask the user to confirm the base branch if it's not the default.
  5. Create a temp file and write the PR body using a single Bash heredoc (avoids mktemp + Write tool path-mismatch on Windows):
    bash
    pr_body_file="/tmp/gh-pr-body-$(date +%s).md"
    cat > "$pr_body_file" <<'EOF'
    ...filled template body...
    EOF
    Fill content using the template structure exactly (keep section order, headings, checkbox formatting). If not applicable, write N/A or None.
  6. Preview the temp file content via Bash cat "$pr_body_file" (the Read tool can fail on /tmp/... paths on Windows). Show the file path and ask for explicit confirmation before creating. Skip if the user explicitly waives preview (automation workflows).
  7. After confirmation, create the PR:
    bash
    gh pr create --base <base> --head <head> --title "<title>" --body-file "$pr_body_file"
    For a release hotfix, use an exact classifier-compatible title so the workflow synchronizes the label and separately validates any provided bilingual note:
    bash
    gh pr create --base main --head <head> --title "hotfix: <description>" --body-file "$pr_body_file"
    After creation, verify that the classifier added hotfix; if it did not, fix the title instead of adding the label manually. Also fix any malformed optional release-note block reported by the workflow.
  8. Clean up the temp file: rm -f "$pr_body_file"
  9. Report the created PR URL and summarize title/base/head and any required follow-up.
Show full SKILL.md (227 more words)Show less

Constraints

  • Never skip template sections.

  • Never rewrite the template format.

  • Keep content concise and specific to the current change set.

  • PR title and body must be written in English.

  • Never use a hotfix title or label for an ordinary bug fix. It opts the PR into an automatic backport PR after merge when one matching draft release is active.

  • A release hotfix may use NONE when it has no user-facing release note. Never provide a partial, single-language, or otherwise malformed bilingual note; the backport workflow fails closed on malformed content.

  • Never default a release/v<version> head to main; a release branch is not a pull request source branch.

  • Never create the PR before showing the full final body to the user, unless they explicitly waive the preview or confirmation.

  • Never rely on command permission prompts as PR body preview.

  • Release note & Documentation checkbox — both are driven by whether the change is user-facing. Use the table below:

    Change typeRelease noteDocs [x]
    New user-facing feature / setting / UIDescribe the change✅
    Bug fix visible to usersDescribe the fix✅ if behavior changed
    Behavior change / default value changeDescribe + action required✅
    Security fix in a user-facing dependencyDescribe the fix✅ if usage changed
    CI / GitHub Actions changesNONE❌
    Internal refactoring (user cannot tell)NONE❌
    Dev / build tooling changesNONE❌
    Dev-only dependency bumpNONE❌
    Test-only / code style changesNONE❌

Command Pattern

bash
# read template
cat .github/pull_request_template.md

# show this full Markdown body in chat first
pr_body_file="/tmp/gh-pr-body-$(date +%s).md"
cat > "$pr_body_file" <<'EOF'
...filled template body...
EOF
cat "$pr_body_file"

# run only after explicit user confirmation
gh pr create --base <base> --head <head> --title "<title>" --body-file "$pr_body_file"
rm -f "$pr_body_file"

© CherryHQ, AGPL-3.0. 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 1 other file in .agents/skills/gh-create-pr of CherryHQ/cherry-studio.

  • SKILL.md
  • agents/openai.yaml

Open the folder on GitHubat commit c97c23c

Compare with similar skills

GitHub PR Creation 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.

GitHub PR Creation compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
GitHub PR Creation this skillCherryHQ/cherry-studio52k—~1.8kAutomated safety check: PassAGPL-3.0
Contributor-First PR MergeHKUDS/OpenHarness16k1 repos~847Automated safety check: PassMIT
Create Pull Requestcline/cline70k1 repos~1.6kAutomated safety check: PassApache-2.0
Creating Description For Gh PRredis/jedis12k—~838Automated safety check: PassMIT
Create Pull Request with Work Item IDmakeplane/plane61k—~824Automated safety check: PassAGPL-3.0
React Router Pull Request Creatorremix-run/react-router57k—~2.5kAutomated safety check: PassMIT

Similar skills

  • 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
  • Official

    Generate a clear, concise GitHub PR title and description from the diff between two local git branches, and save it to prDescription.md in the repo root.

    12k GitHub stars~838 tokensUpdated today
    DevelopmentAuto-check passed
  • Opens a pull request for the current branch using the repo's template, a work item ID in the title and a description filled in from the actual diff.

    61k GitHub stars~824 tokensUpdated today
    DevelopmentAuto-check passed
  • 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 yesterday
    DevelopmentAuto-check passed
  • Pascal Editor PR Opener

    pascalorg/editor

    Opens or refreshes a pull request on pascalorg/editor from the current branch, describing only what the branch's commits and diff actually contain.

    25k GitHub stars~619 tokensUpdated today
    DevelopmentAuto-check passed

More from CherryHQ/cherry-studio

All 30 skills in this repo
  • Office File Transform

    CherryHQ/cherry-studio

    Derives new files from a selected part of a spreadsheet, Word document, PDF or slide deck, such as a cell range, paragraph, page or slide, without ever modifying the source file.

    52k GitHub stars~4.7k tokensUpdated today
    Auto-check passed
  • GitHub Issue Creator

    CherryHQ/cherry-studio

    Creates GitHub issues for the current repository by choosing the matching issue template and following its format, with a permission check for engineering tasks.

    52k GitHub stars~1.6k tokensUpdated today
    Auto-check passed
  • Kimi Code Delegation

    CherryHQ/cherry-studio

    Delegates one bounded repository task to Kimi Code in non-interactive prompt mode and reads back the final result from its JSON event stream.

    52k GitHub starsUsed in 1 repo~504 tokens
    Auto-check passed
  • Cherry Studio PR Review

    CherryHQ/cherry-studio

    Reviews Cherry Studio branches, pull requests, commits, files and docs against the project's own architecture, naming, API-boundary and UI rules, report-only by default.

    52k GitHub stars~3.9k tokensUpdated today
    Auto-check passed
  • Cherry Studio Regression Tests

    CherryHQ/cherry-studio

    Runs Cherry Studio's critical-path regression suite as deterministic Playwright E2E tests through a GitHub workflow on macOS and Windows runners.

    52k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Antigravity CLI Runner

    CherryHQ/cherry-studio

    Runs the Antigravity CLI headlessly with the agy command to analyze a repository or carry out a coding task, then checks its JSON result and the diff.

    52k GitHub stars~531 tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about GitHub PR Creation

What does GitHub PR Creation do?

Creates or updates GitHub pull requests by reading the repository's PR template, filling every section and picking the right base branch under its release rules. md and gathers context from the current branch: base and head, scope, linked issues, testing status, breaking changes and release note content. It fills every section of the template, keeps the Markdown structure exactly as it is, and writes N/A or None where information is missing instead of dropping a section.

When should I use GitHub PR Creation?

GitHub PR Creation fits situations like: opening a pull request in a repository with a required PR template; updating an existing PR body without breaking the template structure; deciding whether a branch should target main or a release branch.

How do I install GitHub PR Creation in Claude Code?

Run `npx skills add CherryHQ/cherry-studio --skill gh-create-pr -a claude-code`. Or copy the skill folder (.agents/skills/gh-create-pr in CherryHQ/cherry-studio) into .claude/skills/gh-create-pr in your project. Claude Code loads it when a task matches its description.

How do I install GitHub PR Creation in Codex?

Run `npx skills add CherryHQ/cherry-studio --skill gh-create-pr -a codex`. Or copy the skill folder (.agents/skills/gh-create-pr in CherryHQ/cherry-studio) into .agents/skills/gh-create-pr in your project. Codex loads it when a task matches its description.

Can I use GitHub PR Creation 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 CherryHQ/cherry-studio --skill gh-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/gh-create-pr, .gemini/skills/gh-create-pr, .github/skills/gh-create-pr and .opencode/skills/gh-create-pr in your project.

What does GitHub PR Creation need to run?

Going by SKILL.md and its folder, GitHub PR Creation needs the command-line tools its instructions call (gh and git). Our summary lists: A GitHub repository with a pull request template at .github/pull_request_template.md; Push access to the repository's remote.

Does GitHub PR Creation access the network?

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

Is GitHub PR Creation 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 GitHub PR Creation use?

GitHub PR Creation is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does GitHub PR Creation use?

About 1.8k tokens (SKILL.md is roughly 7.3k 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 GitHub PR Creation?

Skills that share tags, products or a category with GitHub PR Creation: Contributor-First PR Merge (HKUDS/OpenHarness, 16k stars), Create Pull Request (cline/cline, 70k stars), Creating Description For Gh PR (redis/jedis, 12k stars) and Create Pull Request with Work Item ID (makeplane/plane, 61k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains GitHub PR Creation?

CherryHQ (a GitHub organization) maintains it in CherryHQ/cherry-studio, which has 52,431 GitHub stars. The repository holds 30 skills in this directory. The repository was last updated on October 8, 2026.

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