Handles PR creation, changelog updates, and issue linking. Ensures all commits pass linting and tests before pushing.

Install

mkdir -p .claude/skills/pr-typeddevs && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/17318" && unzip -o skill.zip -d .claude/skills/pr-typeddevs && rm skill.zip

Installs to .claude/skills/pr-typeddevs

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Push branch and create a GitHub PR with concise, issue-linked description
73 charsno explicit “when” trigger
Intermediate

Key capabilities

  • Validate current branch context before PR creation
  • Update `CHANGELOG.md` with relevant changes
  • Generate PR title in conventional commit style
  • Create GitHub PR using a predefined template
  • Move linked GitHub issue to 'In Review' status

How it works

The skill automates GitHub PR creation by first validating the branch, updating the `CHANGELOG.md`, pushing the branch, generating a conventional commit style title, and then creating the PR using a specific template. It also updates the linked GitHub issue status.

Inputs & outputs

You give it
A branch with changes and an optional issue reference
You get back
A pushed branch, an updated `CHANGELOG.md`, a new GitHub PR, and an updated GitHub issue status

When to use pr

  • Create a feature PR linked to an issue
  • Automatically update CHANGELOG.md during PR workflow
  • Push branch and open PR in one command

About this skill

Create Pull Request

Push branch and create a PR with a concise, issue-linked description.

IMPORTANT: This skill MUST be used for ALL pull request creation — even when the user says "create pr" without /pr. Never create a PR without following these steps.

Current Branch Context

  • Branch: !git branch --show-current
  • Commits: !git log main..HEAD --oneline 2>/dev/null
  • Changed files: !git diff main..HEAD --stat 2>/dev/null

Arguments

  • $ARGUMENTS - Issue reference (optional, e.g., #42 or 42). If provided, the PR will be linked to this issue.

Instructions

  1. Review the branch context above — the commits and changed files are already loaded.

  2. MANDATORY: Update CHANGELOG.md — Read CHANGELOG.md and check the ## Unreleased section. If the changes from this branch are NOT already listed there, you MUST update it before proceeding. Do NOT skip this step. Do NOT proceed to push without verifying.

  • Add entries under the appropriate subsection (### Added, ### Changed, ### Fixed, etc.)
  • Reference issue numbers where applicable (e.g., (Issue #123))
  • Commit the update:
    git add CHANGELOG.md && git commit -m "docs: update changelog"
    
  1. Push branch:
git push -u origin HEAD
  • The pre-commit hook runs tests, shellcheck, and linting automatically on commit. Ensure all checks passed before pushing.
  • If push fails, read the output, fix the issue, commit the fix, and retry. Do NOT use --no-verify to bypass.
  1. Generate PR title:
  • If $ARGUMENTS contains an issue number, fetch the issue title:
    gh issue view <number> --json title -q '.title'
    
  • PR title format: <type>(<scope>): <short description> (conventional commit style, under 70 chars)
  • Derive the type from the branch prefix (feat/ → feat, fix/ → fix, docs/ → docs)
  1. Create PR using the template from .github/PULL_REQUEST_TEMPLATE.md:
gh pr create --title "<title>" --assignee @me --label "<label>" --body "$(cat <<'EOF'
## 🤔 Background

Related #<issue-number>

<1-2 sentences: motivation and context for the changes>

## 💡 Changes

- <bullet 1: what changed and why>
- <bullet 2>
- <bullet 3> (optional)
- <bullet 4> (optional)
EOF
)"

MANDATORY: Always follow the PR template structure (## 🤔 Background + ## 💡 Changes). Never use a different format.

Assignee: Always assign to @me (the PR creator).

Labels: Add the single most relevant label based on the branch prefix and change context:

  • bug — branch starts with fix/ and addresses a defect
  • enhancement — branch starts with feat/ or adds new functionality
  • documentation — branch starts with docs/ or only changes docs
  • refactor — code restructuring with no behavior change
  • ui — visual/frontend-only changes
  • investigation — spikes, research, or exploratory work

Body guidelines:

  • Background: Link the issue with Related #<number>, then 1-2 sentences of context. NEVER use Closes or Fixes.
  • Changes: 2-4 short bullet points. Focus on what and why, not implementation details.
  • No file lists, no class names, no code snippets in the body.
  • Keep the entire body under 15 lines.
  1. Move issue to "In Review" in GitHub Project (if issue number provided):
# Read project config from .claude/github-project.json
ITEM_ID=$(gh project item-list PROJECT_NUMBER --owner OWNER --format json \
  | jq -r '.items[] | select(.content.number == ISSUE_NUMBER) | .id')

gh project item-edit \
  --id "$ITEM_ID" \
  --project-id "PROJECT_ID" \
  --field-id "STATUS_FIELD_ID" \
  --single-select-option-id "IN_REVIEW_OPTION_ID"

Note: Requires project scope. Run gh auth refresh -s project if needed.

  1. Report the PR URL to the user.

Example Usage

/pr
/pr #42
/pr 15

When not to use it

  • When the user does not want to update `CHANGELOG.md`
  • When the project does not use GitHub for pull requests or issue tracking
  • When the user prefers a different PR template or title format

Limitations

  • The skill requires `CHANGELOG.md` to be updated manually if changes are not listed
  • The skill uses a specific PR title format (`<type>(<scope>): <short description>`)
  • The skill always assigns the PR to `@me` and uses predefined labels

How it compares

This skill enforces a standardized and automated workflow for PR creation, including `CHANGELOG.md` updates and issue status changes, which is more consistent and less error-prone than a manual process.

Compared to similar skills

pr side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
pr (this skill)017dReviewIntermediate
github-contributor11moReviewIntermediate
open-source-maintainer16moReviewIntermediate
code-changelog09moReviewBeginner

Try saying

Example prompts that trigger this skill in your AI assistant.

Search skills

Search the agent skills registry