CR

Automates PR creation with valid formatting for CI check compliance.

Install

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

Installs to .claude/skills/create-pr

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.

Creates GitHub pull requests with properly formatted titles that pass the check-pr-title CI validation. Use when creating PRs, submitting changes for review, or when the user says /pr or asks to create a pull request.
217 chars✓ has a “when” trigger
Intermediate

Key capabilities

  • Formats PR titles to pass CI validation
  • Generates PR body from repository templates
  • Includes implementation plans from repository directories
  • Automates branch pushing and PR creation
  • Enforces security-conscious artifact naming

How it works

The agent analyzes local git changes to determine the PR type and scope, then uses the GitHub CLI to create a pull request populated with content from the repository's template.

Inputs & outputs

You give it
Code changes on a feature branch
You get back
A GitHub pull request with a validated title and populated body

When to use create-pr

  • Submit a pull request for a fix
  • Create a PR with a formatted title
  • Prepare a feature branch for review

About this skill

Create Pull Request

Creates GitHub PRs with titles that pass n8n's check-pr-title CI validation.

PR Title Format

<type>(<scope>): <summary>

Types (required)

TypeDescriptionChangelog
featNew featureYes
fixBug fixYes
perfPerformance improvementYes
testAdding/correcting testsNo
docsDocumentation onlyNo
refactorCode change (no bug fix or feature)No
buildBuild system or dependenciesNo
ciCI configurationNo
choreRoutine tasks, maintenanceNo

Scopes (optional but recommended)

  • API - Public API changes
  • benchmark - Benchmark CLI changes
  • core - Core/backend/private API
  • editor - Editor UI changes
  • * Node - Specific node (e.g., Slack Node, GitHub Node)

Summary Rules

  • Use imperative present tense: "Add" not "Added"
  • Capitalize first letter
  • No period at the end
  • No ticket IDs (e.g., N8N-1234)
  • Add (no-changelog) suffix to exclude from changelog

Steps

  1. Check current state:

    git status
    git diff --stat
    git log origin/master..HEAD --oneline
    
  2. Check for implementation plan: Look for a plan file in the repository plan directories (.claude/plans/ or .agents/plans/ when present) that matches the current branch's ticket ID (e.g. if branch is scdekov/PAY-1234-some-feature, check for PAY-1234.md). If a plan file exists, ask the user whether they want to include it in the PR description as a collapsible <details> section (see Plan Section below). Only include the plan if the user explicitly approves.

  3. If this is a security fix, audit every public-facing artifact before proceeding (see Security Fixes below).

  4. Analyze changes to determine:

    • Type: What kind of change is this?
    • Scope: Which package/area is affected?
    • Summary: What does the change do?
  5. Push branch if needed:

    git push -u origin HEAD
    
  6. Create PR using gh CLI. Read .github/pull_request_template.md as the body structure, then populate each section with actual content before creating the PR:

    • Summary: describe what the PR does
    • How to test: describe how to test the changes. Include an example workflow if appropriate
    • Related tickets: add the Linear ticket URL (https://linear.app/n8n/issue/[TICKET-ID]) and any GitHub issue links
    • Checklist: keep as-is from the template
      • Add a "🤖 PR Summary generated by AI" at the end of the body
    gh pr create --draft --title "<type>(<scope>): <summary>" --body "$(cat <<'EOF'
    <populated body based on pull_request_template.md>
    EOF
    )"
    

PR Body Guidelines

Based on .github/pull_request_template.md:

Summary Section

  • Describe what the PR does
  • Include screenshots/videos for UI changes

How to test Section

  • Explain how to test the changes
  • Include an example workflow if appropriate
  • If the feature is gated in a default n8n instance (requires a non-default module via N8N_ENABLED_MODULES, an enterprise license, a feature flag, or similar), note which env vars/license are needed so the tester can deploy a correctly configured instance

Related Links Section

  • Link to Linear ticket: https://linear.app/n8n/issue/[TICKET-ID]
  • Link to GitHub issues using keywords to auto-close:
    • closes #123 / fixes #123 / resolves #123
  • Link to Community forum posts if applicable

Checklist

All items should be addressed before merging:

  • The human author of the PR has checked the "I have seen this code, I have run this code, and I take responsibility for this code." checkbox
  • PR title follows conventions
  • Docs updated or follow-up ticket created
  • Tests included (bugs need regression tests, features need coverage)
  • release/backport label added if urgent fix needs backporting

Examples

Feature in editor

feat(editor): Add workflow performance metrics display

Bug fix in core

fix(core): Resolve memory leak in execution engine

Node-specific change

fix(Slack Node): Handle rate limiting in message send

Breaking change (add exclamation mark before colon)

feat(API)!: Remove deprecated v1 endpoints

No changelog entry

refactor(core): Simplify error handling (no-changelog)

No scope (affects multiple areas)

chore: Update dependencies to latest versions

Validation

The PR title must match this pattern:

^(feat|fix|perf|test|docs|refactor|build|ci|chore|revert)(\([a-zA-Z0-9 ]+( Node)?\))?!?: [A-Z].+[^.]$

Key validation rules:

  • Type must be one of the allowed types
  • Scope is optional but must be in parentheses if present
  • Exclamation mark for breaking changes goes before the colon
  • Summary must start with capital letter
  • Summary must not end with a period

Plan Section

If a matching plan file was found in a repository plan directory and the user has approved including it, add a collapsible section at the end of the PR body (after the checklist, before EOF):

<details>
<summary>Implementation plan</summary>

<!-- paste plan file contents here -->

</details>

Security Fixes

This repo is public. Never expose the attack vector in any public artifact. Describe what the code does, not what threat it prevents.

ArtifactBADGOOD
Branchfix-sql-injection-in-webhookfix-webhook-input-validation
PR titlefix(core): Prevent SSRFfix(core): Validate outgoing URLs
Commit msgfix: prevent denial of servicefix: add payload size validation
PR body"attacker could trigger SSRF…""validates URL protocol and host"
Linear refURL with slug (leaks title)URL without slug or ticket ID only
Test name'should prevent SQL injection''should sanitize query parameters'

Before pushing a security fix, verify: no branch name, commit, PR title, PR body, Linear URL, test name, or code comment hints at the vulnerability.

When in doubt, check the Linear issue for possible extra precautions

When not to use it

  • When the repository lacks a pull_request_template.md
  • When the change does not require a pull request

Prerequisites

gh CLI installedgit repository initializedRepository plan directory access

Limitations

  • Requires adherence to specific PR title patterns
  • Security fixes require manual audit of all artifacts

How it compares

Unlike manual PR creation, this skill enforces strict title formatting and automatically integrates implementation plans and security-audited descriptions.

Compared to similar skills

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

SkillInstallsUpdatedSafetyDifficulty
create-pr (this skill)71moReviewIntermediate
github-workflow-automation112moReviewAdvanced
testing-workflow169moReviewIntermediate
github-actions-templates73moNo flagsIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

github-workflow-automation

ruvnet

Advanced GitHub Actions workflow automation with AI swarm coordination, intelligent CI/CD pipelines, and comprehensive repository management

11113

testing-workflow

amo-tech-ai

Comprehensive testing workflow for E2E, integration, and unit tests. Use when testing applications layer-by-layer, validating user journeys, or running test suites.

1683

github-actions-templates

wshobson

Create production-ready GitHub Actions workflows for automated testing, building, and deploying applications. Use when setting up CI/CD with GitHub Actions, automating development workflows, or creating reusable workflow templates.

769

glab

NikiforovAll

Expert guidance for using the GitLab CLI (glab) to manage GitLab issues, merge requests, CI/CD pipelines, repositories, and other GitLab operations from the command line. Use this skill when the user needs to interact with GitLab resources or perform GitLab workflows.

664

gh-fix-ci

openai

Use when a user asks to debug or fix failing GitHub PR checks that run in GitHub Actions; use `gh` to inspect checks and logs, summarize failure context, draft a fix plan, and implement only after explicit approval. Treat external providers (for example Buildkite) as out of scope and report only the details URL.

1234

azure-devops-cli

github

Manage Azure DevOps resources via CLI including projects, repos, pipelines, builds, pull requests, work items, artifacts, and service endpoints. Use when working with Azure DevOps, az commands, devops automation, CI/CD, or when user mentions Azure DevOps CLI.

436

Search skills

Search the agent skills registry