Pull Request Style
Conventions for PR titles and descriptions. These apply no matter how the PR
is created (gh CLI, GitHub MCP tools, API).
General
- Always create draft PRs.
- Assign the PR to me (the author), not to Claude or a bot identity.
- Keep PR titles, descriptions, and comments concise and clear.
- Include only useful information. Remove redundancy and over-explanation.
- Prefer explicitness and clarity over verbosity.
- Express Why/What/Notes content as concise, to-the-point bullet lists. Avoid
prose paragraphs.
- All references to functions, libraries, projects, products must be linked.
- Include a small, illustrative code snippet whenever it conveys the change
faster than prose. This is desired for PRs in general, and especially for bug
fixes: a minimal example of the triggering case (and what went wrong) makes
the problem concrete for reviewers. Keep it short — just enough to convey the
point, not a full reproduction.
- The PR text describes the change only: no "Generated with Claude Code" lines,
no session links or model names.
- In Claude cloud sandbox sessions, the platform appends a "Generated by
Claude Code" footer to the PR body at creation time, outside your control.
After creating a PR, always read it back and, if a footer was appended,
update the PR body to remove it (updates are not re-footered). Also verify
angle-bracket placeholders survived; the platform strips them even inside
code spans.
PR Title Format
Write the title as if the whole PR was squashed into a single commit using
conventional commits. Use imperative mood (e.g., "Add feature" not "Added
feature"). Keep it concise and descriptive.
PR Body Format
# XY-123
## 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.]
Rules:
# XY-123 - Always ask me for the Jira ticket number before creating the
PR. If there is one, include it as an H1 header at the top of the body. If
there isn't one, omit it.
## Why? - Required. Explain motivation and problem being solved
## What? - Required. Describe the changes made
## Notes - Optional. Omit entirely if no notes are needed
Try keeping Why? and What? around maximum 3 bullets each. Group related changes
into one bullet rather than enumerating every file touched — reviewers read the
diff for that. But keep each bullet concise and direct. Preferably only one
sentence per bullet point. If it is hard to fit the PR description within these
constraints, it's possible the PR is too large and discuss whether to split it
up.
File References
Use [file:lineno](url) with SHA-pinned URLs:
https://github.com/<owner>/<repo>/blob/<sha>/<path>#L<lineno>
- SHA:
git rev-parse HEAD
- Owner/repo: from
git remote get-url origin (or gh repo view --json nameWithOwner -q .nameWithOwner when gh is available)
Example Body
# XY-123
## 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.
1---2name: pr-style-23description: This skill should be used when creating or editing a GitHub pull request title or description, regardless of tool (gh CLI, GitHub MCP tools, API). Defines PR title format and body format with Why/What/Notes sections, and prompts for the Jira ticket number.4---56# Pull Request Style78Conventions for PR titles and descriptions. These apply no matter how the PR9is created (`gh` CLI, GitHub MCP tools, API).1011## General1213- Always create draft PRs.14- Assign the PR to me (the author), not to Claude or a bot identity.15- Keep PR titles, descriptions, and comments concise and clear.16- Include only useful information. Remove redundancy and over-explanation.17- Prefer explicitness and clarity over verbosity.18- Express Why/What/Notes content as concise, to-the-point bullet lists. Avoid19 prose paragraphs.20- All references to functions, libraries, projects, products must be linked.21- Include a small, illustrative code snippet whenever it conveys the change22 faster than prose. This is desired for PRs in general, and especially for bug23 fixes: a minimal example of the triggering case (and what went wrong) makes24 the problem concrete for reviewers. Keep it short — just enough to convey the25 point, not a full reproduction.26- The PR text describes the change only: no "Generated with Claude Code" lines,27 no session links or model names.28- In Claude cloud sandbox sessions, the platform appends a "Generated by29 Claude Code" footer to the PR body at creation time, outside your control.30 After creating a PR, always read it back and, if a footer was appended,31 update the PR body to remove it (updates are not re-footered). Also verify32 angle-bracket placeholders survived; the platform strips them even inside33 code spans.3435## PR Title Format3637Write the title as if the whole PR was squashed into a single commit using38conventional commits. Use imperative mood (e.g., "Add feature" not "Added39feature"). Keep it concise and descriptive.4041## PR Body Format4243```markdown44# XY-1234546## Why?4748[Explain the motivation for this change. What problem does it solve?]4950## What?5152[Describe what was changed. List the key modifications.]5354## Notes5556[Optional. Additional context, testing notes, or follow-up items.]57```5859Rules:60611. `# XY-123` - Always ask me for the Jira ticket number before creating the62 PR. If there is one, include it as an H1 header at the top of the body. If63 there isn't one, omit it.642. `## Why?` - Required. Explain motivation and problem being solved653. `## What?` - Required. Describe the changes made664. `## Notes` - Optional. Omit entirely if no notes are needed6768Try keeping Why? and What? around maximum 3 bullets each. Group related changes69into one bullet rather than enumerating every file touched — reviewers read the70diff for that. But keep each bullet concise and direct. Preferably only one71sentence per bullet point. If it is hard to fit the PR description within these72constraints, it's possible the PR is too large and discuss whether to split it73up.7475## File References7677Use `[file:lineno](url)` with SHA-pinned URLs:78`https://github.com/<owner>/<repo>/blob/<sha>/<path>#L<lineno>`7980- SHA: `git rev-parse HEAD`81- Owner/repo: from `git remote get-url origin` (or `gh repo view --json82 nameWithOwner -q .nameWithOwner` when `gh` is available)8384## Example Body8586```markdown87# XY-1238889## Why?9091Users need secure access to their accounts. Currently there is no92authentication mechanism in place.9394## What?9596- Add login/logout endpoints97- Implement JWT token generation98- Add password hashing with bcrypt99- Create auth middleware for protected routes100101## Notes102103Requires `JWT_SECRET` env variable to be set in production.104```