PromptShop

Create Pr

This skill assists in creating GitHub pull requests (PRs) that adhere to n8n's title format and conventions.

Install

npx promptshop add create-pr

Details

What This Skill Does

This skill assists in creating GitHub pull requests (PRs) that adhere to n8n's title format and conventions. It guides the user through analyzing changes, determining the appropriate type and scope, and crafting a summary that meets the required standards. The goal is to ensure PR titles are consistent and informative.

When to Use

  • Create a new feature PR.
  • Create a bug fix PR.
  • Create a documentation-only PR.
  • Create a refactoring PR.
  • Create a chore PR.
  • Update CI configuration via PR.

Key Features

  • Checks current git state.
  • Analyzes changes to determine PR type and scope.
  • Enforces PR title format.
  • Provides guidance on summary writing.
  • Uses imperative present tense in summary.
  • Excludes ticket IDs from PR title.

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

Check current state: git status git diff --stat git log origin/master..HEAD --oneline

Analyze changes to determine:

  • Type: What kind of change is this?
  • Scope: Which package/area is affected?
  • Summary: What does the change do?

Push branch if needed: git push -u origin HEAD

Create PR using gh CLI with the template from .github/pull_request_template.md: gh pr create --draft --title "<type>(<scope>): <summary>" --body "$(cat <<'EOF'

Summary

<Describe what the PR does and how to test. Photos and videos are recommended.>

Related Linear tickets, Github issues, and Community forum posts

<!-- Link to Linear ticket: https://linear.app/n8n/issue/[TICKET-ID] --> <!-- Use "closes #<issue-number>", "fixes #<issue-number>", or "resolves #<issue-number>" to automatically close issues -->

Review / Merge checklist

  • PR title and summary are descriptive. (conventions)
  • Docs updated or follow-up ticket created.
  • Tests included.
  • PR Labeled with release/backport (if the PR is an urgent fix that needs to be backported) EOF )"

PR Body Guidelines

Based on .github/pull_request_template.md:

Summary Section

Describe what the PR does Explain how to test the changes Include screenshots/videos for UI changes

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: 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 periodCreate Pull Request

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

Checklist

All items should be add