Create a GitHub Pull Request from the current or specified branch. Use when: opening a PR, submitting code for review, creating a draft PR, publishing a branch as a pull request, proposing changes to a repository.
79
100%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Gather the necessary information, prepare a clear title and description, then call the tool to open the pull request.
Determine the required parameters before calling the tool:
owner:branch format - pass just the branch name (e.g. my-feature).Before creating the PR, inspect the working tree state. If you need to run git commands, give an explanation for why the command needs to be run.
Check for uncommitted changes: Use the git tool or VS Code SCM context to determine whether there are staged or unstaged file changes. If yes:
git add -A && git commit -m "<message>").Check for unpushed commits: Determine whether the local branch has commits that have not been pushed to the remote (i.e. the branch is ahead of its upstream). If yes:
git push (or git push --set-upstream origin <branch> if no upstream is set yet) before calling the tool.Confirm the branch is on the remote: The create_pull_request tool requires the head branch to be present on the remote. If it is not, push it first.
If all changes are already committed and pushed, proceed directly to the next step.
Write a good title and description if the user has not provided them:
Title: Use imperative mood, keep it under 72 characters, and describe what the PR does (e.g. Add retry logic for failed API requests).
Body: Include:
Fixes #123)Use the github-pull-request_create_pull_request tool with the gathered parameters:
github-pull-request_create_pull_request({
title: '<descriptive title>',
head: '<branch-name>', // branch name only, not owner:branch
body: '<description>', // optional but recommended
base: '<base-branch>', // optional; omit to use repo default
draft: false, // set true for work-in-progress
headOwner: '<owner>', // optional; omit if same as repo owner
repo: { owner: '<owner>', name: '<repo>' } // optional
})After the tool returns successfully:
vscode-insiders://github.vscode-pull-request-github/open-pull-request-webview?uri=https://github.com/microsoft/vscode-css-languageservice/pull/460 or vscode://github.vscode-pull-request-github/open-pull-request-webview?uri=https://github.com/microsoft/vscode-css-languageservice/pull/460.Fix, Add, Update, Remove, Refactor - not Fixed, Adding, etc.Fix null pointer in user login flow beats Fix bug.Fixes #<number> or Closes #<number> to auto-close them on merge.draft: true when the code is not yet ready for formal review (e.g. work in progress, awaiting feedback on approach, CI not yet passing).36b92f9
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.