
Create Pr
Create a draft GitHub pull request from the agent with the repo PR template after your branch is committed and pushed.
Overview
create-pr is an agent skill for the Ship phase that creates draft GitHub pull requests with gh CLI, repo templates, and English formatting after commits are clean.
Install
npx skills add https://github.com/neolabhq/context-engineering-kit --skill create-prWhat is this skill?
- Pre-flight git status with mandatory commit-skill handoff before any PR
- Draft PR creation via gh pr create aligned to .github/pull_request_template.md
- English-only PR titles and descriptions for consistency
- Scoped tooling: gh pr/auth, git status/push/branch, and git:commit skill
Adoption & trust: 522 installs on skills.sh; 1.1k GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
You finished a feature branch but keep stalling on gh flags, uncommitted files, or PR descriptions that do not match the repo template.
Who is it for?
Solo builders shipping feature branches to GitHub who want interactive, template-aware draft PRs without leaving the agent.
Skip if: Teams on GitLab-only workflows, repos without gh access, or changes you intend to land without any PR review process.
When should I use this skill?
You need to open a GitHub pull request with gh after ensuring the working tree is committed and the repo PR template is applied.
What do I get? / Deliverables
You end with a draft pull request on GitHub whose body follows the template and whose branch history was committed before create ran.
- Draft GitHub pull request with template-based description
Recommended Skills
Journey fit
Opening a PR is the canonical moment you move from local implementation to reviewable, shippable change in the solo-builder journey. Review is where work is packaged for teammates, CI, and merge gates—exactly what this gh-driven PR workflow targets.
How it compares
Use instead of ad-hoc gh pr create one-liners that skip status checks and template fields.
Common Questions / FAQ
Who is create-pr for?
Solo and indie developers using GitHub who want an agent-guided, template-aligned draft PR workflow with gh and git.
When should I use create-pr?
In the Ship phase when a branch is ready to review—after build work is done and you need a draft PR; also when the agent detects uncommitted changes and must run commit first.
Is create-pr safe to install?
It is designed for constrained Bash on gh and git; review the Security Audits panel on this page and confirm gh auth scope before running in production repos.
Workflow Chain
Requires first: commit
SKILL.md
READMESKILL.md - Create Pr
# How to Create a Pull Request Using GitHub CLI This guide explains how to create pull requests using GitHub CLI in our project. **Important**: All PR titles and descriptions should be written in English. ## Prerequisites Check if `gh` is installed, if not follow this instruction to install it: 1. Install GitHub CLI if you haven't already: ```bash # macOS brew install gh # Windows winget install --id GitHub.cli # Linux # Follow instructions at https://github.com/cli/cli/blob/trunk/docs/install_linux.md ``` 2. Authenticate with GitHub: ```bash gh auth login ``` ## Pre-flight Checks Before creating a PR, check for uncommitted changes: 1. Run `git status` to check for uncommitted changes (staged, unstaged, or untracked files) 2. If uncommitted changes exist, use the Skill tool to run the `commit` skill first: ``` Skill: commit ``` 3. This ensures all your work is committed before creating the PR ## Creating a New Pull Request 1. First, prepare your PR description following the template in @.github/pull_request_template.md 2. Use the `gh pr create --draft` command to create a new pull request: ```bash # Basic command structure gh pr create --draft --title "✨(scope): Your descriptive title" --body "Your PR description" --base main ``` For more complex PR descriptions with proper formatting, use the `--body-file` option with the exact PR template structure: ```bash # Create PR with proper template structure gh pr create --draft --title "✨(scope): Your descriptive title" --body-file .github/pull_request_template.md --base main ``` ## Best Practices 1. **Language**: Always use English for PR titles and descriptions 2. **PR Title Format**: Use conventional commit format with emojis - Always include an appropriate emoji at the beginning of the title - Use the actual emoji character (not the code representation like `:sparkles:`) - Examples: - `✨(supabase): Add staging remote configuration` - `🐛(auth): Fix login redirect issue` - `📝(readme): Update installation instructions` 3. **Description Template**: Always use our PR template structure from @.github/pull_request_template.md: 4. **Template Accuracy**: Ensure your PR description precisely follows the template structure: - Don't modify or rename the PR-Agent sections (`pr_agent:summary` and `pr_agent:walkthrough`) - Keep all section headers exactly as they appear in the template - Don't add custom sections that aren't in the template 5. **Draft PRs**: Start as draft when the work is in progress - Use `--draft` flag in the command - Convert to ready for review when complete using `gh pr ready` ### Common Mistakes to Avoid 1. **Using Non-English Text**: All PR content must be in English 2. **Incorrect Section Headers**: Always use the exact section headers from the template 3. **Adding Custom Sections**: Stick to the sections defined in the template 4. **Using Outdated Templates**: Always refer to the current @.github/pull_request_template.md file ### Missing Sections Always include all template sections, even if some are marked as "N/A" or "None" ## Additional GitHub CLI PR Commands Here are some additional useful GitHub CLI commands for managing PRs: ```bash # List your open pull requests gh pr list --author "@me" # Check PR status gh pr status # View a specific PR gh pr view <PR-NUMBER> # Check out a PR branch locally gh pr checkout <PR-NUMBER> # Convert a draft PR to ready for review gh pr ready <PR-NUMBER> # Add reviewers to a PR gh pr edit <PR-NUMBER> --add-reviewer username1,username2 # Merge a PR gh pr merge <PR-NUMBER> --squash ``` ## U