GitHub Pull Request Creation
When creating a pull request, use the gh CLI with the following format and conventions.
PR title format
Write the title as if the whole PR was squashed into a single commit using conventional commits.
PR Body Format
Why?
[Explain the motivation for this change. What problem does it solve?]
What?
[Describe what was changed. List the key modifications.]
Notes
[Optional. Additional context, testing notes, or follow-up items.]
Command Template
gh pr create --assignee @me --title "<title>" --body "$(cat <<'EOF'
Why?
<motivation>
What?
<changes>
Notes
<optional notes> EOF )"
Rules
-
Always assign PR to @me using --assignee @me
-
Why?
-
Required. Explain motivation and problem being solved
-
What?
-
Required. Describe the changes made
-
Notes
-
Optional. Include only if there are additional notes
-
Omit ## Notes section entirely if no notes are needed
-
Use imperative mood in title (e.g., "Add feature" not "Added feature")
-
Keep title concise and descriptive
Example
gh pr create --assignee @me --title "Add user authentication" --body "$(cat <<'EOF'
Why?
Users need secure access to their accounts. Currently there is no authentication mechanism in place.
What?
- Add login/logout endpoints
- Implement JWT token generation
- Add password hashing with bcrypt
- Create auth middleware for protected routes
Notes
Requires JWT_SECRET env variable to be set in production.
EOF
)"