create-pr
Create pull requests following Sentry conventions. Use when opening PRs, writing PR descriptions, or preparing changes for review. Follows Sentry's code review guidelines.
Best use case
create-pr is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Create pull requests following Sentry conventions. Use when opening PRs, writing PR descriptions, or preparing changes for review. Follows Sentry's code review guidelines.
Teams using create-pr should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/create-pr/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How create-pr Compares
| Feature / Agent | create-pr | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Create pull requests following Sentry conventions. Use when opening PRs, writing PR descriptions, or preparing changes for review. Follows Sentry's code review guidelines.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
Best AI Skills for Claude
Explore the best AI skills for Claude and Claude Code across coding, research, workflow automation, documentation, and agent operations.
AI Agents for Coding
Browse AI agent skills for coding, debugging, testing, refactoring, code review, and developer workflows across Claude, Cursor, and Codex.
ChatGPT vs Claude for Agent Skills
Compare ChatGPT and Claude for AI agent skills across coding, writing, research, and reusable workflow execution.
SKILL.md Source
# Create Pull Request Create pull requests following Sentry's engineering practices. **Requires**: GitHub CLI (`gh`) authenticated and available. ## Process ### Step 1: Verify Branch State ```bash # Check current branch and status git status git log main..HEAD --oneline ``` Ensure: - All changes are committed - Branch is up to date with remote - Changes are rebased on main if needed ### Step 2: Analyze Changes Review what will be included in the PR: ```bash # See all commits that will be in the PR git log main..HEAD # See the full diff git diff main...HEAD ``` Understand the scope and purpose of all changes before writing the description. ### Step 3: Write the PR Description Follow this structure: ```markdown <brief description of what the PR does> <why these changes are being made - the motivation> <alternative approaches considered, if any> <any additional context reviewers need> ``` **Do NOT include:** - "Test plan" sections - Checkbox lists of testing steps - Redundant summaries of the diff **Do include:** - Clear explanation of what and why - Links to relevant issues or tickets - Context that isn't obvious from the code - Notes on specific areas that need careful review ### Step 4: Create the PR ```bash gh pr create --title "<type>(<scope>): <description>" --body "$(cat <<'EOF' <description body here> EOF )" ``` **Title format** follows commit conventions: - `feat(scope): Add new feature` - `fix(scope): Fix the bug` - `ref: Refactor something` ### Step 5: Add Reviewers (if known) ```bash # Request review from specific people gh pr edit --add-reviewer username1,username2 # Or request from a team gh pr edit --add-reviewer @getsentry/team-name ``` Limit to 1-3 reviewers to maintain clear ownership. ## PR Description Examples ### Feature PR ```markdown Add Slack thread replies for alert notifications When an alert is updated or resolved, we now post a reply to the original Slack thread instead of creating a new message. This keeps related notifications grouped and reduces channel noise. Previously considered posting edits to the original message, but threading better preserves the timeline of events and works when the original message is older than Slack's edit window. Refs SENTRY-1234 ``` ### Bug Fix PR ```markdown Handle null response in user API endpoint The user endpoint could return null for soft-deleted accounts, causing dashboard crashes when accessing user properties. This adds a null check and returns a proper 404 response. Found while investigating SENTRY-5678. Fixes SENTRY-5678 ``` ### Refactor PR ```markdown Extract validation logic to shared module Moves duplicate validation code from the alerts, issues, and projects endpoints into a shared validator class. No behavior change. This prepares for adding new validation rules in SENTRY-9999 without duplicating logic across endpoints. ``` ## Issue References Reference issues in the PR body: | Syntax | Effect | |--------|--------| | `Fixes #1234` | Closes GitHub issue on merge | | `Fixes SENTRY-1234` | Closes Sentry issue | | `Refs GH-1234` | Links without closing | | `Refs LINEAR-ABC-123` | Links Linear issue | ## Guidelines - **One PR per feature/fix** - Don't bundle unrelated changes - **Keep PRs reviewable** - Smaller PRs get faster, better reviews - **Explain the why** - Code shows what; description explains why - **Mark WIP early** - Use draft PRs for early feedback ## References - [Sentry Code Review Guidelines](https://develop.sentry.dev/engineering-practices/code-review/) - [Sentry Commit Messages](https://develop.sentry.dev/engineering-practices/commit-messages/)
Related Skills
create-plan
Create a concise plan. Use when a user explicitly asks for a plan related to a coding task.
async-python-patterns
Comprehensive guidance for implementing asynchronous Python applications using asyncio, concurrent programming patterns, and async/await for building high-performance, non-blocking systems.
slack-automation
Automate Slack workspace operations including messaging, search, channel management, and reaction workflows through Composio's Slack toolkit.
linear-automation
Automate Linear tasks via Rube MCP (Composio): issues, projects, cycles, teams, labels. Always search tools first for current schemas.
jira-automation
Automate Jira tasks via Rube MCP (Composio): issues, projects, sprints, boards, comments, users. Always search tools first for current schemas.
gitops-workflow
Complete guide to implementing GitOps workflows with ArgoCD and Flux for automated Kubernetes deployments.
github-automation
Automate GitHub repositories, issues, pull requests, branches, CI/CD, and permissions via Rube MCP (Composio). Manage code workflows, review PRs, search code, and handle deployments programmatically.
github-actions-templates
Production-ready GitHub Actions workflow patterns for testing, building, and deploying applications.
zustand-store-ts
Create Zustand stores following established patterns with proper TypeScript types and middleware.
zod-validation-expert
Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.
tanstack-query-expert
Expert in TanStack Query (React Query) — asynchronous state management. Covers data fetching, stale time configuration, mutations, optimistic updates, and Next.js App Router (SSR) integration.
tailwind-design-system
Build production-ready design systems with Tailwind CSS, including design tokens, component variants, responsive patterns, and accessibility.