pr

star 90.4k

Creates a pull request following Storybook conventions. Use when creating PRs, opening pull requests, or submitting changes for review.

storybookjs By storybookjs schedule Updated 3/14/2026

name: pr description: Creates a pull request following Storybook conventions. Use when creating PRs, opening pull requests, or submitting changes for review. allowed-tools: Bash, Read

Create Pull Request

Creates a PR following Storybook conventions.

Title format

[Area]: [Description]

  • Area is capitalized, no spaces (dashes allowed)
  • Examples:
    • CSFFactories: Fix type export
    • Nextjs-Vite: Add support
    • CLI: Fix automigrate issue

Labels

Add these labels to the PR:

Category (required, pick one):

  • bug - fixes incorrect behavior
  • maintenance - user-facing maintenance
  • dependencies - upgrading/downgrading deps
  • build - internal build/test updates (no changelog)
  • cleanup - minor cleanup (no changelog)
  • documentation - docs only (no changelog)
  • feature request - new feature
  • BREAKING CHANGE - breaks compatibility
  • other - doesn't fit above

CI (required, pick one):

  • ci:normal - standard sandbox set; default for most code changes
  • ci:merged - merged sandbox set
  • ci:daily - daily sandbox set; use this when changes affect prerelease sandboxes or sandboxes pinned to a framework or React version other than latest
  • ci:docs - documentation-only changes (use with documentation category)

QA (required, pick one):

Tells the release team whether manual QA is needed before the next minor release.

  • qa:needed — a human must manually verify this PR at release time
  • qa:skip — no per-PR manual QA needed at release time

Heuristics:

  • User explicitly asked for manual QA before release → qa:needed
  • Part of a larger project that gets holistic QA (not per-PR) → qa:skip
  • Touches paths, filesystem, or anything that could break on Windows → qa:needed
  • Complex change spanning multiple areas that must work together → qa:needed
  • Small change in central/shared code with high side-effect risk (e.g. layout CSS in shared UI) → qa:needed
  • Simple, straightforward change → qa:skip
  • Unsure → ask the user whether manual QA before minor release is necessary

PR body

Read .github/PULL_REQUEST_TEMPLATE.md from the repository root.

Copy that template EXACTLY, including all HTML comments (<!-- ... -->). Fill in the relevant sections based on the changes, but keep all comments intact.

Manual testing (required)

The Manual testing section is mandatory — never leave it empty. Write steps for a separate maintainer, not a log of how you tested.

Each step should be:

  • Clear and easy to follow
  • Copy-pasteable shell commands where applicable
  • Explicit about what behavior to inspect (expected outcome, not just "check it works")
  • Linked to specific stories for UI changes, or to build artifacts when relevant
  • Lists areas most likely to regress and worth extra scrutiny

Verify your own steps first — run through them locally before opening the PR.

When useful, link to published Chromatic Storybooks (CI must finish first; links won't work immediately after opening the PR):

  • Internal UI: https://<branch>--635781f3500dd2c49e189caf.chromatic.com/?path=/story/<story_id>
  • React Vite TS: https://<branch>--630511d655df72125520f051.chromatic.com/?path=/story/<story_id>

Replace <branch> with Chromatic's normalized slug (special chars → dashes, e.g. feature/foofeature-foo) and <story_id> with the story path (e.g. example-button--primary).

Command

Always create PRs in draft mode:

gh pr create --draft --title "<Area>: <Description>" --body "<FILLED_TEMPLATE>" --label "<category>,<ci>,<qa>"
Install via CLI
npx skills add https://github.com/storybookjs/storybook --skill pr
Repository Details
star Stars 90,360
call_split Forks 10,130
navigation Branch main
article Path SKILL.md
More from Creator