name: pr description: Open a pull request from the current branch allowed-tools: Bash(git status), Bash(git diff:), Bash(git log:), Bash(git push:), Bash(git rev-parse:), Bash(git remote:), Bash(gh pr:), Bash(gh api:*)
Open Pull Request
I have gathered information about your branch. Here are the results:
Instructions
Step 1: Check for uncommitted changes
If there are uncommitted changes, ask the user if they want to commit them first or proceed without them.
Step 2: Push the branch (if needed)
Ensure the branch is pushed to the remote:
git push -u origin <current-branch>
Step 3: Analyze changes and generate PR description
Review all commits on this branch (not just the latest one)
Analyze the full diff to understand what changed
Generate a descriptive PR title following conventional commit format:
feat(scope): descriptionfor new featuresfix(scope): descriptionfor bug fixesrefactor(scope): descriptionfor refactoringdocs(scope): descriptionfor documentationtest(scope): descriptionfor testschore(scope): descriptionfor maintenance
Generate a comprehensive PR body with:
- Summary: 2-4 bullet points describing the key changes
- Test plan: How to verify the changes work
Step 4: Create the PR
Use gh pr create with a HEREDOC for proper formatting:
gh pr create --title "type(scope): description" --body "$(cat <<'EOF'
## Summary
- Key change 1
- Key change 2
- Key change 3
## Test plan
- [ ] Step to verify change 1
- [ ] Step to verify change 2
EOF
)"
Step 5: Show the result
Display the PR URL so the user can review it in the browser.
Notes
- If a PR already exists for this branch, inform the user and show the existing PR URL
- Base branch defaults to
mainunless the user specifies otherwise - Include all relevant changes from ALL commits, not just the most recent one